as_numdial.cpp

Thu, 06 Aug 2009 13:04:50 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 06 Aug 2009 13:04:50 +0200
changeset 14
1c58588f9cb6
parent 12
ceb4ba3d2d00
permissions
-rw-r--r--

Correct cursor method signatures and explicitly require XML linkage.

     1 //
     2 //  OSSP asgui - Accounting system graphical user interface
     3 //  Copyright (c) 2002-2009 The OSSP Project (http://www.ossp.org/)
     4 //  Copyright (c) 2002-2009 Ralf S. Engelschall <rse@engelschall.com>
     5 //  Copyright (c) 2002-2009 Michael Schloh von Bennewitz <michael@schloh.com>
     6 //  Copyright (c) 2002-2009 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_numdial.cpp: ISO C++ implementation
    30 //
    32 #include "as_numdial.h"
    34 #include <qvariant.h>
    35 #include <q3frame.h>
    36 #include <qlabel.h>
    37 #include <qpushbutton.h>
    38 #include <qspinbox.h>
    39 #include <qlayout.h>
    40 #include <qtooltip.h>
    41 #include <q3whatsthis.h>
    43 //Added by qt3to4:
    44 #include <Q3HBoxLayout>
    45 #include <Q3VBoxLayout>
    47 #include "as_const.h"
    50 namespace AS {
    52 //
    53 // Constructs a Numdial as a child of 'pParent', with the 
    54 // name 'kszName' and widget flags set to 'Flags'.
    55 //
    56 // The dialog will by default be modal, unless you set 'bModal' to
    57 // false to construct a modeless dialog.
    58 //
    59 Numdial::Numdial(QWidget *pParent, const char *kszName, bool bModal, Qt::WFlags Flags)
    60     : QDialog(pParent, kszName, bModal, Flags)
    61 {
    62     // Boilerplate code to initialize the panel
    63     if (!kszName)
    64         this->setName("Numberdialog");
    66     // Fix dialog size
    67     this->setSizeGripEnabled(false);
    68     this->setSizePolicy(QSizePolicy((QSizePolicy::SizeType)0,
    69         (QSizePolicy::SizeType)0, 0, 0, this->sizePolicy().hasHeightForWidth()));
    71     m_pFrame = new Q3Frame(this, "Mainframe");
    72     m_pFrame->setFrameShape(Q3Frame::StyledPanel);
    73     m_pFrame->setFrameShadow(Q3Frame::Raised);
    74     m_pFramelay = new Q3VBoxLayout(m_pFrame, 11, 6, "Framelay"); 
    75     m_pInputlay = new Q3HBoxLayout(0, 0, 6, "Horizontallayout"); 
    76     m_pFormlayout = new Q3VBoxLayout(this, 11, 6, "Formlayout"); 
    78     m_pReportlabel = new QLabel(m_pFrame, "Reportlabel");
    79     m_pReportlabel->setSizePolicy(QSizePolicy((QSizePolicy::SizeType)4, (QSizePolicy::SizeType)5, 0, 0, m_pReportlabel->sizePolicy().hasHeightForWidth()));
    80     m_pInputlay->addWidget(m_pReportlabel);
    82     m_pSpinbox = new QSpinBox(m_pFrame, "Spinbox");
    83     m_pSpinbox->setMinValue(1);                 // Must choose at least one week
    84     m_pSpinbox->setMaxValue(TITRAQ_BIGMAGIC);   // Must choose less than magic
    85 //    m_pSpinbox->setButtonSymbols(QSpinBox::PlusMinus);
    86 //    m_pSpinbox->editor()->setAlignment(Qt::AlignRight);
    87     m_pInputlay->addWidget(m_pSpinbox);
    89     m_pWeeklabel = new QLabel(m_pFrame, "Weeklabel");
    90     m_pWeeklabel->setSizePolicy(QSizePolicy((QSizePolicy::SizeType)4, (QSizePolicy::SizeType)5, 0, 0, m_pWeeklabel->sizePolicy().hasHeightForWidth()));
    91     m_pInputlay->addWidget(m_pWeeklabel);
    92     m_pFramelay->addLayout(m_pInputlay);
    94     // Push button suite
    95     m_pButtlay = new Q3HBoxLayout(0, 0, 6, "Buttlay");
    96     m_pOkaybutt = new QPushButton(m_pFrame, "Okaybutton");
    97     m_pOkaybutt->setPaletteBackgroundColor(QColor(198, 196, 186));
    98     m_pOkaybutt->setCursor(QCursor(Qt::PointingHandCursor));
    99     m_pOkaybutt->setDefault(true);
   100     m_pButtlay->addWidget(m_pOkaybutt);
   101     m_pCancelbutt = new QPushButton(m_pFrame, "Cancelbutton");
   102     m_pCancelbutt->setPaletteBackgroundColor(QColor(198, 196, 186));
   103     m_pCancelbutt->setCursor(QCursor(Qt::PointingHandCursor));
   104     m_pButtlay->addWidget(m_pCancelbutt);
   105     m_pFramelay->addLayout(m_pButtlay);
   107     // Add all the junk to our main frame
   108     m_pFormlayout->addWidget(m_pFrame);
   110     // Connect signals to slots, accept() and reject() are Qt implicit
   111     connect(m_pOkaybutt, SIGNAL(clicked(void)), SLOT(accept(void)));
   112     connect(m_pCancelbutt, SIGNAL(clicked(void)), SLOT(reject(void)));
   113     this->resize(QSize(272, 111).expandedTo(minimumSizeHint()));
   114     this->textChange();
   115 }
   117 //
   118 //  Sets the strings of the subwidgets using the current language
   119 //
   120 void Numdial::textChange()
   121 {
   122     this->setCaption(trUtf8("Numberdialog", "For general input of numbers followed by an accept or cancel operation"));
   123     m_pReportlabel->setText(trUtf8("Report"));
   124     m_pWeeklabel->setText(trUtf8("weeks of data"));
   126     // Top level push buttons associated with accept slot
   127     m_pCancelbutt->setText(trUtf8("Cancel", "Comment for Cancelbutton"));
   128     QToolTip::add(m_pCancelbutt, trUtf8("Closes the report panel", "Comment for tooltip Cancelbutton"));
   129     Q3WhatsThis::add(m_pCancelbutt, trUtf8("The cancel button closes the report panel without further action", "Comment for whatsThis Cancelbutton"));
   130     m_pOkaybutt->setText(trUtf8("Okay", "Comment for Okaybutton"));
   131     QToolTip::add(m_pOkaybutt, trUtf8("Aknowleges your input", "Comment for tooltip Okaybutton"));
   132     Q3WhatsThis::add(m_pOkaybutt, trUtf8("The okay button aknowleges your input and prepares for action", "Comment for whatsThis Okaybutton"));
   134     // Text help for spinbox number input
   135     QToolTip::add(m_pSpinbox, trUtf8("Input a number", "Comment for tooltip Spinbox"));
   136     Q3WhatsThis::add(m_pSpinbox, trUtf8("Click on the arrows or type to input a number", "Comment for whatsThis Spinbox"));
   137 }
   138 } // namespace AS

mercurial