summaryrefslogtreecommitdiff
authormickeyl <mickeyl>2005-01-11 16:46:50 (UTC)
committer mickeyl <mickeyl>2005-01-11 16:46:50 (UTC)
commitf82173157bdba4fa99afde9cc999bfe9b511ce07 (patch) (unidiff)
tree5285a7aef75f2acf78c40d8a992193d029c55446
parent0619c844b8a3054c6d6e480ba1c90e3f42e63873 (diff)
downloadopie-f82173157bdba4fa99afde9cc999bfe9b511ce07.zip
opie-f82173157bdba4fa99afde9cc999bfe9b511ce07.tar.gz
opie-f82173157bdba4fa99afde9cc999bfe9b511ce07.tar.bz2
number of icon columns now also customizable through LauncherSettings
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--ChangeLog1
-rw-r--r--core/settings/launcher/tabconfig.h1
-rw-r--r--core/settings/launcher/tabdialog.cpp14
-rw-r--r--core/settings/launcher/tabdialog.h16
-rw-r--r--core/settings/launcher/tabssettings.cpp3
5 files changed, 26 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index fdaaa25..9b31725 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,13 +1,14 @@
1 2005-??-??Opie 1.2.0 1 2005-??-??Opie 1.2.0
2 2
3 New Features 3 New Features
4 ------------ 4 ------------
5 * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl) 5 * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl)
6 * Number of icon columns in Launcher is customizable through LauncherSettings (mickeyl)
6 7
7 Fixed Bugs 8 Fixed Bugs
8 ---------- 9 ----------
9 * #1501 - Fixed bug in todo sql backend (eilers) 10 * #1501 - Fixed bug in todo sql backend (eilers)
10 * n.a - Removed hard coded font sizes in a couple of inputmethods (mickeyl) 11 * n.a - Removed hard coded font sizes in a couple of inputmethods (mickeyl)
11 12
12 Internal 13 Internal
13 -------- 14 --------
diff --git a/core/settings/launcher/tabconfig.h b/core/settings/launcher/tabconfig.h
index 84ba073..7844673 100644
--- a/core/settings/launcher/tabconfig.h
+++ b/core/settings/launcher/tabconfig.h
@@ -38,16 +38,17 @@ struct TabConfig {
38 Image 38 Image
39 }; 39 };
40 40
41 ViewMode m_view; 41 ViewMode m_view;
42 BackgroundType m_bg_type; 42 BackgroundType m_bg_type;
43 QString m_last_directory; 43 QString m_last_directory;
44 QString m_bg_image; 44 QString m_bg_image;
45 QString m_bg_color; 45 QString m_bg_color;
46 int m_iconcolumns;
46 QString m_text_color; 47 QString m_text_color;
47 bool m_font_use; 48 bool m_font_use;
48 QString m_font_family; 49 QString m_font_family;
49 int m_font_size; 50 int m_font_size;
50 int m_font_weight; 51 int m_font_weight;
51 bool m_font_italic; 52 bool m_font_italic;
52 bool m_changed; 53 bool m_changed;
53 54
diff --git a/core/settings/launcher/tabdialog.cpp b/core/settings/launcher/tabdialog.cpp
index cef92d9..abe310f 100644
--- a/core/settings/launcher/tabdialog.cpp
+++ b/core/settings/launcher/tabdialog.cpp
@@ -46,16 +46,17 @@
46#include <qiconview.h> 46#include <qiconview.h>
47#include <qapplication.h> 47#include <qapplication.h>
48#include <qlabel.h> 48#include <qlabel.h>
49#include <qfileinfo.h> 49#include <qfileinfo.h>
50#include <qradiobutton.h> 50#include <qradiobutton.h>
51#include <qbuttongroup.h> 51#include <qbuttongroup.h>
52#include <qwhatsthis.h> 52#include <qwhatsthis.h>
53#include <qcheckbox.h> 53#include <qcheckbox.h>
54#include <qspinbox.h>
54 55
55 56
56using namespace Opie::Ui; 57using namespace Opie::Ui;
57class SampleItem : public QIconViewItem { 58class SampleItem : public QIconViewItem {
58public: 59public:
59 SampleItem ( QIconView *v, const QString &text, const QPixmap &pix ) : QIconViewItem ( v, text ) 60 SampleItem ( QIconView *v, const QString &text, const QPixmap &pix ) : QIconViewItem ( v, text )
60 { 61 {
61 m_large = pix; 62 m_large = pix;
@@ -75,16 +76,18 @@ public:
75 else 76 else
76 return (QPixmap *) &m_large; 77 return (QPixmap *) &m_large;
77 } 78 }
78 79
79private: 80private:
80 QPixmap m_large, m_small; 81 QPixmap m_large, m_small;
81}; 82};
82 83
84//FIXME: Why not derive SampleView from LauncherView ???
85
83class SampleView : public QIconView { 86class SampleView : public QIconView {
84public: 87public:
85 SampleView ( QWidget *parent = 0, const char *name = 0 ) : QIconView ( parent, name ) 88 SampleView ( QWidget *parent = 0, const char *name = 0 ) : QIconView ( parent, name )
86 { 89 {
87 setItemsMovable ( false ); 90 setItemsMovable ( false );
88 setAutoArrange ( true ); 91 setAutoArrange ( true );
89 setSorting ( true ); 92 setSorting ( true );
90 setFrameStyle ( QFrame::NoFrame ); 93 setFrameStyle ( QFrame::NoFrame );
@@ -189,16 +192,17 @@ public:
189 } 192 }
190 193
191 void setItemTextPos ( ItemTextPos pos ) 194 void setItemTextPos ( ItemTextPos pos )
192 { 195 {
193 calculateGrid ( pos ); 196 calculateGrid ( pos );
194 QIconView::setItemTextPos( pos ); 197 QIconView::setItemTextPos( pos );
195 } 198 }
196 199
200 //FIXME: Add per-tab column handling from launcherview.cpp
197 void calculateGrid ( ItemTextPos pos ) 201 void calculateGrid ( ItemTextPos pos )
198 { 202 {
199 int dw = QApplication::desktop ( )-> width ( ); 203 int dw = QApplication::desktop ( )-> width ( );
200 int viewerWidth = dw - style ( ).scrollBarExtent ( ). width ( ); 204 int viewerWidth = dw - style ( ).scrollBarExtent ( ). width ( );
201 if ( pos == Bottom ) { 205 if ( pos == Bottom ) {
202 int cols = 3; 206 int cols = 3;
203 if ( viewerWidth <= 200 ) 207 if ( viewerWidth <= 200 )
204 cols = 2; 208 cols = 2;
@@ -411,28 +415,33 @@ QWidget *TabDialog::createIconTab ( QWidget *parent )
411 QRadioButton *rb; 415 QRadioButton *rb;
412 rb = new QRadioButton( tr( "Small" ), tab, "iconsmall" ); 416 rb = new QRadioButton( tr( "Small" ), tab, "iconsmall" );
413 m_iconsize-> insert ( rb, TabConfig::List ); 417 m_iconsize-> insert ( rb, TabConfig::List );
414 gridLayout-> addWidget( rb, 0, 1 ); 418 gridLayout-> addWidget( rb, 0, 1 );
415 419
416 rb = new QRadioButton( tr( "Large" ), tab, "iconlarge" ); 420 rb = new QRadioButton( tr( "Large" ), tab, "iconlarge" );
417 m_iconsize-> insert ( rb, TabConfig::Icon ); 421 m_iconsize-> insert ( rb, TabConfig::Icon );
418 gridLayout-> addWidget( rb, 1, 1 ); 422 gridLayout-> addWidget( rb, 1, 1 );
419
420 connect ( m_iconsize, SIGNAL( clicked(int)), this, SLOT( iconSizeClicked(int))); 423 connect ( m_iconsize, SIGNAL( clicked(int)), this, SLOT( iconSizeClicked(int)));
421
422 gridLayout-> addRowSpacing ( 2, 8 ); 424 gridLayout-> addRowSpacing ( 2, 8 );
423 425
424 label = new QLabel ( tr( "Color:" ), tab ); 426 label = new QLabel ( tr( "Color:" ), tab );
425 gridLayout-> addWidget ( label, 3, 0 ); 427 gridLayout-> addWidget ( label, 3, 0 );
428 gridLayout-> addRowSpacing ( 3, 8 );
426 429
427 m_iconcolor = new Opie::OColorButton ( tab, QColor ( m_tc. m_text_color ) ); 430 m_iconcolor = new Opie::OColorButton ( tab, QColor ( m_tc. m_text_color ) );
428 connect ( m_iconcolor, SIGNAL( colorSelected(const QColor&)), this, SLOT( iconColorClicked(const QColor&))); 431 connect ( m_iconcolor, SIGNAL( colorSelected(const QColor&)), this, SLOT( iconColorClicked(const QColor&)));
429 gridLayout-> addWidget ( m_iconcolor, 3, 1, AlignLeft ); 432 gridLayout-> addWidget ( m_iconcolor, 3, 1, AlignLeft );
430 433
434 label = new QLabel( tr( "Columns:" ), tab );
435 gridLayout->addWidget( label, 4, 0 );
436 m_iconcolumns = new QSpinBox( 0, 10, 1, tab, "iconspinbox" );
437 m_iconcolumns->setSpecialValueText( tr( "Automatic" ) );
438 gridLayout->addWidget( m_iconcolumns, 4, 1, AlignLeft );
439
431 vertLayout-> addStretch ( 10 ); 440 vertLayout-> addStretch ( 10 );
432 441
433 if ( m_tc.m_last_directory == QString::null ) { 442 if ( m_tc.m_last_directory == QString::null ) {
434 m_tc.m_last_directory = QPEApplication::documentDir(); 443 m_tc.m_last_directory = QPEApplication::documentDir();
435 } 444 }
436 445
437 return tab; 446 return tab;
438} 447}
@@ -501,16 +510,17 @@ void TabDialog::bgDefaultClicked ( )
501 bgTypeClicked ( TabConfig::Image ); 510 bgTypeClicked ( TabConfig::Image );
502} 511}
503 512
504void TabDialog::accept ( ) 513void TabDialog::accept ( )
505{ 514{
506 m_tc. m_view = (TabConfig::ViewMode) m_iconsize-> id ( m_iconsize-> selected ( )); 515 m_tc. m_view = (TabConfig::ViewMode) m_iconsize-> id ( m_iconsize-> selected ( ));
507 m_tc. m_bg_type = (TabConfig::BackgroundType) m_bgtype-> id ( m_bgtype-> selected ( )); 516 m_tc. m_bg_type = (TabConfig::BackgroundType) m_bgtype-> id ( m_bgtype-> selected ( ));
508 m_tc. m_bg_color = m_solidcolor-> color ( ). name ( ); 517 m_tc. m_bg_color = m_solidcolor-> color ( ). name ( );
518 m_tc. m_iconcolumns = m_iconcolumns-> value( );
509 m_tc. m_bg_image = m_bgimage; 519 m_tc. m_bg_image = m_bgimage;
510 m_tc. m_text_color = m_iconcolor-> color ( ). name ( ); 520 m_tc. m_text_color = m_iconcolor-> color ( ). name ( );
511 521
512 m_tc. m_font_use = m_fontuse-> isChecked ( ); 522 m_tc. m_font_use = m_fontuse-> isChecked ( );
513 523
514 if ( m_tc. m_font_use ) { 524 if ( m_tc. m_font_use ) {
515 QFont f = m_fontselect-> selectedFont ( ); 525 QFont f = m_fontselect-> selectedFont ( );
516 526
diff --git a/core/settings/launcher/tabdialog.h b/core/settings/launcher/tabdialog.h
index 46b7ae9..9381237 100644
--- a/core/settings/launcher/tabdialog.h
+++ b/core/settings/launcher/tabdialog.h
@@ -1,26 +1,26 @@
1/* 1/*
2               =. This file is part of the OPIE Project 2               =. This file is part of the OPIE Project
3             .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> 3             .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org>
4           .>+-= 4           .>+-=
5 _;:,     .>    :=|. This file is free software; you can 5 _;:,     .>    :=|. This file is free software; you can
6.> <`_,   >  .   <= redistribute it and/or modify it under 6.> <`_,   >  .   <= redistribute it and/or modify it under
7:`=1 )Y*s>-.--   : the terms of the GNU General Public 7:`=1 )Y*s>-.--   : the terms of the GNU General Public
8.="- .-=="i,     .._ License as published by the Free Software 8.="- .-=="i,     .._ License as published by the Free Software
9 - .   .-<_>     .<> Foundation; either version 2 of the License, 9 - .   .-<_>     .<> Foundation; either version 2 of the License,
10     ._= =}       : or (at your option) any later version. 10     ._= =}       : or (at your option) any later version.
11    .%`+i>       _;_. 11    .%`+i>       _;_.
12    .i_,=:_.      -<s. This file is distributed in the hope that 12    .i_,=:_.      -<s. This file is distributed in the hope that
13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
14    : ..    .:,     . . . without even the implied warranty of 14    : ..    .:,     . . . without even the implied warranty of
15    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 15    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
16  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 16  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General
17..}^=.=       =       ; Public License for more details. 17..}^=.=       =       ; Public License for more details.
18++=   -.     .`     .: 18++=   -.     .`     .:
19 :     =  ...= . :.=- You should have received a copy of the GNU 19 :     =  ...= . :.=- You should have received a copy of the GNU
20 -.   .:....=;==+<; General Public License along with this file; 20 -.   .:....=;==+<; General Public License along with this file;
21  -_. . .   )=.  = see the file COPYING. If not, write to the 21  -_. . .   )=.  = see the file COPYING. If not, write to the
22    --        :-=` Free Software Foundation, Inc., 22    --        :-=` Free Software Foundation, Inc.,
23 59 Temple Place - Suite 330, 23 59 Temple Place - Suite 330,
24 Boston, MA 02111-1307, USA. 24 Boston, MA 02111-1307, USA.
25 25
26*/ 26*/
@@ -32,23 +32,24 @@
32#include "tabconfig.h" 32#include "tabconfig.h"
33 33
34class QButtonGroup; 34class QButtonGroup;
35namespace Opie {namespace Ui {class OFontSelector;}} 35namespace Opie {namespace Ui {class OFontSelector;}}
36class SampleView; 36class SampleView;
37namespace Opie {class OColorButton;} 37namespace Opie {class OColorButton;}
38class QPushButton; 38class QPushButton;
39class QCheckBox; 39class QCheckBox;
40class QSpinBox;
40 41
41 42
42class TabDialog : public QDialog { 43class TabDialog : public QDialog {
43 Q_OBJECT 44 Q_OBJECT
44public: 45public:
45 TabDialog ( const QPixmap *tabicon, const QString &tabname, TabConfig &cfg, QWidget *parent = 0, const char *dname = 0, bool modal = false, WFlags = 0 ); 46 TabDialog ( const QPixmap *tabicon, const QString &tabname, TabConfig &cfg, QWidget *parent = 0, const char *dname = 0, bool modal = false, WFlags = 0 );
46 virtual ~TabDialog ( ); 47 virtual ~TabDialog ( );
47 48
48public slots: 49public slots:
49 virtual void accept ( ); 50 virtual void accept ( );
50 51
51protected slots: 52protected slots:
52 void iconSizeClicked ( int ); 53 void iconSizeClicked ( int );
53 void fontClicked ( const QFont & ); 54 void fontClicked ( const QFont & );
54 void bgTypeClicked ( int ); 55 void bgTypeClicked ( int );
@@ -56,26 +57,27 @@ protected slots:
56 void iconColorClicked ( const QColor & ); 57 void iconColorClicked ( const QColor & );
57 void bgImageClicked ( ); 58 void bgImageClicked ( );
58 void bgDefaultClicked ( ); 59 void bgDefaultClicked ( );
59 60
60private: 61private:
61 QWidget *createBgTab ( QWidget *parent ); 62 QWidget *createBgTab ( QWidget *parent );
62 QWidget *createFontTab ( QWidget *parent ); 63 QWidget *createFontTab ( QWidget *parent );
63 QWidget *createIconTab ( QWidget *parent ); 64 QWidget *createIconTab ( QWidget *parent );
64 65
65 66
66private: 67private:
67 SampleView *m_sample; 68 SampleView *m_sample;
68 QButtonGroup *m_iconsize; 69 QButtonGroup *m_iconsize;
69 Opie::Ui::OFontSelector *m_fontselect; 70 Opie::Ui::OFontSelector *m_fontselect;
70 Opie::OColorButton *m_solidcolor; 71 Opie::OColorButton *m_solidcolor;
71 Opie::OColorButton *m_iconcolor; 72 Opie::OColorButton *m_iconcolor;
73 QSpinBox *m_iconcolumns;
72 QPushButton *m_imagebrowse; 74 QPushButton *m_imagebrowse;
73 QString m_bgimage; 75 QString m_bgimage;
74 QButtonGroup *m_bgtype; 76 QButtonGroup *m_bgtype;
75 QCheckBox *m_fontuse; 77 QCheckBox *m_fontuse;
76 78
77 TabConfig &m_tc; 79 TabConfig &m_tc;
78}; 80};
79 81
80 82
81#endif 83#endif
diff --git a/core/settings/launcher/tabssettings.cpp b/core/settings/launcher/tabssettings.cpp
index 5ac625b..ab64331 100644
--- a/core/settings/launcher/tabssettings.cpp
+++ b/core/settings/launcher/tabssettings.cpp
@@ -130,16 +130,17 @@ void TabsSettings::readTabSettings ( Config &cfg )
130 QString grp ( "Tab %1" ); // No tr 130 QString grp ( "Tab %1" ); // No tr
131 m_tabs. clear ( ); 131 m_tabs. clear ( );
132 132
133 TabConfig global_def; 133 TabConfig global_def;
134 global_def. m_view = TabConfig::Icon; 134 global_def. m_view = TabConfig::Icon;
135 global_def. m_bg_type = TabConfig::Ruled; 135 global_def. m_bg_type = TabConfig::Ruled;
136 global_def. m_bg_image = "launcher/opie-background"; 136 global_def. m_bg_image = "launcher/opie-background";
137 global_def. m_bg_color = colorGroup ( ). color ( QColorGroup::Base ). name ( ); 137 global_def. m_bg_color = colorGroup ( ). color ( QColorGroup::Base ). name ( );
138 global_def. m_iconcolumns = 0; // automatic
138 global_def. m_text_color = colorGroup ( ). color ( QColorGroup::Text ). name ( ); 139 global_def. m_text_color = colorGroup ( ). color ( QColorGroup::Text ). name ( );
139 global_def. m_font_use = false; 140 global_def. m_font_use = false;
140 global_def. m_font_family = font ( ). family ( ); 141 global_def. m_font_family = font ( ). family ( );
141 global_def. m_font_size = font ( ). pointSize ( ); 142 global_def. m_font_size = font ( ). pointSize ( );
142 global_def. m_font_weight = 50; 143 global_def. m_font_weight = 50;
143 global_def. m_font_italic = false; 144 global_def. m_font_italic = false;
144 global_def. m_changed = false; 145 global_def. m_changed = false;
145 146
@@ -163,16 +164,17 @@ void TabsSettings::readTabSettings ( Config &cfg )
163 else if ( bgType == "SolidColor" ) 164 else if ( bgType == "SolidColor" )
164 tc. m_bg_type = TabConfig::SolidColor; 165 tc. m_bg_type = TabConfig::SolidColor;
165 else if ( bgType == "Image" ) // No tr 166 else if ( bgType == "Image" ) // No tr
166 tc. m_bg_type = TabConfig::Image; 167 tc. m_bg_type = TabConfig::Image;
167 168
168 tc. m_bg_image = cfg. readEntry ( "BackgroundImage", tc. m_bg_image ); 169 tc. m_bg_image = cfg. readEntry ( "BackgroundImage", tc. m_bg_image );
169 tc. m_last_directory = cfg2.readEntry( "DefaultDir", "" ); 170 tc. m_last_directory = cfg2.readEntry( "DefaultDir", "" );
170 tc. m_bg_color = cfg. readEntry ( "BackgroundColor", tc. m_bg_color ); 171 tc. m_bg_color = cfg. readEntry ( "BackgroundColor", tc. m_bg_color );
172 tc. m_iconcolumns = cfg. readNumEntry ( "Columns", tc. m_iconcolumns );
171 tc. m_text_color = cfg. readEntry ( "TextColor", tc. m_text_color ); 173 tc. m_text_color = cfg. readEntry ( "TextColor", tc. m_text_color );
172 QStringList f = cfg. readListEntry ( "Font", ',' ); 174 QStringList f = cfg. readListEntry ( "Font", ',' );
173 if ( f. count ( ) == 4 ) { 175 if ( f. count ( ) == 4 ) {
174 tc. m_font_use = true; 176 tc. m_font_use = true;
175 tc. m_font_family = f [0]; 177 tc. m_font_family = f [0];
176 tc. m_font_size = f [1]. toInt ( ); 178 tc. m_font_size = f [1]. toInt ( );
177 tc. m_font_weight = f [2]. toInt ( ); 179 tc. m_font_weight = f [2]. toInt ( );
178 tc. m_font_italic = ( f [3]. toInt ( )); 180 tc. m_font_italic = ( f [3]. toInt ( ));
@@ -225,16 +227,17 @@ void TabsSettings::accept ( )
225 break; 227 break;
226 } 228 }
227 229
228 QCopEnvelope e ( "QPE/Launcher", "setTabView(QString,int)" ); 230 QCopEnvelope e ( "QPE/Launcher", "setTabView(QString,int)" );
229 e << *it << tc. m_view; 231 e << *it << tc. m_view;
230 232
231 cfg. writeEntry ( "BackgroundImage", tc. m_bg_image ); 233 cfg. writeEntry ( "BackgroundImage", tc. m_bg_image );
232 cfg. writeEntry ( "BackgroundColor", tc. m_bg_color ); 234 cfg. writeEntry ( "BackgroundColor", tc. m_bg_color );
235 cfg. writeEntry ( "Columns", tc. m_iconcolumns );
233 cfg. writeEntry ( "TextColor", tc. m_text_color ); 236 cfg. writeEntry ( "TextColor", tc. m_text_color );
234 cfg2. writeEntry ( "DefaultDir", tc.m_last_directory ); 237 cfg2. writeEntry ( "DefaultDir", tc.m_last_directory );
235 238
236 if ( tc. m_font_use ) { 239 if ( tc. m_font_use ) {
237 QString f = tc. m_font_family + "," + QString::number ( tc. m_font_size ) + "," + QString::number ( tc. m_font_weight ) + "," + ( tc. m_font_italic ? "1" : "0" ); 240 QString f = tc. m_font_family + "," + QString::number ( tc. m_font_size ) + "," + QString::number ( tc. m_font_weight ) + "," + ( tc. m_font_italic ? "1" : "0" );
238 cfg. writeEntry ( "Font", f ); 241 cfg. writeEntry ( "Font", f );
239 } 242 }
240 else 243 else