00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef HK_KDEGRIDCOLUMNDIALOG_H
00013 #define HK_KDEGRIDCOLUMNDIALOG_H
00014 #include "hk_kdegridcolumndialogbase.h"
00015 #include <hk_string.h>
00016 #include <list>
00017 #include <hk_definitions.h>
00018 #include <hk_dsgridcolumn.h>
00019
00020 class hk_kdegrid;
00030 class hk_kdegridcolumndialog : public hk_kdegridcolumndialogbase
00031 {
00032 Q_OBJECT
00033
00034 public:
00035 hk_kdegridcolumndialog( hk_kdegrid* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
00036 ~hk_kdegridcolumndialog();
00037
00038 public slots:
00039 void addbutton_clicked();
00040 void deletebutton_clicked();
00041 void exitbutton_clicked();
00042 void okbutton_clicked();
00043 void defaultvalue_changed();
00044 void columntype_changed();
00045 void rightbox_selectionchanged(QListViewItem*);
00046
00047 void alignment_changed();
00048 void displayname_changed();
00049 void listcolumn_changed();
00050 void listdatasource_changed();
00051 void listdatasourcetype_changed();
00052 void digits_changed();
00053 void readonly_changed();
00054 void separator_changed();
00055 void viewcolumn_changed();
00056
00057 private:
00058 typedef class fieldstruct
00059 {
00060 public:
00061 fieldstruct(void)
00062 {
00063 use_separators=false;
00064 readonly=false;
00065 listdatasourcetype=dt_table;
00066 digits=-1;
00067 columntype=hk_dsgridcolumn::columnedit;
00068 alignment=hk_dsdatavisible::alignleft;
00069 }
00070 hk_string name;
00071 hk_string defaultvalue;
00072 hk_dsdatavisible::alignmenttype alignment;
00073 bool use_separators;
00074 int digits;
00075 datasourcetype listdatasourcetype;
00076 bool readonly;
00077 hk_string listdatasource;
00078 hk_string listcolumn;
00079 hk_string viewcolumn;
00080 hk_string displayname;
00081 hk_dsgridcolumn::enum_columntype columntype;
00082 };
00083
00084 list<fieldstruct> fields;
00085 void listentries_changed(void);
00086 void load_presentationdatasources(void);
00087 void set_columnvalues(void);
00088 void reload_listdatasource(void);
00089 void set_currentlistdatasource(void);
00090 hk_kdegrid* p_grid;
00091 list<fieldstruct>::iterator p_currentfieldit;
00092 };
00093 #endif // HK_KDEGRIDCOLUMNDIALOG_H