00001 #include <kdialog.h>
00002 #include <klocale.h>
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "ruleswidgetbase.h"
00013
00014 #include <qvariant.h>
00015 #include <qpushbutton.h>
00016 #include <qtabwidget.h>
00017 #include <qlabel.h>
00018 #include <klineedit.h>
00019 #include <qcheckbox.h>
00020 #include <kcombobox.h>
00021 #include <kpushbutton.h>
00022 #include <qgroupbox.h>
00023 #include <klistbox.h>
00024 #include <krestrictedline.h>
00025 #include <qlayout.h>
00026 #include <qtooltip.h>
00027 #include <qwhatsthis.h>
00028
00029
00030
00031
00032
00033 KWinInternal::RulesWidgetBase::RulesWidgetBase( QWidget* parent, const char* name, WFlags fl )
00034 : QWidget( parent, name, fl )
00035 {
00036 if ( !name )
00037 setName( "Form2" );
00038 Form2Layout = new QHBoxLayout( this, KDialog::marginHint(), KDialog::spacingHint(), "Form2Layout");
00039
00040 tabs = new QTabWidget( this, "tabs" );
00041
00042 tab = new QWidget( tabs, "tab" );
00043 tabLayout = new QVBoxLayout( tab, KDialog::marginHint(), KDialog::spacingHint(), "tabLayout");
00044
00045 textLabel1 = new QLabel( tab, "textLabel1" );
00046 tabLayout->addWidget( textLabel1 );
00047
00048 description = new KLineEdit( tab, "description" );
00049 tabLayout->addWidget( description );
00050
00051 textLabel2 = new QLabel( tab, "textLabel2" );
00052 tabLayout->addWidget( textLabel2 );
00053
00054 layout3 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout3");
00055
00056 wmclass = new KLineEdit( tab, "wmclass" );
00057 layout3->addWidget( wmclass );
00058
00059 whole_wmclass = new QCheckBox( tab, "whole_wmclass" );
00060 layout3->addWidget( whole_wmclass );
00061 tabLayout->addLayout( layout3 );
00062
00063 layout22 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout22");
00064
00065 wmclass_match = new KComboBox( FALSE, tab, "wmclass_match" );
00066 layout22->addWidget( wmclass_match );
00067 spacer2 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00068 layout22->addItem( spacer2 );
00069
00070 edit_reg_wmclass = new KPushButton( tab, "edit_reg_wmclass" );
00071 edit_reg_wmclass->setEnabled( FALSE );
00072 layout22->addWidget( edit_reg_wmclass );
00073 spacer5 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00074 layout22->addItem( spacer5 );
00075 tabLayout->addLayout( layout22 );
00076
00077 textLabel3 = new QLabel( tab, "textLabel3" );
00078 tabLayout->addWidget( textLabel3 );
00079
00080 role = new KLineEdit( tab, "role" );
00081 tabLayout->addWidget( role );
00082
00083 layout23 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout23");
00084
00085 role_match = new KComboBox( FALSE, tab, "role_match" );
00086 layout23->addWidget( role_match );
00087 spacer1 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00088 layout23->addItem( spacer1 );
00089
00090 edit_reg_role = new KPushButton( tab, "edit_reg_role" );
00091 edit_reg_role->setEnabled( FALSE );
00092 layout23->addWidget( edit_reg_role );
00093 spacer4 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00094 layout23->addItem( spacer4 );
00095 tabLayout->addLayout( layout23 );
00096
00097 layout10 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout10");
00098
00099 groupBox1 = new QGroupBox( tab, "groupBox1" );
00100 groupBox1->setColumnLayout(0, Qt::Vertical );
00101 groupBox1->layout()->setSpacing( KDialog::spacingHint() );
00102 groupBox1->layout()->setMargin( KDialog::marginHint() );
00103 groupBox1Layout = new QVBoxLayout( groupBox1->layout() );
00104 groupBox1Layout->setAlignment( Qt::AlignTop );
00105
00106 layout9 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout9");
00107 spacer27 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00108 layout9->addItem( spacer27 );
00109
00110 detect1 = new KPushButton( groupBox1, "detect1" );
00111 layout9->addWidget( detect1 );
00112 spacer28 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00113 layout9->addItem( spacer28 );
00114 groupBox1Layout->addLayout( layout9 );
00115 layout10->addWidget( groupBox1 );
00116 tabLayout->addLayout( layout10 );
00117 spacer29 = new QSpacerItem( 20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding );
00118 tabLayout->addItem( spacer29 );
00119 tabs->insertTab( tab, QString("") );
00120
00121 tab_2 = new QWidget( tabs, "tab_2" );
00122 tabLayout_2 = new QVBoxLayout( tab_2, KDialog::marginHint(), KDialog::spacingHint(), "tabLayout_2");
00123
00124 textLabel4 = new QLabel( tab_2, "textLabel4" );
00125 tabLayout_2->addWidget( textLabel4 );
00126
00127 types = new KListBox( tab_2, "types" );
00128 types->setSelectionMode( KListBox::Multi );
00129 tabLayout_2->addWidget( types );
00130
00131 textLabel5 = new QLabel( tab_2, "textLabel5" );
00132 tabLayout_2->addWidget( textLabel5 );
00133
00134 title = new KLineEdit( tab_2, "title" );
00135 tabLayout_2->addWidget( title );
00136
00137 layout24 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout24");
00138
00139 title_match = new KComboBox( FALSE, tab_2, "title_match" );
00140 layout24->addWidget( title_match );
00141 spacer2_2 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00142 layout24->addItem( spacer2_2 );
00143
00144 edit_reg_title = new KPushButton( tab_2, "edit_reg_title" );
00145 edit_reg_title->setEnabled( FALSE );
00146 layout24->addWidget( edit_reg_title );
00147 spacer5_2 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00148 layout24->addItem( spacer5_2 );
00149 tabLayout_2->addLayout( layout24 );
00150
00151 textLabel6 = new QLabel( tab_2, "textLabel6" );
00152 tabLayout_2->addWidget( textLabel6 );
00153
00154 extra = new KLineEdit( tab_2, "extra" );
00155 tabLayout_2->addWidget( extra );
00156
00157 layout25 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout25");
00158
00159 extra_match = new KComboBox( FALSE, tab_2, "extra_match" );
00160 layout25->addWidget( extra_match );
00161 spacer2_2_2 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00162 layout25->addItem( spacer2_2_2 );
00163
00164 edit_reg_extra = new KPushButton( tab_2, "edit_reg_extra" );
00165 edit_reg_extra->setEnabled( FALSE );
00166 layout25->addWidget( edit_reg_extra );
00167 spacer5_2_2 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00168 layout25->addItem( spacer5_2_2 );
00169 tabLayout_2->addLayout( layout25 );
00170
00171 textLabel7 = new QLabel( tab_2, "textLabel7" );
00172 tabLayout_2->addWidget( textLabel7 );
00173
00174 machine = new KLineEdit( tab_2, "machine" );
00175 tabLayout_2->addWidget( machine );
00176
00177 layout26 = new QHBoxLayout( 0, 0, KDialog::spacingHint(), "layout26");
00178
00179 machine_match = new KComboBox( FALSE, tab_2, "machine_match" );
00180 layout26->addWidget( machine_match );
00181 spacer2_2_3 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00182 layout26->addItem( spacer2_2_3 );
00183
00184 edit_reg_machine = new KPushButton( tab_2, "edit_reg_machine" );
00185 edit_reg_machine->setEnabled( FALSE );
00186 layout26->addWidget( edit_reg_machine );
00187 spacer5_2_3 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00188 layout26->addItem( spacer5_2_3 );
00189 tabLayout_2->addLayout( layout26 );
00190 tabs->insertTab( tab_2, QString("") );
00191
00192 TabPage = new QWidget( tabs, "TabPage" );
00193 TabPageLayout = new QGridLayout( TabPage, 1, 1, KDialog::marginHint(), KDialog::spacingHint(), "TabPageLayout");
00194
00195 rule_size = new KComboBox( FALSE, TabPage, "rule_size" );
00196 rule_size->setEnabled( FALSE );
00197
00198 TabPageLayout->addWidget( rule_size, 1, 1 );
00199
00200 size = new KRestrictedLine( TabPage, "size" );
00201 size->setEnabled( FALSE );
00202
00203 TabPageLayout->addWidget( size, 1, 3 );
00204
00205 enable_size = new QCheckBox( TabPage, "enable_size" );
00206
00207 TabPageLayout->addWidget( enable_size, 1, 0 );
00208
00209 enable_position = new QCheckBox( TabPage, "enable_position" );
00210
00211 TabPageLayout->addWidget( enable_position, 0, 0 );
00212
00213 position = new KRestrictedLine( TabPage, "position" );
00214 position->setEnabled( FALSE );
00215
00216 TabPageLayout->addWidget( position, 0, 3 );
00217
00218 rule_position = new KComboBox( FALSE, TabPage, "rule_position" );
00219 rule_position->setEnabled( FALSE );
00220
00221 TabPageLayout->addWidget( rule_position, 0, 1 );
00222 spacer31 = new QSpacerItem( 20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding );
00223 TabPageLayout->addItem( spacer31, 9, 2 );
00224
00225 maximizevert = new QCheckBox( TabPage, "maximizevert" );
00226 maximizevert->setEnabled( FALSE );
00227
00228 TabPageLayout->addWidget( maximizevert, 3, 3 );
00229
00230 rule_maximizehoriz = new KComboBox( FALSE, TabPage, "rule_maximizehoriz" );
00231 rule_maximizehoriz->setEnabled( FALSE );
00232
00233 TabPageLayout->addWidget( rule_maximizehoriz, 2, 1 );
00234
00235 fullscreen = new QCheckBox( TabPage, "fullscreen" );
00236 fullscreen->setEnabled( FALSE );
00237
00238 TabPageLayout->addWidget( fullscreen, 4, 3 );
00239
00240 enable_maximizehoriz = new QCheckBox( TabPage, "enable_maximizehoriz" );
00241
00242 TabPageLayout->addWidget( enable_maximizehoriz, 2, 0 );
00243
00244 maximizehoriz = new QCheckBox( TabPage, "maximizehoriz" );
00245 maximizehoriz->setEnabled( FALSE );
00246
00247 TabPageLayout->addWidget( maximizehoriz, 2, 3 );
00248
00249 rule_fullscreen = new KComboBox( FALSE, TabPage, "rule_fullscreen" );
00250 rule_fullscreen->setEnabled( FALSE );
00251
00252 TabPageLayout->addWidget( rule_fullscreen, 4, 1 );
00253
00254 enable_fullscreen = new QCheckBox( TabPage, "enable_fullscreen" );
00255
00256 TabPageLayout->addWidget( enable_fullscreen, 4, 0 );
00257
00258 rule_maximizevert = new KComboBox( FALSE, TabPage, "rule_maximizevert" );
00259 rule_maximizevert->setEnabled( FALSE );
00260
00261 TabPageLayout->addWidget( rule_maximizevert, 3, 1 );
00262
00263 enable_maximizevert = new QCheckBox( TabPage, "enable_maximizevert" );
00264
00265 TabPageLayout->addWidget( enable_maximizevert, 3, 0 );
00266
00267 rule_desktop = new KComboBox( FALSE, TabPage, "rule_desktop" );
00268 rule_desktop->setEnabled( FALSE );
00269
00270 TabPageLayout->addWidget( rule_desktop, 5, 1 );
00271
00272 desktop = new KComboBox( FALSE, TabPage, "desktop" );
00273 desktop->setEnabled( FALSE );
00274
00275 TabPageLayout->addWidget( desktop, 5, 3 );
00276
00277 enable_desktop = new QCheckBox( TabPage, "enable_desktop" );
00278
00279 TabPageLayout->addWidget( enable_desktop, 5, 0 );
00280
00281 enable_shade = new QCheckBox( TabPage, "enable_shade" );
00282
00283 TabPageLayout->addWidget( enable_shade, 7, 0 );
00284
00285 rule_shade = new KComboBox( FALSE, TabPage, "rule_shade" );
00286 rule_shade->setEnabled( FALSE );
00287
00288 TabPageLayout->addWidget( rule_shade, 7, 1 );
00289
00290 shade = new QCheckBox( TabPage, "shade" );
00291 shade->setEnabled( FALSE );
00292
00293 TabPageLayout->addWidget( shade, 7, 3 );
00294
00295 rule_minimize = new KComboBox( FALSE, TabPage, "rule_minimize" );
00296 rule_minimize->setEnabled( FALSE );
00297
00298 TabPageLayout->addWidget( rule_minimize, 6, 1 );
00299
00300 minimize = new QCheckBox( TabPage, "minimize" );
00301 minimize->setEnabled( FALSE );
00302
00303 TabPageLayout->addWidget( minimize, 6, 3 );
00304
00305 enable_minimize = new QCheckBox( TabPage, "enable_minimize" );
00306
00307 TabPageLayout->addWidget( enable_minimize, 6, 0 );
00308
00309 rule_placement = new KComboBox( FALSE, TabPage, "rule_placement" );
00310 rule_placement->setEnabled( FALSE );
00311
00312 TabPageLayout->addWidget( rule_placement, 8, 1 );
00313
00314 placement = new KComboBox( FALSE, TabPage, "placement" );
00315 placement->setEnabled( FALSE );
00316
00317 TabPageLayout->addWidget( placement, 8, 3 );
00318
00319 enable_placement = new QCheckBox( TabPage, "enable_placement" );
00320
00321 TabPageLayout->addWidget( enable_placement, 8, 0 );
00322 tabs->insertTab( TabPage, QString("") );
00323
00324 TabPage_2 = new QWidget( tabs, "TabPage_2" );
00325 TabPageLayout_2 = new QGridLayout( TabPage_2, 1, 1, KDialog::marginHint(), KDialog::spacingHint(), "TabPageLayout_2");
00326
00327 below = new QCheckBox( TabPage_2, "below" );
00328 below->setEnabled( FALSE );
00329
00330 TabPageLayout_2->addWidget( below, 1, 4 );
00331 spacer33 = new QSpacerItem( 20, 70, QSizePolicy::Minimum, QSizePolicy::Expanding );
00332 TabPageLayout_2->addItem( spacer33, 7, 3 );
00333
00334 enable_above = new QCheckBox( TabPage_2, "enable_above" );
00335
00336 TabPageLayout_2->addWidget( enable_above, 0, 0 );
00337
00338 enable_below = new QCheckBox( TabPage_2, "enable_below" );
00339
00340 TabPageLayout_2->addWidget( enable_below, 1, 0 );
00341
00342 enable_skippager = new QCheckBox( TabPage_2, "enable_skippager" );
00343
00344 TabPageLayout_2->addWidget( enable_skippager, 4, 0 );
00345
00346 enable_skiptaskbar = new QCheckBox( TabPage_2, "enable_skiptaskbar" );
00347
00348 TabPageLayout_2->addWidget( enable_skiptaskbar, 3, 0 );
00349
00350 enable_noborder = new QCheckBox( TabPage_2, "enable_noborder" );
00351
00352 TabPageLayout_2->addWidget( enable_noborder, 2, 0 );
00353
00354 enable_acceptfocus = new QCheckBox( TabPage_2, "enable_acceptfocus" );
00355
00356 TabPageLayout_2->addWidget( enable_acceptfocus, 5, 0 );
00357
00358 enable_closeable = new QCheckBox( TabPage_2, "enable_closeable" );
00359
00360 TabPageLayout_2->addWidget( enable_closeable, 6, 0 );
00361
00362 rule_closeable = new KComboBox( FALSE, TabPage_2, "rule_closeable" );
00363 rule_closeable->setEnabled( FALSE );
00364
00365 TabPageLayout_2->addWidget( rule_closeable, 6, 1 );
00366
00367 rule_acceptfocus = new KComboBox( FALSE, TabPage_2, "rule_acceptfocus" );
00368 rule_acceptfocus->setEnabled( FALSE );
00369
00370 TabPageLayout_2->addWidget( rule_acceptfocus, 5, 1 );
00371
00372 rule_skippager = new KComboBox( FALSE, TabPage_2, "rule_skippager" );
00373 rule_skippager->setEnabled( FALSE );
00374
00375 TabPageLayout_2->addWidget( rule_skippager, 4, 1 );
00376
00377 rule_skiptaskbar = new KComboBox( FALSE, TabPage_2, "rule_skiptaskbar" );
00378 rule_skiptaskbar->setEnabled( FALSE );
00379
00380 TabPageLayout_2->addWidget( rule_skiptaskbar, 3, 1 );
00381
00382 rule_noborder = new KComboBox( FALSE, TabPage_2, "rule_noborder" );
00383 rule_noborder->setEnabled( FALSE );
00384
00385 TabPageLayout_2->addWidget( rule_noborder, 2, 1 );
00386
00387 rule_below = new KComboBox( FALSE, TabPage_2, "rule_below" );
00388 rule_below->setEnabled( FALSE );
00389
00390 TabPageLayout_2->addWidget( rule_below, 1, 1 );
00391
00392 rule_above = new KComboBox( FALSE, TabPage_2, "rule_above" );
00393 rule_above->setEnabled( FALSE );
00394
00395 TabPageLayout_2->addWidget( rule_above, 0, 1 );
00396 spacer36 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00397 TabPageLayout_2->addItem( spacer36, 0, 5 );
00398 spacer36_2 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00399 TabPageLayout_2->addItem( spacer36_2, 1, 5 );
00400 spacer36_3 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00401 TabPageLayout_2->addItem( spacer36_3, 2, 5 );
00402 spacer36_4 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00403 TabPageLayout_2->addItem( spacer36_4, 3, 5 );
00404 spacer36_5 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00405 TabPageLayout_2->addItem( spacer36_5, 4, 5 );
00406 spacer36_6 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00407 TabPageLayout_2->addItem( spacer36_6, 5, 5 );
00408 spacer36_7 = new QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00409 TabPageLayout_2->addItem( spacer36_7, 6, 5 );
00410
00411 above = new QCheckBox( TabPage_2, "above" );
00412 above->setEnabled( FALSE );
00413
00414 TabPageLayout_2->addWidget( above, 0, 4 );
00415
00416 noborder = new QCheckBox( TabPage_2, "noborder" );
00417 noborder->setEnabled( FALSE );
00418
00419 TabPageLayout_2->addWidget( noborder, 2, 4 );
00420
00421 skiptaskbar = new QCheckBox( TabPage_2, "skiptaskbar" );
00422 skiptaskbar->setEnabled( FALSE );
00423
00424 TabPageLayout_2->addWidget( skiptaskbar, 3, 4 );
00425
00426 skippager = new QCheckBox( TabPage_2, "skippager" );
00427 skippager->setEnabled( FALSE );
00428
00429 TabPageLayout_2->addWidget( skippager, 4, 4 );
00430
00431 closeable = new QCheckBox( TabPage_2, "closeable" );
00432 closeable->setEnabled( FALSE );
00433
00434 TabPageLayout_2->addWidget( closeable, 6, 4 );
00435
00436 acceptfocus = new QCheckBox( TabPage_2, "acceptfocus" );
00437 acceptfocus->setEnabled( FALSE );
00438
00439 TabPageLayout_2->addWidget( acceptfocus, 5, 4 );
00440 tabs->insertTab( TabPage_2, QString("") );
00441
00442 TabPage_3 = new QWidget( tabs, "TabPage_3" );
00443 TabPageLayout_3 = new QGridLayout( TabPage_3, 1, 1, KDialog::marginHint(), KDialog::spacingHint(), "TabPageLayout_3");
00444
00445 enable_fsplevel = new QCheckBox( TabPage_3, "enable_fsplevel" );
00446
00447 TabPageLayout_3->addWidget( enable_fsplevel, 0, 0 );
00448
00449 rule_type = new KComboBox( FALSE, TabPage_3, "rule_type" );
00450 rule_type->setEnabled( FALSE );
00451
00452 TabPageLayout_3->addWidget( rule_type, 2, 1 );
00453
00454 type = new KComboBox( FALSE, TabPage_3, "type" );
00455 type->setEnabled( FALSE );
00456
00457 TabPageLayout_3->addWidget( type, 2, 3 );
00458
00459 moveresizemode = new KComboBox( FALSE, TabPage_3, "moveresizemode" );
00460 moveresizemode->setEnabled( FALSE );
00461
00462 TabPageLayout_3->addWidget( moveresizemode, 1, 3 );
00463
00464 enable_type = new QCheckBox( TabPage_3, "enable_type" );
00465
00466 TabPageLayout_3->addWidget( enable_type, 2, 0 );
00467
00468 enable_moveresizemode = new QCheckBox( TabPage_3, "enable_moveresizemode" );
00469
00470 TabPageLayout_3->addWidget( enable_moveresizemode, 1, 0 );
00471
00472 rule_fsplevel = new KComboBox( FALSE, TabPage_3, "rule_fsplevel" );
00473 rule_fsplevel->setEnabled( FALSE );
00474
00475 TabPageLayout_3->addWidget( rule_fsplevel, 0, 1 );
00476
00477 rule_moveresizemode = new KComboBox( FALSE, TabPage_3, "rule_moveresizemode" );
00478 rule_moveresizemode->setEnabled( FALSE );
00479
00480 TabPageLayout_3->addWidget( rule_moveresizemode, 1, 1 );
00481
00482 fsplevel = new KComboBox( FALSE, TabPage_3, "fsplevel" );
00483 fsplevel->setEnabled( FALSE );
00484
00485 TabPageLayout_3->addWidget( fsplevel, 0, 3 );
00486
00487 maxsize = new KRestrictedLine( TabPage_3, "maxsize" );
00488 maxsize->setEnabled( FALSE );
00489
00490 TabPageLayout_3->addWidget( maxsize, 5, 3 );
00491
00492 ignoreposition = new QCheckBox( TabPage_3, "ignoreposition" );
00493 ignoreposition->setEnabled( FALSE );
00494
00495 TabPageLayout_3->addWidget( ignoreposition, 3, 3 );
00496
00497 enable_ignoreposition = new QCheckBox( TabPage_3, "enable_ignoreposition" );
00498
00499 TabPageLayout_3->addWidget( enable_ignoreposition, 3, 0 );
00500
00501 rule_ignoreposition = new KComboBox( FALSE, TabPage_3, "rule_ignoreposition" );
00502 rule_ignoreposition->setEnabled( FALSE );
00503
00504 TabPageLayout_3->addWidget( rule_ignoreposition, 3, 1 );
00505
00506 enable_minsize = new QCheckBox( TabPage_3, "enable_minsize" );
00507
00508 TabPageLayout_3->addWidget( enable_minsize, 4, 0 );
00509
00510 rule_minsize = new KComboBox( FALSE, TabPage_3, "rule_minsize" );
00511 rule_minsize->setEnabled( FALSE );
00512
00513 TabPageLayout_3->addWidget( rule_minsize, 4, 1 );
00514
00515 enable_maxsize = new QCheckBox( TabPage_3, "enable_maxsize" );
00516
00517 TabPageLayout_3->addWidget( enable_maxsize, 5, 0 );
00518
00519 minsize = new KRestrictedLine( TabPage_3, "minsize" );
00520 minsize->setEnabled( FALSE );
00521
00522 TabPageLayout_3->addWidget( minsize, 4, 3 );
00523
00524 rule_maxsize = new KComboBox( FALSE, TabPage_3, "rule_maxsize" );
00525 rule_maxsize->setEnabled( FALSE );
00526
00527 TabPageLayout_3->addWidget( rule_maxsize, 5, 1 );
00528 spacer35 = new QSpacerItem( 20, 250, QSizePolicy::Minimum, QSizePolicy::Expanding );
00529 TabPageLayout_3->addItem( spacer35, 6, 2 );
00530 tabs->insertTab( TabPage_3, QString("") );
00531 Form2Layout->addWidget( tabs );
00532 languageChange();
00533 resize( QSize(700, 500).expandedTo(minimumSizeHint()) );
00534 clearWState( WState_Polished );
00535
00536
00537 connect( detect1, SIGNAL( clicked() ), this, SLOT( detectClicked() ) );
00538 connect( wmclass_match, SIGNAL( activated(int) ), this, SLOT( wmclassMatchChanged() ) );
00539 connect( role_match, SIGNAL( activated(int) ), this, SLOT( roleMatchChanged() ) );
00540 connect( title_match, SIGNAL( activated(int) ), this, SLOT( titleMatchChanged() ) );
00541 connect( extra_match, SIGNAL( activated(int) ), this, SLOT( extraMatchChanged() ) );
00542 connect( machine_match, SIGNAL( activated(int) ), this, SLOT( machineMatchChanged() ) );
00543
00544
00545 setTabOrder( tabs, description );
00546 setTabOrder( description, wmclass );
00547 setTabOrder( wmclass, whole_wmclass );
00548 setTabOrder( whole_wmclass, wmclass_match );
00549 setTabOrder( wmclass_match, edit_reg_wmclass );
00550 setTabOrder( edit_reg_wmclass, role );
00551 setTabOrder( role, role_match );
00552 setTabOrder( role_match, edit_reg_role );
00553 setTabOrder( edit_reg_role, detect1 );
00554 setTabOrder( detect1, types );
00555 setTabOrder( types, title );
00556 setTabOrder( title, title_match );
00557 setTabOrder( title_match, edit_reg_title );
00558 setTabOrder( edit_reg_title, extra );
00559 setTabOrder( extra, extra_match );
00560 setTabOrder( extra_match, edit_reg_extra );
00561 setTabOrder( edit_reg_extra, machine );
00562 setTabOrder( machine, machine_match );
00563 setTabOrder( machine_match, edit_reg_machine );
00564 setTabOrder( edit_reg_machine, enable_position );
00565 setTabOrder( enable_position, rule_position );
00566 setTabOrder( rule_position, position );
00567 setTabOrder( position, enable_size );
00568 setTabOrder( enable_size, rule_size );
00569 setTabOrder( rule_size, size );
00570 setTabOrder( size, enable_maximizehoriz );
00571 setTabOrder( enable_maximizehoriz, rule_maximizehoriz );
00572 setTabOrder( rule_maximizehoriz, maximizehoriz );
00573 setTabOrder( maximizehoriz, enable_maximizevert );
00574 setTabOrder( enable_maximizevert, rule_maximizevert );
00575 setTabOrder( rule_maximizevert, maximizevert );
00576 setTabOrder( maximizevert, enable_fullscreen );
00577 setTabOrder( enable_fullscreen, rule_fullscreen );
00578 setTabOrder( rule_fullscreen, fullscreen );
00579 setTabOrder( fullscreen, enable_desktop );
00580 setTabOrder( enable_desktop, rule_desktop );
00581 setTabOrder( rule_desktop, desktop );
00582 setTabOrder( desktop, enable_minimize );
00583 setTabOrder( enable_minimize, rule_minimize );
00584 setTabOrder( rule_minimize, minimize );
00585 setTabOrder( minimize, enable_shade );
00586 setTabOrder( enable_shade, rule_shade );
00587 setTabOrder( rule_shade, shade );
00588 setTabOrder( shade, enable_placement );
00589 setTabOrder( enable_placement, rule_placement );
00590 setTabOrder( rule_placement, placement );
00591 setTabOrder( placement, enable_above );
00592 setTabOrder( enable_above, rule_above );
00593 setTabOrder( rule_above, above );
00594 setTabOrder( above, enable_below );
00595 setTabOrder( enable_below, rule_below );
00596 setTabOrder( rule_below, below );
00597 setTabOrder( below, enable_noborder );
00598 setTabOrder( enable_noborder, rule_noborder );
00599 setTabOrder( rule_noborder, noborder );
00600 setTabOrder( noborder, enable_skiptaskbar );
00601 setTabOrder( enable_skiptaskbar, rule_skiptaskbar );
00602 setTabOrder( rule_skiptaskbar, skiptaskbar );
00603 setTabOrder( skiptaskbar, enable_skippager );
00604 setTabOrder( enable_skippager, rule_skippager );
00605 setTabOrder( rule_skippager, skippager );
00606 setTabOrder( skippager, enable_acceptfocus );
00607 setTabOrder( enable_acceptfocus, rule_acceptfocus );
00608 setTabOrder( rule_acceptfocus, acceptfocus );
00609 setTabOrder( acceptfocus, enable_closeable );
00610 setTabOrder( enable_closeable, rule_closeable );
00611 setTabOrder( rule_closeable, closeable );
00612 setTabOrder( closeable, enable_fsplevel );
00613 setTabOrder( enable_fsplevel, rule_fsplevel );
00614 setTabOrder( rule_fsplevel, fsplevel );
00615 setTabOrder( fsplevel, enable_moveresizemode );
00616 setTabOrder( enable_moveresizemode, rule_moveresizemode );
00617 setTabOrder( rule_moveresizemode, moveresizemode );
00618 setTabOrder( moveresizemode, enable_type );
00619 setTabOrder( enable_type, rule_type );
00620 setTabOrder( rule_type, type );
00621 setTabOrder( type, enable_ignoreposition );
00622 setTabOrder( enable_ignoreposition, rule_ignoreposition );
00623 setTabOrder( rule_ignoreposition, ignoreposition );
00624 setTabOrder( ignoreposition, enable_minsize );
00625 setTabOrder( enable_minsize, rule_minsize );
00626 setTabOrder( rule_minsize, minsize );
00627 setTabOrder( minsize, enable_maxsize );
00628 setTabOrder( enable_maxsize, rule_maxsize );
00629 setTabOrder( rule_maxsize, maxsize );
00630
00631
00632 textLabel1->setBuddy( description );
00633 textLabel2->setBuddy( wmclass );
00634 textLabel3->setBuddy( role );
00635 textLabel4->setBuddy( types );
00636 textLabel5->setBuddy( title );
00637 textLabel6->setBuddy( extra );
00638 textLabel7->setBuddy( machine );
00639 }
00640
00641
00642
00643
00644 KWinInternal::RulesWidgetBase::~RulesWidgetBase()
00645 {
00646
00647 }
00648
00649
00650
00651
00652
00653 void KWinInternal::RulesWidgetBase::languageChange()
00654 {
00655 textLabel1->setText( tr2i18n( "De&scription:" ) );
00656 textLabel2->setText( tr2i18n( "Window &class (application type):" ) );
00657 whole_wmclass->setText( tr2i18n( "Match w&hole window class" ) );
00658 wmclass_match->clear();
00659 wmclass_match->insertItem( tr2i18n( "Unimportant" ) );
00660 wmclass_match->insertItem( tr2i18n( "Exact Match" ) );
00661 wmclass_match->insertItem( tr2i18n( "Substring Match" ) );
00662 wmclass_match->insertItem( tr2i18n( "Regular Expression" ) );
00663 edit_reg_wmclass->setText( tr2i18n( "Edit" ) );
00664 edit_reg_wmclass->setAccel( QKeySequence( QString::null ) );
00665 textLabel3->setText( tr2i18n( "Window &role:" ) );
00666 role_match->clear();
00667 role_match->insertItem( tr2i18n( "Unimportant" ) );
00668 role_match->insertItem( tr2i18n( "Exact Match" ) );
00669 role_match->insertItem( tr2i18n( "Substring Match" ) );
00670 role_match->insertItem( tr2i18n( "Regular Expression" ) );
00671 edit_reg_role->setText( tr2i18n( "Edit" ) );
00672 groupBox1->setTitle( tr2i18n( "Detect Window Properties" ) );
00673 detect1->setText( tr2i18n( "&Detect" ) );
00674 tabs->changeTab( tab, tr2i18n( "&Window" ) );
00675 textLabel4->setText( tr2i18n( "Window &types:" ) );
00676 types->clear();
00677 types->insertItem( tr2i18n( "Normal Window" ) );
00678 types->insertItem( tr2i18n( "Dialog Window" ) );
00679 types->insertItem( tr2i18n( "Utility Window" ) );
00680 types->insertItem( tr2i18n( "Dock (panel)" ) );
00681 types->insertItem( tr2i18n( "Toolbar" ) );
00682 types->insertItem( tr2i18n( "Torn-Off Menu" ) );
00683 types->insertItem( tr2i18n( "Splash Screen" ) );
00684 types->insertItem( tr2i18n( "Desktop" ) );
00685 types->insertItem( tr2i18n( "Override Type" ) );
00686 types->insertItem( tr2i18n( "Standalone Menubar" ) );
00687 textLabel5->setText( tr2i18n( "Window t&itle:" ) );
00688 title_match->clear();
00689 title_match->insertItem( tr2i18n( "Unimportant" ) );
00690 title_match->insertItem( tr2i18n( "Exact Match" ) );
00691 title_match->insertItem( tr2i18n( "Substring Match" ) );
00692 title_match->insertItem( tr2i18n( "Regular Expression" ) );
00693 edit_reg_title->setText( tr2i18n( "Edit" ) );
00694 edit_reg_title->setAccel( QKeySequence( QString::null ) );
00695 textLabel6->setText( tr2i18n( "Extra role:" ) );
00696 extra_match->clear();
00697 extra_match->insertItem( tr2i18n( "Unimportant" ) );
00698 extra_match->insertItem( tr2i18n( "Exact Match" ) );
00699 extra_match->insertItem( tr2i18n( "Substring Match" ) );
00700 extra_match->insertItem( tr2i18n( "Regular Expression" ) );
00701 edit_reg_extra->setText( tr2i18n( "Edit" ) );
00702 edit_reg_extra->setAccel( QKeySequence( QString::null ) );
00703 textLabel7->setText( tr2i18n( "&Machine (hostname):" ) );
00704 machine_match->clear();
00705 machine_match->insertItem( tr2i18n( "Unimportant" ) );
00706 machine_match->insertItem( tr2i18n( "Exact Match" ) );
00707 machine_match->insertItem( tr2i18n( "Substring Match" ) );
00708 machine_match->insertItem( tr2i18n( "Regular Expression" ) );
00709 edit_reg_machine->setText( tr2i18n( "Edit" ) );
00710 edit_reg_machine->setAccel( QKeySequence( QString::null ) );
00711 tabs->changeTab( tab_2, tr2i18n( "Window &Extra" ) );
00712 rule_size->clear();
00713 rule_size->insertItem( tr2i18n( "Do Not Affect" ) );
00714 rule_size->insertItem( tr2i18n( "Apply Initially" ) );
00715 rule_size->insertItem( tr2i18n( "Remember" ) );
00716 rule_size->insertItem( tr2i18n( "Force" ) );
00717 size->setValidChars( tr2i18n( "0123456789-+,xX:" ) );
00718 enable_size->setText( tr2i18n( "&Size" ) );
00719 enable_position->setText( tr2i18n( "&Position" ) );
00720 position->setValidChars( tr2i18n( "0123456789-+,xX:" ) );
00721 rule_position->clear();
00722 rule_position->insertItem( tr2i18n( "Do Not Affect" ) );
00723 rule_position->insertItem( tr2i18n( "Apply Initially" ) );
00724 rule_position->insertItem( tr2i18n( "Remember" ) );
00725 rule_position->insertItem( tr2i18n( "Force" ) );
00726 maximizevert->setText( QString::null );
00727 rule_maximizehoriz->clear();
00728 rule_maximizehoriz->insertItem( tr2i18n( "Do Not Affect" ) );
00729 rule_maximizehoriz->insertItem( tr2i18n( "Apply Initially" ) );
00730 rule_maximizehoriz->insertItem( tr2i18n( "Remember" ) );
00731 rule_maximizehoriz->insertItem( tr2i18n( "Force" ) );
00732 fullscreen->setText( QString::null );
00733 enable_maximizehoriz->setText( tr2i18n( "Maximized &horizontally" ) );
00734 maximizehoriz->setText( QString::null );
00735 rule_fullscreen->clear();
00736 rule_fullscreen->insertItem( tr2i18n( "Do Not Affect" ) );
00737 rule_fullscreen->insertItem( tr2i18n( "Apply Initially" ) );
00738 rule_fullscreen->insertItem( tr2i18n( "Remember" ) );
00739 rule_fullscreen->insertItem( tr2i18n( "Force" ) );
00740 enable_fullscreen->setText( tr2i18n( "&Fullscreen" ) );
00741 rule_maximizevert->clear();
00742 rule_maximizevert->insertItem( tr2i18n( "Do Not Affect" ) );
00743 rule_maximizevert->insertItem( tr2i18n( "Apply Initially" ) );
00744 rule_maximizevert->insertItem( tr2i18n( "Remember" ) );
00745 rule_maximizevert->insertItem( tr2i18n( "Force" ) );
00746 enable_maximizevert->setText( tr2i18n( "Maximized &vertically" ) );
00747 rule_desktop->clear();
00748 rule_desktop->insertItem( tr2i18n( "Do Not Affect" ) );
00749 rule_desktop->insertItem( tr2i18n( "Apply Initially" ) );
00750 rule_desktop->insertItem( tr2i18n( "Remember" ) );
00751 rule_desktop->insertItem( tr2i18n( "Force" ) );
00752 enable_desktop->setText( tr2i18n( "&Desktop" ) );
00753 enable_shade->setText( tr2i18n( "Sh&aded" ) );
00754 rule_shade->clear();
00755 rule_shade->insertItem( tr2i18n( "Do Not Affect" ) );
00756 rule_shade->insertItem( tr2i18n( "Apply Initially" ) );
00757 rule_shade->insertItem( tr2i18n( "Remember" ) );
00758 rule_shade->insertItem( tr2i18n( "Force" ) );
00759 shade->setText( QString::null );
00760 rule_minimize->clear();
00761 rule_minimize->insertItem( tr2i18n( "Do Not Affect" ) );
00762 rule_minimize->insertItem( tr2i18n( "Apply Initially" ) );
00763 rule_minimize->insertItem( tr2i18n( "Remember" ) );
00764 rule_minimize->insertItem( tr2i18n( "Force" ) );
00765 minimize->setText( QString::null );
00766 enable_minimize->setText( tr2i18n( "M&inimized" ) );
00767 rule_placement->clear();
00768 rule_placement->insertItem( tr2i18n( "Do Not Affect" ) );
00769 rule_placement->insertItem( tr2i18n( "Force" ) );
00770 placement->clear();
00771 placement->insertItem( tr2i18n( "Default" ) );
00772 placement->insertItem( tr2i18n( "No Placement" ) );
00773 placement->insertItem( tr2i18n( "Smart" ) );
00774 placement->insertItem( tr2i18n( "Cascade" ) );
00775 placement->insertItem( tr2i18n( "Centered" ) );
00776 placement->insertItem( tr2i18n( "Random" ) );
00777 placement->insertItem( tr2i18n( "Top-Left Corner" ) );
00778 placement->insertItem( tr2i18n( "Under Mouse" ) );
00779 placement->insertItem( tr2i18n( "On Main Window" ) );
00780 enable_placement->setText( tr2i18n( "P&lacement" ) );
00781 tabs->changeTab( TabPage, tr2i18n( "&Geometry" ) );
00782 below->setText( QString::null );
00783 enable_above->setText( tr2i18n( "Keep &above" ) );
00784 enable_below->setText( tr2i18n( "Keep &below" ) );
00785 enable_skippager->setText( tr2i18n( "Skip pa&ger" ) );
00786 enable_skiptaskbar->setText( tr2i18n( "Skip &taskbar" ) );
00787 enable_noborder->setText( tr2i18n( "&No border" ) );
00788 enable_acceptfocus->setText( tr2i18n( "Accept &focus" ) );
00789 enable_closeable->setText( tr2i18n( "&Closeable" ) );
00790 rule_closeable->clear();
00791 rule_closeable->insertItem( tr2i18n( "Do Not Affect" ) );
00792 rule_closeable->insertItem( tr2i18n( "Force" ) );
00793 rule_acceptfocus->clear();
00794 rule_acceptfocus->insertItem( tr2i18n( "Do Not Affect" ) );
00795 rule_acceptfocus->insertItem( tr2i18n( "Force" ) );
00796 rule_skippager->clear();
00797 rule_skippager->insertItem( tr2i18n( "Do Not Affect" ) );
00798 rule_skippager->insertItem( tr2i18n( "Apply Initially" ) );
00799 rule_skippager->insertItem( tr2i18n( "Remember" ) );
00800 rule_skippager->insertItem( tr2i18n( "Force" ) );
00801 rule_skiptaskbar->clear();
00802 rule_skiptaskbar->insertItem( tr2i18n( "Do Not Affect" ) );
00803 rule_skiptaskbar->insertItem( tr2i18n( "Apply Initially" ) );
00804 rule_skiptaskbar->insertItem( tr2i18n( "Remember" ) );
00805 rule_skiptaskbar->insertItem( tr2i18n( "Force" ) );
00806 rule_noborder->clear();
00807 rule_noborder->insertItem( tr2i18n( "Do Not Affect" ) );
00808 rule_noborder->insertItem( tr2i18n( "Apply Initially" ) );
00809 rule_noborder->insertItem( tr2i18n( "Remember" ) );
00810 rule_noborder->insertItem( tr2i18n( "Force" ) );
00811 rule_below->clear();
00812 rule_below->insertItem( tr2i18n( "Do Not Affect" ) );
00813 rule_below->insertItem( tr2i18n( "Apply Initially" ) );
00814 rule_below->insertItem( tr2i18n( "Remember" ) );
00815 rule_below->insertItem( tr2i18n( "Force" ) );
00816 rule_above->clear();
00817 rule_above->insertItem( tr2i18n( "Do Not Affect" ) );
00818 rule_above->insertItem( tr2i18n( "Apply Initially" ) );
00819 rule_above->insertItem( tr2i18n( "Remember" ) );
00820 rule_above->insertItem( tr2i18n( "Force" ) );
00821 above->setText( QString::null );
00822 noborder->setText( QString::null );
00823 skiptaskbar->setText( QString::null );
00824 skippager->setText( QString::null );
00825 closeable->setText( QString::null );
00826 acceptfocus->setText( QString::null );
00827 tabs->changeTab( TabPage_2, tr2i18n( "&Preferences" ) );
00828 enable_fsplevel->setText( tr2i18n( "&Focus stealing prevention" ) );
00829 rule_type->clear();
00830 rule_type->insertItem( tr2i18n( "Do Not Affect" ) );
00831 rule_type->insertItem( tr2i18n( "Force" ) );
00832 type->clear();
00833 type->insertItem( tr2i18n( "Normal Window" ) );
00834 type->insertItem( tr2i18n( "Dialog Window" ) );
00835 type->insertItem( tr2i18n( "Utility Window" ) );
00836 type->insertItem( tr2i18n( "Dock (panel)" ) );
00837 type->insertItem( tr2i18n( "Toolbar" ) );
00838 type->insertItem( tr2i18n( "Torn-Off Menu" ) );
00839 type->insertItem( tr2i18n( "Splash Screen" ) );
00840 type->insertItem( tr2i18n( "Desktop" ) );
00841 type->insertItem( tr2i18n( "Override Type" ) );
00842 type->insertItem( tr2i18n( "Standalone Menubar" ) );
00843 moveresizemode->clear();
00844 moveresizemode->insertItem( tr2i18n( "Opaque" ) );
00845 moveresizemode->insertItem( tr2i18n( "Transparent" ) );
00846 enable_type->setText( tr2i18n( "Window &type" ) );
00847 enable_moveresizemode->setText( tr2i18n( "&Moving/resizing" ) );
00848 rule_fsplevel->clear();
00849 rule_fsplevel->insertItem( tr2i18n( "Do Not Affect" ) );
00850 rule_fsplevel->insertItem( tr2i18n( "Force" ) );
00851 rule_moveresizemode->clear();
00852 rule_moveresizemode->insertItem( tr2i18n( "Do Not Affect" ) );
00853 rule_moveresizemode->insertItem( tr2i18n( "Force" ) );
00854 fsplevel->clear();
00855 fsplevel->insertItem( tr2i18n( "None" ) );
00856 fsplevel->insertItem( tr2i18n( "Low" ) );
00857 fsplevel->insertItem( tr2i18n( "Normal" ) );
00858 fsplevel->insertItem( tr2i18n( "High" ) );
00859 fsplevel->insertItem( tr2i18n( "Extreme" ) );
00860 maxsize->setValidChars( tr2i18n( "0123456789-+,xX:" ) );
00861 ignoreposition->setText( QString::null );
00862 enable_ignoreposition->setText( tr2i18n( "Ignore requested &position" ) );
00863 rule_ignoreposition->clear();
00864 rule_ignoreposition->insertItem( tr2i18n( "Do Not Affect" ) );
00865 rule_ignoreposition->insertItem( tr2i18n( "Force" ) );
00866 enable_minsize->setText( tr2i18n( "M&inimum size" ) );
00867 rule_minsize->clear();
00868 rule_minsize->insertItem( tr2i18n( "Do Not Affect" ) );
00869 rule_minsize->insertItem( tr2i18n( "Force" ) );
00870 enable_maxsize->setText( tr2i18n( "M&aximum size" ) );
00871 minsize->setValidChars( tr2i18n( "0123456789-+,xX:" ) );
00872 rule_maxsize->clear();
00873 rule_maxsize->insertItem( tr2i18n( "Do Not Affect" ) );
00874 rule_maxsize->insertItem( tr2i18n( "Force" ) );
00875 tabs->changeTab( TabPage_3, tr2i18n( "W&orkarounds" ) );
00876 }
00877
00878 #include "ruleswidgetbase.moc"