-rw-r--r-- | noncore/settings/packagemanager/ChangeLog | 21 | ||||
-rw-r--r-- | noncore/settings/packagemanager/entrydlg.cpp | 5 | ||||
-rw-r--r-- | noncore/settings/packagemanager/filterdlg.cpp | 2 | ||||
-rw-r--r-- | noncore/settings/packagemanager/mainwindow.cpp | 2 | ||||
-rw-r--r-- | noncore/settings/packagemanager/oipkgconfigdlg.cpp | 2 | ||||
-rw-r--r-- | noncore/settings/packagemanager/opackagemanager.cpp | 2 | ||||
-rw-r--r-- | noncore/settings/packagemanager/promptdlg.cpp | 4 | ||||
-rw-r--r-- | noncore/settings/packagemanager/promptdlg.h | 2 |
8 files changed, 22 insertions, 18 deletions
diff --git a/noncore/settings/packagemanager/ChangeLog b/noncore/settings/packagemanager/ChangeLog index 72e6169..744122f 100644 --- a/noncore/settings/packagemanager/ChangeLog +++ b/noncore/settings/packagemanager/ChangeLog | |||
@@ -1,20 +1,21 @@ | |||
1 | 2004-mm-dd Dan Williams <drw@handhelds.org> | 1 | 2004-02-12 Dan Williams <drw@handhelds.org> |
2 | 2 | ||
3 | * Package information dialog implemented | 3 | * Package information dialog implemented |
4 | * What's This app icon enabled | 4 | * What's This app icon enabled |
5 | * Changed all QDialog::exec() occurences to QPEApplication::execDialog() | ||
5 | 6 | ||
6 | 2004-01-23 Dan Williams <drw@handhelds.org> | 7 | 2004-01-23 Dan Williams <drw@handhelds.org> |
7 | 8 | ||
8 | * Added package download functionality | 9 | * Added package download functionality |
9 | * Have Opie update links after install/removal so that apps | 10 | * Have Opie update links after install/removal so that apps |
10 | will display properly in Launcher | 11 | will display properly in Launcher |
11 | 12 | ||
12 | 2004-01-20 Dan Williams <drw@handhelds.org> | 13 | 2004-01-20 Dan Williams <drw@handhelds.org> |
13 | 14 | ||
14 | * Released version 0.2.0 | 15 | * Released version 0.2.0 |
15 | * Converted to use libipkg in place of spawning ipkg process | 16 | * Converted to use libipkg in place of spawning ipkg process |
16 | 17 | ||
17 | 2004-01-13 Dan Williams <drw@handhelds.org> | 18 | 2004-01-13 Dan Williams <drw@handhelds.org> |
18 | 19 | ||
19 | * Released version 0.1.0 | 20 | * Released version 0.1.0 |
20 | * Initial check-in of new package management client to eventually replace AQPkg | 21 | * Initial check-in of new package management client to eventually replace AQPkg |
diff --git a/noncore/settings/packagemanager/entrydlg.cpp b/noncore/settings/packagemanager/entrydlg.cpp index 8deaa37..663abd2 100644 --- a/noncore/settings/packagemanager/entrydlg.cpp +++ b/noncore/settings/packagemanager/entrydlg.cpp | |||
@@ -1,82 +1,85 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of the OPIE Project | 2 | This file is part of the OPIE Project |
3 | 3 | ||
4 | =. Copyright (c) 2004 Dan Williams <drw@handhelds.org> | 4 | =. Copyright (c) 2004 Dan Williams <drw@handhelds.org> |
5 | .=l. | 5 | .=l. |
6 | .>+-= | 6 | .>+-= |
7 | _;:, .> :=|. This file is free software; you can | 7 | _;:, .> :=|. This file is free software; you can |
8 | .> <`_, > . <= redistribute it and/or modify it under | 8 | .> <`_, > . <= redistribute it and/or modify it under |
9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public | 9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public |
10 | .="- .-=="i, .._ License as published by the Free Software | 10 | .="- .-=="i, .._ License as published by the Free Software |
11 | - . .-<_> .<> Foundation; either version 2 of the License, | 11 | - . .-<_> .<> Foundation; either version 2 of the License, |
12 | ._= =} : or (at your option) any later version. | 12 | ._= =} : or (at your option) any later version. |
13 | .%`+i> _;_. | 13 | .%`+i> _;_. |
14 | .i_,=:_. -<s. This file is distributed in the hope that | 14 | .i_,=:_. -<s. This file is distributed in the hope that |
15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; | 15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; |
16 | : .. .:, . . . without even the implied warranty of | 16 | : .. .:, . . . without even the implied warranty of |
17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General | 18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General |
19 | ..}^=.= = ; Public License for more details. | 19 | ..}^=.= = ; Public License for more details. |
20 | ++= -. .` .: | 20 | ++= -. .` .: |
21 | : = ...= . :.=- You should have received a copy of the GNU | 21 | : = ...= . :.=- You should have received a copy of the GNU |
22 | -. .:....=;==+<; General Public License along with this file; | 22 | -. .:....=;==+<; General Public License along with this file; |
23 | -_. . . )=. = see the file COPYING. If not, write to the | 23 | -_. . . )=. = see the file COPYING. If not, write to the |
24 | -- :-=` Free Software Foundation, Inc., | 24 | -- :-=` Free Software Foundation, Inc., |
25 | 59 Temple Place - Suite 330, | 25 | 59 Temple Place - Suite 330, |
26 | Boston, MA 02111-1307, USA. | 26 | Boston, MA 02111-1307, USA. |
27 | 27 | ||
28 | */ | 28 | */ |
29 | 29 | ||
30 | #include "entrydlg.h" | 30 | #include "entrydlg.h" |
31 | 31 | ||
32 | #include <qlabel.h> | 32 | #include <qlabel.h> |
33 | #include <qlayout.h> | 33 | #include <qlayout.h> |
34 | #include <qlineedit.h> | 34 | #include <qlineedit.h> |
35 | #include <qpushbutton.h> | 35 | #include <qpushbutton.h> |
36 | 36 | ||
37 | #include <qpe/qpeapplication.h> | ||
38 | |||
37 | EntryDlg::EntryDlg( const QString &label, QWidget* parent, const char* name, bool modal ) | 39 | EntryDlg::EntryDlg( const QString &label, QWidget* parent, const char* name, bool modal ) |
38 | : QDialog( parent, name, modal ) | 40 | : QDialog( parent, name, modal ) |
39 | { | 41 | { |
40 | QVBoxLayout *vbox = new QVBoxLayout( this, 6, 6 ); | 42 | QVBoxLayout *vbox = new QVBoxLayout( this, 6, 6 ); |
41 | 43 | ||
42 | QLabel *l = new QLabel( label, this ); | 44 | QLabel *l = new QLabel( label, this ); |
43 | l->setAlignment( AlignLeft | AlignTop | WordBreak ); | 45 | l->setAlignment( AlignLeft | AlignTop | WordBreak ); |
44 | vbox->addWidget( l ); | 46 | vbox->addWidget( l ); |
45 | 47 | ||
46 | m_entry = new QLineEdit( this ); | 48 | m_entry = new QLineEdit( this ); |
47 | vbox->addWidget( m_entry ); | 49 | vbox->addWidget( m_entry ); |
48 | 50 | ||
49 | connect( m_entry, SIGNAL(returnPressed()), this, SLOT(tryAccept()) ); | 51 | connect( m_entry, SIGNAL(returnPressed()), this, SLOT(tryAccept()) ); |
50 | } | 52 | } |
51 | 53 | ||
52 | void EntryDlg::setText( const QString &text ) | 54 | void EntryDlg::setText( const QString &text ) |
53 | { | 55 | { |
54 | m_entry->setText( text ); | 56 | m_entry->setText( text ); |
55 | m_entry->selectAll(); | 57 | m_entry->selectAll(); |
56 | } | 58 | } |
57 | 59 | ||
58 | QString EntryDlg::getText() | 60 | QString EntryDlg::getText() |
59 | { | 61 | { |
60 | return m_entry->text(); | 62 | return m_entry->text(); |
61 | } | 63 | } |
62 | 64 | ||
63 | QString EntryDlg::getText( const QString &caption, const QString &label, const QString &text, bool *ok, | 65 | QString EntryDlg::getText( const QString &caption, const QString &label, const QString &text, bool *ok, |
64 | QWidget *parent, const char *name ) | 66 | QWidget *parent, const char *name ) |
65 | { | 67 | { |
66 | EntryDlg *dlg = new EntryDlg( label, parent, name, true ); | 68 | EntryDlg *dlg = new EntryDlg( label, parent, name, true ); |
67 | dlg->setCaption( caption ); | 69 | dlg->setCaption( caption ); |
68 | dlg->setText( text ); | 70 | dlg->setText( text ); |
69 | 71 | ||
70 | QString result; | 72 | QString result; |
71 | *ok = ( dlg->exec() == QDialog::Accepted ); | 73 | |
74 | *ok = ( QPEApplication::execDialog( dlg ) == QDialog::Accepted ); | ||
72 | if ( *ok ) | 75 | if ( *ok ) |
73 | result = dlg->getText(); | 76 | result = dlg->getText(); |
74 | 77 | ||
75 | delete dlg; | 78 | delete dlg; |
76 | return result; | 79 | return result; |
77 | } | 80 | } |
78 | void EntryDlg::tryAccept() | 81 | void EntryDlg::tryAccept() |
79 | { | 82 | { |
80 | if ( !m_entry->text().isEmpty() ) | 83 | if ( !m_entry->text().isEmpty() ) |
81 | accept(); | 84 | accept(); |
82 | } | 85 | } |
diff --git a/noncore/settings/packagemanager/filterdlg.cpp b/noncore/settings/packagemanager/filterdlg.cpp index 2e48d5b..0da9d19 100644 --- a/noncore/settings/packagemanager/filterdlg.cpp +++ b/noncore/settings/packagemanager/filterdlg.cpp | |||
@@ -1,179 +1,179 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of the OPIE Project | 2 | This file is part of the OPIE Project |
3 | 3 | ||
4 | =. Copyright (c) 2003 Dan Williams <drw@handhelds.org> | 4 | =. Copyright (c) 2003 Dan Williams <drw@handhelds.org> |
5 | .=l. | 5 | .=l. |
6 | .>+-= | 6 | .>+-= |
7 | _;:, .> :=|. This file is free software; you can | 7 | _;:, .> :=|. This file is free software; you can |
8 | .> <`_, > . <= redistribute it and/or modify it under | 8 | .> <`_, > . <= redistribute it and/or modify it under |
9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public | 9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public |
10 | .="- .-=="i, .._ License as published by the Free Software | 10 | .="- .-=="i, .._ License as published by the Free Software |
11 | - . .-<_> .<> Foundation; either version 2 of the License, | 11 | - . .-<_> .<> Foundation; either version 2 of the License, |
12 | ._= =} : or (at your option) any later version. | 12 | ._= =} : or (at your option) any later version. |
13 | .%`+i> _;_. | 13 | .%`+i> _;_. |
14 | .i_,=:_. -<s. This file is distributed in the hope that | 14 | .i_,=:_. -<s. This file is distributed in the hope that |
15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; | 15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; |
16 | : .. .:, . . . without even the implied warranty of | 16 | : .. .:, . . . without even the implied warranty of |
17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General | 18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General |
19 | ..}^=.= = ; Public License for more details. | 19 | ..}^=.= = ; Public License for more details. |
20 | ++= -. .` .: | 20 | ++= -. .` .: |
21 | : = ...= . :.=- You should have received a copy of the GNU | 21 | : = ...= . :.=- You should have received a copy of the GNU |
22 | -. .:....=;==+<; General Public License along with this file; | 22 | -. .:....=;==+<; General Public License along with this file; |
23 | -_. . . )=. = see the file COPYING. If not, write to the | 23 | -_. . . )=. = see the file COPYING. If not, write to the |
24 | -- :-=` Free Software Foundation, Inc., | 24 | -- :-=` Free Software Foundation, Inc., |
25 | 59 Temple Place - Suite 330, | 25 | 59 Temple Place - Suite 330, |
26 | Boston, MA 02111-1307, USA. | 26 | Boston, MA 02111-1307, USA. |
27 | 27 | ||
28 | */ | 28 | */ |
29 | 29 | ||
30 | #include "filterdlg.h" | 30 | #include "filterdlg.h" |
31 | 31 | ||
32 | FilterDlg::FilterDlg( QWidget *parent, OPackageManager *pm, const QString &name, | 32 | FilterDlg::FilterDlg( QWidget *parent, OPackageManager *pm, const QString &name, |
33 | const QString &server, const QString &destination, | 33 | const QString &server, const QString &destination, |
34 | OPackageManager::Status status, const QString &category ) | 34 | OPackageManager::Status status, const QString &category ) |
35 | : QDialog( parent, QString::null, true ) | 35 | : QDialog( parent, QString::null, true ) |
36 | { | 36 | { |
37 | setCaption( tr( "Filter packages" ) ); | 37 | setCaption( tr( "Filter packages" ) ); |
38 | 38 | ||
39 | QVBoxLayout *layout = new QVBoxLayout( this ); | 39 | QVBoxLayout *layout = new QVBoxLayout( this ); |
40 | QScrollView *sv = new QScrollView( this ); | 40 | QScrollView *sv = new QScrollView( this ); |
41 | layout->addWidget( sv, 0, 0 ); | 41 | layout->addWidget( sv, 0, 0 ); |
42 | sv->setResizePolicy( QScrollView::AutoOneFit ); | 42 | sv->setResizePolicy( QScrollView::AutoOneFit ); |
43 | sv->setFrameStyle( QFrame::NoFrame ); | 43 | sv->setFrameStyle( QFrame::NoFrame ); |
44 | QWidget *container = new QWidget( sv->viewport() ); | 44 | QWidget *container = new QWidget( sv->viewport() ); |
45 | sv->addChild( container ); | 45 | sv->addChild( container ); |
46 | layout = new QVBoxLayout( container, 4, 4 ); | 46 | layout = new QVBoxLayout( container, 4, 4 ); |
47 | 47 | ||
48 | // Category | 48 | // Category |
49 | m_categoryCB = new QCheckBox( tr( "Category:" ), container ); | 49 | m_categoryCB = new QCheckBox( tr( "Category:" ), container ); |
50 | connect( m_categoryCB, SIGNAL(toggled(bool)), this, SLOT(slotCategorySelected(bool)) ); | 50 | connect( m_categoryCB, SIGNAL(toggled(bool)), this, SLOT(slotCategorySelected(bool)) ); |
51 | m_category = new QComboBox( container ); | 51 | m_category = new QComboBox( container ); |
52 | m_category->insertStringList( pm->categories() ); | 52 | m_category->insertStringList( pm->categories() ); |
53 | initItem( m_category, m_categoryCB, category ); | 53 | initItem( m_category, m_categoryCB, category ); |
54 | layout->addWidget( m_categoryCB ); | 54 | layout->addWidget( m_categoryCB ); |
55 | layout->addWidget( m_category ); | 55 | layout->addWidget( m_category ); |
56 | 56 | ||
57 | // Package name | 57 | // Package name |
58 | m_nameCB = new QCheckBox( tr( "Names containing:" ), container ); | 58 | m_nameCB = new QCheckBox( tr( "Names containing:" ), container ); |
59 | connect( m_nameCB, SIGNAL(toggled(bool)), this, SLOT(slotNameSelected(bool)) ); | 59 | connect( m_nameCB, SIGNAL(toggled(bool)), this, SLOT(slotNameSelected(bool)) ); |
60 | m_name = new QLineEdit( name, container ); | 60 | m_name = new QLineEdit( name, container ); |
61 | if ( !name.isNull() ) | 61 | if ( !name.isNull() ) |
62 | m_nameCB->setChecked( true ); | 62 | m_nameCB->setChecked( true ); |
63 | m_name->setEnabled( !name.isNull() ); | 63 | m_name->setEnabled( !name.isNull() ); |
64 | layout->addWidget( m_nameCB ); | 64 | layout->addWidget( m_nameCB ); |
65 | layout->addWidget( m_name ); | 65 | layout->addWidget( m_name ); |
66 | 66 | ||
67 | // Status | 67 | // Status |
68 | m_statusCB = new QCheckBox( tr( "With the status:" ), container ); | 68 | m_statusCB = new QCheckBox( tr( "With the status:" ), container ); |
69 | connect( m_statusCB, SIGNAL(toggled(bool)), this, SLOT(slotStatusSelected(bool)) ); | 69 | connect( m_statusCB, SIGNAL(toggled(bool)), this, SLOT(slotStatusSelected(bool)) ); |
70 | m_status = new QComboBox( container ); | 70 | m_status = new QComboBox( container ); |
71 | connect( m_status, SIGNAL(activated(const QString &)), this, SLOT(slotStatusChanged(const QString &)) ); | 71 | connect( m_status, SIGNAL(activated(const QString &)), this, SLOT(slotStatusChanged(const QString &)) ); |
72 | QString currStatus; | 72 | QString currStatus; |
73 | switch ( status ) | 73 | switch ( status ) |
74 | { | 74 | { |
75 | case OPackageManager::All : currStatus = tr( "All" ); | 75 | case OPackageManager::All : currStatus = tr( "All" ); |
76 | break; | 76 | break; |
77 | case OPackageManager::Installed : currStatus = tr( "Installed" ); | 77 | case OPackageManager::Installed : currStatus = tr( "Installed" ); |
78 | break; | 78 | break; |
79 | case OPackageManager::NotInstalled : currStatus = tr( "Not installed" ); | 79 | case OPackageManager::NotInstalled : currStatus = tr( "Not installed" ); |
80 | break; | 80 | break; |
81 | case OPackageManager::Updated : currStatus = tr( "Updated" ); | 81 | case OPackageManager::Updated : currStatus = tr( "Updated" ); |
82 | break; | 82 | break; |
83 | default : currStatus = QString::null; | 83 | default : currStatus = QString::null; |
84 | }; | 84 | }; |
85 | m_status->insertItem( tr( "All" ) ); | 85 | m_status->insertItem( tr( "All" ) ); |
86 | m_status->insertItem( tr( "Installed" ) ); | 86 | m_status->insertItem( tr( "Installed" ) ); |
87 | m_status->insertItem( tr( "Not installed" ) ); | 87 | m_status->insertItem( tr( "Not installed" ) ); |
88 | m_status->insertItem( tr( "Updated" ) ); | 88 | m_status->insertItem( tr( "Updated" ) ); |
89 | initItem( m_status, m_statusCB, currStatus ); | 89 | initItem( m_status, m_statusCB, currStatus ); |
90 | layout->addWidget( m_statusCB ); | 90 | layout->addWidget( m_statusCB ); |
91 | layout->addWidget( m_status ); | 91 | layout->addWidget( m_status ); |
92 | 92 | ||
93 | // Server | 93 | // Server |
94 | m_serverCB = new QCheckBox( tr( "Available from the following server:" ), container ); | 94 | m_serverCB = new QCheckBox( tr( "Available from the following server:" ), container ); |
95 | connect( m_serverCB, SIGNAL(toggled(bool)), this, SLOT(slotServerSelected(bool)) ); | 95 | connect( m_serverCB, SIGNAL(toggled(bool)), this, SLOT(slotServerSelected(bool)) ); |
96 | m_server = new QComboBox( container ); | 96 | m_server = new QComboBox( container ); |
97 | m_server->insertStringList( *(pm->servers()) ); | 97 | m_server->insertStringList( *(pm->servers()) ); |
98 | initItem( m_server, m_serverCB, server ); | 98 | initItem( m_server, m_serverCB, server ); |
99 | layout->addWidget( m_serverCB ); | 99 | layout->addWidget( m_serverCB ); |
100 | layout->addWidget( m_server ); | 100 | layout->addWidget( m_server ); |
101 | 101 | ||
102 | // Destination | 102 | // Destination |
103 | m_destCB = new QCheckBox( tr( "Installed on device at:" ), container ); | 103 | m_destCB = new QCheckBox( tr( "Installed on device at:" ), container ); |
104 | connect( m_destCB, SIGNAL(toggled(bool)), this, SLOT(slotDestSelected(bool)) ); | 104 | connect( m_destCB, SIGNAL(toggled(bool)), this, SLOT(slotDestSelected(bool)) ); |
105 | m_destination = new QComboBox( container ); | 105 | m_destination = new QComboBox( container ); |
106 | m_destination->insertStringList( *(pm->destinations()) ); | 106 | m_destination->insertStringList( *(pm->destinations()) ); |
107 | initItem( m_destination, m_destCB, destination ); | 107 | initItem( m_destination, m_destCB, destination ); |
108 | layout->addWidget( m_destCB ); | 108 | layout->addWidget( m_destCB ); |
109 | layout->addWidget( m_destination ); | 109 | layout->addWidget( m_destination ); |
110 | 110 | ||
111 | showMaximized(); | 111 | //showMaximized(); |
112 | } | 112 | } |
113 | 113 | ||
114 | void FilterDlg::initItem( QComboBox *comboBox, QCheckBox *checkBox, const QString &selection ) | 114 | void FilterDlg::initItem( QComboBox *comboBox, QCheckBox *checkBox, const QString &selection ) |
115 | { | 115 | { |
116 | if ( !selection.isNull() ) | 116 | if ( !selection.isNull() ) |
117 | { | 117 | { |
118 | checkBox->setChecked( true ); | 118 | checkBox->setChecked( true ); |
119 | 119 | ||
120 | for ( int i = 0; i < comboBox->count(); i++ ) | 120 | for ( int i = 0; i < comboBox->count(); i++ ) |
121 | { | 121 | { |
122 | if ( comboBox->text( i ) == selection ) | 122 | if ( comboBox->text( i ) == selection ) |
123 | { | 123 | { |
124 | comboBox->setCurrentItem( i ); | 124 | comboBox->setCurrentItem( i ); |
125 | return; | 125 | return; |
126 | } | 126 | } |
127 | } | 127 | } |
128 | } | 128 | } |
129 | comboBox->setEnabled( !selection.isNull() ); | 129 | comboBox->setEnabled( !selection.isNull() ); |
130 | } | 130 | } |
131 | 131 | ||
132 | void FilterDlg::slotNameSelected( bool selected ) | 132 | void FilterDlg::slotNameSelected( bool selected ) |
133 | { | 133 | { |
134 | m_name->setEnabled( selected ); | 134 | m_name->setEnabled( selected ); |
135 | } | 135 | } |
136 | 136 | ||
137 | void FilterDlg::slotServerSelected( bool selected ) | 137 | void FilterDlg::slotServerSelected( bool selected ) |
138 | { | 138 | { |
139 | m_server->setEnabled( selected ); | 139 | m_server->setEnabled( selected ); |
140 | } | 140 | } |
141 | 141 | ||
142 | void FilterDlg::slotDestSelected( bool selected ) | 142 | void FilterDlg::slotDestSelected( bool selected ) |
143 | { | 143 | { |
144 | m_destination->setEnabled( selected ); | 144 | m_destination->setEnabled( selected ); |
145 | } | 145 | } |
146 | 146 | ||
147 | void FilterDlg::slotStatusSelected( bool selected ) | 147 | void FilterDlg::slotStatusSelected( bool selected ) |
148 | { | 148 | { |
149 | m_status->setEnabled( selected ); | 149 | m_status->setEnabled( selected ); |
150 | 150 | ||
151 | if ( !selected && !m_destCB->isEnabled() ) | 151 | if ( !selected && !m_destCB->isEnabled() ) |
152 | { | 152 | { |
153 | // If status check box has been deselected and destination option was previously deselected | 153 | // If status check box has been deselected and destination option was previously deselected |
154 | // (because status == "Not installed"), re-enable destination option | 154 | // (because status == "Not installed"), re-enable destination option |
155 | m_destCB->setEnabled( true ); | 155 | m_destCB->setEnabled( true ); |
156 | m_destination->setEnabled( true ); | 156 | m_destination->setEnabled( true ); |
157 | } | 157 | } |
158 | else if ( selected && m_destCB->isEnabled() && m_status->currentText() == tr( "Not installed" ) ) | 158 | else if ( selected && m_destCB->isEnabled() && m_status->currentText() == tr( "Not installed" ) ) |
159 | { | 159 | { |
160 | // If status check box has been selected and status == "Not installed", disable destination option | 160 | // If status check box has been selected and status == "Not installed", disable destination option |
161 | m_destCB->setEnabled( false ); | 161 | m_destCB->setEnabled( false ); |
162 | m_destCB->setChecked( false ); | 162 | m_destCB->setChecked( false ); |
163 | m_destination->setEnabled( false ); | 163 | m_destination->setEnabled( false ); |
164 | } | 164 | } |
165 | } | 165 | } |
166 | 166 | ||
167 | void FilterDlg::slotStatusChanged( const QString &category ) | 167 | void FilterDlg::slotStatusChanged( const QString &category ) |
168 | { | 168 | { |
169 | bool notInstalled = ( category == tr( "Not installed" ) ); | 169 | bool notInstalled = ( category == tr( "Not installed" ) ); |
170 | m_destCB->setEnabled( !notInstalled ); | 170 | m_destCB->setEnabled( !notInstalled ); |
171 | m_destination->setEnabled( !notInstalled ); | 171 | m_destination->setEnabled( !notInstalled ); |
172 | if ( notInstalled ) | 172 | if ( notInstalled ) |
173 | m_destCB->setChecked( false ); | 173 | m_destCB->setChecked( false ); |
174 | } | 174 | } |
175 | 175 | ||
176 | void FilterDlg::slotCategorySelected( bool selected ) | 176 | void FilterDlg::slotCategorySelected( bool selected ) |
177 | { | 177 | { |
178 | m_category->setEnabled( selected ); | 178 | m_category->setEnabled( selected ); |
179 | } | 179 | } |
diff --git a/noncore/settings/packagemanager/mainwindow.cpp b/noncore/settings/packagemanager/mainwindow.cpp index 8b374ab..2cb11ba 100644 --- a/noncore/settings/packagemanager/mainwindow.cpp +++ b/noncore/settings/packagemanager/mainwindow.cpp | |||
@@ -422,261 +422,261 @@ void MainWindow::slotDownload() | |||
422 | } | 422 | } |
423 | } | 423 | } |
424 | 424 | ||
425 | void MainWindow::slotApply() | 425 | void MainWindow::slotApply() |
426 | { | 426 | { |
427 | QStringList *removeList = 0x0; | 427 | QStringList *removeList = 0x0; |
428 | QStringList *installList = 0x0; | 428 | QStringList *installList = 0x0; |
429 | QStringList *upgradeList = 0x0; | 429 | QStringList *upgradeList = 0x0; |
430 | 430 | ||
431 | for ( QCheckListItem *item = static_cast<QCheckListItem *>(m_packageList.firstChild()); | 431 | for ( QCheckListItem *item = static_cast<QCheckListItem *>(m_packageList.firstChild()); |
432 | item != 0 ; | 432 | item != 0 ; |
433 | item = static_cast<QCheckListItem *>(item->nextSibling()) ) | 433 | item = static_cast<QCheckListItem *>(item->nextSibling()) ) |
434 | { | 434 | { |
435 | if ( item->isOn() ) | 435 | if ( item->isOn() ) |
436 | { | 436 | { |
437 | OPackage *package = m_packman.findPackage( item->text() ); | 437 | OPackage *package = m_packman.findPackage( item->text() ); |
438 | if ( package ) | 438 | if ( package ) |
439 | { | 439 | { |
440 | if ( !package->versionInstalled().isNull() ) | 440 | if ( !package->versionInstalled().isNull() ) |
441 | { | 441 | { |
442 | if ( m_packman.compareVersions( package->version(), package->versionInstalled() ) == 1 ) | 442 | if ( m_packman.compareVersions( package->version(), package->versionInstalled() ) == 1 ) |
443 | { | 443 | { |
444 | // Remove/upgrade package | 444 | // Remove/upgrade package |
445 | int answer = PromptDlg::ask( tr( "Remove or upgrade" ), | 445 | int answer = PromptDlg::ask( tr( "Remove or upgrade" ), |
446 | tr( QString( "Do you wish to remove or upgrade\n%1?" ).arg( item->text() ) ), | 446 | tr( QString( "Do you wish to remove or upgrade\n%1?" ).arg( item->text() ) ), |
447 | tr( "Remove" ), tr( "Upgrade" ), this ); | 447 | tr( "Remove" ), tr( "Upgrade" ), this ); |
448 | if ( answer == 1 ) // Remove | 448 | if ( answer == 1 ) // Remove |
449 | { | 449 | { |
450 | if ( !removeList ) | 450 | if ( !removeList ) |
451 | removeList = new QStringList(); | 451 | removeList = new QStringList(); |
452 | removeList->append( item->text() ); | 452 | removeList->append( item->text() ); |
453 | } | 453 | } |
454 | else if ( answer == 2 ) // Upgrade | 454 | else if ( answer == 2 ) // Upgrade |
455 | { | 455 | { |
456 | if ( !upgradeList ) | 456 | if ( !upgradeList ) |
457 | upgradeList = new QStringList(); | 457 | upgradeList = new QStringList(); |
458 | upgradeList->append( item->text() ); | 458 | upgradeList->append( item->text() ); |
459 | } | 459 | } |
460 | } | 460 | } |
461 | else | 461 | else |
462 | { | 462 | { |
463 | // Remove/reinstall package | 463 | // Remove/reinstall package |
464 | int answer = PromptDlg::ask( tr( "Remove or reinstall" ), | 464 | int answer = PromptDlg::ask( tr( "Remove or reinstall" ), |
465 | tr( QString( "Do you wish to remove or reinstall\n%1?" ).arg( item->text() ) ), | 465 | tr( QString( "Do you wish to remove or reinstall\n%1?" ).arg( item->text() ) ), |
466 | tr( "Remove" ), tr( "Reinstall" ), this ); | 466 | tr( "Remove" ), tr( "Reinstall" ), this ); |
467 | if ( answer == 1 ) // Remove | 467 | if ( answer == 1 ) // Remove |
468 | { | 468 | { |
469 | if ( !removeList ) | 469 | if ( !removeList ) |
470 | removeList = new QStringList(); | 470 | removeList = new QStringList(); |
471 | removeList->append( item->text() ); | 471 | removeList->append( item->text() ); |
472 | } | 472 | } |
473 | else if ( answer == 2 ) // Reinstall | 473 | else if ( answer == 2 ) // Reinstall |
474 | { | 474 | { |
475 | if ( !installList ) | 475 | if ( !installList ) |
476 | installList = new QStringList(); | 476 | installList = new QStringList(); |
477 | installList->append( item->text() ); | 477 | installList->append( item->text() ); |
478 | } | 478 | } |
479 | } | 479 | } |
480 | } | 480 | } |
481 | else | 481 | else |
482 | { | 482 | { |
483 | // Install package | 483 | // Install package |
484 | if ( !installList ) | 484 | if ( !installList ) |
485 | installList = new QStringList(); | 485 | installList = new QStringList(); |
486 | installList->append( item->text() ); | 486 | installList->append( item->text() ); |
487 | } | 487 | } |
488 | } | 488 | } |
489 | } | 489 | } |
490 | } | 490 | } |
491 | 491 | ||
492 | // If nothing is selected, display message and exit | 492 | // If nothing is selected, display message and exit |
493 | if ( !removeList && !installList && !upgradeList ) | 493 | if ( !removeList && !installList && !upgradeList ) |
494 | { | 494 | { |
495 | QMessageBox::information( this, tr( "Nothing to do" ), tr( "No packages selected" ), tr( "OK" ) ); | 495 | QMessageBox::information( this, tr( "Nothing to do" ), tr( "No packages selected" ), tr( "OK" ) ); |
496 | return; | 496 | return; |
497 | } | 497 | } |
498 | 498 | ||
499 | // Send command only if there are packages to process | 499 | // Send command only if there are packages to process |
500 | OPackage::Command removeCmd = OPackage::NotDefined; | 500 | OPackage::Command removeCmd = OPackage::NotDefined; |
501 | if ( removeList && !removeList->isEmpty() ) | 501 | if ( removeList && !removeList->isEmpty() ) |
502 | removeCmd = OPackage::Remove; | 502 | removeCmd = OPackage::Remove; |
503 | OPackage::Command installCmd = OPackage::NotDefined; | 503 | OPackage::Command installCmd = OPackage::NotDefined; |
504 | if ( installList && !installList->isEmpty() ) | 504 | if ( installList && !installList->isEmpty() ) |
505 | installCmd = OPackage::Install; | 505 | installCmd = OPackage::Install; |
506 | OPackage::Command upgradeCmd = OPackage::NotDefined; | 506 | OPackage::Command upgradeCmd = OPackage::NotDefined; |
507 | if ( upgradeList && !upgradeList->isEmpty() ) | 507 | if ( upgradeList && !upgradeList->isEmpty() ) |
508 | upgradeCmd = OPackage::Upgrade; | 508 | upgradeCmd = OPackage::Upgrade; |
509 | 509 | ||
510 | // Create package manager output widget | 510 | // Create package manager output widget |
511 | InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Apply changes" ), true, | 511 | InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Apply changes" ), true, |
512 | removeCmd, removeList, | 512 | removeCmd, removeList, |
513 | installCmd, installList, | 513 | installCmd, installList, |
514 | upgradeCmd, upgradeList ); | 514 | upgradeCmd, upgradeList ); |
515 | connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseDlg()) ); | 515 | connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseDlg()) ); |
516 | 516 | ||
517 | // Display widget | 517 | // Display widget |
518 | m_widgetStack.addWidget( dlg, 3 ); | 518 | m_widgetStack.addWidget( dlg, 3 ); |
519 | m_widgetStack.raiseWidget( dlg ); | 519 | m_widgetStack.raiseWidget( dlg ); |
520 | } | 520 | } |
521 | 521 | ||
522 | void MainWindow::slotCloseDlg() | 522 | void MainWindow::slotCloseDlg() |
523 | { | 523 | { |
524 | // Close install dialog | 524 | // Close install dialog |
525 | delete m_widgetStack.visibleWidget(); | 525 | delete m_widgetStack.visibleWidget(); |
526 | 526 | ||
527 | // Reload package list | 527 | // Reload package list |
528 | initPackageInfo(); | 528 | initPackageInfo(); |
529 | 529 | ||
530 | // Update Opie launcher links | 530 | // Update Opie launcher links |
531 | QCopEnvelope e("QPE/System", "linkChanged(QString)"); | 531 | QCopEnvelope e("QPE/System", "linkChanged(QString)"); |
532 | QString lf = QString::null; | 532 | QString lf = QString::null; |
533 | e << lf; | 533 | e << lf; |
534 | } | 534 | } |
535 | 535 | ||
536 | void MainWindow::slotConfigure() | 536 | void MainWindow::slotConfigure() |
537 | { | 537 | { |
538 | if ( m_packman.configureDlg( false ) ) | 538 | if ( m_packman.configureDlg( false ) ) |
539 | { | 539 | { |
540 | if ( PromptDlg::ask( tr( "Config updated" ), | 540 | if ( PromptDlg::ask( tr( "Config updated" ), |
541 | tr( "The configuration has been updated. Do you want to update server and package information now?" ), | 541 | tr( "The configuration has been updated. Do you want to update server and package information now?" ), |
542 | tr( "Yes" ), tr( "No" ), this ) == 1 ) | 542 | tr( "Yes" ), tr( "No" ), this ) == 1 ) |
543 | { | 543 | { |
544 | // Update package list and reload package info | 544 | // Update package list and reload package info |
545 | slotUpdate(); | 545 | slotUpdate(); |
546 | } | 546 | } |
547 | } | 547 | } |
548 | } | 548 | } |
549 | 549 | ||
550 | void MainWindow::slotShowNotInstalled() | 550 | void MainWindow::slotShowNotInstalled() |
551 | { | 551 | { |
552 | OPackageList *packageList; | 552 | OPackageList *packageList; |
553 | if ( m_actionShowNotInstalled->isOn() ) | 553 | if ( m_actionShowNotInstalled->isOn() ) |
554 | { | 554 | { |
555 | m_actionShowInstalled->setOn( false ); | 555 | m_actionShowInstalled->setOn( false ); |
556 | m_actionShowUpdated->setOn( false ); | 556 | m_actionShowUpdated->setOn( false ); |
557 | packageList = m_packman.filterPackages( QString::null, QString::null, QString::null, | 557 | packageList = m_packman.filterPackages( QString::null, QString::null, QString::null, |
558 | OPackageManager::NotInstalled, QString::null ); | 558 | OPackageManager::NotInstalled, QString::null ); |
559 | } | 559 | } |
560 | else | 560 | else |
561 | packageList = m_packman.packages(); | 561 | packageList = m_packman.packages(); |
562 | 562 | ||
563 | if ( packageList ) | 563 | if ( packageList ) |
564 | { | 564 | { |
565 | loadPackageList( packageList, true ); | 565 | loadPackageList( packageList, true ); |
566 | delete packageList; | 566 | delete packageList; |
567 | } | 567 | } |
568 | } | 568 | } |
569 | 569 | ||
570 | void MainWindow::slotShowInstalled() | 570 | void MainWindow::slotShowInstalled() |
571 | { | 571 | { |
572 | OPackageList *packageList; | 572 | OPackageList *packageList; |
573 | if ( m_actionShowInstalled->isOn() ) | 573 | if ( m_actionShowInstalled->isOn() ) |
574 | { | 574 | { |
575 | m_actionShowNotInstalled->setOn( false ); | 575 | m_actionShowNotInstalled->setOn( false ); |
576 | m_actionShowUpdated->setOn( false ); | 576 | m_actionShowUpdated->setOn( false ); |
577 | packageList = m_packman.filterPackages( QString::null, QString::null, QString::null, | 577 | packageList = m_packman.filterPackages( QString::null, QString::null, QString::null, |
578 | OPackageManager::Installed, QString::null ); | 578 | OPackageManager::Installed, QString::null ); |
579 | } | 579 | } |
580 | else | 580 | else |
581 | packageList = m_packman.packages(); | 581 | packageList = m_packman.packages(); |
582 | 582 | ||
583 | if ( packageList ) | 583 | if ( packageList ) |
584 | { | 584 | { |
585 | loadPackageList( packageList, true ); | 585 | loadPackageList( packageList, true ); |
586 | delete packageList; | 586 | delete packageList; |
587 | } | 587 | } |
588 | } | 588 | } |
589 | 589 | ||
590 | void MainWindow::slotShowUpdated() | 590 | void MainWindow::slotShowUpdated() |
591 | { | 591 | { |
592 | OPackageList *packageList; | 592 | OPackageList *packageList; |
593 | if ( m_actionShowUpdated->isOn() ) | 593 | if ( m_actionShowUpdated->isOn() ) |
594 | { | 594 | { |
595 | m_actionShowInstalled->setOn( false ); | 595 | m_actionShowInstalled->setOn( false ); |
596 | m_actionShowNotInstalled->setOn( false ); | 596 | m_actionShowNotInstalled->setOn( false ); |
597 | packageList = m_packman.filterPackages( QString::null, QString::null, QString::null, | 597 | packageList = m_packman.filterPackages( QString::null, QString::null, QString::null, |
598 | OPackageManager::Updated, QString::null ); | 598 | OPackageManager::Updated, QString::null ); |
599 | } | 599 | } |
600 | else | 600 | else |
601 | packageList = m_packman.packages(); | 601 | packageList = m_packman.packages(); |
602 | 602 | ||
603 | if ( packageList ) | 603 | if ( packageList ) |
604 | { | 604 | { |
605 | loadPackageList( packageList, true ); | 605 | loadPackageList( packageList, true ); |
606 | delete packageList; | 606 | delete packageList; |
607 | } | 607 | } |
608 | } | 608 | } |
609 | 609 | ||
610 | void MainWindow::slotFilterChange() | 610 | void MainWindow::slotFilterChange() |
611 | { | 611 | { |
612 | FilterDlg dlg( this, &m_packman, m_filterName, m_filterServer, m_filterDest, m_filterStatus, | 612 | FilterDlg dlg( this, &m_packman, m_filterName, m_filterServer, m_filterDest, m_filterStatus, |
613 | m_filterCategory ); | 613 | m_filterCategory ); |
614 | if ( dlg.exec() == QDialog::Accepted ) | 614 | if ( QPEApplication::execDialog( &dlg ) == QDialog::Accepted ) |
615 | { | 615 | { |
616 | m_filterName = dlg.name(); | 616 | m_filterName = dlg.name(); |
617 | m_filterServer = dlg.server(); | 617 | m_filterServer = dlg.server(); |
618 | m_filterDest = dlg.destination(); | 618 | m_filterDest = dlg.destination(); |
619 | m_filterStatus = dlg.status(); | 619 | m_filterStatus = dlg.status(); |
620 | m_filterCategory = dlg.category(); | 620 | m_filterCategory = dlg.category(); |
621 | m_actionFilter->setOn( true ); | 621 | m_actionFilter->setOn( true ); |
622 | slotFilter( true ); | 622 | slotFilter( true ); |
623 | } | 623 | } |
624 | else | 624 | else |
625 | { | 625 | { |
626 | m_actionFilter->setOn( false ); | 626 | m_actionFilter->setOn( false ); |
627 | slotFilter( false ); | 627 | slotFilter( false ); |
628 | } | 628 | } |
629 | } | 629 | } |
630 | 630 | ||
631 | void MainWindow::slotFilter( bool isOn ) | 631 | void MainWindow::slotFilter( bool isOn ) |
632 | { | 632 | { |
633 | OPackageList *packageList; | 633 | OPackageList *packageList; |
634 | if ( isOn ) | 634 | if ( isOn ) |
635 | { | 635 | { |
636 | packageList = m_packman.filterPackages( m_filterName, m_filterServer, m_filterDest, | 636 | packageList = m_packman.filterPackages( m_filterName, m_filterServer, m_filterDest, |
637 | m_filterStatus, m_filterCategory ); | 637 | m_filterStatus, m_filterCategory ); |
638 | } | 638 | } |
639 | else | 639 | else |
640 | packageList = m_packman.packages(); | 640 | packageList = m_packman.packages(); |
641 | 641 | ||
642 | if ( packageList ) | 642 | if ( packageList ) |
643 | { | 643 | { |
644 | loadPackageList( packageList, true ); | 644 | loadPackageList( packageList, true ); |
645 | delete packageList; | 645 | delete packageList; |
646 | } | 646 | } |
647 | } | 647 | } |
648 | 648 | ||
649 | void MainWindow::slotFindShowToolbar() | 649 | void MainWindow::slotFindShowToolbar() |
650 | { | 650 | { |
651 | m_findBar.show(); | 651 | m_findBar.show(); |
652 | m_findEdit->setFocus(); | 652 | m_findEdit->setFocus(); |
653 | } | 653 | } |
654 | 654 | ||
655 | void MainWindow::slotFindHideToolbar() | 655 | void MainWindow::slotFindHideToolbar() |
656 | { | 656 | { |
657 | m_findBar.hide(); | 657 | m_findBar.hide(); |
658 | } | 658 | } |
659 | 659 | ||
660 | void MainWindow::slotFindChanged( const QString &findText ) | 660 | void MainWindow::slotFindChanged( const QString &findText ) |
661 | { | 661 | { |
662 | 662 | ||
663 | m_actionFindNext->setEnabled( !findText.isEmpty() ); | 663 | m_actionFindNext->setEnabled( !findText.isEmpty() ); |
664 | searchForPackage( findText ); | 664 | searchForPackage( findText ); |
665 | } | 665 | } |
666 | 666 | ||
667 | void MainWindow::slotFindNext() | 667 | void MainWindow::slotFindNext() |
668 | { | 668 | { |
669 | searchForPackage( m_findEdit->text() ); | 669 | searchForPackage( m_findEdit->text() ); |
670 | } | 670 | } |
671 | 671 | ||
672 | void MainWindow::slotDisplayPackageInfo( QListViewItem *packageItem ) | 672 | void MainWindow::slotDisplayPackageInfo( QListViewItem *packageItem ) |
673 | { | 673 | { |
674 | QString packageName( ( static_cast<QCheckListItem*>( packageItem ) )->text() ); | 674 | QString packageName( ( static_cast<QCheckListItem*>( packageItem ) )->text() ); |
675 | 675 | ||
676 | // Create package manager output widget | 676 | // Create package manager output widget |
677 | PackageInfoDlg *dlg = new PackageInfoDlg( this, &m_packman, packageName ); | 677 | PackageInfoDlg *dlg = new PackageInfoDlg( this, &m_packman, packageName ); |
678 | 678 | ||
679 | // Display widget | 679 | // Display widget |
680 | m_widgetStack.addWidget( dlg, 3 ); | 680 | m_widgetStack.addWidget( dlg, 3 ); |
681 | m_widgetStack.raiseWidget( dlg ); | 681 | m_widgetStack.raiseWidget( dlg ); |
682 | } | 682 | } |
diff --git a/noncore/settings/packagemanager/oipkgconfigdlg.cpp b/noncore/settings/packagemanager/oipkgconfigdlg.cpp index e335f8f..84c6de4 100644 --- a/noncore/settings/packagemanager/oipkgconfigdlg.cpp +++ b/noncore/settings/packagemanager/oipkgconfigdlg.cpp | |||
@@ -1,278 +1,278 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of the Opie Project | 2 | This file is part of the Opie Project |
3 | 3 | ||
4 | Copyright (c) 2003 Dan Williams <drw@handhelds.org> | 4 | Copyright (c) 2003 Dan Williams <drw@handhelds.org> |
5 | =. | 5 | =. |
6 | .=l. | 6 | .=l. |
7 | .>+-= | 7 | .>+-= |
8 | _;:, .> :=|. This program is free software; you can | 8 | _;:, .> :=|. This program is free software; you can |
9 | .> <`_, > . <= redistribute it and/or modify it under | 9 | .> <`_, > . <= redistribute it and/or modify it under |
10 | :`=1 )Y*s>-.-- : the terms of the GNU Library General Public | 10 | :`=1 )Y*s>-.-- : the terms of the GNU Library General Public |
11 | .="- .-=="i, .._ License as published by the Free Software | 11 | .="- .-=="i, .._ License as published by the Free Software |
12 | - . .-<_> .<> Foundation; either version 2 of the License, | 12 | - . .-<_> .<> Foundation; either version 2 of the License, |
13 | ._= =} : or (at your option) any later version. | 13 | ._= =} : or (at your option) any later version. |
14 | .%`+i> _;_. | 14 | .%`+i> _;_. |
15 | .i_,=:_. -<s. This program is distributed in the hope that | 15 | .i_,=:_. -<s. This program is distributed in the hope that |
16 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; | 16 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; |
17 | : .. .:, . . . without even the implied warranty of | 17 | : .. .:, . . . without even the implied warranty of |
18 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 18 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
19 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU | 19 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU |
20 | ..}^=.= = ; Library General Public License for more | 20 | ..}^=.= = ; Library General Public License for more |
21 | ++= -. .` .: details. | 21 | ++= -. .` .: details. |
22 | : = ...= . :.=- | 22 | : = ...= . :.=- |
23 | -. .:....=;==+<; You should have received a copy of the GNU | 23 | -. .:....=;==+<; You should have received a copy of the GNU |
24 | -_. . . )=. = Library General Public License along with | 24 | -_. . . )=. = Library General Public License along with |
25 | -- :-=` this library; see the file COPYING.LIB. | 25 | -- :-=` this library; see the file COPYING.LIB. |
26 | If not, write to the Free Software Foundation, | 26 | If not, write to the Free Software Foundation, |
27 | Inc., 59 Temple Place - Suite 330, | 27 | Inc., 59 Temple Place - Suite 330, |
28 | Boston, MA 02111-1307, USA. | 28 | Boston, MA 02111-1307, USA. |
29 | 29 | ||
30 | */ | 30 | */ |
31 | 31 | ||
32 | #include "oipkgconfigdlg.h" | 32 | #include "oipkgconfigdlg.h" |
33 | 33 | ||
34 | #include <qcheckbox.h> | 34 | #include <qcheckbox.h> |
35 | #include <qcombobox.h> | 35 | #include <qcombobox.h> |
36 | #include <qgroupbox.h> | 36 | #include <qgroupbox.h> |
37 | #include <qlabel.h> | 37 | #include <qlabel.h> |
38 | #include <qlineedit.h> | 38 | #include <qlineedit.h> |
39 | #include <qlistbox.h> | 39 | #include <qlistbox.h> |
40 | #include <qpushbutton.h> | 40 | #include <qpushbutton.h> |
41 | #include <qscrollview.h> | 41 | #include <qscrollview.h> |
42 | 42 | ||
43 | #include <qpe/resource.h> | 43 | #include <qpe/resource.h> |
44 | 44 | ||
45 | OIpkgConfigDlg::OIpkgConfigDlg( OIpkg *ipkg, bool installOptions, QWidget *parent ) | 45 | OIpkgConfigDlg::OIpkgConfigDlg( OIpkg *ipkg, bool installOptions, QWidget *parent ) |
46 | : QDialog( parent, QString::null, true ) | 46 | : QDialog( parent, QString::null, true ) |
47 | , m_ipkg( ipkg ) | 47 | , m_ipkg( ipkg ) |
48 | , m_configs( 0x0 ) | 48 | , m_configs( 0x0 ) |
49 | , m_installOptions( installOptions ) | 49 | , m_installOptions( installOptions ) |
50 | , m_serverNew( false ) | 50 | , m_serverNew( false ) |
51 | , m_serverCurrent( -1 ) | 51 | , m_serverCurrent( -1 ) |
52 | , m_destNew( false ) | 52 | , m_destNew( false ) |
53 | , m_destCurrent( -1 ) | 53 | , m_destCurrent( -1 ) |
54 | , m_layout( this, 2, 4 ) | 54 | , m_layout( this, 2, 4 ) |
55 | , m_tabWidget( this ) | 55 | , m_tabWidget( this ) |
56 | { | 56 | { |
57 | setCaption( tr( "Configuration" ) ); | 57 | setCaption( tr( "Configuration" ) ); |
58 | 58 | ||
59 | // Initialize configuration widgets | 59 | // Initialize configuration widgets |
60 | if ( !installOptions ) | 60 | if ( !installOptions ) |
61 | { | 61 | { |
62 | initServerWidget(); | 62 | initServerWidget(); |
63 | initDestinationWidget(); | 63 | initDestinationWidget(); |
64 | initProxyWidget(); | 64 | initProxyWidget(); |
65 | } | 65 | } |
66 | initOptionsWidget(); | 66 | initOptionsWidget(); |
67 | 67 | ||
68 | // Load configuration information | 68 | // Load configuration information |
69 | initData(); | 69 | initData(); |
70 | 70 | ||
71 | // Setup tabs for all info | 71 | // Setup tabs for all info |
72 | m_layout.addWidget( &m_tabWidget ); | 72 | m_layout.addWidget( &m_tabWidget ); |
73 | if ( !m_installOptions ) | 73 | if ( !m_installOptions ) |
74 | { | 74 | { |
75 | m_tabWidget.addTab( m_serverWidget, "packagemanager/servertab", tr( "Servers" ) ); | 75 | m_tabWidget.addTab( m_serverWidget, "packagemanager/servertab", tr( "Servers" ) ); |
76 | m_tabWidget.addTab( m_destWidget, "packagemanager/desttab", tr( "Destinations" ) ); | 76 | m_tabWidget.addTab( m_destWidget, "packagemanager/desttab", tr( "Destinations" ) ); |
77 | m_tabWidget.addTab( m_proxyWidget, "packagemanager/proxytab", tr( "Proxies" ) ); | 77 | m_tabWidget.addTab( m_proxyWidget, "packagemanager/proxytab", tr( "Proxies" ) ); |
78 | m_tabWidget.addTab( m_optionsWidget, "exec", tr( "Options" ) ); | 78 | m_tabWidget.addTab( m_optionsWidget, "exec", tr( "Options" ) ); |
79 | m_tabWidget.setCurrentTab( tr( "Servers" ) ); | 79 | m_tabWidget.setCurrentTab( tr( "Servers" ) ); |
80 | } | 80 | } |
81 | else | 81 | else |
82 | { | 82 | { |
83 | m_tabWidget.addTab( m_optionsWidget, "exec", tr( "Options" ) ); | 83 | m_tabWidget.addTab( m_optionsWidget, "exec", tr( "Options" ) ); |
84 | } | 84 | } |
85 | 85 | ||
86 | showMaximized(); | 86 | //showMaximized(); |
87 | } | 87 | } |
88 | 88 | ||
89 | void OIpkgConfigDlg::accept() | 89 | void OIpkgConfigDlg::accept() |
90 | { | 90 | { |
91 | // Save server, destination and proxy configuration | 91 | // Save server, destination and proxy configuration |
92 | if ( !m_installOptions ) | 92 | if ( !m_installOptions ) |
93 | m_ipkg->setConfigItems( m_configs ); | 93 | m_ipkg->setConfigItems( m_configs ); |
94 | 94 | ||
95 | // Save options configuration | 95 | // Save options configuration |
96 | int options = 0; | 96 | int options = 0; |
97 | if ( m_optForceDepends->isChecked() ) | 97 | if ( m_optForceDepends->isChecked() ) |
98 | options |= FORCE_DEPENDS; | 98 | options |= FORCE_DEPENDS; |
99 | if ( m_optForceReinstall->isChecked() ) | 99 | if ( m_optForceReinstall->isChecked() ) |
100 | options |= FORCE_REINSTALL; | 100 | options |= FORCE_REINSTALL; |
101 | if ( m_optForceRemove->isChecked() ) | 101 | if ( m_optForceRemove->isChecked() ) |
102 | options |= FORCE_REMOVE; | 102 | options |= FORCE_REMOVE; |
103 | if ( m_optForceOverwrite->isChecked() ) | 103 | if ( m_optForceOverwrite->isChecked() ) |
104 | options |= FORCE_OVERWRITE; | 104 | options |= FORCE_OVERWRITE; |
105 | m_ipkg->setIpkgExecOptions( options ); | 105 | m_ipkg->setIpkgExecOptions( options ); |
106 | m_ipkg->setIpkgExecVerbosity( m_optVerboseIpkg->currentItem() ); | 106 | m_ipkg->setIpkgExecVerbosity( m_optVerboseIpkg->currentItem() ); |
107 | 107 | ||
108 | QDialog::accept(); | 108 | QDialog::accept(); |
109 | } | 109 | } |
110 | 110 | ||
111 | void OIpkgConfigDlg::reject() | 111 | void OIpkgConfigDlg::reject() |
112 | { | 112 | { |
113 | if ( m_configs ) | 113 | if ( m_configs ) |
114 | delete m_configs; | 114 | delete m_configs; |
115 | } | 115 | } |
116 | 116 | ||
117 | void OIpkgConfigDlg::initServerWidget() | 117 | void OIpkgConfigDlg::initServerWidget() |
118 | { | 118 | { |
119 | m_serverWidget = new QWidget( this ); | 119 | m_serverWidget = new QWidget( this ); |
120 | 120 | ||
121 | // Initialize UI | 121 | // Initialize UI |
122 | QVBoxLayout *vb = new QVBoxLayout( m_serverWidget ); | 122 | QVBoxLayout *vb = new QVBoxLayout( m_serverWidget ); |
123 | QScrollView *sv = new QScrollView( m_serverWidget ); | 123 | QScrollView *sv = new QScrollView( m_serverWidget ); |
124 | vb->addWidget( sv, 0, 0 ); | 124 | vb->addWidget( sv, 0, 0 ); |
125 | sv->setResizePolicy( QScrollView::AutoOneFit ); | 125 | sv->setResizePolicy( QScrollView::AutoOneFit ); |
126 | sv->setFrameStyle( QFrame::NoFrame ); | 126 | sv->setFrameStyle( QFrame::NoFrame ); |
127 | QWidget *container = new QWidget( sv->viewport() ); | 127 | QWidget *container = new QWidget( sv->viewport() ); |
128 | sv->addChild( container ); | 128 | sv->addChild( container ); |
129 | QGridLayout *layout = new QGridLayout( container, 3, 2, 2, 4 ); | 129 | QGridLayout *layout = new QGridLayout( container, 3, 2, 2, 4 ); |
130 | 130 | ||
131 | m_serverList = new QListBox( container ); | 131 | m_serverList = new QListBox( container ); |
132 | m_serverList->setSizePolicy( QSizePolicy( QSizePolicy::Preferred, QSizePolicy::Preferred ) ); | 132 | m_serverList->setSizePolicy( QSizePolicy( QSizePolicy::Preferred, QSizePolicy::Preferred ) ); |
133 | connect( m_serverList, SIGNAL(highlighted(int)), this, SLOT(slotServerEdit(int)) ); | 133 | connect( m_serverList, SIGNAL(highlighted(int)), this, SLOT(slotServerEdit(int)) ); |
134 | layout->addMultiCellWidget( m_serverList, 0, 0, 0, 1 ); | 134 | layout->addMultiCellWidget( m_serverList, 0, 0, 0, 1 ); |
135 | 135 | ||
136 | QPushButton *btn = new QPushButton( Resource::loadPixmap( "new" ), tr( "New" ), container ); | 136 | QPushButton *btn = new QPushButton( Resource::loadPixmap( "new" ), tr( "New" ), container ); |
137 | connect( btn, SIGNAL(clicked()), this, SLOT(slotServerNew()) ); | 137 | connect( btn, SIGNAL(clicked()), this, SLOT(slotServerNew()) ); |
138 | layout->addWidget( btn, 1, 0 ); | 138 | layout->addWidget( btn, 1, 0 ); |
139 | 139 | ||
140 | btn = new QPushButton( Resource::loadPixmap( "trash" ), tr( "Delete" ), container ); | 140 | btn = new QPushButton( Resource::loadPixmap( "trash" ), tr( "Delete" ), container ); |
141 | connect( btn, SIGNAL(clicked()), this, SLOT(slotServerDelete()) ); | 141 | connect( btn, SIGNAL(clicked()), this, SLOT(slotServerDelete()) ); |
142 | layout->addWidget( btn, 1, 1 ); | 142 | layout->addWidget( btn, 1, 1 ); |
143 | 143 | ||
144 | QGroupBox *grpbox = new QGroupBox( 0, Qt::Vertical, tr( "Server" ), container ); | 144 | QGroupBox *grpbox = new QGroupBox( 0, Qt::Vertical, tr( "Server" ), container ); |
145 | grpbox->layout()->setSpacing( 2 ); | 145 | grpbox->layout()->setSpacing( 2 ); |
146 | grpbox->layout()->setMargin( 4 ); | 146 | grpbox->layout()->setMargin( 4 ); |
147 | layout->addMultiCellWidget( grpbox, 2, 2, 0, 1 ); | 147 | layout->addMultiCellWidget( grpbox, 2, 2, 0, 1 ); |
148 | 148 | ||
149 | QGridLayout *grplayout = new QGridLayout( grpbox->layout() ); | 149 | QGridLayout *grplayout = new QGridLayout( grpbox->layout() ); |
150 | 150 | ||
151 | QLabel *label = new QLabel( tr( "Name:" ), grpbox ); | 151 | QLabel *label = new QLabel( tr( "Name:" ), grpbox ); |
152 | grplayout->addWidget( label, 0, 0 ); | 152 | grplayout->addWidget( label, 0, 0 ); |
153 | m_serverName = new QLineEdit( grpbox ); | 153 | m_serverName = new QLineEdit( grpbox ); |
154 | grplayout->addWidget( m_serverName, 0, 1 ); | 154 | grplayout->addWidget( m_serverName, 0, 1 ); |
155 | 155 | ||
156 | label = new QLabel( tr( "Address:" ), grpbox ); | 156 | label = new QLabel( tr( "Address:" ), grpbox ); |
157 | grplayout->addWidget( label, 1, 0 ); | 157 | grplayout->addWidget( label, 1, 0 ); |
158 | m_serverLocation = new QLineEdit( grpbox ); | 158 | m_serverLocation = new QLineEdit( grpbox ); |
159 | grplayout->addWidget( m_serverLocation, 1, 1 ); | 159 | grplayout->addWidget( m_serverLocation, 1, 1 ); |
160 | 160 | ||
161 | m_serverActive = new QCheckBox( tr( "Active Server" ), grpbox ); | 161 | m_serverActive = new QCheckBox( tr( "Active Server" ), grpbox ); |
162 | grplayout->addMultiCellWidget( m_serverActive, 2, 2, 0, 1 ); | 162 | grplayout->addMultiCellWidget( m_serverActive, 2, 2, 0, 1 ); |
163 | 163 | ||
164 | btn = new QPushButton( Resource::loadPixmap( "edit" ), tr( "Update" ), grpbox ); | 164 | btn = new QPushButton( Resource::loadPixmap( "edit" ), tr( "Update" ), grpbox ); |
165 | connect( btn, SIGNAL(clicked()), this, SLOT(slotServerUpdate()) ); | 165 | connect( btn, SIGNAL(clicked()), this, SLOT(slotServerUpdate()) ); |
166 | grplayout->addMultiCellWidget( btn, 3, 3, 0, 1 ); | 166 | grplayout->addMultiCellWidget( btn, 3, 3, 0, 1 ); |
167 | } | 167 | } |
168 | 168 | ||
169 | void OIpkgConfigDlg::initDestinationWidget() | 169 | void OIpkgConfigDlg::initDestinationWidget() |
170 | { | 170 | { |
171 | m_destWidget = new QWidget( this ); | 171 | m_destWidget = new QWidget( this ); |
172 | 172 | ||
173 | // Initialize UI | 173 | // Initialize UI |
174 | QVBoxLayout *vb = new QVBoxLayout( m_destWidget ); | 174 | QVBoxLayout *vb = new QVBoxLayout( m_destWidget ); |
175 | QScrollView *sv = new QScrollView( m_destWidget ); | 175 | QScrollView *sv = new QScrollView( m_destWidget ); |
176 | vb->addWidget( sv, 0, 0 ); | 176 | vb->addWidget( sv, 0, 0 ); |
177 | sv->setResizePolicy( QScrollView::AutoOneFit ); | 177 | sv->setResizePolicy( QScrollView::AutoOneFit ); |
178 | sv->setFrameStyle( QFrame::NoFrame ); | 178 | sv->setFrameStyle( QFrame::NoFrame ); |
179 | QWidget *container = new QWidget( sv->viewport() ); | 179 | QWidget *container = new QWidget( sv->viewport() ); |
180 | sv->addChild( container ); | 180 | sv->addChild( container ); |
181 | QGridLayout *layout = new QGridLayout( container, 3, 2, 2, 4 ); | 181 | QGridLayout *layout = new QGridLayout( container, 3, 2, 2, 4 ); |
182 | 182 | ||
183 | m_destList = new QListBox( container ); | 183 | m_destList = new QListBox( container ); |
184 | m_destList->setSizePolicy( QSizePolicy( QSizePolicy::Preferred, QSizePolicy::Preferred ) ); | 184 | m_destList->setSizePolicy( QSizePolicy( QSizePolicy::Preferred, QSizePolicy::Preferred ) ); |
185 | connect( m_destList, SIGNAL(highlighted(int)), this, SLOT(slotDestEdit(int)) ); | 185 | connect( m_destList, SIGNAL(highlighted(int)), this, SLOT(slotDestEdit(int)) ); |
186 | layout->addMultiCellWidget( m_destList, 0, 0, 0, 1 ); | 186 | layout->addMultiCellWidget( m_destList, 0, 0, 0, 1 ); |
187 | 187 | ||
188 | QPushButton *btn = new QPushButton( Resource::loadPixmap( "new" ), tr( "New" ), container ); | 188 | QPushButton *btn = new QPushButton( Resource::loadPixmap( "new" ), tr( "New" ), container ); |
189 | connect( btn, SIGNAL(clicked()), this, SLOT(slotDestNew()) ); | 189 | connect( btn, SIGNAL(clicked()), this, SLOT(slotDestNew()) ); |
190 | layout->addWidget( btn, 1, 0 ); | 190 | layout->addWidget( btn, 1, 0 ); |
191 | 191 | ||
192 | btn = new QPushButton( Resource::loadPixmap( "trash" ), tr( "Delete" ), container ); | 192 | btn = new QPushButton( Resource::loadPixmap( "trash" ), tr( "Delete" ), container ); |
193 | connect( btn, SIGNAL(clicked()), this, SLOT(slotDestDelete()) ); | 193 | connect( btn, SIGNAL(clicked()), this, SLOT(slotDestDelete()) ); |
194 | layout->addWidget( btn, 1, 1 ); | 194 | layout->addWidget( btn, 1, 1 ); |
195 | 195 | ||
196 | QGroupBox *grpbox = new QGroupBox( 0, Qt::Vertical, tr( "Server" ), container ); | 196 | QGroupBox *grpbox = new QGroupBox( 0, Qt::Vertical, tr( "Server" ), container ); |
197 | grpbox->layout()->setSpacing( 2 ); | 197 | grpbox->layout()->setSpacing( 2 ); |
198 | grpbox->layout()->setMargin( 4 ); | 198 | grpbox->layout()->setMargin( 4 ); |
199 | layout->addMultiCellWidget( grpbox, 2, 2, 0, 1 ); | 199 | layout->addMultiCellWidget( grpbox, 2, 2, 0, 1 ); |
200 | 200 | ||
201 | QGridLayout *grplayout = new QGridLayout( grpbox->layout() ); | 201 | QGridLayout *grplayout = new QGridLayout( grpbox->layout() ); |
202 | 202 | ||
203 | QLabel *label = new QLabel( tr( "Name:" ), grpbox ); | 203 | QLabel *label = new QLabel( tr( "Name:" ), grpbox ); |
204 | grplayout->addWidget( label, 0, 0 ); | 204 | grplayout->addWidget( label, 0, 0 ); |
205 | m_destName = new QLineEdit( grpbox ); | 205 | m_destName = new QLineEdit( grpbox ); |
206 | grplayout->addWidget( m_destName, 0, 1 ); | 206 | grplayout->addWidget( m_destName, 0, 1 ); |
207 | 207 | ||
208 | label = new QLabel( tr( "Address:" ), grpbox ); | 208 | label = new QLabel( tr( "Address:" ), grpbox ); |
209 | grplayout->addWidget( label, 1, 0 ); | 209 | grplayout->addWidget( label, 1, 0 ); |
210 | m_destLocation = new QLineEdit( grpbox ); | 210 | m_destLocation = new QLineEdit( grpbox ); |
211 | grplayout->addWidget( m_destLocation, 1, 1 ); | 211 | grplayout->addWidget( m_destLocation, 1, 1 ); |
212 | 212 | ||
213 | m_destActive = new QCheckBox( tr( "Active Server" ), grpbox ); | 213 | m_destActive = new QCheckBox( tr( "Active Server" ), grpbox ); |
214 | grplayout->addMultiCellWidget( m_destActive, 2, 2, 0, 1 ); | 214 | grplayout->addMultiCellWidget( m_destActive, 2, 2, 0, 1 ); |
215 | 215 | ||
216 | btn = new QPushButton( Resource::loadPixmap( "edit" ), tr( "Update" ), grpbox ); | 216 | btn = new QPushButton( Resource::loadPixmap( "edit" ), tr( "Update" ), grpbox ); |
217 | connect( btn, SIGNAL(clicked()), this, SLOT(slotDestUpdate()) ); | 217 | connect( btn, SIGNAL(clicked()), this, SLOT(slotDestUpdate()) ); |
218 | grplayout->addMultiCellWidget( btn, 3, 3, 0, 1 ); | 218 | grplayout->addMultiCellWidget( btn, 3, 3, 0, 1 ); |
219 | } | 219 | } |
220 | 220 | ||
221 | void OIpkgConfigDlg::initProxyWidget() | 221 | void OIpkgConfigDlg::initProxyWidget() |
222 | { | 222 | { |
223 | m_proxyWidget = new QWidget( this ); | 223 | m_proxyWidget = new QWidget( this ); |
224 | 224 | ||
225 | // Initialize UI | 225 | // Initialize UI |
226 | QVBoxLayout *vb = new QVBoxLayout( m_proxyWidget ); | 226 | QVBoxLayout *vb = new QVBoxLayout( m_proxyWidget ); |
227 | QScrollView *sv = new QScrollView( m_proxyWidget ); | 227 | QScrollView *sv = new QScrollView( m_proxyWidget ); |
228 | vb->addWidget( sv, 0, 0 ); | 228 | vb->addWidget( sv, 0, 0 ); |
229 | sv->setResizePolicy( QScrollView::AutoOneFit ); | 229 | sv->setResizePolicy( QScrollView::AutoOneFit ); |
230 | sv->setFrameStyle( QFrame::NoFrame ); | 230 | sv->setFrameStyle( QFrame::NoFrame ); |
231 | QWidget *container = new QWidget( sv->viewport() ); | 231 | QWidget *container = new QWidget( sv->viewport() ); |
232 | sv->addChild( container ); | 232 | sv->addChild( container ); |
233 | QGridLayout *layout = new QGridLayout( container, 4, 2, 2, 4 ); | 233 | QGridLayout *layout = new QGridLayout( container, 4, 2, 2, 4 ); |
234 | 234 | ||
235 | // HTTP proxy server configuration | 235 | // HTTP proxy server configuration |
236 | QGroupBox *grpbox = new QGroupBox( 0, Qt::Vertical, tr( "HTTP Proxy" ), container ); | 236 | QGroupBox *grpbox = new QGroupBox( 0, Qt::Vertical, tr( "HTTP Proxy" ), container ); |
237 | grpbox->layout()->setSpacing( 2 ); | 237 | grpbox->layout()->setSpacing( 2 ); |
238 | grpbox->layout()->setMargin( 4 ); | 238 | grpbox->layout()->setMargin( 4 ); |
239 | layout->addMultiCellWidget( grpbox, 0, 0, 0, 1 ); | 239 | layout->addMultiCellWidget( grpbox, 0, 0, 0, 1 ); |
240 | QVBoxLayout *grplayout = new QVBoxLayout( grpbox->layout() ); | 240 | QVBoxLayout *grplayout = new QVBoxLayout( grpbox->layout() ); |
241 | m_proxyHttpServer = new QLineEdit( grpbox ); | 241 | m_proxyHttpServer = new QLineEdit( grpbox ); |
242 | grplayout->addWidget( m_proxyHttpServer ); | 242 | grplayout->addWidget( m_proxyHttpServer ); |
243 | m_proxyHttpActive = new QCheckBox( tr( "Enabled" ), grpbox ); | 243 | m_proxyHttpActive = new QCheckBox( tr( "Enabled" ), grpbox ); |
244 | grplayout->addWidget( m_proxyHttpActive ); | 244 | grplayout->addWidget( m_proxyHttpActive ); |
245 | 245 | ||
246 | // FTP proxy server configuration | 246 | // FTP proxy server configuration |
247 | grpbox = new QGroupBox( 0, Qt::Vertical, tr( "FTP Proxy" ), container ); | 247 | grpbox = new QGroupBox( 0, Qt::Vertical, tr( "FTP Proxy" ), container ); |
248 | grpbox->layout()->setSpacing( 2 ); | 248 | grpbox->layout()->setSpacing( 2 ); |
249 | grpbox->layout()->setMargin( 4 ); | 249 | grpbox->layout()->setMargin( 4 ); |
250 | layout->addMultiCellWidget( grpbox, 1, 1, 0, 1 ); | 250 | layout->addMultiCellWidget( grpbox, 1, 1, 0, 1 ); |
251 | grplayout = new QVBoxLayout( grpbox->layout() ); | 251 | grplayout = new QVBoxLayout( grpbox->layout() ); |
252 | m_proxyFtpServer = new QLineEdit( grpbox ); | 252 | m_proxyFtpServer = new QLineEdit( grpbox ); |
253 | grplayout->addWidget( m_proxyFtpServer ); | 253 | grplayout->addWidget( m_proxyFtpServer ); |
254 | m_proxyFtpActive = new QCheckBox( tr( "Enabled" ), grpbox ); | 254 | m_proxyFtpActive = new QCheckBox( tr( "Enabled" ), grpbox ); |
255 | grplayout->addWidget( m_proxyFtpActive ); | 255 | grplayout->addWidget( m_proxyFtpActive ); |
256 | 256 | ||
257 | // Proxy server username and password configuration | 257 | // Proxy server username and password configuration |
258 | QLabel *label = new QLabel( tr( "Username:" ), container ); | 258 | QLabel *label = new QLabel( tr( "Username:" ), container ); |
259 | layout->addWidget( label, 2, 0 ); | 259 | layout->addWidget( label, 2, 0 ); |
260 | m_proxyUsername = new QLineEdit( container ); | 260 | m_proxyUsername = new QLineEdit( container ); |
261 | layout->addWidget( m_proxyUsername, 2, 1 ); | 261 | layout->addWidget( m_proxyUsername, 2, 1 ); |
262 | 262 | ||
263 | label = new QLabel( tr( "Password:" ), container ); | 263 | label = new QLabel( tr( "Password:" ), container ); |
264 | layout->addWidget( label, 3, 0 ); | 264 | layout->addWidget( label, 3, 0 ); |
265 | m_proxyPassword = new QLineEdit( container ); | 265 | m_proxyPassword = new QLineEdit( container ); |
266 | layout->addWidget( m_proxyPassword, 3, 1 ); | 266 | layout->addWidget( m_proxyPassword, 3, 1 ); |
267 | } | 267 | } |
268 | 268 | ||
269 | void OIpkgConfigDlg::initOptionsWidget() | 269 | void OIpkgConfigDlg::initOptionsWidget() |
270 | { | 270 | { |
271 | m_optionsWidget = new QWidget( this ); | 271 | m_optionsWidget = new QWidget( this ); |
272 | 272 | ||
273 | // Initialize UI | 273 | // Initialize UI |
274 | QVBoxLayout *vb = new QVBoxLayout( m_optionsWidget ); | 274 | QVBoxLayout *vb = new QVBoxLayout( m_optionsWidget ); |
275 | QScrollView *sv = new QScrollView( m_optionsWidget ); | 275 | QScrollView *sv = new QScrollView( m_optionsWidget ); |
276 | vb->addWidget( sv, 0, 0 ); | 276 | vb->addWidget( sv, 0, 0 ); |
277 | sv->setResizePolicy( QScrollView::AutoOneFit ); | 277 | sv->setResizePolicy( QScrollView::AutoOneFit ); |
278 | sv->setFrameStyle( QFrame::NoFrame ); | 278 | sv->setFrameStyle( QFrame::NoFrame ); |
diff --git a/noncore/settings/packagemanager/opackagemanager.cpp b/noncore/settings/packagemanager/opackagemanager.cpp index e1c8a21..ad2fe02 100644 --- a/noncore/settings/packagemanager/opackagemanager.cpp +++ b/noncore/settings/packagemanager/opackagemanager.cpp | |||
@@ -118,206 +118,206 @@ void OPackageManager::loadInstalledPackages() | |||
118 | // Initialize status messaging | 118 | // Initialize status messaging |
119 | emit initStatus( destList->count() ); | 119 | emit initStatus( destList->count() ); |
120 | int destCount = 0; | 120 | int destCount = 0; |
121 | 121 | ||
122 | bool categoryAdded = false; | 122 | bool categoryAdded = false; |
123 | 123 | ||
124 | for ( OConfItemListIterator destIt( *destList ); destIt.current(); ++destIt ) | 124 | for ( OConfItemListIterator destIt( *destList ); destIt.current(); ++destIt ) |
125 | { | 125 | { |
126 | OConfItem *destination = destIt.current(); | 126 | OConfItem *destination = destIt.current(); |
127 | 127 | ||
128 | // Process destination only if it is active | 128 | // Process destination only if it is active |
129 | if ( destination->active() ) | 129 | if ( destination->active() ) |
130 | { | 130 | { |
131 | // Update status | 131 | // Update status |
132 | QString status = tr( "Reading installed packages:\n\t" ); | 132 | QString status = tr( "Reading installed packages:\n\t" ); |
133 | status.append( destination->name() ); | 133 | status.append( destination->name() ); |
134 | emit statusText( status ); | 134 | emit statusText( status ); |
135 | ++destCount; | 135 | ++destCount; |
136 | emit statusBar( destCount ); | 136 | emit statusBar( destCount ); |
137 | qApp->processEvents(); | 137 | qApp->processEvents(); |
138 | 138 | ||
139 | OPackageList *packageList = m_ipkg.installedPackages( destination->name(), | 139 | OPackageList *packageList = m_ipkg.installedPackages( destination->name(), |
140 | destination->value() ); | 140 | destination->value() ); |
141 | if ( packageList ) | 141 | if ( packageList ) |
142 | { | 142 | { |
143 | for ( OPackageListIterator packageIt( *packageList ); packageIt.current(); ++packageIt ) | 143 | for ( OPackageListIterator packageIt( *packageList ); packageIt.current(); ++packageIt ) |
144 | { | 144 | { |
145 | OPackage *package = packageIt.current(); | 145 | OPackage *package = packageIt.current(); |
146 | OPackage *currPackage = m_packages[package->name()]; | 146 | OPackage *currPackage = m_packages[package->name()]; |
147 | if ( currPackage ) | 147 | if ( currPackage ) |
148 | { | 148 | { |
149 | // Package is in a current feed, update installed version, destination | 149 | // Package is in a current feed, update installed version, destination |
150 | currPackage->setVersionInstalled( package->versionInstalled() ); | 150 | currPackage->setVersionInstalled( package->versionInstalled() ); |
151 | currPackage->setDestination( package->destination() ); | 151 | currPackage->setDestination( package->destination() ); |
152 | 152 | ||
153 | delete package; | 153 | delete package; |
154 | } | 154 | } |
155 | else | 155 | else |
156 | { | 156 | { |
157 | // Package isn't in a current feed, add to list | 157 | // Package isn't in a current feed, add to list |
158 | m_packages.insert( package->name(), package ); | 158 | m_packages.insert( package->name(), package ); |
159 | 159 | ||
160 | // Add category to list if it doesn't already exist | 160 | // Add category to list if it doesn't already exist |
161 | if ( m_categories.grep( package->category() ).isEmpty() ) | 161 | if ( m_categories.grep( package->category() ).isEmpty() ) |
162 | { | 162 | { |
163 | m_categories << package->category(); | 163 | m_categories << package->category(); |
164 | categoryAdded = true; | 164 | categoryAdded = true; |
165 | } | 165 | } |
166 | } | 166 | } |
167 | } | 167 | } |
168 | } | 168 | } |
169 | } | 169 | } |
170 | } | 170 | } |
171 | delete destList; | 171 | delete destList; |
172 | 172 | ||
173 | // Sort category list if categories were added | 173 | // Sort category list if categories were added |
174 | if ( categoryAdded ) | 174 | if ( categoryAdded ) |
175 | m_categories.sort(); | 175 | m_categories.sort(); |
176 | } | 176 | } |
177 | } | 177 | } |
178 | 178 | ||
179 | OPackageList *OPackageManager::packages() | 179 | OPackageList *OPackageManager::packages() |
180 | { | 180 | { |
181 | // TODO - look to see if list is loaded, if not, load available & installed | 181 | // TODO - look to see if list is loaded, if not, load available & installed |
182 | 182 | ||
183 | OPackageList *pl = new OPackageList; | 183 | OPackageList *pl = new OPackageList; |
184 | 184 | ||
185 | for ( QDictIterator<OPackage> packageIt( m_packages ); packageIt.current(); ++packageIt ) | 185 | for ( QDictIterator<OPackage> packageIt( m_packages ); packageIt.current(); ++packageIt ) |
186 | pl->append( packageIt.current() ); | 186 | pl->append( packageIt.current() ); |
187 | 187 | ||
188 | return pl; | 188 | return pl; |
189 | } | 189 | } |
190 | 190 | ||
191 | OPackageList *OPackageManager::filterPackages( const QString &name,const QString &server, | 191 | OPackageList *OPackageManager::filterPackages( const QString &name,const QString &server, |
192 | const QString &destination, Status status, const QString &category ) | 192 | const QString &destination, Status status, const QString &category ) |
193 | { | 193 | { |
194 | // TODO - look to see if list is loaded, if not, load available & installed | 194 | // TODO - look to see if list is loaded, if not, load available & installed |
195 | 195 | ||
196 | OPackageList *pl = new OPackageList; | 196 | OPackageList *pl = new OPackageList; |
197 | for ( QDictIterator<OPackage> packageIt( m_packages ); packageIt.current(); ++packageIt ) | 197 | for ( QDictIterator<OPackage> packageIt( m_packages ); packageIt.current(); ++packageIt ) |
198 | { | 198 | { |
199 | OPackage *package = packageIt.current(); | 199 | OPackage *package = packageIt.current(); |
200 | 200 | ||
201 | bool nameMatch = ( name.isNull() || package->name().contains( name ) ); | 201 | bool nameMatch = ( name.isNull() || package->name().contains( name ) ); |
202 | bool serverMatch = ( server.isNull() || package->source() == server ); | 202 | bool serverMatch = ( server.isNull() || package->source() == server ); |
203 | bool destinationMatch = ( destination.isNull() || package->destination() == destination ); | 203 | bool destinationMatch = ( destination.isNull() || package->destination() == destination ); |
204 | bool statusMatch; | 204 | bool statusMatch; |
205 | switch ( status ) | 205 | switch ( status ) |
206 | { | 206 | { |
207 | case All : statusMatch = true; | 207 | case All : statusMatch = true; |
208 | break; | 208 | break; |
209 | case NotInstalled : statusMatch = package->versionInstalled().isNull(); | 209 | case NotInstalled : statusMatch = package->versionInstalled().isNull(); |
210 | break; | 210 | break; |
211 | case Installed : statusMatch = !package->versionInstalled().isNull(); | 211 | case Installed : statusMatch = !package->versionInstalled().isNull(); |
212 | break; | 212 | break; |
213 | case Updated : statusMatch = ( !package->versionInstalled().isNull() && | 213 | case Updated : statusMatch = ( !package->versionInstalled().isNull() && |
214 | compareVersions( package->version(), package->versionInstalled() ) == 1 ); | 214 | compareVersions( package->version(), package->versionInstalled() ) == 1 ); |
215 | break; | 215 | break; |
216 | default : statusMatch = true; | 216 | default : statusMatch = true; |
217 | break; | 217 | break; |
218 | }; | 218 | }; |
219 | bool categoryMatch = ( category.isNull() || package->category() == category ); | 219 | bool categoryMatch = ( category.isNull() || package->category() == category ); |
220 | 220 | ||
221 | if ( nameMatch && serverMatch && destinationMatch && statusMatch && categoryMatch ) | 221 | if ( nameMatch && serverMatch && destinationMatch && statusMatch && categoryMatch ) |
222 | pl->append( packageIt.current() ); | 222 | pl->append( packageIt.current() ); |
223 | } | 223 | } |
224 | 224 | ||
225 | return pl; | 225 | return pl; |
226 | } | 226 | } |
227 | 227 | ||
228 | QStringList *OPackageManager::servers() | 228 | QStringList *OPackageManager::servers() |
229 | { | 229 | { |
230 | QStringList *sl = new QStringList(); | 230 | QStringList *sl = new QStringList(); |
231 | 231 | ||
232 | OConfItemList *serverList = m_ipkg.servers(); | 232 | OConfItemList *serverList = m_ipkg.servers(); |
233 | if ( serverList ) | 233 | if ( serverList ) |
234 | { | 234 | { |
235 | for ( OConfItemListIterator serverIt( *serverList ); serverIt.current(); ++serverIt ) | 235 | for ( OConfItemListIterator serverIt( *serverList ); serverIt.current(); ++serverIt ) |
236 | { | 236 | { |
237 | OConfItem *server = serverIt.current(); | 237 | OConfItem *server = serverIt.current(); |
238 | 238 | ||
239 | // Add only active servers | 239 | // Add only active servers |
240 | if ( server->active() ) | 240 | if ( server->active() ) |
241 | *sl << server->name(); | 241 | *sl << server->name(); |
242 | } | 242 | } |
243 | } | 243 | } |
244 | 244 | ||
245 | return sl; | 245 | return sl; |
246 | } | 246 | } |
247 | 247 | ||
248 | QStringList *OPackageManager::destinations() | 248 | QStringList *OPackageManager::destinations() |
249 | { | 249 | { |
250 | QStringList *dl = new QStringList(); | 250 | QStringList *dl = new QStringList(); |
251 | 251 | ||
252 | OConfItemList *destList = m_ipkg.destinations(); | 252 | OConfItemList *destList = m_ipkg.destinations(); |
253 | if ( destList ) | 253 | if ( destList ) |
254 | { | 254 | { |
255 | for ( OConfItemListIterator destIt( *destList ); destIt.current(); ++destIt ) | 255 | for ( OConfItemListIterator destIt( *destList ); destIt.current(); ++destIt ) |
256 | { | 256 | { |
257 | OConfItem *destination = destIt.current(); | 257 | OConfItem *destination = destIt.current(); |
258 | 258 | ||
259 | // Add only active destinations | 259 | // Add only active destinations |
260 | if ( destination->active() ) | 260 | if ( destination->active() ) |
261 | *dl << destination->name(); | 261 | *dl << destination->name(); |
262 | } | 262 | } |
263 | } | 263 | } |
264 | 264 | ||
265 | return dl; | 265 | return dl; |
266 | } | 266 | } |
267 | 267 | ||
268 | OConfItem *OPackageManager::findConfItem( OConfItem::Type type, const QString &name ) | 268 | OConfItem *OPackageManager::findConfItem( OConfItem::Type type, const QString &name ) |
269 | { | 269 | { |
270 | OConfItem *confItem = 0x0; | 270 | OConfItem *confItem = 0x0; |
271 | OConfItemList *confList = m_ipkg.configItems(); | 271 | OConfItemList *confList = m_ipkg.configItems(); |
272 | if ( confList ) | 272 | if ( confList ) |
273 | { | 273 | { |
274 | for ( OConfItemListIterator confIt( *confList ); confIt.current(); ++confIt ) | 274 | for ( OConfItemListIterator confIt( *confList ); confIt.current(); ++confIt ) |
275 | { | 275 | { |
276 | OConfItem *conf = confIt.current(); | 276 | OConfItem *conf = confIt.current(); |
277 | 277 | ||
278 | // Add only active confinations | 278 | // Add only active confinations |
279 | if ( conf->type() == type && conf->name() == name ) | 279 | if ( conf->type() == type && conf->name() == name ) |
280 | { | 280 | { |
281 | confItem = conf; | 281 | confItem = conf; |
282 | break; | 282 | break; |
283 | } | 283 | } |
284 | } | 284 | } |
285 | } | 285 | } |
286 | 286 | ||
287 | return confItem; | 287 | return confItem; |
288 | 288 | ||
289 | } | 289 | } |
290 | 290 | ||
291 | OPackage *OPackageManager::findPackage( const QString &name ) | 291 | OPackage *OPackageManager::findPackage( const QString &name ) |
292 | { | 292 | { |
293 | return m_packages[ name ]; | 293 | return m_packages[ name ]; |
294 | } | 294 | } |
295 | 295 | ||
296 | int OPackageManager::compareVersions( const QString &version1, const QString &version2 ) | 296 | int OPackageManager::compareVersions( const QString &version1, const QString &version2 ) |
297 | { | 297 | { |
298 | // TODO - do proper compare! | 298 | // TODO - do proper compare! |
299 | if ( version1 < version2 ) | 299 | if ( version1 < version2 ) |
300 | return -1; | 300 | return -1; |
301 | else if ( version1 > version2 ) | 301 | else if ( version1 > version2 ) |
302 | return 1; | 302 | return 1; |
303 | 303 | ||
304 | return 0; | 304 | return 0; |
305 | } | 305 | } |
306 | 306 | ||
307 | bool OPackageManager::configureDlg( bool installOptions ) | 307 | bool OPackageManager::configureDlg( bool installOptions ) |
308 | { | 308 | { |
309 | OIpkgConfigDlg dlg( &m_ipkg, installOptions, static_cast<QWidget *>(parent()) ); | 309 | OIpkgConfigDlg dlg( &m_ipkg, installOptions, static_cast<QWidget *>(parent()) ); |
310 | return ( dlg.exec() == QDialog::Accepted ); | 310 | return ( QPEApplication::execDialog( &dlg ) == QDialog::Accepted ); |
311 | } | 311 | } |
312 | 312 | ||
313 | void OPackageManager::saveSettings() | 313 | void OPackageManager::saveSettings() |
314 | { | 314 | { |
315 | m_ipkg.saveSettings(); | 315 | m_ipkg.saveSettings(); |
316 | } | 316 | } |
317 | 317 | ||
318 | bool OPackageManager::executeCommand( OPackage::Command command, QStringList *packages, | 318 | bool OPackageManager::executeCommand( OPackage::Command command, QStringList *packages, |
319 | const QString &destination, const QObject *receiver, | 319 | const QString &destination, const QObject *receiver, |
320 | const char *slotOutput, bool rawOutput ) | 320 | const char *slotOutput, bool rawOutput ) |
321 | { | 321 | { |
322 | return m_ipkg.executeCommand( command, packages, destination, receiver, slotOutput, rawOutput ); | 322 | return m_ipkg.executeCommand( command, packages, destination, receiver, slotOutput, rawOutput ); |
323 | } | 323 | } |
diff --git a/noncore/settings/packagemanager/promptdlg.cpp b/noncore/settings/packagemanager/promptdlg.cpp index bb27190..128e88e 100644 --- a/noncore/settings/packagemanager/promptdlg.cpp +++ b/noncore/settings/packagemanager/promptdlg.cpp | |||
@@ -1,140 +1,140 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of the OPIE Project | 2 | This file is part of the OPIE Project |
3 | 3 | ||
4 | =. Copyright (c) 2003 Dan Williams <drw@handhelds.org> | 4 | =. Copyright (c) 2003 Dan Williams <drw@handhelds.org> |
5 | .=l. | 5 | .=l. |
6 | .>+-= | 6 | .>+-= |
7 | _;:, .> :=|. This file is free software; you can | 7 | _;:, .> :=|. This file is free software; you can |
8 | .> <`_, > . <= redistribute it and/or modify it under | 8 | .> <`_, > . <= redistribute it and/or modify it under |
9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public | 9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public |
10 | .="- .-=="i, .._ License as published by the Free Software | 10 | .="- .-=="i, .._ License as published by the Free Software |
11 | - . .-<_> .<> Foundation; either version 2 of the License, | 11 | - . .-<_> .<> Foundation; either version 2 of the License, |
12 | ._= =} : or (at your option) any later version. | 12 | ._= =} : or (at your option) any later version. |
13 | .%`+i> _;_. | 13 | .%`+i> _;_. |
14 | .i_,=:_. -<s. This file is distributed in the hope that | 14 | .i_,=:_. -<s. This file is distributed in the hope that |
15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; | 15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; |
16 | : .. .:, . . . without even the implied warranty of | 16 | : .. .:, . . . without even the implied warranty of |
17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General | 18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General |
19 | ..}^=.= = ; Public License for more details. | 19 | ..}^=.= = ; Public License for more details. |
20 | ++= -. .` .: | 20 | ++= -. .` .: |
21 | : = ...= . :.=- You should have received a copy of the GNU | 21 | : = ...= . :.=- You should have received a copy of the GNU |
22 | -. .:....=;==+<; General Public License along with this file; | 22 | -. .:....=;==+<; General Public License along with this file; |
23 | -_. . . )=. = see the file COPYING. If not, write to the | 23 | -_. . . )=. = see the file COPYING. If not, write to the |
24 | -- :-=` Free Software Foundation, Inc., | 24 | -- :-=` Free Software Foundation, Inc., |
25 | 59 Temple Place - Suite 330, | 25 | 59 Temple Place - Suite 330, |
26 | Boston, MA 02111-1307, USA. | 26 | Boston, MA 02111-1307, USA. |
27 | 27 | ||
28 | */ | 28 | */ |
29 | 29 | ||
30 | #include "promptdlg.h" | 30 | #include "promptdlg.h" |
31 | 31 | ||
32 | #include <qlabel.h> | 32 | #include <qlabel.h> |
33 | #include <qlayout.h> | 33 | #include <qlayout.h> |
34 | #include <qpushbutton.h> | 34 | #include <qpushbutton.h> |
35 | #include <qwidgetlist.h> | 35 | #include <qwidgetlist.h> |
36 | 36 | ||
37 | #include <qpe/qpeapplication.h> | 37 | #include <qpe/qpeapplication.h> |
38 | 38 | ||
39 | PromptDlg::PromptDlg( const QString &caption, const QString &text, const QString &btn1, const QString &btn2, | 39 | PromptDlg::PromptDlg( const QString &caption, const QString &text, const QString &btn1, const QString &btn2, |
40 | QWidget *parent ) | 40 | QWidget *parent ) |
41 | : QWidget( parent, QString::null, WType_Modal | WType_TopLevel | WStyle_Dialog ) | 41 | : QWidget( parent, QString::null, WType_Modal | WType_TopLevel | WStyle_Dialog ) |
42 | , m_btnClicked( -1 ) | 42 | , m_btnClicked( -1 ) |
43 | { | 43 | { |
44 | setCaption( caption ); | 44 | setCaption( caption ); |
45 | 45 | ||
46 | QGridLayout *layout = new QGridLayout( this, 2, 2, 4, 2 ); | 46 | QGridLayout *layout = new QGridLayout( this, 2, 2, 4, 2 ); |
47 | QLabel *label = new QLabel( text, this ); | 47 | QLabel *label = new QLabel( text, this ); |
48 | label->setAlignment( AlignCenter | AlignTop | WordBreak ); | 48 | label->setAlignment( AlignCenter | AlignTop | WordBreak ); |
49 | layout->addMultiCellWidget( label, 0, 0, 0, 1 ); | 49 | layout->addMultiCellWidget( label, 0, 0, 0, 1 ); |
50 | 50 | ||
51 | QPushButton *btn = new QPushButton( btn1, this ); | 51 | QPushButton *btn = new QPushButton( btn1, this ); |
52 | layout->addWidget( btn, 1, 0 ); | 52 | layout->addWidget( btn, 1, 0 ); |
53 | connect( btn, SIGNAL(clicked()), this, SLOT(slotBtn1Clicked()) ); | 53 | connect( btn, SIGNAL(clicked()), this, SLOT(slotBtn1Clicked()) ); |
54 | 54 | ||
55 | btn = new QPushButton( btn2, this ); | 55 | btn = new QPushButton( btn2, this ); |
56 | layout->addWidget( btn, 1, 1 ); | 56 | layout->addWidget( btn, 1, 1 ); |
57 | connect( btn, SIGNAL(clicked()), this, SLOT(slotBtn2Clicked()) ); | 57 | connect( btn, SIGNAL(clicked()), this, SLOT(slotBtn2Clicked()) ); |
58 | } | 58 | } |
59 | 59 | ||
60 | int PromptDlg::exec() | 60 | int PromptDlg::display() |
61 | { | 61 | { |
62 | // Determine position of dialog. Derived from QT's QDialog::show() method. | 62 | // Determine position of dialog. Derived from QT's QDialog::show() method. |
63 | QWidget *w = parentWidget(); | 63 | QWidget *w = parentWidget(); |
64 | QPoint p( 0, 0 ); | 64 | QPoint p( 0, 0 ); |
65 | int extraw = 0, extrah = 0; | 65 | int extraw = 0, extrah = 0; |
66 | QWidget * desk = QApplication::desktop(); | 66 | QWidget * desk = QApplication::desktop(); |
67 | if ( w ) | 67 | if ( w ) |
68 | w = w->topLevelWidget(); | 68 | w = w->topLevelWidget(); |
69 | 69 | ||
70 | QWidgetList *list = QApplication::topLevelWidgets(); | 70 | QWidgetList *list = QApplication::topLevelWidgets(); |
71 | QWidgetListIt it( *list ); | 71 | QWidgetListIt it( *list ); |
72 | while ( (extraw == 0 || extrah == 0) && it.current() != 0 ) | 72 | while ( (extraw == 0 || extrah == 0) && it.current() != 0 ) |
73 | { | 73 | { |
74 | int w, h; | 74 | int w, h; |
75 | QWidget * current = it.current(); | 75 | QWidget * current = it.current(); |
76 | ++it; | 76 | ++it; |
77 | w = current->geometry().x() - current->x(); | 77 | w = current->geometry().x() - current->x(); |
78 | h = current->geometry().y() - current->y(); | 78 | h = current->geometry().y() - current->y(); |
79 | 79 | ||
80 | extraw = QMAX( extraw, w ); | 80 | extraw = QMAX( extraw, w ); |
81 | extrah = QMAX( extrah, h ); | 81 | extrah = QMAX( extrah, h ); |
82 | } | 82 | } |
83 | delete list; | 83 | delete list; |
84 | 84 | ||
85 | // sanity check for decoration frames. With embedding, we | 85 | // sanity check for decoration frames. With embedding, we |
86 | // might get extraordinary values | 86 | // might get extraordinary values |
87 | if ( extraw >= 10 || extrah >= 40 ) | 87 | if ( extraw >= 10 || extrah >= 40 ) |
88 | extraw = extrah = 0; | 88 | extraw = extrah = 0; |
89 | 89 | ||
90 | if ( w ) | 90 | if ( w ) |
91 | { | 91 | { |
92 | // Use mapToGlobal rather than geometry() in case w might | 92 | // Use mapToGlobal rather than geometry() in case w might |
93 | // be embedded in another application | 93 | // be embedded in another application |
94 | QPoint pp = w->mapToGlobal( QPoint(0,0) ); | 94 | QPoint pp = w->mapToGlobal( QPoint(0,0) ); |
95 | p = QPoint( pp.x() + w->width()/2, pp.y() + w->height()/ 2 ); | 95 | p = QPoint( pp.x() + w->width()/2, pp.y() + w->height()/ 2 ); |
96 | } | 96 | } |
97 | else | 97 | else |
98 | p = QPoint( desk->width()/2, desk->height()/2 ); | 98 | p = QPoint( desk->width()/2, desk->height()/2 ); |
99 | 99 | ||
100 | p = QPoint( p.x()-width()/2 - extraw, p.y()-height()/2 - extrah ); | 100 | p = QPoint( p.x()-width()/2 - extraw, p.y()-height()/2 - extrah ); |
101 | 101 | ||
102 | if ( p.x() + extraw + width() > desk->width() ) | 102 | if ( p.x() + extraw + width() > desk->width() ) |
103 | p.setX( desk->width() - width() - extraw ); | 103 | p.setX( desk->width() - width() - extraw ); |
104 | if ( p.x() < 0 ) | 104 | if ( p.x() < 0 ) |
105 | p.setX( 0 ); | 105 | p.setX( 0 ); |
106 | 106 | ||
107 | if ( p.y() + extrah + height() > desk->height() ) | 107 | if ( p.y() + extrah + height() > desk->height() ) |
108 | p.setY( desk->height() - height() - extrah ); | 108 | p.setY( desk->height() - height() - extrah ); |
109 | if ( p.y() < 0 ) | 109 | if ( p.y() < 0 ) |
110 | p.setY( 0 ); | 110 | p.setY( 0 ); |
111 | 111 | ||
112 | move( p ); | 112 | move( p ); |
113 | show(); | 113 | show(); |
114 | 114 | ||
115 | // Enter event loop for modality | 115 | // Enter event loop for modality |
116 | qApp->enter_loop(); | 116 | qApp->enter_loop(); |
117 | 117 | ||
118 | return m_btnClicked; | 118 | return m_btnClicked; |
119 | } | 119 | } |
120 | 120 | ||
121 | int PromptDlg::ask( const QString &caption, const QString &text, const QString &btn1, const QString &btn2, | 121 | int PromptDlg::ask( const QString &caption, const QString &text, const QString &btn1, const QString &btn2, |
122 | QWidget *parent ) | 122 | QWidget *parent ) |
123 | { | 123 | { |
124 | PromptDlg *dlg = new PromptDlg( caption, text, btn1, btn2, parent ); | 124 | PromptDlg *dlg = new PromptDlg( caption, text, btn1, btn2, parent ); |
125 | int rc = dlg->exec(); | 125 | int rc = dlg->display(); |
126 | delete dlg; | 126 | delete dlg; |
127 | return rc; | 127 | return rc; |
128 | } | 128 | } |
129 | 129 | ||
130 | void PromptDlg::slotBtn1Clicked() | 130 | void PromptDlg::slotBtn1Clicked() |
131 | { | 131 | { |
132 | m_btnClicked = 1; | 132 | m_btnClicked = 1; |
133 | qApp->exit_loop(); | 133 | qApp->exit_loop(); |
134 | } | 134 | } |
135 | 135 | ||
136 | void PromptDlg::slotBtn2Clicked() | 136 | void PromptDlg::slotBtn2Clicked() |
137 | { | 137 | { |
138 | m_btnClicked = 2; | 138 | m_btnClicked = 2; |
139 | qApp->exit_loop(); | 139 | qApp->exit_loop(); |
140 | } | 140 | } |
diff --git a/noncore/settings/packagemanager/promptdlg.h b/noncore/settings/packagemanager/promptdlg.h index e0e9f41..790ff4d 100644 --- a/noncore/settings/packagemanager/promptdlg.h +++ b/noncore/settings/packagemanager/promptdlg.h | |||
@@ -1,57 +1,57 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of the OPIE Project | 2 | This file is part of the OPIE Project |
3 | 3 | ||
4 | =. Copyright (c) 2003 Dan Williams <drw@handhelds.org> | 4 | =. Copyright (c) 2003 Dan Williams <drw@handhelds.org> |
5 | .=l. | 5 | .=l. |
6 | .>+-= | 6 | .>+-= |
7 | _;:, .> :=|. This file is free software; you can | 7 | _;:, .> :=|. This file is free software; you can |
8 | .> <`_, > . <= redistribute it and/or modify it under | 8 | .> <`_, > . <= redistribute it and/or modify it under |
9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public | 9 | :`=1 )Y*s>-.-- : the terms of the GNU General Public |
10 | .="- .-=="i, .._ License as published by the Free Software | 10 | .="- .-=="i, .._ License as published by the Free Software |
11 | - . .-<_> .<> Foundation; either version 2 of the License, | 11 | - . .-<_> .<> Foundation; either version 2 of the License, |
12 | ._= =} : or (at your option) any later version. | 12 | ._= =} : or (at your option) any later version. |
13 | .%`+i> _;_. | 13 | .%`+i> _;_. |
14 | .i_,=:_. -<s. This file is distributed in the hope that | 14 | .i_,=:_. -<s. This file is distributed in the hope that |
15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; | 15 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; |
16 | : .. .:, . . . without even the implied warranty of | 16 | : .. .:, . . . without even the implied warranty of |
17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 17 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General | 18 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General |
19 | ..}^=.= = ; Public License for more details. | 19 | ..}^=.= = ; Public License for more details. |
20 | ++= -. .` .: | 20 | ++= -. .` .: |
21 | : = ...= . :.=- You should have received a copy of the GNU | 21 | : = ...= . :.=- You should have received a copy of the GNU |
22 | -. .:....=;==+<; General Public License along with this file; | 22 | -. .:....=;==+<; General Public License along with this file; |
23 | -_. . . )=. = see the file COPYING. If not, write to the | 23 | -_. . . )=. = see the file COPYING. If not, write to the |
24 | -- :-=` Free Software Foundation, Inc., | 24 | -- :-=` Free Software Foundation, Inc., |
25 | 59 Temple Place - Suite 330, | 25 | 59 Temple Place - Suite 330, |
26 | Boston, MA 02111-1307, USA. | 26 | Boston, MA 02111-1307, USA. |
27 | 27 | ||
28 | */ | 28 | */ |
29 | 29 | ||
30 | #ifndef PROMPTDLG_H | 30 | #ifndef PROMPTDLG_H |
31 | #define PROMPTDLG_H | 31 | #define PROMPTDLG_H |
32 | 32 | ||
33 | #include <qwidget.h> | 33 | #include <qwidget.h> |
34 | 34 | ||
35 | class PromptDlg : public QWidget | 35 | class PromptDlg : public QWidget |
36 | { | 36 | { |
37 | Q_OBJECT | 37 | Q_OBJECT |
38 | 38 | ||
39 | public: | 39 | public: |
40 | PromptDlg( const QString &caption = 0x0, const QString &text = 0x0, const QString &btn1 = 0x0, | 40 | PromptDlg( const QString &caption = 0x0, const QString &text = 0x0, const QString &btn1 = 0x0, |
41 | const QString &btn2 = 0x0, QWidget *parent = 0x0 ); | 41 | const QString &btn2 = 0x0, QWidget *parent = 0x0 ); |
42 | 42 | ||
43 | int exec(); | 43 | int display(); |
44 | int btnPressed() { return m_btnClicked; } | 44 | int btnPressed() { return m_btnClicked; } |
45 | 45 | ||
46 | static int ask( const QString &caption = 0x0, const QString &text = 0x0, const QString &btn1 = 0x0, | 46 | static int ask( const QString &caption = 0x0, const QString &text = 0x0, const QString &btn1 = 0x0, |
47 | const QString &btn2 = 0x0, QWidget *parent = 0x0 ); | 47 | const QString &btn2 = 0x0, QWidget *parent = 0x0 ); |
48 | 48 | ||
49 | private: | 49 | private: |
50 | int m_btnClicked; // Indicator for which button was pressed | 50 | int m_btnClicked; // Indicator for which button was pressed |
51 | 51 | ||
52 | private slots: | 52 | private slots: |
53 | void slotBtn1Clicked(); | 53 | void slotBtn1Clicked(); |
54 | void slotBtn2Clicked(); | 54 | void slotBtn2Clicked(); |
55 | }; | 55 | }; |
56 | 56 | ||
57 | #endif | 57 | #endif |