Commit Graph

314 Commits

Author SHA1 Message Date
Chani Armitage
4f776b73c1 documentation++
warning people not to assume Applet::view() returns a view, because null pointer crashes make me sad :(


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=872326
2008-10-16 21:40:21 +00:00
Allen Winter
e88e2faa63 first batch of small coding style fixes.
these were found while testing the Krazy style checker, which I'm adapting
for the kdelibs style.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=870051
2008-10-11 16:19:04 +00:00
Aaron J. Seigo
06e71be8c3 we no longer need to check for spontaneity; move the trick up to Applet as well to avoid repaints where possible
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=868200
2008-10-05 17:48:44 +00:00
Aaron J. Seigo
3365bc1d94 make it clear why you SHOULDN'T be using this method
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=866863
2008-10-02 06:08:31 +00:00
Aaron J. Seigo
56a9ad52ce make it harder for people to fall into the temptation of nesting containments
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=863619
2008-09-22 17:50:23 +00:00
Aaron J. Seigo
6e2506d5cc * use d->extender instead of extender() to prevent accidently creating extenders
* make PopupApplet a friend (PopupAppletPrivate already is)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862089
2008-09-18 02:47:25 +00:00
Loic Marteau
b6cb43398d - add a "popupPosition" support to PopupApplet so applets can use it to deal with
fitt law optimisation
- also save the new size of the popup (Plasma::Dialog) in the config file when user 
resize it
- use popupPosition facilities in kickoff and remove the resize stuff on it since it 
can be now directly dealed in Plasma::Dialog


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=860323
2008-09-12 17:16:58 +00:00
Petri Damstén
11317e0d7e add configChanged to Applet and AppletScript
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=860299
2008-09-12 15:21:58 +00:00
Rob Scheepmaker
cb4d610219 Move ExtenderApplet to libplasma. This doesn't work just yet, but aseigo will take a look at
it, so it will soon. ;)


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=860007
2008-09-11 19:26:05 +00:00
Aaron J. Seigo
d89ad4cba0 context API adjustments
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=857207
2008-09-05 00:22:42 +00:00
Alex Merry
e293d7d785 Specify includes in apidocs, so we get
#include <Plasma/Foo>
at the top of the apidocs pages.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=852289
2008-08-25 17:47:48 +00:00
Aaron J. Seigo
46ef63168e allow applets to query for their context, update the context via a constraint (we're running out of them!)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=848820
2008-08-18 14:04:30 +00:00
Petri Damstén
0183db7d30 Base for Plasma::Wallpaper plugins.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=842590
2008-08-05 15:27:48 +00:00
Aaron J. Seigo
577a64f563 extender is not a Plasma Widget (it doesn't follow the API pattern, isn't a button/menu/etc, isn't meant to be used as a general widget in a random layout...)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=841164
2008-08-02 17:46:32 +00:00
Rob Scheepmaker
a6293d363f Extenders enter trunk! The implementation still has some rough edges and fixmes, but the api
is in quite nice shape and basides a couple of bugs, it basically works. So what are you 
still doing reading this? Port your favourite applet to extenders today! ;)


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=840978
2008-08-02 11:48:56 +00:00
Marco Martin
41b82ff620 s patch makes the concept of maximum and minimum size of the panel
actually meaningful:
the idea is that an applet can change its own preferred size and ask its
containment if it can fullfill its wish on the size
so the panel tries to resize itself as it can in its maximum and minimum
size constraints.
at the moment only the taskbar uses this, also the systray could use it
(and in general all expanding applets)
it use a new signal in Plasma::Applet, called
sizeHintChanged(Qt::SizeHint)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=838364
2008-07-27 16:20:56 +00:00
Dirk Mueller
02a008da35 introduce plugin versioning for plasma and ensure
that only applets with a matching major.minor version
are loaded. needs porting to plugins other than applets.

CCMAIL: aseigo@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833550
2008-07-17 01:11:25 +00:00
Alexis Ménard
24d494fd5a Install event filter is better than reimplement sceneEvent.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833521
2008-07-16 23:11:51 +00:00
Alexis Ménard
0628f7dcb3 New ToolTip manager that create tool tips easier than before
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833272
2008-07-16 15:17:44 +00:00
Aaron J. Seigo
9ccc9336a5 * prevent removing active containments (brute force mechanism: just ignore the request totally)
* select the correct containment for removal when zoomed out (will have isses on multi-screen; see FIXME)
* move containment destruction logic out of Corona; it really doesn't belong there
* remove the hack to not set focus on a containment when clicked as that doesn't seem to reliably trigger it for me here and it doesn't address the issue of a new containment still messing things up, so we really ought to have a generic solution instead of a slightly ugly hack

BUG:id=165670

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828906
2008-07-06 22:43:53 +00:00
Marijn Kruisselbrink
21b148b963 change all ClassName::Private classes to ClassNamePrivate, and adjust friends accordingly; this makes plasma compilable with gcc < 4.2
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=826893
2008-07-01 18:56:43 +00:00
Aaron J. Seigo
77214a87b3 make this public for the script writers
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=825545
2008-06-28 16:02:08 +00:00
Aaron J. Seigo
350bb8c48e AppletScript::shape()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=824153
2008-06-25 00:33:46 +00:00
Aaron J. Seigo
2fc9fca715 make setConfigurationRequired match setFailedToLaunch by adding a reason string. this allows more than just a mysterious "Configure" button. thanks to Chani for spotting the API irregularity.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=823770
2008-06-24 03:17:38 +00:00
Aaron J. Seigo
0a89bbc5ea BIC change, but necessary. i found a very valid case for this being virtual (sadly)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=823337
2008-06-23 04:26:13 +00:00
Aaron J. Seigo
a69ce2c265 apidox clarifications
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=820958
2008-06-15 21:47:25 +00:00
Aaron J. Seigo
4878d04cc3 allow setting and getting of global shortcuts
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=815050
2008-06-01 02:53:50 +00:00
Aaron J. Seigo
40e4b3e88e * global keyboard shortcuts for applets
* move the contents of setGeometry to itemChange and resizeEvent for greater reliability

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=815043
2008-06-01 02:13:53 +00:00
Marco Martin
5f3a757bae new BackgroundHint:
TranslucentBackground, now used by folder view.
when an applet has TranslucentBackground set, it loads
"widgets/tranlucentbackground" as its own background
when that svg does not exists in theh them it falls back to
"widgets/background" instead of translucentbackground of the default
theme

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=813283
2008-05-27 10:57:09 +00:00
Kevin Ottens
8edc0b399f Remove the "ghost view" from public API. It's completely internal and
used nowhere.

"ervin, fighting feature creep in APIs since 1980."

(BTW, at this rate I'm less and less convinced that it'd be wise to not
have a second round of API review post 4.1)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812172
2008-05-24 18:33:40 +00:00
Aaron J. Seigo
58f283c58c needs to be public so custom coronas can get at it as needed
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811413
2008-05-22 22:59:35 +00:00
Aaron J. Seigo
26f7e83a53 give proper control over saving/restoring to the containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811211
2008-05-22 15:53:48 +00:00
Chani Armitage
ccde7ded20 replace Panel::remove() with Containment::destroy()
now I can remove some of the ten desktop containments I accumulated :)
oh, and the code is cleaner too, yay!

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810129
2008-05-20 04:02:36 +00:00
Chani Armitage
1d8eb91e89 keyboard shortcuts.
the defaults are kinda lame right now, but I'm planning to do a lot more with this.
applet focus and the shorcut hooks work properly, however.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=808610
2008-05-17 03:39:24 +00:00
Aaron J. Seigo
40cb0b8dea whoops, wrong location. *gah*
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806700
2008-05-12 05:17:45 +00:00
Aaron J. Seigo
7750ba9273 make the applet ctor public again.
why? because older g++s are teh suck, and mac os is stuck with it. it doesn't get that inner classes also get the friend status of the outer class. blargl

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806698
2008-05-12 04:57:38 +00:00
Rob Scheepmaker
df22556806 Improved drag&drop: now the toplevel window appears correctly when zoomed out.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806544
2008-05-11 17:21:55 +00:00
Rob Scheepmaker
1172ef79e9 Start of improved applet drag & drop. What works now is:
* dragging an applet creates a top level window so the applet won't appear behind the panel 
when dragging, as is the case now.
* dragging leaves a semi transparent version of the applet at the original location, so it's
clear to the user where the applet came from and where it will go when the drag is cancelled.

