• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeutils API Reference
  • KDE Home
  • Contact Us
 

superkaramba

  • sources
  • kde-4.12
  • kdeutils
  • superkaramba
  • src
  • meters
clickarea.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  * Copyright (C) 2003 by Hans Karlsson *
3  * karlsson.h@home.se *
4  * *
5  * Copyright (C) 2004,2005 Luke Kenneth Casson Leighton <lkcl@lkcl.net> *
6  * *
7  * This program is free software; you can redistribute it and/or modify *
8  * it under the terms of the GNU General Public License as published by *
9  * the Free Software Foundation; either version 2 of the License, or *
10  * (at your option) any later version. *
11  ***************************************************************************/
12 
13 #include "clickarea.h"
14 #include "karamba.h"
15 
16 #include <QMouseEvent>
17 #include <QCursor>
18 
19 #include <KService>
20 
21 
22 ClickArea::ClickArea(Karamba* k, bool preview, int x, int y, int w, int h)
23  : Meter(k, x, y, w, h), m_preview(preview)
24 {
25  value = "";
26  setAcceptedMouseButtons(Qt::LeftButton);
27  setCursor(QCursor(Qt::PointingHandCursor));
28 }
29 
30 ClickArea::~ClickArea()
31 {}
32 
33 bool ClickArea::mouseEvent(QEvent *e)
34 {
35  //K3ShellProcess ksp;
36  Q_UNUSED(e);
37 
38  if (!svc_name.isEmpty()) {
39  KService sv(svc_name, svc_onClick, svc_icon);
40  KUrl::List l;
41  KRun::run(sv, l, 0);
42  return false;
43  } else {
44  QString program;
45  program = onClick;
46  program.replace(QRegExp("%v", Qt::CaseInsensitive), value);
47  m_karamba->replaceNamedValues(&program);
48 
49  if (!program.isEmpty()) {
50  //qDebug(program);
51  KRun::runCommand(program,0L);
52  }
53  }
54 
55  return false;
56 }
57 
58 void ClickArea::setOnClick(const QString &oc)
59 {
60  onClick = oc;
61 }
62 
63 void ClickArea::setServiceOnClick(const QString &name, const QString &exec, const QString &icon)
64 {
65  svc_name = name;
66  svc_onClick = exec;
67  svc_icon = icon;
68 }
69 
70 void ClickArea::setOnMiddleClick(const QString &oc)
71 {
72  onMiddleClick = oc;
73 }
74 
75 
76 QRect ClickArea::getRectangle()
77 {
78  return boundingRect().toRect();
79 }
80 
81 void ClickArea::paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
82  QWidget *widget)
83 {
84  Q_UNUSED(option);
85  Q_UNUSED(widget);
86 
87  if (m_preview)
88  painter->drawRect(boundingRect());
89 }
90 
91 
92 void ClickArea::setValue(int v)
93 {
94  setValue(QString::number(v));
95 }
96 
97 
98 void ClickArea::setValue(const QString &v)
99 {
100  value = v;
101 }
102 
103 #include "clickarea.moc"
ClickArea::setValue
void setValue(int)
Definition: clickarea.cpp:92
Meter::boundingRect
virtual QRectF boundingRect() const
Definition: meters/meter.cpp:193
ClickArea::getRectangle
QRect getRectangle()
Definition: clickarea.cpp:76
ClickArea::svc_name
QString svc_name
Definition: clickarea.h:62
QWidget
ClickArea::m_preview
bool m_preview
Definition: clickarea.h:58
ClickArea::setOnClick
void setOnClick(const QString &)
Definition: clickarea.cpp:58
ClickArea::onMiddleClick
QString onMiddleClick
Definition: clickarea.h:64
Karamba
Definition: karamba.h:52
ClickArea::onClick
QString onClick
Definition: clickarea.h:60
ClickArea::svc_onClick
QString svc_onClick
Definition: clickarea.h:61
Karamba::replaceNamedValues
void replaceNamedValues(QString *source)
Definition: karamba.cpp:2288
ClickArea::setOnMiddleClick
void setOnMiddleClick(const QString &)
Definition: clickarea.cpp:70
Meter::m_karamba
Karamba * m_karamba
Definition: meters/meter.h:84
ClickArea::svc_icon
QString svc_icon
Definition: clickarea.h:63
ClickArea::mouseEvent
bool mouseEvent(QEvent *e)
Definition: clickarea.cpp:33
clickarea.h
Meter
Definition: meters/meter.h:23
ClickArea::paint
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
Definition: clickarea.cpp:81
ClickArea::value
QString value
Definition: clickarea.h:65
ClickArea::~ClickArea
~ClickArea()
Definition: clickarea.cpp:30
ClickArea::ClickArea
ClickArea(Karamba *k, bool preview, int x, int y, int w, int h)
Definition: clickarea.cpp:22
ClickArea::setServiceOnClick
void setServiceOnClick(const QString &, const QString &, const QString &)
Definition: clickarea.cpp:63
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:07:19 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

superkaramba

Skip menu "superkaramba"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeutils API Reference

Skip menu "kdeutils API Reference"
  • ark
  • filelight
  • kcalc
  • kcharselect
  • kdf
  • kfloppy
  • kgpg
  • kremotecontrol
  • ktimer
  • kwallet
  • superkaramba
  • sweeper

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal