Commit Graph

103 Commits

Author SHA1 Message Date
Marco Martin
554399afc7 a method to fetch custom size wallpapers 2011-10-09 16:12:58 +02:00
Aaron Seigo
b0783ce5f7 a slew of clean ups and improvements to the code
DataSource still needs to be made to not keep a private copy of all the data
2011-09-22 22:45:26 +02:00
Marco Martin
734d0e15df unfortunately this is still needed 2011-09-16 19:20:49 +02:00
Marco Martin
27c857db82 pre-populate the model if needed
since DataModel is a consumer of a consumer, in the case DataSource as already data, populate the model with it without waiting for the signal
2011-09-15 23:05:44 +02:00
Marco Martin
ccc5bf7b90 queued connection is not necessary anymore
all data is checked for possible roles now
2011-09-15 21:06:05 +02:00
Marco Martin
e18e08c2f1 don't cache empty sources 2011-09-15 21:05:06 +02:00
Marco Martin
b68fb0a060 be sure to include ALL role names
some dataengines can have a different set of keys for each item (ie metadata dataengine) the whole mapped roles must be the complete superset
this is not very efficient, but unfortunately is necessary.
(another reason  why DataContainers should become models)
2011-09-12 21:34:55 +02:00
Marco Martin
d48888e7ac default to 0 interval (no polling) 2011-09-01 16:25:31 +02:00
Marco Martin
6d7b475468 location property that decides the sliding effect 2011-08-15 19:32:01 +02:00
Marco Martin
e8432fe351 don't reset the model if the source isn't ours 2011-07-25 19:11:36 +02:00
Aaron Seigo
e3f18bded0 only let a source be valid if there is an engine and the engine is valid 2011-07-15 13:18:48 +02:00
Aaron Seigo
e2f4b4ecc2 protect against accessing a null 2011-07-15 13:18:47 +02:00
Aaron Seigo
201baafc1c mainitem can be null according to the if() below, so respect that 2011-07-15 13:18:47 +02:00
Marco Martin
6354e56a91 emit visiblechanged when it should 2011-07-12 20:31:29 +02:00
Marco Martin
7c947d8e96 reset models in the proper way 2011-06-24 23:54:07 +02:00
Marco Martin
c4fb39de30 guard pointers, crash-- 2011-06-24 17:58:21 +02:00
Marco Martin
86d4283ff9 read only property: activeWindow 2011-06-19 23:08:15 +02:00
Marco Martin
3475f99f96 guard against crash 2011-06-19 19:07:55 +02:00
Marco Martin
f257efe7f0 fix item removal with one source per item 2011-06-16 19:29:58 +02:00
Aaron Seigo
05c405c17b allow dataEngine: as well as engine: -> more consistent with documentation 2011-06-15 14:18:42 +02:00
Marco Martin
fe8ccf1d71 guard mainItem, crash-- 2011-06-13 13:56:55 +02:00
Marco Martin
201a1d1d17 correct width qpropoerty 2011-06-13 13:46:07 +02:00
Dawit Alemayehu
5199d71e54 GIT_SILENT: Shut the compiler up about unused variables. 2011-06-08 13:53:46 -04:00
Marco Martin
42f8d04f6c a dialog has margins, take them into account 2011-06-08 17:53:55 +02:00
Marco Martin
9cd8721f61 support for centering 2011-06-08 13:02:48 +02:00
Marco Martin
e8b1374ff0 initialize member 2011-06-07 21:07:27 +02:00
Marco Martin
d3868a8b65 revert last commit
popups are done correctly now
(is necessary so show, set the flags and show again)
2011-06-07 19:12:04 +02:00
Marco Martin
230a15d475 correctly manage popup menus
similar fix in the taskbar coming
2011-06-07 18:11:30 +02:00
Marco Martin
f000f07b08 make the notify signals actually be emitted 2011-06-07 16:41:06 +02:00
Marco Martin
90ecc73536 return the correct mainItem() 2011-06-06 17:33:02 +02:00
Marco Martin
ccdb4cebdf sync dialog size when a declarativeitem changes size 2011-06-06 16:47:28 +02:00
Marco Martin
c77d815ec7 export servicejob in qml 2011-06-05 14:11:19 +02:00
Aaron Seigo
5759af35d1 duplicated from libplasma now 2011-06-03 22:04:36 +02:00
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
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
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