summaryrefslogtreecommitdiff
path: root/noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp
authoralwin <alwin>2005-02-28 09:40:30 (UTC)
committer alwin <alwin>2005-02-28 09:40:30 (UTC)
commit2b64a84d39eeed5681d0ee5068c7d11a01527750 (patch) (unidiff)
treec8693340dbc5ef5e2f9afa90b690829ddff2c4bd /noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp
parent61fa699140c5efbb6ba0bf2a62f7e8fbf62976be (diff)
downloadopie-2b64a84d39eeed5681d0ee5068c7d11a01527750.zip
opie-2b64a84d39eeed5681d0ee5068c7d11a01527750.tar.gz
opie-2b64a84d39eeed5681d0ee5068c7d11a01527750.tar.bz2
other keymapping tool - not working this moment, I have to check it out
- the reason is that the config file is somewhat easier to understand than from zkbapplet and has a nice config tool. Please don't put it into any repositories this moment.
Diffstat (limited to 'noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp b/noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp
new file mode 100644
index 0000000..abb432c
--- a/dev/null
+++ b/noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp
@@ -0,0 +1,34 @@
1#include "TextLnk.h"
2
3void TextLnk::execute()
4{
5 QClipboard* cb = QApplication::clipboard();
6 parseText();
7 cb->setText(m_params[1]);
8 QWSServer::sendKeyEvent('V'-'@',Qt::Key_V, Qt::ControlButton,
9 true, false);
10 QWSServer::sendKeyEvent('V'-'@',Qt::Key_V, Qt::ControlButton,
11 false, false);
12}
13
14void TextLnk::parse(QString& str)
15{
16 replace(str, "\\\\", "\\");
17 replace(str, "\\n", "\n");
18 replace(str, "\\r", "\r");
19 replace(str, "\\t", "\t");
20}
21
22void TextLnk::replace(QString& str, const QString& s1, const QString& s2)
23{
24 int index = 0;
25 int idx;
26 int len = s1.length();
27 idx = str.find(s1, index);
28 for(;;){
29 idx = str.find(s1, index);
30 if(idx < 0) break;
31 str.replace(idx, len, s2);
32 index = idx;
33 }
34}