<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt - 3.3.8 - espenr - 2499/qt - x11 - free - 3.3.8/doc/sql.doc:52 -->
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=ISO-8859-1" >
< title > sql/overview/table3/main.cpp Example File< / title >
< style type = "text/css" > < ! - -
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
-->< / style >
< / head >
< body >
< table border = "0" cellpadding = "0" cellspacing = "0" width = "100%" >
< tr bgcolor = "#E5E5E5" >
< td valign = center >
< a href = "index.html" >
< font color = "#004faf" > Home< / font > < / a >
| < a href = "classes.html" >
< font color = "#004faf" > All Classes< / font > < / a >
| < a href = "mainclasses.html" >
< font color = "#004faf" > Main Classes< / font > < / a >
| < a href = "annotated.html" >
< font color = "#004faf" > Annotated< / font > < / a >
| < a href = "groups.html" >
< font color = "#004faf" > Grouped Classes< / font > < / a >
| < a href = "functions.html" >
< font color = "#004faf" > Functions< / font > < / a >
< / td >
< td align = "right" valign = "center" > < img src = "logo32.png" align = "right" width = "64" height = "32" border = "0" > < / td > < / tr > < / table > < h1 align = center > sql/overview/table3/main.cpp Example File< / h1 >
< pre > /****************************************************************************
** $Id: qt/main.cpp 3.3.8 edited Jan 11 14:37 $
**
** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.
**
** This file is part of an example program for TQt. This example
** program may be used, distributed and modified without limitation.
**
*****************************************************************************/
#include "main.h"
#include < < a href = "tqdatatable-h.html" > tqdatatable.h< / a > >
< a name = "f9" > < / a > StatusPicker::StatusPicker( < a href = "tqwidget.html" > TQWidget< / a > *parent, const char *name )
: < a href = "ntqcombobox.html" > TQComboBox< / a > ( parent, name )
{
< a href = "tqsqlcursor.html" > TQSqlCursor< / a > cur( "status" );
cur.< a href = "tqsqlcursor.html#select" > select< / a > ( cur.< a href = "tqsqlcursor.html#index" > index< / a > ( "name" ) );
int i = 0;
while ( cur.< a href = "tqsqlquery.html#next" > next< / a > () ) {
< a href = "ntqcombobox.html#insertItem" > insertItem< / a > ( cur.< a href = "tqsqlquery.html#value" > value< / a > ( "name" ).toString(), i );
index2id[i] = cur.< a href = "tqsqlquery.html#value" > value< / a > ( "id" ).toInt();
i++;
}
}
int < a name = "f10" > < / a > StatusPicker::statusId() const
{
return index2id[ currentItem() ];
}
void < a name = "f11" > < / a > StatusPicker::setStatusId( int statusid )
{
TQMap< int,int> ::Iterator it;
for ( it = index2id.begin(); it != index2id.end(); ++it ) {
if ( it.data() == statusid ) {
setCurrentItem( it.key() );
break;
}
}
}
TQWidget *CustomSqlEditorFactory::< a href = "tqsqleditorfactory.html#createEditor" > createEditor< / a > (
< a href = "tqwidget.html" > TQWidget< / a > *parent, const < a href = "tqsqlfield.html" > TQSqlField< / a > *field )
{
if ( field-> < a href = "tqsqlfield.html#name" > name< / a > () == "statusid" ) {
< a href = "tqwidget.html" > TQWidget< / a > *editor = new StatusPicker( parent );
return editor;
}
return TQSqlEditorFactory::createEditor( parent, field );
}
int main( int argc, char *argv[] )
{
< a href = "ntqapplication.html" > TQApplication< / a > app( argc, argv );
if ( createConnections() ) {
< a href = "tqsqlcursor.html" > TQSqlCursor< / a > staffCursor( "staff" );
< a href = "tqdatatable.html" > TQDataTable< / a > *staffTable = new < a href = "tqdatatable.html" > TQDataTable< / a > ( & staffCursor );
< a href = "tqsqlpropertymap.html" > TQSqlPropertyMap< / a > *propMap = new < a href = "tqsqlpropertymap.html" > TQSqlPropertyMap< / a > ();
CustomSqlEditorFactory *editorFactory = new CustomSqlEditorFactory();
propMap-> < a href = "tqsqlpropertymap.html#insert" > insert< / a > ( "StatusPicker", "statusid" );
staffTable-> < a href = "tqdatatable.html#installPropertyMap" > installPropertyMap< / a > ( propMap );
staffTable-> < a href = "tqdatatable.html#installEditorFactory" > installEditorFactory< / a > ( editorFactory );
app.< a href = "ntqapplication.html#setMainWidget" > setMainWidget< / a > ( staffTable );
staffTable-> < a href = "tqdatatable.html#addColumn" > addColumn< / a > ( "forename", "Forename" );
staffTable-> < a href = "tqdatatable.html#addColumn" > addColumn< / a > ( "surname", "Surname" );
staffTable-> < a href = "tqdatatable.html#addColumn" > addColumn< / a > ( "salary", "Annual Salary" );
staffTable-> < a href = "tqdatatable.html#addColumn" > addColumn< / a > ( "statusid", "Status" );
< a href = "tqstringlist.html" > TQStringList< / a > order = TQStringList() < < "surname" < < "forename";
staffTable-> < a href = "tqdatatable.html#setSort" > setSort< / a > ( order );
staffTable-> < a href = "tqdatatable.html#refresh" > refresh< / a > ();
staffTable-> < a href = "tqwidget.html#show" > show< / a > ();
return app.< a href = "ntqapplication.html#exec" > exec< / a > ();
}
return 1;
}
< / pre > <!-- eof -->
< p > < address > < hr > < div align = center >
< table width = 100% cellspacing = 0 border = 0 > < tr >
< td > Copyright © 2007
< a href = "troll.html" > Trolltech< / a > < td align = center > < a href = "trademarks.html" > Trademarks< / a >
< td align = right > < div align = right > TQt 3.3.8< / div >
< / table > < / div > < / address > < / body >
< / html >