00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef HK_KDEREPORT_H
00013 #define HK_KDEREPORT_H
00014 #include "hk_class.h"
00015 #include <qwidget.h>
00016 #include "hk_presentation.h"
00017 #include <kparts/dockmainwindow.h>
00018
00019 class QButtonGroup;
00020 class QLabel;
00021 class hk_kdesimplereport;
00022 class hk_database;
00023 class hk_kdetoolbar;
00024 class QToolButton;
00025 class QVBoxLayout;
00026 class QHBoxLayout;
00027 class KLibFactory;
00028 class KRadioAction;
00029 class QWidgetStack;
00030
00031 class hk_kdereportscrollview;
00043 class hk_kdereport:public KParts::DockMainWindow, public hk_class
00044 {
00045
00046 Q_OBJECT
00047
00048 public:
00049 hk_kdereport( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
00050 virtual ~hk_kdereport();
00051 bool set_presentationdatasource(long n,bool r=true);
00052 long presentationdatasource(void);
00053 void set_database(hk_database*);
00054 hk_database* database(void);
00055 void set_nodesignmode(bool);
00056 void set_mode(hk_presentation::enum_mode s);
00057 hk_kdesimplereport* simplereport(void);
00058 bool load_report(const hk_string& name="");
00059 signals:
00060 void signal_closed(QWidget*);
00061 void signal_setcaption(const QString&);
00062
00063 public slots:
00064 void set_designmode(void);
00065 void set_viewmode(void);
00066 void save_report(void);
00067 void saveas_report(void);
00068 void close_report(void);
00069 void slot_showtoolbar(void);
00070 void print_report(void);
00071 void select_section(void);
00072 protected:
00073 void closeEvent ( QCloseEvent* e);
00074
00075 protected slots:
00076 void fieldbutton_clicked(void);
00077 void pointerbutton_clicked(void);
00078 void viewbutton_clicked(void);
00079 void designbutton_clicked(void);
00080 void field_created(void);
00081 void bulkfont_clicked(void);
00082 void bulkforegroundcolour_clicked(void);
00083 void bulkbackgroundcolour_clicked(void);
00084
00085 private:
00086
00087 void set_reporttoolbar(void);
00088
00089
00090
00091
00092
00093
00094 hk_kdesimplereport* p_report;
00095 bool p_nodesignmode;
00096 QWidgetStack* p_stack;
00097 KParts::ReadOnlyPart* p_previewpart;
00098 hk_kdereportscrollview* p_scrollview;
00099 KRadioAction* p_pointeraction;
00100 KRadioAction* p_fieldaction;
00101 KRadioAction* p_designaction;
00102 KRadioAction* p_viewaction;
00103 KAction* p_printaction;
00104 KAction* p_sectionaction;
00105 KAction* p_reportpropertyaction;
00106 KAction* p_closeaction;
00107 KAction* p_saveaction;
00108 KAction* p_saveasaction;
00109 KActionMenu* p_bulkaction;
00110 KAction* p_bulkfontaction;
00111 KAction* p_bulkforegroundcolouraction;
00112 KAction* p_bulkbackgroundcolouraction;
00113
00114 bool p_whilepreview;
00115 bool p_closewindow;
00116 void set_caption(void);
00117
00118 };
00119 #endif