There are still some open issues, I'm working on those...


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806484
2008-05-11 13:56:35 +00:00
Dan Meltzer
f57cc1c623 Lotsa little ebn fixes.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805672
2008-05-09 05:32:15 +00:00
Chani Armitage
61ae3df3fc *Applet::destroy() now handles everything needed for removing an applet prettily and safely.
*removed Containment::Private::destroyApplet in favour of just calling Applet::destroy() directly.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805666
2008-05-09 04:43:21 +00:00
Aaron J. Seigo
450c826c69 timerId usage
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805632
2008-05-08 23:30:56 +00:00
Chani Armitage
27e34b6579 correct a comment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803703
2008-05-03 23:37:55 +00:00
Aaron J. Seigo
a329771ad5 symmetry
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803323
2008-05-02 15:12:52 +00:00
Aaron J. Seigo
207968b217 resetConfigurationObject()->pimpl
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802892
2008-05-01 03:24:20 +00:00
Aaron J. Seigo
43e6bac986 Plasma::AspectRatioMode, just like Qt::AspectRatioMode. the setter/getter in Applet even used Mode.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802866
2008-04-30 22:13:27 +00:00
Davide Bettio
0916889c58 API REVIEW:
* watchForMouseMove() -> registerAsDragHandle() / unregisterDragHandle()
* Added isRegisteredAsDragHandle() (I'm not really sure If it's a good idea to add this method).

