### IFontDialog

  The IFontDialog class displays a font dialog from which the user can choose a font. Once the user chooses a font, you can use accessor functions to retrieve information about the chosen font.

  The easiest way to use this class is to specify an IFont object on the IFontDialog::Settings constructor. This causes the following to happen:

  - The specified IFont is used as the initially displayed font choice in the dialog.
  - If the user ends the dialog by selecting the OK push button, the specified IFont object is automatically changed to the font the user selected.

#### OS/2 Considerations

  In OS/2 Presentation Manager, you can have modal windows that do not use the desktop as their parent. However, Presentation Manager can change the owner window of your dialog to something other than what you specified to prevent your application from being hung. See the Presentation Manager Programming Reference, Volume 2 for more information under WinLoadDlg.

  The easiest way to ensure that your dialog is modal is to use the desktop as the parent and an application window as the owner. Presentation Manager only disables the owner window and its child windows (the child windows of the child windows, and so forth) while a modal dialog is displayed. If you specify 0 for parent, the desktop automatically becomes the parent of the dialog.

### IFontDialog - Member Functions and Data by Group

### Constructors & Destructor

You can construct and destruct objects of this class, but you cannot copy them.

~IFontDialog

      public:
      virtual ~IFontDialog()

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

IFontDialog

  Overload 1

      public:
      IFontDialog( IWindow* parent,
                   IWindow* owner,
                   IHandler* handler,
                   const Style& style = defaultStyle ( ),
                   const Settings& settings = Settings ( 0 ) )

  You can construct an object of this class by using this constructor, which accepts a parent, owner, handler, style, and settings as parameters.

  To add a IFontDialogHandler to a modal IFontDialog, you must specify the handler on the constructor. Once you create a modal IFontDialog, the dialog does not return control to the application until the user closes the dialog. At that time, it is too late to add a handler.

  The parameters for this constructor are the following:

  parent
    The parent of the dialog box. If you specify 0, the desktop becomes the parent of the dialog.
  owner
    The owner window.
  handler
    A pointer to an IHandler object.
  style
    Use the styles provided by IFontDialog to specify the style. The default creates a modal dialog. To construct a modeless dialog, specify the modeless style. Optional.
  settings
    Use the settings provided by IFontDialog::Settings to specify the setting. Optional.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 2

      public:
      IFontDialog( IWindow* parent,
                   IWindow* owner,
                   const Settings& settings,
                   const Style& style = defaultStyle ( ) )

  You can construct an object of this class by using this constructor, which accepts a parent, owner, settings, and style as parameters.

  The parameters for this constructor are the following:

  parent
    The parent of the dialog box. If you specify 0, the desktop becomes the parent of the dialog.
  owner
    The owner window.
  settings
    Use the settings provided by IFontDialog::Settings to specify the setting.
  style
    Use the styles provided by IFontDialog to specify the style. The default creates a modal dialog. To construct a modeless dialog, specify the modeless style. Optional.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 3

      public:
      IFontDialog( IWindow* parent,
                   IWindow* owner,
                   const Style& style,
                   const Settings& settings )

  You can construct an object of this class by using this constructor, which accepts a parent, owner, style, and settings as parameters.

  The parameters for this constructor are the following:

  parent
    The parent of the dialog box. If you specify 0, the desktop becomes the parent of the dialog.
  owner
    The owner window.
  style
    Use the styles provided by IFontDialog to specify the style. The default creates a modal dialog. To construct a modeless dialog, specify the modeless style.
  settings
    Use the settings provided by IFontDialog::Settings to specify the setting.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 4

      public:
      IFontDialog( IWindow* parent,
                   IWindow* owner,
                   const Style& style = defaultStyle ( ) )

  You can construct an object of this class by using this constructor, which accepts a parent, owner, and style as parameters.

  The parameters for this constructor are the following:

  parent
    The parent of the dialog box. If you specify 0, the desktop becomes the parent of the dialog.
  owner
    The owner window.
  style
    Use the styles provided by IFontDialog to specify the style. The default creates a modal dialog. To construct a modeless dialog, specify the modeless style. Optional.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Getting Information about the Chosen Font

Use these members to retrieve information about the font selected in the font dialog.

emHeight

      public:
      unsigned long emHeight() const

  Returns the height of the Em square for the font.

  In traditional composition, the em is a unit of measurement exactly as wide and high as the point size being set. It is called em because the letter M in early fonts was usually cast on a square body. In digital font technology, the em square is a logical rectangle against which digital glyphs (the visible parts of the characters) are laid out. The em square is used to scale fonts to a specific point size. Because the height of the em square is given in pixels, it can be considered the point size in device units. For example, a font could be referred to as a 50-ppem (pixels per em square) font. The pixel size determines the physical point size. A 75-ppem font on a 300-dpi device is an 18-point font; on a 150-dpi device it is a 36-point font. The number of pixels required for the desired point size is computed using the resolution of the output device and the em-square size.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

