Commit Graph

207 Commits

Author SHA1 Message Date
Aaron J. Seigo
f0cb7e662c - add Contaiment to the build
- put applets in the center of the screen not the top left (i really wish people wouldn't commit obvious regressions like that? the code was ifdef 0'd out!)
- create a Containment per-screen (in the xinerama sense)
- new loading/saving code; not overly comfortable with it yet but it works and maintains the single-pass semantics as well as the option for us to delay calling init() if we decide to do so in the future
- misc fixes here and there

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714175
2007-09-18 21:25:15 +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
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
45fe956407 --warnings
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712135
2007-09-13 18:50:15 +00:00
Aaron J. Seigo
fc4b474f5c call init() on the applets after they are added to the scene ... do it all at once in the case of loading applets en mass
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712120
2007-09-13 17:03:13 +00:00
Robert Knight
26d4a28aad Use FreeLayout as the Corona's layout in the Planar form factor (vs. BoxLayout in the Horizontal or Vertical form factors)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712086
2007-09-13 14:59:29 +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
Aaron J. Seigo
243f835253 a micropatch i had sitting on the laptop
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706359
2007-08-30 04:33:12 +00:00
Aaron J. Seigo
559647f5cc make Applet use the newer plugin loading mechanisms
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=705972
2007-08-29 02:33:22 +00:00
Friedrich W. H. Kossebau
cee77d79d9 help plasmoids getting all their events
* until dragLeaveEvent gets special treatment do the default
* drop events over items should(?) only be handled by those



svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=700652
2007-08-16 05:32:54 +00:00
Leo Franchi
c89bd8f0bf add clearApplets() method to Corona, as discussed on panel-devel.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=698001
2007-08-08 17:32:32 +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
61b1dccc3d don't load from plasma-appletsrc by default, provide a convenience
method for that however (e.g. mirror the saveApplets methods)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696806
2007-08-05 22:44:07 +00:00
Aaron J. Seigo
05d103abfa * position applets due to drops properly
* if we get a matching mimetype, create that applet (not that applet + a
  button too ;)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696783
2007-08-05 22:04:26 +00:00
Aaron J. Seigo
b41bd5f532 * loading and saving of applets; allows one to define which config file,
which keeps us on the path to being able to snapshot and share layouts
* extend addApplet with optional params for applet id and starting geometry

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696631
2007-08-05 13:03:54 +00:00
Aaron J. Seigo
21c804908e * add an updateConstraints to be used to do things globally that need to
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
2007-08-05 08:41:55 +00:00
Laurent Montel
e6988faf49 Adapt to new KWarning/kFatal/kDebug api
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695877
2007-08-03 06:59:24 +00:00
Robert Knight
8c9f82bd4a Reduce debugging noise when performing drag-and-drop.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695805
2007-08-03 00:13:33 +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
Robert Knight
398d39948e Call base implementations of dragMoveEvent() and dropEvent() so that individual QGraphicsItems within the scene can use drag and drop.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695014
2007-08-01 07:09:27 +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
Alex Merry
b2058da41f fix the drag-and-drop positioning
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=692602
2007-07-25 23:58:03 +00:00
Aaron J. Seigo
0491b8b112 immutable -> isImmutable.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=691135
2007-07-23 00:24:36 +00:00
Aaron Eisenberg
f4d7105ebf Center new applets in the middle of the screen
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689381
2007-07-18 06:18:47 +00:00
Leo Franchi
f4ca9c1aca add mimetype flexibility, by storing it in a variable with getters/setters, as discussed with asiego on panel-devel
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689194
2007-07-17 21:13:41 +00:00
Aaron J. Seigo
acbfadae12 move the desktop context menu out of corona. this reflects the design better where different views may want different menus; the dekstop menu only being appropriate for, well, the desktop; other apps may be using Corona for which "desktop" is completely irrelevant.
this also moves the desktop related items out of libplasma, making it a bit more light.

