Databasehandlingdialogclasses  0.5.3
hk_kdetablepartwidget.h
1 // ****************************************************************************
2 // copyright (c) 2000-2005 Horst Knorr <hk_classes@knoda.org>
3 // This file is part of the hk_kdeclasses library.
4 // This file may be distributed and/or modified under the terms of the
5 // GNU Library Public License version 2 as published by the Free Software
6 // Foundation and appearing in the file LGPL included in the
7 // packaging of this file.
8 // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
9 // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
10 // ****************************************************************************
11 
12 #ifndef HK_KDETABLEPARTWIDGET_H
13 #define HK_KDETABLEPARTWIDGET_H
14 
15 #include <kparts/part.h>
16 #include <qvariant.h>
17 #include <qwidget.h>
18 #include <qwidgetstack.h>
19 #include <kaction.h>
20 
21 #include <hk_dstable.h>
22 class hk_kdetabledesign;
23 class hk_kdegrid;
24 class hk_kdegridpart;
25 class QVBoxLayout;
26 class QHBoxLayout;
27 class QGridLayout;
28 class QButtonGroup;
29 class QTable;
30 class QProgressDialog;
31 class hk_kdetoolbar;
32 class hk_kdetablepart;
33 
45 class hk_kdetablepartwidget : public QWidgetStack ,public hk_dstable
46 {
47 friend class hk_kdetablepart;
48  Q_OBJECT
49 
50  public:
51  virtual ~hk_kdetablepartwidget();
52  virtual bool set_mode(enum_mode s);
53 
57  virtual void set_datasource(hk_datasource*);
58  hk_datasource* datasource(void);
64  void set_autoclose(bool c){p_autoclose=c;}
65  hk_dsgrid* grid(void)const ;
66  hk_kdegrid* kdegrid(void) const;
67  hk_kdetoolbar* toolbar(void)const;
68  KParts::ReadWritePart* gridpart(void) const;
69  bool in_designmode(void);
70 
71 virtual void show_widget(void);
72 virtual void hide_widget(void);
73 virtual bool close_widget(void);
74 
75  void alter_table(void);
76  signals:
77  void signal_closed(QWidget*);
78 
79  public slots:
80  void close_table(void);
81  void save_table(void);
82  void reload_table(void);
83  void slot_has_changed(void);
84  void designbutton_clicked(void);
85  void tablebutton_clicked(void);
86  void set_caption(void);
87 
88  protected:
89  void internal_designbutton_clicked(void);
90  void internal_tablebutton_clicked(void);
91  hk_kdetablepartwidget(QWidget* w,const char* n=0,WFlags f=0);
92  virtual void before_source_vanishes(void);
93  void closeEvent ( QCloseEvent* e);
94  hk_kdetoolbar* p_toolbar;
95  hk_kdegrid* p_grid;
96  hk_kdetabledesign* p_design;
97 
98  KRadioAction* p_designaction;
99  KRadioAction* p_viewaction;
100  KToggleAction* p_filterdefinitionaction;
101  KToggleAction* p_filterexecaction;
102  KAction* p_printaction;
103  KAction* p_columndialogaction;
104  KAction* p_findaction;
105  KAction* p_copyaction;
106  KAction* p_pasteaction;
107  KAction* p_saveaction;
108  KAction* p_reloadaction;
109  static bool set_progress(long int,long int,const hk_string&);
110 
111  protected slots:
112  void exec_cancelled(void);
113 
114 
115  private:
116  bool p_autoclose;
117  KParts::ReadWritePart* p_gridpart;
118 static QProgressDialog* p_progressdialog;
119  static bool p_cancel;
120  void before_execute(void);
121  void after_execute(void);
122 
123 };
124 #endif // HK_KDETABLEPARTWIDGET_H
KDE high level widget to display and alter tables.
Definition: hk_kdetablepartwidget.h:45
virtual void set_datasource(hk_datasource *)
Definition: hk_kdetablepartwidget.cpp:111
Definition: hk_kdetoolbar.h:26
KDE widget to alter tables.
Definition: hk_kdetabledesign.h:47
void set_autoclose(bool c)
Definition: hk_kdetablepartwidget.h:64
shows data in a grid without columnheaders.
Definition: hk_kdegrid.h:45