(name 'OmniBrowser-cwp.249' message 'The message used to get the name of a domain node is now configurable through the metagraph. If no displaySelector is specified, it defaults to #name.' id 'e4be389a-4389-40e9-af9b-d5c32ed54201' date '9 December 2004' time '12:17:56 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.248' message 'Minor refactoring of the protocol for creating and opening browsers.' id '5ed35ae3-402e-4d93-8548-934296fde630' date '6 December 2004' time '11:24:46 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.247' message 'Fix misspelled method name.' id '228df3ef-32d6-40fd-813b-5b957db5adf4' date '5 December 2004' time '8:34:25 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.246' message 'Added a utility function to create actions that appear both in menus and as buttons.' id 'ef10871b-06e0-4758-992e-21decc59b10b' date '5 December 2004' time '6:55:49 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.245' message 'Cleaned up the protocol for creating and opening browsers, and added tests to ensure that the public protocol works correctly.' id '525290c6-42ad-4424-9eee-21c5e98701ae' date '5 December 2004' time '6:40:34 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.244' message 'Refactoring: clarified the flow control of OBDefinitionPanel refresh.' id '1595932c-dac0-44c9-b32d-e382aa0f1481' date '5 December 2004' time '2:49:02 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.243' message 'Made OBDefinitionPanel display a doubly-thick red border when the definition has been changed elsewhere and the editing pane has unsaved changes.' id '7e1046cd-3fe9-416a-84a3-9b69bdd1a2c5' date '5 December 2004' time '2:07:03 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.242' message 'Removed redundant refresh of the navigation panel when refreshing the browser.' id 'e3c62a4f-f812-42bf-aa9b-4cbce13a80dc' date '5 December 2004' time '1:00:14 pm' author 'cwp' ancestors ((name 'OmniBrowser-avi.241' message 'Use text font for buttons.' id '9e8907ca-4249-11d9-a1c9-000a95db7844' date '29 November 2004' time '9:59:54 pm' author 'avi' ancestors ((name 'OmniBrowser-cwp.240' message 'OBBrowser now provides a default light gray color.' id 'bd03b029-40ec-11d9-bfb4-000a95702430' date '27 November 2004' time '10:22:31 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.239' message 'Added the ability for browser classes to be different colors.' id 'a75bcbe0-40eb-11d9-bfb4-000a95702430' date '27 November 2004' time '10:14:45 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.238' message 'Increased the step time for OBPaneScroller so that the delay between a click and panes being reclaimed is shorter.' id 'd6dc8554-3f5a-11d9-9f66-000a95702430' date '25 November 2004' time '10:25:36 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.237' message 'Fixed pane reclamation behavior so that it even reclaims visible but empty panes that have no meta node. (ie, we reclaim columns that can *never* contain items, not just ones that happen to be empty.)' id '24d4e0aa-3d1b-11d9-9234-000a95702430' date '23 November 2004' time '1:44:37 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.236' message 'Added preliminary code to reclaim panes that are empty and have been scrolled off the right hand side of the column panel.' id 'b45dd56c-3c3f-11d9-97d4-000a95702430' date '21 November 2004' time '11:33:48 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.235' message 'Refactoring: extracted layout of panels from OBBrowser to OBMorphicPanelLayout. Also did some minor renaming of methods so that morphic-specific code is obvious.' id '8196447f-3b80-11d9-a509-000a95702430' date '21 November 2004' time '12:45:09 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.234' message 'Refactoring: the column panel is no longer stored in a separate instance variable of OBBrowser; it''s now stored in the panels ivar with the rest of the panels.' id 'f9d47fe6-3b6b-11d9-a509-000a95702430' date '20 November 2004' time '10:18:12 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.233' message 'Refactoring: OBColumnPanel no longer holds a reference to the OBPaneScroller that displays its columns. Instead, it serves as a model for the scoller, and calls #changed: to communicate with it. This follows usual pattern for Morphic interfaces, and clears the way for GUI indepdencence - MVC, Tweak, Seaside, wxSqueak, Cocoa etc interfaces are now possible.' id 'f5c43fe0-3920-11d9-833e-000a95702430' date '18 November 2004' time '12:16:10 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.232' message 'Refactoring: Column management has been moved out of OBBrowser. OBColumnPanel is now responsible for everything to do with columns.' id 'ba233abc-3858-11d9-85ec-000a95702430' date '17 November 2004' time '12:22:51 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.231' message 'Refactored OBBrowser to lazily initialize its metagraphs. Also renamed MetaGraph to Metagraph.' id '4270195e-3131-11d9-84fa-000a95702430' date '7 November 2004' time '9:52:42 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.230' message 'Updated tests to pass in 3.8, rather than 3.7.' id '67f8acaa-307c-11d9-a8c7-000a95702430' date '7 November 2004' time '12:18:05 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.229' message 'Bugfix: OBBrowserTest>>textMorph now detects OBPluggableTextMorph rather than plain PTMs.' id '5429933e-3074-11d9-a8c7-000a95702430' date '6 November 2004' time '11:20:16 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.228' message 'OBDefinitionPanel now catches certain command keys and passes them along to the model for appropriate handling.

Also fixed a display bug that made filter buttons get cropped.' id '6858d56d-2c96-11d9-949f-000a95702430' date '2 November 2004' time '1:14:09 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.227' message 'Fix definition panel menus so that we don''t offer any options we can''t support.' id 'ce68c742-2636-11d9-b843-000a95702430' date '24 October 2004' time '11:34:41 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.226' message 'Made the opening of browsers go through signaling an OBBrowseRequest. This way tests and non-Morphic interfaces can catch the notification and take some appropriate action.' id '6f3f7f8e-20a7-11d9-b2a6-000a95702430' date '17 October 2004' time '9:45:48 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.225' message 'Bugfix: OBDefinition panel no longer discards edits when refreshing.' id '6095b484-ec3c-4577-9ae2-5da5b9fa3bef' date '23 September 2004' time '11:42:57 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.224' message 'Bugfix: When a browser is refreshed, panels now get updated too.' id 'ba05c776-c0ac-4f85-9534-ae12ab521923' date '23 September 2004' time '11:20:17 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.223' message 'Added support for changing the current definition via actions.' id '4d995703-495a-4034-871e-7516d95a4789' date '17 September 2004' time '1:02:07 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.222' message 'Action menus now put lines in between actions provided by different actors.' id 'c20553a9-6acd-4439-b999-dddb9735d2a6' date '14 September 2004' time '7:13:08 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.221' message 'Added the #graph:root:selection convenience method for launching browsers.' id 'c1f62efe-2990-415d-9b46-5d7f02fe4b2c' date '10 September 2004' time '4:56:21 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.220' message 'Reorganized the instance creation methods of OBBrowser so that subclasses can be created to provide constructors with customized default configurations.' id '256699f9-9a1e-48d5-9cdd-e00702e7669d' date '31 August 2004' time '6:16:06 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.219' message 'Removed obsolete references to OBClassReference.' id 'cb6f9a3f-72eb-4ec6-875b-386e01faebeb' date '29 August 2004' time '6:53:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.218' message 'Refactored OBButtonPanel into an abstract class with OBVarButtonPanel implementing it''s old behaviour.

Created OBFixedButtonPanel as a variant that has a fixed set of buttons that are enabled and disabled as the selected node changes.' id '73f31ffa-cd92-4e33-944b-49f90050daec' date '29 August 2004' time '4:31:25 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.217' message 'Added a facility to allow nodes to change the title of the browser window when they are selected. Now any node class can override #title to return a string that will be used in the window title.' id '1cd2b9bb-ea91-411f-94f7-ee68f7e17c31' date '28 August 2004' time '12:22:53 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.216' message 'Changed OBBrowserTest to use a fixed number of panes when building the browser.' id 'a6bd25cb-e8c9-457b-8060-3b1fdc05e974' date '26 August 2004' time '11:43:31 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.215' message 'Removed OBActionTest, as it was only relevant to code browsers. Switched OBPanelLayoutTest to use a fake browser rather than a code browser.' id 'fd11301d-2508-4408-a504-764a525fc066' date '26 August 2004' time '1:49:44 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.214' message 'Removed a few more unused classes - OBMetaNodeNode, OBDictionaryNode, OBAssociationNode.' id '627ee2b5-9233-4069-8e81-b75b29713b95' date '25 August 2004' time '9:33:48 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.212' message 'Removed the MetaGraph browser since it never worked very well.' id '0188b636-2171-478a-bf15-7a12536653c5' date '25 August 2004' time '5:38:13 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.208' message 'OBFakeBrowserTest was mistakenly moved to OB-Code. This change moves it back.' id '4bbc42c2-3263-4dc2-b754-2aef9a030ecb' date '30 May 2004' time '7:30:44 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.207' message 'Moved the code browsers into a separate package.' id '3944b824-5db5-4b08-be3b-b02ddc4a8909' date '27 May 2004' time '1:32 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.206' message 'Factored the filesystem code into it''s own package.' id '568395d8-8f3e-4d52-a830-427eb879cc06' date '27 May 2004' time '12:46:59 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.205' message 'Minor fixes to allow the tests to run correctly in a stock 3.7b image with the lastest PackageInfo.' id 'e98e3451-afd2-45c5-8a1b-2a9313d9ae86' date '27 May 2004' time '11:38:44 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.204' message 'A few minor changes to make the Package Browser nicer:

- Use PackageOrganizer to fetch the list of packages
- Sort the packages by name.
- PackageInfo>>hidden merged into upstream package.' id 'd0339904-eb37-4a36-8750-cda5a1b7c1c6' date '27 May 2004' time '11:21:42 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.203' message 'A couple of test bugs fixed:

- OBImageContextTest now compiles OBFakeClassA>>isFake which is required for the foreign browser tests.

- OBClassActionTest>>testRename expects a class reference rather than a class name.' id '241aea2e-e7ac-4a50-9eaa-56c7be31564d' date '17 May 2004' time '5:38:48 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.202' message 'Merged in Hernan''s work on actions.
- Actions can now be give keystrokes.
- Actions can now have MenuIcons.' id 'aa2554b0-9485-421a-b229-c52f1243c8de' date '17 May 2004' time '5:25:57 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.201' message 'Bugfix: renaming a class no longer causes a walkback.' id 'e617f2ed-5b92-46bd-bd2c-ebacfd5d1f18' date '16 May 2004' time '8:07:47 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.200' message 'Slight tweaks to Hernan''s new actions, mostly so that they will work properly when invoked on a metaclass. All tests pass now.' id '3af7dafd-aae6-4a18-bbbe-9fcab97c9f50' date '14 May 2004' time '5:21:59 pm' author 'cwp' ancestors ((name 'OmniBrowser-hpt.199' message 'added a lot of menu actions to OBClassCategoryNode, OBClassNode, OBMethodCategoryNode and OBMethodNode.' id 'f940acba-3e19-284c-b6a3-ac002d5cef48' date '14 May 2004' time '2:56:39 pm' author 'hpt' ancestors ((name 'OmniBrowser-cwp.198' message 'Bugfix: OBColumn now sends #okToChange before jumping to a new node.' id 'f6efd6b1-d083-4160-a73d-d781ce5e9df0' date '14 May 2004' time '9:51:35 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.197' message 'Integrated Hernan Tylim''s ''find class...'' action.' id 'b739bfd3-4204-4e35-ac22-2a79f6878388' date '14 May 2004' time '9:02:21 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.196' message 'Fixed a whole bunch of bugs which prevented dealing with extensions in the package browser properly. ' id '8325b054-abed-42d2-bdbd-27225caa76e8' date '13 May 2004' time '1:51:32 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.195' message 'Attempting to subclass a non-existent class now offers to correct the class definition rather than causing a walkback.' id 'c37d7099-3fbf-4d99-bb3e-e7606e1e0d13' date '11 May 2004' time '12:08:41 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.194' message 'Bugfix: The default action for OBChoiceRequest now returns nil if no item is selected in the PopUpMenu. It this used to cause a walkback.' id '80cb12c3-eaee-42fe-9ad2-9d50cfeb50f8' date '11 May 2004' time '12:03:35 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.193' message 'Bugfix: OBMethodVersion now parses versions of class-side methods in the changes file properly.' id '6d4a81cb-13a6-4c82-907a-1ec151da114b' date '11 May 2004' time '11:49:19 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.192' message 'Removing and renaming metaclasses works properly now. ' id '6e128d1b-6987-4f49-a92e-ada98a9a1f40' date '11 May 2004' time '10:24:16 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.191' message 'Clicking ''Cancel'' in the ''Are you sure you want to remove this class?'' confirmation dialog now actually cancels the removal.' id 'fee91859-5200-4bac-8021-6d6116f2ec13' date '11 May 2004' time '11:11:59 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.190' message 'Bugfix: It''s now possible to create classes using the package-specific class definition used by the package browser.' id '3577e1f3-6ef3-454b-a4bb-529de4a28d4a' date '11 May 2004' time '10:58:55 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.189' message 'Bugfix: creating a method with the ''-- all --'' category selected no longer creates a second ''-- all --'' category.
' id '482d2b8d-f225-4fd1-ae05-51eecb662a2e' date '10 May 2004' time '3:06:08 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.188' message 'Bugfix: Class categories now get displayed immediately after they are created.' id '642f8d92-d06b-45f2-aada-35baee1fabb2' date '10 May 2004' time '2:25:42 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.187' message 'Changed the template for creating classes in the package browser. It now includes a separate indication of the package name.' id '3acd2f40-a6d7-46ac-9018-2dc0e26c9e57' date '2 May 2004' time '3:37:28 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.186' message 'Incorporated fixes submitted by Bernhard <bernhard@pieber.com>. Couldn''t do a direct merge because the text editing model changed to much. ' id '29363706-7c8b-11d8-9d66-000a95702430' date '23 March 2004' time '12:30:14 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.185' message 'Refactoring: OBTextPanel has been renamed OBDefinitionPanel as it now works with definitions rather than straight texts. In simple cases, nodes can be their own definitions, but OBClassDefinition and OBMethodDefintion now handle the complexities of displaying and editing code defintions. This simplifies the implementations of the corresponding nodes and the node hierarchy. ' id 'ae997545-7c86-11d8-9d66-000a95702430' date '23 March 2004' time '11:58:10 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.184' message 'Bugfix:  a method created when the ''-- all --'' psuedocategory is selected now gets classified under ''as yet unclassified'' rather than a new category named  ''-- all --''.' id 'b83667bb-7bbf-11d8-86b4-000a95702430' date '22 March 2004' time '12:13:56 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.183' message 'Bugfix: Opening the context menu for an empty pane no longer causes a walkback. ' id 'e0641dc0-7bbe-11d8-86b4-000a95702430' date '22 March 2004' time '12:07:54 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.182' message 'Refactoring of the code browsers - now classes are represented by instances of OBClassReference, rather than symbols. ' id '5dd8ca38-7bbe-11d8-86b4-000a95702430' date '22 March 2004' time '12:04:15 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.181' message 'Added support for browsing class extensions in package browsers.' id 'd7aba212-77ce-11d8-8d89-000a95702430' date '16 March 2004' time '11:52:07 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.180' message 'Bugfix: OBDirectoryResource>>setUp no longer throws a primitive failure error if the directory already exists.' id '9cbd7b98-77a9-11d8-8d89-000a95702430' date '16 March 2004' time '7:25:37 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.179' message 'Defining classes is now handled by code contexts.

As a result defining classes in package browsers is handled more transparently. The user doesn''t need to include the package prefix in the class category name, this is done automatically.' id 'ab0245a2-7784-11d8-8d5d-000a95702430' date '16 March 2004' time '3:01:09 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.178' message 'Bugfix: When opening a chasing browser on a method, OBMethodNode would pass its self as the root for the new browser. This caused the metanode for that method to be changed, resulting in come cool but incorrect behaviour.

OBMethodNode now passes a copy of its self to the new browser.' id '4e2e2ec9-76de-11d8-86f0-000a95702430' date '15 March 2004' time '7:10:17 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.177' message 'Bugfix: foreign extension method categories and methods no longer appear in package browsers.' id '6be5c046-76db-11d8-86f0-000a95702430' date '15 March 2004' time '6:49:38 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.176' message 'Implemented a method inheritance browser, and an action for opening it on a given method.' id 'edb55675-763d-11d8-860b-000a95702430' date '15 March 2004' time '12:02:16 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.175' message 'Instance variables now appear in the ''chase variables'' browser in alphabetical order.' id '029da63e-761a-11d8-860b-000a95702430' date '15 March 2004' time '7:45:09 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.174' message 'Added support for class variables to the ''chase variables'' browser.' id 'b6471477-7619-11d8-860b-000a95702430' date '15 March 2004' time '7:43:01 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.173' message 'Bugfix: Contexts no longer raise errors if a node tries to retreive the source code or messages sent by a non-existent method.' id '7e709376-7608-11d8-860b-000a95702430' date '14 March 2004' time '5:39:46 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.172' message 'Bugfix: deleting the root node of a browser no longer causes a walkback. The affected browser just shows empty panes.' id 'c8677288-7606-11d8-860b-000a95702430' date '14 March 2004' time '5:27:31 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.171' message 'Bugfix: When examining a block, OBProtocolMock will now answer the message recorder if no answer to a message has been specified, rather than its self.' id 'fb8072d4-75f7-11d8-860b-000a95702430' date '14 March 2004' time '3:41:34 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.170' message 'Bugfix: Refreshing a browser with an edit in progress no longer causes the changes to be discarded.' id '0b4708d4-75f6-11d8-860b-000a95702430' date '14 March 2004' time '3:27:41 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.169' message 'Bugfix: The ''chase senders'' and ''chase implementors'' metagraphs were incorrectly sending #senders to message nodes. Now they send #sendersOfMessage, which is the correct behaviour.' id '35774238-75f2-11d8-860b-000a95702430' date '14 March 2004' time '3:00:14 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.168' message 'Improved the test environment for browsers. When examining the contents of PluggableListMorphs, we only trigger refreshes when simulating user actions, so that we can catch bugs caused by the PLM not acurrately reflecting the contents of the column.

OBColumn>>refresh now always calls self changed: #list, since the before and after list comparison won''t catch items that have been renamed. 

OBTextPanel>>accept:notifying: now properly resumes any notifications it catches.

OBImageContext and OBPackageContext now properly sort the results of #methodsForClass.' id '4b5bfc70-75ee-11d8-860b-000a95702430' date '14 March 2004' time '2:32:13 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.167' message 'Implemented a versions browser.' id 'dfee4da4-7576-11d8-ad48-000a95702430' date '14 March 2004' time '12:17:23 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.166' message 'Moved the fake sources and changes files to OBMethodVersionTest and removed OBFakeSourceFileArray.' id 'a6140236-7562-11d8-ad48-000a95702430' date '13 March 2004' time '9:52:36 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.165' message 'Got rid of the essentially useless class OBChangeLog. It''s functionality is now in OBMethodVersion.' id '8a15e9ba-752b-11d8-89e9-000a95702430' date '13 March 2004' time '3:18:06 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.164' message 'Implemented scanning the source files for method versions. This is a first step toward a VersionsBrowser.' id 'ce92fdf7-7521-11d8-89e9-000a95702430' date '13 March 2004' time '2:08:26 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.163' message 'Bug fix: OBButtonPanel>>nodeChanged now calls #morph instead of accessing the ivar directly, since opening a browser on a particular node involves selecting nodes before the browser is open and therefore before the morphs have been created, leading to a walkback.' id '2500c665-73b9-11d8-9ca8-000a95702430' date '11 March 2004' time '7:06:43 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.162' message 'Bugfix: Buttons now use the standardButtonFont set in Preferences. Updated the tests to cope with the fact that button lables are now morphs rather than strings.' id 'b9b0577c-7311-11d8-81fe-000a95702430' date '11 March 2004' time '11:08:17 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.161' message 'Renamed OBAccessBrowser to OBAccessBrowserTest. (How did that get left off?)' id 'd5405063-730e-11d8-81fe-000a95702430' date '11 March 2004' time '10:47:35 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.160' message 'AccessBrowser improvements:

Improved the test cases: the fakes no longer use #first, which is way too common a selector.

Fixed a bug that caused the senders chain to loop.

Made the ''chase ivars'' action available to method category and method nodes as well as class nodes.
' id '306f3ca1-730e-11d8-81fe-000a95702430' date '11 March 2004' time '10:42:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.159' message 'Node refactoring: OBMessageNode is now a subclass of OBMethodNode, and OBSelectorNode has been removed.' id 'dfe1539e-7307-11d8-81fe-000a95702430' date '11 March 2004' time '9:57:46 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.158' message 'Implemented a browser for chasing instance variables.' id '0be5dd84-72f8-11d8-81fe-000a95702430' date '10 March 2004' time '8:04:28 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.157' message 'Merged in Avi''s refactoring of column to make the currently selected node more abstract. ' id '1ccc786a-72e8-11d8-81fe-000a95702430' date '10 March 2004' time '6:10:24 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.156' message 'Added actions for opening a standard system browser. ' id '004a2118-725c-11d8-907b-000a95702430' date '10 March 2004' time '1:27:27 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.155' message 'Implemented OBButtonPanel, which creates buttons based on the available actions.' id '0d74a3e3-7253-11d8-907b-000a95702430' date '10 March 2004' time '12:23:24 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.154' message 'Reorganized panel classes, and fixed a bug in laying out fixed-height panels.' id '446d5b1d-7187-11d8-8f18-000a95702430' date '9 March 2004' time '12:04:38 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.153' message 'Refactor the window-building code in OBBrowser to be able to handle an arbitrary list of panels. This is the first step towards adding annotations and optionalButtons panes.' id '27dc0646-717b-11d8-8f18-000a95702430' date '9 March 2004' time '10:37:57 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.152' message 'All code nodes now descend from OBCodeNode.' id '95a88002-70b7-11d8-ac21-000a95702430' date '8 March 2004' time '11:17:59 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.151' message 'Added labels to the metagraphs for code browsers.' id '2c58f7ba-70ab-11d8-ac21-000a95702430' date '7 March 2004' time '9:49:09 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.150' message 'Added a ''name'' iVar to OBMetaNode, for more intelligible browsing of metagraphs.' id 'ead86822-6fef-11d8-925f-000a95702430' date '7 March 2004' time '11:28:43 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.149' message 'Added class comments and classified some unclassified methods.' id '329e01c4-6ee2-11d8-aa8b-000a95702430' date '5 March 2004' time '3:17:59 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.148' message 'Merged in Avi''s refactoring of column creation to allow column polymorphism.' id 'bf38559a-6ec0-11d8-b34e-000a95702430' date '5 March 2004' time '11:18:32 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.147' message 'Commented the kernel classes.' id 'aad1768a-6ebf-11d8-b34e-000a95702430' date '5 March 2004' time '11:10:49 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.146' message 'Reordered the actions for method nodes so that the more frequently used items (I hope) are at the top of the list.' id 'e58bb870-6db0-11d8-a56a-000a95702430' date '4 March 2004' time '2:52:34 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.145' message 'Rewote the remove-method action to check for senders before removing the method, the same way the standard browser does.' id '6d5ac18f-6db0-11d8-a56a-000a95702430' date '4 March 2004' time '2:49:12 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.144' message 'Refactored OBChoiceRequest to be able to handle choices other than selectors.' id 'ff7eaed8-6daa-11d8-a56a-000a95702430' date '4 March 2004' time '2:10:20 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.143' message 'Minor fix: OBMethodCategoryActionTest>>testCompileScaryMethod no longer actually compiles the method, and thus doesn''t make the package dirty.' id 'e8c69a64-6da7-11d8-a56a-000a95702430' date '4 March 2004' time '1:48:13 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.142' message 'Added a sanity check for overriding a method of the Metaclass protocol.' id 'ec18004e-6da5-11d8-a56a-000a95702430' date '4 March 2004' time '1:34 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.141' message 'Various small fixes to make working with code browsers more convenient:

- OBBrowser>>initialize adds items to the ''open...'' menu for opening the standard browsers.

- Added a ''browse'' action to OBPanelNode that opens a package browser on that package.

- Fixed a few ancestry bugs.

- Class categories identical to the package name are now supported by the extensions to PackageInfo and OBClassCategoryNode.' id 'ec94624d-6d9c-11d8-a56a-000a95702430' date '4 March 2004' time '12:29:35 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.140' message 'When a method is dropped on a method category, it no longer selects its self, but signals OBListChanged instead. This makes categorizing ''as yet uncategorized'' methods much more pleasant.' id '398c1672-6ce6-11d8-b421-000a95702430' date '3 March 2004' time '2:41:47 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.139' message 'Refactored #isAncestorOf: to use double dispatch. Simple cases can still override #isAncestorOf:, which is done in the file system nodes, but domains with more complex ancestry can now be made more robust, as is the the case for the code nodes. 

Dragging between #Image and #System browsers works now. ' id '66ec6244-6ce4-11d8-b421-000a95702430' date '3 March 2004' time '2:28:44 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.138' message 'Simplification of the metagraph. Since nodes now remember their metanodes, it''s no longer necessary to search for them using #childFor: and supporting methods. Also, #nodesForParent: is simpler, because it only gets called on the appropriate metanode, not all of them.' id 'f5023024-6cd3-11d8-b421-000a95702430' date '3 March 2004' time '12:31:01 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.137' message 'Started refactoring of the metagraph. This commit removes the ''nodeClass'' instance variable from OBMetaNode. The code that relied on this has been updated to cope:

Only unary selectors are allowed in the metagraph. The only user of 1-argument selectors was the metagraph metagraph, which sent the #fromAssociation: constructor to the node class. Now it sends #children to the OBAssociationNode, which sends #asNode to its value.

OBNodeActors used the node class of their metanode to gather class-side actions. Now they must be explicitly supplied with a node class to enable class-side actions.

OBNode now has an instance variable ''metaNode,'' which refers to the metaNode which created it, since we can no longer check to see if it''s a member of the metanode''s nodeClass.' id 'aae5eac0-6cce-11d8-b421-000a95702430' date '3 March 2004' time '11:53:09 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.136' message 'Factored the double dispatch scheme used for node drag and drop into OBNode. Now node classes only have to implement #dropSelector to receive drops, and a #dropOnFoo: method to be dropped.' id 'eb9dfc48-6cbd-11d8-b421-000a95702430' date '2 March 2004' time '9:53:16 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.135' message 'Respect font preferences:

- OBTextPanel uses the standard code font

- OBButtonModel uses the standard button font' id '05865b2f-6cba-11d8-b421-000a95702430' date '2 March 2004' time '9:25:21 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.134' message 'Cleaned up tests to be less fragile with regard to environments:

- OBRadioButtonBarTest>>testLayout was dependent on the font used for buttons. Now it explicitly tests that the left and right edges of adjacent buttons match, without worrying about where they are.

- OBImageContextTest>>initialize now creates an extension method on OBFakeClassA, since the test needs to test that even extension methods are found by the context.

- OBContextTest now avoids creating a new method category in OBFakeClassA.' id '79a84981-6cb6-11d8-b421-000a95702430' date '2 March 2004' time '8:59:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.133' message 'Browsers will now refresh only if they are actually visible in some World.This is to prevent errors from invisible, but not yet garbage collected browsers.' id 'ea4268d4-6bdf-11d8-8cb7-000a95702430' date '1 March 2004' time '7:24:05 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.132' message 'Added OBNotifier, a client of SystemChangeNotifier, which refreshes all browsers when the system changes. ' id 'b6c1aac8-6b44-11d8-aa50-000a95702430' date '1 March 2004' time '12:53:07 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.131' message 'Refactored OBMessageNode to parse the sending method lazily.' id 'cf408e58-6b2c-11d8-aa50-000a95702430' date '29 February 2004' time '10:02 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.130' message 'Columns now take advantage of the LargeLists optimization in PluggableListMorph. The chasing browsers particularly benefit, since they often have very large lists.' id 'ee9e927c-6b2b-11d8-aa50-000a95702430' date '29 February 2004' time '9:55:43 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.129' message 'Improved selection handling in OBMessageNode. Now we actually parse the sending method source to determine how to select the message.' id '31612d5e-6b2a-11d8-aa50-000a95702430' date '29 February 2004' time '9:43:16 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.128' message 'Implemented Avi''s suggestion for having the chasing browsers put messages in their context better. The new OBMessageNode represents a message send within a method, rather than just a selector. It displays the method''s source in the text pane, and selects the selector of the message send. ' id 'a4eae9f8-6b1a-11d8-aa50-000a95702430' date '1 March 2004' time '7:51:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.127' message 'Nodes can now supply a selection interval as well as text.' id 'fd25ab60-6b0f-11d8-aa50-000a95702430' date '29 February 2004' time '6:35:42 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.126' message 'Moved method category alphabetizing action to the class side, so it''s available even when no category is selected.' id '1f7b4d84-6b0e-11d8-aa50-000a95702430' date '29 February 2004' time '6:22:20 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.125' message 'Added an action for alphabetizing method categories.' id 'b1272706-6b0c-11d8-aa50-000a95702430' date '29 February 2004' time '6:12:06 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.124' message 'Categorized some methods.' id '2ea8f31a-6b0a-11d8-aa50-000a95702430' date '29 February 2004' time '5:54:08 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.123' message 'Rewrote the tests for OBSelectorNode using a protocol mock.' id '36426b40-6afb-11d8-aa50-000a95702430' date '29 February 2004' time '4:06:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.122' message 'Bugfix: OBModalFilter wasn''t updating its buttons when jumping to a node from a meta-node other than the first.' id 'c3899c6d-6aee-11d8-8653-000a95702430' date '29 February 2004' time '2:37:52 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.121' message 'Bugfix: creating a metaclass categegory didn''t work - the category would be added to the class instead.' id 'bb4740d8-6aeb-11d8-8653-000a95702430' date '29 February 2004' time '2:16:09 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.120' message 'Bugfix: the return values in the #accept:notifying callchain weren''t being passed back properly, so the text pane would still be dirty after an accept, even if the accept was successful.' id 'f6fdd789-6ae8-11d8-8653-000a95702430' date '29 February 2004' time '1:56:21 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.119' message 'Bugfix: OBImageContext now records timestamps correctly when changing class comments.' id 'e3ce42bb-6ae6-11d8-8653-000a95702430' date '29 February 2004' time '1:41:30 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.118' message 'Overrode #acceptsLoggingOfCompilation in the fake classes to minimize pollution of the changes file during testing.' id '69c42e71-6ae4-11d8-8653-000a95702430' date '29 February 2004' time '1:23:46 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.117' message 'Added OBSilentTestCase, which uses suppresses system change notifications during the test run. This prevents pollution of the current change set by the tests, and hopefully one day the changes file as well, although it''s not currently a client of SystemChangeNotifier.' id 'cc095fbe-6ade-11d8-8653-000a95702430' date '29 February 2004' time '12:43:34 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.116' message 'Added context tests for #allImplementorsOf: and #allSendersOf: and made them pass. As a result, package browsers will now only show senders/implementors within the package. ' id '2e8635b8-6a75-11d8-a34c-000a95702430' date '29 February 2004' time '12:07:33 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.115' message 'Added support for classifying methods via drag and drop.' id 'b7e58046-6a6d-11d8-a34c-000a95702430' date '29 February 2004' time '11:14:07 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.114' message 'Rewrote message category action tests using a protocol mock.' id '663306aa-6a6a-11d8-a34c-000a95702430' date '29 February 2004' time '10:50:22 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.113' message 'Refactored class category action tests to use a protocol mock. ' id '9dd8f762-6a66-11d8-a34c-000a95702430' date '28 February 2004' time '10:23:17 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.112' message 'Refactored node action tests to use a protocol mock instead of messing with the image directly.' id '6a6f1cd6-6a40-11d8-864e-000a95702430' date '28 February 2004' time '5:49:50 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.111' message 'We now confirm with the user before abandoning unaccepted edits.' id '9d7d9328-6a23-11d8-864e-000a95702430' date '28 February 2004' time '2:23:40 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.110' message 'Bugfix: OBColumn>>nodeDeleted wasn''t updating the list correctly.' id 'd4406028-6a1c-11d8-864e-000a95702430' date '28 February 2004' time '1:35:06 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.109' message 'Added a sanity check for deleting classes.' id 'a8ac0fae-6a1a-11d8-864e-000a95702430' date '28 February 2004' time '1:19:33 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.108' message 'Added sanity check to prevent accidental renaming of classes.' id '009e5668-6a17-11d8-864e-000a95702430' date '28 February 2004' time '12:53:23 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.107' message 'Editing code now works more the way one would expect, with correct handling of syntax errors, prompting for undeclared temps etc. No tests for this though, as I don''t really grok the way it works. ' id 'a2c5cd1c-6994-11d8-9ecd-000a95702430' date '27 February 2004' time '9:20:11 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.106' message 'Make method selectors bold.' id 'cd190a24-6982-11d8-ab92-000a95702430' date '27 February 2004' time '7:12:31 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.105' message 'Factored management of the text pane out of OBBrowser. It''s now handled by OBTextPanel.' id '676d9b6c-68e9-11d8-9e60-000a95702430' date '27 February 2004' time '12:54:27 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.104' message 'Removed the use of #idealWith extensions to various morph classes. They no longer had any impact on the pane layout.' id '093c2d17-68dc-11d8-9e60-000a95702430' date '26 February 2004' time '11:18:46 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.103' message 'Fixed a subtle bug related to modal filters.

Consider the two use cases for OBModalFilter. In the instance/class case, the list in that column will be of either classes or their corresponding metaclasses. Either way, the names displayed in the column will be the same. So when switching between classes and metaclasses we want the selection to be unaffected, since since the corresponding nodes are related.

Another use of OBModalFilter is senders/implementors in the chasing browsers. In this case, the senders and implementors of a given message do *not* correspond to each other, and so the selection should be cleared when switching back and forth. This is especially a problem if the new list is shorter than the old one, and potentially too short to include the old selection.

With this fix, the column compares the new list to the old and clears the selection only if the names of the nodes do not match. 

' id '08fa238f-68da-11d8-9e60-000a95702430' date '26 February 2004' time '11:04:27 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.102' message 'Fix a testing bug introduced by the last commit.' id '3304dc6b-68cb-11d8-9e60-000a95702430' date '26 February 2004' time '9:18:15 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.101' message 'Cleaned up the browser instance creation protocol.' id '2e4f1746-68ca-11d8-9e60-000a95702430' date '26 February 2004' time '9:10:57 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.100' message 'Minor refactoring: applied ExtractMethod wherever OBNodeSelected was used; now they call OBNode>>signalSelection.' id '98445ed6-680e-11d8-8910-000a95702430' date '25 February 2004' time '10:48:10 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.99' message 'Merged in Avi''s drag and drop work, making the following changes:

Added a test: OBFakeBrowserTest>>testDragAndDrop.

Updated to work in 3.7a. This will almost certainly break compatibility with 3.6, as the inclusion of LargeLists in 3.7 signficantly changed the way PluggableListMorphs work.

Wrapped the handling of drops in a notification handler so we can use OBNodeSelected and friends.

OBClassCategoryNode now handles dropped classes through its context, and signals OBNodeSelected.

' id 'f77ba9bc-680c-11d8-8910-000a95702430' date '25 February 2004' time '10:36:30 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.98' message 'A couple of cosmetic changes:

Filter buttons are a bit darker now to make them easier to see.

Fixed an off-by-one error in the pane layout code.' id '375f06d2-67fb-11d8-8910-000a95702430' date '25 February 2004' time '8:29:27 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.97' message 'Added comment support to the code browsers.' id 'dc1e05b0-675e-11d8-9b3d-000a95702430' date '25 February 2004' time '1:50:12 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.96' message 'OBModalFilter now uses a radio button bar rather than a single button. ' id '1dc95672-6758-11d8-9b3d-000a95702430' date '25 February 2004' time '1:01:56 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.95' message 'OBColumn now sets autoDeslect to false when creating PLMs.' id '71a9e4ca-657c-11d8-924b-000a95702430' date '22 February 2004' time '4:16:56 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.94' message 'Minor refactoring of the chasing browsers. OBMethodNode>>messages now doesn''t include the selector of the method its self, that''s provided in #selectorAndMessages.' id '9f78d0ce-63f3-11d8-884b-000a95702430' date '20 February 2004' time '5:25:01 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.93' message 'Fixed bugs in the pane layout algorithm. The available space is evenly divided between the panes, up to maximum number of panes defined by OBPaneScroller>>sizing. Beyond that, panes are sized as if there were that number of panes. ' id 'c78ed86f-61a6-11d8-ae8a-000a95702430' date '17 February 2004' time '7:09:54 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.92' message 'Added a more explicit error message for missing metagraphs.' id 'ee99c42c-61a0-11d8-a5dd-000a95702430' date '17 February 2004' time '6:28:03 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.91' message 'Created browser resources for use by the browser tests. This results in a 12% speedup of test runs.' id 'd77103ce-60f8-11d8-ab86-000a95702430' date '16 February 2004' time '10:24:49 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.90' message 'Added an ''-- all --'' method category.' id '1197b493-60ef-11d8-ab86-000a95702430' date '16 February 2004' time '9:14:51 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.89' message 'Rewrote the tests for removing and renaming classes using a protocol mock.' id '2b8a7b4d-5df6-11d8-aff1-000a95702430' date '13 February 2004' time '2:28:08 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.88' message 'Created OBProtocolMock for testing actions.' id 'a11502d4-5df0-11d8-aff1-000a95702430' date '13 February 2004' time '1:48:28 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.87' message 'Minor clean up of the code context protocol.' id '40df497b-5de2-11d8-aff1-000a95702430' date '13 February 2004' time '12:05:33 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.86' message 'Tweaked OBCodeBrowserTest>>tearDown so as not to pollute the Transcript.' id 'a5293ce0-5de1-11d8-aff1-000a95702430' date '13 February 2004' time '12:01:12 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.85' message 'Fixed pane layout to use equal pane widths, which are determined by the minimum number of panes specified to the browser.' id '81dead34-5dc7-11d8-aff1-000a95702430' date '12 February 2004' time '8:54:06 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.84' message 'Morphs no longer get regenerated everytime the display changes.

This involved the creation of OBPane and quite a few changes to OBBrowser and OBColumn.' id '9ab7e9c2-5dbf-11d8-aff1-000a95702430' date '12 February 2004' time '7:57:32 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.83' message 'Bugfix: metaclass nodes were showing the definition of Metaclass instead of the definition of the metaclass its self. 

Also removed a superfluous call to OBColumn>>refresh, for a miner speed up of OBBrowser>>jumpTo:.' id '7a80aa12-5b8a-11d8-97f3-000a95702430' date '10 February 2004' time '12:32:12 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.82' message 'Updated senders and implementors actions:

Implemented traditional behaviour for ''browse senders'' and ''browse implementors''.

Moved the experimental versions to ''chase senders'' and ''chase implementors'' menu items.

Improved the experimental versions to use modal filters. The buttons now serve as labels for the columns, and it''s easy to switch back and forth between senders and implementors.
' id '20f9a3f8-5b84-11d8-97f3-000a95702430' date '9 February 2004' time '11:46:45 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.81' message 'Replaced OBModalMetaNode with OBModalFilter. 

OBModalMetaNode had a fundamental problem: it had a single global mode for all browsers. ' id '5eba1f68-5b79-11d8-97f3-000a95702430' date '9 February 2004' time '10:29:44 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.80' message 'Nodes now delegate fetching class objects to the context. Also, added a new assertion to OBContextTest>>testCategoryOf: to make sure that looking up categories of metaclasses works.' id 'ebc9eb4a-5b66-11d8-97f3-000a95702430' date '9 February 2004' time '8:17:40 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.79' message 'Editing class-side methods works now. ' id 'e427a800-5b65-11d8-97f3-000a95702430' date '9 February 2004' time '8:10:18 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.78' message 'Update tests to account for the fact that we use OBNakeMethodNode, and #messages includes the reciever itself.' id '0fa228fb-5a6e-11d8-b549-000a95702430' date '8 February 2004' time '2:36:16 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.77' message 'Created actions for browsing senders and implementors of methods. This required adding a couple of meta graphs to OBMetaGraphBuilder and adding OBSelectorNode.

' id 'fc30823a-5a66-11d8-b549-000a95702430' date '8 February 2004' time '1:45:37 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.76' message 'The horizontal scrollbar is now initially hidden, and only appears when necessary.' id '550aab1b-5a52-11d8-b549-000a95702430' date '8 February 2004' time '11:17:46 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.75' message 'Removed some dead code used for the old layout policy in OBPaneScroller.' id '3987971a-5a0e-11d8-9d79-000a95702430' date '8 February 2004' time '3:10:14 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.74' message 'Some layout clean up.

OBScrollerPane>>computeMorphWidths is much more cleanly factored. Layout policy can be controlled through #padWidths:toFit:

Browsers can now have independent minimum pane settings. This is handy for making the minimum pane count match the depth of the meta graph, so we don''t get any creation or deletion of panes.' id 'cd4a8182-5a03-11d8-befa-000a95702430' date '8 February 2004' time '1:55:38 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.73' message 'Bugfix: clicking the class/instance button when no class was selected was causing a walkback.' id 'e2a42155-59eb-11d8-befa-000a95702430' date '7 February 2004' time '11:04:26 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.72' message 'Refactored the meta graph. Edges are now explicitly modeled by OBMetaEdge.' id '5756553c-59ea-11d8-befa-000a95702430' date '7 February 2004' time '10:53:22 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.71' message 'Added a button for switching between instance/class browsing.' id '269f1362-59e7-11d8-befa-000a95702430' date '7 February 2004' time '10:30:32 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.70' message 'Added an action for removing methods.' id '21cc14b1-59cb-11d8-b180-000a95702430' date '7 February 2004' time '7:09:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.69' message 'Bugfix: OBMethodCategoryNode>>create was throwing a bad OBNodeSelected notification.' id '842a962e-59c6-11d8-b180-000a95702430' date '7 February 2004' time '6:36:56 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.68' message 'Major refactoring of the code browsers.

Nodes now refer to classes by name instead of holding a direct reference. The code context protocol has been update to accept symbols as parameters instead of class instances.' id 'bccdf68a-59b8-11d8-b180-000a95702430' date '7 February 2004' time '4:58:18 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.67' message 'We now use an explicit package context instead of just extending PackageInfo.' id '1e076ae8-59a4-11d8-b180-000a95702430' date '7 February 2004' time '2:30:42 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.66' message 'Created context tests.' id '349b419a-5998-11d8-b180-000a95702430' date '7 February 2004' time '1:05:25 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.65' message 'recategorized the methods of OBImageContext' id '513b720f-598a-11d8-b180-000a95702430' date '7 February 2004' time '11:26:01 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.64' message 'Added remove and rename actions for method categories.' id 'bfece24e-5987-11d8-b180-000a95702430' date '7 February 2004' time '11:07:38 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.63' message 'Added an action for creating method categories.' id 'e64eaf2c-5984-11d8-b180-000a95702430' date '7 February 2004' time '10:47:14 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.62' message 'Added an action to remove classes.' id '91896453-5861-11d8-969c-000a95702430' date '6 February 2004' time '12:01:48 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.61' message 'Renamed OBNodeCreated to OBNodeSelected, since that''s what it really means.' id '11f89851-585e-11d8-969c-000a95702430' date '5 February 2004' time '11:36:45 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.60' message 'Two fixes for the class rename action:

First, we throw an OBNodeCreated notification since classes are always displayed in alphabetical order, and the renamed class should remain selected even if it appears in a different place in the list. 

Second, we add an OBNodeActor to class node in the code meta graphs.' id 'b930bb12-585d-11d8-969c-000a95702430' date '5 February 2004' time '11:34:16 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.59' message 'Added an action to rename classes.' id '2827af86-585b-11d8-969c-000a95702430' date '5 February 2004' time '11:15:54 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.58' message 'It''s now possible to write actions that are available when there is no selection in the column. ' id 'bd444b38-5845-11d8-969c-000a95702430' date '5 February 2004' time '8:42:35 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.57' message 'Minor refactoring of actors.' id '9ce211f4-5755-11d8-8c6e-000a95702430' date '4 February 2004' time '4:03:42 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.56' message 'Added a remove action for class categories.

Also moved the actions into the OBClassCategoryNode its self, rather than having a separate actor. This simplifies the code considerably.' id 'f84405e2-56c6-11d8-a3b8-000a95702430' date '3 February 2004' time '11:02:37 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.55' message 'Added a rename action for class categories.' id 'd03ef4ec-55ff-11d8-85c2-000a95702430' date '2 February 2004' time '11:17 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.54' message 'Added an action for creating class categories.' id '210d6e31-55fa-11d8-85c2-000a95702430' date '2 February 2004' time '10:36:19 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.53' message 'Many changes in this version.

Reorganized and fleshed out the tests for code browsing and editing. Now there are tests for browsing packages, the image and the system.

OBBrowser>>jumpTo: now does a proper node equality test, rather than just comparing names.

The file system browser now hides files and directories named with a leading dot.' id '28b3921f-5437-11d8-9e0d-000a95702430' date '31 January 2004' time '4:48:09 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.52' message 'The file system browser now takes advantage of OBBrowser>>jumpTo: to open on the default directory.' id '21de0640-5402-11d8-97c3-000a95702430' date '31 January 2004' time '10:28:34 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.51' message 'Creating a new method by editing an existing method works now.' id '5e520dfa-53fe-11d8-97c3-000a95702430' date '31 January 2004' time '10:01:37 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.50' message 'Creating a method from a template works.' id 'c9aacf3f-53b1-11d8-a9dd-000a95702430' date '31 January 2004' time '12:53:26 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.49' message 'OBClassNodes can now create classes when changes to their declarations are accepted.' id '239acb13-53a7-11d8-a9dd-000a95702430' date '30 January 2004' time '11:37:12 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.48' message 'Small fix: OBNode>>accept:notifying: now calls #text: by default.' id 'fe2c3b3b-53a4-11d8-a9dd-000a95702430' date '30 January 2004' time '11:21:51 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.47' message 'Classes can now be created via the template supplied by OBClassCategoryNode.' id '4b44fc32-52ed-11d8-a014-000a95702430' date '30 January 2004' time '1:26:53 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.46' message 'Added a convenience method for browsing packages.' id 'b11f49ee-52d6-11d8-a014-000a95702430' date '29 January 2004' time '10:45:05 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.45' message 'Merge in Avi''s change to only add columns if the meta node for the selected column has children.' id '5a5cc7ee-5074-11d8-8751-000a95702430' date '26 January 2004' time '9:56:06 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.44' message 'Added an OBFileRegistryActor to make file reader services from FileList available as actions on FileNode.' id '447ce1b8-4e34-11d8-a589-000a95702430' date '24 January 2004' time '1:12:20 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.43' message 'Refactored OBColumn - changed ivar metaNodes to metaNode.

There was no need for the ivar to be a collection, since it always contained only one metanode: the one corresponding to the parent node for the column.' id 'dd2fd842-4e2b-11d8-a589-000a95702430' date '24 January 2004' time '12:12:10 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.42' message 'Made actions configurable via the metagraph.' id '4640ce4f-4e29-11d8-a589-000a95702430' date '23 January 2004' time '11:53:38 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.41' message 'OBFileNodeTest now correctly handles and tests for OBNodeDeleted notifications.' id '7a33a4fb-4e1a-11d8-a589-000a95702430' date '23 January 2004' time '10:07:43 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.40' message 'Actions now use Notifications to update the browser display when a node is deleted by the action.' id '661a56ad-4e18-11d8-a589-000a95702430' date '23 January 2004' time '9:52:50 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.39' message 'Added a delete action for files.' id '3197b52c-4bc3-11d8-9fe0-000a95702430' date '20 January 2004' time '10:37:53 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.38' message 'Actions now correctly notify their monitors after they are triggered.' id 'ae30d3e2-4168-11d8-abeb-000a95702430' date '7 January 2004' time '6:24:46 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.37' message 'Added preliminary support for menus.' id '885fb5bd-413c-11d8-9d55-000a95702430' date '7 January 2004' time '10:08:44 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.36' message 'Renamed ''lens'' method categories ''public''.' id 'e28dfd38-411c-11d8-8759-000a95702430' date '7 January 2004' time '6:22:11 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.35' message 'Renamed OBBrowser class>>graph:node: to #browse:fromRoot:' id '174fbc15-3516-11d8-baab-000a95702430' date '22 December 2003' time '11:03:19 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.34' message 'Added a simple meta-graph browser.' id '95da25e4-31ec-11d8-b134-000a95702430' date '18 December 2003' time '10:28:40 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.33' message 'Added meta-graph registry to Browser.' id '9a3a05b4-31d4-11d8-b134-000a95702430' date '18 December 2003' time '7:36:59 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.32' message 'Added nodes and meta-graphs for browsing the entire system.' id '120be0de-30fe-11d8-b117-000a95702430' date '17 December 2003' time '9:01:19 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.31' message 'Removed lingering #nodes implementations.' id 'a6c71ffa-30f6-11d8-b117-000a95702430' date '17 December 2003' time '8:08:12 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.30' message 'Revised tests and implementation of the code browser.' id '1a10502c-30e9-11d8-bdbc-000a95702430' date '17 December 2003' time '6:31:12 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.29' message 'Refactored MetaNodes for clarity.' id '1c965a1c-30e5-11d8-bdbc-000a95702430' date '17 December 2003' time '6:02:39 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.28' message 'We can now have mixed node types in each column.' id 'e458e9fe-30dd-11d8-bdbc-000a95702430' date '17 December 2003' time '5:10:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.27' message 'Introduced meta-nodes.' id 'bfd30707-2f80-11d8-a87e-000a95702430' date '15 December 2003' time '11:31:42 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.26' message 'Renamed ''lens'' to ''node''. This is a very far-reaching changed.' id '831d131e-2f73-11d8-a87e-000a95702430' date '15 December 2003' time '9:56:57 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.25' message 'Columns can now create morphs with meta browser menus as well as lists.' id 'bd048fe3-2f6d-11d8-a87e-000a95702430' date '15 December 2003' time '9:15:37 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.24' message 'Columns now hold a reference to the browser. This will make filtering easier.' id '6ec328eb-2ea5-11d8-aed9-000a95702430' date '14 December 2003' time '9:21:47 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.23' message 'Refactored OBClassCategoryLens.

PackageInfo is now responsible for removing the prefix on system categories.' id 'ae915148-2ea3-11d8-aed9-000a95702430' date '14 December 2003' time '9:09:14 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.22' message 'Bugfix: MethodCategoryLens filters methods correctly now.' id 'd2572bd8-2c46-11d8-9ef3-000a95702430' date '11 December 2003' time '8:59:29 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.21' message 'Added lenses for browsing a package.' id 'acabe68a-2b98-11d8-b316-000a95702430' date '11 December 2003' time '12:12:53 am' author 'cwp' ancestors ((name 'OmniBrowser-cwp.20' message 'Added support for editing in the text pane. The file browser can now edit files.' id 'deb59865-29f8-11d8-b2cf-000a95702430' date '8 December 2003' time '10:36:27 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.19' message 'The PaneScroller now automatically scrolls to the right after new columns are added.' id 'a564f7c0-29f1-11d8-b2cf-000a95702430' date '8 December 2003' time '9:44:44 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.18' message 'Browsers now have a minimum pane count.' id '517a5ab0-29e6-11d8-b2cf-000a95702430' date '8 December 2003' time '8:23:39 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.17' message 'Bugfix: dependents no longer get copied between columns.' id '18ef65a6-29e5-11d8-b2cf-000a95702430' date '8 December 2003' time '8:14:54 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.16' message 'Refactored lenses.

Now a lens only needs to know about its object, not its objects children. This makes the lens interface much simpler, and allows us to work with objects, not strings.' id '7aebb0f8-291c-11d8-a859-000a95702430' date '7 December 2003' time '8:18:50 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.15' message 'Removed meta-data from file text.' id '2c27011e-2912-11d8-a859-000a95702430' date '7 December 2003' time '7:05:03 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.14' message 'Introduced the concept of panes.

This is to distinguish panes (the morphs that are displayed in the browser) from columns which are more abstract. Panes are usually PluggableListMorphs, but need not be.

Renamed OBColumnScroller to OBPaneScroller.' id 'c24bbc62-2839-11d8-850e-000a95702430' date '6 December 2003' time '5:15:54 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.13' message 'Made file browsing display file information in the text area.' id '5a24f81c-268c-11d8-837f-000a95702430' date '4 December 2003' time '2:02:05 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.12' message 'Removed the currentColumn ivar from the browser. It now relies on the invariant that the rightmost column does not have a selected item. Therefore the current column is to its immediate left.' id '52730a8c-25c1-11d8-8734-000a95702430' date '3 December 2003' time '1:48:44 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.11' message 'Made the browser responsible for managing the columns.' id 'f0ebfa40-25bf-11d8-8734-000a95702430' date '3 December 2003' time '1:38:51 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.10' message 'When there''s no selection, we show blank text instead of ''nil''.' id 'f79c7b8c-2539-11d8-9d92-000a95702430' date '2 December 2003' time '9:39:50 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.9' message 'Added a test that asserts that when items with no children get selected an additional column is not created.' id '13f7431a-2539-11d8-9d92-000a95702430' date '2 December 2003' time '9:33:28 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.8' message 'Refactored the lens protocol.

Added an abstract superclass for lenses. Also, #childrenFor: is now #lensesFor:.

' id 'c948ef42-2221-11d8-bef9-000a95702430' date '28 November 2003' time '11:09:11 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.7' message 'Added directory browsing capability.' id 'a95fb172-221f-11d8-bef9-000a95702430' date '28 November 2003' time '10:53:58 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.6' message 'Made the tests pass again.' id 'b3c359ca-2215-11d8-bef9-000a95702430' date '28 November 2003' time '9:42:40 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.5' message 'Columns are now created and destroyed as needed.' id '176048b1-1fb8-11d8-a468-000a95702430' date '25 November 2003' time '9:27:33 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.4' message 'Fixed layout bug.

' id '89286317-1e30-11d8-bac7-000a95702430' date '23 November 2003' time '10:44:41 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.3' message 'Copied the good bits from NotaBene.

Mainly this means NBColumnScroller, and the window building code from NBBrowser.' id 'e59b1d15-1e0a-11d8-978b-000a95702430' date '23 November 2003' time '6:15:15 pm' author 'cwp' ancestors ((name 'OmniBrowser-cwp.1' message 'Renamed package.' id '4edf95b6-8515-45d0-b2ec-bd3cc5147964' date '23 November 2003' time '1:16:28 pm' author 'cwp' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'OmniBrowser-avi.44' message 'Only add a new column in OBBrowser>>selected: if its metanode has children.  This means that leaf nodes, like selecting a file in the file browser or a method in the image browser, do not produce empty columns at the end (although empty directories or categories still do).' id '8deebe66-5043-11d8-9ee2-000a95db7844' date '26 January 2004' time '1:06:48 pm' author 'avi' ancestors ((id 'dd2fd842-4e2b-11d8-a589-000a95702430')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'OmniBrowser-avi.94' message 'Preliminary drag and drop support.
There are two new methods on OBNode: #wantsDroppedNode: and #acceptDroppedNode:.  The first should return true or false depending on whether the drag and drop operation is appropiate, the second will get sent if the user actually drops the node.

OBNode can also override #asDraggableMorph to provide a custom visual while dragging.

For now I haven''t done much with it - it''s used in a half-assed way by ClassCategoryNode as an example, but that''s it.' id 'd8359d44-63f6-11d8-a34c-000a95db7844' date '20 February 2004' time '2:48:04 pm' author 'avi' ancestors ((id 'c78ed86f-61a6-11d8-ae8a-000a95702430')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'OmniBrowser-avi.141' message 'Make MetaNode responsible for creating OBColumn instances so that it can choose to use an alternate class (for example, a TreeColumn).' id 'c8f48d82-6dcd-11d8-9f2d-000a95db7844' date '4 March 2004' time '3:19:21 am' author 'avi' ancestors ((id '398c1672-6ce6-11d8-b421-000a95702430')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'OmniBrowser-avi.145' message 'Still refactoring #selection - tests pass.' id 'dee74a8f-7006-11d8-95ef-000a95db7844' date '6 March 2004' time '11:13:01 pm' author 'avi' ancestors ((name 'OmniBrowser-avi.144' message 'Refactoring to reduce assumptions about selection ivar in Column.' id '785857de-7003-11d8-95ef-000a95db7844' date '6 March 2004' time '10:48:41 pm' author 'avi' ancestors ((name 'OmniBrowser-avi.143' message 'Fix #shortNameOf: and #longNameOf: in PackageInfo to deal with the "base" category of a package, ie, the category that has the unadorned name of the package.' id '8a6ee6f6-6edb-11d8-9701-000a95db7844' date '5 March 2004' time '11:30:20 am' author 'avi' ancestors ((id 'c8f48d82-6dcd-11d8-9f2d-000a95db7844')) stepChildren ())(name 'OmniBrowser-avi.142' message 'Started work on TreeColumn.' id 'f99ddcdc-6dd1-11d8-9be3-000a95db7844' date '4 March 2004' time '3:49:21 am' author 'avi' ancestors ((id 'c8f48d82-6dcd-11d8-9f2d-000a95db7844')) stepChildren ())(id '329e01c4-6ee2-11d8-aa8b-000a95702430')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'OmniBrowser-hpt.204' message 'Added icon support to OBAction morphic menus. Now it is possible to assign an icon to an OBAction.
This version also assigns the MenuIcons newIcon to all ''create category'' actions, MenuIcons findIcon to all ''find'' actions, and MenuIcons deleteIcon to all ''remove'' actions.
note: this feature is sensitive to the value of #menuWithIcons preference' id '418b93a2-451a-5d45-9e63-52e3fc7f83d1' date '17 May 2004' time '5:08:56 pm' author 'hpt' ancestors ((name 'OmniBrowser-hpt.203' message 'Fixed a bug with the ''remove'' action of OBMethodCategoryNode.
This action was removing a method category never asking for confirmation.
Now it ask for confirmation but only when it is not empty (this is the current behavior on the stock browser).
SUnit tests of this new behaviour were also added.

(note that version 202 does this same fix for SystemCategory, and this version is for *method* categories)' id '4ee7e62d-e949-dd46-9dac-9f23617b9651' date '17 May 2004' time '4:38:53 pm' author 'hpt' ancestors ((name 'OmniBrowser-hpt.202' message 'Fixed a bug with the ''remove'' action of OBClassCategoryNode.
This action was removing the SystemCategory never asking for confirmation.
Now it ask for confirmation but only when it is not empty (this is the current behavior on the stock browser).
SUnit tests of this new behaviour were also added.' id '20f4ef10-8fba-3448-afce-339800b41623' date '17 May 2004' time '4:02:11 pm' author 'hpt' ancestors ((name 'OmniBrowser-hpt.201' message 'Added keystroke handling to OBAction and OBColumn. It was assigned the $f keystroke to all ''find'' actions, the $x keystroke to all ''remove'' action, and the $N keystroke the ''class refs'' action.' id '486bb5c4-058a-2844-9279-24caf86da105' date '17 May 2004' time '2:58:20 pm' author 'hpt' ancestors ((id '3af7dafd-aae6-4a18-bbbe-9fcab97c9f50')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())