~screenlets-dev/screenlets/trunk

« back to all changes in this revision

Viewing changes to CHANGELOG

  • Committer: Rico Pfaus
  • Date: 2007-08-20 10:47:06 UTC
  • Revision ID: ryx@ryxperience.com-20070820104706-bghrnlck8myqok0m
Bumped version to 0.0.11, creating new bazaar branch 

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--------------------------------------------------------------------------------
 
2
  Screenlets v0.0.10 - (c) 2007 by RYX (aka Rico Pfaus) <ryx@ryxperience.com>
 
3
--------------------------------------------------------------------------------
 
4
 
 
5
CHANGELOG:
 
6
 
 
7
0.0.10:
 
8
--------
 
9
:19.08.2007:
 
10
- AccountOption should now correctly use the default session (if any)
 
11
- added new "threading"-keyword to screenlets.session.create_session, this
 
12
  should be set to true if a screenlet uses threads
 
13
- modified Launcher and Picframe to use new ImageOption
 
14
- removed ScrolledWindow from option-editor, option inputs are not inside
 
15
  a scrollable area anymore, instead they should be organized in groups
 
16
- modified option editor and added new inputs for image/dir options
 
17
- splitted ImageOption and DirectoryOption from FileOption to remove the
 
18
  complexity of the attributes
 
19
- added "image"-attribute to FileOption, allows to make a FileOption
 
20
  show all image-types supported by Gtk
 
21
- added small patch to make the Clock correctly switch the date on 00:00h and
 
22
  after suspend/restore (thanks to Rene Auberger)
 
23
- slightly fixed and optimized the options.ListOptionDialog
 
24
- added "patterns"-attribute to FileOption, which now allows to define
 
25
  special file-patterns to be shown in the file selection dialog
 
26
- fixed bug in manager (removed "python -u" from autostart files)
 
27
:18.08.2007:
 
28
- added screenlets-packager script which allows simply packaging a 
 
29
  third-party screenlet into a distributable archive (containing a special
 
30
  "Screenlet.package"-file used by the manager to verify the archive)
 
31
- added a legacy-function to raise a fatal error when a screenlet is written
 
32
  for a version before 0.0.9
 
33
- added a function screenlets.fatal_error that can be used to raise fatal
 
34
  errors that need to quit the app
 
35
- added delete-functionality to manager, user-screenlets can now by easily
 
36
  deleted
 
37
- modified screenlets.show_message and screenlets.quit_message to be able
 
38
  to be used from non-Screenlet classes (needed for manager)
 
39
:17.08.2007:
 
40
- added Install-button and -functionality to screenlets-manager, allows to
 
41
  easily install screenlets from their packages
 
42
- moified session to use utils.list_running_screenlets to check for running
 
43
  instances of a screenlet (instead of checking for a running service), this 
 
44
  hopefully fixes the startup error several people reported
 
45
:16.08.2007:
 
46
- slightly shortened confirmation-message when selecting "Delete Screenlet..."
 
47
  in right-click menu
 
48
- manager now automatically creates autostart-files when autostart gets enabled
 
49
- "screenlets-manager"-script gets installed into bin-dir and desktop-file
 
50
  is globally installed, too (manager now shows up under System/Settings)
 
51
- manager now gets installed through Makefile
 
52
- added new screenlets-manager (and a new screenlets-daemon which belongs to the
 
53
  manager and is invisible to the user)
 
54
- added screenlets.utils.Notifier-class as replacement for the notify-functions
 
55
- new function screenlets.utils.list_running_screenlets()
 
56
- modified ScreenletSession to now save the name of each running Screenlet
 
57
  in the file /tmp/screenlets/screenlets.running, that simplifies keeping track 
 
58
  of currently opened screenlets
 
59
- added some minor uninstall info to main Makefile (should be automatic)
 
60
:15.08.2007:
 
61
- added screenlets.utils.get_screenlet_metadata-function whicih returns a dict
 
62
  with name, desc, author, version (used by manager)
 
63
:06.08.2007:
 
64
- finished and added the first version of the new CopyStackScreenlet
 
65
- added create_drag_icon-function and on_create_drag_icon-handler to Screenlet
 
66
- added on_drag_begin-handler to Screenlet
 
67
:03.08.2007:
 
68
- replaced all occurences of self.__name__[:-9] and self.__class__.__name__[:-9]
 