ping me if you find better names for registerAsDragHandle() / unregisterDragHandle().

CCMAIL: panel-devel@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802774
2008-04-30 15:04:49 +00:00
Marco Martin
43066e49ce API review:
remainSquare(), aspectRatioMode() and their setters are merged in
aspectRatioMode() + setAspectRatioMode(Plasma::AspectRatio)
Plasma::AspectRatio has IgnoreAspectRatio, KeepAspectRatio and Square

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802561
2008-04-29 20:31:18 +00:00
Aaron J. Seigo
a75e4604c0 allow applet script to dig around with Applet
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802291
2008-04-29 03:05:31 +00:00
Aaron J. Seigo
9234ac63e9 this method should also be protected
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802289
2008-04-29 02:35:56 +00:00
Aaron J. Seigo
daf3d7a4a2 API REVIEW: needsConfiguring() => configurationRequired
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802288
2008-04-29 02:34:21 +00:00
Aaron J. Seigo
0402391d17 we don't need our own shape() here anymore; it really hardly worked at the best of times and was we move to window decos it'll become irrelevant anyhow
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802287
2008-04-29 02:30:23 +00:00
Aaron J. Seigo
1847d60a1d API REVIEW: launchActivated -> releaseVisualFocus; more generic and a bit more obvious as to its purpose
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802286
2008-04-29 02:28:35 +00:00
Davide Bettio
b37d43eafd API REVIEW: showConfigurationInterface() -> nonvirtual
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802232
2008-04-28 21:23:27 +00:00
Davide Bettio
78ef3e466c API REVIEW: createConfigurationInterface() -> virtual protected, not slot
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802169
2008-04-28 18:32:34 +00:00
Marco Martin
f06d25a00c API reviews:
globalName(), instanceName()->pimpl

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802135
2008-04-28 16:22:01 +00:00
Marco Martin
9bee311b96 API reviews:
ThemeChanged()->Q_PRIVATE_SLOT

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802130
2008-04-28 15:55:13 +00:00
Marco Martin
48be92bdab API reviews:
checkImmutability()->Q_PRIVATE_SLOT
added a q-pointer into Applet needed for this and themeChanged the other
Q_PRIVATE_SLOT that will be added

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802124
2008-04-28 15:41:18 +00:00
Aaron J. Seigo
df1ba079e8 go back is isContainment. ActAs is just ugly ugly. i don't think anyone really gets confused over isContainment (e.g. confusing it with IsA ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801792
2008-04-27 19:05:06 +00:00
Davide Bettio
1474ed7cbc API REVIEW: color() --> die
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801697
2008-04-27 13:37:53 +00:00
Davide Bettio
ff16201431 API REVIEW: constraintsUpdated() -> constraintsEvent()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801656
2008-04-27 11:04:43 +00:00
Davide Bettio
5bc429daa9 API REVIEW: topLeft() -> dies
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801647
2008-04-27 10:26:42 +00:00
Davide Bettio
41d2aa43e4 watchForFocus() dies
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801641
2008-04-27 09:53:49 +00:00
Davide Bettio
624f8d0fb3 API REVIEW: needsFocus()->dies
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801640
2008-04-27 09:29:25 +00:00
Davide Bettio
55881aa054 API REVIEW: requestFocus() dies
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801637
2008-04-27 09:18:44 +00:00
Marco Martin
694c822bb0 API reviews:
flushUpdatedConstraints()->flushPendingCostraintEvents()

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801443
2008-04-26 17:13:59 +00:00
Marco Martin
6d8a1752a7 API review:
isContainment(), setIsContainment() -> actAsContainment(),
setActAsContainment()
 set is protected

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801425
2008-04-26 15:52:48 +00:00
Marco Martin
62aa54b4e7 oops reverting an incomplete api change for now :(
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801420
2008-04-26 15:33:10 +00:00
Marco Martin
26732125cc removed unused Private::applyBackgroundHints
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801416
2008-04-26 15:27:17 +00:00
Marco Martin
cda992682a API reviews:
constructors protected

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801349
2008-04-26 12:06:18 +00:00
Marco Martin
0c283924be API reviews:
killed drawStandardBackground() and shadowShown()
now the two properties are merged in backgroundHints() and
setBackgroundHints() using the combination of BackgroundHints flags

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801282
2008-04-26 09:13:57 +00:00
Alexis Ménard
13f4fae5f3 +contentSizeHint -> died
+contextActions -> contextualActions 

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801150
2008-04-25 19:55:24 +00:00
Aaron J. Seigo
a3ad7dca00 launch activation sanity: added it back to Corona since it is PUI relevant (and not just desktop specific), move the signal to Applet and chain them so that Applet -> Containment -> Corona
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801102
2008-04-25 17:21:24 +00:00
Marco Martin
4bb368919d SILENT: Tiny style fix
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800767
2008-04-24 20:14:47 +00:00
Marco Martin
7d057a2bc2 API review:
isImmutable(), setIsImmutable() and isKioskImmutable() of applet and
corona are merged in one property so they becamed
immutability() and setImmutability() using the new type
ImmutabilityType defined in plasma.h as:
NotImmutable: normal behaviour
UserImmutable: the user locked the desktop, can unlock it
SystemImmutable: the system locked the desktop and the user can't unlock
it

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800724
2008-04-24 18:24:11 +00:00
Marco Martin
6a02406401 API review:
isKioskImmutable is protected now.
also added a TODO an why it can't be removed for now

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800630
2008-04-24 14:53:41 +00:00
Marco Martin
710be86ffd pi changes:
raise() is now a slot, a new lower() slot was added

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800280
2008-04-23 20:27:44 +00:00
Marco Martin
1e77632048 api changes:
init() and setFailedToLaunch are now protected
containment and corona are friends of applet

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=798585
2008-04-18 16:05:20 +00:00
Dmitry Suzdalev
c2b28413dd /me done another round of simple stuff renaming :)
(corresponding wiki items <s>-ed out)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797824
2008-04-16 21:15:38 +00:00
Aaron J. Seigo
4381fdfafa they beginning of keyboard focus possibilities; hardly works at the moment, but this is the groundwork
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797091
2008-04-14 21:50:41 +00:00
Aaron J. Seigo
17bba1cffc SVN_SILENT: tabs are not cool. tell your friends.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797074
2008-04-14 21:07:25 +00:00
Alexis Ménard
d5dd4e16ac Ammmaaziiing grace!!
Widget class is dead..

