ARGH
[matches/honours.git] / research / transmission_spectroscopy / simulator / pgu-0.18 / CHANGES.txt
1 0.18.0
2 - added "clean" theme with experimental alpha support
3 - added pngs missing in "gray" theme
4 - added various checks for required style information
5 - added "down_offset" style for shifting button contents when clicked
6 - added support for PGU_THEME environment variable
7 - added code for handling widgets that need alpha blending
8 - bug fix in basic.is_color
9 - bug fix in basic.Label.set_font
10
11 0.17.0
12 - fixed a python3 compatibility problem with setup.py
13 - module html.py now working under python3
14 - added an "activate" signal to text input box
15 - removed some obsolete files
16 - removed html5.py example
17
18 0.16.0
19 - fixed the documentation generator script so it works with the new docstrings
20 - various fixes to make PGU compatible with python3
21 - better error handling in various places
22
23 0.15.0
24 - replaced use of __setattr__ with property and setter functions
25
26 0.14.0
27 - fixed: removed string exceptions
28 - fixed: converted docstrings to standard python format
29 - fixed: table properly expands vertically
30 - fixed: Widget.get_abs_rect now reporting correct rect
31 - fixed: unicode and font problems with button and label widgets
32 - fixed: various problems with handling of colors and alpha value
33
34 0.12.0 -
35 - active development and maintanence taken over by Peter Rogers
36 - bug fixes for pygame 1.8.1
37
38 0.11.0 -
39 - added: gui.TextArea - thanks to Clint Herron for this really nice widget!
40
41 0.10.6 - 
42 - fixed: python 2.5 compat issue
43 - fixed: mouse wheel doesn't send CLICK events anymore.
44 - fixed: reduced number of copy() operations (which was causing a bit of a memory leak)
45 - fixed: made ScrollArea creation work for more pixel perfect kinds of cases...
46 - fixed: added needed style info into style for dialog
47
48 0.10.5 - 
49 - added: support for style loading .ini files 
50 [link]
51 color: red
52 ..
53 [link:hover]
54 color: blue
55 .. etc ..
56 - changed: filedialog now uses the dialog class for most all of its
57 parts.  main style change is that
58 filedialog.title.label => dialog.title.label
59 and all other filedialog items are gone, except for 
60 filedialog.folder
61 - changed: filedialog style requirements to be much simpler.  in general
62 it just uses dialog and default labels, etc now.
63 - fixed: some excessive repaints going on due to use of chsize() before a paint().
64 now chsize() doesn't do anything until after the widget is painted at least once.
65 - fixed: some code in VScroll, HScroll that was causing extra resizes within tables
66 for no particularily good reason.
67 - fixed: menu not working bugs 
68 - changed: menu so that the cls of a menu doesn't change, it just keeps
69 the down pcls while down.
70 - fixed: bug where get_abs_rect() was wrong due to theme stuff... kind of a HACK
71 - added: shift-TAB for previous support
72 - fixed: bug where TAB could cause a crash if no non-container widget
73     was in focus at the time.
74 - changed: added support for width,height scaling for Image widgets
75 - changed: improved caching of style data so that complex screens repaint much quicker (removed .cache() method from style object)
76 - changed: misc changes to add better keyboard / nav support to many widgets (selects, sliders, etc)
77 - added: ability to move between widgets via arrow keys .. to stop this behaviour, make sure the
78 widget that has focus returns True to say that it "already used the event"
79 - changed: after an event() handler, user should return try if they used
80     the event.  otherwise a container may use the TABS, arrow keys, etc for
81     navigation or other purposes.  somewhat optional, will only impact
82     widgets that use tabs/arrow keys ATM.
83 - added: a Link widget
84 - fixed: bug where pygame would crash if full screen was toggled 
85 - fixed: some style issue in the select widget
86 - fixed: some rendering issues with sliders being off by a few pixels
87 - fixed: some icon styling bugs due to incorrect init order.. but i'll still probably
88     deprecate it anyways! ha!
89 - fixed: backgrounds of widgets that are getting repainted, etc.
90 - fixed: disabled backgrounds that didn't appear correctly
91
92 0.10.4 -
93 - fixed: bug in dialog.py -- directories with '!' at beginning were being sorted after '..'
94         thanks Jason Liu for this patch
95 - fixed: bug in high.py
96 - fixed: scrollbars scroller not the right size
97
98 0.10.3 -
99 - added: gui16.py and gui17.py some new fun gui examples.
100 - fixed: isovid doesn't work when using run_codes 'cause it gets
101 width and height from the wrong thing!
102 - change: PIL support removed from tileedit, the code is still in there if someone
103 wants to troubleshoot it
104 - fixed: in tileedit, line 109 should be assert mode in ("RGB", "RGBA"), not assert mode in "RGB", "RGBA" 
105 - fixed: when the scroll area is really short, etc, having 3
106 scroll arrows can take up too much room.  so now it only shows as many magic scroll
107 buttons as it can fit neatly.
108 - fixed: using app.paint() with custom event loop skips chsize related stuff
109 - fixed: install script error, where Vera.ttf was not installed
110 - fixed: timer.py bug where the first frame is really long sometimes
111         i think this is due to some kind of a pygame bug
112         also, when FPS are set to 0, the timer is now set to
113         go at "full rate" instead of give a div by zero error
114 - fixed: ScrollArea / SlideBox.widget = x doesn't work.
115
116 0.10.2 -
117 - fixed: gui11, when everything is removed scroll bar is removed
118     too soon!
119 - fixed: gui11, graphical crud shows up after removing stuff, sometimes
120 - fixed: Select can drop below window sometimes, and it looks bad.
121     now Selects that are at the bottom of the screen may go upwards.
122 - added: ProgressBar widget & documentation.
123 - fixed: if the widget in the scroll doesn't fill it up,
124     doing any scrolling causes a crash
125 - fixed: gui.Menus not working due to focus related fixes
126 - added: widget.connect gets *values, not just value to pass on
127     so that you can have multi-param methods.  See widget.connect
128     documentation for details.
129 - added: widget.send can send the event and the widget to
130     the reciever if the receiving fnc has the params named
131     _widget or _event or _code.  See widget.connect documentation.
132 - fixed: disabled items in scrollarea don't get alpha-ized due to 
133    alpha image that is being drawn to.
134 - fixed: scrollers don't scroll quite like normal scrollers do...
135 - fixed: slider size can get too small
136 - added: scrollbars added in arrows, so that they are scrollbars
137     instead of just sliders.
138 - fixed: sliders & scrollbars inconsistent, and don't look good
139 - fixed: weird border in scrollarea, sometimes...
140 - fixed: internal cleanup of ScrollBox, etc.  the scollers will
141     automatically appear when the sub-widget gets bigger, smaller, etc.
142 - fixed: when you click on a disabled widget, 
143     the click can slip to a non-disabled widget
144 - added: .disabled, .focusable attributes to widgets, 
145     see widget.widget documentation
146 - fixed: .add, .remove for Container, Table, Document so they
147     all work properly.  gui14.py adjusted to demo accordingly
148 - fixed: select to work, by adding an improper use of resize ;)
149 - fixed: a number of improper uses of resize()
150 - fixed: gui.Table to only resize() something a second time
151     if it _really_ needs to
152 - fixed: gui.Table to clear() out old rows properly
153 - fixed: gui.Widget so that chsize() would work a lot faster (thus
154     the gui13.py example is very nice and smooth now, doesn't feel like
155     it is lagging anymore.)
156 - fixed: ScrollBox a lot faster by using double buffering
157     this will, however, require a lot of memory for large buffers
158     but hopefully that won't be a problem, it makes examples/gui12.py blaze
159     during scrolling, whereas before it was quite slow even on my 2x3 GHz machine.
160 - fixed: "calling Button.event() before Button.paint() causes crash"
161 - fixed: "container.remove makes a widget stop working but not disappear"
162 - fixed: some docs about a bug whereby container.add(w) won't work     
163     after the app is running
164
165 0.10.1 -
166 - fixed setup.py to work on my system when installing pgu
167
168 0.10 -
169
170 - added in a Password widget -- submitted by Dr. L. Humbert <[email protected]>
171
172 - added in new documentation -- HTML only now.
173
174 - added jhofmann's tiled preview widget to tileedit
175         also included PIL support
176
177 - removed gui/background.py -- merged contents into Theme.  Made theme interface more cleanly seperated Widget.py
178 jhofmann: added tiled preview widget to tileedit
179
180 - zx64: in tilevid4,5 examples -- removed bold so that they work on more systems
181
182 2005-12-10 - 0.10-alpha-ludumdare-7-full-combat-version
183
184 I've released this one just hours before LD #7 so that you (and I) can both benefit from
185 some nice time saving features!
186
187 All this stuff is alpha and subject to change before a real release!
188
189 - fonts.py -- functions for loading bitmap based fonts (useful when TTF just doesn't cut it!)
190 - algo.py -- functions for path finding (useful for guards, etc in games)
191 - ani.py -- functions to help load animations into your vid objects (just plain useful)
192
193 A new script:
194 - levelfancy -- a script for taking a basic level and fancying it up -- try this in
195 examples:  ../scripts/levelfancy map.tga level.tga fancy.tga
196 then view each of those tgas with leveledit to see what is going on...
197
198 An old script:
199 I removed tganew ages ago, but I'm putting it back.  I like it.
200
201 During this contest I will be available in #ludumdare and #pygame for questions 
202 related to using pgu.  Have fun in the contest!  If you find any bugs or anything I'll be
203 glad to fix 'em and release a mid-contest version of pgu!
204
205 2005-12-01 - 0.9
206
207 I added INSTALL.txt with some install instructions, as well as instructions
208 for distributing pgu with your game/application.
209
210 **** Minor API Update ****************************************************
211 Sorry about this, but I realized after releasing 0.8 that the new theme loading
212 API wasn't very good...  (And had some bugs to boot!)
213
214 This update will be in comparison to 0.7, since I don't think many people 
215 downloaded 0.8 yet.
216
217 For using the default theme, the API remains the same (do nothing special).
218
219 For using an custom theme:
220
221 It was:
222 gui.theme.load("gray")
223
224 It is:
225 theme = gui.Theme("gray")
226 app = gui.App(theme=theme)
227
228 Also you can use your own fully custom theme (oooh!)
229 theme = CustomTheme()
230 app = gui.App(theme=theme)
231 **************************************************************************
232
233
234 2005-11-30 - 0.8
235
236 phil: fixed tileedit and leveledit to use new theme loading API
237 phil: fixed tabbing bug where last item would not get tabbed to
238 phil: fixed setup.py to install pgu.gui
239 phil: fixed pgu.gui to import pygame.locals
240
241 **** Minor API Update ***************************************************
242 The API for loading a custom theme has been changed...
243
244 It was:
245 gui.theme.load("gray")
246
247 It is:
248 app = gui.App()
249 app.theme.load("gray")
250
251 Also you can use your own fully custom theme (oooh!)
252 theme = MyTheme()
253 app = gui.App(theme=theme)
254 *************************************************************************
255
256 Cthulhu32: found bug in leveledit where file name isn't picked correctly
257
258 2005-11-18 - 0.7 
259
260 **** Crazy API Update ****************************************************
261 Theme decorations are now seperate from the Widgets.  Thus:
262   
263   * Widget._resize() was removed
264   * Widget.getspacing() was removed
265   * Widget.resize() returns None was changed to Widget.resize() returns w,h.  
266     The container is responsible to do this:
267         widget.rect.w,widget.rect.h = widget.resize()
268   * Widget.chsize() was added, it requests that a widget be re-resize()ed --
269     similar to Widget.repaint()
270   * To disable the theme decorations on a widget:
271         widget = Widget(decorate=False)
272
273 **************************************************************************
274         
275 - phil - added chsize() method which requests that a widget be re-size()ed.  (similar to repaint() or reupdate() except for the resize() method
276 - added default font (Vera)
277 - removed non-working hide,show calls
278 - fdarling - added a new table class that works a bit cleaner.  should
279 not have any noticiable API breaks.
280 - fdarling - reorganized pgu.gui to be a package
281
282 - added input type='file' to pgu.html
283 - fixed Toolbox bug (Toolbox.value = x wasn't working right)
284 - create circles in tileedit
285 - flip bkgr/tiles in leveledit
286
287 - tileedit / leveledit - illume added a feature where by you can check
288 a box to "auto-save" your tiles when you blur the window.  leveledit
289 will auto-reload those changes.
290    
291 - since the getwidths() feature was broken anyways, it has been removed   
292 - when you create your main container for your app you _may_ need to
293 add align=-1, valign=-1 to get it in the top right corner the way
294 it used to be      
295       
296 - phil -- added Vera.ttf to theme, did some cleanup
297 - gal koren -- added a FileDialog, List,  misc patches, etc, added gui11, gui12 as demos of new features
298 - fdarling -- fixed some UI issues in Menu
299 - gal koren -- fixed a focus bug
300 - exampes, gui9 - -save/saveas are broken -- fname is set to a widget
301
302 2005-10-21 - 0.6
303 - gal koren -- submitted an excellent ScrollArea widget to pgu.gui -- see it demoed
304 in examples/gui6.py
305 - added default size to HSlider, VSlider in the theme
306
307 2005-10-07 - 0.5
308 - fixed you can select a tile outside of the tile area by using the up arrow once .. 
309
310 - fdarling -- fixed some UI issues with menus and sliders and did some general code cleanup
311 - fdarling -- use None instead of 0 for nulls throughout the code
312
313 - added to leveledit/tileedit: "are you sure you want to quit" / "you still have files unsaved..." for before "quit" or "open" or "new"...
314 - added open/new/saveas/save, etc to tileedit/leveledit
315 - removed tganew.  update docs to reflect removal of this artifact
316
317 - fixed gui CLICK events so that they only occur when hovering over the widget
318 - fixed gui hovering so that when a mouse button is down, the mouse won't hover over widgets that aren't in focus
319 - fixed gui so that tabbing works a bit better
320 - fixed gui so that QUIT event is only sent when no (modal) windows are being displayed.
321
322 - added isovid, hexvid support to scripts/leveledit
323 - added pgu.high
324 - added pgu.isovid
325 - added pgu.hexvid
326 - added pgu.timer.Speedometer
327
328 - fixed gui.Button so that width,height works
329 - fixed html so that valign=middle (not center) works
330 - added better css for labels throughout gui, see new config.txt
331
332 - added shift+arrows to leveledit to move view by 1/8 screen
333 - added ctrl+arrows to leveledit to move view by 1 screen
334 - add scrollbars to leveledit
335 - fixed tutorial docs in gui10
336 - fixed bug where sprite wouldn't work without an ishape
337
338 2005-08-27 - 0.4
339 - fixed leveleditor so it displays backgroud / grid
340
341 2005-08-23 - 0.3
342 Bug Fixes:
343 - fixed do_br in html
344 - fixed rendertrim in html (no longer modifies the passed in rect)
345 - removed some debugging prints from html
346 - engine no longer requires screen for Game.run()
347 - ColorPicker in examples now works faster (doesn't repaint whole screen)
348 - fixed most of the crashes related to widgets going outside of their parent surface (when a widget is placed partly (or totaly) out of the screen: crash!) - input should move to the left when you max it out (gui.Input.paint)
349 - explain in tutorial/docs how to use tileedit and leveledit under windows
350 - fix .txt files so that they work under windows notepad
351 - fix tileedit, leveledit to work with new gui module
352 - make pcls work correctly for tool, input, keysym
353 - some not-so-standard-ascii characters make gui crash when inputted (gui.Input.event)
354 - when you tab after the final widget (at least in ReciPy): crash! (gui.Container.next)
355 - when you add something to a select (after it is already displayed): crash! (probably needs a resize)
356 - tab to next widget doesn't always work
357 - cleaned up the tiles.tga for the tilevid examples
358
359 Misc Changes:
360 - change container.resize to give out proper width/height depending on 
361 the widgets contained, or style.width/height if appropriate
362 - refine the table auto-sizing algorithm a bit more
363 - make document work with resizing sub widgets
364 - h1,h2,h3 css in themes 
365 - ul,li,ol work
366
367 API changes:
368 - in Tables, use .td() instead of .add() except when you want to add an object
369 as a "table cell" (it will be expanded to fill the cell)
370         t.td(w,colspan=2)
371 - widgets are not given a size in __init__, they are given a size by resize(), and their rect_margin, etc are created using _resize()
372 - now you can set up margins, borders, padding, just like in CSS2 (more or less).  You may also
373 assign whole groups by omitting the _top/_right/_bottom/_left
374         e = Widget(style={'border_left':2,'border_color':(255,0,0),'margin':4})
375 - backgrounds respond to .pcls
376 - Box (background) widget removed and replaced with a CSS2 Box widget.  The Box widget is used
377 by Tables for tds.
378 - Background widget created to replace old Box widget.  
379 - some style parameters like padding_* must now be passed via the style dict:   
380         e = Widget(style={'padding_left':4})
381 - change getsizes api to getwidths()
382 - clean up table API -- colspan, rowspan, row, cols, etc.
383 - make table sizing work such that:
384         - table.style.width, height force that min/max size
385         - suggested width/height only _offers_ it to be that big
386         - td.cell_width/height force min/max size, unless the min is greater
387                 than that size, then it will have to be bigger
388
389 2005-08-02 - 1.0
390  - add default palette to tileedit code
391  - add #s for default codes in leveledit
392  - rewrite README.txt
393  - add a leveledit / tileedit / tganew documentation page
394  - rename tilecollide class -- merged into tilevid class
395  - finish doc generation
396  - make sure theme loading works in all cases ./$theme ../data/themes/$theme /usr/share/pgu/$theme
397  - gui - make event, not _event work with tut10
398  - get rid of /docs/tiles-samples and use the space shooter stuff
399  - write documentation 
400  - update tutorials to use my ## format
401  - get text wrapping to work with paragraph breaks
402  - antialias fonts
403  - move /docs/examples to /examples
404  
405 2005-07-?? - 1.0
406  - combined PGU, PGL and KJV into one package
407  
408 2004-07-23 - "pgu" 1.1
409  - command line interface improved considerably
410  - use .ini files for init

UCC git Repository :: git.ucc.asn.au