69
  with self.get_short_name() in all base-classes
 
70
- added Screenlet.get_short_name(), returns the short name of the screenlet
 
71
  (the classname without trailing "Screenlet"), always use this now (instead
 
72
  of self.__name__[:-9])
 
73
:01.08.2007:
 
74
- screenlets.utils.notify must now be initialized before it can be used, that
 
75
  is done by calling screenlets.utils.init_notify()
 
76
- modified screenlets.utils.notify, screenlet-argument now needs to be a
 
77
  Screenlet-instance (instead of a string with the short name)
 
78
- added IMAPBackend to MailCheck, contributed by Robert Gartler (thanks :))
 
79
- applied Sorcerer's patch for adding alarm_command-feature to Clock (thx :D)
 
80
- applied Sorcerer's patch for adding GconfBackend (thx)
 
81
- applied Sorcerer's patch for adding lock_position-feature (thx)
 
82
- added Screenlet.on_init-handler, gets called after initialization is 
 
83
  complete and all options are applied
 
84
:24.07.2007:
 
85
- removed Screenlet.show_about_dialog, was not really needed anymore
 
86
- screenletsd is now just an empty script which outputs a small note
 
87
- removed screenletsd.py and add-screenlet.py from package
 
88
- removed functions create_new_instance, load_class_from_module and 
 
89
  import_and_create_screenlet from screenlets-module
 
90
- removed all screenletsd-related code from core
 
91
 
 
92
 
 
93
0.0.9:
 
94
--------
 
95
:23.07.2007:
 
96
- added new option to Makefile: "make epydoc" now generates the eypdoc-docs
 
97
  into docs/epydoc (python-epydoc must be installed)
 
98
- slightly optimized ScreenletTheme.render-function
 
99
- images in ScreenletTheme are now stored inside two dicts (svgs and pngs), the
 
100
  dict-inheritance will get removed soon
 
101
- most screenlets (except Pager and Test) now use the render-function and allow
 
102
  creating themes with png OR svg images (please avoid mixing them up :D :D)
 
103
- removed FlowerService from Flower, was only for testing and totally useless
 
104
- removed Notification-support from baseclass
 
105
- added new screenlets.utils.notify-function which greatly simplifies the
 
106
  Notifications-support (only if notify-daemon is installed, default in gnome)
 
107
- Control and Notes can now use both, SVG- or PNG-images, in their themes
 
108
- some more code-optimization and cleanup in Control
 
109
- fixed Control to now use the new launch_screenlet-function for adding new
 
110
  Screenlets through the "Add"-submenu
 
111
- added function screenlets.launch_screenlet which is now the recommended way
 
112
  of launching a screenlet from the "outside"
 
113
- added small workaround to XmlMenu, the scan-directive now replaces "$HOME"
 
114
  within the directory-name with the environment var $HOME ... this should now
 
115
  properly show all installed screenlets in the Control's "Add"-submenu
 
116
- Removed choices from Screenlet.theme_name (which is now a hidden option due 
 
117
  to the new Themes-selection)
 
118
- small fix in Screenlet-class, __setattr__ now calls the method 
 
119
  GObject.__setattr__ instead of object.__setattr__ when calling superclass
 
120
:22.07.2007:
 
121
- heavily optimized NotesScreenlet and improved the general class-layout of it
 
