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