[kde-doc-english] [kwave] /: added new command 'window:mousemove' (nearly the same as 'window:click', but sends a mouse move event instead of a mouse press/release event)
Thomas Eschenbacher
Thomas.Eschenbacher at gmx.de
Sat Mar 7 17:34:56 UTC 2015
Git commit 55ccd71fab21f1cca87b77db4c7140d0055c4c81 by Thomas Eschenbacher.
Committed on 07/03/2015 at 17:33.
Pushed by eschenbacher into branch 'master'.
added new command 'window:mousemove' (nearly the same as 'window:click', but sends a mouse move event instead of a mouse press/release event)
fixed some typos in comments
M +29 -0 doc/en/index.docbook
M +2 -0 kwave/FileContext.cpp
M +1 -1 libgui/SignalView.cpp
M +14 -0 plugins/debug/DebugPlugin.cpp
M +1 -1 plugins/playback/PlayBackPlugin.cpp
http://commits.kde.org/kwave/55ccd71fab21f1cca87b77db4c7140d0055c4c81
diff --git a/doc/en/index.docbook b/doc/en/index.docbook
index e9005ee..d82cd71 100644
--- a/doc/en/index.docbook
+++ b/doc/en/index.docbook
@@ -125,6 +125,7 @@
<!ENTITY no-i18n-cmd_window_cascade "window:cascade">
<!ENTITY no-i18n-cmd_window_click "window:click">
<!ENTITY no-i18n-cmd_window_close "window:close">
+ <!ENTITY no-i18n-cmd_window_mousemove "window:mousemove">
<!ENTITY no-i18n-cmd_window_next_sub "window:next_sub">
<!ENTITY no-i18n-cmd_window_prev_sub "window:prev_sub">
<!ENTITY no-i18n-cmd_window_resize "window:resize">
@@ -3126,6 +3127,7 @@
<indexentry><primaryie><link linkend="cmd_sect_window_cascade" endterm="cmd_title_window_cascade"/></primaryie></indexentry>
<indexentry><primaryie><link linkend="cmd_sect_window_click" endterm="cmd_title_window_click"/></primaryie></indexentry>
<indexentry><primaryie><link linkend="cmd_sect_window_close" endterm="cmd_title_window_close"/></primaryie></indexentry>
+ <indexentry><primaryie><link linkend="cmd_sect_window_mousemove" endterm="cmd_title_window_mousemove"/></primaryie></indexentry>
<indexentry><primaryie><link linkend="cmd_sect_window_next_sub" endterm="cmd_title_window_next_sub"/></primaryie></indexentry>
<indexentry><primaryie><link linkend="cmd_sect_window_prev_sub" endterm="cmd_title_window_prev_sub"/></primaryie></indexentry>
<indexentry><primaryie><link linkend="cmd_sect_window_resize" endterm="cmd_title_window_resize"/></primaryie></indexentry>
@@ -4826,6 +4828,33 @@
</tbody></tgroup></informaltable></simplesect>
</sect2>
+ <!-- @COMMAND@ window:mousemove(class,x,y) -->
+ <sect2 id="cmd_sect_window_mousemove"><title id="cmd_title_window_mousemove">&no-i18n-cmd_window_mousemove;</title>
+ <simplesect>
+ <title>&i18n-cmd_syntax;<command>&no-i18n-cmd_window_resize;</command>(
+ <replaceable>class</replaceable>,
+ <replaceable>x</replaceable>,
+ <replaceable>y</replaceable>
+ )</title>
+ <para>
+ Sends a mouse move event to window, identified by its
+ <replaceable>class</replaceable> name.
+ The event will only be sent to the first window that has
+ the given class name, therefore you should make sure that you
+ have only one instance of the given window when this command
+ gets executed.
+ </para>
+ </simplesect>
+ <simplesect><title>Parameters</title><informaltable frame='none'><tgroup cols='2'><tbody>
+ <row><entry><parameter>class</parameter>:</entry>
+ <entry>name of the window class</entry></row>
+ <row><entry><parameter>x</parameter>:</entry>
+ <entry>x position, relative to the left border of the window (in pixels)</entry></row>
+ <row><entry><parameter>y</parameter>:</entry>
+ <entry>y position, relative to the top border of the window (in pixels)</entry></row>
+ </tbody></tgroup></informaltable></simplesect>
+ </sect2>
+
<!-- @COMMAND@ window:next_sub() -->
<sect2 id="cmd_sect_window_next_sub"><title id="cmd_title_window_next_sub">&no-i18n-cmd_window_next_sub;</title>
<simplesect>
diff --git a/kwave/FileContext.cpp b/kwave/FileContext.cpp
index 2d518d4..8111090 100644
--- a/kwave/FileContext.cpp
+++ b/kwave/FileContext.cpp
@@ -443,6 +443,8 @@ int Kwave::FileContext::executeCommand(const QString &line)
return delegateCommand("debug", parser, 3);
CASE_COMMAND("window:close")
return delegateCommand("debug", parser, 1);
+ CASE_COMMAND("window:mousemove")
+ return delegateCommand("debug", parser, 3);
CASE_COMMAND("window:resize")
return delegateCommand("debug", parser, 3);
CASE_COMMAND("window:sendkey")
diff --git a/libgui/SignalView.cpp b/libgui/SignalView.cpp
index 4d09de0..d7eead3 100644
--- a/libgui/SignalView.cpp
+++ b/libgui/SignalView.cpp
@@ -476,7 +476,7 @@ void Kwave::SignalView::mousePressEvent(QMouseEvent *e)
}
break;
}
- case 0: {
+ case Qt::NoModifier: {
if (isSelectionBorder(e->pos().x())) {
// modify selection border
sample_index_t ofs = m_signal_manager->selection().first();
diff --git a/plugins/debug/DebugPlugin.cpp b/plugins/debug/DebugPlugin.cpp
index 1b09cb1..f49d86e 100644
--- a/plugins/debug/DebugPlugin.cpp
+++ b/plugins/debug/DebugPlugin.cpp
@@ -146,6 +146,20 @@ QStringList *Kwave::DebugPlugin::setup(QStringList ¶ms)
DBG(class_name), static_cast<void *>(widget));
if (!widget) return 0;
widget->close();
+ } else if (command == _("window:mousemove")) {
+ if (params.count() != 4) return 0;
+ QString class_name = params[1];
+ QWidget *widget = findWidget(class_name.toUtf8().constData());
+ unsigned int x = params[2].toUInt();
+ unsigned int y = params[3].toUInt();
+ if (!widget) return 0;
+
+ QMouseEvent *move_event =
+ new QMouseEvent(QEvent::MouseMove,
+ QPoint(x, y),
+ widget->mapToGlobal(QPoint(x,y)),
+ Qt::NoButton, Qt::NoButton, Qt::NoModifier);
+ QCoreApplication::postEvent(widget, move_event);
} else if (command == _("window:resize")) {
if (params.count() != 4) return 0;
QString class_name = params[1];
diff --git a/plugins/playback/PlayBackPlugin.cpp b/plugins/playback/PlayBackPlugin.cpp
index c51be20..5b8c29a 100644
--- a/plugins/playback/PlayBackPlugin.cpp
+++ b/plugins/playback/PlayBackPlugin.cpp
@@ -159,7 +159,7 @@ QStringList *Kwave::PlayBackPlugin::setup(QStringList &previous_params)
{
QStringList *result = 0;
- // try to interprete the list of previous parameters, ignore errors
+ // try to interpret the list of previous parameters, ignore errors
Kwave::PlayBackParam playback_params =
interpreteParameters(previous_params);
More information about the kde-doc-english
mailing list