functionality has moved into CoronaView, which will soon be renamed

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689123
2007-07-17 17:55:05 +00:00
Aaron J. Seigo
5151879373 add run command to the desktop context menu
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689104
2007-07-17 16:55:27 +00:00
Aaron J. Seigo
843ab6a69f * addPlasmoid -> addApplet
* pop up a failure applet when that happens...

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=687030
2007-07-12 18:37:13 +00:00
Aaron J. Seigo
5496acb8e9 configureDialog -> showConfigurationInterface
more explicit as to what it does and falls in line with
setHasConfigurationInterface

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=682296
2007-07-02 10:58:03 +00:00
Aaron J. Seigo
8e6578bf18 allow applets to note whether or not they provide a configure interface
and pay attention to that when creating the context menu

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=682287
2007-07-02 10:47:34 +00:00
Robert Knight
6558b376af Simpler menu text. The exact choice of word for the options dialog is something that can be discussed at Akademy. Remove untranslated menu title.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=681121
2007-06-27 23:48:09 +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
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
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
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
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
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
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
bbea8b07a0 also check to see if kurl knows about this stuff
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=675295
2007-06-13 22:11:49 +00:00
Aaron J. Seigo
3b8fc737e4 * add a Phase object to the corona; start using it.
TODO:
* use all the Phase transitions properly; this implies reworking the remove applet mechanism completely
* consider sharing Phase amongst all Coronas? should it be a singleton?

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=673395
2007-06-10 06:24:42 +00:00
Aaron J. Seigo
10c7d681e9 i stand upon the shoulders of davids
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672772
2007-06-08 05:25:49 +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
80866f4a99 do the locking a bit more intelligently; soon we'll need to have id's for the coronas so we can save/restore settings
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672656
2007-06-07 19:40:16 +00:00
Siraj Razick
cd701724cb icon apears on the droped pos not topleft coner
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672121
2007-06-06 06:09:42 +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
de1a88b056 drop icons to desktop support : experimental
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672031
2007-06-06 03:25:04 +00:00
Riccardo Iaconelli
fddaf2dcf2 * Show the plasmoid name on the contextual menu.
* Applet => Plasmoid, still in the contextual menu

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=671913
2007-06-05 19:31:48 +00:00
Aaron Eisenberg
8674306992 Added the ability to lock all Applets and the Desktop.
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=671176
2007-06-04 00:25:44 +00:00
Aaron J. Seigo
80fae8f7a3 use krun instead of qprocess and make sure that we don't block our own process. you can see this happen in the second screencast, actually, and it's really lame ;)
svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=671108
2007-06-03 19:59:24 +00:00
Aaron J. Seigo
3471f8e078 remove the applet from the applets list in the corona on destruction
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670628
2007-06-02 07:51:11 +00:00
Aaron Eisenberg
59641c640e Added the ability to close widgets though the right mouse button menu.
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670621
2007-06-02 07:30:16 +00:00
Aaron J. Seigo
df56575ef4 add the ability to get at the max size hint constraint
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670578
2007-06-02 04:47:09 +00:00
Aaron J. Seigo
5cd8761ab2 form factor changing
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670545
2007-06-01 22:59:58 +00:00
Aaron J. Seigo
3ccb56568f move the icon demo to RootWidget so we have all our demos there =)
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670534
2007-06-01 22:10:12 +00:00
Alexander Wiedenbruch
0de27801c9 Add KarambaManager for easier loading of SuperKaramba themes
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670527
2007-06-01 21:32:03 +00:00
Aaron J. Seigo
7212ae5b5f applets are no aware of their constraints. the simple solution is often the best one.
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670285
2007-05-31 22:40:38 +00:00
Aaron J. Seigo
2c5f8a75bf move Corona to libplasma where others can enjoy it and where we can use it from Applet
svn path=/trunk/KDE/kdebase/workspace/plasma/lib/; revision=670279
2007-05-31 22:27:33 +00:00