1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
|
/* ============================================================
*
* This file is a part of digiKam project
* https://www.digikam.org
*
* Date : 2018-07-30
* Description : a plugin to export to MediaWiki web-service.
*
* Copyright (C) 2018-2022 by Gilles Caulier <caulier dot gilles at gmail dot com>
*
* 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, 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.
*
* ============================================================ */
#include "mediawikiplugin.h"
// Qt includes
#include <QPointer>
// KDE includes
#include <klocalizedstring.h>
// Local includes
#include "mediawikiwindow.h"
namespace DigikamGenericMediaWikiPlugin
{
MediaWikiPlugin::MediaWikiPlugin(QObject* const parent)
: DPluginGeneric(parent)
{
}
MediaWikiPlugin::~MediaWikiPlugin()
{
}
void MediaWikiPlugin::cleanUp()
{
delete m_toolDlg;
}
QString MediaWikiPlugin::name() const
{
return i18nc("@title", "MediaWiki");
}
QString MediaWikiPlugin::iid() const
{
return QLatin1String(DPLUGIN_IID);
}
QIcon MediaWikiPlugin::icon() const
{
return QIcon::fromTheme(QLatin1String("dk-mediawiki"));
}
QString MediaWikiPlugin::description() const
{
return i18nc("@info", "A tool to export to MediaWiki web-service");
}
QString MediaWikiPlugin::details() const
{
return i18nc("@info", "This tool allows users to export items to MediaWiki web-service.\n\n"
"See MediaWiki web site for details: %1",
QLatin1String("<a href='https://www.mediawiki.org/'>https://www.mediawiki.org/</a>"));
}
QList<DPluginAuthor> MediaWikiPlugin::authors() const
{
return QList<DPluginAuthor>()
<< DPluginAuthor(QString::fromUtf8("Alexandre Mendes"),
QString::fromUtf8("alex dot mendes1988 at gmail dot com"),
QString::fromUtf8("(C) 2011"))
<< DPluginAuthor(QString::fromUtf8("Guillaume Hormiere"),
QString::fromUtf8("hormiere dot guillaume at gmail dot com"),
QString::fromUtf8("(C) 2011-2012"))
<< DPluginAuthor(QString::fromUtf8("Peter Potrowl"),
QString::fromUtf8("peter dot potrowl at gmail dot com"),
QString::fromUtf8("(C) 2013"))
<< DPluginAuthor(QString::fromUtf8("Gilles Caulier"),
QString::fromUtf8("caulier dot gilles at gmail dot com"),
QString::fromUtf8("(C) 2011-2021"))
;
}
void MediaWikiPlugin::setup(QObject* const parent)
{
DPluginAction* const ac = new DPluginAction(parent);
ac->setIcon(icon());
ac->setText(i18nc("@action", "Export to MediaWiki..."));
ac->setObjectName(QLatin1String("export_MediaWiki"));
ac->setActionCategory(DPluginAction::GenericExport);
connect(ac, SIGNAL(triggered(bool)),
this, SLOT(slotMediaWiki()));
addAction(ac);
}
void MediaWikiPlugin::slotMediaWiki()
{
if (!reactivateToolDialog(m_toolDlg))
{
delete m_toolDlg;
m_toolDlg = new MediaWikiWindow(infoIface(sender()), nullptr);
m_toolDlg->setPlugin(this);
m_toolDlg->show();
}
}
} // namespace DigikamGenericMediaWikiPlugin
|