summaryrefslogtreecommitdiff
path: root/core
Side-by-side diff
Diffstat (limited to 'core') (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/documentlist.cpp17
-rw-r--r--core/launcher/firstuse.cpp2
-rw-r--r--core/launcher/launcher.cpp35
-rw-r--r--core/launcher/launcher.h2
-rw-r--r--core/settings/launcher/doctabsettings.cpp71
-rw-r--r--core/settings/launcher/doctabsettings.h55
-rw-r--r--core/settings/launcher/inputmethodsettings.cpp3
-rw-r--r--core/settings/launcher/launcher.pro2
-rw-r--r--core/settings/launcher/launchersettings.cpp5
-rw-r--r--core/settings/launcher/launchersettings.h2
10 files changed, 184 insertions, 10 deletions
diff --git a/core/launcher/documentlist.cpp b/core/launcher/documentlist.cpp
index 7f9366e..dcea4b9 100644
--- a/core/launcher/documentlist.cpp
+++ b/core/launcher/documentlist.cpp
@@ -21,6 +21,7 @@
#include "serverinterface.h"
#include "launcherglobal.h"
+#include <qtopia/config.h>
#include <qtopia/mimetype.h>
#include <qtopia/resource.h>
#include <qtopia/global.h>
@@ -104,7 +105,21 @@ DocumentList::DocumentList( ServerInterface *serverGui, bool scanDocs,
void DocumentList::startInitialScan()
{
reloadAppLnks();
- reloadDocLnks();
+
+ Config cfg( "Launcher" );
+ cfg.setGroup( "DocTab" );
+ bool docTabEnabled = cfg.readBoolEntry( "Enable", true );
+ if ( docTabEnabled )
+ reloadDocLnks();
+ else
+ {
+ if ( d->sendDocLnks && d->serverGui )
+ {
+ d->serverGui->documentScanningProgress( 0 );
+ d->serverGui->allDocumentsRemoved();
+ }
+ }
+
}
DocumentList::~DocumentList()
diff --git a/core/launcher/firstuse.cpp b/core/launcher/firstuse.cpp
index 57469cf..e07920f 100644
--- a/core/launcher/firstuse.cpp
+++ b/core/launcher/firstuse.cpp
@@ -78,6 +78,8 @@ settingsTable [] =
{
{ FALSE, "language", "raise()", "accept()", // No tr
QT_TR_NOOP("Language") },
+ { FALSE, "doctab", "raise()", "accept()", // No tr
+ QT_TR_NOOP("DocTab") },
#ifndef Q_OS_WIN32
{ FALSE, "systemtime", "raise()", "accept()", // No tr
QT_TR_NOOP("Time and Date") },
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp
index d697c43..b312672 100644
--- a/core/launcher/launcher.cpp
+++ b/core/launcher/launcher.cpp
@@ -82,7 +82,7 @@ static bool isVisibleWindow( int );
//===========================================================================
LauncherTabWidget::LauncherTabWidget( Launcher* parent ) :
- QVBox( parent )
+ QVBox( parent ), docview( 0 )
{
docLoadingWidgetEnabled = false;
docLoadingWidget = 0;
@@ -131,20 +131,32 @@ void LauncherTabWidget::createDocLoadingWidget()
waitPixmap->setPixmap( Resource::loadPixmap( "bigwait" ) );
waitPixmap->setAlignment( int( QLabel::AlignCenter ) );
+ Config cfg( "Launcher" );
+ cfg.setGroup( "DocTab" );
+ bool docTabEnabled = cfg.readBoolEntry( "Enable", true );
+
QLabel *textLabel = new QLabel( docLoadingVBox );
- textLabel->setText( tr( "<b>Finding Documents...</b>" ) );
textLabel->setAlignment( int( QLabel::AlignCenter ) );
-
docLoadingWidgetProgress = new QProgressBar( docLoadingVBox );
docLoadingWidgetProgress->setProgress( 0 );
docLoadingWidgetProgress->setCenterIndicator( TRUE );
docLoadingWidgetProgress->setBackgroundMode( NoBackground ); // No flicker
setProgressStyle();
+ if ( docTabEnabled )
+ {
+ textLabel->setText( tr( "<b>Finding Documents...</b>" ) );
+ }
+ else
+ {
+ textLabel->setText( tr( "<b>The Documents Tab<p>has been disabled.<p>"
+ "Use Settings->Launcher->DocTab<p>to reenable it.</b></center>" ) );
+ docLoadingWidgetProgress->hide();
+ }
+
QWidget *space2 = new QWidget( docLoadingVBox );
docLoadingVBox->setStretchFactor( space2, 1 );
- Config cfg("Launcher");
cfg.setGroup( "Tab Documents" ); // No tr
setTabViewAppearance( docLoadingWidget, cfg );
@@ -429,6 +441,9 @@ Launcher::Launcher()
{
tabs = 0;
tb = 0;
+ Config cfg( "Launcher" );
+ cfg.setGroup( "DocTab" );
+ docTabEnabled = cfg.readBoolEntry( "Enable", true );
}
void Launcher::createGUI()
@@ -472,11 +487,11 @@ void Launcher::createGUI()
QPixmap pm;
pm = img.smoothScale( AppLnk::smallIconSize(), AppLnk::smallIconSize() );
// It could add this itself if it handles docs
+
tabs->newView("Documents", pm, tr("Documents") )->setToolsEnabled( TRUE );
- QTimer::singleShot( 0, tabs, SLOT( initLayout() ) );
+ QTimer::singleShot( 0, tabs, SLOT( initLayout() ) );
qApp->setMainWidget( this );
-
QTimer::singleShot( 500, this, SLOT( makeVisible() ) );
}
@@ -734,6 +749,14 @@ void Launcher::applicationScanningProgress( int percent )
void Launcher::documentScanningProgress( int percent )
{
+ if ( !docTabEnabled )
+ {
+ qDebug( "Launcher: document tab disabled!" );
+ tabs->setLoadingProgress( 100 );
+ tabs->setLoadingWidgetEnabled( TRUE );
+ return;
+ }
+
switch ( percent ) {
case 0: {
tabs->setLoadingProgress( 0 );
diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h
index 2917027..1d046ee 100644
--- a/core/launcher/launcher.h
+++ b/core/launcher/launcher.h
@@ -150,6 +150,8 @@ private:
LauncherTabWidget *tabs;
QStringList ids;
TaskBar *tb;
+
+ bool docTabEnabled;
};
#endif // LAUNCHERVIEW_H
diff --git a/core/settings/launcher/doctabsettings.cpp b/core/settings/launcher/doctabsettings.cpp
new file mode 100644
index 0000000..8077b8c
--- a/dev/null
+++ b/core/settings/launcher/doctabsettings.cpp
@@ -0,0 +1,71 @@
+/*
+                This file is part of the OPIE Project
+ =. Copyright (c) 2002 Trolltech AS <info@trolltech.com>
+             .=l. Copyright (c) 2003 Michael Lauer <mickeyl@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,
+     ._= =}       : or (at your option) any later version.
+    .%`+i>       _;_.
+    .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.
+
+*/
+
+#include "doctabsettings.h"
+
+#include <qpe/config.h>
+#include <qpe/qlibrary.h>
+#include <qpe/qpeapplication.h>
+
+#include <qspinbox.h>
+#include <qcheckbox.h>
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qwhatsthis.h>
+
+DocTabSettings::DocTabSettings( QWidget *parent, const char *name ):QWidget( parent, name )
+{
+ QBoxLayout *lay = new QVBoxLayout( this, 4, 4 );
+
+ _enable = new QCheckBox( tr( "Enable the Documents Tab" ), this );
+
+ Config cfg( "Launcher" );
+ cfg.setGroup( "DocTab" );
+ _enable->setChecked( cfg.readBoolEntry( "Enable", true ) );
+
+ lay->addWidget( _enable );
+ lay->addWidget( new QLabel( tr( "<b>Note:</b> Changing these settings may need restarting Opie to become effective." ), this ) );
+
+ lay->addStretch();
+
+ QWhatsThis::add( _enable, tr( "Check, if you want the Documents Tab to be visible." ) );
+}
+
+void DocTabSettings::appletChanged()
+{
+}
+
+void DocTabSettings::accept()
+{
+ qDebug( "DocTabSettings::accept()" );
+ Config cfg( "Launcher" );
+ cfg.setGroup( "DocTab" );
+ cfg.writeEntry( "Enable", _enable->isChecked() );
+ cfg.write();
+}
+
diff --git a/core/settings/launcher/doctabsettings.h b/core/settings/launcher/doctabsettings.h
new file mode 100644
index 0000000..ad6447c
--- a/dev/null
+++ b/core/settings/launcher/doctabsettings.h
@@ -0,0 +1,55 @@
+/*
+               =. This file is part of the OPIE Project
+             .=l. Copyright (c) 2003 Michael Lauer <mickeyl@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,
+     ._= =}       : or (at your option) any later version.
+    .%`+i>       _;_.
+    .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.
+
+*/
+
+#ifndef __DOCTAB_SETTINGS_H__
+#define __DOCTAB_SETTINGS_H__
+
+#include <qwidget.h>
+
+class QCheckBox;
+class QSpinBox;
+
+class DocTabSettings : public QWidget
+{
+ Q_OBJECT
+
+ public:
+ DocTabSettings ( QWidget *parent = 0, const char *name = 0 );
+
+ void accept ( );
+
+ protected slots:
+ void appletChanged ( );
+
+ protected:
+ void init ( );
+
+ private:
+ QCheckBox* _enable;
+};
+
+#endif
diff --git a/core/settings/launcher/inputmethodsettings.cpp b/core/settings/launcher/inputmethodsettings.cpp
index 1aa1ae8..147a00d 100644
--- a/core/settings/launcher/inputmethodsettings.cpp
+++ b/core/settings/launcher/inputmethodsettings.cpp
@@ -45,7 +45,7 @@ InputMethodSettings::InputMethodSettings( QWidget *parent, const char *name ):QW
_resize = new QCheckBox( tr( "Resize application on Popup" ), this );
_float = new QCheckBox( tr( "Enable floating and resizing" ), this );
- QHBoxLayout* hbox = new QHBoxLayout( this, 4, 4 );
+ QHBoxLayout* hbox = new QHBoxLayout( lay, 4 );
hbox->addWidget( new QLabel( "Initial Width:", this ) );
_size = new QSpinBox( 10, 100, 10, this );
_size->setSuffix( "%" );
@@ -60,7 +60,6 @@ InputMethodSettings::InputMethodSettings( QWidget *parent, const char *name ):QW
lay->addWidget( _resize );
lay->addWidget( _float );
- lay->addLayout( hbox );
lay->addWidget( new QLabel( tr( "<b>Note:</b> Changing these settings may need restarting Opie to become effective." ), this ) );
lay->addStretch();
diff --git a/core/settings/launcher/launcher.pro b/core/settings/launcher/launcher.pro
index 9d05832..3261ee8 100644
--- a/core/settings/launcher/launcher.pro
+++ b/core/settings/launcher/launcher.pro
@@ -4,6 +4,7 @@ HEADERS = launchersettings.h \
taskbarsettings.h \
menusettings.h \
inputmethodsettings.h \
+ doctabsettings.h \
tabconfig.h \
tabdialog.h
@@ -13,6 +14,7 @@ SOURCES = main.cpp \
taskbarsettings.cpp \
menusettings.cpp \
inputmethodsettings.cpp \
+ doctabsettings.cpp \
tabdialog.cpp
INCLUDEPATH += $(OPIEDIR)/include
diff --git a/core/settings/launcher/launchersettings.cpp b/core/settings/launcher/launchersettings.cpp
index efc4a86..e129849 100644
--- a/core/settings/launcher/launchersettings.cpp
+++ b/core/settings/launcher/launchersettings.cpp
@@ -36,6 +36,7 @@
#include "menusettings.h"
#include "taskbarsettings.h"
#include "inputmethodsettings.h"
+#include "doctabsettings.h"
LauncherSettings::LauncherSettings (QWidget*,const char*, WFlags)
: QDialog ( 0, "LauncherSettings", false, WStyle_ContextHelp )
@@ -51,12 +52,13 @@ LauncherSettings::LauncherSettings (QWidget*,const char*, WFlags)
m_taskbar = new TaskbarSettings ( tw );
m_menu = new MenuSettings ( tw );
m_imethods = new InputMethodSettings ( tw );
+ m_doctab = new DocTabSettings ( tw );
tw-> addTab ( m_taskbar, "wait", tr( "Taskbar" ));
tw-> addTab ( m_menu, "go", tr( "O-Menu" ));
tw-> addTab ( m_tabs, "launchersettings/tabstab.png", tr( "Tabs" ));
tw-> addTab ( m_imethods, "launchersettings/inputmethod.png", tr( "InputMethods" ));
-
+ tw-> addTab ( m_doctab, "DocsIcon", tr( "DocTab" ) );
tw-> setCurrentTab ( m_taskbar );
}
@@ -66,6 +68,7 @@ void LauncherSettings::accept ( )
m_menu-> accept ( );
m_tabs-> accept ( );
m_imethods-> accept ( );
+ m_doctab-> accept ( );
QDialog::accept ( );
}
diff --git a/core/settings/launcher/launchersettings.h b/core/settings/launcher/launchersettings.h
index 7458d8b..9ba2942 100644
--- a/core/settings/launcher/launchersettings.h
+++ b/core/settings/launcher/launchersettings.h
@@ -34,6 +34,7 @@ class TabsSettings;
class TaskbarSettings;
class MenuSettings;
class InputMethodSettings;
+class DocTabSettings;
class LauncherSettings : public QDialog {
Q_OBJECT
@@ -50,6 +51,7 @@ private:
TaskbarSettings *m_taskbar;
MenuSettings *m_menu;
InputMethodSettings* m_imethods;
+ DocTabSettings *m_doctab;
};
#endif