Bugfix: Theme index parser failed to cope with comments at the start of the
[rox-lib/lack.git] / Help / Changes
blobd9552532932149b840b810927696534876bcc890
1                         ROX-Lib2
2                         Shared code for ROX applications
3                         by Thomas Leonard
4                         http://rox.sourceforge.net
6 30-Apr-2005
7 ~~~~~~~~~~~
8 Bugfix: Theme index parser failed to cope with comments at the start of the
9         file (Thomas Leonard).
11 29-Apr-2005
12 ~~~~~~~~~~~
13 Compatability fixes for the su module (Stephen Watson).
15 17-Apr-2005
16 ~~~~~~~~~~~
17 Fixed Zero Install version test in findrox.py (Thomas Leonard).
19 16-Apr-2005 (Release 2.0.0)
20 ~~~~~~~~~~~
21 Run unit tests in alphabetical order as it fixes a strange interaction between them (Stephen Watson).
23 10-Apr-2005
24 ~~~~~~~~~~~
25 Added unit tests for processes module, based on old tests in Archive (Thomas
26 Leonard).
28 09-Apr-2005
29 ~~~~~~~~~~~
30 Changed MakeDist to allow use of other SourceForge accounts (Stephen Watson).
32 01-Apr-2005
33 ~~~~~~~~~~~
34 Added 'testall' script to run all the unit tests together (Thomas Leonard).
36 23-Mar-2005 (Release 1.9.18)
37 ~~~~~~~~~~~
38 German translation (Guido Schimmels).
40 13-Mar-2005
41 ~~~~~~~~~~~
42 Added TODO file to track bugs and changes needed for 2.0.0 release.
44 10-Mar-2005
45 ~~~~~~~~~~~
46 Bugfix: Set default in Options box to OK to avoid triggering a GTK bug
47         (Thomas Leonard, reported by Guido Schimmels).
49 16-Jan-2005 (Release 1.9.17)
50 ~~~~~~~~~~~
51 Added OutputBlocker, which works in a similar way to InputBlocker (Thomas
52 Leonard).
54 15-Jan-2005
55 ~~~~~~~~~~~
56 Be consistent about URI escaping. set_uri() is now always passed an unescaped
57 UTF-8 string (Thomas Leonard).
59 03-Jan-2004
60 ~~~~~~~~~~~
61 Added fixedlist and varlist widgets to OptionsBox (Stephen Watson).
63 31-Dec-2004
64 ~~~~~~~~~~~
65 Added MIME type matching by file contents (Stephen Watson).
67 29-Dec-2004
68 ~~~~~~~~~~~
69 If a 'rox' module is in PYTHONPATH, use that without any searching (Thomas
70 Leonard).
72 23-Dec-2004
73 ~~~~~~~~~~~
74 Added Chinese translation (Babyfai Cheung).
76 11-Dec-2004
77 ~~~~~~~~~~~
78 Suppress warning when we use GtkItemFactory under pygtk 2.4 (Stephen Watson).
80 25-Nov-2004
81 ~~~~~~~~~~~
82 Added tasks.InputBlocker, which triggers when an input source becomes
83 readable (Thomas Leonard).
85 21-Nov-2004
86 ~~~~~~~~~~~
87 Bugfix: Use only text nodes when getting the tool tip from the Options.xml
88         file (Stephen Watson).
90 22-Oct-2004
91 ~~~~~~~~~~~
92 Bugfix: Theme subdirectories are separated by ',' not ';' (reported by
93         Denis Prost).
95 20-Oct-2004
96 ~~~~~~~~~~~
97 Bugfix: When a menu has more than one toggle item, only one is updated
98         correctly (Ken Hayber).
100 07-Oct-2004
101 ~~~~~~~~~~~
102 Replace g.mainloop() and g.mainquit() with g.main() and g.main_quit() as
103 recommended since pygtk 2.0.0 to avoid warnings with pygtk 2.4.0 (Stephen 
104 Watson).
106 03-Oct-2004
107 ~~~~~~~~~~~
108 Added options.ListOption to support multi-valued option widgets, such as
109 lists (Stephen Watson).
111 02-Oct-2004 (Release 1.9.16)
112 ~~~~~~~~~~~
113 Cope better with user cancelling su operation. New interface to replace
114 create_su_proxy (Thomas Leonard).
116 27-Sep-2004
117 ~~~~~~~~~~~
118 The choices module is now deprecated. You can use choices.migrate() to move
119 settings over to the basedir system (Thomas Leonard). Also added
120 basedir.load_first_config(), which works like the old choices.load().
122 26-Sep-2004
123 ~~~~~~~~~~~
124 Several incompatible changes to the experimental proxy API to make it simpler
125 (Thomas Leonard):
127 - Create_su_proxy now returns the MasterObject directly, not the MasterProxy.
128 - You can call finish on the MasterObject (so the MasterProxy isn't needed).
129 - Slave methods no longer take a 'request' argument. Instead, the return
130   value of the function is returned.
131 - Methods can only return one value. dequeue and dequeue_last have been
132   replaced with a 'result' property.
133 - Methods on MasterObject now return a RequestBlocker, not a Queue. This
134   means you just yield the object itself, not object.blocker.
136 Tasks API is no longer experimental, but proxy API is.
138 22-Sep-2004
139 ~~~~~~~~~~~
140 Added a Help button to the exception dialog, which opens the new Help/Errors
141 file (Thomas Leonard).
143 08-Sep-2004
144 ~~~~~~~~~~~
145 Bugfix: Failed to call the parent constructor to AbortSave correctly.
147 06-Sep-2004
148 ~~~~~~~~~~~
149 Simplified su code and interface.
150 New suchild methods: open, close, read, write, chmod and rename, which work
151 just like their normal Python counterparts (Thomas Leonard).
153 29-Aug-2004
154 ~~~~~~~~~~~
155 Removed code to turn off the separator in the debug dialog. GTK 2.4 doesn't
156 need it, and generates a warning if you use it (Thomas Leonard).
158 27-Aug-2004 (Release 1.9.15)
159 ~~~~~~~~~~~
160 Added spawnvpe and waitpid methods to suchild.
162 08-Aug-2004
163 ~~~~~~~~~~~
164 If the unit field for a <numentry> option is blank, don't try to translate it
165 (reported by Guido Schimmels).
167 30-Jun-2004
168 ~~~~~~~~~~~
169 Added 'su' module for performing operations as root.
171 11-Jun-2004
172 ~~~~~~~~~~~
173 Allow "" as a valid value in a OptionsBox menu (reported by Guido Schimmels).
175 10-Jun-2004
176 ~~~~~~~~~~~
177 Added 'proxy' module. This allows one Python process to invoke methods on
178 another asynchronously.
179 Added rox.UserAbort exception, to be raised when users cancel something
180 manually.
182 07-Jun-2004
183 ~~~~~~~~~~~
184 Fix syntax error I caused when I added a docstring (Stephen Watson).
186 30-May-2004
187 ~~~~~~~~~~~
188 Get update-mime-database command through Zero Install, if possible.
190 24-May-2004
191 ~~~~~~~~~~~
192 mime_handler can now uninstall (Stephen Watson).
194 04-May-2004
195 ~~~~~~~~~~~
196 Translate menu items in options (Guido Schimmels).
198 26-Apr-2004
199 ~~~~~~~~~~~
200 Added <slider> widget to options.
202 25-Apr-2004
203 ~~~~~~~~~~~
204 Added 'size-group' attribute to Options.xml elements. This allows grouping
205 elements so that their labels all appear the same width.
207 20-Apr-2004
208 ~~~~~~~~~~~
209 Bugfix: Colour buttons in the Options boxes didn't work with some themes
210         (Jonatan Liljedahl).
212 17-Apr-2004 (Release 1.9.14)
213 ~~~~~~~~~~~
214 Added ToggleItem (based on a patch from Ken Hayber).
216 15-Apr-2004
217 ~~~~~~~~~~~
218 Better <label> widgets (wrapping and icon). Taken from LookAndFeel.
220 20-Mar-2004
221 ~~~~~~~~~~~
222 Stop themes from overriding the display of the colour-picker buttons in
223 the options box (Rene Ejury).
225 17-Mar-2004
226 ~~~~~~~~~~~
227 Warn about old versions of findrox.py.
228 Bugfix: Bug in new menu API prevented submenus from working.
230 16-Mar-2004 (Release 1.9.13)
231 ~~~~~~~~~~~
232 Bugfix: Icon themes didn't work with python versions older than 2.2.2
233         (reported by Thomas Zajic).
235 15-Mar-2004
236 ~~~~~~~~~~~
237 Bugfix: Use filer module to show ROX-Lib help, rather than using os.system,
238         so that it works with Zero Install (reported by Keith Hopper).
240 14-Mar-2004
241 ~~~~~~~~~~~
242 Added widget_registry to OptionsBox, to provide an easy way to register
243 new option types. Removed build_button in favour of this method.
245 Bugfix: If an error occurred loading the ROX theme at startup it could not
246         be reported, because icon_theme wants debug, debug wants saving, and
247         saving wants icon_theme (reported by Thomas Zajic).
249 12-Mar-2004
250 ~~~~~~~~~~~
251 Cope with pygtk2.2 API change (Stephen Watson, reported by Guido Schimmels).
253 06-Mar-2004
254 ~~~~~~~~~~~
255 Added secretentry and button options to the OptionsBox (Stephen Watson).
257 26-Feb-2004
258 ~~~~~~~~~~~
259 Cope with option values split into multiple DOM text nodes (Rene Ejury).
261 22-Feb-2004
262 ~~~~~~~~~~~
263 Allow a list of values to be stored in each menu Action. These are used as
264 the arguments to the callback function.
265 If a file's details were recorded (in document.save_last_stat) when it was
266 loaded, make sure they haven't changed when saving. Saving also updates this
267 variable (requested by Arnaud Calvo).
269 20-Feb-2004
270 ~~~~~~~~~~~
271 Updated examples in documentation for new findrox (Yuri Bongiorno).
273 10-Feb-2004
274 ~~~~~~~~~~~
275 New API for menus. Instead of passing tuples for menu items, python classes
276 can be used. The old tuple interface is still supported.
278 07-Feb-2004
279 ~~~~~~~~~~~
280 Don't stop DnD working in the savebox just because no icon can be found
281 (reported by Martin Lucina).
283 02-Feb-2004
284 ~~~~~~~~~~~
285 Added French translation (Vincent Lefèvre).
287 30-Jan-2004
288 ~~~~~~~~~~~
289 Also translate <label> elements in the Options box (reported by Arnaud Calvo).
291 28-Jan-2004
292 ~~~~~~~~~~~
293 Also translate section names in the Options box (reported by Arnaud Calvo).
295 22-Jan-2004 (Release 1.9.12)
296 ~~~~~~~~~~~
297 Added 'tasks' module to provide a light-weight alternative to threads.
298 Bugfix: On non-zero-install systems, the sense of the version check in findrox
299         was wrong.
301 02-Jan-2004
302 ~~~~~~~~~~~
303 Added method to MIMEtype to fetch its icon. Install list window for
304 the MIME handler installation uses it (Stephen Watson).
306 13-Dec-2003
307 ~~~~~~~~~~~
308 Translate text in Options box.
310 28-Dec-2003
311 ~~~~~~~~~~~
312 Allow ROXLIB_DISABLE_ZEROINSTALL to override looking for ROX-Lib in Zero
313 Install (useful for ROX-Lib developers). Prefer a locally installed version
314 of ROX-Filer to the Zero Install version; this also allows users to select
315 which Zero Install version they want (eg, stable or developer).
316 Moved MIME handler installation into a separate module (mime_handler) and
317 made a few changes to the XML syntax.
319 24-Dec-2003
320 ~~~~~~~~~~~
321 Added <menu> OptionMenu widget for Options box (Chris Shaffer).
323 27-Nov-2003
324 ~~~~~~~~~~~
325 Fixed bug in findrox when not using Zero Install (Lionel Bringuier).
327 26-Nov-2003
328 ~~~~~~~~~~~
329 Escape and unescape URIs, as required by ROX-Filer 2.1.0 (reported by
330 Peter Geer).
331 Note that the xds_load_uris() method is now called with escaped URIs.
332 Try to run the filer through Zero Install, if possible.
334 11-Nov-2003
335 ~~~~~~~~~~~
336 If we can't get pygtk through Zero Install, try the local copy.
338 05-Nov-2003
339 ~~~~~~~~~~~
340 Added support in mime.py for an application to set MIME-type run
341 actions and thumbnail programs (Stephen Watson).
343 31-Oct-2003
344 ~~~~~~~~~~~
345 Simplified implementation of saving.SaveFilter by using the new
346 processes.PipeThroughCommand class. The child_run() method of SaveFilter
347 is no longer supported.
348 In processes.PipeThroughCommand, a None input stream gets /dev/null instead
349 of inheriting its parent's stream. The class has a new run_child_with_streams
350 to make overriding the behaviour easier.
351 findrox.py script now warns if ROX-Lib2 version is too old (unless requesting
352 a version too old to have a version number).
354 29-Oct-2003
355 ~~~~~~~~~~~
356 Changed 'Dismiss' to 'Close' (Chris Shaffer).
357 Bugfix: Error reporting in mime.py failed to import the _ function (reported
358         by Christopher Haines).
359 New AppInfo.py for parsing AppInfo.xml files (Christopher Arndt), InfoWin
360 converted to use it (Stephen Watson).
362 15-Oct-2003 (Release 1.9.11)
363 ~~~~~~~~~~~
364 Bugfix: Python 2.3's new bool type broke options saving (reported by Lars
365         Hansson).
367 13-Oct-2003
368 ~~~~~~~~~~~
369 Added PipeThroughCommand class (copied from Archive, with some minor
370 changes).
372 09-Oct-2003
373 ~~~~~~~~~~~
374 Allow event to be None for Menu.popup. This allows the menu to be activated
375 from the keyboard, using the 'popup-menu' signal.
377 08-Oct-2003
378 ~~~~~~~~~~~
379 Added French translation in AppInfo.xml (Vincent Lefèvre).
381 03-Oct-2003 (Release 1.9.10)
382 ~~~~~~~~~~~
383 Added support for icon themes (doesn't do inheritance yet).
385 28-Sep-2003
386 ~~~~~~~~~~~
387 Added some version information to the dialog you get when you run ROX-Lib
388 directly.
390 22-Sep-2003
391 ~~~~~~~~~~~
392 New bug() function to quickly bring up a debugging prompt.
394 15-Sep-2003
395 ~~~~~~~~~~~
396 The glob patterns in mime.py are now sorted longest first. Fix for setting 
397 icon in the old way when there was no icon (Stephen Watson).
399 25-Aug-2003
400 ~~~~~~~~~~~
401 Try to cope better with bad hostname setup (reported by Nathan Howell).
403 24-Aug-2003
404 ~~~~~~~~~~~
405 Added InfoWin.py to provide standardized information window (Stephen Watson).
407 24-Aug-2003
408 ~~~~~~~~~~~
409 Fall back to old way of setting default icon for older pygtk's (Stephen 
410 Watson).
412 20-Aug-2003
413 ~~~~~~~~~~~
414 Added Italian translation (Yuri Bongiorno).
416 18-Aug-2003
417 ~~~~~~~~~~~
418 Better way to set the default icon.
420 16-Aug-2003 (Release 1.9.9)
421 ~~~~~~~~~~~
422 Give windows a default icon from .DirIcon (Chris Shaffer).
424 01-Aug-2003
425 ~~~~~~~~~~~
426 Try to get pygtk through ZeroInstall.
428 25-Jul-2003
429 ~~~~~~~~~~~
430 Updated findrox to use ZeroInstall, if possible.
432 22-Jul-2003
433 ~~~~~~~~~~~
434 Work out correct application name even if invoked via a symlink. This stops
435 applications from calling themselves 'text_plain', etc (reported by Joe Hill).
437 19-Jul-2003 (Release 1.9.8)
438 ~~~~~~~~~~~
439 Make default menu positioning function keep the pointer inside the menu.
440 Allow stock icons in menus.
442 18-Jul-2003
443 ~~~~~~~~~~~
444 Added position_fn argument to rox.Menu.popup.
446 17-Jul-2003
447 ~~~~~~~~~~~
448 Cope with % escaped URIs.
450 04-Jul-2003
451 ~~~~~~~~~~~
452 Added italian translation in AppInfo.xml (Yuri Bongiorno)
454 26-Jun-2003
455 ~~~~~~~~~~~
456 When loading data from another application, pass the suggested leafname to
457 xds_load_from_stream().
459 04-Jun-2003
460 ~~~~~~~~~~~
461 Code tidying, thanks to pychecker.
463 26-May-2003
464 ~~~~~~~~~~~
465 Added fileutils module, which provides an interactive makedirs() function
466 (Richard Boulton).
467 Changed savebox module to use it.
469 16-May-2003 (Release 1.9.7)
470 ~~~~~~~~~~~
471 New icon (Geoff Youngs).
472 Added 'basedir' module for freedesktop.org Base Directory specification.
474 06-May-2003
475 ~~~~~~~~~~~
476 Added functions to read MIME database (Stephen Watson).
478 27-Jan-2003 (Release 1.9.6)
479 ~~~~~~~~~~~
480 Make the default window class the name of the application directory, not
481 'AppRun' (suggested by Albert Wagner).
482 Bugfix: With pygtk-1.99.14, only the first error message from a process
483         would be detected; this meant that ROX-Lib wouldn't detect when the
484         process quit (reported by joehill).
485 Bugfix: <hbox> and <vbox> layouts didn't work in the options box (Allen
486         Leonard).
488 22-Jan-2003
489 ~~~~~~~~~~~
490 If python is too old, raise SystemExit instead of quitting.
491 Ensure that True and False are defined.
493 16-Dec-2002
494 ~~~~~~~~~~~
495 Work around bug in some versions of pygtk that stopped the options window
496 from working.
498 12-Dec-2002 (Release 1.9.5)
499 ~~~~~~~~~~~
500 Upgrade Options box to new style.
502 11-Dec-2002
503 ~~~~~~~~~~~
504 Bugfix: If an option had an empty value, an exception was thrown on loading
505         (reported by Stephen Watson).
507 05-Dec-2002
508 ~~~~~~~~~~~
509 Cope with missing input_add_full.
511 25-Oct-2002
512 ~~~~~~~~~~~
513 Pygtk 1.99.12 seems to more-or-less work now (according to Alastair Porter), so
514 remove the warning for that so we can support RedHat 8.0.
516 20-Oct-2002 (Release 1.9.4)
517 ~~~~~~~~~~~
518 More warnings about old pygtk versions.
519 Added Dialog class (does ref-counting, like Window).
521 15-Oct-2002
522 ~~~~~~~~~~~
523 Trying to use ROX-Lib2 with earlier versions of python now gives a sensible
524 error message.
526 10-Oct-2002
527 ~~~~~~~~~~~
528 Make clicking on ROX-Lib itself work again (Christopher Arndt).
530 25-Aug-2002
531 ~~~~~~~~~~~
532 Updated findrox.py to use pygtk 1.99.13 -- update your programs!
534 25-Aug-2002 (Release 1.9.3)
535 ~~~~~~~~~~~
536 Switch to use new pygtk versioning system (requires pygtk 1.99.13).
538 19-Aug-2002
539 ~~~~~~~~~~~
540 Added 'processes' module, based on code in Archive, which makes controlling
541 subprocesses easier.
543 14-Aug-2002
544 ~~~~~~~~~~~
545 Bugfix: Changing the keys lost any builtin shortcuts (Gtk behaviour has
546         changed since 1.2).
548 08-Aug-2002
549 ~~~~~~~~~~~
550 Trap exceptions when activating menu items and report nicely.
552 07-Aug-2002
553 ~~~~~~~~~~~
554 Bugfix: Remember to call drop_finish() after a drag-and-drop operation.
556 05-Aug-2002 (Release 1.9.2)
557 ~~~~~~~~~~~
558 Renamed XDSLoader module to 'loading' (like 'saving').
559 Added 'mime' module for installing extra MIME information.
560 Bugfix: XDSLoader didn't handle the drag-drop signal, and so only worked for
561         widgets with their own implementation!
563 31-Jul-2002
564 ~~~~~~~~~~~
565 Show local variables in report_exception, and allow expressions to be
566 evaluated in the context of any frame.
567 Added StringSaver class.
569 25-Jul-2002
570 ~~~~~~~~~~~
571 Added applet module for creating ROX panel applets.
573 24-Jul-2002
574 ~~~~~~~~~~~
575 Bugfix: saving code didn't cope with missing images (reported by Musus Umbra).
577 21-Jul-2002
578 ~~~~~~~~~~~
579 If 'gtk2' isn't available, see if 'gtk' is actually the 2.0 version.
580 Added save_set_permissions to Saveable interface, allowing the default
581 save_to_file to preserve file permissions.
582 Changes to XDSLoader: xds_load_from_stream(name, type, stream)
583 replaces the old xds_load_data(data).
584 Loading files from remote filers works now.
585 Added much improved exception reporting system.
587 19-Jul-2002 (Release 1.9.1)
588 ~~~~~~~~~~~
589 Added support for translations.
591 18-Jul-2002
592 ~~~~~~~~~~~
593 License change to the LGPL (allows commercial programs to use this library).
594 Added AbortSave exception.
596 14-Jul-2002
597 ~~~~~~~~~~~
598 Saveable.save_to_file() should raise an exception when saving fails, rather
599 than returning 0. The return value is now ignored (note that raising an
600 exception will still work with 1.9.0).
601 toplevel_unref() ignores any arguments, so it is easier to use as a signal
602 handler.
604 12-Jul-2002 (Release 1.9.0)
605 ~~~~~~~~~~~
606 First release for Gtk+-2.0.