externalLeading

      public:
      unsigned long externalLeading() const

  Returns the amount of white space between lines of text.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

fontFamily

      public:
      IString fontFamily() const

  Returns the font's family name.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

fontWeight

      public:
      unsigned long fontWeight() const

  Returns the weight class (boldness) of the font.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Ignored

AIX Considerations

  This function always returns 0.

fontWidth

      public:
      unsigned long fontWidth() const

  Returns the width class of the font.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Ignored

AIX Considerations

  This function always returns 0.

nominalPointSize

      public:
      unsigned long nominalPointSize() const

  For a bitmap font, the height of the font is returned. For a vector font, the optimal size for the font is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

AIX Considerations

  For scalable fonts, this function returns 0.

pointSize

      public:
      unsigned long pointSize() const

  Returns the font's point size.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

xHeight

      public:
      unsigned long xHeight() const

  Returns the height above the baseline for lowercase letters.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

### Getting Information about the Dialog

Use these members to retrieve information about the dialog.

backgroundColor

      public:
      virtual IColor backgroundColor() const

  Returns the background color for the dialog frame.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | No

buttonPressedId

      public:
      unsigned long buttonPressedId() const

  Returns the ID of the push button used to end the dialog.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

id

      public:
      virtual unsigned long id() const

  Returns the window identifier of the IFontDialog window.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

isModeless

      public:
      bool isModeless() const

  If the font dialog is modeless, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

pressedOK

      public:
      bool pressedOK() const

  If the user ended the dialog by selecting the OK push button, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

returnValue

      public:
      long returnValue() const

  If an error occurs, the return code is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

cancel

      public:
      static const unsigned long cancel

  Returned push button ID value when the user dismisses the dialog by pressing the Cancel button.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

ok

      public:
      static const unsigned long ok

  Returned push button ID value when the user dismisses the dialog by pressing the OK button.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Setting Information about the Dialog

Use these members to set specific information about the dialog.

setBackgroundColor

      public:
      virtual IFontDialog&
        setBackgroundColor( const IColor& color )

  Sets the background color for the font dialog frame.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setId

      public:
      virtual IFontDialog& setId(unsigned long newIdentifier)

  Sets the window identifier of the window.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Styles

The style members provide a set of valid font dialog styles for IFontDialog::setDefaultStyle and the constructors of the IFontDialog class.

convertToGUIStyle

      public:
      virtual unsigned long
        convertToGUIStyle( const IBitFlag& style,
                           bool extendedOnly = false ) const

  Converts a style object into a value appropriate for the presentation system. The default action is to return the base GUI styles for the platform. Extended styles, those defined by the application and the Open Class Library, are returned if you set extendedOnly to true.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

defaultStyle

      public:
      static Style defaultStyle()

  Returns the default style. The default style is classDefaultStyle unless you have changed it using setDefaultStyle.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setDefaultStyle

      public:
      static void setDefaultStyle(const Style& newDefault)

  Sets the default style for all subsequent font dialogs.

  style
    Use the styles provided by IFontDialog to specify the default style.

  This member function is not thread safe. In a multithreaded application, it should only be called when a conflict is not possible. A conflict can arise if you set the default style on one thread at the same time that it is being queried on another. In this situation, the query would take place while the style is in an unknown state.

  When you create a window class and do not specifically specify window styles in the constructor, the Open Class Library queries the default style. Therefore, the only safe place to call this member function is when no other application threads that create windows are active.

  Another way to avoid a conflict in a multithreaded application is to specifically specify window styles on window construction, rather than calling this member function.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

applyButton

      public:
      static const Style applyButton

  Adds an Apply push button to the dialog. The apply button is processed only in a modeless dialog.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

bitmapOnly

      public:
      static const Style bitmapOnly

  Specifies that the dialog present only bitmap font choices.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

classDefaultStyle

      public:
      static const Style classDefaultStyle

  Specifies the original default style for this class. This is a static variable set to 0 indicating that no style flags are set.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

fixedWidthOnly

      public:
      static const Style fixedWidthOnly

  Specifies that the dialog present fixed-width (monospace) fonts only.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

helpButton

      public:
      static const Style helpButton

  Adds a Help push button to the dialog. This push button sends a help message to the owner of the dialog.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

modeless

      public:
      static const Style modeless

  Specifies that the dialog is modeless. The constructor for a modeless dialog returns immediately. To determine the font chosen by the user, create an IFontDialogHandler and use IFontDialog::modelessResults.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

noStyle

      public:
      static const Style noStyle

  Disables all of the valid styles. Use this style only when you are not using any other styles.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