122
  (I'd even call it a major rewrite :D ... not a full one, though)
 
123
- NotesScreenlet now creates PangoLayout on init and stores it in the class,
 
124
  instead of re-creating it on each draw (didn't know this actually works :))
 
125
:21.07.2007:
 
126
- theme_name-option is not shown in Options-editor anymore, instead the
 
127
  new Themes-tab is now the recommended way of changing themes
 
128
- ScreenletTheme.load_conf now uses IniReader-class to read theme.conf
 
129
- Theme-tab in OptionsDialog now shows a list of all available themes for the 
 
130
  screenlet, it checks all paths for themes and also displays themes from the
 
131
  user's screenlets-dir
 
132
- added simple IniReader-class to screenlets.utils (should get used by
 
133
  themes and maybe backend, too ... but only experimental for now)
 
134
- added "uses_theme"-attribute to Screenlet-class
 
135
- added "Themes"-tab to OptionsDialog, will become a theme-selection with
 
136
  more info about a theme (should use theme.conf for getting data)
 
137
- optimized and cleaned code in OptionsDialog, should be faster now
 
138
:20.7.2007:
 
139
- cleaned up NotesScreenlet and splitted drawing-code into smaller functions
 
140
- added Screenlet.disable_updates-attributes which gets used by the session and 
 
141
  the theme to disable updating the screenlet while options are loaded or 
 
142
  overridden (should remove some ugliness on startup due to reducing the
 
143
  number of reshapes/redraws)
 
144
- added Screenlet.allow_option_override-option which allows entirely disabling
 
145
  option-overrides through themes
 
146
- added Screenlet.ask_on_option_override-option which allows disabling the
 
147
  confirmation-dialog when a theme wants to override the options in a Screenlet
 
148
- corrected Clock-themes to use new theme.conf-format
 
149
- added "text_x" and "text_y" options to CPUMeter to allow setting the position
 
150
  of the upper left corner of the text
 
151
- themes now care for protected options and not allow overriding them
 
152
- slightly changed the format of the theme.conf: now supports sections,
 
153
  the theme infos have to be supplied without trailing underscore inside the
 
154
  "Theme"-section, overridden options have to be defined in the "Options"-
 
155
  section, comment-lines need to start with '#' or ';', no support for multiline
 
156
  comments (yet)
 
157
- added "date_format"-option to Clock, allows changing the display format of
 
158
  today's date
 
159
- added new "cpu"-theme to CPUMeter
 
160
- added two new handlers to Screenlet: on_scroll_up and on_scroll_down allow
 
161
  easy handling of mouse-scrolling (thanks to DeathCarrot)
 
162
- MailCheck's "white"-theme is now named "default" and the "default"-theme is
 
163
  now named "ryx-glass" (and icon for MailCheck updated, too)
 
164
- created .desktop-file for MailCheckScreenlet, now gets installed by running
 
165
  "make menu"
 
166
- added src/share/examples-directory which now contains some example-code 
 
167
  showing how to do several things from outside the screenlets (only service-
 
168
  related code yet)
 
169
- modified ScreenletService.get/set to not get/set protected options
 
170
- added "protected"-attribute to Option-class and enabled it by default in
 
171
  AccountOption. This attribute should indicate that a certain option 
 
172
  MUST NOT be get/set through the service
 
173
- MailCheck now uses AccountOption for storing data
 
174
:19.07.2007:
 
175
- added support for new AccountOption-type to Options-Editor, it can now be
 
176
  used similar to all other options
 
177
- added screenlets.options.AccountOption which can be used to store 
 
178
  username/password-combinations in a safe storage (only gnomekeyring for now
 
179
  because python-gnome2-desktop should be installed anyway)
 
180
- splitted icons from theme in Mailcheck (now contains mailcheck-icon-refresh, 
 
181
  mailcheck-icon-error ... the mailcheck-refresh/error.svg are gone)
 
182
- fixed blinking-effect in MailCheckScreenlet
 
183
- Screenlet-info and options are now on two different tab-pages within the
 
184
  Properties-dialog
 
185
- added password-attribute to StringOption to create password input elements
 
186
  in OptionsDialog
 
187
- several more optimizations and fixes in MailCheck
 
188
- partial rewrite of the MailCheckScreenlet, it now uses a (threaded)
 
189
  MailCheckBackend-class to be able to retrieve mails from multiple types of 
 
190
  backend (e.g. gmail, pop3, imap, maildir, ...), once the needed backends
 
191
  are written :)
 
192
- splitted TODO-tasks into "core" and "screenlets" (look much smaller now :D)
 
193
:17.07.2007:
 
194
- fixed small bug in OptionEditor, color-options were displayed incorrectly
 
195
- added screenlets.options.EditableOptions.add_options_from_file() which
 
196
  allows loading option-definitions from an XML-file with metadata. You can
 
197
  use this function to keep your code a bit more clean and (hopefully) make 
 
198
  translation of all Screenlets a bit easier, too (in the future)
 
199
- added screenlets.options.create_option_from_node (does what its name says)
 
200
- added ScreenletTheme.render-function which supports rendering either PNG or
 
201
  SVG images with the same call, this now also allows creating themes using
 
202
  PNG-images (if a Screenlet uses the render-function) ... will ruin the 
 
203
  scalability but hopefully encourage more people to create new themes :D
 
204
- Launcher now uses Name-attribute from .desktop-files to set the label
 
205
- Launcher now correctly sets width/height when setting new icon
 
206
- Launcher should now correctly set icons from .desktop-files
 
207
- Launcher now can be configured by dragging/dropping a .desktop-file onto it,
 
208
  this allows easy dragging&dropping of apps from your main-menu
 
209
- re-added usage of rsvg to Launcher to support scalable images when using an 
 
210
  SVG-icon (pixbuf-loaded svgs are not scalable)
 
211
- added drag&drop-functionality to Launcher
 
212
- Launcher now supports more image-types than only svg (should support all
 
213
  gtk-supported types now), removed usage of rsvg
 
214
- splitted Screenlet.redraw_canvas into two functions (added new function 
 
215
  Screenlet.redraw_canvas_area), should speed things up in that case by 
 
216
  removing an if-statement
 
217
:16.07.2007:
 
218
- TestScreenlet now uses new session system and coding guidelines, too :)
 
