diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-01-20 01:29:50 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-01-20 01:29:50 +0000 |
commit | 8362bf63dea22bbf6736609b0f49c152f975eb63 (patch) | |
tree | 0eea3928e39e50fae91d4e68b21b1e6cbae25604 /example/example_part.cc | |
download | koffice-8362bf63dea22bbf6736609b0f49c152f975eb63.tar.gz koffice-8362bf63dea22bbf6736609b0f49c152f975eb63.zip |
Added old abandoned KDE3 version of koffice
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/koffice@1077364 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'example/example_part.cc')
-rw-r--r-- | example/example_part.cc | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/example/example_part.cc b/example/example_part.cc new file mode 100644 index 000000000..e459040a4 --- /dev/null +++ b/example/example_part.cc @@ -0,0 +1,96 @@ +/* This file is part of the KDE project + Copyright (C) 1998, 1999, 2000 Torben Weis <weis@kde.org> + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include "example_part.h" +#include "example_factory.h" +#include "example_view.h" + +#include <qpainter.h> + +ExamplePart::ExamplePart( QWidget *parentWidget, const char *widgetName, QObject* parent, const char* name, bool singleViewMode ) + : KoDocument( parentWidget, widgetName, parent, name, singleViewMode ) +{ + setInstance( ExampleFactory::global(), false ); +} + +bool ExamplePart::initDoc(InitDocFlags flags, QWidget* parentWidget) +{ + // If nothing is loaded, do initialize here + // Most KOffice applications use the template dialog here, with code like: +/* + KoTemplateChooseDia::DialogType dlgtype; + if (initDocFlags() != KoDocument::InitDocFileNew ) + dlgtype = KoTemplateChooseDia::Everything; + else + dlgtype = KoTemplateChooseDia::OnlyTemplates; + + KoTemplateChooseDia::ReturnType ret = KoTemplateChooseDia::choose( + .... ) +*/ + return TRUE; +} + +KoView* ExamplePart::createViewInstance( QWidget* parent, const char* name ) +{ + return new ExampleView( this, parent, name ); +} + +bool ExamplePart::loadXML( QIODevice *, const QDomDocument & ) +{ + // TODO load the document from the QDomDocument + return true; +} + +QDomDocument ExamplePart::saveXML() +{ + // TODO save the document into a QDomDocument + return QDomDocument(); +} + +bool ExamplePart::loadOasis( const QDomDocument & doc, KoOasisStyles& oasisStyles, + const QDomDocument & settings, KoStore* store ) +{ + // TODO load the document from the QDomDocument + return true; +} + +bool ExamplePart::saveOasis( KoStore* store, KoXmlWriter* manifestWriter ) +{ + // TODO save the document to the KoStore; + return true; +} + +void ExamplePart::paintContent( QPainter& painter, const QRect& rect, bool /*transparent*/, + double /*zoomX*/, double /*zoomY*/ ) +{ + // ####### handle transparency + + // Need to draw only the document rectangle described in the parameter rect. + int left = rect.left() / 20; + int right = rect.right() / 20 + 1; + int top = rect.top() / 20; + int bottom = rect.bottom() / 20 + 1; + + for( int x = left; x < right; ++x ) + painter.drawLine( x * 20, top * 20, x * 20, bottom * 20 ); + for( int y = left; y < right; ++y ) + painter.drawLine( left * 20, y * 20, right * 20, y * 20 ); +} + +#include "example_part.moc" |