From 2b64a84d39eeed5681d0ee5068c7d11a01527750 Mon Sep 17 00:00:00 2001 From: alwin Date: Mon, 28 Feb 2005 09:40:30 +0000 Subject: 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. --- (limited to 'noncore/applets/keyhelper/keyhelperapplet/anylnk/TextLnk.cpp') 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 @@ +#include "TextLnk.h" + +void TextLnk::execute() +{ + QClipboard* cb = QApplication::clipboard(); + parseText(); + cb->setText(m_params[1]); + QWSServer::sendKeyEvent('V'-'@',Qt::Key_V, Qt::ControlButton, + true, false); + QWSServer::sendKeyEvent('V'-'@',Qt::Key_V, Qt::ControlButton, + false, false); +} + +void TextLnk::parse(QString& str) +{ + replace(str, "\\\\", "\\"); + replace(str, "\\n", "\n"); + replace(str, "\\r", "\r"); + replace(str, "\\t", "\t"); +} + +void TextLnk::replace(QString& str, const QString& s1, const QString& s2) +{ + int index = 0; + int idx; + int len = s1.length(); + idx = str.find(s1, index); + for(;;){ + idx = str.find(s1, index); + if(idx < 0) break; + str.replace(idx, len, s2); + index = idx; + } +} -- cgit v0.9.0.2