Commit Graph

134 Commits

Author SHA1 Message Date
Marco Martin
9a0dcafb8d Substitutes the background svg with a Plasma::roundedRectangle()
this makes the radius of the rounded borders of the background of the icon to look right

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=756763
2008-01-03 18:38:11 +00:00
Marco Martin
bef6adb720 added
bool invertedLayout() const;
returns if the layout of the icons should appear inverted or not

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755891
2008-01-02 10:39:29 +00:00
Marco Martin
1ca970c48e added the method
void invertLayout(bool invert);
it inverts the layout of the icons if the orientation is horizontal,
normally we get icon on the left with left-to-right languages,
this inverts the behaviour

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755562
2008-01-01 20:58:36 +00:00
Aaron J. Seigo
d5c9ab0cf6 style fix and remove the extra assignment.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755558
2008-01-01 20:53:46 +00:00
Aaron J. Seigo
627cb88ccf all members belong in the dptr.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755512
2008-01-01 19:21:33 +00:00
Marco Martin
a87dcb6b19 draws iconSvg correctly
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=754836
2007-12-30 21:00:38 +00:00
Marco Martin
1743b3d9ef support for text beside icons depending of the layout direction, can be set with
void setOrientation(Qt::Orientation orientation);

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753744
2007-12-28 11:29:56 +00:00
Christopher Blauvelt
06295ace02 Piggyback on mart's patch. Add the ability to set the number of lines in the display, fixes
Icon::Private::elidedText so the display won't be truncated to one line if the whole text doesn't 
fit, and fixes some crashes.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753049
2007-12-26 13:44:57 +00:00
Marco Martin
27ce118c91 removed the following methods:
calculateSize()
Private::displaySizeHint(const QStyleOptionGraphicsItem *option)
setIconSize(QSizeF)

added layoutIcons(), similar to calculateSize() but it resizes the icon instead of the widget around the icon

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753033
2007-12-26 12:37:54 +00:00
Marco Martin
5952e90351 White icon text on a semitransparent black background
BUG: 154108

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=752098
2007-12-23 15:13:44 +00:00
Marco Martin
1f84d4c290 removing an experimental piece of junk in drawTextItems committed for mistake...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=752044
2007-12-23 12:07:31 +00:00
Marco Martin
43574b0c3e Added the method QSizeF sizeFromIconSize(const qreal iconWidth) that returns an optimal size of the widget given a desidered size of the icon
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=752018
2007-12-23 10:51:00 +00:00
Shawn Starr
8d9aa19d83 Allow rendering of a specific svg element id. You can still render them all if you don't specify a element name but now you can also use a specific element. Doesn't handle resizing.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751533
2007-12-22 05:31:57 +00:00
Marco Martin
792e8dfba8 icon actions works again (still not drawn correctly)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751445
2007-12-21 21:35:07 +00:00
Aaron J. Seigo
0946029d25 very basic svg icon painting
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750938
2007-12-20 16:28:47 +00:00
Shawn Starr
853710deca call setFile() when changing the svg image for Icon
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750670
2007-12-19 20:58:45 +00:00
Shawn Starr
60769c4c6f Add convenience method setSvg() to set the Icon's Svg file instead of the default widget/iconbutton svg. Useful for custom svg button behavour
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750654
2007-12-19 20:32:31 +00:00
Marco Martin
d7f413742a Now icons can be resized
BUG: 152695

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750084
2007-12-18 16:56:34 +00:00
Jason Stubbs
4fb7cbc2d6 Fix handling of click/hover events and add methods to allow callers to
make the icon appear clicked. Getting it in now so that it doesn't
block other work. I believe all discussed issues have been fixed with
this patch, but I'll stay around to fix any issues that remain. ;)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=749016
2007-12-16 10:09:07 +00:00
Jason Stubbs
5db83950c4 Use Widget::view() to find the view rather than emmiting
QGraphicsSceneMouseEvent from Plasma::Icon for only that purpose

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=746549
2007-12-09 13:32:30 +00:00
Aaron J. Seigo
9d936d1d8f still messed up, but less useless confusing code in there now =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=743202
2007-11-30 01:06:27 +00:00
Aaron J. Seigo
6124183a72 move the blur.cpp into the #define as we don't even really use it right now
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738753
2007-11-19 15:40:55 +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
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
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
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
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
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
Matthew Woehlke
407f13404a remove superfluous header
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=717530
2007-09-27 03:52:50 +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
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
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
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
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
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
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
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
Matt Broadstone
4823fc0237 More refactoring in preparation for text layout code
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694895
2007-08-01 01:25:01 +00:00
Matt Broadstone
48700bf813 Refactor these to Private, makes paint more readable and gets us ready for new text layout code
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694891
2007-08-01 00:52:26 +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
Aaron J. Seigo
7634beebf3 a bit of extra debug output here plus a mod to the icon demo so i can show bibr in a couple days the interesting ways in which event handling is broken
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694478
2007-07-30 20:29:10 +00:00
Matt Broadstone
400e9788a5 Added documentation for Plasm::Icon, also added accessors for infoText-> allow for meta text to be associated with the icon
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=693711
2007-07-28 19:27:56 +00:00
Aaron J. Seigo
24f6601a48 * set the state on mouse down for the whole icon
* don't go all clicky on the icon when a hover button claims the click

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=693519
2007-07-28 08:22:44 +00:00
Aaron J. Seigo
dd7b8b306b ebn fixes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=691079
2007-07-22 22:01:10 +00:00
Aaron J. Seigo
fc0938d3bb * don't show the test action on every icon; we know it works ;)
* set the rects on the other actions properly
* shift the rects around when the icon resizes

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690431
2007-07-21 04:19:00 +00:00
Aaron J. Seigo
01ab982d54 * coding style guides are not a cute suggestion but a promise to be fulfilled.
* take QAction*s, which belong to whatever throws them at us
* don't polute the public API with unecessary classes
* avoid subclassing Private classes

