as_panel.h

Fri, 28 Nov 2008 11:21:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 28 Nov 2008 11:21:08 +0100
changeset 1
d64aaa7d146f
child 3
c1941114ca88
permissions
-rw-r--r--

Fork project trunk at version 0.7.7 to maintain for future usage.
The original Cable & Wireless development team no longer exists.
The OSSP CVS repository is unavailable (cvs co ossp-pkg/as fails),
however http://cvs.ossp.org/dirview?d=ossp-pkg/as/as-gui is working.

michael@1 1 //
michael@1 2 // OSSP asgui - Accounting system graphical user interface
michael@1 3 // Copyright (c) 2002-2004 The OSSP Project (http://www.ossp.org/)
michael@1 4 // Copyright (c) 2002-2004 Ralf S. Engelschall <rse@engelschall.com>
michael@1 5 // Copyright (c) 2002-2004 Michael Schloh von Bennewitz <michael@schloh.com>
michael@1 6 // Copyright (c) 2002-2004 Cable & Wireless Telecommunications Services GmbH
michael@1 7 //
michael@1 8 // This file is part of OSSP asgui, an accounting system graphical user
michael@1 9 // interface which can be found at http://www.ossp.org/pkg/tool/asgui/.
michael@1 10 //
michael@1 11 // Permission to use, copy, modify, and distribute this software for
michael@1 12 // any purpose with or without fee is hereby granted, provided that
michael@1 13 // the above copyright notice and this permission notice appear in all
michael@1 14 // copies.
michael@1 15 //
michael@1 16 // THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
michael@1 17 // WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
michael@1 18 // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
michael@1 19 // IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
michael@1 20 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
michael@1 21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
michael@1 22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
michael@1 23 // USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
michael@1 24 // ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
michael@1 25 // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
michael@1 26 // OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
michael@1 27 // SUCH DAMAGE.
michael@1 28 //
michael@1 29 // as_panel.h: ISO C++ interface
michael@1 30 //
michael@1 31
michael@1 32 #ifndef PREFPANEL_H
michael@1 33 #define PREFPANEL_H
michael@1 34
michael@1 35 #include <qvariant.h>
michael@1 36 #include <qdialog.h>
michael@1 37 #include <qbuttongroup.h>
michael@1 38 #include <qlabel.h>
michael@1 39 #include <qlineedit.h>
michael@1 40 #include <qpushbutton.h>
michael@1 41 #include <qtoolbutton.h>
michael@1 42 #include <qcolordialog.h>
michael@1 43 #include <qradiobutton.h>
michael@1 44 #include <qcheckbox.h>
michael@1 45 #include <qtabwidget.h>
michael@1 46 #include <qwidget.h>
michael@1 47 #include <qlayout.h>
michael@1 48 #include <qtooltip.h>
michael@1 49 #include <qwhatsthis.h>
michael@1 50 #include <qstylefactory.h>
michael@1 51 #include <qlayout.h>
michael@1 52
michael@1 53 #include "as_gui.h" // For usage of style_t
michael@1 54
michael@1 55
michael@1 56 class Prefpanel : public QDialog
michael@1 57 {
michael@1 58 Q_OBJECT
michael@1 59
michael@1 60 public:
michael@1 61 Prefpanel(QWidget *pParent = 0, const char *kszName = 0, bool bModal = true, WFlags Flags = 0);
michael@1 62 // ~Prefpanel(void); // No need to destroy widgets, because qt does it for us
michael@1 63
michael@1 64 private:
michael@1 65 Preferences *m_pPanprefs;
michael@1 66 QColor *m_pLight, *m_pDark;
michael@1 67 QColorGroup *m_pOrigcolours, *m_pAltcolours;
michael@1 68
michael@1 69 public:
michael@1 70 QGroupBox *m_pGenbox, *m_pRembox, *m_pShadebox, *m_pThemebox;
michael@1 71 QVBoxLayout *m_pStylelay, *m_pReportlay, *m_pSwitchlay;
michael@1 72 QVBoxLayout *m_pVlayout, *m_pBinlayout;
michael@1 73 QHBoxLayout *m_pBoolayout, *m_pGenlayout, *m_pRemlayout;
michael@1 74 QVBoxLayout *m_pShadeboxlay, *m_pThemeboxlay;
michael@1 75 QHBoxLayout *m_pGenboxlay, *m_pRemboxlay, *m_pColourlayout;
michael@1 76 QGridLayout *m_pGeninner, *m_pReminner, *m_pShadelayout;
michael@1 77
michael@1 78 QWidget *m_pBoolpage, *m_pGeneralpage, *m_pRemotepage, *m_pColourpage;
michael@1 79
michael@1 80 QHBoxLayout *m_pButtlay;
michael@1 81 QPushButton *m_pOkaybutton;
michael@1 82 QPushButton *m_pApplybutton;
michael@1 83 QPushButton *m_pCancelbutton;
michael@1 84 QTabWidget *m_pTabselect;
michael@1 85
michael@1 86 QLabel *m_pAcctlabel, *m_pEventlabel;
michael@1 87 QLabel *m_pUserlabel, *m_pHomelabel;
michael@1 88 QLabel *m_pCorbalabel, *m_pSoaplabel;
michael@1 89 QLineEdit *m_pAcctline, *m_pEventline;
michael@1 90 QLineEdit *m_pUserline, *m_pHomeline;
michael@1 91 QLineEdit *m_pCorbaline, *m_pSoapline;
michael@1 92 QCheckBox *m_pCorbacheck, *m_pSoapcheck;
michael@1 93
michael@1 94 QLabel *m_pLightlab, *m_pDarklab, *m_pRevertlab;
michael@1 95 QToolButton *m_pLightbutt, *m_pDarkbutt, *m_pRevertbutt;
michael@1 96
michael@1 97 QButtonGroup *m_pStylegroup, *m_pReportgroup, *m_pSwitchgroup;
michael@1 98 QCheckBox *m_pBackupcheck, *m_pExtendcheck;
michael@1 99 QCheckBox *m_pDetailcheck, *m_pSigncheck;
michael@1 100
michael@1 101 public:
michael@1 102 // Accessor get methods
michael@1 103 QString getStyle(void) {return (m_pStylegroup->selected()->text());};
michael@1 104 QString getAccounts(void) {return (m_pAcctline->text());};
michael@1 105 QString getEvents(void) {return (m_pEventline->text());};
michael@1 106 QString getUser(void) {return (m_pUserline->text());};
michael@1 107 QString getHome(void) {return (m_pHomeline->text());};
michael@1 108 QString getCorbahost(void) {return (m_pCorbaline->text());};
michael@1 109 QString getSoaphost(void) {return (m_pSoapline->text());};
michael@1 110 bool getCorbaon(void) {return (m_pCorbacheck->isChecked());};
michael@1 111 bool getSoapon(void) {return (m_pSoapcheck->isChecked());};
michael@1 112 bool getBackon(void) {return (m_pBackupcheck->isChecked());};
michael@1 113 bool getExtendon(void) {return (m_pExtendcheck->isChecked());};
michael@1 114 bool getDetailon(void) {return (m_pDetailcheck->isChecked());};
michael@1 115 bool getSignaton(void) {return (m_pSigncheck->isChecked());};
michael@1 116 QColor *getLight(void) {return m_pLight;};
michael@1 117 QColor *getDark(void) {return m_pDark;};
michael@1 118 QColor *getRevlight(void) {return (QColor *)&m_pOrigcolours->foreground();};
michael@1 119 QColor *getRevdark(void) {return (QColor *)&m_pOrigcolours->background();};
michael@1 120 QColor *getAltlight(void) {return (QColor *)&m_pAltcolours->foreground();};
michael@1 121 QColor *getAltdark(void) {return (QColor *)&m_pAltcolours->background();};
michael@1 122
michael@1 123 // Accessor set methods
michael@1 124 void setAccounts(const QString &kInstr) {m_pAcctline->setText(kInstr);};
michael@1 125 void setEvents(const QString &kInstr) {m_pEventline->setText(kInstr);};
michael@1 126 void setUser(const QString &kInstr) {m_pUserline->setText(kInstr);};
michael@1 127 void setHome(const QString &kInstr) {m_pHomeline->setText(kInstr);};
michael@1 128 void setCorbahost(const QString &kInstr) {m_pCorbaline->setText(kInstr);};
michael@1 129 void setSoaphost(const QString &kInstr) {m_pSoapline->setText(kInstr);};
michael@1 130 void setBackon(const bool &kbEnable = true) {m_pBackupcheck->setChecked(kbEnable);};
michael@1 131 void setExtendon(const bool &kbEnable = true) {m_pExtendcheck->setChecked(kbEnable);};
michael@1 132 void setDetailon(const bool &kbEnable = true) {m_pDetailcheck->setChecked(kbEnable);};
michael@1 133 void setSignaton(const bool &kbEnable = true) {m_pSigncheck->setChecked(kbEnable);};
michael@1 134 void lockCorba(const bool &kbLock = true) {m_pCorbacheck->setEnabled(!kbLock);};
michael@1 135 void lockSoap(const bool &kbLock = true) {m_pSoapcheck->setEnabled(!kbLock);};
michael@1 136 void setLight(const QColor *pLight) {m_pLight = (QColor *)pLight;};
michael@1 137 void setDark(const QColor *pDark) {m_pDark = (QColor *)pDark;};
michael@1 138 void setOrigcolour(QColorGroup *pGroup) {m_pOrigcolours = pGroup;};
michael@1 139 void setAltcolour(QColorGroup *pGroup) {m_pAltcolours = pGroup;};
michael@1 140 void setCorbaon(const bool &kbEnable = true) {
michael@1 141 m_pCorbaline->setEnabled(kbEnable);
michael@1 142 m_pCorbacheck->setChecked(kbEnable);
michael@1 143 };
michael@1 144 void setSoapon(const bool &kbEnable = true) {
michael@1 145 m_pSoapline->setEnabled(kbEnable);
michael@1 146 m_pSoapcheck->setChecked(kbEnable);
michael@1 147 };
michael@1 148 void setStyle(const char *pkszStyle) {
michael@1 149 for (int nIter = 0; nIter < m_pStylegroup->count(); nIter++)
michael@1 150 if (m_pStylegroup->find(nIter)->text() == pkszStyle)
michael@1 151 m_pStylegroup->setButton(nIter);
michael@1 152 };
michael@1 153
michael@1 154 protected slots:
michael@1 155 virtual void polish(void);
michael@1 156 virtual void textChange(void);
michael@1 157 virtual void shadeLight(void);
michael@1 158 virtual void shadeDark(void);
michael@1 159 virtual void shadeRevert(void);
michael@1 160 void enableCorba(bool bOn) {m_pCorbaline->setEnabled(bOn);};
michael@1 161 void enableSoap(bool bOn) {m_pSoapline->setEnabled(bOn);};
michael@1 162
michael@1 163 signals:
michael@1 164 void applied(void);
michael@1 165 };
michael@1 166
michael@1 167 #endif // PREFPANEL_H

mercurial