
# This file was generated by the SOM Compiler.
# FileName: wpfolder.sc.
# Generated using:
#     SOM Precompiler spc: 1.22
#     SOM Emitter emitcsc: 1.10

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

#include "wpfsys.sc"

class: WPFolder, 
    external stem = wpfdr, local, external prefix = fdr_, 
    classprefix = fdrM_, major version = 1, minor version = 2, 
    file stem = wpfolder;


parent class: WPFileSystem;


release order:
    wpSetFldrFlags, wpQueryFldrFlags, wpSetFldrFont, 
    wpQueryFldrFont, wpSetNextIconPos, wpQueryNextIconPos, 
    wpPopulate, wpAddToContent, wpQueryContent, 
    wpAddFolderView1Page, wpAddFolderView2Page, wpAddFolderView3Page, 
    wpAddFolderIncludePage, wpAddFolderSortPage, wpAddFolderBackgroundPage, 
    wpInitIconPosData, wpFreeIconPosData, wpQueryIconPosition, 
    wpStoreIconPosData, wpDeleteFromContent, wpSetFldrAttr, 
    wpQueryFldrAttr, wpSetFldrSort, wpQueryFldrSort, 
    wpRestoreFldrRunObjs, wpStoreFldrRunObjs, withdrawn30, 
    withdrawn31, wpDeleteContents, wpQueryOpenFolders, 
    wpSetNextOpenFldr, wpSearchFolder, wpSetFldrDetailsClass, 
    wpQueryFldrDetailsClass, wpRefresh, wpSetDetailsColumnVisibility, 
    wpIsDetailsColumnVisible, wpQuerySortArray, wpSetSortArray, 
    wpQuerySortInfo, wpSetSortInfo, wpSetFldrSortClass, 
    wpQueryFldrSortClass, wpSetSortAttribAvailable, wpIsSortAttribAvailable, 
    wpQueryFldrFilter, wpContainsFolders, wpQueryBkgnd, 
    wpQueryIconViewPos, wpQueryDefaultView, wpAddFirstChild, 
    FirstObj, wpHideFldrRunObjs, wpFSNotifyFolder, 
    wpAddNotification, wpDeleteNotification, wpProcessNotification, 
    wpclsGetNotifySem, wpclsReleaseNotifySem, wpModifySneakyCount, 
    wpSneakySupported, wpAssertFolderMutexSem, wpReleaseFolderMutexSem, 
    wpRequestFolderMutexSem, wpQueryPopThreadID, wpQueryNextOpenFldr, 
    wpclsQueryOpenFolders, hmtxOneFindAtATime, wpRequestFindMutexSem, 
    wpReleaseFindMutexSem;


passthru: 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

      /* 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 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;
endpassthru;
methods:


    BOOL    wpSetFldrFlags(ULONG ulFlags);

    ULONG    wpQueryFldrFlags();

    BOOL    wpSetFldrFont(PSZ pszFont,
		ULONG ulView);

    PSZ    wpQueryFldrFont(ULONG ulView);

    BOOL    wpSetFldrAttr(ULONG Attr,
		ULONG ulView);

    ULONG    wpQueryFldrAttr(ULONG ulView);

    BOOL    wpSetNextIconPos(PPOINTL pptl);

    PPOINTL    wpQueryNextIconPos();

    BOOL    wpPopulate(ULONG ulReserved,
		PSZ pszPath,
		BOOL fFoldersOnly);

    WPObject *   wpQueryContent(WPObject *Object,
		ULONG ulOption);

    ULONG    wpAddFolderView1Page(HWND hwndNotebook);

    ULONG    wpAddFolderView2Page(HWND hwndNotebook);

    ULONG    wpAddFolderView3Page(HWND hwndNotebook);

    ULONG    wpAddFolderIncludePage(HWND hwndNotebook);

    ULONG    wpAddFolderSortPage(HWND hwndNotebook);

    ULONG    wpAddFolderBackgroundPage(HWND hwndNotebook);

    BOOL    wpInitIconPosData();

    void    wpFreeIconPosData();

    BOOL    wpStoreIconPosData(PICONPOS pIconPos,
		ULONG cbSize);

    BOOL    wpQueryIconPosition(PSZ pszIdentity,
		PPOINTL pptl,
		PULONG pIndex);

    BOOL    wpSetFldrSort(PVOID pSortRecord,
		ULONG ulView,
		ULONG ulType);

    PVOID    wpQueryFldrSort(ULONG ulView,
		ULONG ulType);

    BOOL    wpRestoreFldrRunObjs();

    BOOL    wpStoreFldrRunObjs(ULONG ulType);

    BOOL    wpHideFldrRunObjs(BOOL fHide);

    ULONG    wpDeleteContents(ULONG fConfirmations);

    BOOL    wpSetFldrDetailsClass(M_WPObject *Class);

    M_WPObject *   wpQueryFldrDetailsClass();

    BOOL    wpSearchFolder(PSZ pszName,
		ULONG ulSearchType,
		ULONG ulLen,
		PSEARCH_INFO pInfo,
		WPFolder *ResultFolder);

    BOOL    wpContainsFolders(BOOL *pfSubFolders);

    override wpInitData;

    -- From WPObject

    override wpUnInitData;

    -- From WPObject

    override wpFree;

    -- From WPObject

    override wpDelete;

    -- From WPObject

    override wpConfirmDelete;

    -- From WPObject

    override wpSaveState;

    -- From WPObject

    override wpRestoreState;

    -- From WPObject

    override wpMenuItemSelected;

    -- From WPObject

    override wpModifyPopupMenu;

    -- From WPObject

    override wpAddSettingsPages;

    -- From WPObject

    override wpOpen;

    -- From WPObject

    override wpSetup;

    -- From WPObject

    override wpMoveObject;

    -- From WPObject

    override wpDrop;

    -- From WPObject

    override wpDragOver;

    -- From WPObject

    override wpMenuItemHelpSelected;

    -- From WPObject

    override wpAddFile3Page;

    -- From WPFileSystem

    override wpAddFile2Page;

    -- From WPFileSystem

    override wpFormatDragItem;

    -- From WPObject

    override wpRender;

    -- From WPObject

    override wpRefresh;

    -- From WPFileSystem

    override wpQueryDefaultView;

    -- From WPObject

    override wpRenderComplete;

    -- From WPObject

    WPFolder *   wpclsQueryOpenFolders(WPFolder *Folder,
		ULONG ulOption,
		BOOL fLock), class;

    override wpclsInitData, class;

    -- From WPObject

    WPObject *   wpQueryOpenFolders(ULONG ulOption);

    override wpQueryDefaultHelp;

    -- From WPObject

    override wpclsQueryDefaultView, class;

    -- From WPObject

    override wpclsQueryTitle, class;

    -- From WPObject

    override wpclsQueryIconData, class;

    -- From WPObject

    override wpclsQueryStyle, class;

    -- From WPObject

    override wpclsQueryDefaultHelp, class;

    -- From WPObject