noSynthesize

      public:
      static const Style noSynthesize

  Specifies that the dialog does not manipulate bitmap fonts to synthesize features, such as italics or bold.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

proportionalOnly

      public:
      static const Style proportionalOnly

  Specifies that the dialog present proportionally-spaced fonts only.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

Windows Considerations
  This style is ignored in Windows.

resetButton

      public:
      static const Style resetButton

  Adds a Reset push button to the dialog. When this push button is selected, the values for the dialog are restored to their initial values.

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Yes

Windows Considerations
  This style is ignored in Windows.

vectorOnly

      public:
      static const Style vectorOnly

  Specifies that the dialog present vector fonts only.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### IFontDialog - Inherited Member Functions and Data

#### Inherited Public Functions

  IFrameWindow

  -     virtual ~IFrameWindow()

  -     virtual IFrameWindow&
          addExtension( IWindow* newExtension,
                        Location location,
                        double percentage,
                        SeparatorType separator = thinLine )

  -     virtual IFrameWindow&
          addExtension( IWindow* newExtension,
                        Location location,
                        unsigned long widthOrHeight,
                        SeparatorType separator = thinLine )

  -     virtual IFrameWindow&
          addExtension( IWindow* newExtension,
                        Location location,
                        SeparatorType separator = thinLine )

  -     virtual IFrameWindow&
          addExtension( IWindow* newExtension,
                        Location location,
                        int widthOrHeight,
                        SeparatorType separator = thinLine )

  -     virtual IFrameWindow& addToWindowList()

  -     virtual IFrameWindow& beginFlashing()

  -     unsigned long borderHeight() const

  -     ISize borderSize() const

  -     unsigned long borderWidth() const

  -     virtual IWindow* client() const

  -     virtual IWindowHandle clientHandle() const

  -     virtual IRectangle
          clientRectFor( const IRectangle& frameRect ) const

  -     virtual IFrameWindow& close()

  -     IColorMap* colorMap() const

  -     virtual IArgList
          convertToArgList( const IBitFlag& style ) const

  -     virtual IWindowHandle defaultEmphasisButton() const

  -     static IWindow::SiblingOrder defaultOrdering()

  -     virtual IWindowHandle defaultPushButton() const

  -     virtual IColor disabledBackgroundColor() const

  -     virtual IFrameWindow& dismiss(unsigned long result = 0)

  -     virtual IFrameWindow&
          enableNotification( bool enable = true )

  -     virtual IFrameWindow& endFlashing()

  -     virtual IRectangle
          frameRectFor( const IRectangle& clientRect ) const

  -     virtual IWindowHandle
          handleFor( const Style& standardControl ) const

  -     virtual IWindowHandle handleForChildCreation() const

  -     virtual IPointerHandle icon() const

  -     IFrameWindow( const IResourceId& resId,
                      const IFrameWindow::Style& style )

  -     IFrameWindow( const IResourceId& resId,
                      IWindow* owner = 0,
                      FrameSource source = tryDialogResource )

  -     IFrameWindow(const IWindowHandle& hwnd)

  -     IFrameWindow( const IResourceId& resId,
                      IWindow* parent,
                      IWindow* owner,
                      const IRectangle& initRect,
                      const IFrameWindow::Style& style = defaultStyle ( ),
                      const char* title = 0 )

  -     IFrameWindow( unsigned long id = IC_DEFAULT_FRAME_ID,
                      FrameSource source = tryDialogResource )

  -     IFrameWindow( const IFrameWindow::Style& style,
                      const IResourceId& resId = IC_DEFAULT_FRAME_ID )

  -     IFrameWindow( const IResourceId& resId,
                      IWindow* parent,
                      IWindow* owner,
                      FrameSource source = tryDialogResource )

  -     IFrameWindow( const char* title,
                      const IResourceId& resId = IC_DEFAULT_FRAME_ID,
                      const IFrameWindow::Style& style = defaultStyle ( ) )

  -     virtual bool isAnExtension(const IWindow* window) const

  -     bool isFlashing() const

  -     bool isMaximized() const

  -     bool isMinimized() const

  -     bool isModal() const

  -     virtual IWindowHandle
          matchForMnemonic( unsigned short character ) const

  -     virtual IFrameWindow& maximize()

  -     virtual IRectangle maximizeRect() const

  -     virtual ISize maximumFrameSize() const

  -     virtual IFrameWindow& minimize()

  -     virtual IRectangle minimizeRect() const

  -     virtual ISize minimumFrameSize() const

  -     virtual IFrameWindow&
          moveSizeToClient( const IRectangle& clientRect )

  -     static IRectangle nextShellRect()

  -     virtual IFrameWindow&
          notifyOwner( unsigned long id,
                       ICommandEvent::Source source = ICommandEvent::unknown,
                       bool pointerDevice = false )

  -     virtual IFrameWindow&
          removeExtension( IWindow* extension,
                           bool updateDisplay = true )

  -     virtual IFrameWindow& removeFromWindowList()

  -     virtual IFrameWindow& resetBackgroundColor()

  -     virtual IFrameWindow& resetDisabledBackgroundColor()

  -     virtual IFrameWindow& restore()

  -     virtual IRectangle restoreRect() const

  -     virtual unsigned long result() const

  -     IFrameWindow& setBorderHeight(unsigned long cy)

  -     IFrameWindow& setBorderSize(unsigned long cxcy)

  -     IFrameWindow&
          setBorderSize( unsigned long cx,
                         unsigned long cy )

  -     IFrameWindow& setBorderSize(const ISize& size)

  -     IFrameWindow& setBorderWidth(unsigned long cx)

  -     virtual IFrameWindow& setClient(IWindow* newClient)

  -     virtual IFrameWindow& setColorMap(IColorMap* colorMap)

  -     static void
          setDefaultOrdering( IWindow::SiblingOrder ordering )

  -     static void setDefaultStyle(const Style& style)

  -     virtual IFrameWindow&
          setDestroyOnClose( bool destroy = true )

  -     virtual IFrameWindow&
          setExtensionSize( IWindow* extension,
                            unsigned long widthOrHeight )

  -     virtual IFrameWindow&
          setExtensionSize( IWindow* extension,
                            int widthOrHeight )

  -     virtual IFrameWindow&
          setExtensionSize( IWindow* extension,
                            double widthOrHeight )

  -     virtual IWindow& setFont(const IFont& font)

  -     virtual IFrameWindow& setIcon(unsigned long iconResId)

  -     virtual IFrameWindow& setIcon(const IPointerHandle& icon)

  -     virtual IFrameWindow& setIcon(const IResourceId& iconResId)

  -     IFrameWindow&
          setLayoutDistorted( unsigned long layoutAttributesOn,
                              unsigned long layoutAttributesOff )

  -     virtual IFrameWindow&
          setMaximumFrameSize( const ISize& maximumFrameSize )

  -     virtual IFrameWindow&
          setMinimumFrameSize( const ISize& minimumFrameSize )

  -     virtual IFrameWindow&
          setRestoreRect( const IRectangle& rect )

  -     virtual IFrameWindow& setResult(unsigned long result)

  -     virtual IFrameWindow& setTitleText(const char* titleText)

  -     virtual IFrameWindow&
          setTitleText( const IResourceId& titleResId )

  -     IFrameWindow& setToolBarList(IToolBarList* toolBarList)

  -     virtual IFrameWindow& shareParentDBCSStatus()

  -     virtual IFrameWindow& show(bool showWindow = true)

  -     virtual unsigned long showModally()

  -     virtual IString titleText() const

  -     IToolBarList* toolBarList() const

  -     virtual IFrameWindow& update(bool forceUpdate = false)

  -     virtual IFrameWindow&
          useExtensionMinimumSize( IWindow* extension )

  -     bool usesDialogBackground() const

  -     bool willDestroyOnClose() const

  INotifier

  -     virtual ~INotifier()

  -     virtual INotifier& disableNotification() = 0

  -     virtual INotifier&
          enableNotification( bool enable = true ) = 0

  -     INotifier()

  -     virtual bool isEnabledForNotification() const = 0

  -     virtual INotifier&
          notifyObservers( const INotificationEvent& event ) = 0

  -     virtual INotifier&
          notifyObserversAsync( const INotificationEvent& event )

  -     const IThreadId& threadId() const

  IWindow

  -     virtual ~IWindow()

  -     IAccelTblHandle acceleratorHandle() const

  -     IAcceleratorTable acceleratorTable() const

  -     virtual IColor activeColor() const

  -     IWindow&
          addOrReplaceAttribute( const IAttributeName& name,
                                 const IAttribute& attribute )

  -     IWindow&
          adoptWindowData( const DataHandle& typeToken,
                           IWindowData* windowData )

  -     virtual IString asDebugInfo() const

  -     virtual IString asString() const

  -     IAttributeName
          attributeNameAt( const AttributeCursor& cursor ) const

  -     const IAttribute*
          attributeWithName( const IAttributeName& name,
                             ESearchType search = kWindowOnly ) const

  -     virtual IWindow& capturePointer(bool capture = true)

  -     ISize characterSize() const

  -     IWindowHandle childAt(const ChildCursor& cursor) const

  -     IWindow* childWindowAt(const ChildCursor& cursor) const

  -     static DataHandle
          dataHandleWithKey( const char* dataKeyName )

  -     static SiblingOrder defaultOrdering()

  -     static IWindow* desktopWindow()

  -     virtual IWindow& disable()

  -     virtual IColor disabledForegroundColor() const

  -     virtual IWindow& disableGroup()

  -     IWindow& disableMinimumSizeCaching()

  -     virtual IWindow& disableNotification()

  -     virtual IWindow& disableTabStop()

  -     virtual IWindow& disableUpdate()

  -     bool
          dispatchRemainingHandlers( IEvent& event,
                                     bool callDefProc = true )

  -     virtual IWindow& enable(bool enableWindow = true)

  -     virtual IWindow& enableGroup(bool enable = true)

  -     IWindow&
          enableMinimumSizeCaching( bool enableCaching = true )

  -     virtual IWindow& enableNotification(bool enable = true)

  -     virtual IWindow& enableTabStop(bool enable = true)

  -     virtual IWindow& enableUpdate(bool enableWindow = true)

  -     static IWindow::ExceptionFn* exceptionFunction()

  -     virtual IFont font() const

  -     virtual IColor foregroundColor() const

  -     virtual IWindowHandle handle() const

  -     virtual bool
          handleException( IException& dispatcherException,
                           IEvent& exceptionEvent )

  -     static IWindowHandle
          handleWithParent( unsigned long identifier,
                            const IWindowHandle& parent )

  -     static IWindowHandle handleWithPointerCaptured()

  -     virtual bool hasFocus() const

  -     virtual bool hasPointerCaptured() const

  -     unsigned long helpId() const

  -     virtual IWindow& hide()

  -     virtual IWindow& hideSourceEmphasis()

  -     virtual IColor hiliteBackgroundColor() const

  -     virtual IColor hiliteForegroundColor() const

  -     virtual IColor inactiveColor() const

  -     virtual IRectangle invalidatedRect() const

  -     virtual IRegionHandle invalidatedRegion() const

  -     bool isAutoDeleteObject() const

  -     bool isAutoDestroyWindow() const

  -     bool isEnabled() const

  -     virtual bool isEnabledForNotification() const

  -     virtual bool isFrameWindow() const

  -     virtual bool isGroup() const

  -     bool isHandling(const EventMask& events) const

  -     virtual bool
          isLayoutDistorted( unsigned long layoutAttribute ) const

  -     bool isMinimumSizeCachingEnabled() const

  -     bool isShowing() const

  -     virtual bool isTabStop() const

  -     bool isUpdateEnabled() const

  -     virtual bool isValid() const

  -     bool isVisible() const

  -     static bool isWindowValid(const IWindow* window)

  -     IDMItemProvider* itemProvider() const

  -     IWindow(unsigned long identifier, IWindow* parent)

  -     IWindow(const IWindowHandle& handle)

  -     virtual IRectangle layoutAdjustment() const

  -     static IPoint
          mapPoint( const IPoint& point,
                    const IWindowHandle& from,
                    const IWindowHandle& to )

  -     IMessageQueueHandle messageQueue() const

  -     ISize minimumSize(bool windowCalculatedSize = false) const

  -     virtual IPointerHandle mousePointer() const

  -     static void movePointerTo(const IPoint& position)

  -     virtual IWindow&
          moveSizeTo( const IRectangle& newSizeAndPosition )

  -     virtual IWindow& moveTo(const IPoint& newPosition)

  -     virtual IRectangle nativeRect() const

  -     virtual INotifierAddress notifierAddress() const

  -     virtual IWindow&
          notifyObservers( const INotificationEvent& event )

  -     virtual IWindow&
          notifyObserversAsync( const INotificationEvent& event )

  -     static IWindow* objectWindow()

  -     virtual IWindow* owner() const

  -     IWindow* parent() const

  -     static ISize parentSize(const IWindowHandle& windowHandle)

  -     virtual ISize parentSize() const

  -     static IPoint pointerPosition()

  -     virtual IPoint position() const

  -     virtual IWindow&
          positionBehindSibling( const IWindowHandle& siblingWindow )

  -     virtual IWindow& positionBehindSiblings()

  -     virtual IWindow& positionOnSiblings()

  -     virtual const IWindow&
          postEvent( unsigned long eventId,
                     const IEventParameter1& parm1 = 0,
                     const IEventParameter2& parm2 = 0 ) const

  -     virtual const IWindow&
          postEvent( EventType eventType,
                     const IEventParameter1& parm1 = 0,
                     const IEventParameter2& parm2 = 0 ) const

  -     virtual const IWindow& postEvent(const IEvent& event) const

  -     virtual IPresSpaceHandle presSpace() const

  -     virtual IRectangle rect() const

  -     virtual IWindow&
          refresh( const IRectangle& invalidRectangle,
                   bool immediate = false )

  -     virtual IWindow& refresh(RefreshType type = paintAll)

  -     virtual IWindow& releasePointer()

  -     virtual void
          releasePresSpace( const IPresSpaceHandle& presentationSpaceHandle ) const

  -     IWindow& removeAllAttributes()

  -     IWindow& removeAttribute(const IAttributeName& name)

  -     virtual IWindow& resetActiveColor()

  -     virtual IWindow& resetBackgroundColor()

  -     virtual IWindow& resetDisabledBackgroundColor()

  -     virtual IWindow& resetDisabledForegroundColor()

  -     virtual IWindow& resetFont()

  -     virtual IWindow& resetForegroundColor()

  -     virtual IWindow& resetHiliteBackgroundColor()

  -     virtual IWindow& resetHiliteForegroundColor()

  -     virtual IWindow& resetInactiveColor()

  -     IWindow& resetMinimumSize()

  -     virtual IWindow& resetShadowColor()

  -     virtual IEventResult
          sendEvent( unsigned long eventId,
                     const IEventParameter1& parm1 = 0,
                     const IEventParameter2& parm2 = 0 ) const

  -     virtual IEventResult
          sendEvent( EventType eventType,
                     const IEventParameter1& parm1 = 0,
                     const IEventParameter2& parm2 = 0 ) const

  -     virtual IEventResult sendEvent(const IEvent& event) const

  -     IWindow&
          setAcceleratorHandle( const IAccelTblHandle& handle )

  -     IWindow&
          setAcceleratorTable( const IAcceleratorTable* acceleratorTable )

  -     virtual IWindow& setActiveColor(const IColor& color)

  -     IWindow& setAutoDeleteObject(bool autoDelete = true)

  -     IWindow& setAutoDestroyWindow(bool autoDestroy = false)

  -     virtual IWindow& setBackgroundColor(const IColor& color)

  -     static void setDefaultOrdering(SiblingOrder order)

  -     virtual IWindow&
          setDisabledBackgroundColor( const IColor& color )

  -     virtual IWindow&
          setDisabledForegroundColor( const IColor& color )

  -     static IWindow::ExceptionFn*
          setExceptionFunction( IWindow::ExceptionFn* exceptionFunction )

  -     virtual IWindow& setFocus()

  -     virtual IWindow& setForegroundColor(const IColor& color)

  -     IWindow& setHelpId(unsigned long helpTopicId)

  -     virtual IWindow&
          setHiliteBackgroundColor( const IColor& color )

  -     virtual IWindow&
          setHiliteForegroundColor( const IColor& color )

  -     virtual IWindow& setId(unsigned long newIdentifier)

  -     virtual IWindow& setInactiveColor(const IColor& color)

  -     IWindow& setItemProvider(IDMItemProvider* dragProvider)

  -     virtual IWindow&
          setLayoutDistorted( unsigned long layoutAttributesOn,
                              unsigned long layoutAttributesOff )

  -     IWindow& setMinimumSize(const ISize& size)

  -     virtual IWindow&
          setMousePointer( const IPointerHandle& mousePointer )

  -     virtual IWindow& setOwner(const IWindow* newOwner)

  -     virtual IWindow& setParent(const IWindow* newParent)

  -     virtual IWindow& setShadowColor(const IColor& color)

  -     virtual IColor shadowColor() const

  -     virtual IWindow& show(bool showWindow = true)

  -     virtual IWindow& showSourceEmphasis(bool show = true)

  -     virtual ISize size() const

  -     virtual IWindow& sizeTo(const ISize& newSize)

  -     IWindow& startHandling(const EventMask& events)

  -     IWindow& stopHandling(const EventMask& events)

  -     virtual IWindow&
          validateRect( const IRectangle& validatedRectangle )

  -     virtual IWindow&
          validateRegion( const IRegionHandle& validatedRegion )

  -     virtual IRectangle visibleRectangle() const

  -     IWindowData* windowData(const DataHandle& typeToken) const

  -     static IWindow*
          windowWithHandle( const IWindowHandle& windowHandle,
                            bool allThreads = true )

  -     static IWindow*
          windowWithOwner( unsigned long identifier,
                           const IWindow* owner,
                           bool allThreads = true )

  -     static IWindow*
          windowWithParent( unsigned long identifier,
                            const IWindow* parent,
                            bool allThreads = true )

