/* @(#)Z 1.2.1.3 com/src/core/idl/Settings.idl, odcore, od96nt, odnt9712d 97/03/21 16:44:27 (97/02/25 13:07:51) */


#ifndef _SETTINGS_
#define _SETTINGS_

#ifndef _EXTENSN_
#include "Extensn.idl"
#endif

//==============================================================================
// Classes defined in this interface
//==============================================================================

interface   ODSettingsExtension;

//==============================================================================
// Classes used by this interface
//==============================================================================

interface   ODFacet;
interface   ODPart;
#if defined(_PLATFORM_UNIX_)
interface   ODNotebook;
#endif

//==============================================================================
// Implementation Types
//==============================================================================

//typedef somToken HWND;


//==============================================================================
// ODSettingsExtension
//==============================================================================

interface ODSettingsExtension : ODExtension
{
        void InitSettingsExtension(in ODPart owner);

        void ShowSettings(in ODFacet facet);

#if defined(_PLATFORM_WIN32_)

        void ShowSettingsPages(in ODFacet facet, in HWND hPropSheetDlg);

#elif defined(_PLATFORM_UNIX_)

        void ShowSettingsPages(in ODFacet facet, in ODNotebook notebook);

#elif defined(_PLATFORM_OS2_)

        void ShowSettingsPages(in ODFacet facet, in HWND parent,
                               in ULONG notebookID);
        void AddNotebookSheet(in HWND hwnd, in ULONG pageId);

#endif // _PLATFORM_OS2_

#ifdef __SOMIDL__
        implementation
        {
                functionprefix = ODSettingsExtension;

                override:
                        somUninit,
                        Release;
                releaseorder:
                        InitSettingsExtension,
                        ShowSettings,
#if defined(_PLATFORM_OS2_)
                        AddNotebookSheet,
                        reserved1,
#endif
                        ShowSettingsPages;

          passthru C_xh =
                ""
#if defined(_PLATFORM_OS2_)
                "#include <os2.h> "
#endif
                "";

#if defined(_PLATFORM_OS2_)
#endif

        };
#endif // __SOMIDL__
};

#endif 
