
/*
 * This file was generated by the SOM Compiler.
 * FileName: wpfolder.h.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emith: 1.11
 */

/*
 * 
 *  Module Header
 * 
 *  Module Name: WPFOLDER
 * 
 *  OS/2 Presentation Manager Workplace class definitions
 * 
 *  Copyright (c) International Business Machines Corporation 1991, 1992
 * 
 */


#ifndef wpfolder_h
#define wpfolder_h


#include <som.h>

/*
 * Define the class name as an object type
 */
#ifndef WPFolder
#define WPFolder SOMAny
#endif
#include "wpfsys.h"

/*
 * Passthru lines: File: "C.h", "after"
 */

      /* Folder flags */

      #define FOI_POPULATEDWITHALL      0x0001
      #define FOI_POPULATEDWITHFOLDERS  0x0002
      #define FOI_WORKAREA              0x0004
      #define FOI_CHANGEFONT            0x0008        /* anti-recursion flag */
      #define FOI_WAMINIMIZED           0x0020
      #define FOI_WASTARTONRESTORE      0x0040
      #define FOI_NOREFRESHVIEWS        0x0080
      #define FOI_ASYNCREFRESHONOPEN    0x0100
      #define FOI_TREEPOPULATED         0x0200
      #define FOI_POPULATEINPROGRESS    0x0400                          /*DORM*/
      #define FOI_REFRESHINPROGRESS     0x0800
      #define FOI_FIRSTPOPULATE         0x1000  /* folder has no iconposdata */ //LD62414
      #define FOI_WAMCRINPROGRESS       0x2000  /* Minimize, close, restore in progress //ihs67096

      /* Open views for the wpOpen() method */

      #define OPEN_TREE          101
      #define OPEN_DETAILS       102

      /* Folder save-restore keys */

      #define IDKEY_FDRCONTENTATTR     2900
      #define IDKEY_FDRTREEATTR        2901
      #define IDKEY_FDRCVLFONT         2902
      #define IDKEY_FDRCVNFONT         2903
      #define IDKEY_FDRCVIFONT         2904
      #define IDKEY_FDRTVLFONT         2905
      #define IDKEY_FDRTVNFONT         2906
      #define IDKEY_FDRDETAILSATTR     2907
      #define IDKEY_FDRDVFONT          2908
      #define IDKEY_FDRDETAILSCLASS    2909
      #define IDKEY_FDRICONPOS         2910
      #define IDKEY_FDRINVISCOLUMNS    2914
      #define IDKEY_FDRINCCLASS        2920
      #define IDKEY_FDRINCNAME         2921
      #define IDKEY_FDRFSYSSEARCHINFO  2922
      #define IDKEY_FILTERCONTENT      2923
      #define IDKEY_CNRBACKGROUND      2924
      #define IDKEY_FDRINCCRITERIA     2925
      #define IDKEY_FDRICONVIEWPOS     2926
      #define IDKEY_FDRSORTCLASS       2927
      #define IDKEY_FDRSORTATTRIBS     2928
      #define IDKEY_FDRSORTINFO        2929
      #define IDKEY_FDRSNEAKYCOUNT     2930                              /*SNK*/
      #define IDKEY_FDRLONGARRAY       2931
      #define IDKEY_FDRSTRARRAY        2932

      /* Miscellaneous */

      #define PPFONTSTRSIZE 20

      #define ICONPOSSIZE(pI) ( sizeof(ICONPOS) + strlen(pI->szIdentity) )
      #define PARTIAL_FILLFOLDER_SEM_TIMEOUT 5   /* avoid wasteful       */     //LD62414
                                                 /* SEM_INDEFEINTE_WAIT  */     //LD62414
      #define GETATTR(View) (View == OPEN_CONTENTS ? _ContentAttr : \
                             (View == OPEN_TREE ? _TreeAttr : _DetailsAttr))
      #define FOLDER_DEFATTRS (CV_ICON | CA_OWNERPAINTBACKGROUND     |  \
                               CA_MIXEDTARGETEMPH | CA_OWNERDRAW)
      #define FOLDER_DEFTREEATTRS (CV_ICON | CA_OWNERPAINTBACKGROUND |  \
                                   CV_TREE | CA_TREELINE | CA_OWNERDRAW)
      #define FOLDER_DEFDETAILS (CV_DETAIL | CA_OWNERPAINTBACKGROUND |  \
                       CV_MINI | CA_DETAILSVIEWTITLES | CA_MIXEDTARGETEMPH)
      #define FOLDER_DEFSORT NULL

      /* wpSearchFolder structures */
       typedef struct _SEARCH_INFO {
          M_WPObject *ClassToBeFound;
          BOOL   fSkipExtendedSearchCriteria;
          PVOID  pvoidExtendedCriteria;
       } SEARCH_INFO;
       typedef SEARCH_INFO *PSEARCH_INFO;

