aboutsummaryrefslogtreecommitdiffstats
path: root/3.4.0/src/modules/objects/class_urllabel.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3.4.0/src/modules/objects/class_urllabel.cpp')
-rw-r--r--3.4.0/src/modules/objects/class_urllabel.cpp330
1 files changed, 0 insertions, 330 deletions
diff --git a/3.4.0/src/modules/objects/class_urllabel.cpp b/3.4.0/src/modules/objects/class_urllabel.cpp
deleted file mode 100644
index da13c9891..000000000
--- a/3.4.0/src/modules/objects/class_urllabel.cpp
+++ /dev/null
@@ -1,330 +0,0 @@
-//vim: ts=8
-// File : class_urllabel.cpp
-// Creation date : Thu Feb 18 1:27:44 CEST 2001 by Krzysztof Godlewski
-//
-// This file is part of the KVirc irc client distribution
-// Copyright (C) 1999-2000 Krzysztof Godlewski
-// Copyright (C) 1999-2000 Szymon Stefanek (pragma at kvirc dot net)
-//
-// 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 opinion) any later version.
-//
-// This program is distributed in the HOPE that it will be USEFUL,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-// See the GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, write to the Free Software Foundation,
-// Inc. ,59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-//
-
-
-#include "class_urllabel.h"
-
-#include "kvi_debug.h"
-#include "kvi_locale.h"
-#include "kvi_error.h"
-
-#include "kvi_app.h"
-
-#include "kvi_window.h"
-#include "kvi_kvs_script.h"
-#ifdef COMPILE_USE_QT4
-#include <QMouseEvent>
-#define QT_LEFT_BUTTON Qt::LeftButton
-#else
-#define QT_LEFT_BUTTON QEvent::LeftButton
-#endif
-//#warning "Functions to change colors for different states"
-//#warning "$setUnderline(), $underline()"
-
-//extern KviApp * g_pApp;
-/*static KviScriptObjectClass * g_pUrlLabelClass = 0;
-
-static KviScriptObject * urlLabelClassCreateInstance(KviScriptObjectClass * c,
- KviScriptObject * p, const char * n)
-{
- return new KviScriptUrlLabelObject(c, p, n);
-}
-
-KviScriptUrlLabelObject::KviScriptUrlLabelObject(KviScriptObjectClass * c, \
-KviScriptObject * p, const char *n) : KviScriptLabelObject(c, p, n)
-{
- m_normalClr = QColor("black");
- m_enterClr = QColor("blue");
- m_activeClr = QColor("red");
- m_useSingleClick = true;
-// ((QLabel *)widget())->setAutoResize(true);
- //widget()->setCursor(Qt::pointingHandCursor);
- //((KviScriptWidgetObject: * )p)->widget()->setCursor(Qt::pointingHandCursor);
-}
-
-KviScriptUrlLabelObject::~KviScriptUrlLabelObject()
-{
-}
-
-bool KviScriptUrlLabelObject::eventFilter(QObject * o, QEvent * e)
-{
- QPalette pal = ((QLabel *)widget())->palette();
-
- switch(e->type())
- {
- case QEvent::Enter:
- pal.setColor(QColorGroup::Foreground, m_enterClr);
- break;
- case QEvent::Leave:
- // this doesn't work...
- if(((QMouseEvent *)e)->state() & QEvent::LeftButton)
- pal.setColor(QColorGroup::Foreground, \
- m_activeClr);
- else
- pal.setColor(QColorGroup::Foreground, \
- m_normalClr);
- break;
- case QEvent::MouseButtonRelease:
- pal.setColor(QColorGroup::Foreground, m_enterClr);
- // perform actions here
- if(!m_lastClickWasDbl && !m_useSingleClick)
- break;
- if(!m_action.isEmpty())
- {
-
- }
- break;
- case QEvent::MouseButtonPress:
- m_lastClickWasDbl = false;
- if(!((QMouseEvent * )e)->button() & \
- QEvent::LeftButton || !m_useSingleClick)
- break;
- pal.setColor(QColorGroup::Foreground, m_activeClr);
- break;
- case QEvent::MouseButtonDblClick:
- m_lastClickWasDbl = true;
- if(m_useSingleClick)
- break;
- pal.setColor(QColorGroup::Foreground, m_activeClr);
- break;
- default: // make gcc happy
- break;
- }
-
- ((QLabel *)widget())->setPalette(pal);
-
- return false;
-}
-*/
-//#warning "Docs for urllabel"
-
-/*
- @doc: urllabel
- @keyterms:
- display url, link
- @title:
- urllabel class
- @type:
- class
- @short:
- Displays an URI allowing to perform actions on click
- @inherits:
- [class]object[/class]
- [class]widget[/class]
- [class]label[/class]
- @description:
- This widget allows you to bind specific action on click. It can
- open an url, or execute any KVI++ code. The text color reacts on
- cursor movements and clicks.
- @functions:
- !fn: $setUrl(<text:string>)
- Sets the url to be opened when the links is activated. The way
- the label opens the url is defined in KVirc config dialog.
- !fn: <string> $url()
- Returns the currently set url.
- !fn: $setAction(<text:string>)
- Sets the action to be performed when the link is triggered. It
- can be any valid KVI++ code. Note that all KVirc commands must
- be prefixed with a '/', just as if you typed them in the input
- widget.
- !fn: <string> $action()
- Returns currently set action string.
- !fn: $setText(<text>)
- Sets the label's text. Reimplemented from internal reasons.
- !fn: $setCursorChange(<bEnabled:boolean>)
- Tells the label wheather to change or not the shape of cursor,
- when it is above the widget. Default is false.
- !fn: <boolean> $cursorChange()
- Returns true if the cursor changes over the label, false if not.
- !fn: $setUseSingleClick(<bEnabled:boolean>)
- If <bEnabled> is true, the label will react on single clicks,
- otherwise only double clicks will trigger the link.
- !fn: <boolean> $useSingleClick()
- Returns true if the label reacts on single clicks, false if it
- reacts only on double clicks.
-*/
-
-KVSO_BEGIN_REGISTERCLASS(KviKvsObject_urlabel,"urllabel","label")
-
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"setUrl",functionsetUrl)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"url",functionurl)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"setAction",functionsetAction)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"action",functionaction)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"setText",functionsetText)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"setCursorChange",functionsetCursorChange)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"cursorChange",functioncursorChange)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"setUseSingleClick",functionsetUseSingleClick)
- KVSO_REGISTER_HANDLER(KviKvsObject_urlabel,"useSingleClick",functionuseSingleClick)
-
-KVSO_END_REGISTERCLASS(KviKvsObject_urlabel)
-
-
-KVSO_BEGIN_CONSTRUCTOR(KviKvsObject_urlabel,KviKvsObject_label)
-
- m_normalClr = QColor("black");
- m_enterClr = QColor("blue");
- m_activeClr = QColor("red");
- m_useSingleClick = true;
-
-KVSO_END_CONSTRUCTOR(KviKvsObject_urlabel)
-
-KVSO_BEGIN_DESTRUCTOR(KviKvsObject_urlabel)
-
-KVSO_END_CONSTRUCTOR(KviKvsObject_urlabel)
-
-bool KviKvsObject_urlabel::eventFilter(QObject * o, QEvent * e)
-{
- QPalette pal = ((QLabel *)widget())->palette();
-
- switch(e->type())
- {
- case QEvent::Enter:
- pal.setColor(QColorGroup::Foreground, m_enterClr);
- break;
- case QEvent::Leave:
- // this doesn't work...
- if(((QMouseEvent *)e)->state() & QT_LEFT_BUTTON)
- pal.setColor(QColorGroup::Foreground, \
- m_activeClr);
- else
- pal.setColor(QColorGroup::Foreground, \
- m_normalClr);
- break;
- case QEvent::MouseButtonRelease:
- pal.setColor(QColorGroup::Foreground, m_enterClr);
- // perform actions here
- if(!m_lastClickWasDbl && !m_useSingleClick)
- break;
- if(!m_action.isEmpty())
- {
- KviKvsScript kvs("commandline",m_action);
- kvs.run(g_pActiveWindow,0,0/*,KviKvsScript::AssumeLocals*/);
-
- } else if(!m_url.isEmpty()) {
- KviKvsScript kvs("commandline","openurl "+m_url);
- kvs.run(g_pActiveWindow,0,0/*,KviKvsScript::AssumeLocals*/);
- }
- break;
- case QEvent::MouseButtonPress:
- m_lastClickWasDbl = false;
- if(!((QMouseEvent * )e)->button() & \
- QT_LEFT_BUTTON || !m_useSingleClick)
- break;
- pal.setColor(QColorGroup::Foreground, m_activeClr);
- break;
- case QEvent::MouseButtonDblClick:
- m_lastClickWasDbl = true;
- if(m_useSingleClick)
- break;
- pal.setColor(QColorGroup::Foreground, m_activeClr);
- break;
- default: // make gcc happy
- break;
- }
-
- ((QLabel *)widget())->setPalette(pal);
-
- return false;
-}
-bool KviKvsObject_urlabel::functionsetUrl(KviKvsObjectFunctionCall *c)
-{
- QString szUrl;
- KVSO_PARAMETERS_BEGIN(c)
- KVSO_PARAMETER("url",KVS_PT_STRING,0,szUrl)
- KVSO_PARAMETERS_END(c)
- if(!widget()) return true;
- if(szUrl.isEmpty()){
- c->error(__tr2qs("Not Enough Parameters"));
- return false;
- }
- m_url = szUrl;
- return true;
-}
-bool KviKvsObject_urlabel::functionurl(KviKvsObjectFunctionCall *c)
-{
- c->returnValue()->setString(m_url);
- return true;
-}
-bool KviKvsObject_urlabel::functionsetAction(KviKvsObjectFunctionCall *c)
-{
- QString szAction;
- KVSO_PARAMETERS_BEGIN(c)
- KVSO_PARAMETER("action",KVS_PT_STRING,0,szAction)
- KVSO_PARAMETERS_END(c)
- if(!widget()) return true;
- if(szAction.isEmpty()){
- c->error(__tr2qs("Not Enough Parameters"));
- return false;
- }
- m_action = szAction;
- return true;
-}
-bool KviKvsObject_urlabel::functionsetText(KviKvsObjectFunctionCall *c)
-{
- QString szText;
- KVSO_PARAMETERS_BEGIN(c)
- KVSO_PARAMETER("text",KVS_PT_STRING,0,szText)
- KVSO_PARAMETERS_END(c)
- if(!widget()) return true;
- ((QLabel *)widget())->setText(szText);
- ((QLabel *)widget())->setFixedSize(((QLabel *)widget())->sizeHint());
- return true;
-}
-bool KviKvsObject_urlabel::functionaction(KviKvsObjectFunctionCall *c)
-{
- c->returnValue()->setString(m_action);
- return true;
-}
-bool KviKvsObject_urlabel::functionsetCursorChange(KviKvsObjectFunctionCall *c)
-{
- bool bFlag;
- KVSO_PARAMETERS_BEGIN(c)
- KVSO_PARAMETER("bEnabled",KVS_PT_BOOLEAN,0,bFlag)
- KVSO_PARAMETERS_END(c)
- if(!widget())
- return true;
- if(m_changeCursor = bFlag)
- widget()->setCursor(Qt::pointingHandCursor);
- else
- widget()->setCursor(Qt::arrowCursor);
- return true;
-}
-bool KviKvsObject_urlabel::functionsetUseSingleClick(KviKvsObjectFunctionCall *c)
-{
- bool bFlag;
- KVSO_PARAMETERS_BEGIN(c)
- KVSO_PARAMETER("bEnabled",KVS_PT_BOOLEAN,0,bFlag)
- KVSO_PARAMETERS_END(c)
- m_useSingleClick = bFlag;
- return true;
-}
-bool KviKvsObject_urlabel::functionuseSingleClick(KviKvsObjectFunctionCall *c)
-{
- c->returnValue()->setBoolean(m_useSingleClick);
- return true;
-}
-bool KviKvsObject_urlabel::functioncursorChange(KviKvsObjectFunctionCall *c)
-{
- c->returnValue()->setBoolean(m_changeCursor);
- return true;
-}