219
- all .desktop-files now execute with output set to /dev/null
 
220
- slightly changed description of ControlScreenlet
 
221
- added ScreenletService.get_first_instance()
 
222
- added two new signals to ScreenletService (instance_added, instance_removed)
 
223
  and modified Screenlet-class to send the signals on the appropriate events
 
224
- added icons to Control and Launcher
 
225
- fixed small bug in Launcher and removed absolute path for default icon
 
226
- added .desktop-files for Control, Launcher and Windowlist
 
227
- corrected a small problem with the services and added a ClockService to
 
228
  the ClockScreenlet
 
229
- renamed "gnome"-directory to "desktop-menu" and added "menu"-option to
 
230
  main Makefile (for easily installing menu-entries run "make menu")
 
231
- slightly changed screenlets.SCREENLETS_PATH to only contain user-dir and
 
232
  system-dir (maybe add $PWD again, too?)
 
233
 
 
234
 
 
235
0.0.8:
 
236
--------
 
237
:15.07.2007:
 
238
- added makefile in gnome/ to install .desktop, .directory and .menu files
 
239
  for accessing the Screenlets through the Applications-menu (at least in
 
240
  gnome this should work, don't know about KDE)
 
241
- added confirmation-dialog before a screenlet gets deleted via popup-menu
 
242
- on_delete-event now properly gets called again
 
243
- removed event-argument from Screenlet.on_delete
 
244
- converted all screenlets to new session system, cleaned the code and
 
245
  applied new formatting rules to all screenlets
 
246
- corrected "white"-theme in MailCheckScreenlet (added missing states)
 
247
- Flower now grows (if it is treated right :D)
 
248
- added dead/dry-states to Flower
 
249
:14.07.2007:
 
250
- added "default-blue"-theme to PicframeScreenlet
 
251
- added "simplewood"-theme to PicframeScreenlet
 
252
- fixed inputs for FloatOption and IntOption in OptionsDialog, increment and 
 
253
  digits are now properly handled
 
254
- PicframeScreenlet now shows images which are dragged onto it
 
255
- added new PicframeScreenlet (displaying a simple picture frame)
 
256
:13.07.2007:
 
257
- fixed problem with mousecursor moving away from the screenlet while dragging
 
258
  it around
 
259
- the session now handles sigkill/sigint instead of throwing an exception
 
260
- added ScreenletsBackend.flush-function which is used to save pending 
 
261
  changes before the main process ends (to avoid losing options due to the
 
262
  caching functionality of the CachingBackend)
 
263
- screenlets.utils.find_first_screenlet_path is now used to get the path
 
264
  for the screenlet (Screenlet.get_screenlet_dir now uses this function, too),
 
265
  this should now eliminate the problem with launching screenlets from non-PWD
 
266
  locations
 
267
:12.07.2007:
 
268
- several whitespace-changes in base-modules, (in function definitions it is 
 
269
  now recommended to put a space between name and opening brace)
 
270
- changed dbus-address/path of ScreenletService-class to org.screenlets.*
 
271
  (e.g. the FlowerScreenlet now uses the service "org.screenlets.Flower", the
 
272
  object's path is "/org/screenlets/Flower", the interface is still
 
273
  "org.screenlets.ScreenletService" but will be changed)
 
274
- added service_class-attribute to Screenlet.__init__ for easily passing
 
275
  a custom ScreenletService-class to the constructor
 
276
- session now uses the service for adding new instances when the Screenlet
 
277
  has already a running instance (to keep screenlets of the same type
 
278
  within the same process)
 
279
- renamed services.is_service_running to services.service_is_running
 
280
- deleting/quitting screenlets and instances now properly works with the new
 
281
  session-system
 
282
- added ScreenletSession.delete_instance-function
 
283
- added "enable_saving" keyword attribute to Screenlet's __init__-function
 
284
  (only needed internally, can be ignored)
 
285
- added Screenlet.enable_saving-function which allows enabling/disabling
 
286
  saving of options (mainly used within session to prevent initial saves)
 
287
:09.07.2007:
 
288
- added xdg-basedir compliance to ScreenletSession-class, sessions are now
 
289
  properly stored in their folders (which now are created automatically)
 
290
:08.07.2007:
 
291
- added screenlets.services.is_service_running-function to simplify checking for
 
292
  the availability of a Screenlet's service
 
293
:07.07.2007:
 
294
- added screenlets.session.create_session-function to simplify creating the
 
295
  session within the "__main__"-part
 
296
- added ScreenletSession.backend-attribute and modified Screenlet-baseclass to
 
297
  use the session's backend if available (for now the screenletsd is still
 
298
  supported but it will be removed soon)
 
