summaryrefslogtreecommitdiffstats
path: root/kaddressbook/printing/printstyle.cpp
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 (patch)
tree67208f7c145782a7e90b123b982ca78d88cc2c87 /kaddressbook/printing/printstyle.cpp
downloadtdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.tar.gz
tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kaddressbook/printing/printstyle.cpp')
-rw-r--r--kaddressbook/printing/printstyle.cpp130
1 files changed, 130 insertions, 0 deletions
diff --git a/kaddressbook/printing/printstyle.cpp b/kaddressbook/printing/printstyle.cpp
new file mode 100644
index 000000000..a3cf537d4
--- /dev/null
+++ b/kaddressbook/printing/printstyle.cpp
@@ -0,0 +1,130 @@
+/*
+ This file is part of KAddressBook.
+ Copyright (c) 1996-2002 Mirko Boehm <mirko@kde.org>
+
+ 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.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ As a special exception, permission is given to link this program
+ with any edition of Qt, and distribute the resulting executable,
+ without including the source code for Qt in the source distribution.
+*/
+
+#include <kstandarddirs.h>
+#include <kdebug.h>
+
+#include <qwidget.h>
+
+#include "printstyle.h"
+#include "printingwizard.h"
+
+using namespace KABPrinting;
+
+
+PrintStyle::PrintStyle( PrintingWizard* parent, const char* name )
+ : QObject( parent, name ), mWizard( parent ), mSortField( 0 )
+{
+}
+
+PrintStyle::~PrintStyle()
+{
+}
+
+const QPixmap& PrintStyle::preview()
+{
+ return mPreview;
+}
+
+void PrintStyle::setPreview( const QPixmap& image )
+{
+ mPreview = image;
+}
+
+bool PrintStyle::setPreview( const QString& fileName )
+{
+ QPixmap preview;
+ QString path = locate( "appdata", "printing/" + fileName );
+ if ( path.isEmpty() ) {
+ kdDebug(5720) << "PrintStyle::setPreview: preview not locatable." << endl;
+ return false;
+ } else {
+ if ( preview.load( path ) ) {
+ setPreview( preview );
+ return true;
+ } else {
+ kdDebug(5720) << "PrintStyle::setPreview: preview at '" << path << "' cannot be loaded." << endl;
+ return false;
+ }
+ }
+}
+
+PrintingWizard *PrintStyle::wizard()
+{
+ return mWizard;
+}
+
+void PrintStyle::addPage( QWidget *page, const QString &title )
+{
+ if ( mPageList.find( page ) == -1 ) { // not yet in the list
+ mPageList.append( page );
+ mPageTitles.append( title );
+ }
+}
+
+void PrintStyle::showPages()
+{
+ QWidget *wdg = 0;
+ int i = 0;
+ for ( wdg = mPageList.first(); wdg; wdg = mPageList.next(), ++i ) {
+ mWizard->addPage( wdg, mPageTitles[ i ] );
+ if ( i == 0 )
+ mWizard->setAppropriate( wdg, true );
+ }
+
+ if ( wdg )
+ mWizard->setFinishEnabled( wdg, true );
+}
+
+void PrintStyle::hidePages()
+{
+ for ( QWidget *wdg = mPageList.first(); wdg; wdg = mPageList.next() )
+ mWizard->removePage( wdg );
+}
+
+void PrintStyle::setPreferredSortOptions( KABC::Field *field, bool ascending )
+{
+ mSortField = field;
+ mSortType = ascending;
+}
+
+KABC::Field* PrintStyle::preferredSortField()
+{
+ return mSortField;
+}
+
+bool PrintStyle::preferredSortType()
+{
+ return mSortType;
+}
+
+PrintStyleFactory::PrintStyleFactory( PrintingWizard* parent, const char* name )
+ : mParent( parent ), mName( name )
+{
+}
+
+PrintStyleFactory::~PrintStyleFactory()
+{
+}
+
+#include "printstyle.moc"