as_reportpanel.h

Fri, 05 Dec 2008 23:14:02 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 05 Dec 2008 23:14:02 +0100
changeset 3
c1941114ca88
parent 1
d64aaa7d146f
child 12
ceb4ba3d2d00
permissions
-rw-r--r--

Port to the Qt4 API and bump version pending release engineering.

     1 //
     2 //  OSSP asgui - Accounting system graphical user interface
     3 //  Copyright (c) 2002-2008 The OSSP Project (http://www.ossp.org/)
     4 //  Copyright (c) 2002-2008 Ralf S. Engelschall <rse@engelschall.com>
     5 //  Copyright (c) 2002-2008 Michael Schloh von Bennewitz <michael@schloh.com>
     6 //  Copyright (c) 2002-2008 Cable & Wireless Telecommunications Services GmbH
     7 //
     8 //  This file is part of OSSP asgui, an accounting system graphical user
     9 //  interface which can be found at http://asgui.europalab.com/.
    10 //
    11 //  Permission to use, copy, modify, and distribute this software for
    12 //  any purpose with or without fee is hereby granted, provided that
    13 //  the above copyright notice and this permission notice appear in all
    14 //  copies.
    15 //
    16 //  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    17 //  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    18 //  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
    19 //  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
    20 //  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    21 //  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
    22 //  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
    23 //  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    24 //  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
    25 //  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
    26 //  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    27 //  SUCH DAMAGE.
    28 //
    29 //  as_reportpanel.h: ISO C++ interface
    30 //
    32 #define QT3_SUPPORT
    34 #ifndef REPORTPANEL_H
    35 #define REPORTPANEL_H
    37 #include <qvariant.h>
    38 #include <qdialog.h>
    39 #include <qdatetime.h>
    41 //Added by qt3to4:
    42 #include <Q3GridLayout>
    43 #include <Q3HBoxLayout>
    44 #include <Q3VBoxLayout>
    45 #include <Q3PopupMenu>
    48 class TiTable;
    49 class Preferences;
    50 class Q3VBoxLayout;
    51 class Q3HBoxLayout;
    52 class Q3GridLayout;
    53 class QPushButton;
    54 class Q3TextEdit;
    55 class QToolButton;
    56 class Q3ButtonGroup;
    57 class Q3PopupMenu;
    58 class QPrinter;
    60 namespace AS {
    62 class Reportpanel : public QDialog
    63 {
    64     Q_OBJECT
    66 public:
    67     Reportpanel(TiTable *, Preferences *, QWidget *pParent = 0,
    68                 const char *kszName = 0, bool bModal = true, Qt::WFlags Flags = 0);
    69 //    ~Reportpanel(void); // No need to destroy widgets, because qt does it for us
    71 public:
    72     Q3ButtonGroup *m_pWeekmonthgroup;
    73     QToolButton  *m_pWeeklybutt;
    74     QToolButton  *m_pMonthlybutt;
    75     Q3TextEdit    *m_pBrowser;
    76     QPushButton  *m_pSavebutt;
    77     QPushButton  *m_pDismissbutt;
    78     QPushButton  *m_pPrintbutt;
    80 protected:
    81     Q3VBoxLayout *m_pFormlay;
    82     Q3VBoxLayout *m_pGrouplay;
    83     Q3HBoxLayout *m_pToolay;
    84     Q3HBoxLayout *m_pPushlay;
    85     Q3HBoxLayout *m_pWeekmonthlay;
    86     Q3PopupMenu  *m_pWeekpop;
    87     Q3PopupMenu  *m_pMonthpop;
    89 private:
    90     int          m_nWeeks;
    91     int          m_nMonths;
    92     TiTable     *m_pReptable;
    93     Preferences *m_pReprefs;
    94 #ifndef QT_NO_PRINTER
    95     QPrinter    *m_pPrinter;
    96 #endif
    98 public slots:
    99     int exec(void);
   101 protected slots:
   102     virtual void saveReport(void);
   103     virtual void printReport(void);
   104     virtual void textChange(void);
   105     virtual void reportWeeks(int nMenuid = -1);
   106     virtual void reportMonths(int nMenuid = -1);
   108 private:
   109     void writeHeader(int);
   110     void writeHeader(int, int);
   111     void writeHeader(QString);
   112     void writeHeader(QString, QString);
   113     void writeFooter(void);
   114     QString getWeektotals(QDate Refer = QDate::currentDate(), int nWeeks = 1);
   115     QString getWeekdetails(QDate Refer = QDate::currentDate(), int nWeeks = 1);
   116     QString getMonthtotals(QDate Refer = QDate::currentDate(), int nMonths = 1);
   117     QString getMonthdetails(QDate Refer = QDate::currentDate(), int nMonths = 1);
   118 };
   119 } // namespace AS
   121 #endif // REPORTPANEL_H

mercurial