1 | void OptionsDialog::apply()
|
---|
2 | {
|
---|
3 | QStringList flagList;
|
---|
4 | bool wstyle = false;
|
---|
5 | WFlags f = WDestructiveClose | WType_TopLevel | WStyle_Customize;
|
---|
6 |
|
---|
7 | if ( bgBorder->isChecked() ) {
|
---|
8 | if ( rbBorderNormal->isChecked() ) {
|
---|
9 | f |= WStyle_NormalBorder;
|
---|
10 | flagList += "WStyle_NormalBorder";
|
---|
11 | wstyle = true;
|
---|
12 | }
|
---|
13 | else if ( rbBorderDialog->isChecked() ) {
|
---|
14 | f |= WStyle_DialogBorder;
|
---|
15 | flagList += "WStyle_DialogBorder";
|
---|
16 | wstyle = true;
|
---|
17 | }
|
---|
18 |
|
---|
19 | if ( bgTitle->isChecked() ) {
|
---|
20 | f |= WStyle_Title;
|
---|
21 | flagList += "WStyle_Title";
|
---|
22 | wstyle = true;
|
---|
23 | if ( cbTitleSystem->isChecked() ) {
|
---|
24 | f |= WStyle_SysMenu;
|
---|
25 | flagList += "WStyle_SysMenu";
|
---|
26 | }
|
---|
27 | if ( cbTitleMinimize->isChecked() ) {
|
---|
28 | f |= WStyle_Minimize;
|
---|
29 | flagList += "WStyle_Minimize";
|
---|
30 | }
|
---|
31 | if ( cbTitleMaximize->isChecked() ) {
|
---|
32 | f |= WStyle_Maximize;
|
---|
33 | flagList += "WStyle_Maximize";
|
---|
34 | }
|
---|
35 | if ( cbTitleContext->isChecked() ) {
|
---|
36 | f |= WStyle_ContextHelp;
|
---|
37 | flagList += "WStyle_ContextHelp";
|
---|
38 | }
|
---|
39 | }
|
---|
40 | } else {
|
---|
41 | f |= WStyle_NoBorder;
|
---|
42 | flagList += "WStyle_NoBorder";
|
---|
43 | wstyle = true;
|
---|
44 | }
|
---|
45 |
|
---|
46 | QWidget *parent = this;
|
---|
47 | if ( cbBehaviorTaskbar->isChecked() ) {
|
---|
48 | parent = 0;
|
---|
49 | f |= WGroupLeader;
|
---|
50 | flagList += "WGroupLeader";
|
---|
51 | }
|
---|
52 | if ( cbBehaviorStays->isChecked() ) {
|
---|
53 | f |= WStyle_StaysOnTop /*| WX11BypassWM*/;
|
---|
54 | flagList += "WStyle_StaysOnTop";
|
---|
55 | wstyle = true;
|
---|
56 | }
|
---|
57 | if ( cbBehaviorPopup->isChecked() ) {
|
---|
58 | f |= WType_Popup;
|
---|
59 | flagList += "WType_Popup";
|
---|
60 | }
|
---|
61 | if ( cbBehaviorModal->isChecked() ) {
|
---|
62 | f |= WShowModal;
|
---|
63 | flagList += "WShowModal";
|
---|
64 | }
|
---|
65 | if ( cbBehaviorTool->isChecked() ) {
|
---|
66 | f |= WStyle_Tool;
|
---|
67 | flagList += "WStyle_Tool";
|
---|
68 | wstyle = true;
|
---|
69 | }
|
---|
70 |
|
---|
71 | if (wstyle)
|
---|
72 | flagList.push_front("WStyle_Customize");
|
---|
73 |
|
---|
74 | if ( !widget ) {
|
---|
75 | widget = new QVBox( parent, 0, f );
|
---|
76 | widget->setMargin( 20 );
|
---|
77 | QLabel *label = new QLabel(flagList.join(" | "), widget);
|
---|
78 | label->setTextFormat(RichText);
|
---|
79 | label->setAlignment(WordBreak);
|
---|
80 | QPushButton *okButton = new QPushButton( "Close", widget );
|
---|
81 | connect( okButton, SIGNAL(clicked()), widget, SLOT(close()) );
|
---|
82 | widget->move( pos() );
|
---|
83 | } else {
|
---|
84 | widget->reparent( parent, f, widget->geometry().topLeft(), FALSE);
|
---|
85 | }
|
---|
86 |
|
---|
87 | widget->setCaption( leCaption->text() );
|
---|
88 | widget->setIcon( leIcon->text() );
|
---|
89 | widget->setWindowOpacity(double(slTransparency->maxValue() - slTransparency->value()) / 100);
|
---|
90 |
|
---|
91 | widget->show();
|
---|
92 | }
|
---|
93 |
|
---|
94 | void OptionsDialog::pickIcon()
|
---|
95 | {
|
---|
96 | QString filename = QFileDialog::getOpenFileName( QString::null, QString::null, this );
|
---|
97 | leIcon->setText( filename );
|
---|
98 | }
|
---|