struct CCL::IPopupSelectorClient

Overview

#include <ipopupselector.h>

struct IPopupSelectorClient: public CCL::IUnknown
{
    // enums

    enum Result;

    // methods

    virtual IView*CCL_API createPopupView (SizeLimit& limits) = 0;
    virtual void CCL_API attached (IWindow& popupWindow) = 0;

    virtual Result CCL_API onMouseDown (
        const MouseEvent& event,
        IWindow& popupWindow
    ) = 0;

    virtual Result CCL_API onMouseUp (const MouseEvent& event, IWindow& popupWindow) = 0;
    virtual Result CCL_API onKeyDown (const KeyEvent& event) = 0;
    virtual Result CCL_API onKeyUp (const KeyEvent& event) = 0;

    virtual Result CCL_API onEventProcessed (
        const GUIEvent& event,
        IWindow& popupWindow,
        IView* view
    ) = 0;

    virtual void CCL_API onPopupClosed (Result result) = 0;
    virtual int32 CCL_API getPopupBehavior () = 0;

    virtual tbool CCL_API mouseWheelOnSource (
        const MouseWheelEvent& event,
        IView* source
    ) = 0;

    virtual ITouchHandler*CCL_API createTouchHandler (
        const TouchEvent& event,
        IWindow* window
    ) = 0;

    virtual void CCL_API setCursorPosition (PointRef where) = 0;
    virtual tbool CCL_API setToDefault () = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;

Detailed Documentation

Methods

virtual IView*CCL_API createPopupView (SizeLimit& limits) = 0

Create the view that should popup.

Obey the given limits.

virtual void CCL_API attached (IWindow& popupWindow) = 0

Called when the window gets attached on the screen.

virtual Result CCL_API onMouseDown (
    const MouseEvent& event,
    IWindow& popupWindow
) = 0

Called before the event is processed.

Return kOkay or kCancel to close popup. Point is in window coords.

virtual Result CCL_API onMouseUp (const MouseEvent& event, IWindow& popupWindow) = 0

Called before the event is processed.

Return kOkay or kCancel to close popup. Point is in window coords.

virtual Result CCL_API onKeyDown (const KeyEvent& event) = 0

Called before the event is processed.

Return kOkay or kCancel to close popup.

virtual Result CCL_API onKeyUp (const KeyEvent& event) = 0

Called before the event is processed.

Return kOkay or kCancel to close popup.

virtual Result CCL_API onEventProcessed (
    const GUIEvent& event,
    IWindow& popupWindow,
    IView* view
) = 0

Called after a mouseDown or keyDown has been processed.

virtual void CCL_API onPopupClosed (Result result) = 0

Called when popup has been closed.

Passes the result from onMouseDown / onKeyDown.

virtual int32 CCL_API getPopupBehavior () = 0

Get flags defining the behavior of the popup window.

virtual tbool CCL_API mouseWheelOnSource (
    const MouseWheelEvent& event,
    IView* source
) = 0

Called on mousewheel over a source view that invokes a popup selector.

virtual ITouchHandler*CCL_API createTouchHandler (
    const TouchEvent& event,
    IWindow* window
) = 0

Called when touches begin on a source view.

Event coordinates are translated to the popup window.

virtual void CCL_API setCursorPosition (PointRef where) = 0

Sets the position where the client should be anchored (screen coordinates), typically the mouse cursor or a touch position.

virtual tbool CCL_API setToDefault () = 0

Set to default.