Aaron J. Seigo
2f5fa3f5fa
remove items that are removed from us from our layout, as well
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738068
2007-11-17 21:32:21 +00:00
Aaron J. Seigo
d9493e73ef
avoid unecessary updates, use d->size consistently so problem, if they arise, show up more consistently ;)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738038
2007-11-17 19:01:02 +00:00
Aaron J. Seigo
e5dca92fdf
always use the parent's geometry when available and stop keeping track of our own geometry in FreeLayout
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738036
2007-11-17 18:53:16 +00:00
Laurent Montel
287a5db49d
SVN_SILENT: not necessary to add endl;
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737177
2007-11-15 18:46:43 +00:00
Andre Duffeck
eabba50aa2
this may result in an endless loop and is not necessary
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737074
2007-11-15 12:54:37 +00:00
Andre Duffeck
3b6b25445d
Do not use space for text if there is none set
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=736901
2007-11-15 06:59:25 +00:00
Aaron J. Seigo
ce765ec610
better button mouse interaction; patch by Jason Stubbs
...
CCMAIL:jasonstubbs@gmail.com
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=736872
2007-11-15 03:35:12 +00:00
Andre Duffeck
0a24d0948f
we need to also update the parent layout if there is one
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735993
2007-11-13 08:34:37 +00:00
Aaron J. Seigo
f242476e72
items were getting added to the same layout more than once. now that the desktop actually knows what its layout is, this screws things up pretty badly. so fix that.
...
however, the panel is now screwed and will be until i write a proper layout for it. be warned: i really don't want to hear about the panel until then.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735280
2007-11-11 09:22:17 +00:00
Aaron J. Seigo
a61562ad95
don't change our state unless the mouse was release inside of the widget
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735135
2007-11-10 23:58:17 +00:00
Aaron J. Seigo
b0ddc4362d
KRUSH: we actually want to set the parent's layout in the Layout ctor, not the BoxLayout. handing out books on OOD seems like a good idea at this point.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735120
2007-11-10 23:16:32 +00:00
Aaron J. Seigo
4bff9b6912
KRUSH: free layout needs a proper sizeHint
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735119
2007-11-10 23:13:42 +00:00
Alexis Ménard
6553519076
fix comment
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734976
2007-11-10 16:06:22 +00:00
Alexis Ménard
1294c4e8a4
Add method to set where we want to put the icon.Usefull for applet
...
Lock/Logout
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734943
2007-11-10 15:16:33 +00:00
Alexis Ménard
ae2d05c3c3
add updadeGeometry for methods that need to update the geometry of the
...
widget
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734745
2007-11-09 19:28:28 +00:00
Jon de Andres Frias
65dadf4f3f
Add 'or later' to the license for the progressbar widget in plasmalibs.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734236
2007-11-08 09:52:18 +00:00
Aaron J. Seigo
b9b99b4fd2
updated -> dataUpdated to make it really clear what's going on. there are too many update* methods, esp in applets where there is update() and updated()... a painful change, but it will only get worse if it happens any later.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=733314
2007-11-06 07:20:08 +00:00
Leo Franchi
d83f52e2db
add support for fixed-size columns. default behavious remains to average item widths.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=733293
2007-11-06 02:46:01 +00:00
Javier Goday
4ed028322c
Change in the progressbar widget, only paint the exposed area
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732765
2007-11-04 18:20:56 +00:00
Aaron J. Seigo
bba7a3d39c
invalidate the managing layout on geometry changes, which is what i expected it to do in the first place. calling setGeometry and then updateGeometry is just damaged
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732530
2007-11-04 05:36:39 +00:00
Aaron J. Seigo
0e7580b89a
make this ctor like the rest of the widgets
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732529
2007-11-04 05:36:10 +00:00
Aaron J. Seigo
ccd0753a96
* fix heightForWidth
...
* provide a maximum width setting
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732528
2007-11-04 05:34:10 +00:00
Aaron J. Seigo
ffcf6bc16b
let's not hold on to our own parent pointer; just too easy to have it fall out of date.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=731160
2007-10-30 21:00:01 +00:00
Aaron J. Seigo
fab534cf22
only click on left click
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=731159
2007-10-30 20:59:12 +00:00
Aaron J. Seigo
c10ddbe353
the item is already children of us at this point, just make sure to not double add it.
...
i tried to find a way to reliably react to child add events instead of having to call our own method for this, but due to construction order and how itemChanged events are handled, i couldn't find such a thing. =/
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=731137
2007-10-30 20:25:12 +00:00
Aaron J. Seigo
5b10495cf4
get rid of reparent() as that is completely superceded by addChild, and catch when children items no longer belong to us.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730877
2007-10-29 23:10:45 +00:00
Laurent Montel
36877e4e94
Fix mem leak
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729963
2007-10-27 14:27:25 +00:00
Aaron J. Seigo
260a040477
* avoid a couple unecessary vars/method calls
...
* don't try and paint on a null pixmap
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729679
2007-10-26 16:35:58 +00:00
Aaron J. Seigo
96accbd236
now that it works properly, we probably don't need to be told about it all the time ;)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729455
2007-10-26 02:31:44 +00:00
Aaron J. Seigo
49914e5a49
a rather horrific hack, passing the mouse event around, but it's the only way i can find to *reliably* get the event passed around which we must have to locate where on screen to pop things up at
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729453
2007-10-26 02:15:04 +00:00
Aaron J. Seigo
576798dd52
set panels properly in setScreen. this will need to be augmented with screen edge stuff eventually as well, but for now this might work better on multiple screens.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729421
2007-10-25 23:09:02 +00:00
Aaron J. Seigo
49874ae140
temporary fix for the beta: don't make items unmovable when added to a layout as that is screwing with MouseReleaseEvents. this means panels items are, once again, freely draggable (which is wrong) but on the upside you can open the menu again
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729202
2007-10-25 09:12:15 +00:00
Aaron J. Seigo
b448d9bb90
when an item is added to the layout, give it a chance to react. in the case of Widget, we're going to set the movable state of the QGraphicsItem. the result: items move, or don't, based on whether or not they are in a layout. finally, you can't just move shit around in the panel.
...
it's pretty hackish since we have to special case FreeLayout but hey, since when were layouts in plasma ever sane?
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728764
2007-10-24 06:54:26 +00:00
Aaron J. Seigo
97ddf36df4
* emit pressed(true) when pressed
...
* excuse the debuggin, but i need to figure out why events are getting eaten (again) by the icon class
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728763
2007-10-24 06:52:45 +00:00
Stephan Binner
245e63418e
revert "cleanup" breakage of r696698
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728171
2007-10-22 16:16:30 +00:00
Hoàng Đức Hiếu
b14fb9605e
Add font property to Plasma::Label; this also helps getting more accurate sizeHint than using Arial 12pt when the default font is Arial 10pt
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=726342
2007-10-17 15:11:29 +00:00
Andre Duffeck
ed1430faa4
be less noisy
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=726279
2007-10-17 12:40:06 +00:00
Hoàng Đức Hiếu
b038a10d13
sizeHint: take alignment and Qt::TextWordWrap flags into account, as done in paintWidget
...
the QRectF is a reasonably large rect so that it doesn't interfere with result size
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=725859
2007-10-16 11:54:37 +00:00
Andre Duffeck
53e8f95ea6
Fix duration and fadeIn/fadeOut animations
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=725400
2007-10-15 09:41:39 +00:00
Andre Duffeck
9126f8263f
less debug output
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=725391
2007-10-15 08:58:08 +00:00
Andre Duffeck
54211a2f54
Fix size when put in layouts.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=725390
2007-10-15 08:54:06 +00:00
Ivan Čukić
93187d0a90
Argument verification
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=725047
2007-10-14 10:57:14 +00:00
İsmail Dönmez
3ffa8ee720
SVN_SILENT --pedantic
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724810
2007-10-13 14:33:14 +00:00
Ivan Čukić
04f5730e1e
NodeLayout:
...
* initial implementation of sizeHint()
* support for automatic sizing (on one or two dimensions)
* simplified node definition
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724794
2007-10-13 13:29:21 +00:00
Ivan Čukić
f22a71a22d
Changing the licensing to GNU Library/Lesser GPL
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724418
2007-10-12 08:45:12 +00:00
Aaron J. Seigo
22de66fdc0
* fix order of constraints init so that geometry is done before screen affinity
...
* only adjust the size of the containment to the screen size if it is a DesktopContainMent
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724225
2007-10-11 19:16:01 +00:00
Ivan Čukić
c8281cbd05
Code formating
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724124
2007-10-11 13:50:54 +00:00
Aaron J. Seigo
0f66f80fe2
allow widgets to change their size even if there isn't a layout (because that was just silly)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723915
2007-10-11 03:30:50 +00:00
Ivan Čukić
3d0bdf2e42
* fixed bug: misplacing center widget when there is no right or bottom one.
...
* feature: if there is a fixed size for one of the borders, it *will* have that size
even if there is no widget for that border.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723796
2007-10-10 18:27:57 +00:00
Ivan Čukić
80bc0a1d00
Margin support (spacing was added earlier)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723756
2007-10-10 16:34:24 +00:00
Petri Damstén
b5fa2a0936
Calculate available size before perItemSize
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723274
2007-10-09 07:05:37 +00:00
Petri Damstén
82b947252e
Remove debugs
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723007
2007-10-08 12:49:22 +00:00
Thomas Georgiou
fab3611a21
Transparency works now!! Aaron, remember to fill QPixmaps with
...
Qt::transparent.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=722710
2007-10-07 23:32:56 +00:00
Petri Damstén
1fce16d307
Add color, font, alignment support for labels.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=722537
2007-10-07 14:52:17 +00:00
Petri Damstén
940f7e00fb
Adds toggle support to Plasma::PushButton.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=721138
2007-10-04 17:36:21 +00:00
Rafael Fernández López
5e321b63f5
Update my email address
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=720339
2007-10-03 00:44:18 +00:00
Rafael Fernández López
0f7e4e52ab
Code adaptation because of changes on libraries related to revision 719630
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=719642
2007-10-01 15:09:41 +00:00
Aaron J. Seigo
55969fd88b
- make setGeometry virtual so that Applet::setGeometry actually does what Petri Damsten was trying for
...
- erase the rect on the pixmap that is exposed before painting again; this prevents painting over and over and over the pixmap (resulting in darker and darker painting when using transparency)
- some minor whitespace changes made whilst debugging
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=719387
2007-10-01 05:06:51 +00:00
Petri Damstén
61fa701fc0
- Add setSize (needed by Applet)
...
- Delete white space from line ends
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=718077
2007-09-28 05:45:10 +00:00
Petri Damstén
c4f4f16048
- Use margin at startPos
...
- Delete white space from line ends
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=718076
2007-09-28 05:43:15 +00:00
Aaron J. Seigo
8f4ed43ae0
whoops, forgot this other half of the commit
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=718011
2007-09-27 22:11:46 +00:00
Aaron J. Seigo
c982fdde3b
fix crash; you can't suppose that you get a Widget in ::paint
...
CCMAIL:tokoe@kde.org
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=718009
2007-09-27 22:05:57 +00:00
Matthew Woehlke
407f13404a
remove superfluous header
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=717530
2007-09-27 03:52:50 +00:00
Matías Costa
f4efdfa1f0
Fix infinite loop
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=717393
2007-09-26 20:15:42 +00:00
Alex Merry
30b2cd64fc
apidocs fix, and use a better macro name for the include guard
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=717224
2007-09-26 10:37:08 +00:00
Petri Damstén
ff7fb9e515
Plasma::Meter from playground to libplasma
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=716909
2007-09-25 15:26:03 +00:00
Petri Damstén
1897eab31b
Plasma::Meter from playground to libplasma
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=716906
2007-09-25 15:24:39 +00:00
Alex Merry
d29805caef
Make drag-n-drop applets work again.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=716003
2007-09-23 18:03:37 +00:00
Laurent Montel
4e4a77901e
Not necessary
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=715616
2007-09-22 15:45:42 +00:00
Tobias Koenig
227dd0842d
warning--
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714913
2007-09-20 21:44:12 +00:00
Ivan Čukić
cc4da76575
Added spacing() support for BorderLayout
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714483
2007-09-19 17:31:53 +00:00
Aaron J. Seigo
7fefcf98c7
fix this indentation nightmare (tabs, many levels deep)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714178
2007-09-18 21:30:30 +00:00
Aaron J. Seigo
fc53b1a7f0
SVN_SILENT suppose we don't need dead code already ;)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714172
2007-09-18 21:20:06 +00:00
Aaron J. Seigo
fe13964089
add a contextMenuEvent to Widget so that we get proper context menu propagation by default
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714171
2007-09-18 21:19:10 +00:00
Laurent Montel
950d256e5d
Fix mem leak
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=713138
2007-09-16 13:18:04 +00:00
Ivan Čukić
63164d2cc0
BorderLayout initial import
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=713071
2007-09-16 09:08:08 +00:00
Robert Knight
7b607e92c9
Fix applets jumping around when they resize. Avoid calling setGeometry() on Applets in a FreeLayout that have not changed their size hint since the last update.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712674
2007-09-15 04:16:11 +00:00
Aaron J. Seigo
329d912f47
SVN_SILENT: more licensing updates ... all done with this now i think =)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712581
2007-09-14 20:17:11 +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
Jon de Andres Frias
e726cd04c6
Added to the Plasma widgets library the ProgressBar class. It's included a small program test for the progressbar.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712543
2007-09-14 18:19:42 +00:00
Aaron J. Seigo
0fc83b6e76
prevent crashing on exit; layout must not be deleted before the applets which are managed by it.
...
this is a brittleness in the layout system that really needs to be addressed (and i added a comment and some debug output about this in LayoutItem)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712164
2007-09-13 19:47:14 +00:00
Aaron J. Seigo
d20c9a010f
growing tired of being asked about how to get at the font used in widgets, here's a cute little accessor that provides the answer for now and gives us a way to support font settings in the future much in the way qwidget itself does.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712158
2007-09-13 19:33:44 +00:00
Aaron J. Seigo
e2b9f9df31
SVN_SILENT: style fixes
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712122
2007-09-13 17:04:04 +00:00
Aaron J. Seigo
7d533e3472
- missing license header
...
- fix white space issues
- delete the dptr
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=711899
2007-09-13 05:40:37 +00:00
Aaron J. Seigo
926d039802
SVN_SILENT: why bother with a coding style.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=711898
2007-09-13 05:34:11 +00:00
Andreas Aardal Hanssen
1cf7d7c0f6
Enable DeviceCoordinateCacheMode by default. Overload update() to give
...
it invalidate-like behavior, and remove invalidate(). Revert last change
to analogclock, cached behavior is now enabled for all applets. If you
want to disable caching, call setCachePaintMode(NoCacheMode) from your
applet's constructor.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=710764
2007-09-10 20:44:24 +00:00
Robert Knight
6828d212bb
Add FreeLayout layout, which resizes its children to their sizeHint() whenever it is invalidated. Useful for desktop-like workspaces so that widgets can be agnostic of whether they are being used in a panel or a 'constraint free' area.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=710761
2007-09-10 20:38:59 +00:00
Andreas Aardal Hanssen
55e02ca70a
Add CachePaintMode, as a temporary local back-port of
...
QGraphicsItem::CacheMode, which will appear in 4.4. I've chosen names
that aren't really good, but they're not misleading, and they don't
clash with the API in 4.4.
My first KDE submit :-DDD.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=710738
2007-09-10 19:06:58 +00:00
Robert Knight
37b4ea6334
managingLayout() is a better way to get the layout managing the widget's geometry than parent()->layout() which doesn't work for top-level Widget instances.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=709899
2007-09-08 14:01:03 +00:00
Robert Knight
3dc0a4795f
Correct the layout invalidation logic. As with Qt, when a layout is invalidated it finds its top-level layout and causes that to be updated. Calling Widget::updageGeometry() causes the parent widget's layout to be invalidated.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=709495
2007-09-07 16:15:46 +00:00
Pino Toscano
cec28bebac
use QtModule/QFoo for public headers
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=708026
2007-09-03 17:16:40 +00:00
Robert Knight
15fbaba2ac
Move duplicated animation starting code into Layout::startAnimation() which layout subclasses can call at the end of their setGeometry() implementation to start the layout animator's timer.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707803
2007-09-03 00:52:29 +00:00
Robert Knight
ecd23d6e67
Always restart timeline from 0 when setGeometry() is called. QTimeLine::start() is a no-op if already running.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707800
2007-09-03 00:41:57 +00:00
Richard J. Moore
4663b82555
- More Q_PROPERTY additions
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707687
2007-09-02 17:49:34 +00:00
Richard J. Moore
b09f73ac86
- Add support for opacity property of Widget
...
- Add Q_PROPERTIES and missing Q_OBJECT to signalplotter
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707684
2007-09-02 17:41:05 +00:00
Pino Toscano
c27291a3fc
slots -> Q_SLOTS
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707337
2007-09-01 15:02:09 +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
Robert Knight
04375c4b09
Replace 'INFINITY' with more correct numeric_limits<qreal>::infinity()
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706983
2007-08-31 17:46:12 +00:00
Robert Knight
536d3749c1
Fix crash when layout argument is null.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706975
2007-08-31 17:24:03 +00:00
Robert Knight
bb25f62e55
Remove Widget::invalidate(), that is a feature which is part of the layouts. Better attempt at Widget::updateGeometry() which widget subclasses can call when their size hint or min/max size changes. Ultimately should behave like the QWidget methods of the same name. Make Widget return Qt::Horizontal | Qt::Vertical in its default implementation of expandingDirections()
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706939
2007-08-31 15:32:10 +00:00
Robert Knight
f7861353ba
Add a method to change the parent of a layout. Make isEmpty() non-virtual, and instead always equal to (count()==0). Add invalidate() method which is used like the method of the same name in QLayout to invalidate cached information in the layout.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706937
2007-08-31 15:27:32 +00:00
Robert Knight
af8659fa22
Update the parent of a LayoutItem when calling setLayout
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706935
2007-08-31 15:23:09 +00:00
Robert Knight
d1aba23cd2
Return 0 for the expanding directions of an icon. At present icons have a fixed size.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706934
2007-08-31 15:21:30 +00:00
Robert Knight
37b993d8ff
Add auto-deletion functionality into LayoutAnimator which can be used to delete the item when its removal animation finishes. Emit a signal when the state of an item in the animator changes. Avoid repeatedly setting an item's geometry with the NoEffect effect. Added a DeadState into which items transition after their removal animation finishes or if they have not been added to the animator. When inserting an item with a fade in effect set the opacity to 0 if the item is a widget.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706933
2007-08-31 15:19:02 +00:00
Percy Leonhardt
615eae37ba
Merged HBoxLayout and VBoxLayout into BoxLayout to avoid duplicate code.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706645
2007-08-30 23:44:08 +00:00
Thomas Georgiou
44c1f66714
Make other widgets paint when zoomed out. (These 3 commits are just
...
commenting things out. The code will need to be removed once we are
sure we do not need it.)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=705868
2007-08-28 19:12:13 +00:00
Thomas Georgiou
d65ab52dd6
Lineedits should display when zoomed out.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=705867
2007-08-28 19:02:38 +00:00
Robert Knight
773612ac44
Default implementations of minimumSize() , maximumSize() in Layout and correct implementations of minimumSize() , maximumSize() in Widget to match equivalents in QLayout , QWidget.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=703547
2007-08-22 20:13:24 +00:00
Thiago Macieira
eca6dc90c0
Remove use of k_funcinfo
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=702583
2007-08-20 21:33:48 +00:00
Matt Broadstone
4fbc948d56
That'll teach me not to test the build before committing :)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701238
2007-08-17 18:57:28 +00:00
Matt Broadstone
1fb3bef9bb
Fix build
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701237
2007-08-17 18:55:55 +00:00
Robert Knight
93bf2933e4
When updating a Widget's geometry, pass the geometry in the Widget's co-ordinates to layout()->setGeometry() rather than the parent widget's co-ordinates. Call updateGeometry() inside setGeometry().
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701207
2007-08-17 16:28:54 +00:00
Matt Broadstone
19efbb9108
Respect min/max sizeHints when setting geometry
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701205
2007-08-17 16:04:49 +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
Percy Leonhardt
c86bf6caea
Example for nested layouts
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701173
2007-08-17 14:36:48 +00:00
Robert Knight
62b2605d0d
Add methods to set/get a layout's animator. The various layout implementations need small changes to make use of an animator if set. Add an update() method to Layout to trigger re-layouting.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701059
2007-08-17 07:02:24 +00:00
Percy Leonhardt
f1855dd6b2
Fixed wrong calculation of width
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=700938
2007-08-16 20:37:29 +00:00
Robert Knight
2475cfed09
Add LayoutAnimator class. This provides a way to animate changes in layouts. eg. Fading in new items, fading out removed items, moving and resizing items smoothly as the layout changes. The layouts themselves need some small changes to make use of this class, and the client code must create the animator, attach it to the layout and choose the animation effects to use.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=700844
2007-08-16 15:56:00 +00:00
Gabriel Anderson
0231bb68fe
fixed dpointer
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=700536
2007-08-15 19:53:46 +00:00
Robert Knight
ad83b23dc4
Reimplement sizeHint() in Plasma::Icon, otherwise an invalid size hint gets returned.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=699874
2007-08-14 06:59:36 +00:00
Gabriel Anderson
6fd370952d
Fixed krazy issue #8 (Non-const d-pointer)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=699687
2007-08-13 21:51:23 +00:00
Percy Leonhardt
9268590942
Added a signalplotter to plasma.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=699576
2007-08-13 15:15:19 +00:00
Robert Knight
482f9824ba
Optimization. Avoid calling prepareGeometryChange() if the new and old geometry have the same size. Added a graphicsItem() method to LayoutItem which returns the associated graphics item (if any). Needed for effects during layouting.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=699494
2007-08-13 09:01:00 +00:00
Robert Knight
ca39faf71a
Fix the push button size hint. Make PushButton::boundingRect() side-effect free.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=699467
2007-08-13 06:32:31 +00:00
Robert Knight
1f99ac776a
Fix LineEdit::geometry(). Returned ectangle should be in parent coordinates.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=699255
2007-08-12 13:13:06 +00:00
Aaron J. Seigo
b764db9438
use a KIcon here to get the proper loading
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=698791
2007-08-11 03:30:54 +00:00
Aaron J. Seigo
b80d526229
use QIcon in the public API
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=698752
2007-08-10 22:24:49 +00:00
Matias Valdenegro Toro
777d23d06b
Change start layout position topLeft point of the Geometry.
...
CCMAIL: panel-devel@kde.org
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=698656
2007-08-10 16:04:26 +00:00
Matias Valdenegro Toro
0923b77b89
Fix the starting position of VBoxLayout.
...
CCMAIL: lfranchi@gmail.com
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=698045
2007-08-08 20:37:59 +00:00
Aaron J. Seigo
b4a001e6e1
SVN_SILENT: yeah, (C) is meaningless
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=697686
2007-08-08 12:13:05 +00:00
Matt Broadstone
21394705f1
Provide a valid size before being painted
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=697570
2007-08-08 05:29:50 +00:00
Pino Toscano
99f22093f9
include fixup
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=697353
2007-08-07 14:58:00 +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
Matt Broadstone
26569e231c
Add layout test
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696814
2007-08-05 23:05:57 +00:00
Matt Broadstone
6a6c508036
Fix Q_PROPERTY/Q_INVOKABLE's, readd icon accessor
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696719
2007-08-05 18:03:26 +00:00
Matt Broadstone
8a4601f9b0
Remove old unneeded debug calls
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696700
2007-08-05 17:13:07 +00:00
Matt Broadstone
388d1ca167
Cleaned up Plasma::Icon a whole lot, added Fredrik's text drawing code from KFileItemDelegate so we actually draw text correctly.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696698
2007-08-05 17:11:46 +00:00
Matt Broadstone
f33c5ab58b
'fixes' layouts for pushbuttons
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696696
2007-08-05 17:03:18 +00:00
Aaron J. Seigo
5d05c8ac7e
more comparison fixes
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696656
2007-08-05 14:24:24 +00:00
Aaron J. Seigo
b1d1f1959f
comparing doubles for equality with == isn't great
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696628
2007-08-05 12:58:40 +00:00
Richard J. Moore
51e50f0c80
- Tidy up script interface
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696595
2007-08-05 11:05:47 +00:00
Matt Broadstone
2a2348b0e4
_much_ more complete version of the PushButton widget, also fully documented
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696541
2007-08-05 08:10:17 +00:00
Aaron J. Seigo
ecad916f0a
set the pos of the lineedit. really, this should become a Widget with a
...
QGrahpicsTextItem as a child item
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696366
2007-08-04 14:59:21 +00:00
Richard J. Moore
e4f1d2f617
- Prepare for scripting
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696337
2007-08-04 13:14:57 +00:00
Richard J. Moore
e7512b5b77
- Prepare for scripting
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696309
2007-08-04 12:37:59 +00:00
Matt Broadstone
23fe05689a
documented Plasma::CheckBox, removed methods now implemented in Plasma::Widget for this widget.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696084
2007-08-03 19:17:30 +00:00
Matt Broadstone
a53be5affe
Proper documentation, added setSize
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696079
2007-08-03 18:56:14 +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
510c39002a
fixes the clicked signal.. thanks to Anrdreas, the MAN!
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695685
2007-08-02 17:15:21 +00:00
Aaron J. Seigo
ac918ad4bf
kdebug fixes
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695587
2007-08-02 13:12:59 +00:00