Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

dialdialog.cpp

Go to the documentation of this file.
00001 
00002 
00003 #include <qlayout.h>
00004 #include <qlabel.h>
00005 #include <qpushbutton.h>
00006 #include <qbuttongroup.h>
00007 
00008 #include "dialdialog.h"
00009 
00010 
00011 
00012 DialDialog::DialDialog(  QWidget* parent, const char* name, bool modal, WFlags fl )
00013     : QDialog( parent, name, modal, fl ) {
00014 
00015     setCaption( tr( "Enter number" ) );
00016 
00017     QVBoxLayout *mainLayout = new QVBoxLayout( this );
00018 
00019     QLabel *textLabel = new QLabel( this );
00020     textLabel->setTextFormat( QLabel::RichText );
00021     textLabel->setText( tr("Enter the number you want to dial. When finished, press ok") );
00022 
00023     m_dialLine = new QLineEdit( this );
00024     m_dialLine->setReadOnly( true );
00025     m_dialLine->setFrame( false );
00026     m_dialLine->setAlignment( Qt::AlignLeft );
00027     QFont dialLine_font( m_dialLine->font() );
00028     dialLine_font.setBold( TRUE );
00029     dialLine_font.setPointSize( 18 );
00030     m_dialLine->setFont( dialLine_font );
00031 
00032     QWidget* dialWidget = new QWidget( this );
00033     QGridLayout *layout = new QGridLayout( dialWidget , 4, 3 );
00034 
00035     QButtonGroup *dialButtons = new QButtonGroup( );
00036 
00037     QPushButton *number0 = new QPushButton( dialWidget );
00038     number0->setText( QString( "0" ) );
00039     QFont number0_font( number0->font() );
00040     number0_font.setBold( TRUE );
00041     number0->setFont( number0_font );
00042     layout->addWidget( number0, 4, 1 );
00043     dialButtons->insert( number0 );
00044 
00045     int x = 0, y = 0;
00046     for ( int i = 0 ; i < 9;  i++ ) {
00047         QPushButton *number = new QPushButton( dialWidget );
00048         number->setText( QString( "%1" ).arg( i + 1 ) );
00049         QFont number_font( number->font() );
00050         number_font.setBold( TRUE );
00051         number->setFont( number_font );
00052 
00053         dialButtons->insert( number );
00054 
00055         layout->addWidget( number, x, y );
00056 
00057         if ( y < 2 ) {
00058             y++;
00059         } else {
00060             x++;
00061             y = 0;
00062         }
00063     }
00064 
00065     connect( dialButtons, SIGNAL( clicked(int) ), this, SLOT( slotEnterNumber(int) ) );
00066 
00067     mainLayout->addStretch( 2 );
00068     mainLayout->addWidget( textLabel );
00069     mainLayout->addStretch( 1 );
00070     mainLayout->addWidget( m_dialLine );
00071     mainLayout->addStretch( 2 );
00072     mainLayout->addWidget( dialWidget );
00073     mainLayout->addStretch( 4 );
00074 }
00075 
00076 
00077 void DialDialog::slotEnterNumber( int number ) {
00078 
00079     // pretty stupid, just for testing .-)
00080 
00081         m_number.append(QString("%1").arg(number));
00082 
00083         setNumber(m_number);
00084 }
00085 
00086 DialDialog::~DialDialog() {
00087 }
00088 
00089 QString DialDialog::number() {
00090     return m_number;
00091 
00092 }
00093 
00094 void DialDialog::setNumber( QString number )
00095 {
00096     m_dialLine->setText( QString("%1").arg( number ) );
00097 }
00098 

Generated on Sat Nov 5 16:16:49 2005 for OPIE by  doxygen 1.4.2