eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'ExtendedComboBox::MenuWrapper':

Home

everywhere
www.exept.de
for:
[back]

Class: MenuWrapper (private in ExtendedComboBox

This class is only visible from within ExtendedComboBox.

Inheritance:

   Object
   |
   +--GraphicsContext
      |
      +--DeviceGraphicsContext
         |
         +--GraphicsMedium
            |
            +--DisplaySurface
               |
               +--SimpleView
                  |
                  +--View
                     |
                     +--TopView
                        |
                        +--PopUpView
                           |
                           +--ExtendedComboBox::MenuWrapper

Package:
stx:libwidg2
Category:
Views-Interactors
Owner:
ExtendedComboBox

Description:


problem: we have a grab - and get all events;
to simulate regular behaior inside, we have to synthetically simulate
focus control and implicit grab on buttonPress.

[instance variables:]
    comboBox                <ExtendedComboBox>

    widget                  <View>          the widget which contains the menu

    lastPointerView         <View>          view which contained the
                                            mouse pointer.
                                            used for enter/leave event generation.

    implicitGrabView         <View>         view in which button was pressed;
                                            nilled when released (wherever).
                                            If non-nil, all events are forwarded to this
                                            one (for example to scroll with mouse outside the scrollbar)

    eventHandler            <OneArgBlock>   if not nil, the block will
                                            handle all inputEvents

    resizeCursor            <Cursor>        shown for resize handle

    restoreCursor           <Cursor>        default cursor


Instance protocol:

accessing
o  application
return the application, under which this view was opened,
or nil, if there is no application

o  clearImplicitGrab

o  preferredExtent
compute & return the preferredExtent from the components' preferrences

o  widget
returns the widget wrapped by the menuView

event handling
o  dispatchEvent: event withFocusOn: focusViewOrNil delegate: doDelegate
dispatch the event

o  forwardEvent: ev withFocusOn: focusView
handle a key press event

o  setupResizeEventHandler

focus handling
o  wantsFocusWithButtonPress
views which do not like to take the keyboard focus
with buttonPress can do so by redefining this
to return false

initialization
o  for: aWidget in: aReceiver
create a wrapper for a widget and the receiver, an extented comboBox

o  hideRequest
hide request from windowGroup (i.e. via Escape key).
Can be redefined in subclasses which dont like this

o  initialize

o  level: aNumber

o  mapped
grab resources (mouse and keyboard)

queries
o  isEventAssignedToResizeArea: ev

o  raiseDeiconified

o  type

searching
o  detectViewAtX: x y: y
detect view at x@y. if no view is detected or
the it is my view, nil is returned

o  detectViewAtX: x y: y in: aTopView
detect view at x@y in a top view; if no view is detected
the topview is returned



ST/X 6.1.1; WebServer 1.620 at exept:8081; Mon, 21 May 2012 16:31:03 GMT