Andrew Lake
9b312459be
renderers hash table keys created with path but erased with themePath.
...
Corrects memory leak on theme change.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=867965
2008-10-05 04:47:25 +00:00
Marco Martin
94b4c8cfa7
pixmap() works also with containsMultipleImages
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=863958
2008-09-23 15:52:45 +00:00
Aaron J. Seigo
e99497b67f
* Svg::pixmap
...
* ++apidox
* clean up SvgPrivate::findInCache a bit
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862695
2008-09-19 16:41:39 +00:00
Sebastian Kügler
482c6a9f01
warnings--
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862051
2008-09-17 22:38:05 +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
Marco Martin
b79b52624e
when no element id is specified paint the svg with its own size
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=822139
2008-06-19 10:15:09 +00:00
Andrew Lake
e729dcd481
Fix broken theme change from theme svgs that do not use "hint-apply-colors" to theme svgs
...
that do.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=816504
2008-06-04 02:51:31 +00:00
Marco Martin
94517b3f87
a little more deterministic behaviour: Svg::elementSize(elementId)
...
returns 0,0 for not existing elements: this fixes also some of the panel
funny behaviour
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803651
2008-05-03 17:30:37 +00:00
Jeff Mitchell
ee70465d89
Safety...if createRenderer was never called this will still be zero
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803406
2008-05-02 19:22:07 +00:00
Robert Knight
ebdd9d4f99
Fix uninitialized variable.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801838
2008-04-27 21:49:09 +00:00
Aaron J. Seigo
0187b08069
one more place we might want to trigger a repaint
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800766
2008-04-24 20:12:24 +00:00
Aaron J. Seigo
d28a4c277a
consolidate color and font methods into one method for each with a role enumeration
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800334
2008-04-23 22:36:00 +00:00
Anne-Marie Mahfouf
970e72245c
API review
...
more SIGNAL changed() -> themeChanged()
thanks Alexis for your vigilance!
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800244
2008-04-23 18:35:03 +00:00
Marco Martin
d0ba4e77ec
Api change:
...
Plasma::Svg(imagePath, parent) -> Plasma::Svg(parent) and
Plasma::PanelSvg(imagePath, parent) -> Plasma::PanelSvg(parent)
updated as needed every class that was using Svg or PanelSvg
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800143
2008-04-23 13:07:41 +00:00
Anne-Marie Mahfouf
36bc2c4e97
Plasma::Theme::self() -> Plasma::Theme::defaultTheme() as planned during the sprint
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=799919
2008-04-22 21:10:14 +00:00
Aaron J. Seigo
868a4107a3
move getting the size for the subelement first before creating the cache id.
...
also remove all the SVG_CACHE_BUGFIX. it wasn't getting used and was making the code a lot uglier.
if someone wants to attempt to have the cache store transform-neutral renderings, they can have another crack it and do it so that ifdef's aren't necessary.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=799600
2008-04-21 23:00:58 +00:00
Aaron J. Seigo
92a2bb701e
avoid painting empty pixmaps.
...
BUG:161122
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=799536
2008-04-21 19:32:26 +00:00
Marco Martin
419277a044
finished the Plasma::Svg api change
...
ContentType now is simply a bool and related methods now are
containsMultipleImages() and setContainsMultipleImages()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797998
2008-04-17 09:09:48 +00:00
Marco Martin
f522c38eeb
file() and setFile() -> imagePath() and setImagePath()
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797772
2008-04-16 20:48:53 +00:00
Marco Martin
b08e8ae782
themeChanged() and colorsChanged() now are Q_PRIVATE_SLOTS
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797745
2008-04-16 20:30:18 +00:00
Marco Martin
d07a60c581
Rename SvnPanel into PanelSvg and update accordingly who is using that,
...
as discussed in api reviews
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797663
2008-04-16 17:23:58 +00:00
Dmitry Suzdalev
b237019d4f
Plasma API adjustements:
...
Theme::colors() => Theme::colorScheme()
Theme::image() => Theme::imagePath()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797634
2008-04-16 15:53:16 +00:00
Marco Martin
4a5df9c733
begin of api changes, as in
...
http://techbase.kde.org/index.php?title=Projects/Plasma/Tokamak1#Plasma::Svg
elementRect() returns a QRectF
elementExisits() became hasElement()
matrixForElement is only private
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797610
2008-04-16 14:31:43 +00:00
Davide Bettio
4e6e78cb04
Now everything works but I don't really know the why.
...
Please, *check* this code.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796915
2008-04-14 14:41:41 +00:00
Davide Bettio
90999c00d6
Fixed findInCache bug. Now findInCache is faster, thanks to bibr.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796500
2008-04-13 17:27:02 +00:00
Andrew Lake
e8772b73d8
Change colorize from 0.9 to 1.0. No reason it should have been 0.9 in the
...
first place. Plus it fixes slight differences in intesity levels between
system color-aware plasma themes and the currently selected style.
It was a very minor change so I just went ahead and committed. I don't
anticipate any objections, but if there are please revert with my apologies.
CCMAIL: panel-devel@kde.org
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=789757
2008-03-25 05:50:13 +00:00
Aaron J. Seigo
ac2b7ba7a5
colourization support for svgs. patch by Andrew Lake.
...
CCMAIL:jamboarder@yahoo.com
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=777967
2008-02-22 01:05:11 +00:00
Aaron J. Seigo
2e07ca5f64
remove all the cached pixmaps when the cache is cleared.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=776939
2008-02-19 04:28:17 +00:00
Aaron J. Seigo
ce3e58d2b4
be a lot more careful with how we react to theme changes. makes it innexpensive enough to call a bit more randomly (e.g. when compositing changes)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=771873
2008-02-07 04:33:57 +00:00
Aaron J. Seigo
20c5ddf8e7
return the right path for file()
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=771450
2008-02-06 01:26:18 +00:00
Aaron J. Seigo
ddadcc6765
SVN_SILENT: whitespace fix; committing to get it off my hd
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=764592
2008-01-22 04:34:49 +00:00
Aaron J. Seigo
ee32d3c996
remove the use of 1209 explicitly now that i have Winter's Magic Formula for default debug space. makes backporting way easier; sorry for the noise of the earlier commit. suppose i should read planetkde.org more closely ;)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758498
2008-01-08 01:25:09 +00:00
Aaron J. Seigo
12ef6308cb
use the plasma debug area (1209); i considered wrapping this in Plasma::debug() but that seems overkill ;)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758415
2008-01-07 20:50:31 +00:00
Aaron J. Seigo
b03a2588d2
make setFile actually work
...
CCMAIL:notmart@gmail.com
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758400
2008-01-07 20:20:02 +00:00
Shawn Starr
5e77ba9e70
Add some convenience methods file(), to get the svg image path and setFile, to set the image path
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750651
2007-12-19 20:29:22 +00:00
Aaron J. Seigo
997f9e75a8
allow moving on any part of the applet surface; it seems our widgets still work just fine with this which is pretty cool; in this case i like the event model for QGV =)
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738454
2007-11-18 23:03:57 +00:00
Aaron J. Seigo
b7ef853123
stub in elementAtPoint; it doesn't actually do anything right now pending changes to QSvgRenderer, but the code is all there ready to go
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738069
2007-11-17 21:34:28 +00:00
Aaron J. Seigo
3817a54b50
make resize() work even after createRenderer() has been called once
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=719392
2007-10-01 05:31:32 +00:00
Robert Knight
b329ddb69a
Fix elementSize() , elementRect() always returning 0 in Plasma::Svg if called before resize(). Set the size to the document's default size when the renderer is created. Makes it possible to determine the aspect ratio of the graphic.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706931
2007-08-31 15:15:04 +00:00
Enrico Ros
341c3700eb
Faster background drawing. Speeds up a lot zooming operations and general compositing.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701053
2007-08-17 06:35:19 +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
6a784b89a0
don't crash on exit due to using kdebug when the app is going away
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696616
2007-08-05 12:29:06 +00:00
Leo Franchi
ce090faab8
add matrixForElement(const QString& elementId) const as discussed on panel-devel
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695665
2007-08-02 16:14:35 +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
Aaron J. Seigo
e0616c8c5f
elementRect() ... and hopefully i got the math right because i haven't tested it at all. for lfranchi, with love.
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=693068
2007-07-26 23:07:26 +00:00
Aaron J. Seigo
201afe2033
* debug output when an absolute path is provided and the file doesn't exist
...
* provide an isValid() method
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=691142
2007-07-23 00:50:10 +00:00
Aaron J. Seigo
504810736b
you know what, i really don't care about supporting animated svg's in Plasma::Svg as they break the "this is an image" concept that Plasma::Svg is built around and nobody is using them right now anyways
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689385
2007-07-18 06:21:48 +00:00
Urs Wolfer
44f3ee81c7
fix logical bug: non themed images work now too
...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=688651
2007-07-16 14:19:36 +00:00
Aaron J. Seigo
58277a7608
plug a bunch of memory leaks
...
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672687
2007-06-07 20:57:18 +00:00
Aaron J. Seigo
c321d2f03e
introduce ContentType; this lets us have svgs which are a single image which may be made up of a number of elements (in which case, the elements need to be scaled from the size on the svg when painted to have the right size) or made up of a number of discreet images each of which is already the right size (think: a deck of cards)
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669616
2007-05-29 20:27:51 +00:00
Aaron J. Seigo
498ce9d548
attempt to share renderers. this should make quite a difference, one would hope. needs more testing.
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669390
2007-05-29 07:56:21 +00:00
Matt Williams
f6849f9d23
Make the SVG render at the size specified by Svg::size() instead of ignoring it.
...
Here you go ruphy, you can now implement applet resizing to your heart's content :)
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669300
2007-05-28 23:47:41 +00:00
Matt Williams
c2b3db02e8
Fix the pixmap drawing of the SVG so that it always draws the whole element. The size it draws it at is given by the QRectF still.
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=669225
2007-05-28 20:09:50 +00:00
Aaron J. Seigo
3d51733018
* more api documentation
...
* changes to reflect api movement
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=668671
2007-05-27 08:01:31 +00:00
Aaron J. Seigo
29bc7ed49e
i'll take the red pill.
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=667153
2007-05-22 00:20:52 +00:00
Matt Williams
dfb58b44c1
EBN Fixes
...
* Include own header file first
* Make d-pointer const
* Use references-to-const
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=667001
2007-05-21 14:28:03 +00:00
David Faure
5f1db42cca
should be const
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666821
2007-05-20 23:31:44 +00:00
Aaron J. Seigo
8f037a992d
&
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666819
2007-05-20 23:18:05 +00:00
Aaron J. Seigo
cb2e8721a5
* Plasma::Svg::resize() to use the default size of the SVG
...
* make the clock use that size
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666807
2007-05-20 22:56:38 +00:00
Aaron J. Seigo
f88f9ed076
add a missing bit of obvious api.
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666798
2007-05-20 22:39:38 +00:00
Aaron J. Seigo
48db336a07
allow to pass in an alternative matrix to SVG::paint in case you don't want the painter's matrix to be used in rendering the svg; this happens when the Scene has matrix and then the painter is transformed further to adjust that specific painting event. for things like the clock, it also allows us to properly use the pixmapcache.
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666794
2007-05-20 22:30:41 +00:00
Riccardo Iaconelli
4de7a36e29
The clock now shows (and moves) SVG hands. I had to do an hack on Plasma::Svg to make it work, it was doing strange things with the plasmoid painter, and especially its coordinate system, check the differences in lib/svg.cpp to see what changed.
...
Still have a couple of problems with hands other than second, and for the black thingy in the middle.
Too tired right now, will check (and hopefully fix) them again tomorrow.
Let's party though! The first (mostly) working plasmoid goes public! Yay!
CCMAIL:panel-devel@kde.org
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666767
2007-05-20 21:01:30 +00:00
Aaron J. Seigo
b8253cda5b
get rid of matrix removal for now so that things actually draw properly in graphicsitems
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666238
2007-05-19 08:32:22 +00:00
Aaron J. Seigo
a9ebfb6a14
* allow painting of given elements
...
* find the size of an element (given the current size of the Plasma::Svg)
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=666140
2007-05-18 22:05:00 +00:00
Pino Toscano
c3d0436084
less qt3_support
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=650622
2007-04-04 23:26:24 +00:00
Aaron J. Seigo
d7caba7c6f
this works, and i know it works, so the debug can go away for now so i can see other potentially important things in the output =)
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=643671
2007-03-18 06:57:48 +00:00
Aaron J. Seigo
34fbb0cefd
use KSvgRenderer so we also support svgz
...
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=640689
2007-03-08 20:14:34 +00:00
Aaron J. Seigo
5cfabdc869
Plasma::Svg debuts. it is an image centric wrapper around QSvgRenderer that takes care of things such as:
...
* caching rendered pixmaps
* looking up the images from the Plasma::Theme
* scheduling needed updates, e.g. when the plasma theme changes
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=640418
2007-03-07 23:27:37 +00:00