Thu, 06 Aug 2009 13:04:50 +0200
Correct cursor method signatures and explicitly require XML linkage.
michael@1 | 1 | // |
michael@1 | 2 | // OSSP asgui - Accounting system graphical user interface |
michael@12 | 3 | // Copyright (c) 2002-2009 The OSSP Project (http://www.ossp.org/) |
michael@12 | 4 | // Copyright (c) 2002-2009 Ralf S. Engelschall <rse@engelschall.com> |
michael@12 | 5 | // Copyright (c) 2002-2009 Michael Schloh von Bennewitz <michael@schloh.com> |
michael@12 | 6 | // Copyright (c) 2002-2009 Cable & Wireless Telecommunications Services GmbH |
michael@1 | 7 | // |
michael@1 | 8 | // This file is part of OSSP asgui, an accounting system graphical user |
michael@3 | 9 | // interface which can be found at http://asgui.europalab.com/. |
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_helpanel.cpp: ISO C++ implementation |
michael@1 | 30 | // |
michael@1 | 31 | |
michael@3 | 32 | #define QT3_SUPPORT |
michael@3 | 33 | |
michael@1 | 34 | #include <qvariant.h> |
michael@1 | 35 | #include <qpushbutton.h> |
michael@3 | 36 | #include <q3textbrowser.h> |
michael@1 | 37 | #include <qlayout.h> |
michael@1 | 38 | #include <qtooltip.h> |
michael@3 | 39 | #include <q3whatsthis.h> |
michael@3 | 40 | |
michael@3 | 41 | //Added by qt3to4: |
michael@3 | 42 | #include <Q3HBoxLayout> |
michael@3 | 43 | #include <Q3VBoxLayout> |
michael@1 | 44 | |
michael@1 | 45 | #include "as_helpanel.h" |
michael@1 | 46 | |
michael@1 | 47 | |
michael@1 | 48 | namespace AS { |
michael@1 | 49 | |
michael@1 | 50 | // |
michael@1 | 51 | // Constructs a Helpanel as a child of 'pParent', with the |
michael@1 | 52 | // name 'kszName' and widget flags set to 'Flags'. |
michael@1 | 53 | // |
michael@1 | 54 | // The dialog will by default be modal, unless you set 'bModal' to |
michael@1 | 55 | // false to construct a modeless dialog. |
michael@1 | 56 | // |
michael@3 | 57 | Helpanel::Helpanel(const QString &kSource, QWidget *pParent, const char *kszName, bool bModal, Qt::WFlags Flags) |
michael@1 | 58 | : QDialog(pParent, kszName, bModal, Flags) |
michael@1 | 59 | { |
michael@1 | 60 | // Boilerplate code to initialize the panel |
michael@1 | 61 | if (!kszName) |
michael@1 | 62 | this->setName("Helpanel"); |
michael@1 | 63 | |
michael@1 | 64 | // Make panel resizeable |
michael@1 | 65 | this->setSizeGripEnabled(true); |
michael@1 | 66 | this->setSizePolicy(QSizePolicy((QSizePolicy::SizeType)5, |
michael@1 | 67 | (QSizePolicy::SizeType)5, 0, 0, this->sizePolicy().hasHeightForWidth())); |
michael@1 | 68 | |
michael@1 | 69 | // Build panel using already constructed widgets and layouts |
michael@3 | 70 | m_pFormlay = new Q3VBoxLayout(this, 11, 6, "Formlayout"); |
michael@1 | 71 | |
michael@1 | 72 | // Groupbox and its text display |
michael@3 | 73 | m_pBrowser = new Q3TextBrowser(this, "Helpbrowser"); |
michael@1 | 74 | m_pBrowser->setSource(QString(TITRAQ_DOCDIR) + QChar('/') + kSource); |
michael@1 | 75 | m_pBrowser->setReadOnly(true); |
michael@1 | 76 | m_pBrowser->setFocus(); |
michael@1 | 77 | |
michael@1 | 78 | // Add a spacer to sideline the otherwise massive dismiss button |
michael@3 | 79 | m_pButtlay = new Q3HBoxLayout(0, 0, 6, "Buttonlayout"); |
michael@1 | 80 | QSpacerItem *pSpacey = new QSpacerItem(40, 20, QSizePolicy::Minimum, QSizePolicy::Minimum); |
michael@1 | 81 | m_pButtlay->addItem(pSpacey); |
michael@1 | 82 | |
michael@1 | 83 | // Add dismiss push button |
michael@1 | 84 | m_pDismissbutt = new QPushButton(this, "Dismissbutton"); |
michael@1 | 85 | m_pDismissbutt->setPaletteBackgroundColor(QColor(198, 196, 186)); |
michael@14 | 86 | m_pDismissbutt->setCursor(QCursor(Qt::PointingHandCursor)); |
michael@1 | 87 | m_pButtlay->addWidget(m_pDismissbutt); |
michael@1 | 88 | |
michael@1 | 89 | // Add the stuff to our form layout |
michael@1 | 90 | m_pFormlay->addWidget(m_pBrowser); |
michael@1 | 91 | m_pFormlay->addSpacing(6); |
michael@1 | 92 | m_pFormlay->addLayout(m_pButtlay); |
michael@1 | 93 | |
michael@1 | 94 | // Connect signals to slots, accept() and reject() are Qt implicit |
michael@1 | 95 | connect(m_pDismissbutt, SIGNAL(clicked(void)), SLOT(accept(void))); |
michael@1 | 96 | this->resize(QSize(464, 332).expandedTo(minimumSizeHint())); |
michael@1 | 97 | this->textChange(); |
michael@1 | 98 | } |
michael@1 | 99 | |
michael@1 | 100 | // |
michael@1 | 101 | // Sets the strings of the subwidgets using the current language |
michael@1 | 102 | // |
michael@1 | 103 | void Helpanel::textChange(void) |
michael@1 | 104 | { |
michael@1 | 105 | this->setCaption(trUtf8("AS Accounting System help contents", "Help contents for the AS GUI application.")); |
michael@1 | 106 | |
michael@1 | 107 | // Top level push buttons associated with accept and save slots |
michael@1 | 108 | m_pDismissbutt->setText(trUtf8("Dismiss", "Comment for Dismissbutton")); |
michael@1 | 109 | QToolTip::add(m_pDismissbutt, trUtf8("Closes the help panel", "Comment for tooltip Dismissbutton")); |
michael@3 | 110 | Q3WhatsThis::add(m_pDismissbutt, trUtf8("The dismiss button dismisses the help panel", "Comment for whatsThis Dismissbutton")); |
michael@1 | 111 | |
michael@1 | 112 | // The main text browser window which presents the HTML help contents |
michael@3 | 113 | Q3WhatsThis::add(m_pBrowser, trUtf8("The text browser window displays the help contents", "Comment for whatsThis Browser")); |
michael@1 | 114 | } |
michael@1 | 115 | } // namespace AS |