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
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
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
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
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
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
* 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
* move the contents of setGeometry to itemChange and resizeEvent for greater reliability
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=815043
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
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
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
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
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
* 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
*removed Containment::Private::destroyApplet in favour of just calling Applet::destroy() directly.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805666
* 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
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
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
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
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
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
init() and setFailedToLaunch are now protected
containment and corona are friends of applet
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=798585
+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
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
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
* 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
* 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
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
* introduce QRectF contentRect() const method so applets can easily get the content rect
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=745244
* 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
* 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
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
* 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
- 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
- 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
- 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
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
* 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
* introduce Applet::destroy which will perform cleanups, like deleting
config files, etc..
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696586
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
Aaron: your turn now to discover the 'Mimetypes' key problem.
CCMAIL: aseigo@kde.org
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694676