Commit Graph

313 Commits

Author SHA1 Message Date
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
Aaron J. Seigo
45ee70aa26 * startElementAnimation -> animateElement
* animate -> animateItem
* frames -> framesPerSecond
* use the curve shape as provided by the animator
* get rid of the use of QTimeLine
    * this cuts down on the number of objects and timer events dramatically in the case of multiple simultaneous animations
    * all animations now update on the same tick
    * simplifies the management code a -lot- though now i need to do a lot more of the math

TODO: implement interval updating based on the curve shape; otherwise, works pretty well =)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679871
2007-06-25 06:01:34 +00:00
Aaron J. Seigo
1ba292c158 * allow the animator to define the curve to use
* switch to Phase::CurveShape now that we aren't using QTimeLine

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679868
2007-06-25 05:57:47 +00:00
Aaron J. Seigo
877f17a33d make items movable even on startup
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679835
2007-06-25 01:37:27 +00:00
Aaron J. Seigo
8c8012c1ce framesPerSecond is more obvious
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679782
2007-06-24 21:36:00 +00:00
Aaron J. Seigo
a45a0c2e5f since we are now using a range of 0-1, there's no real need for *Completed methods, just pass in 1
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679744
2007-06-24 20:22:19 +00:00
Tim Beaulen
2e78ff6e5e From EBN:
Check for QString compares to ""... OOPS! 1 issue found!
 ./libs/plasma/widgets/lineedit.cpp: line#178 (1) 
 Do not compare a QString to "". Instead use the .isEmpty() method. For example, if(str == "") becomes if(str.isEmpty())

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679628
2007-06-24 12:50:58 +00:00
Aaron J. Seigo
12a1706eb0 i don't like const
and const don't like me
so i offer you
    this apology:

i promise to try
    to remember the friend
who prevents us from mucking
    things up in the end

all hail const!
my poetry sucks!
the end. <3

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679514
2007-06-24 06:35:49 +00:00
Script Kiddy
f25788e362 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679120
2007-06-23 05:27:00 +00:00
Thomas Georgiou
40d9432574 Revert HTML too when defaultText is removed.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679088
2007-06-22 23:36:38 +00:00
Aaron J. Seigo
68a305c511 ensure we don't crash when setting up applets without a scene
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679072
2007-06-22 22:38:17 +00:00
Aaron J. Seigo
ead42c31b4 make applet immutable actually have some effect (e.g. make it immovable)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679064
2007-06-22 22:08:04 +00:00
Aaron J. Seigo
3fd8500159 isImmutable -> immutable
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679063
2007-06-22 22:07:13 +00:00
Aaron J. Seigo
fbbab1b9b6 time to break everyone's plasmoids.
- add setDrawStandardBackground(bool) to get our common background
- make paint private and introduce paintInterface (with the same params) instead

this should make standardizing looks a bit easier and give us a way to paint the on-hover applet interface. we may need to do the same with boundingRect?

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679036
2007-06-22 20:28:42 +00:00
Script Kiddy
7d369275a7 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678709
2007-06-22 05:12:36 +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
Thomas Georgiou
35b86c492e Add defaultText graying.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678576
2007-06-21 19:18:08 +00:00
Aaron J. Seigo
5ff761af6f * move members to the private class
* style guide fixes
* simplify the code in some places

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678573
2007-06-21 18:47:04 +00:00
Aaron J. Seigo
bac0859be5 ok, now any right click on an applet gets the applet right click menu.
obviously this is fairly broken as now applets can't provide right click menus for anything. i have some thoughts on how to fix this but need to consider it more.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678566
2007-06-21 18:25:09 +00:00
Aaron J. Seigo
c2815e1f84 add the concept of immutable to applets
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678565
2007-06-21 18:24:05 +00:00
Aaron J. Seigo
5f8c6be988 make Applet (and lineedit) usable with qgraphics_item cast. we probably want to do this with all of our QGI subclasses.
i introduced a new enum in the Plasma namespace, ItemType, so we can keep track of these id's centrally.
however, the right click mechanism is rather broken in its implementation; we need a way to offer a centralized menu on appets no metter where they are clicked.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678562
2007-06-21 18:07:39 +00:00
Thomas Georgiou
c37fabf01c Add "defaultText" functionality: when the lineedit does not have focus
and it is empty, the can be "defaultText" that will be displayed.  See 
dict applet for example.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678514
2007-06-21 15:42:05 +00:00
Script Kiddy
6b04a70974 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678317
2007-06-21 05:01:20 +00:00
Aaron J. Seigo
d734b95419 apparently this is more efficient; thx frederikh
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678250
2007-06-20 23:33:26 +00:00
Aaron J. Seigo
4fcf10e6bc add a CamelCase include for Phase
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678209
2007-06-20 21:46:22 +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
Thomas Georgiou
32a450bb4d Fix coding style.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678168
2007-06-20 20:28:55 +00:00
Thomas Georgiou
c4ff3b9135 Add textChanged(QString&) signal.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678161
2007-06-20 20:12:38 +00:00
Thomas Georgiou
40c39333a1 Emit editingFinished() when enter/return is pressed.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678157
2007-06-20 19:49:31 +00:00
Thomas Georgiou
0ffa2dcc29 Emit the clicked() signal when clicked.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=678145
2007-06-20 19:13:30 +00:00
Aaron J. Seigo
fb8d5d353f * take an optional list of arguments to passs into applets
* create button applets not icon widgets on drop

honestly, not sure i like the qstringlist of argument approach, but that's what klibloader gives me

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677941
2007-06-20 08:11:59 +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
5e2b8cfd95 make applet a QGraphicsItem not a Group; as bibr explained to me on irc this evening a group is really, really a group ;) iow, the children lose all sense of identity. this causes all sorts of problems for building the sort of interfaces we are aiming for.
however, making them items makes it possible to drag children outside of their parents (c.f. the button applet) which causes another set of problems. i'll look into this tomorrow though. it's 01:00 and i was trying not to work on kde tonight.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677904
2007-06-20 06:45:08 +00:00
Aaron J. Seigo
ac1d10f987 so that people don't have to ask me how to turn on the anims =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677882
2007-06-20 06:06:47 +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
9fab210d65 whoops; this is the alpha channel not the pixmap itself =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677791
2007-06-19 22:06:05 +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
30f07bb62c add the concept of element animation. right now it only provides support for modifying a pixmap; positioning needs to be added, but this at least shows that it works(tm)
the idea is that you register an element animation and get back an id. you can associate a pixmap with that id and off you go. the item gets update() calls whenever the anim changes and you can fetch your precious little pixmap back with a call to animationResult.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677782
2007-06-19 21:56:03 +00:00
Aaron J. Seigo
f16c087846 * add element appear and disappear methods
* collapse all the frame rate methods into two (one for element anims and one for whole item anims) which take the Phase enumerations

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677781
2007-06-19 21:53:19 +00:00
Will Stephenson
4d6c186bac Warn that calling virtuals in a base constructor won't have the intended effect
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677452
2007-06-19 07:17:50 +00:00
Script Kiddy
9634f494c9 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676959
2007-06-18 05:27:57 +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
fab8953ccb * provide a Phase singleton
* use it in Corona

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676831
2007-06-17 20:05:43 +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
Aaron J. Seigo
a452da7dd2 * removeData method added to DataEngine which allows one to, well, remove data from a source
* passing a null or invalid QVariant to DataSource::setData now results in the removal of the entry if it exists

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676783
2007-06-17 17:38:54 +00:00
Pino Toscano
f39618e727 include cleanup
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676613
2007-06-17 09:28:55 +00:00