#### Inherited Public Data

  IFrameWindow

  -     static const Style accelerator

  -     static INotificationId const activateId

  -     static const Style alignNoAdjust

  -     static const Style animated

  -     static const Style appDBCSStatus

  -     static const Style border

  -     static INotificationId const closeId

  -     static INotificationId const deactivateId

  -     static const Style dialogBackground

  -     static const Style dialogBorder

  -     static const Style hideButton

  -     static const Style horizontalScroll

  -     static const Style maximizeButton

  -     static const Style maximized

  -     static const Style menuBar

  -     static const Style minimizeButton

  -     static const Style minimized

  -     static const Style minimizedIcon

  -     static const Style noMoveWithOwner

  -     static const Style shellPosition

  -     static const Style sizingBorder

  -     static const Style systemMenu

  -     static const Style systemModal

  -     static const Style titleBar

  -     static INotificationId const titleTextId

  -     static const Style verticalScroll

  -     static const Style windowList

  IWindow

  -     static INotificationId const activeColorId

  -     static const EventMask allMouseMoves

  -     static INotificationId const
          attributeAddReplaceId

  -     static INotificationId const attributeRemoveId

  -     static INotificationId const backgroundColorId

  -     static INotificationId const borderColorId

  -     static const Style clipChildren

  -     static const Style clipSiblings

  -     static const Style clipToParent

  -     static INotificationId const commandId

  -     static const Style disabled

  -     static INotificationId const
          disabledBackgroundColorId

  -     static INotificationId const
          disabledForegroundColorId

  -     static INotificationId const enableId

  -     static INotificationId const focusId

  -     static INotificationId const fontId

  -     static INotificationId const foregroundColorId

  -     static const Style group

  -     static INotificationId const
          hiliteBackgroundColorId

  -     static INotificationId const
          hiliteForegroundColorId

  -     static INotificationId const inactiveColorId

  -     static const Style leftToRight

  -     static const EventMask mouseEntersLeaves

  -     static INotificationId const positionId

  -     static const Style rightToLeft

  -     static const Style saveBits

  -     static INotificationId const shadowColorId

  -     static INotificationId const sizeId

  -     static const EventMask someMouseMoves

  -     static const Style synchPaint

  -     static INotificationId const systemCommandId

  -     static const Style tabStop

  -     static const Style visible

  -     static INotificationId const visibleId

  INotifier

  -     static INotificationId const allChangesId

  -     static INotificationId const deleteId

