Databasehandlingdialogclasses  0.5.3
hk_kdeform.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_KDEform_H
13 #define HK_KDEform_H
14 #include <hk_form.h>
15 #include <qvariant.h>
16 #include <qwidget.h>
17 #include <hk_presentation.h>
18 //#include <fstream.h>
19 #include <hk_class.h>
20 #include <kparts/dockmainwindow.h>
21 #include <kparts/partmanager.h>
22 
23 #include "hk_kdeformpartwidget.h"
24 
25 class QVBoxLayout;
26 class QHBoxLayout;
27 class QGridLayout;
28 class QLabel;
29 class QScrollView;
30 class hk_kdesimpleform;
31 class QToolButton;
32 class QButtonGroup;
33 class hk_kderowselector;
34 class hk_kdetoolbar;
35 class hk_kdeproperty;
36 class hk_kdegridpart;
37 
49 class hk_kdeform : public KParts::DockMainWindow,public hk_class
50 {
51  Q_OBJECT
52  friend class hk_kdesimpleform;
53  public:
54  hk_kdeform( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
55  virtual ~hk_kdeform();
56 
57  hk_presentation::enum_mode mode(void);
61  void set_mode(hk_presentation::enum_mode s);
62  void set_viewmode(void);
63  void set_designmode(void);
67  hk_dsgrid* new_grid(void);
71  hk_dslineedit* new_lineedit(void);
75  hk_dsboolean* new_bool(void);
79  hk_button* new_button(void);
83  hk_dsrowselector* new_rowselector(void);
87  hk_dsmemo* new_memo(void);
88 
89  hk_subform* new_subform(void);
93  void set_formsize(unsigned int width, unsigned int height);
97  void set_database(hk_database* db);
98  hk_database* database(void);
99  list<hk_datasource*>* datasources(void);
100  long new_datasource(const hk_string& name,datasourcetype dt=dt_table);
101  hk_datasource* get_datasource(long nr);
109  bool set_presentationdatasource(long n,bool r=true);
110  long presentationdatasource(void);
111  void loaddata(xmlNodePtr);
112  void savedata(ofstream& s);
113  void load_form(const hk_string& n);
119  void set_autoclose(bool c);
123  void set_nodesignmode(bool n);
124  void save_form_when_changed(void);
125 
126  hk_kdeproperty* propertyeditor(void);
127  signals:
128  void signal_closed(QWidget*);
129 
130 
131 
132  protected:
133  virtual void closeEvent ( QCloseEvent* e);
134  virtual void mousePressEvent(QMouseEvent*);
135  KAction * p_closeaction;
136  protected slots:
137  void part_removed(void);
138  void grid_partinfocus(hk_kdegridpart*);
139  void grid_partoutfocus(hk_kdegridpart*);
140  void close_form(void);
141  private:
142  void set_caption(void);
143  KParts::ReadWritePart* p_part;
144  KParts::PartManager* p_partmanager;
145  hk_kdeformpartwidget* p_form;
146 };
147 #endif
KDE Widget to select a specific row.
Definition: hk_kderowselector.h:32
Definition: hk_kdeproperty.h:21
hk_kdesimpleform * simpleform(void)
Definition: hk_kdeform.cpp:426
void set_mode(hk_presentation::enum_mode s)
Definition: hk_kdeform.cpp:142
void set_database(hk_database *db)
Definition: hk_kdeform.cpp:252
void set_nodesignmode(bool n)
KDE high level widget to display and design forms.
Definition: hk_kdeform.h:49
Definition: hk_kdetoolbar.h:26
hk_dsboolean * new_bool(void)
Definition: hk_kdeform.cpp:188
hk_dslineedit * new_lineedit(void)
Definition: hk_kdeform.cpp:176
hk_dsrowselector * new_rowselector(void)
Definition: hk_kdeform.cpp:221
void set_autoclose(bool c)
Definition: hk_kdeform.cpp:392
hk_dsmemo * new_memo(void)
Definition: hk_kdeform.cpp:199
KDE Widget to display forms.
Definition: hk_kdesimpleform.h:41
hk_button * new_button(void)
Definition: hk_kdeform.cpp:210
KDE high level widget to display and design forms.
Definition: hk_kdeformpartwidget.h:48
void set_formsize(unsigned int width, unsigned int height)
Definition: hk_kdeform.cpp:242
bool set_presentationdatasource(long n, bool r=true)
Definition: hk_kdeform.cpp:307
hk_dsgrid * new_grid(void)
Definition: hk_kdeform.cpp:165