7 files changed, 385 insertions, 86 deletions
diff --git a/core/pim/today/plugins/datebook/datebook.pro b/core/pim/today/plugins/datebook/datebook.pro index 2139f63..1f75964 100644 --- a/core/pim/today/plugins/datebook/datebook.pro +++ b/core/pim/today/plugins/datebook/datebook.pro @@ -1,24 +1,25 @@ TEMPLATE = lib CONFIG -= moc -CONFIG += qt plugin release +CONFIG += qt release # Input HEADERS = datebookplugin.h datebookpluginimpl.h datebookpluginconfig.h \ datebookevent.h datebookpluginwidget.h SOURCES = datebookplugin.cpp datebookpluginimpl.cpp datebookpluginconfig.cpp \ datebookevent.cpp datebookpluginwidget.cpp +INTERFACES = datebookpluginconfigbase.ui INCLUDEPATH += $(OPIEDIR)/include \ ../ ../library DEPENDPATH += $(OPIEDIR)/include \ ../ ../library LIBS+= -lqpe -lopie DESTDIR = $(OPIEDIR)/plugins/today TARGET = todaydatebookplugin TRANSLATIONS = ../../../../../i18n/de/libtodaydatebookplugin.ts \ ../../../../../i18n/nl/libtodaydatebookplugin.ts \ ../../../../../i18n/xx/libtodaydatebookplugin.ts \ ../../../../../i18n/en/libtodaydatebookplugin.ts \ ../../../../../i18n/es/libtodaydatebookplugin.ts \ diff --git a/core/pim/today/plugins/datebook/datebookpluginconfig.cpp b/core/pim/today/plugins/datebook/datebookpluginconfig.cpp index 0477122..54f820b 100644 --- a/core/pim/today/plugins/datebook/datebookpluginconfig.cpp +++ b/core/pim/today/plugins/datebook/datebookpluginconfig.cpp @@ -15,103 +15,63 @@ ***************************************************************************/ #include "datebookpluginconfig.h" #include <qpe/config.h> #include <qlayout.h> #include <qlabel.h> #include <qhbox.h> #include <qwhatsthis.h> #include <qvbox.h> DatebookPluginConfig::DatebookPluginConfig( QWidget* parent, const char* name) : TodayConfigWidget( parent, name ) { - QVBoxLayout * layout = new QVBoxLayout( this ); - layout->setMargin( 20 ); + QVBoxLayout *layout = new QVBoxLayout( this ); - QHBox *box1 = new QHBox( this ); - QLabel* TextLabel4 = new QLabel( box1, "TextLabel4" ); - TextLabel4->setText( tr( "Show location" ) ); - CheckBox1 = new QCheckBox( box1, "CheckBox1" ); - QWhatsThis::add( CheckBox1 , tr( "Check this if the location of an appointment should be shown for each one" ) ); + m_gui = new DatebookPluginConfigBase( this ); - QHBox *box2 = new QHBox( this ); - QLabel* TextLabel5 = new QLabel( box2 , "TextLabel5" ); - TextLabel5->setText( tr( "Show notes" ) ); - CheckBox2 = new QCheckBox( box2, "CheckBox2" ); - QWhatsThis::add( CheckBox2 , tr( "Check this if the note attached to an appointment should be shown for each one" ) ); - - QHBox *box3 = new QHBox( this ); - QLabel* TextLabel6 = new QLabel( box3, "All Day"); - TextLabel6->setText( tr( "Show only later\n appointments") ); - CheckBox3 = new QCheckBox ( box3, "CheckBox3" ); - QWhatsThis::add( CheckBox3 , tr( "Check this if only appointments later then current time should be shown" ) ); - - - - QHBox *box4 = new QHBox( this ); - QLabel *TextLabel3 = new QLabel( box4, "TextLabel3" ); - TextLabel3->setText( tr( "How many \nappointment\n" - "should be \nshown?" ) ); - SpinBox1 = new QSpinBox( box4, "SpinBox1" ); - QWhatsThis::add( SpinBox1 , tr( "How many appointments should be shown maximal. In chronical order" ) ); - SpinBox1->setMaxValue( 10 ); - SpinBox1->setValue( 5 ); - - - QHBox *box5 = new QHBox( this ); - QLabel *TextLabelDays = new QLabel( box5 ); - TextLabelDays->setText( tr( "How many more days" ) ); - SpinBox2 = new QSpinBox( box5, "SpinBox2" ); - QWhatsThis::add( SpinBox2 , tr( "How many more days should be in the range" ) ); - SpinBox2->setMaxValue( 21 ); - SpinBox2->setSuffix( tr( " day(s)" ) ); - SpinBox2->setSpecialValueText ( tr("only today") ); - - layout->addWidget( box1 ); - layout->addWidget( box2 ); - layout->addWidget( box3 ); - layout->addWidget( box4 ); - layout->addWidget( box5 ); + layout->addWidget( m_gui ); readConfig(); } void DatebookPluginConfig::readConfig() { Config cfg( "todaydatebookplugin" ); cfg.setGroup( "config" ); m_max_lines_meet = cfg.readNumEntry( "maxlinesmeet", 5 ); - SpinBox1->setValue( m_max_lines_meet ); + m_gui->SpinBox1->setValue( m_max_lines_meet ); m_show_location = cfg.readNumEntry( "showlocation", 1 ); - CheckBox1->setChecked( m_show_location ); + m_gui->CheckBox1->setChecked( m_show_location ); m_show_notes = cfg.readNumEntry( "shownotes", 0 ); - CheckBox2->setChecked( m_show_notes ); + m_gui->CheckBox2->setChecked( m_show_notes ); m_only_later = cfg.readNumEntry( "onlylater", 1 ); - CheckBox3->setChecked( m_only_later ); + m_gui->CheckBox4->setChecked( cfg.readNumEntry( "timeextraline", 1 ) ); + m_gui->CheckBox3->setChecked( m_only_later ); m_more_days = cfg.readNumEntry( "moredays", 0 ); - SpinBox2->setValue( m_more_days ); + m_gui->SpinBox2->setValue( m_more_days ); } void DatebookPluginConfig::writeConfig() { Config cfg( "todaydatebookplugin" ); cfg.setGroup( "config" ); - m_max_lines_meet = SpinBox1->value(); + m_max_lines_meet = m_gui->SpinBox1->value(); cfg.writeEntry( "maxlinesmeet", m_max_lines_meet); - m_show_location = CheckBox1->isChecked(); + m_show_location = m_gui->CheckBox1->isChecked(); cfg.writeEntry( "showlocation", m_show_location); - m_show_notes = CheckBox2->isChecked(); + m_show_notes = m_gui->CheckBox2->isChecked(); cfg.writeEntry( "shownotes", m_show_notes ); - m_only_later = CheckBox3->isChecked(); + m_only_later = m_gui->CheckBox3->isChecked(); + cfg.writeEntry( "timeextraline", m_gui->CheckBox4->isChecked() ); cfg.writeEntry( "onlylater", m_only_later ); - m_more_days = SpinBox2->value(); + m_more_days = m_gui->SpinBox2->value(); cfg.writeEntry( "moredays", m_more_days ); cfg.write(); } DatebookPluginConfig::~DatebookPluginConfig() { } diff --git a/core/pim/today/plugins/datebook/datebookpluginconfigbase.ui b/core/pim/today/plugins/datebook/datebookpluginconfigbase.ui new file mode 100644 index 0000000..943e8ec --- a/dev/null +++ b/core/pim/today/plugins/datebook/datebookpluginconfigbase.ui @@ -0,0 +1,218 @@ +<!DOCTYPE UI><UI> +<class>DatebookPluginConfigBase</class> +<widget> + <class>QWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>DatebookPluginConfigBase</cstring> + </property> + <property stdset="1"> + <name>geometry</name> + <rect> + <x>0</x> + <y>0</y> + <width>228</width> + <height>267</height> + </rect> + </property> + <property stdset="1"> + <name>caption</name> + <string>DatebookPluginConfigBase</string> + </property> + <property> + <name>whatsThis</name> + <string></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>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>CheckBox1</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Show location</string> + </property> + <property> + <name>whatsThis</name> + <string>Check this if the location of an appointment should be shown for each one</string> + </property> + </widget> + <widget> + <class>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>CheckBox2</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Show notes</string> + </property> + <property> + <name>whatsThis</name> + <string>Check this if the note attached to an appointment should be shown for each one</string> + </property> + </widget> + <widget> + <class>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>CheckBox3</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Show only later appointments</string> + </property> + <property> + <name>whatsThis</name> + <string>Check this if only appointments later then current time should be shown</string> + </property> + </widget> + <widget> + <class>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>CheckBox4</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Show time in extra line</string> + </property> + </widget> + <widget> + <class>QLayoutWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>Layout3</cstring> + </property> + <hbox> + <property stdset="1"> + <name>margin</name> + <number>0</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget> + <class>QSpinBox</class> + <property stdset="1"> + <name>name</name> + <cstring>SpinBox1</cstring> + </property> + <property stdset="1"> + <name>maxValue</name> + <number>10</number> + </property> + <property> + <name>whatsThis</name> + <string>How many appointments should be shown maximal. In chronical order</string> + </property> + </widget> + <widget> + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel1</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>How many appointment should be shown?</string> + </property> + <property stdset="1"> + <name>alignment</name> + <set>WordBreak|AlignVCenter|AlignLeft</set> + </property> + <property> + <name>wordwrap</name> + </property> + </widget> + </hbox> + </widget> + <widget> + <class>QLayoutWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>Layout2</cstring> + </property> + <hbox> + <property stdset="1"> + <name>margin</name> + <number>0</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget> + <class>QSpinBox</class> + <property stdset="1"> + <name>name</name> + <cstring>SpinBox2</cstring> + </property> + <property stdset="1"> + <name>specialValueText</name> + <string>only today</string> + </property> + <property stdset="1"> + <name>maxValue</name> + <number>21</number> + </property> + <property> + <name>whatsThis</name> + <string>How many more days should be in the range</string> + </property> + </widget> + <widget> + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel2</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>How many more days</string> + </property> + <property stdset="1"> + <name>alignment</name> + <set>WordBreak|AlignVCenter|AlignLeft</set> + </property> + <property> + <name>wordwrap</name> + </property> + </widget> + </hbox> + </widget> + <spacer> + <property> + <name>name</name> + <cstring>Spacer2</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</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> + </vbox> +</widget> +</UI> diff --git a/core/pim/today/plugins/todolist/todolist.pro b/core/pim/today/plugins/todolist/todolist.pro index c8730bb..6a63f4e 100644 --- a/core/pim/today/plugins/todolist/todolist.pro +++ b/core/pim/today/plugins/todolist/todolist.pro @@ -1,25 +1,26 @@ TEMPLATE = lib CONFIG -= moc -CONFIG += qt plugin release +CONFIG += qt release # Input HEADERS = todoplugin.h todopluginimpl.h todopluginconfig.h \ todopluginwidget.h SOURCES = todoplugin.cpp todopluginimpl.cpp todopluginconfig.cpp \ todopluginwidget.cpp +INTERFACES= todopluginconfigbase.ui INCLUDEPATH += $(OPIEDIR)/include \ ../ ../library DEPENDPATH += $(OPIEDIR)/include \ ../ ../library LIBS+= -lqpe -lopie DESTDIR = $(OPIEDIR)/plugins/today TARGET = todaytodolistplugin TRANSLATIONS = ../../../../../i18n/de/libtodaytodolistplugin.ts \ ../../../../../i18n/nl/libtodaytodolistplugin.ts \ ../../../../../i18n/xx/libtodaytodolistplugin.ts \ ../../../../../i18n/en/libtodaytodolistplugin.ts \ ../../../../../i18n/es/libtodaytodolistplugin.ts \ diff --git a/core/pim/today/plugins/todolist/todopluginconfig.cpp b/core/pim/today/plugins/todolist/todopluginconfig.cpp index c83f83b..4821776 100644 --- a/core/pim/today/plugins/todolist/todopluginconfig.cpp +++ b/core/pim/today/plugins/todolist/todopluginconfig.cpp @@ -6,76 +6,54 @@ * */ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #include "todopluginconfig.h" #include <qpe/config.h> #include <qlayout.h> -#include <qhbox.h> -#include <qlabel.h> #include <qwhatsthis.h> - TodolistPluginConfig::TodolistPluginConfig( QWidget *parent, const char* name) : TodayConfigWidget(parent, name ) { QVBoxLayout * layout = new QVBoxLayout( this ); - layout->setMargin( 20 ); - - QHBox *box1 = new QHBox( this ); - - QLabel* TextLabel6 = new QLabel( box1, "TextLabel6" ); - TextLabel6->setText( tr( "tasks shown " ) ); - - SpinBox2 = new QSpinBox( box1, "SpinBox2" ); - SpinBox2->setMaxValue( 40 ); - QWhatsThis::add( SpinBox2 , tr( "Set the maximum number of task that should be shown" ) ); - - - - QHBox *box2 = new QHBox( this ); - QLabel* clipLabel = new QLabel( box2, "" ); - clipLabel->setText( tr( "Clip line after X chars" ) ); + m_gui = new TodoPluginConfigBase( this ); - SpinBoxClip = new QSpinBox( box2, "SpinClip" ); - SpinBoxClip->setMaxValue( 200 ); - QWhatsThis::add( SpinBoxClip , tr( "After how many chars should be the info about the task be cut off" ) ); - layout->addWidget( box1 ); - layout->addWidget( box2 ); + layout->addWidget( m_gui ); readConfig(); } void TodolistPluginConfig::readConfig() { Config cfg( "todaytodoplugin" ); cfg.setGroup( "config" ); m_max_lines_task = cfg.readNumEntry( "maxlinestask", 5 ); - SpinBox2->setValue( m_max_lines_task ); + m_gui->SpinBox2->setValue( m_max_lines_task ); m_maxCharClip = cfg.readNumEntry( "maxcharclip", 38 ); - SpinBoxClip->setValue( m_maxCharClip ); + m_gui->SpinBoxClip->setValue( m_maxCharClip ); } void TodolistPluginConfig::writeConfig() { Config cfg( "todaytodoplugin" ); cfg.setGroup( "config" ); - m_max_lines_task = SpinBox2->value(); + m_max_lines_task = m_gui->SpinBox2->value(); cfg.writeEntry( "maxlinestask", m_max_lines_task ); - m_maxCharClip = SpinBoxClip->value(); + m_maxCharClip = m_gui->SpinBoxClip->value(); cfg.writeEntry( "maxcharclip", m_maxCharClip ); cfg.write(); } TodolistPluginConfig::~TodolistPluginConfig() { } diff --git a/core/pim/today/plugins/todolist/todopluginconfig.h b/core/pim/today/plugins/todolist/todopluginconfig.h index 54d35cf..a2d7d2c 100644 --- a/core/pim/today/plugins/todolist/todopluginconfig.h +++ b/core/pim/today/plugins/todolist/todopluginconfig.h @@ -11,33 +11,32 @@ * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef TODOLIST_PLUGIN_CONFIG_H #define TODOLIST_PLUGIN_CONFIG_H #include <qspinbox.h> #include <opie/todayconfigwidget.h> #include "todopluginconfigbase.h" class TodolistPluginConfig : public TodayConfigWidget { - Q_OBJECT public: TodolistPluginConfig( QWidget *parent, const char *name ); ~TodolistPluginConfig(); private: /** * if changed then save */ bool changed(); void readConfig(); void writeConfig(); TodoPluginConfigBase *m_gui; diff --git a/core/pim/today/plugins/todolist/todopluginconfigbase.ui b/core/pim/today/plugins/todolist/todopluginconfigbase.ui new file mode 100644 index 0000000..d3dcfb7 --- a/dev/null +++ b/core/pim/today/plugins/todolist/todopluginconfigbase.ui @@ -0,0 +1,142 @@ +<!DOCTYPE UI><UI> +<class>TodoPluginConfigBase</class> +<widget> + <class>QWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>TodoPluginConfigBase</cstring> + </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"> + <name>name</name> + <cstring>Layout1</cstring> + </property> + <hbox> + <property stdset="1"> + <name>margin</name> + <number>0</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget> + <class>QSpinBox</class> + <property stdset="1"> + <name>name</name> + <cstring>SpinBox2</cstring> + </property> + <property stdset="1"> + <name>maxValue</name> + <number>40</number> + </property> + <property> + <name>whatsThis</name> + <string>Set the maximum number of task that should be shown</string> + </property> + </widget> + <widget> + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel1</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>tasks shown</string> + </property> + <property> + <name>whatsThis</name> + <string>Set the maximum number of task that should be shown</string> + </property> + </widget> + </hbox> + </widget> + <widget> + <class>QLayoutWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>Layout2</cstring> + </property> + <hbox> + <property stdset="1"> + <name>margin</name> + <number>0</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget> + <class>QSpinBox</class> + <property stdset="1"> + <name>name</name> + <cstring>SpinBoxClip</cstring> + </property> + <property stdset="1"> + <name>maxValue</name> + <number>200</number> + </property> + <property> + <name>whatsThis</name> + <string>After how many chars should be the info about the task be cut off</string> + </property> + </widget> + <widget> + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel2</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Clip line after X chars</string> + </property> + <property stdset="1"> + <name>alignment</name> + <set>WordBreak|AlignVCenter|AlignLeft</set> + </property> + <property> + <name>whatsThis</name> + <string>After how many chars should be the info about the task be cut off</string> + </property> + <property> + <name>wordwrap</name> + </property> + </widget> + </hbox> + </widget> + <spacer> + <property> + <name>name</name> + <cstring>Spacer1</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</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> + </vbox> +</widget> +</UI> |