still in the repo for tooltip code

CCMAIL : aseigo@kde.org


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796973
2008-04-14 16:02:23 +00:00
Alexis Ménard
d91b8a94d4 remove useless function
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796939
2008-04-14 15:15:26 +00:00
Alexis Ménard
1b7a9a14e0 +bye bye paintwidget method
+remove tooltip that will be replaced by the tooltip manager
+port some used stuff in applet class

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796924
2008-04-14 14:50:02 +00:00
Alexis Ménard
1b15d951a9 API clean : bye bye opacity, wich is bas implemented in all cases
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796900
2008-04-14 14:09:13 +00:00
Alexis Ménard
548d250d59 say hello again to the panel, and fix some performance issue
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796806
2008-04-14 10:48:32 +00:00
Alexis Ménard
4467261c95 Merge woc branch to trunk, say good bye to old plasma, there is a lot of stuff to port
applets, 
please update to another revision to use the version that works

green flag from aaron


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796368
2008-04-13 13:23:39 +00:00
Aaron J. Seigo
f5b6d38cac this needs to be virtual as well
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796306
2008-04-13 08:24:28 +00:00
Andre Duffeck
ef0c0375c3 Add an opacity attribute. GUI portion coming later
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=793581
2008-04-04 13:16:55 +00:00
Aaron J. Seigo
2558d5c305 introduce createConfigurationInterface, it's now the prefered mechanism. showConfigurationInterface remains for the convenience of Applet itself, and remains virtual so as not to break existing applets.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=792927
2008-04-02 15:37:17 +00:00
Aaron J. Seigo
1833641e3b make setNeedsConfiguring behave nicely
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=792371
2008-03-31 22:06:35 +00:00
Andre Duffeck
57479a0a11 apidox fixes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=791058
2008-03-28 07:42:25 +00:00
Laurent Montel
9d5aa89497 Fix typo
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=787915
2008-03-20 07:47:05 +00:00
Sebastian Kügler
9d6ce15f54 typos--
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781856
2008-03-03 19:27:52 +00:00
Pino Toscano
896bae2516 - public Qt includes as QModule/QFoo
- public KDE CamcelCase includes as KDE/KFoo

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781163
2008-03-02 02:18:10 +00:00
Dan Meltzer
7f624f85d9 Revert one large git mess
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780657
2008-02-29 17:50:57 +00:00
Dan Meltzer
a081559257 Commit initial progress of work to port to qt4.4
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780654
2008-02-29 17:43:31 +00:00
Aaron J. Seigo
bed3c1d927 * share the package structures by using a single shared ptr
* use the script's contentSizeHint if we are a script

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=779417
2008-02-26 04:08:51 +00:00
Aaron J. Seigo
2f78de3142 * make it possible for applets to define what package structure they use
* update to api tweakages

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=779404
2008-02-26 01:48:52 +00:00
Marco Martin
b1a362b67f transplant of sceneEventFilter and mouseMoveEvent from the icon applet to the applet class, this will cause a lot less duplication.
if you want to make a widget draggable around just call the new function
  void watchForMouseMove(QGraphicsItem * watched, bool watch)

