author | drw <drw> | 2005-02-02 18:37:52 (UTC) |
---|---|---|
committer | drw <drw> | 2005-02-02 18:37:52 (UTC) |
commit | c024777b6760a4e950e6df04a6e1e5894b0e3659 (patch) (side-by-side diff) | |
tree | be77bb8f1bc3bfe7ab961cfe0525979c8145139a | |
parent | 5b2a4d83b6b60cc9ca634aeb481cf15d70fc9b2f (diff) | |
download | opie-c024777b6760a4e950e6df04a6e1e5894b0e3659.zip opie-c024777b6760a4e950e6df04a6e1e5894b0e3659.tar.gz opie-c024777b6760a4e950e6df04a6e1e5894b0e3659.tar.bz2 |
Minor update to work with new OPimMainWindow
-rw-r--r-- | core/pim/todo/mainwindow.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp index 75da27c..9013522 100644 --- a/core/pim/todo/mainwindow.cpp +++ b/core/pim/todo/mainwindow.cpp @@ -1,266 +1,267 @@ /* =. This file is part of the OPIE Project .=l. Copyright (c) 2002 <> .>+-= _;:, .> :=|. This program 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 program 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 ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include <unistd.h> #include <opie2/odebug.h> #include <opie2/opimrecurrence.h> #include <opie2/opimnotifymanager.h> #include <opie2/otodoaccessvcal.h> #include <opie2/oapplicationfactory.h> #include <qpe/applnk.h> #include <qpe/config.h> #include <qpe/ir.h> #include <qpe/resource.h> #include <qpe/qpemessagebox.h> #include <qpe/alarmserver.h> #include <qpe/qpeapplication.h> #include <qaction.h> #include <qlayout.h> #include <qmenubar.h> #include <qmessagebox.h> #include <qpushbutton.h> #include <qstringlist.h> #include <qtimer.h> #include <qwhatsthis.h> #include "quickeditimpl.h" #include "todotemplatemanager.h" #include "templatedialogimpl.h" #include "tableview.h" #include "textviewshow.h" #include "todoeditor.h" #include "newtaskdlg.h" #include "mainwindow.h" using Opie::Core::OApplicationFactory; OPIE_EXPORT_APP( OApplicationFactory<Todo::MainWindow> ) using namespace Opie; using namespace Todo; MainWindow::MainWindow( QWidget* parent, const char* name, WFlags ) - : Opie::OPimMainWindow( "Todolist", tr( "Todo List" ), "Todo List", tr( "Task" ), "todo", + : Opie::OPimMainWindow( "Todolist", "Todo List", tr( "Task" ), "todo", parent, name, WType_TopLevel | WStyle_ContextHelp ) { + setCaption( tr( "Todo List" ) ); if (!name) setName("todo window"); m_syncing = false; m_showing = false; m_counter = 0; m_tempManager = new TemplateManager(); m_tempManager->load(); initConfig(); initUI(); initViews(); initActions(); initEditor(); initShow(); raiseCurrentView(); QTimer::singleShot( 0, this, SLOT(initStuff()) ); } void MainWindow::initStuff() { m_todoMgr.load(); setViewCategory( m_curCat ); setCategory( m_curCat ); } void MainWindow::initActions() { // Insert Task menu items QActionGroup *items = new QActionGroup( this, QString::null, false ); m_deleteCompleteAction = new QAction( QString::null, QWidget::tr( "Delete completed" ), 0, items, 0 ); connect( m_deleteCompleteAction, SIGNAL(activated()), this, SLOT(slotDeleteCompleted()) ); insertItemMenuItems( items ); // Insert View menu items items = new QActionGroup( this, QString::null, false ); m_completedAction = new QAction( QString::null, QWidget::tr("Show completed tasks"), 0, items, 0, true ); m_completedAction->setOn( showCompleted() ); connect( m_completedAction, SIGNAL(toggled(bool)), this, SLOT(slotShowCompleted(bool)) ); QAction *a = new QAction( QString::null, QWidget::tr("Show only over-due tasks"), 0, items, 0, true ); a->setOn( showOverDue() ); connect( a, SIGNAL(toggled(bool)), this, SLOT(slotShowDue(bool)) ); m_showDeadLineAction = new QAction( QString::null, QWidget::tr("Show task deadlines"), 0, items, 0, true ); m_showDeadLineAction->setOn( showDeadline() ); connect( m_showDeadLineAction, SIGNAL(toggled(bool)), this, SLOT(slotShowDeadLine(bool)) ); m_showQuickTaskAction = new QAction( QString::null, QWidget::tr("Show quick task bar"), 0, items, 0, true ); m_showQuickTaskAction->setOn( showQuickTask() ); connect( m_showQuickTaskAction, SIGNAL(toggled(bool)), this, SLOT(slotShowQuickTask(bool)) ); insertViewMenuItems( items ); } /* m_curCat from Config */ void MainWindow::initConfig() { Config config( "todo" ); config.setGroup( "View" ); m_completed = config.readBoolEntry( "ShowComplete", true ); m_curCat = config.readEntry( "Category", QString::null ); m_deadline = config.readBoolEntry( "ShowDeadLine", true); m_overdue = config.readBoolEntry("ShowOverDue", false ); m_quicktask = config.readBoolEntry("ShowQuickTask", true); } void MainWindow::initUI() { // Create main widget stack m_stack = new Opie::Ui::OWidgetStack(this, "main stack"); setCentralWidget( m_stack ); connect( this, SIGNAL(categorySelected(const QString&)), this, SLOT(setCategory(const QString&)) ); // Create quick task toolbar m_curQuick = new QuickEditImpl( this, m_quicktask ); addToolBar( (QToolBar *)m_curQuick->widget(), QWidget::tr( "QuickEdit" ), QMainWindow::Top, true ); m_curQuick->signal()->connect( this, SLOT(slotQuickEntered()) ); } void MainWindow::initViews() { TableView* tableView = new TableView( this, m_stack ); QWhatsThis::add( tableView, QWidget::tr( "This is a listing of all current tasks.\n\nThe list displays the following information:\n1. Completed - A green checkmark indicates task is completed. Click here to complete a task.\n2. Priority - a graphical representation of task priority. Double-click here to modify.\n3. Description - description of task. Click here to select the task.\n4. Deadline - shows when task is due. This column can be shown or hidden by selecting Options->'Show task deadlines' from the menu above." ) ); m_stack->addWidget( tableView, m_counter++ ); m_views.append( tableView ); m_curView = tableView; connectBase( tableView ); /* add QString type + QString configname to * the View menu * and subdirs for multiple views */ } void MainWindow::initEditor() { m_curEdit = new Editor(); } void MainWindow::initShow() { m_curShow = new TextViewShow(this, this); m_stack->addWidget( m_curShow->widget() , m_counter++ ); } MainWindow::~MainWindow() { delete templateManager(); } void MainWindow::connectBase( ViewBase* ) { // once templates and signals mix we'll use it again } QPopupMenu* MainWindow::contextMenu( int , bool /*recur*/ ) { return itemContextMenu(); } OPimTodoAccess::List MainWindow::list()const { return m_todoMgr.list(); } OPimTodoAccess::List MainWindow::sorted( bool asc, int sortOrder ) { int cat = 0; if ( m_curCat != tr( "All" ) ) cat = currentCatId(); if ( m_curCat == tr( "Unfiled" ) ) cat = -1; int filter = OPimTodoAccess::FilterCategory; if (!m_completed ) filter |= OPimTodoAccess::DoNotShowCompleted; if (m_overdue) filter |= OPimTodoAccess::OnlyOverDue; return m_todoMgr.sorted( asc, sortOrder, filter, cat ); } OPimTodoAccess::List MainWindow::sorted( bool asc, int sortOrder, int addFilter) { int cat = 0; if ( m_curCat != tr( "All" ) ) cat = currentCatId(); if ( m_curCat == tr( "Unfiled" ) ) cat = -1; return m_todoMgr.sorted(asc, sortOrder, addFilter, cat ); } OPimTodo MainWindow::event( int uid ) { return m_todoMgr.event( uid ); } bool MainWindow::isSyncing()const { return m_syncing; } TemplateManager* MainWindow::templateManager() { return m_tempManager; } Editor* MainWindow::currentEditor() { return m_curEdit; } TodoShow* MainWindow::currentShow() { return m_curShow; } void MainWindow::slotReload() { m_syncing = false; m_todoMgr.reload(); currentView()->updateView( ); raiseCurrentView(); } void MainWindow::closeEvent( QCloseEvent* e ) { if (m_stack->visibleWidget() == currentShow()->widget() ) { m_showing = false; raiseCurrentView(); e->ignore(); return; } /* * we should have flushed and now we're still saving * so there is no need to flush */ if (m_syncing ) { e->accept(); return; } bool quit = false; if ( m_todoMgr.saveAll() ){ quit = true; }else { if ( QMessageBox::critical( this, QWidget::tr("Out of space"), QWidget::tr("Todo was unable\n" "to save your changes.\n" "Free up some space\n" "and try again.\n" "\nQuit Anyway?"), QMessageBox::Yes|QMessageBox::Escape, QMessageBox::No|QMessageBox::Default) != QMessageBox::No ) { e->accept(); quit = true; }else |