author | mickeyl <mickeyl> | 2005-01-11 16:46:50 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2005-01-11 16:46:50 (UTC) |
commit | f82173157bdba4fa99afde9cc999bfe9b511ce07 (patch) (side-by-side diff) | |
tree | 5285a7aef75f2acf78c40d8a992193d029c55446 | |
parent | 0619c844b8a3054c6d6e480ba1c90e3f42e63873 (diff) | |
download | opie-f82173157bdba4fa99afde9cc999bfe9b511ce07.zip opie-f82173157bdba4fa99afde9cc999bfe9b511ce07.tar.gz opie-f82173157bdba4fa99afde9cc999bfe9b511ce07.tar.bz2 |
number of icon columns now also customizable through LauncherSettings
-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
@@ -1,11 +1,12 @@ 2005-??-?? Opie 1.2.0 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) * n.a - Removed hard coded font sizes in a couple of inputmethods (mickeyl) 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 @@ -40,12 +40,13 @@ struct TabConfig { ViewMode m_view; 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; int m_font_weight; bool m_font_italic; 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 @@ -48,12 +48,13 @@ #include <qlabel.h> #include <qfileinfo.h> #include <qradiobutton.h> #include <qbuttongroup.h> #include <qwhatsthis.h> #include <qcheckbox.h> +#include <qspinbox.h> using namespace Opie::Ui; class SampleItem : public QIconViewItem { public: SampleItem ( QIconView *v, const QString &text, const QPixmap &pix ) : QIconViewItem ( v, text ) @@ -77,12 +78,14 @@ 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 ) { setItemsMovable ( false ); setAutoArrange ( true ); @@ -191,12 +194,13 @@ public: void setItemTextPos ( ItemTextPos pos ) { 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 ( ); if ( pos == Bottom ) { int cols = 3; @@ -413,24 +417,29 @@ QWidget *TabDialog::createIconTab ( QWidget *parent ) m_iconsize-> insert ( rb, TabConfig::List ); gridLayout-> addWidget( rb, 0, 1 ); 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(); } @@ -503,12 +512,13 @@ void TabDialog::bgDefaultClicked ( ) 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 ( ); if ( m_tc. m_font_use ) { 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,9 +1,9 @@ /* =. 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 .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, @@ -12,13 +12,13 @@ .i_,=:_. -<s. This file is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. @@ -34,19 +34,20 @@ class QButtonGroup; 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 ( ); protected slots: void iconSizeClicked ( int ); @@ -58,24 +59,25 @@ protected slots: void bgDefaultClicked ( ); 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; }; #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 @@ -132,12 +132,13 @@ void TabsSettings::readTabSettings ( Config &cfg ) TabConfig global_def; 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 ( ); global_def. m_font_weight = 50; global_def. m_font_italic = false; @@ -165,12 +166,13 @@ void TabsSettings::readTabSettings ( Config &cfg ) else if ( bgType == "Image" ) // No tr tc. m_bg_type = TabConfig::Image; 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; tc. m_font_family = f [0]; tc. m_font_size = f [1]. toInt ( ); @@ -227,12 +229,13 @@ void TabsSettings::accept ( ) QCopEnvelope e ( "QPE/Launcher", "setTabView(QString,int)" ); 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 ) { QString f = tc. m_font_family + "," + QString::number ( tc. m_font_size ) + "," + QString::number ( tc. m_font_weight ) + "," + ( tc. m_font_italic ? "1" : "0" ); cfg. writeEntry ( "Font", f ); |