also, some style fixes.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=777705
2008-02-21 10:26:40 +00:00
Aaron J. Seigo
cf89bd58d1 make it possible to get at the package structures using Theme::packageStructure() and Applet::packageStructure() without having to export the package definitions from the library itself.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=775272
2008-02-15 10:35:00 +00:00
Aaron J. Seigo
1f5e98edec * allow restoring from applet itself (something i've wanted to to do for a while, have it all in corona isn't a good idea)
* restore lock status
* save/restore zorder
* allow "raising" and applet (increase zorder above all others)
* some layout fixes for next monday's big layout fix patch

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=774337
2008-02-13 01:52:02 +00:00
Andre Duffeck
70b12916b2 react to changes of Plasma::Theme
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=773942
2008-02-12 07:33:07 +00:00
Aaron J. Seigo
a438b53373 die, setSize, die, and all the problems you represent. silly duplicated, not-like-qwidget API anyways. ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=773505
2008-02-11 08:24:09 +00:00
Aaron J. Seigo
e83f329de0 the proper fix for stupid compilers *sigh* setSize(int, int) isn't virtual in Widget, but that doesn't matter in this case at all.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=773493
2008-02-11 07:56:53 +00:00
Aaron J. Seigo
eed0410c56 * make setSize virtual as well since it sets d->size internally, so Applet needs to intercept that call
* remove some dead code in widgets.cpp

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=773475
2008-02-11 06:11:13 +00:00
Aaron J. Seigo
f2674c9a51 * setRemainSquare(bool) to allow applets to say "yes, keep my width == height, thank you"
* use AppletScript

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=765975
2008-01-25 00:08:25 +00:00
Aaron J. Seigo
467eadedda api fixes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=762849
2008-01-18 00:09:33 +00:00
Aaron J. Seigo
16dab9574f * move the header bits around a bit for a more logical ordering (e.g. all static methods together, all reimp'd methods that are really imp details together at the bottom, etc)
* implement a generic shape() method. this is experimental, so will be interesting to see how it goes. it does show we need a good shape hint in the applet background svg =)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=760187
2008-01-12 06:02:29 +00:00
Aaron J. Seigo
311f2380ce per applet aspect ratio guidance with setAspectRatioMode
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=759497
2008-01-10 19:02:05 +00:00
Aaron J. Seigo
81909190eb after porting applets, it occurred to me that this naming is nicer.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755617
2008-01-01 22:54:33 +00:00
Aaron J. Seigo
e12dbeb000 provide a way for applets to signal that they'd like their config saved out to disk, please.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755616
2008-01-01 22:44:56 +00:00
Richard J. Moore
94170b9e65 Fix breakage
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751220
2007-12-21 12:34:40 +00:00
Riccardo Iaconelli
e4665a938a Implement Applet::shouldConserveResources(), a method to help plasmoid developers to know whether they should conserve resources.
Peer reviewed by Chani and Richmoore.