#define WPFolder_MajorVersion 1
#define WPFolder_MinorVersion 2

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define WPFolderNewClass wpfdrc
#pragma linkage(wpfdrc, system)
#define WPFolderClassData wpfdrd
#define WPFolderCClassData wpfdrx
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define WPFolder_classObj WPFolderClassData.classObject
#define _WPFolder WPFolder_classObj

/*
 * New and Renew macros for WPFolder
 */
#define _WPFolderNew() (_somNew(WPFolderClassData.classObject))
#define WPFolderNew() \
	( WPFolderClassData.classObject \
		? _WPFolderNew() \
		: ( WPFolderNewClass(WPFolder_MajorVersion, WPFolder_MinorVersion), _WPFolderNew() ) )
#define WPFolderRenew(buf) \
	( _somRenew(WPFolderClassData.classObject, buf) )

/*
 * Override method: wpInitData
 */
#define WPFolder_wpInitData(somSelf) \
	WPObject_wpInitData(somSelf)

/*
 * Override method: wpUnInitData
 */
#define WPFolder_wpUnInitData(somSelf) \
	WPObject_wpUnInitData(somSelf)

/*
 * Override method: wpFree
 */
#define WPFolder_wpFree(somSelf) \
	WPObject_wpFree(somSelf)

/*
 * Override method: wpDelete
 */
#define WPFolder_wpDelete(somSelf,fConfirmations) \
	WPObject_wpDelete(somSelf,fConfirmations)

/*
 * Override method: wpConfirmDelete
 */
#define WPFolder_wpConfirmDelete(somSelf,fConfirmations) \
	WPObject_wpConfirmDelete(somSelf,fConfirmations)

/*
 * Override method: wpSaveState
 */
#define WPFolder_wpSaveState(somSelf) \
	WPObject_wpSaveState(somSelf)

/*
 * Override method: wpRestoreState
 */
#define WPFolder_wpRestoreState(somSelf,ulReserved) \
	WPObject_wpRestoreState(somSelf,ulReserved)

/*
 * Override method: wpMenuItemSelected
 */
#define WPFolder_wpMenuItemSelected(somSelf,hwndFrame,ulMenuId) \
	WPObject_wpMenuItemSelected(somSelf,hwndFrame,ulMenuId)

/*
 * Override method: wpModifyPopupMenu
 */
#define WPFolder_wpModifyPopupMenu(somSelf,hwndMenu,hwndCnr,iPosition) \
	WPObject_wpModifyPopupMenu(somSelf,hwndMenu,hwndCnr,iPosition)

/*
 * Override method: wpAddSettingsPages
 */
#define WPFolder_wpAddSettingsPages(somSelf,hwndNotebook) \
	WPObject_wpAddSettingsPages(somSelf,hwndNotebook)

/*
 * Override method: wpOpen
 */
#define WPFolder_wpOpen(somSelf,hwndCnr,ulView,param) \
	WPObject_wpOpen(somSelf,hwndCnr,ulView,param)

/*
 * Override method: wpSetup
 */
#define WPFolder_wpSetup(somSelf,pszSetupString) \
	WPObject_wpSetup(somSelf,pszSetupString)

/*
 * Override method: wpMoveObject
 */
#define WPFolder_wpMoveObject(somSelf,Folder) \
	WPObject_wpMoveObject(somSelf,Folder)

/*
 * Override method: wpDrop
 */
#define WPFolder_wpDrop(somSelf,hwndCnr,pdrgInfo,pdrgItem) \
	WPObject_wpDrop(somSelf,hwndCnr,pdrgInfo,pdrgItem)

/*
 * Override method: wpDragOver
 */
#define WPFolder_wpDragOver(somSelf,hwndCnr,pdrgInfo) \
	WPObject_wpDragOver(somSelf,hwndCnr,pdrgInfo)

/*
 * Override method: wpMenuItemHelpSelected
 */
#define WPFolder_wpMenuItemHelpSelected(somSelf,MenuId) \
	WPObject_wpMenuItemHelpSelected(somSelf,MenuId)

/*
 * Override method: wpAddFile3Page
 */
#define WPFolder_wpAddFile3Page(somSelf,hwndNotebook) \
	WPFileSystem_wpAddFile3Page(somSelf,hwndNotebook)

/*
 * Override method: wpAddFile2Page
 */
#define WPFolder_wpAddFile2Page(somSelf,hwndNotebook) \
	WPFileSystem_wpAddFile2Page(somSelf,hwndNotebook)

/*
 * Override method: wpFormatDragItem
 */
#define WPFolder_wpFormatDragItem(somSelf,pdrgItem) \
	WPObject_wpFormatDragItem(somSelf,pdrgItem)

/*
 * Override method: wpRender
 */
#define WPFolder_wpRender(somSelf,pdxfer) \
	WPObject_wpRender(somSelf,pdxfer)

/*
 * Override method: wpRefresh
 */
#define WPFolder_wpRefresh(somSelf,ulView,pReserved) \
	WPFileSystem_wpRefresh(somSelf,ulView,pReserved)

