Tables

The same thing now with a table

Example 4.2. Using a table

#define HAVE_SSTREAM 1
#include <kapp.h>
#include <kaboutdata.h>
#include <kcmdlineargs.h>
#include <klocale.h>
#include <hk_classes.h>
#include <iostream>
#include <hk_kdetable.h>
#include <hk_kdemessages.h>

static const char *description =
    I18N_NOOP("A hk_kdeclasses example Application");

static const char *version = "v0.1";


int main(int argc, char **argv)
{
    KAboutData about("hk_kdeexample", I18N_NOOP("hk_kdeexample"), version, description, KAboutData::License_GPL, "(C) 2001 Horst Knorr", 0, 0, "hk_classes@knoda.org");
    about.addAuthor( "Horst Knorr", 0, "hk_classes@knoda.org" );
    KCmdLineArgs::init(argc, argv, &about);
    KApplication app;

    hk_kdetable* table = new hk_kdetable(NULL);

    app.setMainWidget(table);
    set_kdestandarddialogs();
    hk_drivermanager* mydrivermanager = new hk_drivermanager(false);
    if (mydrivermanager==NULL) {cout <<"error creating mydrivermanager"<<endl;exit(1);}
    hk_connection* myconnection = mydrivermanager->new_connection("mysql");
    if (myconnection==NULL) {cout <<"error creating myconnection"<<endl;exit(1);}
    myconnection->connect();

    hk_database* mydatabase=myconnection->new_database("exampledb");
    if (mydatabase==NULL) {cout <<"error creating mydatabase"<<endl;exit(1);}
    hk_datasource* mydatasource= mydatabase->new_table("authors");
    if (mydatasource==NULL) {cout <<"error creating mydatasource"<<endl;exit(1);}

    table->set_datasource(mydatasource);
    table->set_viewmode();
    table->show();

    int res= app.exec();
    delete mydrivermanager;
    return res;
}