CCMAIL:aseigo@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751216
2007-12-21 12:27:29 +00:00
Aaron J. Seigo
65af194560 convenience methods for content size access
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750257
2007-12-19 00:45:29 +00:00
Jason Stubbs
1dc5cc58fc Move the "call the parent's contextMenuEvent()" hack from Applet into
Widget so that applets with embedded widgets also get the containment's
context menu.

BUG: 152698

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=749078
2007-12-16 13:21:16 +00:00
Sebastian Kügler
792274b1da SVN_SILENT --typo
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=745297
2007-12-05 22:31:23 +00:00
Aaron J. Seigo
5c257fce5a * update constraints on immutability changes
* introduce QRectF contentRect() const method so applets can easily get the content rect

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=745244
2007-12-05 20:24:40 +00:00
Aaron J. Seigo
e2249860fd differentiate between runtime and kiosk immutability
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=744675
2007-12-04 04:15:21 +00:00
Aaron Eisenberg
f7a0308982 Added the ability to lock desktop widgets and assigned icons to all the desktop context menu actions.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=744659
2007-12-04 02:17:21 +00:00
Aaron J. Seigo
5b65d5c54c * load packages properly
* handle scriptegines properly
* add a setContentSize so applets can use that and not get screwed by the borders

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=743089
2007-11-29 20:38:13 +00:00
Aaron J. Seigo
f73b97780a min/max setters and getters for content size
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742754
2007-11-28 21:08:12 +00:00
Aaron J. Seigo
165a2ce9f1 * cache the config object, which means:
* we have to be able to reset it when, e.g. removing the applet or moving it to another, so introduce resetConfigurationObject for internal use
* make it possible to get the containment for an applet by outsiders (e.g. other containments)
* don't access the config object until after we've been assigned to a scene

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742098
2007-11-27 06:01:06 +00:00
Aaron J. Seigo
ed8c50e03f completely change how we save and load containments and panels.
it all happens from one file now using nested groups. this has two major effects:

 - one file to rule them all for any given corona; this makes things even nicer for use in other apps, btw.
 - the ability to easily save, send/share and restore corona configuration layouts; something i've wanted from the start


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=741158
2007-11-24 23:38:37 +00:00
Aaron J. Seigo
71b89ebb5f don't show categories with no visible items in them
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738621
2007-11-19 09:46:52 +00:00
Aaron J. Seigo
bfcc1e31e6 * get rid of the paintHover, that's deprecated by kevin's hover stuff in the coronal world
* don't paint the interface of containments being shown on views that don't want a background

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737026
2007-11-15 09:39:46 +00:00
Aaron J. Seigo
cc34fc3365 signal for geometry updates. used right now for xrandr updates, but may also be useful for layouts and such things ...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734485
2007-11-09 00:42:18 +00:00
Aaron J. Seigo
25fdb2adf5 drawing the background by default requires us setting that up on applet start for the case of odd applets that don't ever change their size or do any other geometry upsetting things. plasmoidviewer weather was the testcase for this one.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734138
2007-11-08 07:53:56 +00:00
Aaron J. Seigo
da0e4e39e2 * performance: allow delayed setting of constraints so we get one call per set[Screen|Position..etc] set of calls
* save the geometry properly by just using geometry() now that we have that =)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729442
2007-10-26 01:04:56 +00:00
Frerich Raabe
6180c8c433 - Fixed a typo
- showConfigurationInterface needs to be (as the API documentation points
  out correctly) a slot, otherwise it won't work. So put it into the slots
  section.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=727149
