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