#### Inherited Protected Functions

  IFrameWindow

  -     IFrameWindow& addDefaultHandler()

  -     IWindowHandle
          create( unsigned long id,
                  const char* title,
                  const IBitFlag& style,
                  IXmCreateFunction createFunction,
                  const IWindow* parent,
                  const IWindow* owner,
                  const IRectangle& initRect,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ) )

  -     IWindowHandle
          create( unsigned long id,
                  const char* title,
                  unsigned long style,
                  const char* windowClass,
                  const IWindowHandle& parent,
                  const IWindowHandle& owner,
                  const IRectangle& initRect,
                  const void* ctlData,
                  const void* presParams,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ),
                  unsigned long extendedStyle = 0 )

  -     IWindowHandle
          create( unsigned long id,
                  const char* title,
                  const IBitFlag& style,
                  const char* windowClass,
                  const IWindow* parent,
                  const IWindow* owner,
                  const IRectangle& initRect,
                  const void* ctlData,
                  const void* presParams,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ) )

  -     IWindowHandle
          create( unsigned long id,
                  const char* title,
                  unsigned long style,
                  IXmCreateFunction createFunction,
                  const IWindowHandle& parent,
                  const IWindowHandle& owner,
                  const IRectangle& initRect,
                  const void* callerArgList,
                  unsigned int callerNumberArguments,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ),
                  unsigned long extendedStyle = 0 )

  -     IFrameExtensions* extensions() const

  -     unsigned findExtension(IWindow* window)

  -     IFrameWindow&
          initialize( const IResourceId& resId,
                      const Style& style,
                      IWindow* parent = 0,
                      IWindow* owner = 0,
                      const IRectangle& initRect = nextShellRect ( ),
                      const char* title = 0 )

  -     virtual bool passEventToOwner(IEvent& event)

  -     unsigned long
          registerFrameClass( const Style& style,
                              const IResourceId& resId )

  -     IFrameWindow& removeDefaultHandler()

  -     virtual IFrameWindow&
          setBidiSettings( const IBidiSettings& bidiSettings,
                           bool childInherit,
                           bool refresh )

  -     virtual IFrameWindow&
          setDefaultEmphasisButton( const IWindowHandle& defaultEmphasisButton,
                                    bool enable )

  -     virtual IFrameWindow&
          setDefaultPushButton( const IWindowHandle& defaultPushButton )

  -     IFrameWindow& setExtensions(IFrameExtensions* extensions)

  -     IFrameWindow& start(const IWindowHandle& hwnd)

  -     IFrameWindow&
          tryToLoadDialog( const IResourceId& resId,
                           IWindow* parent = 0,
                           IWindow* owner = 0,
                           FrameSource source = tryDialogResource )

  IWindow

  -     IWindow& addHandler(IHandler* newHandler)

  -     virtual IWindow&
          addObserver( IObserver& observer,
                       const IInterest& interest )

  -     static void
          addToWindowSet( IWindow* window,
                          const IWindowHandle& windowHandle )

  -     IWindow& bindMessageQueue(bool bindToMessageQueue = true)

  -     virtual ISize calcMinimumSize() const

  -     IColor color(unsigned long colorArea) const

  -     IColor
          color( unsigned long colorArea,
                 const IColor& defaultColor ) const

  -     virtual IWindowHandle
          create( unsigned long id,
                  const char* text,
                  const IBitFlag& style,
                  IXmCreateFunction createFunction,
                  const IWindow* parent,
                  const IWindow* owner,
                  const IRectangle& initRect,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ) )

  -     virtual IWindowHandle
          create( unsigned long id,
                  const char* text,
                  unsigned long style,
                  IXmCreateFunction createFunction,
                  const IWindowHandle& parent,
                  const IWindowHandle& owner,
                  const IRectangle& initRect,
                  const void* callerArgList,
                  unsigned int callerNumberArguments,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ),
                  unsigned long extendedStyle = 0 )

  -     virtual IWindowHandle
          create( unsigned long id,
                  const char* text,
                  const IBitFlag& style,
                  const char* windowClass,
                  const IWindow* parent,
                  const IWindow* owner,
                  const IRectangle& initRect,
                  const void* ctlData,
                  const void* presParams,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ) )

  -     virtual IWindowHandle
          create( unsigned long id,
                  const char* text,
                  unsigned long style,
                  const char* windowClass,
                  const IWindowHandle& parent,
                  const IWindowHandle& owner,
                  const IRectangle& initRect,
                  const void* ctlData,
                  const void* presParams,
                  IWindow::SiblingOrder ordering = defaultOrdering ( ),
                  unsigned long extendedStyle = 0 )

  -     IWindow& defaultProcedure(IEvent& event)

  -     bool deleteIsInProcess() const

  -     bool dispatch(IEvent& event)

  -     virtual unsigned long extendedStyle() const

  -     bool isBoundToMessageQueue() const

  -     virtual bool isDragStarting(IEvent& event)

  -     bool isPrimaryWindow() const

  -     bool isUserWindowWordReserved() const

  -     IWindow()

  -     IWindowNotifyHandler* notificationHandler() const

  -     virtual IWindow&
          notifyObservers( const INotificationId& notification )

  -     IObserverList&
          observerList( const IInterest* interest = 0 ) const

  -     virtual IWindow&
          prepareForUse( const IWindowHandle& windowHandle )

  -     virtual IWindow& removeAllObservers()

  -     static void removeFromWindowSet(IWindow* window)

  -     IWindow& removeHandler(IHandler* oldHandler)

  -     virtual IWindow& removeObserver(IObserver& observer)

  -     virtual IWindow&
          removeObserver( IObserver& observer,
                          const IInterest& interest )

  -     IWindow& reserveUserWindowWord(bool reserve = true)

  -     virtual IWindow& resetColor(unsigned long colorArea)

  -     ISize savedMinimumSize() const

  -     IWindow& saveMinimumSize(const ISize& size)

  -     virtual IWindow&
          setBidiSettings( const IBidiSettings& bidiSettings,
                           bool childInherit,
                           bool refresh )

  -     virtual IWindow&
          setColor( unsigned long colorArea,
                    const IColor& color )

  -     virtual IWindow&
          setDefaultEmphasisButton( const IWindowHandle& defaultEmphasisButton,
                                    bool enable )

  -     virtual IWindow&
          setDefaultPushButton( const IWindowHandle& defaultPushButton )

  -     virtual IWindow&
          setExtendedStyle( unsigned long extendedStyle )

  -     IWindow&
          setNotificationHandler( IWindowNotifyHandler* notifyHandler )

  -     virtual IWindow& setStyle(unsigned long style)

  -     IWindow& setWindowData(long index, unsigned long dataValue)

  -     IWindow&
          setWindowData( long index,
                         unsigned short dataValue )

  -     IWindow&
          startHandlingEventsFor( const IWindowHandle& windowHandle )

  -     IWindow&
          startHandlingEventsFor( unsigned long identifier,
                                  IWindow* parent )

  -     virtual unsigned long style() const

  -     IWindow& unbindMessageQueue()

  -     unsigned long windowULong(long index) const

  -     unsigned short windowUShort(long index) const

  INotifier

  -     virtual INotifier&
          addObserver( IObserver& observer,
                       const IInterest& interest )

  -     virtual INotifier&
          notifyObservers( const INotificationId& id ) = 0

  -     virtual IObserverList&
          observerList( const IInterest* anInterest = 0 ) const = 0

  -     virtual INotifier& removeAllObservers() = 0

  -     virtual INotifier&
          removeObserver( IObserver& observer,
                          const IInterest& interest )

  -     virtual INotifier& removeObserver(IObserver& observer) = 0

#### Inherited Protected Data

  IFrameWindow

  -     static const Style deferCreation