Commit Graph

82 Commits

Author SHA1 Message Date
Diego Casella
97bfbf07a5 use QWeakPointer for m_declarativeItemContainer 2011-04-29 12:50:18 +02:00
Diego Casella
80b71fe2f4 check m_declarativeItemContainer before deleting it 2011-04-29 11:22:44 +02:00
Artur Duque de Souza
e3db04f3ff Add Tooltip to the build system
Let's compile the tooltip and also export it to our QML plugin.

Signed-off-by: Artur Duque de Souza <asouza@kde.org>
2011-04-27 19:45:49 -03:00
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
Sebastian Kügler
e5dbbdc8f1 bind Plasma::Theme::styleSheet() in declarative imports 2011-04-26 20:27:13 +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
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
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
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
Sebastian Kügler
3e913b7096 Merge branch 'master' into plasma/declarative 2011-04-04 15:50:24 +02:00
Montel Laurent
9a07bb2f93 Use const ref 2011-04-03 15:29:54 +02:00
Sebastian Kügler
4081aea62b Merge branch 'master' into plasma/declarative 2011-03-28 17:55:01 +02:00
Marco Martin
11b6e78640 re-set the prefix after setting the path 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
Marco Martin
aeb7c9cf0b Merge branch 'master' into plasma/declarative 2011-03-05 18:40:50 +01:00
Marco Martin
110f85b3c6 actually install the components 2011-03-05 18:40:18 +01:00
Marco Martin
650e518c2e reparent items when they go in a dialog 2011-02-25 22:38:03 +01:00
Marco Martin
d8457ecd8d properties for dialog move 2011-02-25 20:37:56 +01:00
Marco Martin
fcfafcbc6e proxy to setAttribute() 2011-02-25 19:00:01 +01:00
Marco Martin
8128291fee fix setVisible 2011-02-25 15:01:18 +01:00
Marco Martin
9c6f2132ad support qdeclarativeitems as well
support qdeclarativeitems as well trough a parent qgraphicswidget that syncs the geometry
2011-02-24 23:47:45 +01:00
Sebastian Kügler
93790aec7f Merge branch 'master' of git://anongit.kde.org/kde-runtime 2011-02-24 21:32:23 +01:00
Sebastian Kügler
a211718f6d fix signals 2011-02-24 21:32:10 +01:00
Marco Martin
61abadfd25 bindings for Plasma::Dialog
setting the mainItem property of a Dialog element, it will create a top level window with that item as the graphicsWidget()
right now it works only with QGraphicsWidget{} elements, Plasma::Dialog will be given the api to make this work with any QGraphicsObject as well.
2011-02-24 18:29:56 +01:00
Marco Martin
145bcf4045 always set a DataEngineSource role in the model
FEATURE: each item will have a DataEngineSource role that makes possible to identify for delegates to what source that data belongs
2011-02-19 14:12:58 +01:00
Marco Martin
d36d2162ff build everything 2011-02-10 19:11:29 +01:00
Nicolás Alvarez
cde1151099 Merged scratch/mart/plasma-components into subtree plasma/declarativeimports. 2011-02-10 14:41:47 -03:00
Marco Martin
45c6ac7dfb don't remapp all roles each time, keep the old ones, with the same role number/name mapping: avoids role shuffle after an update
svn path=/trunk/KDE/kdebase/runtime/; revision=1216034
2011-01-20 22:03:52 +00:00
Marco Martin
ccf35dd608 don't emit dataChanged() when undesired data arrives
svn path=/trunk/KDE/kdebase/runtime/; revision=1216014
2011-01-20 20:29:00 +00:00
Marco Martin
8565829336 only set data that was explicitly connected to the dataengine
(some dataengines are a bit too exuberant in sending stuff, like the images of microblog)

svn path=/trunk/KDE/kdebase/runtime/; revision=1216008
2011-01-20 20:22:44 +00:00
Marco Martin
20e4b7ca35 smooth property (default off)
svn path=/trunk/KDE/kdebase/runtime/; revision=1204366
2010-12-06 22:19:33 +00:00
Marco Martin
4ff23c21ea put naturalSize property back in: turns out was necessary to make things clean
svn path=/trunk/KDE/kdebase/runtime/; revision=1204364
2010-12-06 21:54:58 +00:00
Marco Martin
8a92c6b5f3 gah, probably not useful, revert previous commit
svn path=/trunk/KDE/kdebase/runtime/; revision=1204317
2010-12-06 18:42:31 +00:00