00001 #include <kdialog.h>
00002 #include <klocale.h>
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "implementationwidgetbase.h"
00013
00014 #include <qvariant.h>
00015 #include <qpushbutton.h>
00016 #include <qbuttongroup.h>
00017 #include <qradiobutton.h>
00018 #include <qheader.h>
00019 #include <klistview.h>
00020 #include <qlabel.h>
00021 #include <qlineedit.h>
00022 #include <qlayout.h>
00023 #include <qtooltip.h>
00024 #include <qwhatsthis.h>
00025
00026
00027
00028
00029
00030
00031
00032
00033 CreateImplemenationWidgetBase::CreateImplemenationWidgetBase( QWidget* parent, const char* name, bool modal, WFlags fl )
00034 : QDialog( parent, name, modal, fl )
00035 {
00036 if ( !name )
00037 setName( "CreateImplemenationWidgetBase" );
00038 CreateImplemenationWidgetBaseLayout = new QGridLayout( this, 1, 1, 11, 6, "CreateImplemenationWidgetBaseLayout");
00039
00040 layout4 = new QHBoxLayout( 0, 0, 6, "layout4");
00041 spacer4 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00042 layout4->addItem( spacer4 );
00043
00044 okButton = new QPushButton( this, "okButton" );
00045 okButton->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)0, 0, 0, okButton->sizePolicy().hasHeightForWidth() ) );
00046 okButton->setDefault( TRUE );
00047 layout4->addWidget( okButton );
00048
00049 cancelButton = new QPushButton( this, "cancelButton" );
00050 cancelButton->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)0, 0, 0, cancelButton->sizePolicy().hasHeightForWidth() ) );
00051 layout4->addWidget( cancelButton );
00052
00053 CreateImplemenationWidgetBaseLayout->addLayout( layout4, 1, 0 );
00054
00055 buttonGroup1 = new QButtonGroup( this, "buttonGroup1" );
00056 buttonGroup1->setColumnLayout(0, Qt::Vertical );
00057 buttonGroup1->layout()->setSpacing( 6 );
00058 buttonGroup1->layout()->setMargin( 11 );
00059 buttonGroup1Layout = new QGridLayout( buttonGroup1->layout() );
00060 buttonGroup1Layout->setAlignment( Qt::AlignTop );
00061
00062 createButton = new QRadioButton( buttonGroup1, "createButton" );
00063 createButton->setChecked( TRUE );
00064
00065 buttonGroup1Layout->addWidget( createButton, 0, 0 );
00066
00067 classView = new KListView( buttonGroup1, "classView" );
00068 classView->addColumn( tr2i18n( "Class Name" ) );
00069 classView->addColumn( tr2i18n( "File" ) );
00070 classView->setEnabled( FALSE );
00071
00072 buttonGroup1Layout->addWidget( classView, 4, 0 );
00073
00074 layout2 = new QVBoxLayout( 0, 0, 6, "layout2");
00075
00076 classNameLabel = new QLabel( buttonGroup1, "classNameLabel" );
00077 layout2->addWidget( classNameLabel );
00078
00079 classNameEdit = new QLineEdit( buttonGroup1, "classNameEdit" );
00080 layout2->addWidget( classNameEdit );
00081
00082 buttonGroup1Layout->addLayout( layout2, 1, 0 );
00083
00084 useButton = new QRadioButton( buttonGroup1, "useButton" );
00085
00086 buttonGroup1Layout->addWidget( useButton, 3, 0 );
00087
00088 layout2_2 = new QVBoxLayout( 0, 0, 6, "layout2_2");
00089
00090 fileNameLabel = new QLabel( buttonGroup1, "fileNameLabel" );
00091 layout2_2->addWidget( fileNameLabel );
00092
00093 fileNameEdit = new QLineEdit( buttonGroup1, "fileNameEdit" );
00094 layout2_2->addWidget( fileNameEdit );
00095
00096 buttonGroup1Layout->addLayout( layout2_2, 2, 0 );
00097
00098 CreateImplemenationWidgetBaseLayout->addWidget( buttonGroup1, 0, 0 );
00099 languageChange();
00100 resize( QSize(518, 353).expandedTo(minimumSizeHint()) );
00101 clearWState( WState_Polished );
00102
00103
00104 connect( cancelButton, SIGNAL( clicked() ), this, SLOT( reject() ) );
00105 connect( okButton, SIGNAL( clicked() ), this, SLOT( accept() ) );
00106 connect( createButton, SIGNAL( toggled(bool) ), classNameLabel, SLOT( setEnabled(bool) ) );
00107 connect( createButton, SIGNAL( toggled(bool) ), classNameEdit, SLOT( setEnabled(bool) ) );
00108 connect( useButton, SIGNAL( toggled(bool) ), classView, SLOT( setEnabled(bool) ) );
00109 connect( createButton, SIGNAL( toggled(bool) ), fileNameLabel, SLOT( setEnabled(bool) ) );
00110 connect( createButton, SIGNAL( toggled(bool) ), fileNameEdit, SLOT( setEnabled(bool) ) );
00111 connect( classNameEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( classNameChanged(const QString&) ) );
00112
00113
00114 setTabOrder( createButton, classNameEdit );
00115 setTabOrder( classNameEdit, fileNameEdit );
00116 setTabOrder( fileNameEdit, classView );
00117 setTabOrder( classView, okButton );
00118 setTabOrder( okButton, cancelButton );
00119
00120
00121 classNameLabel->setBuddy( classNameEdit );
00122 fileNameLabel->setBuddy( fileNameEdit );
00123 }
00124
00125
00126
00127
00128 CreateImplemenationWidgetBase::~CreateImplemenationWidgetBase()
00129 {
00130
00131 }
00132
00133
00134
00135
00136
00137 void CreateImplemenationWidgetBase::languageChange()
00138 {
00139 setCaption( tr2i18n( "Create or Select Implementation Class" ) );
00140 okButton->setText( tr2i18n( "&OK" ) );
00141 cancelButton->setText( tr2i18n( "&Cancel" ) );
00142 buttonGroup1->setTitle( QString::null );
00143 createButton->setText( tr2i18n( "Create &new class" ) );
00144 classView->header()->setLabel( 0, tr2i18n( "Class Name" ) );
00145 classView->header()->setLabel( 1, tr2i18n( "File" ) );
00146 classNameLabel->setText( tr2i18n( "C&lass name:" ) );
00147 useButton->setText( tr2i18n( "Use &existing class" ) );
00148 fileNameLabel->setText( tr2i18n( "&File name:" ) );
00149 }
00150
00151 void CreateImplemenationWidgetBase::classNameChanged(const QString&)
00152 {
00153 qWarning( "CreateImplemenationWidgetBase::classNameChanged(const QString&): Not implemented yet" );
00154 }
00155
00156 #include "implementationwidgetbase.moc"