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
|
/***************************************************************************
StringEnterPlugin.cpp - plugin for entering a text command
-------------------
begin : Sat Mar 14 2015
copyright : (C) 2015 by Thomas Eschenbacher
email : Thomas.Eschenbacher@gmx.de
***************************************************************************/
/***************************************************************************
* *
* 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. *
* *
***************************************************************************/
#include "config.h"
#include <errno.h>
#include <new>
#include <QPointer>
#include <QStringList>
#include <KLazyLocalizedString>
#include <KLocalizedString>
#include "libkwave/String.h"
#include "libkwave/Utils.h"
#include "StringEnterDialog.h"
#include "StringEnterPlugin.h"
KWAVE_PLUGIN(stringenter, StringEnterPlugin)
//***************************************************************************
Kwave::StringEnterPlugin::StringEnterPlugin(QObject *parent,
const QVariantList &args)
:Kwave::Plugin(parent, args)
{
}
//***************************************************************************
Kwave::StringEnterPlugin::~StringEnterPlugin()
{
}
//***************************************************************************
void Kwave::StringEnterPlugin::load(QStringList ¶ms)
{
Q_UNUSED(params)
QString entry =
_("menu(plugin:setup(stringenter),%1/%2/#icon(editor),F12)");
emitCommand(entry.arg(_("Settings")).arg(_(kli18nc(
"menu: /Settings/Enter Command",
"Enter Command").untranslatedText()
)));
}
//***************************************************************************
QStringList *Kwave::StringEnterPlugin::setup(QStringList &previous_params)
{
QString preset;
if (previous_params.count() == 1)
preset = previous_params[0];
// create the setup dialog
QPointer<Kwave::StringEnterDialog> dialog =
new(std::nothrow) Kwave::StringEnterDialog(parentWidget(), preset);
Q_ASSERT(dialog);
if (!dialog) return nullptr;
QStringList *list = new(std::nothrow) QStringList();
Q_ASSERT(list);
if (list && dialog->exec() && dialog) {
// user has pressed "OK"
QString command = dialog->command();
emitCommand(command);
} else {
// user pressed "Cancel"
delete list;
list = nullptr;
}
delete dialog;
return list;
}
//***************************************************************************
#include "StringEnterPlugin.moc"
//***************************************************************************
//***************************************************************************
#include "moc_StringEnterPlugin.cpp"
|