I pushed a huge refactoring to my repository. Among the highlights:
- list box selection works properly when pressing Cancel or upon errors
- history pane covers also methods
- single tab strip (to be reevaluated), transcript and workspace on the
same strip as browsers. this may reappear later as a bottom sidebar,
for now it's gone though.
- multiple tabbed windows
- sometimes faster, sometimes slower.
From the code point of view:
- GtkLauncher is still a singleton, but it is a subclass of GtkShell. i
removed all class variable state which is now private to each GtkShell
- BrowserState objects can tell a browser to select that item. This is
done with double-dispatch.
- new abstract classes for browser list widgets (which know how to
propagate the state to the browser) and browser tabs (to remove a lot of
boilerplate)
- new abstract class SourceFormatter for Source/* files
- workspace split into WorkspaceWidget and WorkspaceTab
TODO:
- inspectors, the SUnit browser and the debugger are broken. maybe next
week. :) to try you can just cp GtkClassBrowserWidget.st and hack.
- dynamic menus and toolbars for the tabs (kind of a prerequisite for
the debugger). gwen, i have no clue here. :) an obvious start is to
move _some_ menus and toolbar definitions from GtkVisualGSTTool to
GtkLauncherTab, then some design is needed.
- opening windowed browsers should pick a default selection like opening
tabbed browsers
- merge finder and state hierarchies, they are dups. the implementor
and sender tabs are a bit buggy and there is some duplicated code too.
i don't understand the GtkImageModel very well, so i didn't touch this.
- testcases have no hope of passing. i honestly didn't care. maybe it
was a bit too early. :/
Paolo
_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk