korganizer Library API Documentation

koprojectview.h

00001 /*
00002     This file is part of KOrganizer.
00003     Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
00004 
00005     This program is free software; you can redistribute it and/or modify
00006     it under the terms of the GNU General Public License as published by
00007     the Free Software Foundation; either version 2 of the License, or
00008     (at your option) any later version.
00009 
00010     This program is distributed in the hope that it will be useful,
00011     but WITHOUT ANY WARRANTY; without even the implied warranty of
00012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00013     GNU General Public License for more details.
00014 
00015     You should have received a copy of the GNU General Public License
00016     along with this program; if not, write to the Free Software
00017     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00018 */
00019 #ifndef KOPROJECTVIEW_H
00020 #define KOPROJECTVIEW_H
00021 /* $Id: koprojectview.h,v 1.8 2003/09/08 18:03:37 kainhofe Exp $ */
00022 
00023 #include <qptrlist.h>
00024 #include <qfontmetrics.h>
00025 
00026 #include <qmap.h>
00027 
00028 #include <libkcal/calendar.h>
00029 #include <libkcal/event.h>
00030 
00031 #include "korganizer/baseview.h"
00032 #include "KGanttItem.h"
00033 
00034 class KGantt;
00035 class QLineEdit;
00036 class QFont;
00037 class QLabel;
00038 class QPopupMenu;
00039 class QListBox;
00040 class QStrList;
00041 class QListView;
00042 
00047 class KOProjectViewItem : public KGanttItem {
00048   public:
00049     KOProjectViewItem(Todo *,KGanttItem* parentTask, const QString& text,
00050                       const QDateTime& start, const QDateTime& end);
00051     ~KOProjectViewItem();
00052 
00053     Todo *event();
00054 
00055   private:
00056     Todo *mEvent;
00057 };
00058 
00059 
00066 class KOProjectView : public KOrg::BaseView
00067 {
00068     Q_OBJECT
00069   public:
00070     KOProjectView(Calendar *, QWidget* parent=0, const char* name=0 );
00071     ~KOProjectView() {}
00072 
00073     Incidence::List selectedIncidences();
00074     DateList selectedDates();
00075 
00077     int currentDateCount() { return 0; }
00078 
00079     void readSettings();
00080     void writeSettings(KConfig *);
00081 
00082   public slots:
00083     void updateView();
00084     void updateConfig();
00085 
00086     void changeEventDisplay(Event *, int);
00087 
00088     void showDates(const QDate &start, const QDate &end);
00089     void showEvents( const Event::List & );
00090 
00091 /*
00092     void editItem(QListViewItem *item);
00093     void showItem(QListViewItem *item);
00094     void popupMenu(QListViewItem *item,const QPoint &,int);
00095     void newTodo();
00096     void newSubTodo();
00097     void showTodo();
00098     void editTodo();
00099     void deleteTodo();
00100     void purgeCompleted();
00101     void itemClicked(QListViewItem *);
00102 */
00103 
00104   protected slots:
00105     void showModeMenu();
00106     void zoomIn();
00107     void zoomOut();
00108     void taskChanged(KGanttItem *task,KGanttItem::Change change);
00109 
00110   signals:
00111     void newTodoSignal();
00112     void newSubTodoSignal(Todo *);
00113     void showTodoSignal(Todo *);
00114     void editTodoSignal(Todo *);
00115     void deleteTodoSignal(Todo *);
00116 
00117   private:
00118     void createMainTask();
00119     KGanttItem *createTask(KGanttItem *,Todo *);
00120 
00121     KGantt *mGantt;
00122     KGanttItem *mMainTask;
00123 
00124     QMap<Todo *,KGanttItem *>::ConstIterator insertTodoItem(Todo *todo);
00125 
00126     QMap<Todo *,KGanttItem *> mTodoMap;
00127 };
00128 
00129 #endif
KDE Logo
This file is part of the documentation for korganizer Library Version 3.2.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat May 1 11:38:30 2004 by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2003