hk_kdereportpartwidget.h

00001 // ****************************************************************************
00002 // copyright (c) 2000-2005 Horst Knorr <hk_classes@knoda.org>
00003 // This file is part of the hk_kdeclasses library.
00004 // This file may be distributed and/or modified under the terms of the
00005 // GNU Library Public License version 2 as published by the Free Software
00006 // Foundation and appearing in the file LGPL included in the
00007 // packaging of this file.
00008 // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00009 // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
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_presentation::enum_mode  mode(void);
00059         hk_kdesimplereport* simplereport(void);
00060         bool load_report(const hk_string& name="");
00061         bool while_executing(void) const;
00062         void stop_execution(void);
00063 virtual void show_widget(void);
00064 virtual void hide_widget(void);
00065 virtual bool close_widget(void);
00066 
00067 
00068 
00069         void set_caller_form(const hk_string&);
00070         hk_string caller_form(void) const;
00071 
00072     signals:
00073         void signal_closed(QWidget*);
00074         void signal_setcaption(const QString&);
00075         void signal_raise_form(const hk_string&);
00076 
00077     public slots:
00078         void set_designmode(void);
00079         void set_viewmode(void);
00080         void    save_report(void);
00081         void    saveas_report(void);
00082         void    close_report(void);
00083         void    slot_showtoolbar(void);
00084         void    print_report(void);
00085         void    select_section(void);
00086 
00087 
00088     protected:
00089         hk_kdereportpartwidget( hk_kdereportpart*,QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
00090         void closeEvent ( QCloseEvent* e);
00091 
00092     protected slots:
00093         void fieldbutton_clicked(void);
00094         void pointerbutton_clicked(void);
00095         void viewbutton_clicked(void);
00096         void designbutton_clicked(void);
00097         void field_created(void);
00098         void bulkfont_clicked(void);
00099         void bulkforegroundcolour_clicked(void);
00100         void bulkbackgroundcolour_clicked(void);
00101         void slot_has_changed();
00102         void clipboard_changed();
00103         void slot_focuswidget_changed();
00104 
00105 
00106     private:
00107         KRadioAction* p_pointeraction;
00108         KRadioAction* p_fieldaction;
00109         KRadioAction* p_designaction;
00110         KRadioAction* p_viewaction;
00111         KAction*  p_printaction;
00112         KAction*  p_sectionaction;
00113         KAction*  p_reportpropertyaction;
00114         KAction*  p_saveaction;
00115         KAction*  p_saveasaction;
00116         KActionMenu*   p_bulkaction;
00117         KAction*       p_bulkfontaction;
00118         KAction*       p_bulkforegroundcolouraction;
00119         KAction*       p_bulkbackgroundcolouraction;
00120 
00121         KAction* p_deleteaction;
00122         KAction* p_copyaction;
00123         KAction* p_pasteaction;
00124         KAction* p_cutaction;
00125 
00126 
00127 
00128 
00129         KActionMenu* p_resizeaction;
00130         KAction* p_minwidthaction;
00131         KAction* p_maxwidthaction;
00132         KAction* p_minheightaction;
00133         KAction* p_maxheightaction;
00134         KAction* p_minsizeaction;
00135         KAction* p_maxsizeaction;
00136         KActionMenu*p_alignaction;
00137         KAction* p_alignleftaction;
00138         KAction* p_alignrightaction;
00139         KAction* p_aligntopaction;
00140         KAction* p_alignbottomaction;
00141         hk_string p_callerform;
00142 
00143 
00144         void set_reporttoolbar(void);
00145 /* QWidget* p_reporttoolbar;
00146  QButtonGroup* reportbuttongroup;
00147  QToolButton* reportdatabutton;
00148  QToolButton* reportpointerbutton;
00149  QToolButton* reportsectionbutton;
00150 */
00151         hk_kdesimplereport* p_report;
00152         bool p_nodesignmode;
00153         QWidgetStack* p_stack;
00154         hk_kdepreviewwindow*  p_previewwindow;
00155         hk_kdereportpartwidgetscrollview* p_scrollview;
00156         hk_kdereportpart* p_reportpart;
00157 
00158         bool p_whilepreview;
00159         bool p_closewindow;
00160         void set_caption(void);
00161 
00162 };
00163 #endif

Generated on Tue Sep 25 22:39:06 2007 for Databasehandlingdialogclasses by  doxygen 1.5.3