[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/runtime/kioslave/man
From: David Faure <faure () kde ! org>
Date: 2011-01-13 12:57:52
Message-ID: 20110113125752.A2F37AC8B3 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1214197 by dfaure:
Ported from KParts::Factory to KPluginFactory. Explained purpose of the class. Cleanups.
M +8 -40 kmanpart.cpp
M +4 -26 kmanpart.h
--- trunk/KDE/kdebase/runtime/kioslave/man/kmanpart.cpp #1214196:1214197
@@ -19,8 +19,8 @@
#include "kmanpart.h"
-
#include <kcomponentdata.h>
+#include <kpluginfactory.h>
#include <kglobal.h>
#include <kdebug.h>
#include <klocale.h>
@@ -28,52 +28,20 @@
#include <kaboutdata.h>
#include <kdeversion.h>
-extern "C"
+static KAboutData createAboutData()
{
- KDE_EXPORT void* init_libkmanpart()
- {
- return new KManPartFactory;
+ return KAboutData("kmanpart", "kio_man", ki18n("KMan"), KDE_VERSION_STRING);
}
-}
-KComponentData *KManPartFactory::s_instance = 0L;
-KAboutData* KManPartFactory::s_about = 0L;
+K_PLUGIN_FACTORY(KManPartFactory, registerPlugin<KManPart>();)
+K_EXPORT_PLUGIN(KManPartFactory(createAboutData()))
-KManPartFactory::KManPartFactory( QObject* parent )
- : KParts::Factory( parent )
-{}
-KManPartFactory::~KManPartFactory()
-{
- delete s_instance;
- s_instance = 0L;
- delete s_about;
-}
-
-KParts::Part* KManPartFactory::createPartObject( QWidget * parentWidget, QObject *,
- const char* /*className*/,const QStringList & )
-{
- KManPart* part = new KManPart(parentWidget);
- return part;
-}
-
-const KComponentData &KManPartFactory::componentData()
-{
- if( !s_instance )
- {
- s_about = new KAboutData( "kmanpart", 0,
- ki18n( "KMan" ), KDE_VERSION_STRING );
- s_instance = new KComponentData(s_about);
- }
- return *s_instance;
-}
-
-
-KManPart::KManPart( QWidget * parent )
-: KHTMLPart( parent )
+KManPart::KManPart(QWidget * parentWidget, QObject* parent, const QVariantList&)
+: KHTMLPart(parentWidget, parent)
,m_job(0)
{
- setComponentData(KComponentData("kmanpart"));
+ setComponentData(KManPartFactory::componentData());
m_extension=new KParts::BrowserExtension(this);
}
--- trunk/KDE/kdebase/runtime/kioslave/man/kmanpart.h #1214196:1214197
@@ -21,46 +21,24 @@
#ifndef KMANPART_H
#define KMANPART_H
-#include <QByteArray>
+class QByteArray;
-#include <kparts/factory.h>
#include <kparts/part.h>
#include <kparts/browserextension.h>
#include <khtml_part.h>
#include <kio/job.h>
#include <kio/jobclasses.h>
-class KComponentData;
-class KAboutData;
-
/**
* Man Page Viewer
- * \todo: Why is it needed? Why is KHTML alone not possible?
+ * This is needed so that we can open local files using the man: protocol transparently.
+ * Testcase: click on a man page file (e.g. makekdewidgets.1) in konqueror.
*/
-class KManPartFactory: public KParts::Factory
-{
- Q_OBJECT
- public:
- KManPartFactory( QObject * parent = 0 );
- virtual ~KManPartFactory();
-
- virtual KParts::Part* createPartObject( QWidget * parentWidget,
- QObject* parent, const char * classname,
- const QStringList &args);
-
- static const KComponentData &componentData();
-
- private:
- static KComponentData *s_instance;
- static KAboutData * s_about;
-
-};
-
class KManPart : public KHTMLPart
{
Q_OBJECT
public:
- KManPart( QWidget * parent );
+ KManPart( QWidget * parent, QObject*, const QVariantList& );
KParts::BrowserExtension * extension() {return m_extension;}
public Q_SLOTS:
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic