Commit Graph

783 Commits

Author SHA1 Message Date
Artur Duque de Souza
f1e61647b6 QML Bindings for Plasma::ToolTips
Implementation of a proxy to make it easy to declare tooltips in QML,
that will use Plasma::ToolTipManager to display tooltips in any item
that is declared in QML.

The syntax is:

import org.kde.plasma.core 0.1 as PlasmaCore

PlasmaCore.ToolTip {
    target: id_of_the_target
    mainText: "hello"
    subText: "world"
    image: "konqueror"
}

The syntax looks pretty straightforward and simple. "id_of_the_target"
is the id of the element which will show the tooltip in case it's hovered.

If the target is a QGraphicsWidget, the code path is really simple but if
it's a QDeclarativeItem, then we create a wrapper (that is a QGraphicsWidget)
and setup that in a way that we set this wrapper as the target on Plasma's
API. For libplasma2 we may want to change this so it's more generic (and
also put this together with the components).

Right now there is two open issues for me:

 1) we should use "image" or "icon"? Allowing the use of a image that is
a string that identifies the icon for KIconLoader seems simpler and more
beautiful to me, but it would be nice to specify a random QPixmap. Besides
being able to use the bindings for QIcon it doesn't look very good. Marco,
do you have any thoughts on this issue?

 2) for touch oriented UIs, the tooltip as it is right now is not very
useful. Is there any "touch" scenario where we may want to use them?

CCMAIL:mart@kde.org
Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-27 19:45:48 -03:00
Artur Duque de Souza
436fd7e762 Separate the DeclarativeItemContainer so it can be used by others
We are going to need the declarative container for the tooltips,
so it makes sense to put this guy in it's own files.

Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-27 19:45:48 -03:00
Sebastian Kügler
0aaa04c2dc build++ 2011-04-27 03:49:03 +02:00
Sebastian Kügler
9dab5df492 Merge branch 'master' of git://anongit.kde.org/kde-runtime 2011-04-27 03:43:08 +02:00
Artur Duque de Souza
3dbe535dec Last bits to theme bindings
We are going to need a proxy for the theme anyway, so we need
this guy complete anyway. Let's forget about the idea of exporting
Plasma::Theme directly.

Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-26 16:50:05 -03:00
Aaron Seigo
ecba1f6d3b do all three types nicely 2011-04-26 20:53:51 +02:00
Sebastian Kügler
e5dbbdc8f1 bind Plasma::Theme::styleSheet() in declarative imports 2011-04-26 20:27:13 +02:00
Aaron Seigo
5364a3bd50 pretty output for the package roots. for sebas. with luvs. 2011-04-26 20:22:48 +02:00
Artur Duque de Souza
d54f9bbb5a Export more properties of the Plasma's theme
We should export name, font, windowTranslucencyEnabled and homepage
as well. Later we will just put all the properties on the Plasma::Theme
itself and export it.

Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-26 15:09:59 -03:00
Artur Duque de Souza
add8249568 Do not allow the adition of a source that is already connected
If you try to connect a source that is already connected, it should
return and not create a duplicate of that source.

Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-24 19:18:14 -03:00
Marco Martin
96d7d83ee9 Merge branch 'plasma/declarative' 2011-04-21 16:58:25 +02:00
Marco Martin
89c468c7a4 remove what can't still be merged 2011-04-21 16:57:57 +02:00
Marco Martin
2abb295695 revert old deferred role update hack 2011-04-17 20:46:36 +02:00
Marco Martin
96fdce66c1 make connection to connectedSourcesChanged queued
Changing to Qt::QueuedConnection delays setupData().
this makes the dataChanged() signal arrive to qml only when the full
batch of setData has been done.
this in turn doesn't let incomplete data arrive to the model, making an
incomplete role mapping.
should fix the QML version of Lionmail
CCMAIL:sebas@kde.org
2011-04-17 20:01:45 +02:00
Marco Martin
388d61203f compatible signature in connect 2011-04-14 22:49:13 +02:00
Marco Martin
469f2076dd reorder together the other Plasma enums 2011-04-14 19:50:57 +02:00
Marco Martin
06f753173a n Applet the signal is newStatus 2011-04-14 17:08:11 +02:00
Marco Martin
2fc39865e3 forward the statusChanged() signal 2011-04-14 16:46:13 +02:00
Marco Martin
ef1ff5403e FEATURE:bind Applet::status() 2011-04-14 16:38:15 +02:00
Aaron Seigo
85bfb715ee disconnect sources we get data for but don't have a connected vis to 2011-04-12 22:13:23 +02:00
Aaron Seigo
3a72217fe3 delete service objects 2011-04-12 22:13:23 +02:00
Aaron Seigo
273f5bfe13 minor ws clean 2011-04-12 22:13:23 +02:00
Sebastian Kügler
738b47566c Merge branch 'master' into plasma/declarative 2011-04-11 17:22:18 +02:00
Aaron Seigo
841aca3d3e up the API v# 2011-04-09 21:00:08 +02:00
Aaron Seigo
4d2bd9e799 openUrl for http urls when http extension is requested 2011-04-09 21:00:08 +02:00
Marco Martin
98396208dc FEATURE: sourceFilter to exclude certain sources
sourceFilter to exclude certain from the model with a regexp
2011-04-09 20:16:36 +02:00
Marco Martin
6f9f911c68 don't re-bind what was done in libkdeclarative 2011-04-07 23:27:05 +02:00
Marco Martin
2a54c9c416 use the engine access in DeclarativeWidget
now DeclarativeWidget itself steals the scriptengine, so use it instead of having the hack there
2011-04-07 22:39:18 +02:00
Marco Martin
2754c01add FEATURE: expose the activity name and id
expose activity name and activityid in the containment wrapper interface
2011-04-04 16:15:48 +02:00
Sebastian Kügler
3e913b7096 Merge branch 'master' into plasma/declarative 2011-04-04 15:50:24 +02:00
Aaron Seigo
da186219ae give connectAllSources the same magic sauce connectSource does
thanks to emilsedgh for having the special super power of using precisely
what hasn't been properly implemented ... and then reporting it with
nice simple examples we can test with! THAT, my friends, is how it is done.
2011-04-04 14:43:40 +02:00
Montel Laurent
9a07bb2f93 Use const ref 2011-04-03 15:29:54 +02:00
Script Kiddy
cb3424f3cb SVN_SILENT made messages (.desktop file) 2011-03-31 07:41:49 +02:00
Script Kiddy
0c29d7611c SVN_SILENT made messages (.desktop file) 2011-03-30 08:45:32 +02:00
Script Kiddy
7f4abfc7a5 SVN_SILENT made messages (.desktop file) 2011-03-29 09:36:56 +02:00
Sebastian Kügler
4081aea62b Merge branch 'master' into plasma/declarative 2011-03-28 17:55:01 +02:00
Marco Martin
19ff95e3a1 relicense under LGPL upon author's permission 2011-03-28 16:54:24 +02:00
Marco Martin
264aa5e8fb bind setAssociatedApplication 2011-03-27 16:59:08 +02:00
Marco Martin
11b6e78640 re-set the prefix after setting the path 2011-03-27 12:38:01 +02:00
Marco Martin
2acf29889e update the license
After asking for an explicit permission by the author and the copyright holder (Nokia)
update the license from GPL to LGPL
2011-03-27 12:38:01 +02:00
Marco Martin
2d27bd40e6 less debug output 2011-03-21 21:40:00 +01:00
Marco Martin
d7d08c46ef bind the dialog's window flags 2011-03-21 21:38:48 +01:00
Marco Martin
19ad72af78 showPopup() -> popupPosition()
makes possible to move the popup
2011-03-21 19:20:17 +01:00
Marco Martin
b958bf1480 monitor for declarativeitem resize 2011-03-19 18:36:29 +01:00
Marco Martin
c216fe47b8 resize DeclarativeItemContainer at item's size 2011-03-19 18:31:36 +01:00
Marco Martin
e76914ed89 update is not a slot, make one 2011-03-18 13:32:49 +01:00
Sebastian Kügler
b68e3c3f8e Merge branch 'master' into plasma/declarative 2011-03-16 17:47:21 +01:00
Sebastian Kügler
9ac11a2f07 Merge branch 'master' into plasma/declarative 2011-03-15 16:35:27 +01:00
Marco Martin
fcd51b4c67 support availableScreenregion()
FEATURE: bridge to Corona::availableScreenRegion(), as an array of rects
2011-03-13 17:26:59 +01:00
Marco Martin
f07062fae5 movableApplets property of Containment
just for scripted contaiments, C++ ones can easily implement it themselves
2011-03-07 20:17:52 +01:00