summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt3
-rw-r--r--bin/kdepim/korganizer/germantranslation.txt14
-rw-r--r--korganizer/calendarview.cpp9
-rw-r--r--korganizer/calendarview.h1
-rw-r--r--korganizer/koeventviewer.cpp29
-rw-r--r--korganizer/koeventviewer.h1
-rw-r--r--korganizer/koeventviewerdialog.cpp14
-rw-r--r--korganizer/koeventviewerdialog.h1
-rw-r--r--korganizer/koviewmanager.cpp7
-rw-r--r--korganizer/koviewmanager.h1
-rw-r--r--korganizer/mainwindow.cpp16
-rw-r--r--korganizer/navigatorbar.cpp13
12 files changed, 95 insertions, 14 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt
index da27fea..ce68a1d 100644
--- a/bin/kdepim/WhatsNew.txt
+++ b/bin/kdepim/WhatsNew.txt
@@ -1,20 +1,23 @@
1Info about the changes in new versions of KDE-Pim/Pi 1Info about the changes in new versions of KDE-Pim/Pi
2 2
3********** VERSION 2.0.22 ************ 3********** VERSION 2.0.22 ************
4 4
5KO/Pi: 5KO/Pi:
6Fix for creating events/todos via the abgenda context menu. 6Fix for creating events/todos via the abgenda context menu.
7Added option to split toolbar to 3 toolbars. 7Added option to split toolbar to 3 toolbars.
8Added option to show one small filter-view-toolbar. 8Added option to show one small filter-view-toolbar.
9Added a print option to the desktop version:
10Now you can print out the view of the "Event Viewer".
11That means you can print all data of one particular event/todo.
9 12
10********** VERSION 2.0.21 ************ 13********** VERSION 2.0.21 ************
11 14
12Fixed another SMTP problem in OM/Pi. 15Fixed another SMTP problem in OM/Pi.
13Some small changed in the new datenavigator in KO/Pi. 16Some small changed in the new datenavigator in KO/Pi.
14Changed default setting for new filter in KA/Pi to "exclude categories". 17Changed default setting for new filter in KA/Pi to "exclude categories".
15Changed the default font size for 640x480 display . 18Changed the default font size for 640x480 display .
16Changed popup menu behaviour in agenda and list view. 19Changed popup menu behaviour in agenda and list view.
17Fixed some layout problems of the date label size in the month view. 20Fixed some layout problems of the date label size in the month view.
18Made month view update faster. 21Made month view update faster.
19Made first datenavigator repainting faster. 22Made first datenavigator repainting faster.
20Changed the title of the event/todo edit dialogs. 23Changed the title of the event/todo edit dialogs.
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt
index 732bb3f..546c32e 100644
--- a/bin/kdepim/korganizer/germantranslation.txt
+++ b/bin/kdepim/korganizer/germantranslation.txt
@@ -736,25 +736,25 @@
736{ "Needs Action","Aktion notwendig" }, 736{ "Needs Action","Aktion notwendig" },
737{ "Accepted","Akzeptiert" }, 737{ "Accepted","Akzeptiert" },
738{ "Declined","Abgelehnt" }, 738{ "Declined","Abgelehnt" },
739{ "Tentative","Vorläufig" }, 739{ "Tentative","Vorläufig" },
740{ "Delegated","Beauftragt" }, 740{ "Delegated","Beauftragt" },
741{ "Completed","Vollständig" }, 741{ "Completed","Vollständig" },
742{ "In Process","In Bearbeitung" }, 742{ "In Process","In Bearbeitung" },
743{ "Participant","Teilnehmer" }, 743{ "Participant","Teilnehmer" },
744{ "Optional Participant","Möglicher Teilnehmer" }, 744{ "Optional Participant","Möglicher Teilnehmer" },
745{ "Observer","Beobachter" }, 745{ "Observer","Beobachter" },
746{ "Chair","Vorsitzender" }, 746{ "Chair","Vorsitzender" },
747{ "Not supported \non desktop!\n","" }, 747{ "Not supported \non desktop!\n","" },
748{ "Nothing selected!\n\nThis prints the full width of the Agenda view as you see it!\n\nTo determine the vertical range of the printing, please select\na vertical range (with the left mouse button down) in one column. ","Es ist nichts selektiert!\nDieses druckt die volle Breite der Agenda View, so wie man sie sieht.\nUm die verticale Auswahl zum Drucken zu bestimmen,\nbitte einen verticalen Zeitraum (mit gedrückter linker Maustaste)\nin einer Spalte auswählen. " }, 748{ "Nothing selected!\n\nThis prints the full width of the Agenda view as you see it!\n\nTo determine the vertical range of the printing, please select\na vertical range (with the left mouse button down) in one column. ","Es ist nichts selektiert!\nDieses druckt die volle Breite der Agenda View, so wie man sie sieht.\nUm die vertikale Auswahl zum Drucken zu bestimmen,\nbitte einen vertikalen Zeitraum (mit gedrückter linker Maustaste)\nin einer Spalte auswählen.\n(Es wird danach direkt der Termin Dialog angezeigt\n - dort bitte auf Abbrechen klicken) " },
749{ "Date range: ","Datums Zeitspanne: " }, 749{ "Date range: ","Datums Zeitspanne: " },
750{ "Not supported \non PDA!\n","Nicht verfügbar\nauf dem PDA. " }, 750{ "Not supported \non PDA!\n","Nicht verfügbar\nauf dem PDA. " },
751{ "Syncing - close to abort!","Syncing-schließe um abzubrechen." }, 751{ "Syncing - close to abort!","Syncing-schließe um abzubrechen." },
752{ "Add / remove events","Add./entferne Termine" }, 752{ "Add / remove events","Add./entferne Termine" },
753{ "File does not exist:\n '%1'.","Datei existiert nicht:\n '%1'." }, 753{ "File does not exist:\n '%1'.","Datei existiert nicht:\n '%1'." },
754{ "Couldn't load calendar\n '%1'.","Kann Kalender nicht laden:\n '%1'." }, 754{ "Couldn't load calendar\n '%1'.","Kann Kalender nicht laden:\n '%1'." },
755{ "\nThe file on disk has changed!\nFile size: %1 bytes.\nLast modified: %2\nDo you want to:\n\n - Save and overwrite file?\n - Sync with file, then save?\n - Cancel without saving? \n","\nDie gepeicherte Datei wurde verändert!\nDatei Grösse: %1 Bytes.\nZuletzt geändert: %2\nMöchten Sie:\n\n - Speichern und die Datei überschreiben?\n - Mit Datei Synchronisieren, dann speichern?\n - Abbrechen ohne zu speichern? \n" }, 755{ "\nThe file on disk has changed!\nFile size: %1 bytes.\nLast modified: %2\nDo you want to:\n\n - Save and overwrite file?\n - Sync with file, then save?\n - Cancel without saving? \n","\nDie gepeicherte Datei wurde verändert!\nDatei Grösse: %1 Bytes.\nZuletzt geändert: %2\nMöchten Sie:\n\n - Speichern und die Datei überschreiben?\n - Mit Datei Synchronisieren, dann speichern?\n - Abbrechen ohne zu speichern? \n" },
756{ "Overwrite","Überschreiben" }, 756{ "Overwrite","Überschreiben" },
757{ "Sync+save","Syncen+speichern" }, 757{ "Sync+save","Syncen+speichern" },
758{ "Default","Standard" }, 758{ "Default","Standard" },
759{ " Categories added to list! "," Kategorien zur Liste hinzugefügt! " }, 759{ " Categories added to list! "," Kategorien zur Liste hinzugefügt! " },
760{ " %d items?"," %d Einträge?" }, 760{ " %d items?"," %d Einträge?" },
@@ -1305,21 +1305,23 @@
1305{ "Edit new item","Bearbeite neuen Eintrag" }, 1305{ "Edit new item","Bearbeite neuen Eintrag" },
1306{ "Please select at least one\nof the types to search for:\n\nEvents\nTodos\nJournals","Bitte wählen Sie mindestens\neinen dieser Typen\num darin zu suchen:\n\nTermine\nTodos\nJournale" }, 1306{ "Please select at least one\nof the types to search for:\n\nEvents\nTodos\nJournals","Bitte wählen Sie mindestens\neinen dieser Typen\num darin zu suchen:\n\nTermine\nTodos\nJournale" },
1307{ "There is no next alarm.","Es gibt keinen nächsten Alarm." }, 1307{ "There is no next alarm.","Es gibt keinen nächsten Alarm." },
1308{ "%1 %2 - %3 (next event/todo with alarm)","%1 %2 - %3 (nächster Termin/Todo mit Alarm)" }, 1308{ "%1 %2 - %3 (next event/todo with alarm)","%1 %2 - %3 (nächster Termin/Todo mit Alarm)" },
1309{ "The next alarm is in:\n","Der nächste Alarm ist in:\n" }, 1309{ "The next alarm is in:\n","Der nächste Alarm ist in:\n" },
1310{ "%1 days\n","%1 Tagen\n" }, 1310{ "%1 days\n","%1 Tagen\n" },
1311{ "1 day\n","1 Tag\n" }, 1311{ "1 day\n","1 Tag\n" },
1312{ "%1 hours\n","%1 Stunden\n" }, 1312{ "%1 hours\n","%1 Stunden\n" },
1313{ "1 hour\n","1 Stunde\n" }, 1313{ "1 hour\n","1 Stunde\n" },
1314{ "%1 minutes\n","%1 Minuten\n" }, 1314{ "%1 minutes\n","%1 Minuten\n" },
1315{ "1 minute\n","1 Minute\n" }, 1315{ "1 minute\n","1 Minute\n" },
1316{ "Only one toolbar","Nur eine Toolbar" }, 1316{ "Only one toolbar","Nur eine Toolbar" },
1317{ "Print","Drucke" },
1318{ "Print selected event / todo...","Drucke ausgewählten Termin / Todo..." },
1319{ "There is nothing selected!","Es ist nichts ausgewählt!" },
1320{ "\n\nDo you really want to print this item?","\n\nMöchten Sie wirklich diesen Eintrag ausdrucken? " },
1321{ "KO/Pi Print Confirmation","KO/Pi Druckbestätigung" },
1317{ "","" }, 1322{ "","" },
1318{ "","" }, 1323{ "","" },
1319{ "","" }, 1324{ "","" },
1320{ "","" }, 1325{ "","" },
1321{ "","" }, 1326
1322{ "","" }, 1327
1323{ "","" },
1324{ "","" },
1325{ "","" }, \ No newline at end of file
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index a330414..0015bd6 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -3418,25 +3418,34 @@ bool CalendarView::isReadOnly()
3418void CalendarView::setReadOnly(bool readOnly) 3418void CalendarView::setReadOnly(bool readOnly)
3419{ 3419{
3420 if (mReadOnly != readOnly) { 3420 if (mReadOnly != readOnly) {
3421 mReadOnly = readOnly; 3421 mReadOnly = readOnly;
3422 emit readOnlyChanged(mReadOnly); 3422 emit readOnlyChanged(mReadOnly);
3423 } 3423 }
3424} 3424}
3425 3425
3426bool CalendarView::isModified() 3426bool CalendarView::isModified()
3427{ 3427{
3428 return mModified; 3428 return mModified;
3429} 3429}
3430void CalendarView::slotprintSelInc()
3431{
3432 if ( currentSelection() == 0 ) {
3433 KMessageBox::sorry(this,i18n("There is nothing selected!"));
3434 return;
3435 }
3436 showIncidence();
3437 getEventViewerDialog()->print();
3430 3438
3439}
3431void CalendarView::printSetup() 3440void CalendarView::printSetup()
3432{ 3441{
3433#ifndef KORG_NOPRINTER 3442#ifndef KORG_NOPRINTER
3434 createPrinter(); 3443 createPrinter();
3435 3444
3436 mCalPrinter->setupPrinter(); 3445 mCalPrinter->setupPrinter();
3437#endif 3446#endif
3438} 3447}
3439 3448
3440void CalendarView::print() 3449void CalendarView::print()
3441{ 3450{
3442#ifndef KORG_NOPRINTER 3451#ifndef KORG_NOPRINTER
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index 9782ffe..05a34b4 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -167,24 +167,25 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
167 167
168 /** Emitted, when the number of outgoing messages has changed. */ 168 /** Emitted, when the number of outgoing messages has changed. */
169 void numOutgoingChanged(int); 169 void numOutgoingChanged(int);
170 170
171 /** Send status message, which can e.g. be displayed in the status bar. */ 171 /** Send status message, which can e.g. be displayed in the status bar. */
172 void statusMessage(const QString &); 172 void statusMessage(const QString &);
173 173
174 void calendarViewExpanded( bool ); 174 void calendarViewExpanded( bool );
175 void updateSearchDialog(); 175 void updateSearchDialog();
176 176
177 177
178 public slots: 178 public slots:
179 void slotprintSelInc();
179 void showNextAlarms(); 180 void showNextAlarms();
180 void showOpenError(); 181 void showOpenError();
181 void watchSavedFile(); 182 void watchSavedFile();
182 void recheckTimerAlarm(); 183 void recheckTimerAlarm();
183 void checkNextTimerAlarm(); 184 void checkNextTimerAlarm();
184 void addAlarm(const QDateTime &qdt, const QString &noti ); 185 void addAlarm(const QDateTime &qdt, const QString &noti );
185 void addSuspendAlarm(const QDateTime &qdt, const QString &noti ); 186 void addSuspendAlarm(const QDateTime &qdt, const QString &noti );
186 void removeAlarm(const QDateTime &qdt, const QString &noti ); 187 void removeAlarm(const QDateTime &qdt, const QString &noti );
187 188
188 /** options dialog made a changed to the configuration. we catch this 189 /** options dialog made a changed to the configuration. we catch this
189 * and notify all widgets which need to update their configuration. */ 190 * and notify all widgets which need to update their configuration. */
190 void updateConfig(); 191 void updateConfig();
diff --git a/korganizer/koeventviewer.cpp b/korganizer/koeventviewer.cpp
index 1508638..445fc86 100644
--- a/korganizer/koeventviewer.cpp
+++ b/korganizer/koeventviewer.cpp
@@ -44,40 +44,69 @@
44#include "actionmanager.h" 44#include "actionmanager.h"
45#endif 45#endif
46 46
47#include "koeventviewer.h" 47#include "koeventviewer.h"
48//#ifndef KORG_NOKABC 48//#ifndef KORG_NOKABC
49//#include <kabc/stdaddressbook.h> 49//#include <kabc/stdaddressbook.h>
50//#define size count 50//#define size count
51//#endif 51//#endif
52 52
53#ifdef DESKTOP_VERSION 53#ifdef DESKTOP_VERSION
54#include <kabc/addresseedialog.h> 54#include <kabc/addresseedialog.h>
55#include <kabc/addresseeview.h> 55#include <kabc/addresseeview.h>
56#include <qprinter.h>
57#include <qpainter.h>
58#include <qpaintdevicemetrics.h>
56#else //DESKTOP_VERSION 59#else //DESKTOP_VERSION
57#include <externalapphandler.h> 60#include <externalapphandler.h>
58#include <qtopia/qcopenvelope_qws.h> 61#include <qtopia/qcopenvelope_qws.h>
59#endif //DESKTOP_VERSION 62#endif //DESKTOP_VERSION
60 63
61KOEventViewer::KOEventViewer(QWidget *parent,const char *name) 64KOEventViewer::KOEventViewer(QWidget *parent,const char *name)
62 : QTextBrowser(parent,name) 65 : QTextBrowser(parent,name)
63{ 66{
64 mSyncMode = false; 67 mSyncMode = false;
65 mColorMode = 0; 68 mColorMode = 0;
66} 69}
67 70
68KOEventViewer::~KOEventViewer() 71KOEventViewer::~KOEventViewer()
69{ 72{
70} 73}
71 74
75void KOEventViewer::printMe()
76{
77#ifdef DESKTOP_VERSION
78 QPrinter printer;
79 if (!printer.setup() )
80 return;
81 QPainter p;
82 p.begin ( &printer );
83 QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer );
84 float dx, dy;
85 int wid = (m.width() * 9)/10;
86 dx = (float) wid/(float)contentsWidth ();
87 dy = (float)(m.height()) / (float)contentsHeight ();
88 float scale;
89 // scale to fit the width or height of the paper
90 if ( dx < dy )
91 scale = dx;
92 else
93 scale = dy;
94 p.translate( m.width()/10,0 );
95 p.scale( scale, scale );
96 drawContents ( &p, 0,0, contentsWidth (), contentsHeight () );
97 p.end();
98#endif
99
100}
72void KOEventViewer::setSource(const QString& n) 101void KOEventViewer::setSource(const QString& n)
73{ 102{
74 103
75 if ( n.left(3) == "uid" ) 104 if ( n.left(3) == "uid" )
76#ifdef DESKTOP_VERSION 105#ifdef DESKTOP_VERSION
77 { 106 {
78 KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true ); 107 KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true );
79 KABC::AddressBook::Iterator it; 108 KABC::AddressBook::Iterator it;
80 for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) { 109 for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) {
81 // LR I do not understand, why the uid string is different on zaurus and desktop 110 // LR I do not understand, why the uid string is different on zaurus and desktop
82 QString uid = "uid://"+(*it).uid(); 111 QString uid = "uid://"+(*it).uid();
83 112
diff --git a/korganizer/koeventviewer.h b/korganizer/koeventviewer.h
index 47cc5e9..ca5bc15 100644
--- a/korganizer/koeventviewer.h
+++ b/korganizer/koeventviewer.h
@@ -43,24 +43,25 @@ class KOEventViewer : public QTextBrowser {
43 void setJournal(Journal *jour, bool clearV = true ); 43 void setJournal(Journal *jour, bool clearV = true );
44 44
45 void appendEvent(Event *event, int mode = 0 ); 45 void appendEvent(Event *event, int mode = 0 );
46 void appendTodo(Todo *event, int mode = 0 ); 46 void appendTodo(Todo *event, int mode = 0 );
47 void appendJournal(Journal *jour, int mode = 0 ); 47 void appendJournal(Journal *jour, int mode = 0 );
48 48
49 void clearEvents(bool now=false); 49 void clearEvents(bool now=false);
50 50
51 void addText(QString text); 51 void addText(QString text);
52 void setSyncMode( bool ); 52 void setSyncMode( bool );
53 void setColorMode( int ); 53 void setColorMode( int );
54 void mailToAttendees( bool all ); 54 void mailToAttendees( bool all );
55 void printMe();
55 56
56 protected: 57 protected:
57 int mColorMode; 58 int mColorMode;
58 void addTag(const QString & tag,const QString & text); 59 void addTag(const QString & tag,const QString & text);
59 60
60 void formatCategories(Incidence *event); 61 void formatCategories(Incidence *event);
61 void formatAttendees(Incidence *event); 62 void formatAttendees(Incidence *event);
62 void formatReadOnly(Incidence *event); 63 void formatReadOnly(Incidence *event);
63 void keyPressEvent ( QKeyEvent * e ); 64 void keyPressEvent ( QKeyEvent * e );
64 65
65 private: 66 private:
66 QTextBrowser *mEventTextView; 67 QTextBrowser *mEventTextView;
diff --git a/korganizer/koeventviewerdialog.cpp b/korganizer/koeventviewerdialog.cpp
index f734696..ec55cca 100644
--- a/korganizer/koeventviewerdialog.cpp
+++ b/korganizer/koeventviewerdialog.cpp
@@ -15,24 +15,25 @@
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18*/ 18*/
19 19
20#include <klocale.h> 20#include <klocale.h>
21 21
22#include <libkcal/event.h> 22#include <libkcal/event.h>
23#include <qtimer.h> 23#include <qtimer.h>
24#include <qpushbutton.h> 24#include <qpushbutton.h>
25 25
26#include "koeventviewer.h" 26#include "koeventviewer.h"
27#include <kmessagebox.h>
27#include "koprefs.h" 28#include "koprefs.h"
28#include <libkcal/todo.h> 29#include <libkcal/todo.h>
29#include "qapp.h" 30#include "qapp.h"
30 31
31#include "koeventviewerdialog.h" 32#include "koeventviewerdialog.h"
32extern int globalFlagBlockAgenda; 33extern int globalFlagBlockAgenda;
33 34
34KOEventViewerDialog::KOEventViewerDialog(QWidget *parent,const char *name) 35KOEventViewerDialog::KOEventViewerDialog(QWidget *parent,const char *name)
35 : KDialogBase(parent,name, 36 : KDialogBase(parent,name,
36#ifndef DESKTOP_VERSION 37#ifndef DESKTOP_VERSION
37 true , 38 true ,
38#else 39#else
@@ -81,24 +82,37 @@ void KOEventViewerDialog::showMe()
81 h = height(); 82 h = height();
82 show(); 83 show();
83 setGeometry(x,y,w,h); 84 setGeometry(x,y,w,h);
84#else 85#else
85 showMaximized(); 86 showMaximized();
86#endif 87#endif
87 raise(); 88 raise();
88 setActiveWindow(); 89 setActiveWindow();
89 mEventViewer->setFocus(); 90 mEventViewer->setFocus();
90 //raise(); 91 //raise();
91 92
92} 93}
94void KOEventViewerDialog::print()
95{
96 qDebug("PRINT ");
97 int km = KMessageBox::warningContinueCancel(this,mIncidence->summary().left(35) +
98 i18n("\n\nDo you really want to print this item?"),
99 i18n("KO/Pi Print Confirmation"),i18n("Print"));
100 if ( km != KMessageBox::Continue ) {
101 qDebug("cancel ");
102 return;
103 }
104 mEventViewer->printMe();
105
106}
93void KOEventViewerDialog::setSyncMode( bool b ) 107void KOEventViewerDialog::setSyncMode( bool b )
94{ 108{
95 mSyncMode = b; 109 mSyncMode = b;
96 //qDebug("KOEventViewerDialog::setSyncMode %d ",mSyncMode ); 110 //qDebug("KOEventViewerDialog::setSyncMode %d ",mSyncMode );
97 if ( mSyncMode ) { 111 if ( mSyncMode ) {
98 findButton( Close )->setText( i18n("Cancel Sync")); 112 findButton( Close )->setText( i18n("Cancel Sync"));
99 findButton( Ok )->setText( i18n("Remote")); 113 findButton( Ok )->setText( i18n("Remote"));
100 findButton( User1 )->setText( i18n("Local")); 114 findButton( User1 )->setText( i18n("Local"));
101 } else { 115 } else {
102 findButton( Close )->setText( i18n("Close")); 116 findButton( Close )->setText( i18n("Close"));
103 findButton( Ok )->setText( i18n("Edit")); 117 findButton( Ok )->setText( i18n("Edit"));
104 findButton( User1 )->setText( i18n("Agenda")); 118 findButton( User1 )->setText( i18n("Agenda"));
diff --git a/korganizer/koeventviewerdialog.h b/korganizer/koeventviewerdialog.h
index 36431ad..8e1cd44 100644
--- a/korganizer/koeventviewerdialog.h
+++ b/korganizer/koeventviewerdialog.h
@@ -42,24 +42,25 @@ class KOEventViewerDialog : public KDialogBase {
42 void addEvent(Event *event); 42 void addEvent(Event *event);
43 void setTodo(Todo *event); 43 void setTodo(Todo *event);
44 void setJournal(Journal *journal); 44 void setJournal(Journal *journal);
45 void setIncidence(Incidence *inc); 45 void setIncidence(Incidence *inc);
46 void addIncidence(Incidence *inc); 46 void addIncidence(Incidence *inc);
47 void addText(QString text); 47 void addText(QString text);
48 void showMe(); 48 void showMe();
49 void setSyncMode( bool ); 49 void setSyncMode( bool );
50 void setColorMode( int m ); 50 void setColorMode( int m );
51 int executeS( bool ); 51 int executeS( bool );
52 public slots: 52 public slots:
53 void updateConfig(); 53 void updateConfig();
54 void print();
54 signals: 55 signals:
55 void editIncidence( Incidence* ); 56 void editIncidence( Incidence* );
56 void jumpToTime( const QDate &); 57 void jumpToTime( const QDate &);
57 void showAgendaView( bool ); 58 void showAgendaView( bool );
58 void todoCompleted(Todo*); 59 void todoCompleted(Todo*);
59 void signalViewerClosed(); 60 void signalViewerClosed();
60private slots: 61private slots:
61 void slotViewerClosed(); 62 void slotViewerClosed();
62 void editIncidence(); 63 void editIncidence();
63 void showIncidence(); 64 void showIncidence();
64 protected: 65 protected:
65 void hideEvent ( QHideEvent * e ); 66 void hideEvent ( QHideEvent * e );
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index e80b3fc..8752636 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -373,24 +373,31 @@ void KOViewManager::showWhatsNextView()
373 mWhatsNextView->setEventViewer( mMainView->getEventViewerDialog()); 373 mWhatsNextView->setEventViewer( mMainView->getEventViewerDialog());
374 connect(mMainView, SIGNAL(configChanged()), mWhatsNextView, SLOT(updateConfig())); 374 connect(mMainView, SIGNAL(configChanged()), mWhatsNextView, SLOT(updateConfig()));
375 addView(mWhatsNextView); 375 addView(mWhatsNextView);
376 connect(this, SIGNAL( printWNV() ), 376 connect(this, SIGNAL( printWNV() ),
377 mWhatsNextView, SLOT( printMe() ) ); 377 mWhatsNextView, SLOT( printMe() ) );
378 } 378 }
379 globalFlagBlockAgenda = 1; 379 globalFlagBlockAgenda = 1;
380 showView(mWhatsNextView, true ); 380 showView(mWhatsNextView, true );
381 //mWhatsNextView->updateView(); 381 //mWhatsNextView->updateView();
382 382
383} 383}
384 384
385void KOViewManager::slotprintWNV()
386{
387 if (!mWhatsNextView)
388 showWhatsNextView();
389 emit printWNV();
390
391}
385void KOViewManager::showListView() 392void KOViewManager::showListView()
386{ 393{
387 if (!mListView) { 394 if (!mListView) {
388 mListView = new KOListView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::ListView"); 395 mListView = new KOListView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::ListView");
389 addView(mListView); 396 addView(mListView);
390 397
391 connect(mListView, SIGNAL(showIncidenceSignal(Incidence *)), 398 connect(mListView, SIGNAL(showIncidenceSignal(Incidence *)),
392 mMainView, SLOT(showIncidence(Incidence *))); 399 mMainView, SLOT(showIncidence(Incidence *)));
393 connect(mListView, SIGNAL(editIncidenceSignal(Incidence *)), 400 connect(mListView, SIGNAL(editIncidenceSignal(Incidence *)),
394 mMainView, SLOT(editIncidence(Incidence *))); 401 mMainView, SLOT(editIncidence(Incidence *)));
395 connect(mListView, SIGNAL(deleteIncidenceSignal(Incidence *)), 402 connect(mListView, SIGNAL(deleteIncidenceSignal(Incidence *)),
396 mMainView, SLOT(deleteIncidence(Incidence *))); 403 mMainView, SLOT(deleteIncidence(Incidence *)));
diff --git a/korganizer/koviewmanager.h b/korganizer/koviewmanager.h
index d829f14..1d565a6 100644
--- a/korganizer/koviewmanager.h
+++ b/korganizer/koviewmanager.h
@@ -73,24 +73,25 @@ class KOViewManager : public QObject
73 void addView(KOrg::BaseView *); 73 void addView(KOrg::BaseView *);
74 74
75 Incidence *currentSelection(); 75 Incidence *currentSelection();
76 QDate currentSelectionDate(); 76 QDate currentSelectionDate();
77 77
78 KOAgendaView *agendaView() const { return mAgendaView; } 78 KOAgendaView *agendaView() const { return mAgendaView; }
79 79
80 signals: 80 signals:
81 void printWNV(); 81 void printWNV();
82 void signalFullScreen( bool ); 82 void signalFullScreen( bool );
83 void signalAgendaView( bool ); 83 void signalAgendaView( bool );
84 public slots: 84 public slots:
85 void slotprintWNV();
85 void showNextView(); 86 void showNextView();
86 void showMonth( const QDate & ); 87 void showMonth( const QDate & );
87 void showDateView( int, QDate ); 88 void showDateView( int, QDate );
88 void updateView(); 89 void updateView();
89 void showWhatsNextView(); 90 void showWhatsNextView();
90 void showListView(); 91 void showListView();
91 void showAgendaView( bool fullScreen = false ); 92 void showAgendaView( bool fullScreen = false );
92 void showDayView(); 93 void showDayView();
93 void showWorkWeekView(); 94 void showWorkWeekView();
94 void showWeekView(); 95 void showWeekView();
95 void showNextXView(); 96 void showNextXView();
96 void showMonthView(); 97 void showMonthView();
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index a4e0834..ad1c0cd 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -176,25 +176,29 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
176 else { 176 else {
177 if ( p->mToolBarUpF ) 177 if ( p->mToolBarUpF )
178 tbd = Right; 178 tbd = Right;
179 else 179 else
180 tbd = Left; 180 tbd = Left;
181 } 181 }
182 filterToolBar = new QPEToolBar ( this ); 182 filterToolBar = new QPEToolBar ( this );
183 filterMenubar = new QPEMenuBar( filterToolBar ); 183 filterMenubar = new QPEMenuBar( filterToolBar );
184 QFontMetrics fm ( filterMenubar->font() ); 184 QFontMetrics fm ( filterMenubar->font() );
185 185
186 filterPopupMenu = new QPopupMenu( this ); 186 filterPopupMenu = new QPopupMenu( this );
187 filterMenubar->insertItem( i18n("No Filter"), filterPopupMenu,0 ); 187 filterMenubar->insertItem( i18n("No Filter"), filterPopupMenu,0 );
188 filterMenubar->setFixedWidth( fm.width( i18n("No Filter")+"Ax" ) ); 188 QString addTest = "Ax";
189#ifdef DESKTOP_VERSION
190 addTest = "AAAx";
191#endif
192 filterMenubar->setFixedWidth( fm.width( i18n("No Filter")+addTest ) );
189 addToolBar (filterToolBar , tbd ); 193 addToolBar (filterToolBar , tbd );
190 connect ( filterPopupMenu , SIGNAL( activated ( int ) ), this, SLOT (selectFilterPopup( int ) ) ); 194 connect ( filterPopupMenu , SIGNAL( activated ( int ) ), this, SLOT (selectFilterPopup( int ) ) );
191 connect ( filterPopupMenu , SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenuPopup() ) ); 195 connect ( filterPopupMenu , SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenuPopup() ) );
192 } else { 196 } else {
193 filterToolBar = 0; 197 filterToolBar = 0;
194 filterMenubar = 0; 198 filterMenubar = 0;
195 filterPopupMenu = 0; 199 filterPopupMenu = 0;
196 } 200 }
197 if ( p->mShowIconOnetoolbar ) { 201 if ( p->mShowIconOnetoolbar ) {
198 viewToolBar = iconToolBar ; 202 viewToolBar = iconToolBar ;
199 navigatorToolBar = iconToolBar ; 203 navigatorToolBar = iconToolBar ;
200 } else { 204 } else {
@@ -339,24 +343,25 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
339 "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information"); 343 "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information");
340 qApp->processEvents(); 344 qApp->processEvents();
341 mView->dialogManager()->showSyncOptions(); 345 mView->dialogManager()->showSyncOptions();
342 } 346 }
343 347
344 //US listen for result adressed from Ka/Pi 348 //US listen for result adressed from Ka/Pi
345#ifndef DESKTOP_VERSION 349#ifndef DESKTOP_VERSION
346 connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); 350 connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & )));
347#endif 351#endif
348#ifndef DESKTOP_VERSION 352#ifndef DESKTOP_VERSION
349 infrared = 0; 353 infrared = 0;
350#endif 354#endif
355 updateFilterToolbar();
351 updateWeek( mView->startDate() ); 356 updateWeek( mView->startDate() );
352 connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ), 357 connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ),
353 SLOT( updateWeekNum( const KCal::DateList & ) ) ); 358 SLOT( updateWeekNum( const KCal::DateList & ) ) );
354 mBRdisabled = false; 359 mBRdisabled = false;
355 //toggleBeamReceive(); 360 //toggleBeamReceive();
356} 361}
357MainWindow::~MainWindow() 362MainWindow::~MainWindow()
358{ 363{
359 //qDebug("MainWindow::~MainWindow() "); 364 //qDebug("MainWindow::~MainWindow() ");
360 //save toolbar location 365 //save toolbar location
361 delete mCalendar; 366 delete mCalendar;
362 delete mSyncManager; 367 delete mSyncManager;
@@ -983,25 +988,32 @@ void MainWindow::initActions()
983 action->addTo( beamMenu_X ); 988 action->addTo( beamMenu_X );
984 connect( action, SIGNAL( activated() ), 989 connect( action, SIGNAL( activated() ),
985 this, SLOT( printCal() ) ); 990 this, SLOT( printCal() ) );
986 991
987 icon = loadPixmap( pathString + "print" ); 992 icon = loadPixmap( pathString + "print" );
988 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); 993 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this );
989 action->addTo( beamMenu_X ); 994 action->addTo( beamMenu_X );
990 connect( action, SIGNAL( activated() ), 995 connect( action, SIGNAL( activated() ),
991 this, SLOT( printSel() ) ); 996 this, SLOT( printSel() ) );
992 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); 997 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this );
993 action->addTo( beamMenu_X ); 998 action->addTo( beamMenu_X );
994 connect( action, SIGNAL( activated() ), 999 connect( action, SIGNAL( activated() ),
995 mView->viewManager(), SIGNAL( printWNV() ) ); 1000 mView->viewManager(), SLOT( slotprintWNV() ) );
1001
1002 action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this );
1003 action->addTo( beamMenu_X );
1004 connect( action, SIGNAL( activated() ),
1005 mView, SLOT( slotprintSelInc() ) );
1006
1007
996 importMenu->insertItem( i18n("Print"), beamMenu_X ); 1008 importMenu->insertItem( i18n("Print"), beamMenu_X );
997#endif 1009#endif
998 importMenu->insertSeparator(); 1010 importMenu->insertSeparator();
999 action = new QAction( "manage cat", i18n("Manage new categories..."), 0, 1011 action = new QAction( "manage cat", i18n("Manage new categories..."), 0,
1000 this ); 1012 this );
1001 action->addTo( importMenu ); 1013 action->addTo( importMenu );
1002 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); 1014 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) );
1003 importMenu->insertSeparator(); 1015 importMenu->insertSeparator();
1004 action = new QAction( "beam all", i18n("Save"), 0, 1016 action = new QAction( "beam all", i18n("Save"), 0,
1005 this ); 1017 this );
1006 action->addTo( importMenu ); 1018 action->addTo( importMenu );
1007 connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); 1019 connect( action, SIGNAL( activated() ), this, SLOT( save() ) );
diff --git a/korganizer/navigatorbar.cpp b/korganizer/navigatorbar.cpp
index 49149f2..0610d55 100644
--- a/korganizer/navigatorbar.cpp
+++ b/korganizer/navigatorbar.cpp
@@ -104,24 +104,31 @@ NavigatorBar::NavigatorBar( const QDate & date, QWidget *parent, const char *nam
104 // selectMonth->setAlignment( AlignCenter ); 104 // selectMonth->setAlignment( AlignCenter );
105 //mDateLabel = new QLabel( selectMonth ); 105 //mDateLabel = new QLabel( selectMonth );
106 //mDateLabel->setFont( tfont ); 106 //mDateLabel->setFont( tfont );
107 //mDateLabel->setAlignment( AlignCenter ); 107 //mDateLabel->setAlignment( AlignCenter );
108 if ( QString ( name ) == QString("useBigPixmaps") ) { 108 if ( QString ( name ) == QString("useBigPixmaps") ) {
109 mNextMonth->setFlat( true); 109 mNextMonth->setFlat( true);
110 mNextWeek->setFlat( true); 110 mNextWeek->setFlat( true);
111 mNextYear->setFlat( true); 111 mNextYear->setFlat( true);
112 mSelectMonth->setFlat( true); 112 mSelectMonth->setFlat( true);
113 mPrevYear->setFlat( true); 113 mPrevYear->setFlat( true);
114 mPrevMonth->setFlat( true); 114 mPrevMonth->setFlat( true);
115 mPrevWeek->setFlat( true); 115 mPrevWeek->setFlat( true);
116
117 mPrevYear->setAutoRepeat( true );
118 mPrevMonth->setAutoRepeat( true );
119 mNextMonth->setAutoRepeat( true );
120 mPrevWeek->setAutoRepeat( true );
121 mNextWeek->setAutoRepeat( true );
122 mNextYear->setAutoRepeat( true );
116 } else { 123 } else {
117 mPrevWeek->hide(); 124 mPrevWeek->hide();
118 mNextWeek->hide(); 125 mNextWeek->hide();
119 } 126 }
120 127
121 resetFont( font() ); 128 resetFont( font() );
122 129
123 130
124 // set up control frame layout 131 // set up control frame layout
125 QBoxLayout *ctrlLayout = new QHBoxLayout( mCtrlFrame, 1 ); 132 QBoxLayout *ctrlLayout = new QHBoxLayout( mCtrlFrame, 1 );
126 ctrlLayout->addWidget( mPrevYear, 3 ); 133 ctrlLayout->addWidget( mPrevYear, 3 );
127 ctrlLayout->addWidget( mPrevMonth, 3 ); 134 ctrlLayout->addWidget( mPrevMonth, 3 );
@@ -142,30 +149,24 @@ NavigatorBar::NavigatorBar( const QDate & date, QWidget *parent, const char *nam
142 connect( mPrevWeek, SIGNAL( clicked() ), SIGNAL( goPrevWeek() ) ); 149 connect( mPrevWeek, SIGNAL( clicked() ), SIGNAL( goPrevWeek() ) );
143 connect( mNextWeek, SIGNAL( clicked() ), SIGNAL( goNextWeek() ) ); 150 connect( mNextWeek, SIGNAL( clicked() ), SIGNAL( goNextWeek() ) );
144 connect( mNextYear, SIGNAL( clicked() ), SIGNAL( goNextYear() ) ); 151 connect( mNextYear, SIGNAL( clicked() ), SIGNAL( goNextYear() ) );
145 connect( mSelectMonth, SIGNAL( clicked() ),SLOT( selectMonth() ) ); 152 connect( mSelectMonth, SIGNAL( clicked() ),SLOT( selectMonth() ) );
146 mPrevYear->setFocusPolicy(NoFocus); 153 mPrevYear->setFocusPolicy(NoFocus);
147 mPrevMonth->setFocusPolicy(NoFocus); 154 mPrevMonth->setFocusPolicy(NoFocus);
148 mNextMonth->setFocusPolicy(NoFocus); 155 mNextMonth->setFocusPolicy(NoFocus);
149 mPrevWeek->setFocusPolicy(NoFocus); 156 mPrevWeek->setFocusPolicy(NoFocus);
150 mNextWeek->setFocusPolicy(NoFocus); 157 mNextWeek->setFocusPolicy(NoFocus);
151 mNextYear->setFocusPolicy(NoFocus); 158 mNextYear->setFocusPolicy(NoFocus);
152 mSelectMonth->setFocusPolicy(NoFocus); 159 mSelectMonth->setFocusPolicy(NoFocus);
153 setSizePolicy( QSizePolicy ( QSizePolicy::Expanding ,QSizePolicy::Fixed ) ); 160 setSizePolicy( QSizePolicy ( QSizePolicy::Expanding ,QSizePolicy::Fixed ) );
154 mPrevYear->setAutoRepeat( true );
155 mPrevMonth->setAutoRepeat( true );
156 mNextMonth->setAutoRepeat( true );
157 mPrevWeek->setAutoRepeat( true );
158 mNextWeek->setAutoRepeat( true );
159 mNextYear->setAutoRepeat( true );
160 161
161} 162}
162 163
163NavigatorBar::~NavigatorBar() 164NavigatorBar::~NavigatorBar()
164{ 165{
165} 166}
166QSize NavigatorBar::sizeHint() const 167QSize NavigatorBar::sizeHint() const
167{ 168{
168 int wid = mCurrentMinWid ; 169 int wid = mCurrentMinWid ;
169 if ( mPrevYear->isVisible() ) 170 if ( mPrevYear->isVisible() )
170 wid += mCurrentButtonMinWid; 171 wid += mCurrentButtonMinWid;
171 if ( mPrevMonth->isVisible() ) 172 if ( mPrevMonth->isVisible() )