299
- modified ScreenletSession to use a ScreenletsBackend instead of directly
 
300
  saving/loading instances
 
301
- moved backend-related code from screenletsd.py into the new screenlets.backend 
 
302
  module
 
303
:06.07.2007:
 
304
- added Screenlet.register_session-function to simplify creating a service for
 
305
  multi-instance screenlets
 
306
- added Screenlet.service and Screenlet.session attributes to Screenlet-class,
 
307
  they are now available to all Screenlets
 
308
:05.07.2007:
 
309
- all Screenlets now have IDs, which allows accessing multiple instances over 
 
310
  the same remote-interface
 
311
- added a screenlets.session module containing the new ScreenletSession-class
 
312
  which is now responsible for things like handling startup and multiple 
 
313
  instances of a screenlet. The session further cares for restoring options 
 
314
  and will get a backend-object soon (to also care for saving options).
 
315
:04.07.2007:
 
316
- added an unfinished FlowerScreenlet which displays a themeable growing plant
 
317
- modified Screenlet.update_shape to now store the current shape_bitmap and its
 
318
  dimensions until it actually gets resized (instead of re-creating it on update)
 
319
- added screenlets.services.get_service_by_name-function which allows easily
 
320
  retrieving an interface-object from a Screenlet's dbus-service
 
321
:03.07.2007:
 
322
- added a screenlets.services module and a ScreenletService-class to finally
 
323
  implement the base for easily making Screenlet-actions available through Dbus.
 
324
  Screenlets can now offer custom methods or propagate their own signals over
 
325
  dbus, and other apps (e.g. other Screenlets) can call/receive them easily.
 
326
:26.02.2007:
 
327
- added new default-theme to ExampleScreenlet and removed ugly graffiti-theme
 
328
:25.02.2007:
 
329
- added module screenlets.utils for placing helper-functions
 
