summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt3
-rw-r--r--bin/kdepim/korganizer/germantranslation.txt14
-rw-r--r--korganizer/calendarview.cpp11
-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.cpp15
12 files changed, 97 insertions, 16 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
@@ -8,2 +8,5 @@ Added option to split toolbar to 3 toolbars.
Added option to show one small filter-view-toolbar.
+Added a print option to the desktop version:
+Now you can print out the view of the "Event Viewer".
+That means you can print all data of one particular event/todo.
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
@@ -747,3 +747,3 @@
{ "Not supported \non desktop!\n","" },
-{ "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. " },
+{ "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) " },
{ "Date range: ","Datums Zeitspanne: " },
@@ -1316,2 +1316,7 @@
{ "Only one toolbar","Nur eine Toolbar" },
+{ "Print","Drucke" },
+{ "Print selected event / todo...","Drucke ausgewählten Termin / Todo..." },
+{ "There is nothing selected!","Es ist nichts ausgewählt!" },
+{ "\n\nDo you really want to print this item?","\n\nMöchten Sie wirklich diesen Eintrag ausdrucken? " },
+{ "KO/Pi Print Confirmation","KO/Pi Druckbestätigung" },
{ "","" },
@@ -1320,6 +1325,3 @@
{ "","" },
-{ "","" },
-{ "","" },
-{ "","" },
-{ "","" },
-{ "","" }, \ 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
@@ -3429,3 +3429,12 @@ bool CalendarView::isModified()
}
-
+void CalendarView::slotprintSelInc()
+{
+ if ( currentSelection() == 0 ) {
+ KMessageBox::sorry(this,i18n("There is nothing selected!"));
+ return;
+ }
+ showIncidence();
+ getEventViewerDialog()->print();
+
+}
void CalendarView::printSetup()
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index 9782ffe..05a34b4 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -178,2 +178,3 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
public slots:
+ void slotprintSelInc();
void showNextAlarms();
diff --git a/korganizer/koeventviewer.cpp b/korganizer/koeventviewer.cpp
index 1508638..445fc86 100644
--- a/korganizer/koeventviewer.cpp
+++ b/korganizer/koeventviewer.cpp
@@ -55,2 +55,5 @@
#include <kabc/addresseeview.h>
+#include <qprinter.h>
+#include <qpainter.h>
+#include <qpaintdevicemetrics.h>
#else //DESKTOP_VERSION
@@ -71,2 +74,28 @@ KOEventViewer::~KOEventViewer()
+void KOEventViewer::printMe()
+{
+#ifdef DESKTOP_VERSION
+ QPrinter printer;
+ if (!printer.setup() )
+ return;
+ QPainter p;
+ p.begin ( &printer );
+ QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer );
+ float dx, dy;
+ int wid = (m.width() * 9)/10;
+ dx = (float) wid/(float)contentsWidth ();
+ dy = (float)(m.height()) / (float)contentsHeight ();
+ float scale;
+ // scale to fit the width or height of the paper
+ if ( dx < dy )
+ scale = dx;
+ else
+ scale = dy;
+ p.translate( m.width()/10,0 );
+ p.scale( scale, scale );
+ drawContents ( &p, 0,0, contentsWidth (), contentsHeight () );
+ p.end();
+#endif
+
+}
void KOEventViewer::setSource(const QString& n)
diff --git a/korganizer/koeventviewer.h b/korganizer/koeventviewer.h
index 47cc5e9..ca5bc15 100644
--- a/korganizer/koeventviewer.h
+++ b/korganizer/koeventviewer.h
@@ -54,2 +54,3 @@ class KOEventViewer : public QTextBrowser {
void mailToAttendees( bool all );
+ void printMe();
diff --git a/korganizer/koeventviewerdialog.cpp b/korganizer/koeventviewerdialog.cpp
index f734696..ec55cca 100644
--- a/korganizer/koeventviewerdialog.cpp
+++ b/korganizer/koeventviewerdialog.cpp
@@ -26,2 +26,3 @@
#include "koeventviewer.h"
+#include <kmessagebox.h>
#include "koprefs.h"
@@ -92,2 +93,15 @@ void KOEventViewerDialog::showMe()
}
+void KOEventViewerDialog::print()
+{
+ qDebug("PRINT ");
+ int km = KMessageBox::warningContinueCancel(this,mIncidence->summary().left(35) +
+ i18n("\n\nDo you really want to print this item?"),
+ i18n("KO/Pi Print Confirmation"),i18n("Print"));
+ if ( km != KMessageBox::Continue ) {
+ qDebug("cancel ");
+ return;
+ }
+ mEventViewer->printMe();
+
+}
void KOEventViewerDialog::setSyncMode( bool b )
diff --git a/korganizer/koeventviewerdialog.h b/korganizer/koeventviewerdialog.h
index 36431ad..8e1cd44 100644
--- a/korganizer/koeventviewerdialog.h
+++ b/korganizer/koeventviewerdialog.h
@@ -53,2 +53,3 @@ class KOEventViewerDialog : public KDialogBase {
void updateConfig();
+ void print();
signals:
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index e80b3fc..8752636 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -384,2 +384,9 @@ void KOViewManager::showWhatsNextView()
+void KOViewManager::slotprintWNV()
+{
+ if (!mWhatsNextView)
+ showWhatsNextView();
+ emit printWNV();
+
+}
void KOViewManager::showListView()
diff --git a/korganizer/koviewmanager.h b/korganizer/koviewmanager.h
index d829f14..1d565a6 100644
--- a/korganizer/koviewmanager.h
+++ b/korganizer/koviewmanager.h
@@ -84,2 +84,3 @@ class KOViewManager : public QObject
public slots:
+ void slotprintWNV();
void showNextView();
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index a4e0834..ad1c0cd 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -187,3 +187,7 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
filterMenubar->insertItem( i18n("No Filter"), filterPopupMenu,0 );
- filterMenubar->setFixedWidth( fm.width( i18n("No Filter")+"Ax" ) );
+ QString addTest = "Ax";
+#ifdef DESKTOP_VERSION
+ addTest = "AAAx";
+#endif
+ filterMenubar->setFixedWidth( fm.width( i18n("No Filter")+addTest ) );
addToolBar (filterToolBar , tbd );
@@ -350,2 +354,3 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
#endif
+ updateFilterToolbar();
updateWeek( mView->startDate() );
@@ -994,3 +999,10 @@ void MainWindow::initActions()
connect( action, SIGNAL( activated() ),
- mView->viewManager(), SIGNAL( printWNV() ) );
+ mView->viewManager(), SLOT( slotprintWNV() ) );
+
+ action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this );
+ action->addTo( beamMenu_X );
+ connect( action, SIGNAL( activated() ),
+ mView, SLOT( slotprintSelInc() ) );
+
+
importMenu->insertItem( i18n("Print"), beamMenu_X );
diff --git a/korganizer/navigatorbar.cpp b/korganizer/navigatorbar.cpp
index 49149f2..0610d55 100644
--- a/korganizer/navigatorbar.cpp
+++ b/korganizer/navigatorbar.cpp
@@ -115,2 +115,9 @@ NavigatorBar::NavigatorBar( const QDate & date, QWidget *parent, const char *nam
mPrevWeek->setFlat( true);
+
+ mPrevYear->setAutoRepeat( true );
+ mPrevMonth->setAutoRepeat( true );
+ mNextMonth->setAutoRepeat( true );
+ mPrevWeek->setAutoRepeat( true );
+ mNextWeek->setAutoRepeat( true );
+ mNextYear->setAutoRepeat( true );
} else {
@@ -153,9 +160,3 @@ NavigatorBar::NavigatorBar( const QDate & date, QWidget *parent, const char *nam
setSizePolicy( QSizePolicy ( QSizePolicy::Expanding ,QSizePolicy::Fixed ) );
- mPrevYear->setAutoRepeat( true );
- mPrevMonth->setAutoRepeat( true );
- mNextMonth->setAutoRepeat( true );
- mPrevWeek->setAutoRepeat( true );
- mNextWeek->setAutoRepeat( true );
- mNextYear->setAutoRepeat( true );
-
+
}