Displaying the ProtoSoupOverview Vertical Divider

One of the Newton 2.x OS Q&As
Copyright © 1997 Newton, Inc. All Rights Reserved. Newton, Newton Technology, Newton Works, the Newton, Inc. logo, the Newton Technology logo, the Light Bulb logo and MessagePad are trademarks of Newton, Inc. and may be registered in the U.S.A. and other countries. Windows is a registered trademark of Microsoft Corp. All other trademarks and company names are the intellectual property of their respective owners.


For the most recent version of the Q&As on the World Wide Web, check the URL: http://www.newton-inc.com/dev/techinfo/qa/qa.htm
If you've copied this file locally, click here to go to the main Newton Q&A page.
This document was exported on 7/23/97.


Displaying the ProtoSoupOverview Vertical Divider (2/5/96)

Q: How can I display the vertical divider in a protoSoupOverview?

A: The mechanism for bringing up the vertical divider line was not correctly implemented in protoSoupOverview. You can draw one in a viewDrawScript as follows:

    // setup a cached shape for efficiency
    mySoupOverview.cachedLine := nil;

    mySoupOverview.viewSetupDoneScript := func()
    begin
       inherited:?viewSetupDoneScript();
    
       local bounds := :LocalBox();
       cachedLine := MakeRect(selectIndent - 2, 0,
            selectIndent - 1, bounds.bottom);
    end;
    
    mySoupOverview.viewDrawScript := func()
    begin
       // MUST call inherited script
       inherited:?viewDrawScript();
    
       :DrawShape(cachedLine, 
            {penPattern: vfNone, fillPattern: vfGray});
    end;