330
- fixed clock to switch date at 00:00h (but I guess it still doesn't work)
 
331
:20.02.2007:
 
332
- added screenlets.options.ListOption and screenlets.options.ListOptionDialog 
 
333
  and added ListOption-support to OptionsDialog. The ListOption must be a list
 
334
  of strings
 
335
:19.02.2007:
 
336
- Screenlet's Width/Height options are now hidden
 
337
- added theme.conf to all Clock-themes, removed funky-theme
 
338
- added box-theme to StorageScreenlet
 
339
- added StorageScreenlet (drag/drop example)
 
340
:18.02.2007:
 
341
- moved get_cpu_load from CPUMeter to screenlets.sensors
 
342
- added module screenlets.sensors which will be extended to a general
 
343
  cpu/net/ram/*-meter helper-library (any help greatly appreciated ;) ...)
 
344
:17.02.2007:
 
345
- added 'debug'-action to screenletsd-startup script, 'start' action now
 
346
  outputs to /dev/null
 
347
- added handler Screenlet.on_drag_leave
 
348
- added handler Screenlet.on_drag_enter
 
349
- updated screnlets.create_new_instance and screenlets.load_class_from_module
 
350
  to use __import__ instead of exec for loading modules (thanks, Vasek)
 
351
:15.02.2007:
 
352
- added Screenlet.on_drop-handler (activate D&D by passing drag_drop=True
 
353
  to Screenlet.__init__)
 
354
- cleaned __init__-handlers of Options/Option-subclasses to now use 
 
355
  **keyword_args instead of passing the superclasses' key-args
 
356
- moved Screenlet bus/notification-attribs from class to __init__ (bugfix?)
 
357
- NotesScreenlet now shows a confirmation-dialog when it gets deleted (using
 
358
  the new on_delete-handler)
 
359
- Screenlet.on_delete-handler now works properly and can return True to cancel
 
360
  the deletion of the Screenlet
 
361
:14.02.2007:
 
362
- extended Screenlet.redraw_canvas to allow redrawing only a rectangular area if
 
363
  the optional x/y/width/height attributes are set
 
364
- added basic (drag&)drop-support (only on_drop yet) to NotesScreenlet (will
 
365
  go into baseclass once fully tested)
 
366
 
 
367
 
 
368
0.0.7 (codename "Bond"):
 
369
--------
 
370
:10.02.1007:
 
371
- addded meta-attribute Screenlet.__requires__ (list with needed imports)
 
372
  unused for now, but will be used in future release
 
373
- ScreenletThemes can now contain a theme.conf with _name, _version, _author
 
374
  and _info meta-description. Additionally, options within the Screenlet can 
 
375
  be overridden through the theme.
 
376
- added Screenlet.on_realize-handler
 
377
- Screenlet.on_quit-handler is now properly called and the recommended place 
 
378
  for cleaning up used ressources and disconnect from external signals
 
379
- added Screenlet.on_delete-handler (called before on_quit, can be cancelled)
 
380
- moved module-loader into screenlets-module
 
381
- module "options" is now "screenlets.options"
 
382
- placed dbus-constants into screenlets-module (BACKEND_BUS, 
 
383
  BACKEND_OBJ, BACKEND_IFACE)
 
384
- Screenlet's directories now must be named like the classname, without 
 
385
  trailing "Screenlet" and NOT in lowercase anymore
 
386
:09.02.2007:
 
387
- added Makefile offering following actions: install, clean, docs and 
 
388
  source_package (which creates a release-tarball)
 
389
- added MANIFEST.in for setup.py
 
390
- Screenlet.__init__ now MUST have an additonal **keyword_args-argument
 
391
  as last argument (all subclasses MUST have this, too)
 
392
- added (simple) module-loader-functionality to screenletsd.py to allow 
 
393
  adding screenlets from a non-library path like /usr/local/share/screenlets/ 
 
394
  and $HOME/.screenlets
 
395
- screenlets/screenlets.py is now src/lib/__init__.py (only a formal change)
 
396
- Screenlets (the .py-files) now have to be placed within the screenlet's 
 
397
  personal directory
 
398
- entirely new structure of the source-package: The base-classes now need to
 
399
  be installed (using "setup.py install") to work but can be launched
 
400
  from anywhere in the system (and be packaged) 
 
401
- created setup.py
 
402
:08.02.2007:
 
403
- added screenletsd-shellscript to package (thanks, raptros-v76 :) ...)
 
404
- "took over" and included CalendarScreenlet (thanks, robgig1088 :) ..)
 
405
- applied Sorcerer's show_date-path (adds show_date option to Clock) 
 
406
  (thanks, Sorcerer :) ...)
 
407
- renamed dbus path/object/iface all to "org.freedesktop.Screenlets", (until
 
408
  we have org.screenlets.* as service)
 
409
- fixed directory-problem on first run and added some checks
 
410
- removed options.load_objects_from_file
 
411
- removed options.save_objects_to_file
 
412
 
 
413
 
 
414
0.0.6:
 
415
--------
 
416
:07.02.2007:
 
417
- ClockScreenlet now has new icon (railway-theme)
 
418
- added queue in CachingBackend (to avoid losing options on multiple elements)
 
419
:06.02.2007:
 
420
- stripped load/save functionality off the Control, the Control is now 
 
421
  sending requests to the backend for adding a new Screenlet
 
422
- finished settings-daemon and backend (quickly said, but a full day work :) )
 
423
 
 
424
 
 
425
0.0.5 (unreleased due to instability):
 
426
--------
 
427
:06.02.2007:
 
428
- added screenlets.create_new_instance(): this is the recommended way
 
429
  of creating new instances of (stand-alone) screenlets
 
430
:05.02.2007:
 
431
- added screenletsd.py: contains ScreenletsService and ScreenletsBackend and 
 
432
  offers a new way of creating persistent options (using any type of
 
433
  backend - from flat-file to gconf) ... not running and experimental yet!
 
434
:04.02.2007:
 
435
- added notifications-patch from Sorcerer (thnx :))
 
436
- added Screenlet.skip_taskbar-option
 
437
- added Screenlet.skip_pager-option
 
438
:02.02.2007:
 
439
- added options.load_objects_from_file
 
440
- added options.save_objects_to_file
 
441
- added new Clock-theme "station"
 
442
:01.02:2007:
 
443
- removed width/height arguments from Screenlet.__init__ - Screenlets now
 
444
  have a default size of 100x100 pixels, this has to match the size of all
 
445
  graphics within the theme (if theme used). The width/height-arguments
 
446
  can still be set as keyword-attributes (passed to __init__)
 
447
- added PNG-support to ScreenletTheme
 
448
- changed "Size"-menuitems to percentage values and use scale for sizing
 
449
- added new handler Screenlet.on_scale() (fired when scale-attribute is changed)
 
450
- modified all screenlets to use scale instead of width/height
 
451
- added scale-factor to Screenlet-class
 
452
:31.01.2007:
 
453
- added new handler Screenlet.on_menuitem_select(id)
 
454
- added MailCheckScreenlet
 
455
:30.01.2007:
 
456
- added ClockScreenlet.set_update_interval
 
457
- added show_seconds_hand-option to ClockScreenlet
 
458
- added new handler Screenlet.on_mouse_enter(event)
 
459
- added new handler Screenlet.on_mouse_leave(event)
 
460
- added new handler Screenlet.on_mouse_up(event)
 
461
- added new handler Screenlet.on_mouse_down(event)
 
462
- added new handler Screenlet.on_unfocus()
 
463
- added new handler Screenlet.on_focus()
 
464
- added new handler Screenlet.on_show()
 
465
- added new handler Screenlet.on_hide()
 
466
- added new handler Screenlet.on_switch_widget_state(state)
 
467
- added new handler naming-convention: All (non-gtk) handlers now start
 
468
  with "on_" ... e.g. on_mouse_down, on_mouse_up, on_draw, on-draw_shape, ...
 
469
:29.01.2007:
 
470
- added realtime-attribute to Option: if realtime is False, the option has an
 
471
  additional Apply-button next to its entry and only updates when the 
 
472
  button is pressed
 
473
- added OptionsDialog.apply_options_callback (internal handler)
 
474
- added OptionsDialog.read_option_from_widget
 
475
- added basic in-place-editing to NotesScreenlet (a little gift to MacSlow :))
 
476
- some minor code-optimizations: 'name == "test and name == "test2" ...' 
 
477
  is now 'name in ("test", "test2", ...)'
 
478
 
 
479
 
 
480
0.0.4:
 
481
--------
 
482
:28.01.2007:
 
483
- fixed startup-crash when config-file missing
 
484
- applied new naming convention to all other Screenlets
 
485
:27.01.2007:
 
486
- applied new naming convention (see README) to ClockScreenlet
 
487
- replaced exported_settings: new way of creating persistent options that
 
488
  are invisible in the options-editor is adding editable options with the 
 
489
  "hidden"-attribute set to True
 
490
- removed DefaultMenuItem.INFO from defaults (deprecated)
 
491
- DefaultMenuItem.OPTIONS is now DefaultMenuItem.PROPERTIES
 
492
- renamed Screenlet._y to Screenlet.y
 
493
- renamed Screenlet._x to Screenlet.x
 
494
- added option ClockScreenlet.alarm_length
 
495
- added option ClockScreenlet.hour_format
 
496
- added Alarm-function to Clock
 
497
:26.01.2007:
 
498
- added EditableOptions.disable_option
 
499
- added option ControlScreenlet.hide_show_on_click
 
500
- added options.FileOption
 
501
- added function screenlets.show_message() to ease notificiation-output
 
502
- renamed AppLauncherScreenlet to LauncherScreenlet
 
503
- improved and finished AppLauncherScreenlet
 
504
- added (slightly modified) XDG-basedir-compliance patch from RAOF (thank you)
 
505
:25.01.2007:
 
506
- ability to add callbacks to Option-classes (to monitor when options
 
507
  change within the OptionsDialog)
 
508
- "Settings" now called "Options" (and DefaultMenuItem.SETTINGS is now
 
509
  DefaultMenuItem.OPTIONS)
 
510
- major optimization of the settings-system: now using Option-classes
 
511
  instead of SettingsType.*
 
512
- Control now saves settings when killed with SIGTERM (not SIGKILL)
 
513
- removed ControlScreenlet.create_menu() (replaced by XML-menu)
 
514
- DefaultMenuItem.XML now (kind of) working
 
515
- added settings-dialog to Control
 
516
- added add_screenlet_as_widget-setting to Control
 
517
- added get_screenlet_dir-function to Screenlet-class
 
518
:24.01.2007:
 
519
- updated all Screenlets to new settings-system
 
520
- added choices-option to STRING-setting (to provide a combobox-selection)
 
521
- added Screenlet.get_available_themes()
 
522
- removed useless code from Clock (get/set for time-property)
 
523
- added font_name- and rgba_color-setting to NotesScreenlet
 
524
- added SettingsType.COLOR and SettingsType.FONT to settings
 
525
- added random_pin_pos-setting to NotesScreenlet
 
526
:22.01.2007:
 
527
- added text_prefix, text_suffix as settings to CPUMeter
 
528
- added pin_x, pin_y, text_x, text_y, text_prefix, text_suffix as settings to Notes
 
529
- settings-editor now supports different groups (option-tabs)
 
530
- started AppLauncherScreenlet (unfinished, maybe gets dumped)
 
531
:21.01.2007:
 
532
- added time_offset-attribute to ClockScreenlet
 
533
- added new menuitem for settings (DefaultMenuItem.SETTINGS)
 
534
- made Screenlet also inherit from EditableSettings (besides gobject)
 
535
- added EditableSettings, EditableSettingsDialog and EditableSettingsOption classes
 
536
:20.01.2007:
 
537
- fixed a small bug in ControlScreenlet's shape (which was drawn in double size)
 
538
 
 
539
 
 
540
0.0.3:
 
541
--------
 
542
:19.01.2007:
 
543
- added <scandir>-tag to XmlMenu for scanning dirs for entries and add 
 
544
  a dynamically created menu that way
 
545
:18.01.2007:
 
546
- fixed crash on start when closing Control on viewport different than 1
 
547
- added private info/name/author/desc-fields as metainfo to Screenlets
 
548
- added Sorcerer's About-Dialog (slightly modified to match metainfo)
 
549
- added XML-based menu to ControlScreenlet (for user-configurable menus)
 
550
:14.01.2007
 
551
- added support for compiz' widget-plugin (thanks to mikedee)
 
552
- added Window-submenu to Screenlet's right-click menu
 
553
- added sticky/widget/keep_above/keep_below-options to Screenlet
 
554
 
 
555
 
 
556
0.0.2:
 
557
--------
 
558
:13.01.2007
 
559
- finished Windowlist
 
560
- fixed clock-shadows
 
561
- added "ryx-glass"-theme to Clock
 
562
- added "time4linux-inverse"-theme to Clock
 
563
- added resize-functionality
 
564
- added "Size"-submenu (DefaultMenuItem.SIZE)
 
565
- made Notes resize dynamically (while font-size stays the same)
 
566
:12.01.2007
 
567
- added screenlets.ShapedWidget-class
 
568
- Windowlist now uses TaskIconWidget-childwidgets
 
569
- added flashing-function to Windowlist (for "demands-attention"-state)
 
570
:11.01.2007
 
571
- added WindowlistScreenlet (using libwnck)
 
572
- made ControlScreenlet skip_taskbar
 
573
- added "default-gray"-theme for CPUMeter
 
574
:10.01.2007
 
575
- added MessageDialog as "Info"-MenuItem
 
576
- added ExampleScreenlet that simply displays an SVG
 
577
- added simple CPUMeterScreenlet with Text-display
 
578
- added "default-blue"-theme for CPUMeter
 
579
- added (very basic) graph-display to CPUMeter
 
580
 
 
581
 
 
582
0.0.1:
 
583
--------
 
584
:06.01.2007
 
585
- initial release