2007-10-19 21:43:27 +00:00
Aaron J. Seigo
6cd4da671d provide a default param for updateConstraints so existing code has fewer changes to be done
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=719839
2007-10-01 23:30:47 +00:00
Aaron J. Seigo
b51cc728fd actually pass around what constraints are being updated. this allows preventing of unecessary processing (for one) and also can avoid recursion where someone calls a constraints setter from inside constraintsUpdated.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=719831
2007-10-01 23:24:38 +00:00
Petri Damstén
79a32822ac - Override setGeometry so we can give correct rect to layout
- Delete white space from line ends

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=718078
2007-09-28 05:46:37 +00:00
Aaron J. Seigo
9fa4ea3ec3 - remove deprecated createInstance call
- as Containment is going to remain an Applet, we can put the context menu hack in Applet instead which is nicer on the widgets anyways. also make it a bit less of a hack...

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=717489
2007-09-26 23:01:57 +00:00
Aaron J. Seigo
2c63daad12 - add a way to get at the Containment
- fix some apidox
- add a method for state saving, but for the main applet class info as well as subclasses (plasmoids, e.g.)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714174
2007-09-18 21:22:45 +00:00
Aaron J. Seigo
e0f831373c SVN_SILENT: add "or later" clause. cleared with copyright holders, except for rich moore's ui loader which i need to ask him for permission for first.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712549
2007-09-14 19:06:18 +00:00
Aaron J. Seigo
7d3327c884 add an init() method that will be called only after the applet is completely set up for those applets that care; also allows us to do delayed init in the case of expensive set up
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712119
2007-09-13 17:00:57 +00:00
Aaron J. Seigo
b42db6a2ea should be using paintWidget, not paint
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=710733
2007-09-10 18:50:36 +00:00
Robert Knight
a29ae57a7d This breaks the existing Plasma applet API, see the contentSize()
comments below.

