File indexing completed on 2023-09-24 08:19:52
0001 /* ============================================================ 0002 * 0003 * This file is a part of KDE project 0004 * 0005 * 0006 * Date : 2005-17-06 0007 * Description : a kipi plugin to export images to Flickr web service 0008 * 0009 * Copyright (C) 2005-2008 by Vardhman Jain <vardhman at gmail dot com> 0010 * Copyright (C) 2008-2018 by Gilles Caulier <caulier dot gilles at gmail dot com> 0011 * Copyright (C) 2009 by Luka Renko <lure at kubuntu dot org> 0012 * 0013 * This program is free software; you can redistribute it 0014 * and/or modify it under the terms of the GNU General 0015 * Public License as published by the Free Software Foundation; 0016 * either version 2, or (at your option) any later version. 0017 * 0018 * This program is distributed in the hope that it will be useful, 0019 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0020 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0021 * GNU General Public License for more details. 0022 * 0023 * ============================================================ */ 0024 0025 #include "plugin_flickr.h" 0026 0027 //Qt includes 0028 0029 #include <QApplication> 0030 0031 // KDE includes 0032 0033 #include <kactioncollection.h> 0034 #include <kpluginfactory.h> 0035 #include <kwindowsystem.h> 0036 0037 // LibKIPI includes 0038 0039 #include <KIPI/Interface> 0040 0041 // Local includes 0042 0043 #include "flickrwindow.h" 0044 #include "selectuserdlg.h" 0045 #include "kipiplugins_debug.h" 0046 0047 namespace KIPIFlickrPlugin 0048 { 0049 0050 K_PLUGIN_FACTORY(FlickrExportFactory, registerPlugin<Plugin_Flickr>();) 0051 0052 Plugin_Flickr::Plugin_Flickr(QObject* const parent, const QVariantList& /*args*/) 0053 : Plugin(parent, "Flickr") 0054 { 0055 qCDebug(KIPIPLUGINS_LOG) << "Plugin_Flickr plugin loaded"; 0056 0057 setUiBaseName("kipiplugin_flickrui.rc"); 0058 setupXML(); 0059 0060 m_actionFlickr = nullptr; 0061 m_action23 = nullptr; 0062 0063 m_dlgFlickr = nullptr; 0064 m_dlg23 = nullptr; 0065 0066 selectFlickr = nullptr; 0067 select23 = nullptr; 0068 } 0069 0070 Plugin_Flickr::~Plugin_Flickr() 0071 { 0072 delete m_dlgFlickr; 0073 delete m_dlg23; 0074 0075 delete selectFlickr; 0076 delete select23; 0077 } 0078 0079 void Plugin_Flickr::setup(QWidget* const widget) 0080 { 0081 m_dlgFlickr = nullptr; 0082 m_dlg23 = nullptr; 0083 0084 Plugin::setup(widget); 0085 0086 if (!interface()) 0087 { 0088 qCCritical(KIPIPLUGINS_LOG) << "Kipi interface is null!"; 0089 return; 0090 } 0091 0092 setupActions(); 0093 } 0094 0095 void Plugin_Flickr::setupActions() 0096 { 0097 setDefaultCategory(ExportPlugin); 0098 0099 m_actionFlickr = new QAction(this); 0100 m_actionFlickr->setText(i18n("Export to Flick&r...")); 0101 m_actionFlickr->setIcon(QIcon::fromTheme(QString::fromLatin1("kipi-flickr"))); 0102 actionCollection()->setDefaultShortcut(m_actionFlickr, Qt::ALT + Qt::SHIFT + Qt::Key_R); 0103 0104 selectFlickr = new SelectUserDlg(nullptr, QString::fromLatin1("Flickr")); 0105 0106 connect(m_actionFlickr, SIGNAL(triggered(bool)), 0107 this, SLOT(slotActivateFlickr())); 0108 0109 addAction(QString::fromLatin1("flickrexport"), m_actionFlickr); 0110 /* 0111 m_action23 = new QAction(this); 0112 m_action23->setText(i18n("Export to &23...")); 0113 m_action23->setIcon(QIcon::fromTheme(QString::fromLatin1("kipi-hq"))); 0114 actionCollection()->setDefaultShortcut(m_action23, Qt::ALT + Qt::SHIFT + Qt::Key_2); 0115 0116 select23 = new SelectUserDlg(0,QString::fromLatin1("23")); 0117 0118 connect(m_action23, SIGNAL(triggered(bool)), 0119 this, SLOT(slotActivate23())); 0120 0121 addAction(QString::fromLatin1("23export"), m_action23); 0122 */ 0123 } 0124 0125 void Plugin_Flickr::slotActivateFlickr() 0126 { 0127 selectFlickr->reactivate(); 0128 0129 if (!m_dlgFlickr) 0130 { 0131 // We clean it up in the close button 0132 m_dlgFlickr = new FlickrWindow(QApplication::activeWindow(), QString::fromLatin1("Flickr"), selectFlickr); 0133 } 0134 else 0135 { 0136 if (m_dlgFlickr->isMinimized()) 0137 { 0138 KWindowSystem::unminimizeWindow(m_dlgFlickr->winId()); 0139 } 0140 0141 KWindowSystem::activateWindow(m_dlgFlickr->winId()); 0142 } 0143 0144 m_dlgFlickr->reactivate(); 0145 } 0146 0147 void Plugin_Flickr::slotActivate23() 0148 { 0149 select23->reactivate(); 0150 0151 if (!m_dlg23) 0152 { 0153 // We clean it up in the close button 0154 m_dlg23 = new FlickrWindow(QApplication::activeWindow(), QString::fromLatin1("23"), select23); 0155 } 0156 else 0157 { 0158 if (m_dlg23->isMinimized()) 0159 { 0160 KWindowSystem::unminimizeWindow(m_dlg23->winId()); 0161 } 0162 0163 KWindowSystem::activateWindow(m_dlg23->winId()); 0164 } 0165 0166 m_dlg23->reactivate(); 0167 } 0168 0169 } // namespace KIPIFlickrPlugin 0170 0171 #include "plugin_flickr.moc" 0172 0173 #include "moc_plugin_flickr.cpp"