00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef HK_KDEREPORTPARTWIDGET_H
00013 #define HK_KDEREPORTPARTWIDGET_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 class hk_kdereportpart;
00031 class hk_kdepreviewwindow;
00032
00033 class hk_kdereportpartwidgetscrollview;
00045 class hk_kdereportpartwidget:public KParts::DockMainWindow, public hk_class
00046 {
00047 friend class hk_kdereportpart;
00048 Q_OBJECT
00049
00050 public:
00051 virtual ~hk_kdereportpartwidget();
00052 bool set_presentationdatasource(long n,bool r=true);
00053 long presentationdatasource(void);
00054 void set_database(hk_database*);
00055 hk_database* database(void);
00056 void set_nodesignmode(bool);
00057 void set_mode(hk_presentation::enum_mode s);
00058 hk_kdesimplereport* simplereport(void);
00059 bool load_report(const hk_string& name="");
00060
00061
00062
00063 signals:
00064 void signal_closed(QWidget*);
00065 void signal_setcaption(const QString&);
00066
00067 public slots:
00068 void set_designmode(void);
00069 void set_viewmode(void);
00070 void save_report(void);
00071 void saveas_report(void);
00072 void close_report(void);
00073 void slot_showtoolbar(void);
00074 void print_report(void);
00075 void select_section(void);
00076
00077
00078 protected:
00079 hk_kdereportpartwidget( hk_kdereportpart*,QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
00080 void closeEvent ( QCloseEvent* e);
00081
00082 protected slots:
00083 void fieldbutton_clicked(void);
00084 void pointerbutton_clicked(void);
00085 void viewbutton_clicked(void);
00086 void designbutton_clicked(void);
00087 void field_created(void);
00088 void bulkfont_clicked(void);
00089 void bulkforegroundcolour_clicked(void);
00090 void bulkbackgroundcolour_clicked(void);
00091 void slot_has_changed();
00092 void clipboard_changed();
00093 void slot_focuswidget_changed();
00094
00095
00096 private:
00097 KRadioAction* p_pointeraction;
00098 KRadioAction* p_fieldaction;
00099 KRadioAction* p_designaction;
00100 KRadioAction* p_viewaction;
00101 KAction* p_printaction;
00102 KAction* p_sectionaction;
00103 KAction* p_reportpropertyaction;
00104 KAction* p_saveaction;
00105 KAction* p_saveasaction;
00106 KActionMenu* p_bulkaction;
00107 KAction* p_bulkfontaction;
00108 KAction* p_bulkforegroundcolouraction;
00109 KAction* p_bulkbackgroundcolouraction;
00110
00111 KAction* p_deleteaction;
00112 KAction* p_copyaction;
00113 KAction* p_pasteaction;
00114 KAction* p_cutaction;
00115
00116
00117
00118
00119 KActionMenu* p_resizeaction;
00120 KAction* p_minwidthaction;
00121 KAction* p_maxwidthaction;
00122 KAction* p_minheightaction;
00123 KAction* p_maxheightaction;
00124 KAction* p_minsizeaction;
00125 KAction* p_maxsizeaction;
00126 KActionMenu*p_alignaction;
00127 KAction* p_alignleftaction;
00128 KAction* p_alignrightaction;
00129 KAction* p_aligntopaction;
00130 KAction* p_alignbottomaction;
00131
00132
00133 void set_reporttoolbar(void);
00134
00135
00136
00137
00138
00139
00140 hk_kdesimplereport* p_report;
00141 bool p_nodesignmode;
00142 QWidgetStack* p_stack;
00143 hk_kdepreviewwindow* p_previewwindow;
00144 hk_kdereportpartwidgetscrollview* p_scrollview;
00145 hk_kdereportpart* p_reportpart;
00146
00147 bool p_whilepreview;
00148 bool p_closewindow;
00149 void set_caption(void);
00150
00151 };
00152 #endif