* New Flow Layout.  This provides simple icon view-esque layout of items.
  Useful for icons for documents , applications or other tasks on the desktop
  for example.  Supports non-equally sized items.

  Works well when used with the LayoutAnimator class to animate insertions
  and removals.

* Re-wrote BoxLayout and removed old HBoxLayout,VBoxLayout classes which had
  a lot of code duplication.  BoxLayout class now takes a direction argument
  in the constructor, ala. QBoxLayout.  New BoxLayout class actually takes
  minimumSize() , maximumSize() of items into account.  The Qt layout code
  for box and grid layouts is surprisingly sophisticated, so the results
  from BoxLayout probably will not be as good in certain situations but
  it should do for the panel.  New BoxLayout also has support for LayoutAnimator

* Fix Plasma::HBoxLayout and Plasma::VBoxLayout to use margin() 
  rather than spacing() for the distance from the top and left
  margins respectively.

* Fix Plasma::Applet::contentSize() to return the actual content size
  rather than a size hint.  Added a new method contentSizeHint() which
  applets use to provide a hint about suitable content size.  

  Existing implementations of contentSize() in applets need to be renamed
  to contentSizeHint().  The arguments and return type are the same as before.

* Install the LayoutAnimator header so that applets can use it

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707275
2007-09-01 12:34:22 +00:00
Aaron J. Seigo
559647f5cc make Applet use the newer plugin loading mechanisms
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=705972
2007-08-29 02:33:22 +00:00
Robert Knight
93070ce1fd Implement the same sizeHint() logic in Plasma::Widget as QWidget. It returns the layout's sizeHint() if there is a layout or an invalid QSizeF otherwise. Implement sizeHint() in Plasma::Applet. It returns the same as contentSize() if there is no border or the content size hint plus the border size otherwise. Many of the applets need changes for setGeometry() to work properly on them. Fix various warnings.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701192
2007-08-17 15:05:01 +00:00
Aaron J. Seigo
db4a7ebe61 copyright cleanups:
* Copyright (C) -> Copyright
* add "or later" clause to files that i have the sole copyright on
* add current year (2007) to my copyrights where it was missing

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696946
2007-08-06 11:20:02 +00:00
Aaron J. Seigo
d10dba893e * Misc => Miscellaneous
* provide acccess to the applet id and plugin name

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696629
2007-08-05 13:01:09 +00:00
Richard J. Moore
8d7e06a09d - Steps towards dataengine access from scripts
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696620
2007-08-05 12:39:13 +00:00
Aaron J. Seigo
0eafb46fc4 * save applet config on exit
* introduce Applet::destroy which will perform cleanups, like deleting
  config files, etc..

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696586
2007-08-05 09:39:32 +00:00
Aaron J. Seigo
21c804908e * add an updateConstraints to be used to do things globally that need to
prefix or suffix constraintsUpdated, e.g. manage the shadow
* add experimental support for dynamic shadow, based on a patch by
  zrusin; still issues to be addressed but it gives us the start of a
  layer-based means to do effects

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696561
2007-08-05 08:41:55 +00:00
Matt Broadstone
be3c212374 Make all plasma/widgets inherit Plasma::Widget now. Holding off on committing change for icon as I have a massive patch for the new text drawing
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696028
2007-08-03 16:00:10 +00:00
Aaron J. Seigo
8fce372a7c allow applets to register that they need to be configured before use
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696023
2007-08-03 15:23:56 +00:00
Riccardo Iaconelli
075c1315ec Const QStrings
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694679
2007-07-31 10:56:05 +00:00
Riccardo Iaconelli
5aaccf0489 The applets now can associate with (one or more) certain mimetypes, and be called when that mime is dragged onto the desktop. Very rudimental for the moment, we should pass the name of the file to the applet. Added some copyrights I missed in the past.
Aaron: your turn now to discover the 'Mimetypes' key problem.
CCMAIL: aseigo@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694676
2007-07-31 10:52:05 +00:00
Thomas Georgiou
999cd6ed57 Cache standard applet background.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694542
2007-07-31 00:21:08 +00:00