/* @(#) 1.13 nt/src/docshell/idl/WinShell.idl, odshell, od96nt, odnt9712d 11/1/96 18:20:45 [3/21/97 17:16:31] */
//#====START_GENERATED_PROLOG======================================
//#
//#
//#   COMPONENT_NAME: odshell
//#
//#   CLASSES: none
//#
//#   ORIGINS: 27
//#
//#
//#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
//#   All Rights Reserved
//#   Licensed Materials - Property of IBM
//#   US Government Users Restricted Rights - Use, duplication or
//#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//#   	
//#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
//#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
//#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
//#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
//#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
//#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
//#   OR PERFORMANCE OF THIS SOFTWARE.
//#
//#====END_GENERATED_PROLOG========================================
//#

#ifndef _WINSHELL_
#define _WINSHELL_

#include <somobj.idl>
#include "AppShell.idl"

#ifndef _ODTYPESM_
#include "ODTypesM.idl"
#endif

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

interface   WinShell;

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

interface   ODSession;
interface   ODWindowState;
interface   ODDispatcher;


#ifdef __PRIVATE__
//==============================================================================
// Implementation Types
//==============================================================================
typedef somToken HINSTANCE;
typedef somToken WNDCLASS;

#endif

//==============================================================================
// WinShell
//==============================================================================

interface WinShell :  ApplicationShell
{

#ifdef __PRIVATE__
#endif

#ifdef __SOMIDL__
    implementation
    {
        majorversion = 1; minorversion = 0;

        functionprefix = WinShell;

        override:
            CreateMenuBar,
            DispatchEvent,
            InitWindowSystem,
            Exec,
            MainLoop,
            GetEventType,
            GetEventSubType,
            GetEventWindow,
            DocumentClose,
            CloseCleanup;

        #ifdef __PRIVATE__
           passthru C_xh =
                "#ifndef _WINDOWS_"
                "#include \"windows.h\""
                "#endif"
                "#ifndef _ODTYPES_"
                "#include \"ODTypes.h\""
                "#endif"
                "";
           passthru C_xih =
                "#ifndef _WINDOWS_"
                "#include \"windows.h\""
                "#endif"
                "";

	   ODMenuItemID fLastSelectedID;

        #else
        #endif
  };
#endif
};


#endif // _WINSHELL_