/*
 * Override method: wpFilterPopupMenu
 */
#define WPFolder_wpFilterPopupMenu(somSelf,ulFlags,hwndCnr,fMultiSelect) \
	WPObject_wpFilterPopupMenu(somSelf,ulFlags,hwndCnr,fMultiSelect)

/*
 * Override method: wpQueryDefaultView
 */
#define WPFolder_wpQueryDefaultView(somSelf) \
	WPObject_wpQueryDefaultView(somSelf)

/*
 * Override method: wpRenderComplete
 */
#define WPFolder_wpRenderComplete(somSelf,pdxfer,ulResult) \
	WPObject_wpRenderComplete(somSelf,pdxfer,ulResult)

/*
 * Override method: wpQueryDefaultHelp
 */
#define WPFolder_wpQueryDefaultHelp(somSelf,pHelpPanelId,HelpLibrary) \
	WPObject_wpQueryDefaultHelp(somSelf,pHelpPanelId,HelpLibrary)

/*
 * New Method: wpSetFldrFlags
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSetFldrFlags(WPFolder *somSelf,
		ULONG ulFlags);
#pragma linkage(somTP_WPFolder_wpSetFldrFlags, system)
typedef somTP_WPFolder_wpSetFldrFlags *somTD_WPFolder_wpSetFldrFlags;
#define somMD_WPFolder_wpSetFldrFlags "----"
#define WPFolder_wpSetFldrFlags(somSelf,ulFlags) \
    (SOM_Resolve(somSelf, WPFolder, wpSetFldrFlags) \
	(somSelf,ulFlags))
#define _wpSetFldrFlags WPFolder_wpSetFldrFlags

/*
 * New Method: wpQueryFldrFlags
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpQueryFldrFlags(WPFolder *somSelf);
#pragma linkage(somTP_WPFolder_wpQueryFldrFlags, system)
typedef somTP_WPFolder_wpQueryFldrFlags *somTD_WPFolder_wpQueryFldrFlags;
#define somMD_WPFolder_wpQueryFldrFlags "----"
#define WPFolder_wpQueryFldrFlags(somSelf) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryFldrFlags) \
	(somSelf))
#define _wpQueryFldrFlags WPFolder_wpQueryFldrFlags

/*
 * New Method: wpSetFldrFont
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSetFldrFont(WPFolder *somSelf,
		PSZ pszFont,
		ULONG ulView);
#pragma linkage(somTP_WPFolder_wpSetFldrFont, system)
typedef somTP_WPFolder_wpSetFldrFont *somTD_WPFolder_wpSetFldrFont;
#define somMD_WPFolder_wpSetFldrFont "----"
#define WPFolder_wpSetFldrFont(somSelf,pszFont,ulView) \
    (SOM_Resolve(somSelf, WPFolder, wpSetFldrFont) \
	(somSelf,pszFont,ulView))
#define _wpSetFldrFont WPFolder_wpSetFldrFont

/*
 * New Method: wpQueryFldrFont
 */
typedef PSZ    SOMLINK somTP_WPFolder_wpQueryFldrFont(WPFolder *somSelf,
		ULONG ulView);
#pragma linkage(somTP_WPFolder_wpQueryFldrFont, system)
typedef somTP_WPFolder_wpQueryFldrFont *somTD_WPFolder_wpQueryFldrFont;
#define somMD_WPFolder_wpQueryFldrFont "----"
#define WPFolder_wpQueryFldrFont(somSelf,ulView) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryFldrFont) \
	(somSelf,ulView))
#define _wpQueryFldrFont WPFolder_wpQueryFldrFont

/*
 * New Method: wpSetFldrAttr
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSetFldrAttr(WPFolder *somSelf,
		ULONG Attr,
		ULONG ulView);
#pragma linkage(somTP_WPFolder_wpSetFldrAttr, system)
typedef somTP_WPFolder_wpSetFldrAttr *somTD_WPFolder_wpSetFldrAttr;
#define somMD_WPFolder_wpSetFldrAttr "----"
#define WPFolder_wpSetFldrAttr(somSelf,Attr,ulView) \
    (SOM_Resolve(somSelf, WPFolder, wpSetFldrAttr) \
	(somSelf,Attr,ulView))
#define _wpSetFldrAttr WPFolder_wpSetFldrAttr

/*
 * New Method: wpQueryFldrAttr
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpQueryFldrAttr(WPFolder *somSelf,
		ULONG ulView);
#pragma linkage(somTP_WPFolder_wpQueryFldrAttr, system)
typedef somTP_WPFolder_wpQueryFldrAttr *somTD_WPFolder_wpQueryFldrAttr;
#define somMD_WPFolder_wpQueryFldrAttr "----"
#define WPFolder_wpQueryFldrAttr(somSelf,ulView) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryFldrAttr) \
	(somSelf,ulView))
#define _wpQueryFldrAttr WPFolder_wpQueryFldrAttr

/*
 * New Method: wpSetNextIconPos
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSetNextIconPos(WPFolder *somSelf,
		PPOINTL pptl);
#pragma linkage(somTP_WPFolder_wpSetNextIconPos, system)
typedef somTP_WPFolder_wpSetNextIconPos *somTD_WPFolder_wpSetNextIconPos;
#define somMD_WPFolder_wpSetNextIconPos "----"
#define WPFolder_wpSetNextIconPos(somSelf,pptl) \
    (SOM_Resolve(somSelf, WPFolder, wpSetNextIconPos) \
	(somSelf,pptl))
#define _wpSetNextIconPos WPFolder_wpSetNextIconPos

/*
 * New Method: wpQueryNextIconPos
 */
