-rw-r--r-- | ChangeLog | 1 | ||||
-rw-r--r-- | core/settings/launcher/tabconfig.h | 1 | ||||
-rw-r--r-- | core/settings/launcher/tabdialog.cpp | 14 | ||||
-rw-r--r-- | core/settings/launcher/tabdialog.h | 16 | ||||
-rw-r--r-- | core/settings/launcher/tabssettings.cpp | 3 |
5 files changed, 26 insertions, 9 deletions
@@ -2,8 +2,9 @@ New Features ------------ * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl) + * Number of icon columns in Launcher is customizable through LauncherSettings (mickeyl) Fixed Bugs ---------- * #1501 - Fixed bug in todo sql backend (eilers) 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 @@ -42,8 +42,9 @@ struct TabConfig { BackgroundType m_bg_type; QString m_last_directory; QString m_bg_image; QString m_bg_color; + int m_iconcolumns; QString m_text_color; bool m_font_use; QString m_font_family; int m_font_size; 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 @@ -50,8 +50,9 @@ #include <qradiobutton.h> #include <qbuttongroup.h> #include <qwhatsthis.h> #include <qcheckbox.h> +#include <qspinbox.h> using namespace Opie::Ui; class SampleItem : public QIconViewItem { @@ -79,8 +80,10 @@ public: private: QPixmap m_large, m_small; }; +//FIXME: Why not derive SampleView from LauncherView ??? + class SampleView : public QIconView { public: SampleView ( QWidget *parent = 0, const char *name = 0 ) : QIconView ( parent, name ) { @@ -193,8 +196,9 @@ public: calculateGrid ( pos ); QIconView::setItemTextPos( pos ); } + //FIXME: Add per-tab column handling from launcherview.cpp void calculateGrid ( ItemTextPos pos ) { int dw = QApplication::desktop ( )-> width ( ); int viewerWidth = dw - style ( ).scrollBarExtent ( ). width ( ); @@ -415,20 +419,25 @@ QWidget *TabDialog::createIconTab ( QWidget *parent ) rb = new QRadioButton( tr( "Large" ), tab, "iconlarge" ); m_iconsize-> insert ( rb, TabConfig::Icon ); gridLayout-> addWidget( rb, 1, 1 ); - connect ( m_iconsize, SIGNAL( clicked(int)), this, SLOT( iconSizeClicked(int))); - gridLayout-> addRowSpacing ( 2, 8 ); label = new QLabel ( tr( "Color:" ), tab ); gridLayout-> addWidget ( label, 3, 0 ); + gridLayout-> addRowSpacing ( 3, 8 ); m_iconcolor = new Opie::OColorButton ( tab, QColor ( m_tc. m_text_color ) ); connect ( m_iconcolor, SIGNAL( colorSelected(const QColor&)), this, SLOT( iconColorClicked(const QColor&))); gridLayout-> addWidget ( m_iconcolor, 3, 1, AlignLeft ); + label = new QLabel( tr( "Columns:" ), tab ); + gridLayout->addWidget( label, 4, 0 ); + m_iconcolumns = new QSpinBox( 0, 10, 1, tab, "iconspinbox" ); + m_iconcolumns->setSpecialValueText( tr( "Automatic" ) ); + gridLayout->addWidget( m_iconcolumns, 4, 1, AlignLeft ); + vertLayout-> addStretch ( 10 ); if ( m_tc.m_last_directory == QString::null ) { m_tc.m_last_directory = QPEApplication::documentDir(); @@ -505,8 +514,9 @@ void TabDialog::accept ( ) { m_tc. m_view = (TabConfig::ViewMode) m_iconsize-> id ( m_iconsize-> selected ( )); m_tc. m_bg_type = (TabConfig::BackgroundType) m_bgtype-> id ( m_bgtype-> selected ( )); m_tc. m_bg_color = m_solidcolor-> color ( ). name ( ); + m_tc. m_iconcolumns = m_iconcolumns-> value( ); m_tc. m_bg_image = m_bgimage; m_tc. m_text_color = m_iconcolor-> color ( ). name ( ); m_tc. m_font_use = m_fontuse-> isChecked ( ); 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,7 +1,7 @@ /* =. This file is part of the OPIE Project - .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> + .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> .>+-= _;:, .> :=|. This file is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU General Public @@ -14,9 +14,9 @@ : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General ..}^=.= = ; Public License for more details. -++= -. .` .: +++= -. .` .: : = ...= . :.=- You should have received a copy of the GNU -. .:....=;==+<; General Public License along with this file; -_. . . )=. = see the file COPYING. If not, write to the -- :-=` Free Software Foundation, Inc., @@ -36,15 +36,16 @@ namespace Opie {namespace Ui {class OFontSelector;}} class SampleView; namespace Opie {class OColorButton;} class QPushButton; class QCheckBox; +class QSpinBox; class TabDialog : public QDialog { Q_OBJECT public: TabDialog ( const QPixmap *tabicon, const QString &tabname, TabConfig &cfg, QWidget *parent = 0, const char *dname = 0, bool modal = false, WFlags = 0 ); - virtual ~TabDialog ( ); + virtual ~TabDialog ( ); public slots: virtual void accept ( ); @@ -60,21 +61,22 @@ protected slots: private: QWidget *createBgTab ( QWidget *parent ); QWidget *createFontTab ( QWidget *parent ); QWidget *createIconTab ( QWidget *parent ); - - + + private: SampleView *m_sample; QButtonGroup *m_iconsize; Opie::Ui::OFontSelector *m_fontselect; Opie::OColorButton *m_solidcolor; Opie::OColorButton *m_iconcolor; + QSpinBox *m_iconcolumns; QPushButton *m_imagebrowse; - QString m_bgimage; + QString m_bgimage; QButtonGroup *m_bgtype; QCheckBox *m_fontuse; - + TabConfig &m_tc; }; 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 @@ -134,8 +134,9 @@ void TabsSettings::readTabSettings ( Config &cfg ) global_def. m_view = TabConfig::Icon; global_def. m_bg_type = TabConfig::Ruled; global_def. m_bg_image = "launcher/opie-background"; global_def. m_bg_color = colorGroup ( ). color ( QColorGroup::Base ). name ( ); + global_def. m_iconcolumns = 0; // automatic global_def. m_text_color = colorGroup ( ). color ( QColorGroup::Text ). name ( ); global_def. m_font_use = false; global_def. m_font_family = font ( ). family ( ); global_def. m_font_size = font ( ). pointSize ( ); @@ -167,8 +168,9 @@ void TabsSettings::readTabSettings ( Config &cfg ) tc. m_bg_image = cfg. readEntry ( "BackgroundImage", tc. m_bg_image ); tc. m_last_directory = cfg2.readEntry( "DefaultDir", "" ); tc. m_bg_color = cfg. readEntry ( "BackgroundColor", tc. m_bg_color ); + tc. m_iconcolumns = cfg. readNumEntry ( "Columns", tc. m_iconcolumns ); tc. m_text_color = cfg. readEntry ( "TextColor", tc. m_text_color ); QStringList f = cfg. readListEntry ( "Font", ',' ); if ( f. count ( ) == 4 ) { tc. m_font_use = true; @@ -229,8 +231,9 @@ void TabsSettings::accept ( ) e << *it << tc. m_view; cfg. writeEntry ( "BackgroundImage", tc. m_bg_image ); cfg. writeEntry ( "BackgroundColor", tc. m_bg_color ); + cfg. writeEntry ( "Columns", tc. m_iconcolumns ); cfg. writeEntry ( "TextColor", tc. m_text_color ); cfg2. writeEntry ( "DefaultDir", tc.m_last_directory ); if ( tc. m_font_use ) { |