Miscellaneous changes

An image of the Class Hierarchy Browser window. Visible changes include horizontal scroll bars in upper subpanes and the shrinking of the ”source" button in the lower right hand corner of the window. Horizontal scrollbars:

Many of the browsers and inspectors now have horizontal scroll bars.

In most cases, these additions required changing existing code and could not be made using Envy extensions.

For more details on what code was changed, see the following places in the code:

CTSystemConfigurationBrowser>>openOn:

ETBrowser>>hierarchicalListWidget:changeSelector:
            menuSelector:printBlock:statusBlock:min:max:
            doubleClick:initialSelection:hasChildrenSelector:
            childrenSelector:parentSelector:showing:
            grayItem:hierarchySelector:

ETBrowser>>multiSelectionListWidget:changeSelector:
            menuSelector:printBlock:statusBlock:
            min:max:doubleClick:initialSelection:

ETDoubleListChooser class>>prompt:chooseFrom:
          printBlock:dependentListBlock:dependentPrintBlock:

Image of a Config Maps browser window. ScrollBar speed governor:

The standard emulation of scroll bars in VisualWorks has no way of controlling how fast the scroll bars respond to repeated mouse clicks or a mouse button being held down.

This can lead to scrolling down a page or more further than was intended or to scrolling through a list faster than it can be read. This can be especially aggravating when using Application Manager or Configuration Maps browsers.

Through an Envy extension and code in the supplied DevTools workspace, the speed can be adjusted to an acceptable response rate.

After the DevTools are loaded, any new windows that are opened will respond to the set speeds and will automatically adjust their response rate as the speed settings are changed.

See the classes and extensions in the DevToolsScrollingApp and any of its subapplications for additional details.

Image of cascading window options working with three open SortedInspector windows. Cascading SortedInspectors:

When a new SortedInspector is opened from another SortedInspector, the new one will try to open down and to the right of its parent SortedInspector.

Image of the Window tab of the System Settings dialog.This Cascading SortedInspectors feature works best if the Window tab of the File | Settings dialog is set to Automatic placement.

For additional details on this “automatic cascading” see SortedInspector>>initialPositionFor: and its callers.

Image of cascading window options working with three open Class Hierarchy Browser windows. Cascading Browser Windows:

When many new browser windows are opened from another browser window, the new one will try to open down and to the right of its parent window.

Image of the Window tab of the System Settings dialog.This feature works best if the Window tab of the File | Settings dialog is set to Automatic placement.

This Cascading Browsers feature can be turned on or off  using code in the supplied DevTools workspace.

For additional details on this “automatic cascading” see EtBrowser>>openNoTerminate and its callers.

Image of the lower right hand corner of a ClassHierarchyBrowser. Shown is the "source" button which has been made shorter so that it is not accidentally pressed when an attempt is made to press the down arrow button in the scroll bar for the text editing pane above it.Image of the middle right hand area of a Debugger window. Shown is the "source" button which has been made shorter so that it is not accidentally pressed when an attempt is made to press the down arrow button in the scroll bar for the text editing pane above it. Source button resizing:

In many of the code browsers and the Debugger window, the Source button has been shrunk on the right hand side. This makes it less likely for the button to be accidentally pressed when an attempt is made to press the "down arrow" part of the scroll bar in the pane above.

For additional details on this button resizing see EtAbstractMethodsBrowser>>addInformationLineTo:, EtDebugger>>createWindow and their callers.

Initial browser window size:

Envy has always provided a way to set the default window sizes for their browsers, but the feature has not been well-publicized. Code is provided in the supplied DevTools workspace to make it easy to set the default sizes for small as well as larger screen sizes.

Image of the Window tab of the System Settings dialog.This feature works best if the Window tab of the File | Settings dialog is set to Automatic placement.

For additional details on the default browser window size see EtBrowser class>>defaultWindowSize and its callers.

Destructive changes notations:

Some of the features in the DevTools could not be implemented using Envy extensions. Modifications to existing VisualWorks, ControlWORKS or Envy code were required. Every existing method that was changed has a notation in the code. It is in the form of a call to a method in Object.

Object>>developmentToolsDestructiveChange is provided as the first extended method in the DevelopmentTools Envy Application.

Because some of the modified methods execute during the application and config map loading process, the DevelopmentTools application must be loaded before any of the other modified applications. If this is not done, the image could lock up during the loading process.

For a complete listing of the modified methods, browse the callers of Object>>developmentToolsDestructiveChange.


[ < SysConfig Editor changes ] [ Keystroke Method Documentation > ]

[ Main ] [ Table of Contents ] [ Contact info ] [ Index ]

[ Home ]

This work is licensed under a Creative Commons License.

Creative Commons License