typedef PPOINTL    SOMLINK somTP_WPFolder_wpQueryNextIconPos(WPFolder *somSelf);
#pragma linkage(somTP_WPFolder_wpQueryNextIconPos, system)
typedef somTP_WPFolder_wpQueryNextIconPos *somTD_WPFolder_wpQueryNextIconPos;
#define somMD_WPFolder_wpQueryNextIconPos "----"
#define WPFolder_wpQueryNextIconPos(somSelf) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryNextIconPos) \
	(somSelf))
#define _wpQueryNextIconPos WPFolder_wpQueryNextIconPos

/*
 * New Method: wpPopulate
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpPopulate(WPFolder *somSelf,
		ULONG ulReserved,
		PSZ pszPath,
		BOOL fFoldersOnly);
#pragma linkage(somTP_WPFolder_wpPopulate, system)
typedef somTP_WPFolder_wpPopulate *somTD_WPFolder_wpPopulate;
#define somMD_WPFolder_wpPopulate "----"
#define WPFolder_wpPopulate(somSelf,ulReserved,pszPath,fFoldersOnly) \
    (SOM_Resolve(somSelf, WPFolder, wpPopulate) \
	(somSelf,ulReserved,pszPath,fFoldersOnly))
#define _wpPopulate WPFolder_wpPopulate

/*
 * New Method: wpQueryContent
 */
typedef WPObject *   SOMLINK somTP_WPFolder_wpQueryContent(WPFolder *somSelf,
		WPObject *Object,
		ULONG ulOption);
#pragma linkage(somTP_WPFolder_wpQueryContent, system)
typedef somTP_WPFolder_wpQueryContent *somTD_WPFolder_wpQueryContent;
#define somMD_WPFolder_wpQueryContent "----"
#define WPFolder_wpQueryContent(somSelf,Object,ulOption) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryContent) \
	(somSelf,Object,ulOption))
#define _wpQueryContent WPFolder_wpQueryContent

/*
 * New Method: wpAddFolderView1Page
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpAddFolderView1Page(WPFolder *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_WPFolder_wpAddFolderView1Page, system)
typedef somTP_WPFolder_wpAddFolderView1Page *somTD_WPFolder_wpAddFolderView1Page;
#define somMD_WPFolder_wpAddFolderView1Page "----"
#define WPFolder_wpAddFolderView1Page(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, WPFolder, wpAddFolderView1Page) \
	(somSelf,hwndNotebook))
#define _wpAddFolderView1Page WPFolder_wpAddFolderView1Page

/*
 * New Method: wpAddFolderView2Page
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpAddFolderView2Page(WPFolder *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_WPFolder_wpAddFolderView2Page, system)
typedef somTP_WPFolder_wpAddFolderView2Page *somTD_WPFolder_wpAddFolderView2Page;
#define somMD_WPFolder_wpAddFolderView2Page "----"
#define WPFolder_wpAddFolderView2Page(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, WPFolder, wpAddFolderView2Page) \
	(somSelf,hwndNotebook))
#define _wpAddFolderView2Page WPFolder_wpAddFolderView2Page

/*
 * New Method: wpAddFolderView3Page
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpAddFolderView3Page(WPFolder *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_WPFolder_wpAddFolderView3Page, system)
typedef somTP_WPFolder_wpAddFolderView3Page *somTD_WPFolder_wpAddFolderView3Page;
#define somMD_WPFolder_wpAddFolderView3Page "----"
#define WPFolder_wpAddFolderView3Page(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, WPFolder, wpAddFolderView3Page) \
	(somSelf,hwndNotebook))
#define _wpAddFolderView3Page WPFolder_wpAddFolderView3Page

/*
 * New Method: wpAddFolderIncludePage
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpAddFolderIncludePage(WPFolder *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_WPFolder_wpAddFolderIncludePage, system)
typedef somTP_WPFolder_wpAddFolderIncludePage *somTD_WPFolder_wpAddFolderIncludePage;
#define somMD_WPFolder_wpAddFolderIncludePage "----"
#define WPFolder_wpAddFolderIncludePage(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, WPFolder, wpAddFolderIncludePage) \
	(somSelf,hwndNotebook))
#define _wpAddFolderIncludePage WPFolder_wpAddFolderIncludePage

/*
 * New Method: wpAddFolderSortPage
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpAddFolderSortPage(WPFolder *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_WPFolder_wpAddFolderSortPage, system)
typedef somTP_WPFolder_wpAddFolderSortPage *somTD_WPFolder_wpAddFolderSortPage;
#define somMD_WPFolder_wpAddFolderSortPage "----"
#define WPFolder_wpAddFolderSortPage(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, WPFolder, wpAddFolderSortPage) \
	(somSelf,hwndNotebook))
#define _wpAddFolderSortPage WPFolder_wpAddFolderSortPage

/*
 * New Method: wpAddFolderBackgroundPage
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpAddFolderBackgroundPage(WPFolder *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_WPFolder_wpAddFolderBackgroundPage, system)
typedef somTP_WPFolder_wpAddFolderBackgroundPage *somTD_WPFolder_wpAddFolderBackgroundPage;
#define somMD_WPFolder_wpAddFolderBackgroundPage "----"
#define WPFolder_wpAddFolderBackgroundPage(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, WPFolder, wpAddFolderBackgroundPage) \
	(somSelf,hwndNotebook))
#define _wpAddFolderBackgroundPage WPFolder_wpAddFolderBackgroundPage

/*
 * New Method: wpInitIconPosData
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpInitIconPosData(WPFolder *somSelf);
#pragma linkage(somTP_WPFolder_wpInitIconPosData, system)
typedef somTP_WPFolder_wpInitIconPosData *somTD_WPFolder_wpInitIconPosData;
#define somMD_WPFolder_wpInitIconPosData "----"
#define WPFolder_wpInitIconPosData(somSelf) \
    (SOM_Resolve(somSelf, WPFolder, wpInitIconPosData) \
	(somSelf))
#define _wpInitIconPosData WPFolder_wpInitIconPosData

/*
 * New Method: wpFreeIconPosData
 */
typedef void    SOMLINK somTP_WPFolder_wpFreeIconPosData(WPFolder *somSelf);
#pragma linkage(somTP_WPFolder_wpFreeIconPosData, system)
typedef somTP_WPFolder_wpFreeIconPosData *somTD_WPFolder_wpFreeIconPosData;
#define somMD_WPFolder_wpFreeIconPosData "----"
#define WPFolder_wpFreeIconPosData(somSelf) \
    (SOM_Resolve(somSelf, WPFolder, wpFreeIconPosData) \
	(somSelf))
#define _wpFreeIconPosData WPFolder_wpFreeIconPosData

/*
 * New Method: wpStoreIconPosData
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpStoreIconPosData(WPFolder *somSelf,
		PICONPOS pIconPos,
		ULONG cbSize);
#pragma linkage(somTP_WPFolder_wpStoreIconPosData, system)
typedef somTP_WPFolder_wpStoreIconPosData *somTD_WPFolder_wpStoreIconPosData;
#define somMD_WPFolder_wpStoreIconPosData "----"
#define WPFolder_wpStoreIconPosData(somSelf,pIconPos,cbSize) \
    (SOM_Resolve(somSelf, WPFolder, wpStoreIconPosData) \
	(somSelf,pIconPos,cbSize))
#define _wpStoreIconPosData WPFolder_wpStoreIconPosData

/*
 * New Method: wpQueryIconPosition
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpQueryIconPosition(WPFolder *somSelf,
		PSZ pszIdentity,
		PPOINTL pptl,
		PULONG pIndex);
#pragma linkage(somTP_WPFolder_wpQueryIconPosition, system)
typedef somTP_WPFolder_wpQueryIconPosition *somTD_WPFolder_wpQueryIconPosition;
#define somMD_WPFolder_wpQueryIconPosition "----"
#define WPFolder_wpQueryIconPosition(somSelf,pszIdentity,pptl,pIndex) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryIconPosition) \
	(somSelf,pszIdentity,pptl,pIndex))
#define _wpQueryIconPosition WPFolder_wpQueryIconPosition

/*
 * New Method: wpSetFldrSort
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSetFldrSort(WPFolder *somSelf,
		PVOID pSortRecord,
		ULONG ulView,
		ULONG ulType);
#pragma linkage(somTP_WPFolder_wpSetFldrSort, system)
typedef somTP_WPFolder_wpSetFldrSort *somTD_WPFolder_wpSetFldrSort;
#define somMD_WPFolder_wpSetFldrSort "----"
#define WPFolder_wpSetFldrSort(somSelf,pSortRecord,ulView,ulType) \
    (SOM_Resolve(somSelf, WPFolder, wpSetFldrSort) \
	(somSelf,pSortRecord,ulView,ulType))
#define _wpSetFldrSort WPFolder_wpSetFldrSort

/*
 * New Method: wpQueryFldrSort
 */
typedef PVOID    SOMLINK somTP_WPFolder_wpQueryFldrSort(WPFolder *somSelf,
		ULONG ulView,
		ULONG ulType);
#pragma linkage(somTP_WPFolder_wpQueryFldrSort, system)
typedef somTP_WPFolder_wpQueryFldrSort *somTD_WPFolder_wpQueryFldrSort;
#define somMD_WPFolder_wpQueryFldrSort "----"
#define WPFolder_wpQueryFldrSort(somSelf,ulView,ulType) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryFldrSort) \
	(somSelf,ulView,ulType))
#define _wpQueryFldrSort WPFolder_wpQueryFldrSort

/*
 * New Method: wpRestoreFldrRunObjs
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpRestoreFldrRunObjs(WPFolder *somSelf);
#pragma linkage(somTP_WPFolder_wpRestoreFldrRunObjs, system)
typedef somTP_WPFolder_wpRestoreFldrRunObjs *somTD_WPFolder_wpRestoreFldrRunObjs;
#define somMD_WPFolder_wpRestoreFldrRunObjs "----"
#define WPFolder_wpRestoreFldrRunObjs(somSelf) \
    (SOM_Resolve(somSelf, WPFolder, wpRestoreFldrRunObjs) \
	(somSelf))
#define _wpRestoreFldrRunObjs WPFolder_wpRestoreFldrRunObjs

/*
 * New Method: wpStoreFldrRunObjs
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpStoreFldrRunObjs(WPFolder *somSelf,
		ULONG ulType);
#pragma linkage(somTP_WPFolder_wpStoreFldrRunObjs, system)
typedef somTP_WPFolder_wpStoreFldrRunObjs *somTD_WPFolder_wpStoreFldrRunObjs;
#define somMD_WPFolder_wpStoreFldrRunObjs "----"
#define WPFolder_wpStoreFldrRunObjs(somSelf,ulType) \
    (SOM_Resolve(somSelf, WPFolder, wpStoreFldrRunObjs) \
	(somSelf,ulType))
#define _wpStoreFldrRunObjs WPFolder_wpStoreFldrRunObjs

/*
 * New Method: wpHideFldrRunObjs
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpHideFldrRunObjs(WPFolder *somSelf,
		BOOL fHide);
#pragma linkage(somTP_WPFolder_wpHideFldrRunObjs, system)
typedef somTP_WPFolder_wpHideFldrRunObjs *somTD_WPFolder_wpHideFldrRunObjs;
#define somMD_WPFolder_wpHideFldrRunObjs "----"
#define WPFolder_wpHideFldrRunObjs(somSelf,fHide) \
    (SOM_Resolve(somSelf, WPFolder, wpHideFldrRunObjs) \
	(somSelf,fHide))
#define _wpHideFldrRunObjs WPFolder_wpHideFldrRunObjs

/*
 * New Method: wpDeleteContents
 */
typedef ULONG    SOMLINK somTP_WPFolder_wpDeleteContents(WPFolder *somSelf,
		ULONG fConfirmations);
#pragma linkage(somTP_WPFolder_wpDeleteContents, system)
typedef somTP_WPFolder_wpDeleteContents *somTD_WPFolder_wpDeleteContents;
#define somMD_WPFolder_wpDeleteContents "----"
#define WPFolder_wpDeleteContents(somSelf,fConfirmations) \
    (SOM_Resolve(somSelf, WPFolder, wpDeleteContents) \
	(somSelf,fConfirmations))
#define _wpDeleteContents WPFolder_wpDeleteContents

/*
 * New Method: wpSetFldrDetailsClass
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSetFldrDetailsClass(WPFolder *somSelf,
		M_WPObject *Class);
#pragma linkage(somTP_WPFolder_wpSetFldrDetailsClass, system)
typedef somTP_WPFolder_wpSetFldrDetailsClass *somTD_WPFolder_wpSetFldrDetailsClass;
#define somMD_WPFolder_wpSetFldrDetailsClass "----"
#define WPFolder_wpSetFldrDetailsClass(somSelf,Class) \
    (SOM_Resolve(somSelf, WPFolder, wpSetFldrDetailsClass) \
	(somSelf,Class))
#define _wpSetFldrDetailsClass WPFolder_wpSetFldrDetailsClass

/*
 * New Method: wpQueryFldrDetailsClass
 */
typedef M_WPObject *   SOMLINK somTP_WPFolder_wpQueryFldrDetailsClass(WPFolder *somSelf);
#pragma linkage(somTP_WPFolder_wpQueryFldrDetailsClass, system)
typedef somTP_WPFolder_wpQueryFldrDetailsClass *somTD_WPFolder_wpQueryFldrDetailsClass;
#define somMD_WPFolder_wpQueryFldrDetailsClass "----"
#define WPFolder_wpQueryFldrDetailsClass(somSelf) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryFldrDetailsClass) \
	(somSelf))
#define _wpQueryFldrDetailsClass WPFolder_wpQueryFldrDetailsClass

/*
 * New Method: wpSearchFolder
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpSearchFolder(WPFolder *somSelf,
		PSZ pszName,
		ULONG ulSearchType,
		ULONG ulLen,
		PSEARCH_INFO pInfo,
		WPFolder *ResultFolder);
#pragma linkage(somTP_WPFolder_wpSearchFolder, system)
typedef somTP_WPFolder_wpSearchFolder *somTD_WPFolder_wpSearchFolder;
#define somMD_WPFolder_wpSearchFolder "----"
#define WPFolder_wpSearchFolder(somSelf,pszName,ulSearchType,ulLen,pInfo,ResultFolder) \
    (SOM_Resolve(somSelf, WPFolder, wpSearchFolder) \
	(somSelf,pszName,ulSearchType,ulLen,pInfo,ResultFolder))
#define _wpSearchFolder WPFolder_wpSearchFolder

/*
 * New Method: wpContainsFolders
 */
typedef BOOL    SOMLINK somTP_WPFolder_wpContainsFolders(WPFolder *somSelf,
		BOOL *pfSubFolders);
#pragma linkage(somTP_WPFolder_wpContainsFolders, system)
typedef somTP_WPFolder_wpContainsFolders *somTD_WPFolder_wpContainsFolders;
#define somMD_WPFolder_wpContainsFolders "----"
#define WPFolder_wpContainsFolders(somSelf,pfSubFolders) \
    (SOM_Resolve(somSelf, WPFolder, wpContainsFolders) \
	(somSelf,pfSubFolders))
#define _wpContainsFolders WPFolder_wpContainsFolders

/*
 * New Method: wpQueryOpenFolders
 */
typedef WPObject *   SOMLINK somTP_WPFolder_wpQueryOpenFolders(WPFolder *somSelf,
		ULONG ulOption);
#pragma linkage(somTP_WPFolder_wpQueryOpenFolders, system)
typedef somTP_WPFolder_wpQueryOpenFolders *somTD_WPFolder_wpQueryOpenFolders;
#define somMD_WPFolder_wpQueryOpenFolders "----"
#define WPFolder_wpQueryOpenFolders(somSelf,ulOption) \
    (SOM_Resolve(somSelf, WPFolder, wpQueryOpenFolders) \
	(somSelf,ulOption))
#define _wpQueryOpenFolders WPFolder_wpQueryOpenFolders

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMAny * SOMLINK WPFolderNewClass(integer4 scemajorVersion,
		integer4 sceminorVersion);
#pragma linkage(WPFolderNewClass, system)

/*
 * Declare the class data structure
 */
SOMEXTERN struct WPFolderClassDataStructure {
	SOMAny *classObject;
	somMToken wpSetFldrFlags;
	somMToken wpQueryFldrFlags;
	somMToken wpSetFldrFont;
	somMToken wpQueryFldrFont;
	somMToken wpSetNextIconPos;
	somMToken wpQueryNextIconPos;
	somMToken wpPopulate;
	somMToken wpAddToContent;
	somMToken wpQueryContent;
	somMToken wpAddFolderView1Page;
	somMToken wpAddFolderView2Page;
	somMToken wpAddFolderView3Page;
	somMToken wpAddFolderIncludePage;
	somMToken wpAddFolderSortPage;
	somMToken wpAddFolderBackgroundPage;
	somMToken wpInitIconPosData;
	somMToken wpFreeIconPosData;
	somMToken wpQueryIconPosition;
	somMToken wpStoreIconPosData;
	somMToken wpDeleteFromContent;
	somMToken wpSetFldrAttr;
	somMToken wpQueryFldrAttr;
	somMToken wpSetFldrSort;
	somMToken wpQueryFldrSort;
	somMToken wpRestoreFldrRunObjs;
	somMToken wpStoreFldrRunObjs;
	somMToken withdrawn30;
	somMToken withdrawn31;
	somMToken wpDeleteContents;
	somMToken wpQueryOpenFolders;
	somMToken wpSetNextOpenFldr;
	somMToken wpSearchFolder;
	somMToken wpSetFldrDetailsClass;
	somMToken wpQueryFldrDetailsClass;
	somMToken wpRefresh;
	somMToken wpSetDetailsColumnVisibility;
	somMToken wpIsDetailsColumnVisible;
	somMToken wpQuerySortArray;
	somMToken wpSetSortArray;
	somMToken wpQuerySortInfo;
	somMToken wpSetSortInfo;
	somMToken wpSetFldrSortClass;
	somMToken wpQueryFldrSortClass;
	somMToken wpSetSortAttribAvailable;
	somMToken wpIsSortAttribAvailable;
	somMToken wpQueryFldrFilter;
	somMToken wpContainsFolders;
	somMToken wpQueryBkgnd;
	somMToken wpQueryIconViewPos;
	somMToken wpQueryDefaultView;
	somMToken wpAddFirstChild;
	somDToken FirstObj;
	somMToken wpHideFldrRunObjs;
	somMToken wpFSNotifyFolder;
	somMToken wpAddNotification;
	somMToken wpDeleteNotification;
	somMToken wpProcessNotification;
	somMToken wpModifySneakyCount;
	somMToken wpSneakySupported;
	somMToken wpAssertFolderMutexSem;
	somMToken wpReleaseFolderMutexSem;
	somMToken wpRequestFolderMutexSem;
	somMToken wpQueryPopThreadID;
	somMToken wpQueryNextOpenFldr;
	somDToken hmtxOneFindAtATime;
	somMToken wpRequestFindMutexSem;
	somMToken wpReleaseFindMutexSem;
	somDToken hevFillFolder;
	somMToken wpModifyFldrFlags;
} WPFolderClassData;

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct WPFolderCClassDataStructure {
	somMethodTab *parentMtab;
	somDToken instanceDataToken;
} WPFolderCClassData;

#endif       /* wpfolder_h */

/*
 * This file was generated by the SOM Compiler.
 * FileName: wpfolder.h.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emith: 1.11
 */

#ifndef wpfolder_mh
#define wpfolder_mh


/*
 * Define the class name as an object type
 */
#ifndef M_WPFolder
#define M_WPFolder SOMAny
#endif

#define M_WPFolder_MajorVersion 1
#define M_WPFolder_MinorVersion 2

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define M_WPFolderNewClass wpfdrc
#pragma linkage(wpfdrc, system)
#define M_WPFolderClassData wpfdrd
#define M_WPFolderCClassData wpfdrx
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define M_WPFolder_classObj M_WPFolderClassData.classObject
#define _M_WPFolder M_WPFolder_classObj

/*
 * New and Renew macros for M_WPFolder
 */
#define _M_WPFolderNew() (_somNew(M_WPFolderClassData.classObject))
#define M_WPFolderNew() \
	( M_WPFolderClassData.classObject \
		? _M_WPFolderNew() \
		: ( M_WPFolderNewClass(M_WPFolder_MajorVersion, M_WPFolder_MinorVersion), _M_WPFolderNew() ) )
#define M_WPFolderRenew(buf) \
	( _somRenew(M_WPFolderClassData.classObject, buf) )

/*
 * Override method: wpclsInitData
 */
#define M_WPFolder_wpclsInitData(somSelf) \
	M_WPObject_wpclsInitData(somSelf)

/*
 * Override method: wpclsQueryDefaultView
 */
#define M_WPFolder_wpclsQueryDefaultView(somSelf) \
	M_WPObject_wpclsQueryDefaultView(somSelf)

/*
 * Override method: wpclsQueryTitle
 */
#define M_WPFolder_wpclsQueryTitle(somSelf) \
	M_WPObject_wpclsQueryTitle(somSelf)

/*
 * Override method: wpclsQueryIconData
 */
#define M_WPFolder_wpclsQueryIconData(somSelf,pIconInfo) \
	M_WPObject_wpclsQueryIconData(somSelf,pIconInfo)

/*
 * Override method: wpclsQueryStyle
 */
#define M_WPFolder_wpclsQueryStyle(somSelf) \
	M_WPObject_wpclsQueryStyle(somSelf)

/*
 * Override method: wpclsQueryDefaultHelp
 */
#define M_WPFolder_wpclsQueryDefaultHelp(somSelf,pHelpPanelId,pszHelpLibrary) \
	M_WPObject_wpclsQueryDefaultHelp(somSelf,pHelpPanelId,pszHelpLibrary)

/*
 * New Method: wpclsQueryOpenFolders
 */
typedef WPFolder *   SOMLINK somTP_M_WPFolder_wpclsQueryOpenFolders(M_WPFolder *somSelf,
		WPFolder *Folder,
		ULONG ulOption,
		BOOL fLock);
#pragma linkage(somTP_M_WPFolder_wpclsQueryOpenFolders, system)
typedef somTP_M_WPFolder_wpclsQueryOpenFolders *somTD_M_WPFolder_wpclsQueryOpenFolders;
#define somMD_M_WPFolder_wpclsQueryOpenFolders "----"
#define M_WPFolder_wpclsQueryOpenFolders(somSelf,Folder,ulOption,fLock) \
    (SOM_Resolve(somSelf, M_WPFolder, wpclsQueryOpenFolders) \
	(somSelf,Folder,ulOption,fLock))
#define _wpclsQueryOpenFolders M_WPFolder_wpclsQueryOpenFolders

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMAny * SOMLINK M_WPFolderNewClass(integer4 scemajorVersion,
		integer4 sceminorVersion);
#pragma linkage(M_WPFolderNewClass, system)

/*
 * Declare the class data structure
 */
SOMEXTERN struct M_WPFolderClassDataStructure {
	SOMAny *classObject;
	somMToken wpclsGetNotifySem;
	somMToken wpclsReleaseNotifySem;
	somMToken wpclsQueryOpenFolders;
} M_WPFolderClassData;

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct M_WPFolderCClassDataStructure {
	somMethodTab *parentMtab;
	somDToken instanceDataToken;
} M_WPFolderCClassData;

#endif       /* wpfolder_h */
