WindowBuilder Pro/V V/Win32 1.0.5 Update  6-1-94

This file contains four file-in code modules:

WBP105.W32 - Updates a Development image
WBP105.RUN - Updates a Runtime image (also used in Development)
DRAGDROP.ST - A Drag & drop example built with WindowBuilder pro.
TEAMV121.FIX - Fixes a major bug in Team/V 1.2.1

The file also contains a revised version of the source-code-less WindowBuilder Pro
runtime DLL (WBPRO.DLL). Use this DLL when building runtime applications.

Instructions:

For a development image, install WBP105.W32. This will also automatically install 
WBP105.RUN. For a runtime image, only WBP105.RUN needs to be installed (this is 
on top of RUNTIME.W32 or WBPRO.DLL and, optionally, MDIPATCH.ST or MDIPATCH.DLL)..

Description:

Updates WindowBuilder Pro/V for Win32 to version 1.0.5. These files are intended
for standalone Smalltalk/V and Team/V installations. Contact Objectshare for 
ENVY/Developer versions.

Additions:
>>1.0.3 to 1.0.4<<
1) Added support for Digitalk's new event model. This can be turned on via the
    'Triggered Event Support' add-in in the Add-In Manager. When specifying a
    selector for a new event, use colons in the selector to specify where arguments
    should be.  If you add one more argument in your selector that the event selector
    expects, then that last argument will be the pane in which the event was triggered.
    Note that code generated using the new event model is not currently portable to
    V/Win or V/OS2. We have also created a very nice example of using Drag & Drop
    with WBPro. Special thanks go out to Dan Rubel for his efforts in this area.
2) New command for opening a window centered around the mouse position
    (ViewManager>>openCenteredOnMouse)
3) Enhancements to support additional pool dictionary generation required for
    certain subpanes
4) Enhanced speed of scrolling in the edit window when viewing a large layout
5) Code generation for WBToolBar button selectors
6) Windows can now be created without a titlebar
>>1.0.4 to 1.0.5<<
7) PARTS coexistence. WBPro may now be loaded on top of PARTS Workbench and
    both can coexist in the same image. Note that this is not yet true integration as WBPro
    does not generate any additional code to help WBPro-generated windows become Parts.
8) WidgetKit/Pro and WidgetKit/CUA'91 support
9) New command for opening a window centered on the screen
    (ViewManager>>centeredOnScreen)
10) New command for opening one window relative to another
    (ViewManager>>openRelativeTo:offset:)
11) Added support for button mnemonics in nested controls

Problems fixed:
>>1.0.3 to 1.0.4<<
1) Fixed integration with V/Win32 2.0.2 (ApplicationWindow>>validateShow)
2) Problem with disabled buttons becoming enabled
3) Minor problems with CompositePanes
4) Problem adding files in the Bitmap Manager
5) Problems with DrawnButtons
6) Problems with EnhancedEntryField timing
7) Missing EntryField>>readonly method
8) FindReplaceDialog lost tabbinh ability
9) Problems with dialog key support in non-diaog windows
10) Problems with StatusPane (auto-replication and height related)
11) TextPanes loose their event handlers
12) Fixed TextTool>>centerText:at:
13) Problems with certain accelerator key combinations
14) Problemd using the #changed: mechanism for windows imported from V/Win
15) Problems loading the Pane Inspector add-in
16) Flashing focus problem on reactivating WBPro
17) Problems closing some MDI child windows
>>1.0.4 to 1.0.5<<
18) Browsing ViewManager code initialized Class menu items to disabled
19) Multiple problems with CompositePanes and new event mechanism support
20) Problem loading old items from Scrapbook after adding in new event support
21) Minor display problem of CompositePanes with overlapping widgets inside WBPro editor
22) EntryFields did not display in proper font in WBPro editor
23) TextEdits lost style on re-edit
24) WindowBuilder Pro menu should only appear in the Transcript
25) In LinkEditor, link option descriptions can't be read (font too large)
26) MenuEditor should disable Link and Action options for top-level menu
27) Modified Window>>drawControl: to check for nil pens
28) Mods to WindowBuilder code generation to correct minor z-order problems
29) Problem returning to main editor from CompositePane editor under MDI mode

NEW EVENT MODEL SUPPORT

Beginning with WindowBuilder Pro for V/Win32 version 1.0.4, Digitalk's new event
model is supported. This can be turned on via the 'Triggered Event Support' add-in
in the Add-In Manager. When specifying a selector for a new event, use colons in
the selector to specify where arguments should be.  If you add one more argument
in your selector that the event selector expects, then that last argument will be
the pane in which the event was triggered.

By default, the target (reciever) of any event handler is 'self' (the ViewManager itself).
With the new event model, WindowBuilder Pro can generate event handlers that target
additional entities. Specifically, valid targets include 'self', the view in which the pane
resides, the pane itself, or any instance variable of the ViewManager (e.g., a ViewManager
could define an instance variable named 'model' and use that as the target of any triggered
events). To set the target, right mouse click on the 'Perform/Send' entryfield. This will popup
a menu from which you can select a target. The current target will be indicated via a
checkmark. If you do not specify a target, 'self' is used by default. Note that target selection
is only valid in the context of the new event model. The old event model will only support
'self' as a valid target.

Callback methods will only be generated for events that are configured to target 'self'
(WindowBuilder Pro will not generate code into any other class except the current
ViewManager). When defining event handlers that target other entities, make sure that
those other entities support the methods that you are invoking. If you configure events to
target one of the ViewManager's instance variables, it is important to make sure that that
instance variable is properly initialized before the ViewManager's #createViews method
is executed (otherwise, the events will be configured to target 'nil'). You can do this by
creating an #initialize or #openOn: method for your ViewManager that properly initializes
any needed instance variables.

Note that code generated using the new event model is not currently portable to V/Win or
V/OS2. We have also created a very nice example of using Drag & Drop with WBPro.
Special thanks go out to Dan Rubel for his efforts in this area.

For example, in the Window Builder Pro's window:

    When:   needsDragDropObjects
    Send:   dragFromMyPane

Here, the method >>dragFromMyPane will be evaluated when the #needsDragDropObjects
event is triggered.

   When:   needsDragDropObjects
   Send:   dragFromMyPane:

Note the addition of a colon at the end of the 'Send' selector. >>dragFromMyPane: aPane
will be evaluated when the #needsDragDropObjects event is triggered, where aPane is the
pane in which the event occurred

    When:   dragDropped:
    Send:   droppedOnMyPane:

Here, the method >>droppedOnMyPane: aDragDropList will be evaluated when the #dragDropped:
event is triggered.

    When:   dragDropped:
    Send:   droppedOnMyPane:thePane:

>>droppedOnMyPane: aDragDropList thePane: aPane will be evaluated when the #dragDropped:
event is triggered, where aPane is the pane in which the event occurred

All new events appear in the 'When' pulldown list with ' (new)' after them. For descriptions
of how these new events are used, consult Digitalk's documentation.

 
(c) Objectshare Systems, Inc. 1994

For more information contact:

    Objectshare Systems, Inc.
    5 Town & Country Village, Suite 735
    San jose, CA 95128-2026
    (408) 970-7280 Orders & Support
    (408) 970-7282 Fax


