[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-panel-devel
Subject: [Panel-devel] Containment
From: "Aaron J. Seigo" <aseigo () kde ! org>
Date: 2007-09-16 2:39:18
Message-ID: 200709152039.19119.aseigo () kde ! org
[Download RAW message or body]
[Attachment #2 (multipart/signed)]
hello...
so i'm mostly done with a fairly important addition / reworking of how applets
are managed. we needed the following things:
- something to paint backgrounds
- needs to support different mimetypes
- needs to be interactive, at least optionally
- needs to support things like animation
- something to contain applets
- zooming requires grouping
- sharing a corona also requires grouping
- groups manage applet layout and constraints (e.g. FormFactor) stuff
it occurred to me that this essentially describes an Applet, plus some
additional features. so that's what i've done and called the result
Containment. we now have a Plasma/Containment ServiceType for this, but it
really is just an Applet.
loading/saving of applets is still done from a single KConfig object and in a
single pass; a containment per-screen is created ...
the reason things aren't committed atm is that this breaks the current panel
implementation pretty nicely ;) and i need to rework DesktopView now.
essentially the view becomes even *less* important, with background painting
and context menus being handled by Containments.
the ramifications of this are fairly extensive:
- we can share a Corona between multiple screens and panels
- we can have really frigging cool backgrounds =)
- it doesn't really introduce much more code complexity at all, as it's mostly
just moving things around a bit and reworking how things get put together
- the people writing the Desktop plasmoid will love me, because now they
create their desktop as a Container if they wish and make all their items
children of itself. this is even nicer than the "no top level" approach.
whee.
- applets can be backgrounds as well, which could be pretty interesting
there is exactly one new class in all of this: Containment. it looks a lot
like a mashup between Corona, DesktopView and Applet. Corona and DesktopView
both get a bit simpler in the process.
i'll be committing the results tomorrow (Sunday) sometime, but thought i'd
give everyone a heads-up on this in case there were questions/concerns in the
process.
--
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA EE75 D6B7 2EB1 A7F1 DB43
KDE core developer sponsored by Trolltech
[Attachment #5 (application/pgp-signature)]
_______________________________________________
Panel-devel mailing list
Panel-devel@kde.org
https://mail.kde.org/mailman/listinfo/panel-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic