summaryrefslogtreecommitdiff
path: root/core/pim/datebook
authorumopapisdn <umopapisdn>2003-04-12 03:56:46 (UTC)
committer umopapisdn <umopapisdn>2003-04-12 03:56:46 (UTC)
commit8c690a7bb709773217ba3d39d3ef769a2414cc72 (patch) (side-by-side diff)
treea34bae70ee8dc46f40f60150e1703088fbc4da36 /core/pim/datebook
parent212aef7fd20182fe926644af2ab10a4b49549440 (diff)
downloadopie-8c690a7bb709773217ba3d39d3ef769a2414cc72.zip
opie-8c690a7bb709773217ba3d39d3ef769a2414cc72.tar.gz
opie-8c690a7bb709773217ba3d39d3ef769a2414cc72.tar.bz2
New feature:
Added a configurable option to make the weeklist view display either no times at all, only start times, or both start and end time. Also moved the configuration of default view from the menu into the preference dialog.
Diffstat (limited to 'core/pim/datebook') (more/less context) (show whitespace changes)
-rw-r--r--core/pim/datebook/datebook.cpp120
-rw-r--r--core/pim/datebook/datebook.h6
-rw-r--r--core/pim/datebook/datebooksettingsbase.ui394
-rw-r--r--core/pim/datebook/datebookweeklst.cpp123
-rw-r--r--core/pim/datebook/datebookweeklst.h2
5 files changed, 396 insertions, 249 deletions
diff --git a/core/pim/datebook/datebook.cpp b/core/pim/datebook/datebook.cpp
index 829f8f8..4fbcb10 100644
--- a/core/pim/datebook/datebook.cpp
+++ b/core/pim/datebook/datebook.cpp
@@ -71,10 +71,4 @@
#include <stdlib.h>
-#define DAY 1
-#define WEEK 2
-#define WEEKLST 4
-#define MONTH 3
-
-
DateBook::DateBook( QWidget *parent, const char *, WFlags f )
: QMainWindow( parent, "datebook", f ),
@@ -167,43 +161,18 @@ DateBook::DateBook( QWidget *parent, const char *, WFlags f )
a->addTo( sub_bar );
- a = new QAction( tr( "Alarm and Start Time..." ), QString::null, 0, 0 );
+ a = new QAction( tr( "Edit..." ), QString::null, 0, 0 );
connect( a, SIGNAL( activated() ), this, SLOT( slotSettings() ) );
a->addTo( settings );
- QPopupMenu *default_view = new QPopupMenu(this);
- settings->insertItem( tr( "Default View" ),default_view );
- default_view->setCheckable(TRUE);
+ if(defaultView==DAY) viewDay();
+ if(defaultView==WEEK) needEvilHack=true; // viewWeek();
+ if(defaultView==WEEKLST) viewWeekLst();
+ if(defaultView==MONTH) viewMonth();
- Config config("DateBook");
- config.setGroup("Main");
- int current=config.readNumEntry("defaultview", DAY);
-
- QActionGroup *ag = new QActionGroup(this);
- a = new QAction( tr( "Day" ), QString::null, 0, 0, 0, true );
- if (current==DAY) a->setOn(true), viewDay();
- ag->insert(a);
- a = new QAction( tr( "Week" ), QString::null, 0, 0, 0, true );
- if (current==WEEK) a->setOn(true), /*viewWeek(),*/ needEvilHack = true;
- ag->insert(a);
- a = new QAction( tr( "WeekLst" ), QString::null, 0, 0, 0, true );
- if (current==WEEKLST) a->setOn(true), viewWeekLst();
- ag->insert(a);
- a = new QAction( tr( "Month" ), QString::null, 0, 0, 0, true );
- if (current==MONTH) a->setOn(true), viewMonth();
- ag->insert(a);
-
- ag->addTo(default_view);
- connect(ag, SIGNAL( selected ( QAction * ) ),
- this, SLOT( newDefaultView(QAction *) )
- );
-
- connect( qApp, SIGNAL(clockChanged(bool)),
- this, SLOT(changeClock(bool)) );
- connect( qApp, SIGNAL(weekChanged(bool)),
- this, SLOT(changeWeek(bool)) );
+ connect( qApp, SIGNAL(clockChanged(bool)), this, SLOT(changeClock(bool)) );
+ connect( qApp, SIGNAL(weekChanged(bool)), this, SLOT(changeWeek(bool)) );
#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
- connect( qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)),
- this, SLOT(appMessage(const QCString&, const QByteArray&)) );
+ connect( qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)), this, SLOT(appMessage(const QCString&, const QByteArray&)) );
#endif
@@ -212,9 +181,7 @@ DateBook::DateBook( QWidget *parent, const char *, WFlags f )
#if !defined(QT_NO_COP)
QCopChannel *channel = new QCopChannel( "QPE/System", this );
- connect( channel, SIGNAL(received(const QCString&, const QByteArray&)),
- this, SLOT(receive(const QCString&, const QByteArray&)) );
+ connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), this, SLOT(receive(const QCString&, const QByteArray&)) );
channel = new QCopChannel( "QPE/Datebook", this );
- connect( channel, SIGNAL(received(const QCString&, const QByteArray&)),
- this, SLOT(receive(const QCString&, const QByteArray&)) );
+ connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), this, SLOT(receive(const QCString&, const QByteArray&)) );
qDebug("olle\n");
#endif
@@ -273,4 +240,7 @@ void DateBook::slotSettings()
frmSettings.setJumpToCurTime( bJumpToCurTime );
frmSettings.setRowStyle( rowStyle );
+ frmSettings.comboDefaultView->setCurrentItem(defaultView-1);
+ frmSettings.comboWeekListView->setCurrentItem(weeklistviewconfig);
+
#if defined (Q_WS_QWS) || defined(_WS_QWS_)
frmSettings.showMaximized();
@@ -284,4 +254,6 @@ void DateBook::slotSettings()
bJumpToCurTime = frmSettings.jumpToCurTime();
rowStyle = frmSettings.rowStyle();
+ defaultView=frmSettings.comboDefaultView->currentItem()+1;
+ weeklistviewconfig=frmSettings.comboWeekListView->currentItem();
if ( dayView ) {
@@ -301,4 +273,6 @@ void DateBook::slotSettings()
else if ( views->visibleWidget() == weekView )
weekView->redraw();
+ else if ( views->visibleWidget() == weekLstView )
+ weekLstView->redraw();
}
}
@@ -384,4 +358,5 @@ void DateBook::view(int v, const QDate &d) {
void DateBook::viewDefault(const QDate &d) {
+/*
Config config("DateBook");
config.setGroup("Main");
@@ -389,4 +364,6 @@ void DateBook::viewDefault(const QDate &d) {
view(current,d);
+*/
+ view(defaultView,d);
}
@@ -609,12 +586,9 @@ void DateBook::initMonth()
void DateBook::loadSettings()
{
- {
- Config config( "qpe" );
- config.setGroup("Time");
- ampm = config.readBoolEntry( "AMPM", TRUE );
- onMonday = config.readBoolEntry( "MONDAY" );
- }
+ Config qpeconfig( "qpe" );
+ qpeconfig.setGroup("Time");
+ ampm = qpeconfig.readBoolEntry( "AMPM", TRUE );
+ onMonday = qpeconfig.readBoolEntry( "MONDAY" );
- {
Config config("DateBook");
config.setGroup("Main");
@@ -624,5 +598,6 @@ void DateBook::loadSettings()
bJumpToCurTime = config.readBoolEntry("jumptocurtime");
rowStyle = config.readNumEntry("rowstyle");
- }
+ defaultView = config.readNumEntry("defaultview",DAY);
+ weeklistviewconfig = config.readNumEntry("weeklistviewconfig",NORMAL);
}
@@ -637,16 +612,6 @@ void DateBook::saveSettings()
configDB.writeEntry("jumptocurtime", bJumpToCurTime);
configDB.writeEntry("rowstyle", rowStyle);
-}
-
-void DateBook::newDefaultView(QAction *a) {
- int val=DAY;
- if (a->text() == "Day") val=DAY;
- if (a->text() == "Week") val=WEEK;
- if (a->text() == "WeekLst") val=WEEKLST;
- if (a->text() == "Month") val=MONTH;
-
- Config configDB( "DateBook" );
- configDB.setGroup( "Main" );
- configDB.writeEntry("defaultview",val);
+ configDB.writeEntry("defaultview",defaultView);
+ configDB.writeEntry("weeklistviewconfig",weeklistviewconfig);
}
@@ -663,6 +628,5 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data)
// we are forced given a stale alarm...
QDateTime current = QDateTime::currentDateTime();
- if ( current.time().hour() != when.time().hour()
- && current.time().minute() != when.time().minute() )
+ if ( current.time().hour() != when.time().hour() && current.time().minute() != when.time().minute() )
return;
@@ -673,6 +637,5 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data)
int stopTimer = 0;
bool found = FALSE;
- for ( QValueList<EffectiveEvent>::ConstIterator it=list.begin();
- it!=list.end(); ++it ) {
+ for ( QValueList<EffectiveEvent>::ConstIterator it=list.begin(); it!=list.end(); ++it ) {
if ( (*it).event().hasAlarm() ) {
found = TRUE;
@@ -697,5 +660,4 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data)
stopTimer = startTimer( 5000 );
}
-
QDialog dlg( this, 0, TRUE );
QVBoxLayout *vb = new QVBoxLayout( &dlg );
@@ -721,6 +683,5 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data)
if ( !qApp-> activeWindow ( )) {
needShow = TRUE;
- }
- else {
+ } else {
QWidget* cur = views->visibleWidget();
if ( cur ) {
@@ -752,10 +713,7 @@ void DateBook::reload()
{
db->reload();
- if ( dayAction->isOn() )
- viewDay();
- else if ( weekAction->isOn() )
- viewWeek();
- else if ( monthAction->isOn() )
- viewMonth();
+ if ( dayAction->isOn() ) viewDay();
+ else if ( weekAction->isOn() ) viewWeek();
+ else if ( monthAction->isOn() ) viewMonth();
syncing = FALSE;
}
@@ -772,8 +730,8 @@ void DateBook::timerEvent( QTimerEvent *e )
alarmCounter++;
Sound::soundAlarm();
- }
- else
+ } else {
killTimer( e->timerId() );
}
+}
void DateBook::changeClock( bool newClock )
@@ -796,5 +754,5 @@ void DateBook::slotToday()
{
// we need to view today using default view
- viewDefault(QDate::currentDate());
+ view(defaultView,QDate::currentDate());
}
@@ -810,7 +768,7 @@ void DateBook::closeEvent( QCloseEvent *e )
// need to do checking ourselves.
saveSettings();
- if ( db->save() )
+ if ( db->save() ) {
e->accept();
- else {
+ } else {
if ( QMessageBox::critical( this, tr( "Out of space" ),
tr("Calendar was unable to save\n"
diff --git a/core/pim/datebook/datebook.h b/core/pim/datebook/datebook.h
index 623862b..5216770 100644
--- a/core/pim/datebook/datebook.h
+++ b/core/pim/datebook/datebook.h
@@ -25,4 +25,7 @@
#include <qmainwindow.h>
+enum { DAY=1,WEEK,WEEKLST,MONTH }; // defaultView values
+enum { NONE=0,NORMAL,EXTENDED }; // WeekLstView's modes.
+
class QAction;
class QWidgetStack;
@@ -68,5 +71,4 @@ private slots:
void slotNewEntry(const QDateTime &start, const QDateTime &end, const QString &str, const QString &location=0);
void slotSettings();
- void newDefaultView(QAction *a);
void slotToday(); // view today
void changeClock( bool newClock );
@@ -113,8 +115,10 @@ private:
DateBookWeekLst *weekLstView;
QAction *dayAction, *weekAction, *weekLstAction, *monthAction;
+ int weeklistviewconfig;
bool aPreset; // have everything set to alarm?
int presetTime; // the standard time for the alarm
int startTime;
int rowStyle;
+ int defaultView;
bool bJumpToCurTime; //should jump to current time in dayview?
bool ampm;
diff --git a/core/pim/datebook/datebooksettingsbase.ui b/core/pim/datebook/datebooksettingsbase.ui
index 816a441..3836330 100644
--- a/core/pim/datebook/datebooksettingsbase.ui
+++ b/core/pim/datebook/datebooksettingsbase.ui
@@ -33,6 +33,6 @@
<x>0</x>
<y>0</y>
- <width>220</width>
- <height>290</height>
+ <width>273</width>
+ <height>303</height>
</rect>
</property>
@@ -47,5 +47,5 @@
<name>layoutSpacing</name>
</property>
- <grid>
+ <vbox>
<property stdset="1">
<name>margin</name>
@@ -56,21 +56,28 @@
<number>6</number>
</property>
- <widget row="0" column="0" >
- <class>QGroupBox</class>
+ <widget>
+ <class>QTabWidget</class>
<property stdset="1">
<name>name</name>
- <cstring>fraStart</cstring>
+ <cstring>TabWidget2</cstring>
</property>
+ <widget>
+ <class>QWidget</class>
<property stdset="1">
- <name>frameShape</name>
- <enum>Box</enum>
+ <name>name</name>
+ <cstring>tab</cstring>
</property>
+ <attribute>
+ <name>title</name>
+ <string>Views</string>
+ </attribute>
+ <vbox>
<property stdset="1">
- <name>frameShadow</name>
- <enum>Sunken</enum>
+ <name>margin</name>
+ <number>11</number>
</property>
<property stdset="1">
- <name>title</name>
- <string>Start viewing events</string>
+ <name>spacing</name>
+ <number>6</number>
</property>
<widget>
@@ -78,16 +85,7 @@
<property stdset="1">
<name>name</name>
- <cstring>Layout6</cstring>
- </property>
- <property stdset="1">
- <name>geometry</name>
- <rect>
- <x>3</x>
- <y>21</y>
- <width>210</width>
- <height>53</height>
- </rect>
+ <cstring>Layout5</cstring>
</property>
- <grid>
+ <hbox>
<property stdset="1">
<name>margin</name>
@@ -98,5 +96,5 @@
<number>6</number>
</property>
- <spacer row="1" column="0" >
+ <spacer>
<property>
<name>name</name>
@@ -105,5 +103,5 @@
<property stdset="1">
<name>orientation</name>
- <enum>Vertical</enum>
+ <enum>Horizontal</enum>
</property>
<property stdset="1">
@@ -119,14 +117,83 @@
</property>
</spacer>
- <widget row="0" column="0" >
- <class>QLayoutWidget</class>
+ <widget>
+ <class>QLabel</class>
<property stdset="1">
<name>name</name>
- <cstring>Layout1</cstring>
+ <cstring>TextLabel1_2</cstring>
+ </property>
+ <property stdset="1">
+ <name>text</name>
+ <string>Default view:</string>
+ </property>
+ </widget>
+ <widget>
+ <class>QComboBox</class>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Day</string>
+ </property>
+ </item>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Week</string>
+ </property>
+ </item>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Week List</string>
+ </property>
+ </item>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Month</string>
+ </property>
+ </item>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>comboDefaultView</cstring>
+ </property>
+ </widget>
+ <spacer>
+ <property>
+ <name>name</name>
+ <cstring>Spacer2</cstring>
+ </property>
+ <property stdset="1">
+ <name>orientation</name>
+ <enum>Horizontal</enum>
+ </property>
+ <property stdset="1">
+ <name>sizeType</name>
+ <enum>Expanding</enum>
+ </property>
+ <property>
+ <name>sizeHint</name>
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </hbox>
+ </widget>
+ <widget>
+ <class>QGroupBox</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>GroupBox4</cstring>
</property>
- <hbox>
+ <property stdset="1">
+ <name>title</name>
+ <string>Day</string>
+ </property>
+ <vbox>
<property stdset="1">
<name>margin</name>
- <number>0</number>
+ <number>11</number>
</property>
<property stdset="1">
@@ -135,47 +202,87 @@
</property>
<widget>
- <class>QLabel</class>
+ <class>QCheckBox</class>
<property stdset="1">
<name>name</name>
- <cstring>lblStartTime</cstring>
+ <cstring>chkJumpToCurTime</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>Start Time:</string>
+ <string>Jump to current time</string>
</property>
</widget>
<widget>
- <class>QSpinBox</class>
+ <class>QLayoutWidget</class>
<property stdset="1">
<name>name</name>
- <cstring>spinStart</cstring>
+ <cstring>Layout5</cstring>
</property>
+ <hbox>
<property stdset="1">
- <name>suffix</name>
- <string>:00</string>
+ <name>margin</name>
+ <number>0</number>
</property>
<property stdset="1">
- <name>wrapping</name>
- <bool>true</bool>
+ <name>spacing</name>
+ <number>6</number>
</property>
+ <widget>
+ <class>QLabel</class>
<property stdset="1">
- <name>maxValue</name>
- <number>23</number>
+ <name>name</name>
+ <cstring>TextLabel1</cstring>
+ </property>
+ <property stdset="1">
+ <name>text</name>
+ <string>Row style:</string>
</property>
</widget>
- </hbox>
+ <widget>
+ <class>QComboBox</class>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Default</string>
+ </property>
+ </item>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Medium</string>
+ </property>
+ </item>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Large</string>
+ </property>
+ </item>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>comboRowStyle</cstring>
+ </property>
</widget>
- </grid>
+ </hbox>
</widget>
+ </vbox>
</widget>
- <widget row="1" column="0" >
+ <widget>
<class>QGroupBox</class>
<property stdset="1">
<name>name</name>
- <cstring>fraAlarm</cstring>
+ <cstring>GroupBox5</cstring>
</property>
<property stdset="1">
<name>title</name>
- <string>Alarm Settings</string>
+ <string>Week List</string>
+ </property>
+ <vbox>
+ <property stdset="1">
+ <name>margin</name>
+ <number>11</number>
+ </property>
+ <property stdset="1">
+ <name>spacing</name>
+ <number>6</number>
</property>
<widget>
@@ -183,16 +290,7 @@
<property stdset="1">
<name>name</name>
- <cstring>Layout4</cstring>
- </property>
- <property stdset="1">
- <name>geometry</name>
- <rect>
- <x>10</x>
- <y>20</y>
- <width>200</width>
- <height>53</height>
- </rect>
+ <cstring>Layout6</cstring>
</property>
- <grid>
+ <hbox>
<property stdset="1">
<name>margin</name>
@@ -203,8 +301,48 @@
<number>6</number>
</property>
- <spacer row="1" column="0" >
+ <widget>
+ <class>QLabel</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>TextLabel2</cstring>
+ </property>
+ <property stdset="1">
+ <name>text</name>
+ <string>Time display</string>
+ </property>
+ </widget>
+ <widget>
+ <class>QComboBox</class>
+ <item>
+ <property>
+ <name>text</name>
+ <string>None</string>
+ </property>
+ </item>
+ <item>
+ <property>
+ <name>text</name>
+ <string>Start</string>
+ </property>
+ </item>
+ <item>
<property>
+ <name>text</name>
+ <string>Start-End</string>
+ </property>
+ </item>
+ <property stdset="1">
<name>name</name>
- <cstring>Spacer2</cstring>
+ <cstring>comboWeekListView</cstring>
+ </property>
+ </widget>
+ </hbox>
+ </widget>
+ </vbox>
+ </widget>
+ <spacer>
+ <property>
+ <name>name</name>
+ <cstring>Spacer3_2</cstring>
</property>
<property stdset="1">
@@ -224,5 +362,45 @@
</property>
</spacer>
- <widget row="0" column="0" >
+ </vbox>
+ </widget>
+ <widget>
+ <class>QWidget</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>tab</cstring>
+ </property>
+ <attribute>
+ <name>title</name>
+ <string>Misc</string>
+ </attribute>
+ <vbox>
+ <property stdset="1">
+ <name>margin</name>
+ <number>11</number>
+ </property>
+ <property stdset="1">
+ <name>spacing</name>
+ <number>6</number>
+ </property>
+ <widget>
+ <class>QGroupBox</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>GroupBox6</cstring>
+ </property>
+ <property stdset="1">
+ <name>title</name>
+ <string>Alarm Settings</string>
+ </property>
+ <vbox>
+ <property stdset="1">
+ <name>margin</name>
+ <number>11</number>
+ </property>
+ <property stdset="1">
+ <name>spacing</name>
+ <number>6</number>
+ </property>
+ <widget>
<class>QLayoutWidget</class>
<property stdset="1">
@@ -283,16 +461,24 @@
</hbox>
</widget>
- </grid>
- </widget>
+ </vbox>
</widget>
- <widget row="2" column="0" >
+ <widget>
<class>QGroupBox</class>
<property stdset="1">
<name>name</name>
- <cstring>fraMisc</cstring>
+ <cstring>GroupBox7</cstring>
</property>
<property stdset="1">
<name>title</name>
- <string>Misc</string>
+ <string>Start viewing events</string>
+ </property>
+ <vbox>
+ <property stdset="1">
+ <name>margin</name>
+ <number>11</number>
+ </property>
+ <property stdset="1">
+ <name>spacing</name>
+ <number>6</number>
</property>
<widget>
@@ -300,14 +486,5 @@
<property stdset="1">
<name>name</name>
- <cstring>Layout5</cstring>
- </property>
- <property stdset="1">
- <name>geometry</name>
- <rect>
- <x>10</x>
- <y>40</y>
- <width>170</width>
- <height>24</height>
- </rect>
+ <cstring>Layout1</cstring>
</property>
<hbox>
@@ -324,60 +501,59 @@
<property stdset="1">
<name>name</name>
- <cstring>TextLabel1</cstring>
+ <cstring>lblStartTime</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>Row style:</string>
+ <string>Start Time:</string>
</property>
</widget>
<widget>
- <class>QComboBox</class>
- <item>
- <property>
- <name>text</name>
- <string>Default</string>
+ <class>QSpinBox</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>spinStart</cstring>
</property>
- </item>
- <item>
- <property>
- <name>text</name>
- <string>Medium</string>
+ <property stdset="1">
+ <name>suffix</name>
+ <string>:00</string>
</property>
- </item>
- <item>
- <property>
- <name>text</name>
- <string>Large</string>
+ <property stdset="1">
+ <name>wrapping</name>
+ <bool>true</bool>
</property>
- </item>
<property stdset="1">
- <name>name</name>
- <cstring>comboRowStyle</cstring>
+ <name>maxValue</name>
+ <number>23</number>
</property>
</widget>
</hbox>
</widget>
- <widget>
- <class>QCheckBox</class>
- <property stdset="1">
+ </vbox>
+ </widget>
+ <spacer>
+ <property>
<name>name</name>
- <cstring>chkJumpToCurTime</cstring>
+ <cstring>Spacer9</cstring>
</property>
<property stdset="1">
- <name>geometry</name>
- <rect>
- <x>10</x>
- <y>20</y>
- <width>200</width>
- <height>20</height>
- </rect>
+ <name>orientation</name>
+ <enum>Vertical</enum>
</property>
<property stdset="1">
- <name>text</name>
- <string>Jump to current time (dayview)</string>
+ <name>sizeType</name>
+ <enum>Expanding</enum>
</property>
+ <property>
+ <name>sizeHint</name>
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </vbox>
</widget>
</widget>
- </grid>
+ </vbox>
</widget>
<connections>
diff --git a/core/pim/datebook/datebookweeklst.cpp b/core/pim/datebook/datebookweeklst.cpp
index 3d6a029..3c8fc89 100644
--- a/core/pim/datebook/datebookweeklst.cpp
+++ b/core/pim/datebook/datebookweeklst.cpp
@@ -3,4 +3,6 @@
#include "datebookweekheaderimpl.h"
+#include "datebook.h"
+
#include <qpe/calendar.h>
#include <qpe/datebookdb.h>
@@ -144,22 +146,42 @@ void DateBookWeekLstDayHdr::newEvent() {
}
DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev,
+ int weeklistviewconfig,
QWidget* parent,
const char* name,
- WFlags fl) :
- OClickableLabel(parent,name,fl),
- event(ev)
+ WFlags fl ) : OClickableLabel(parent,name,fl), event(ev)
{
- char s[10];
- if ( ev.startDate() != ev.date() ) { // multiday event (not first day)
- if ( ev.endDate() == ev.date() ) { // last day
- strcpy(s, "__|__");
- } else {
- strcpy(s, " |---");
+ // old values... lastday = "__|__", middle=" |---", Firstday="00:00",
+ QString s,start,middle,end,day;
+
+ qDebug("weeklistviewconfig=%d",weeklistviewconfig);
+ if(weeklistviewconfig==NONE) { // No times displayed.
+// start.sprintf("%.2d:%.2d-",ev.start().hour(),ev.start().minute());
+// middle.sprintf("<--->");
+// end.sprintf("-%.2d:%.2d",ev.end().hour(),ev.end().minute());
+// day.sprintf("%.2d:%.2d-%.2d:%.2d",ev.start().hour(),ev.start().minute(),ev.end().hour(),ev.end().minute());
+ } else if(weeklistviewconfig==NORMAL) { // "Normal", only display start time.
+ start.sprintf("%.2d:%.2d",ev.start().hour(),ev.start().minute());
+ middle.sprintf(" |---");
+ end.sprintf("__|__");
+ day.sprintf("%.2d:%.2d",ev.start().hour(),ev.start().minute());
+ } else if(weeklistviewconfig==EXTENDED) { // Extended mode, display start and end times.
+ start.sprintf("%.2d:%.2d-",ev.start().hour(),ev.start().minute());
+ middle.sprintf("<--->");
+ end.sprintf("-%.2d:%.2d",ev.end().hour(),ev.end().minute());
+ day.sprintf("%.2d:%.2d-%.2d:%.2d",ev.start().hour(),ev.start().minute(),ev.end().hour(),ev.end().minute());
+ }
+
+ if(ev.event().type() == Event::Normal) {
+ if(ev.startDate()==ev.date() && ev.endDate()==ev.date()) { // day event.
+ s=day;
+ } else if(ev.startDate()==ev.date()) { // start event.
+ s=start;
+ } else if(ev.endDate()==ev.date()) { // end event.
+ s=end;
+ } else { // middle day.
+ s=middle;
}
} else {
- if(ev.event().type() == Event::Normal )
- sprintf(s,"%.2d:%.2d",ev.start().hour(),ev.start().minute());
- else
- sprintf(s," ");
+ s="";
}
setText(QString(s) + " " + ev.description());
@@ -178,4 +200,9 @@ DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev,
: QWidget( parent, name, fl )
{
+ Config config("DateBook");
+ config.setGroup("Main");
+ int weeklistviewconfig=config.readNumEntry("weeklistviewconfig", NORMAL);
+ qDebug("Read weeklistviewconfig: %d",weeklistviewconfig);
+
onMonday=onM;
setPalette(white);
@@ -189,7 +216,7 @@ DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev,
int dayOrder[7];
- if (onMonday)
+ if (onMonday) {
for (int d=0; d<7; d++) dayOrder[d]=d+1;
- else {
+ } else {
for (int d=0; d<7; d++) dayOrder[d]=d;
dayOrder[0]=7;
@@ -198,14 +225,9 @@ DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev,
for (int i=0; i<7; i++) {
// Header
- DateBookWeekLstDayHdr *hdr=new DateBookWeekLstDayHdr(d.addDays(i),
- onMonday,this);
+ DateBookWeekLstDayHdr *hdr=new DateBookWeekLstDayHdr(d.addDays(i), onMonday,this);
connect(hdr, SIGNAL(showDate(int,int,int)),
this, SIGNAL(showDate(int,int,int)));
- connect(hdr, SIGNAL(addEvent(const QDateTime &,
- const QDateTime &,
- const QString &, const QString &)),
- this, SIGNAL(addEvent(const QDateTime &,
- const QDateTime &,
- const QString &, const QString &)));
+ connect(hdr, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)),
+ this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)));
layout->addWidget(hdr);
@@ -213,8 +235,7 @@ DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev,
while ( (*it).date().dayOfWeek() == dayOrder[i] && it!=ev.end() ) {
if(!(((*it).end().hour()==0) && ((*it).end().minute()==0) && ((*it).startDate()!=(*it).date()))) { // Skip events ending at 00:00 starting at another day.
- DateBookWeekLstEvent *l=new DateBookWeekLstEvent(*it,this);
+ DateBookWeekLstEvent *l=new DateBookWeekLstEvent(*it,weeklistviewconfig,this);
layout->addWidget(l);
- connect (l, SIGNAL(editEvent(const Event &)),
- this, SIGNAL(editEvent(const Event &)));
+ connect (l, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &)));
}
it++;
@@ -238,24 +259,16 @@ DateBookWeekLstDblView::DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1,
DateBookWeekLstView *w=new DateBookWeekLstView(ev1,d,onM,this);
layout->addWidget(w);
- connect (w, SIGNAL(editEvent(const Event &)),
- this, SIGNAL(editEvent(const Event &)));
- connect (w, SIGNAL(showDate(int,int,int)),
- this, SIGNAL(showDate(int,int,int)));
- connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &,
- const QString &,const QString &)),
- this, SIGNAL(addEvent(const QDateTime &, const QDateTime &,
- const QString &, const QString &)));
+ connect (w, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &)));
+ connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int)));
+ connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &,const QString &)),
+ this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)));
w=new DateBookWeekLstView(ev2,d.addDays(7),onM,this);
layout->addWidget(w);
- connect (w, SIGNAL(editEvent(const Event &)),
- this, SIGNAL(editEvent(const Event &)));
- connect (w, SIGNAL(showDate(int,int,int)),
- this, SIGNAL(showDate(int,int,int)));
- connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &,
- const QString &, const QString &)),
- this, SIGNAL(addEvent(const QDateTime &, const QDateTime &,
- const QString &, const QString &)));
+ connect (w, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &)));
+ connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int)));
+ connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)),
+ this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)));
}
@@ -275,8 +288,6 @@ DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB,
header=new DateBookWeekLstHeader(onM, this);
layout->addWidget( header );
- connect(header, SIGNAL(dateChanged(int,int)),
- this, SLOT(dateChanged(int,int)));
- connect(header, SIGNAL(setDbl(bool)),
- this, SLOT(setDbl(bool)));
+ connect(header, SIGNAL(dateChanged(int,int)), this, SLOT(dateChanged(int,int)));
+ connect(header, SIGNAL(setDbl(bool)), this, SLOT(setDbl(bool)));
scroll=new QScrollView(this);
@@ -317,6 +328,9 @@ QDate DateBookWeekLst::date() const {
int dow= d.dayOfWeek();
if (!onMonday)
- if (dow==7) dow=1;
- else dow++;
+ if (dow==7) {
+ dow=1;
+ } else {
+ dow++;
+ }
d=d.addDays( (_week-1)*7 - dow + 1 );
@@ -334,5 +348,4 @@ void DateBookWeekLst::getEvents() {
stop=start2.addDays(6);
QValueList<EffectiveEvent> el2 = db->getEffectiveEvents(start2, stop);
-
view=new DateBookWeekLstDblView(el,el2,start,onMonday,scroll);
} else {
@@ -340,12 +353,8 @@ void DateBookWeekLst::getEvents() {
}
- connect (view, SIGNAL(editEvent(const Event &)),
- this, SIGNAL(editEvent(const Event &)));
- connect (view, SIGNAL(showDate(int,int,int)),
- this, SIGNAL(showDate(int,int,int)));
- connect (view, SIGNAL(addEvent(const QDateTime &, const QDateTime &,
- const QString &, const QString &)),
- this, SIGNAL(addEvent(const QDateTime &, const QDateTime &,
- const QString &, const QString &)));
+ connect (view, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &)));
+ connect (view, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int)));
+ connect (view, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)),
+ this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)));
scroll->addChild(view);
diff --git a/core/pim/datebook/datebookweeklst.h b/core/pim/datebook/datebookweeklst.h
index ea88f20..17dc01f 100644
--- a/core/pim/datebook/datebookweeklst.h
+++ b/core/pim/datebook/datebookweeklst.h
@@ -60,5 +60,5 @@ class DateBookWeekLstEvent: public OClickableLabel
Q_OBJECT
public:
- DateBookWeekLstEvent(const EffectiveEvent &ev,
+ DateBookWeekLstEvent(const EffectiveEvent &ev, int weeklistviewconfig =1,
QWidget* parent = 0, const char* name = 0,
WFlags fl = 0);