i'm still not overly happy with this class as it stands right now.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690430
2007-07-21 04:07:41 +00:00
Matt Broadstone
55be0c7a1c icons draw text now, moved corner items to qaction based objects, and support 4 corners. still a bit messy.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690398
2007-07-20 22:30:33 +00:00
Matt Broadstone
6ea5d0771b Icon now draws text, also lots of api love
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690149
2007-07-20 06:28:51 +00:00
Matt Broadstone
9dcd34a521 Fix icon drawing
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690092
2007-07-20 02:19:42 +00:00
Zack Rusin
0e274e2017 We've made SourceOver the default compositionMode in QPainter.
This in turn makes the default:
QPainter::fillRect(QRect(...), Qt::transparent); 
a no-op. The commit makes the fillrect actually do what, I bet
it was supposed to be doing. (but i ain't much of a gambler since
i'm not sure what it's supposed to be doin in the first place. at
least now it's doing something "weird" faster)


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=680260
2007-06-25 19:20:54 +00:00
Aaron J. Seigo
49f9cd42f8 adapt to new Phase API
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679872
2007-06-25 06:02:33 +00:00
Fredrik Höglund
55b7bc3219 Use pix.fill(Qt::transparent) to initialize the button pixmap to fully transparent.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678647
2007-06-21 21:54:42 +00:00
André Wöbbeking
7aaec35dad constify url()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678187
2007-06-20 21:08:30 +00:00
Aaron J. Seigo
2d0a8aa271 add a getter for the url property
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677940
2007-06-20 08:10:38 +00:00
Aaron J. Seigo
f29bc49788 comment out the debug we know is working so i can read debug from stuff that isn't
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677928
2007-06-20 07:39:04 +00:00
Aaron J. Seigo
65f98b0246 don't make the icon movable by default.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677927
2007-06-20 07:36:48 +00:00
Aaron J. Seigo
a3b156c7d8 SVN_SILENT: some white space fixes i didn't want to mix in with the functional changes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677816
2007-06-19 23:32:04 +00:00
Aaron J. Seigo
b2da6b36ac always stop the anim, but only if we have one going on
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677807
2007-06-19 22:48:42 +00:00
Aaron J. Seigo
059a64583d phased.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677783
2007-06-19 21:56:40 +00:00
Aaron J. Seigo
229c60eae9 erm. yeah. that's what i *really* meant.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676882
2007-06-17 21:24:50 +00:00
Aaron J. Seigo
60a844195e * make mini buttons "click" on mouse release like a proper button
* don't click when moving (either the icon or the mini buttons)
* only show the buttons on hovered states, allowing for proper button/hover/pressed painting
* try and avoid unecessary if/else's and other codedamage
* get rid of some dead code

now it's about ready to be phased =)


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676842
2007-06-17 20:56:03 +00:00
Aaron J. Seigo
1fa0feaa48 * use EaseIn for the icon button show
* show the button(s) in .2s rather than the very slow feeling .5s
* don't leak the timeline
* don't connect to the timeline signal more than once
* comment in code that is ifdef'd out anyways
* don't set the svg element for fg and bg unless it exists
* remove some dead code

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676786
2007-06-17 17:49:49 +00:00
Riccardo Iaconelli
7a70eac7fe Much nicer icons.
Implemented the concept for icons from David Vignoni (screencast coming...).
Context menu now shows "Plasma".

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676455
2007-06-16 22:35:31 +00:00
Aaron J. Seigo
c62b683dbd for the pussies who don't have srcdir==buildir for qt ;)
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672777
2007-06-08 05:39:34 +00:00
Aaron J. Seigo
df0e5f74a0 * build
* only blur on hover to mask some of the artifacts

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672649
2007-06-07 19:10:48 +00:00
Aaron J. Seigo
6193f93785 proof of concept for composited effects by toying with the backing store
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672646
2007-06-07 19:07:45 +00:00
Aaron J. Seigo
a80c5349e4 * let's not bother with the blur here quite yet; let's do it Right(tm) later in an image effects lib, and when we can actually operate on the backing store
* if there is not -pressed element, still paint something proper

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672363
2007-06-06 20:48:06 +00:00
Riccardo Iaconelli
a043e502f3 * Saner resizing of the icon when pressed
* Nicer SVG, also fixed the corners, now are pixel perfect
* Prepared the code for the upcoming blur of the wallpaper....

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672328
2007-06-06 19:45:00 +00:00
Aaron J. Seigo
a2b7f5fc43 shrink and center on click; not that it matters since this will move into Phase for great beauty and flexibility ... but this should llook a little nicer in the screencasts...
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672120
2007-06-06 05:19:44 +00:00
Aaron J. Seigo
83eed9ccd4 * build
* use KUrl::List

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672119
2007-06-06 05:12:51 +00:00
Siraj Razick
013fae0a0d slight shrik effect on the pixmap
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=671927
2007-06-05 20:44:28 +00:00
Aaron J. Seigo
11651586c0 center the icons properly and cut down on the amount of duplicated information we keep in here
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=671917
2007-06-05 19:48:14 +00:00
Aaron J. Seigo
c2f7734144 icon; doesn't actually work the way i expect it to. need to talk to bibr about some things.
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=671576
2007-06-05 02:54:48 +00:00
Matt Williams
f93b9f7396 EBN Krazy header fixes
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669864
2007-05-30 16:47:36 +00:00
Aaron J. Seigo
77307ba1dd icon buttons generally work now. huzzah. you can theme them with iconbutton.svg with the following elements, all of which are optional:
- background
 - background-hover
 - background-pressed
 - foreground
 - foregound-hover
 - foreground-pressed

what each does is left as an exercise for the reader ;)

svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669620
2007-05-29 20:37:21 +00:00
Aaron J. Seigo
3f2e92b6ae add the start of an icon button. the stupid number of svg's needs to be wrapped into two with svg elements for them, geometry isn't managed right (e.g. we ignore text width) etc.. but the basics exist. should be usable by hacking's end tomorrow, and then we can play with using them to pop menus and expanders. i'll get to Phase yet ;)
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669394
2007-05-29 07:59:50 +00:00