home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
xwplascr.zip
/
XWPL0208.ZIP
/
idl
/
xtrash.idl
< prev
next >
Wrap
Text File
|
2002-07-15
|
7KB
|
243 lines
/*
* xtrash.idl:
* SOM interface description file for the following
* XWorkplace classes (in this order):
*
* -- XWPTrashCan: a subclass of WPFolder, which implements
* the actual trash can folder.
*
* See src\classes\xtrash.c for details.
*
* Copyright (C) 1999-2002 Ulrich Möller.
* This file is part of the XWorkplace source package.
* XWorkplace is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published
* by the Free Software Foundation, in version 2 as it comes in the
* "COPYING" file of the XWorkplace main distribution.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <wpfolder.idl> // this is SOM for WPFolder
/*
CLASS: XWPTrashCan
CLASS HIERARCHY:
SOMObject
└── WPObject [ = XFldObject ]
└── WPFileSystem
└── WPFolder [ = XFolder ]
└── XWPTrashCan
*/
interface M_XWPTrashCan; // forward reference to metaclass
interface XWPTrashCan : WPFolder
{
/*
* New instance methods for XWPTrashCan:
*
*/
BOOL xwpDeleteIntoTrashCan(in WPObject pObject);
ULONG xwpAddTrashCanSettingsPage(in HWND hwndDlg);
ULONG xwpAddTrashCanDrivesPage(in HWND hwndDlg);
ULONG xwpAddTrashCanGeneralPage(in HWND hwndDlg);
BOOL xwpTrashCanBusy(in LONG lBusy);
VOID xwpAddObjectSize(in ULONG ulNewSize);
ULONG xwpQueryTrashObjectsCount();
BOOL xwpSetCorrectTrashIcon(in BOOL fForce);
ULONG xwpEmptyTrashCan(in ULONG hab,
in PULONG pulDeleted,
in HWND hwndConfirmOwner);
BOOL xwpProcessObjectCommand(in USHORT usCommand,
in HWND hwndCnr,
in WPObject pFirstObject,
in ULONG ulSelectionFlags);
BOOL xwpUpdateStatusBar(in HWND hwndStatusBar, in HWND hwndCnr);
#ifdef __SOMIDL__
implementation {
releaseorder:
xwpDeleteIntoTrashCan,
xwpAddTrashCanSettingsPage,
xwpAddTrashCanDrivesPage,
xwpAddTrashCanGeneralPage,
xwpTrashCanBusy,
xwpAddObjectSize,
xwpQueryTrashObjectsCount,
xwpSetCorrectTrashIcon,
xwpEmptyTrashCan,
xwpUpdateStatusBar,
xwpProcessObjectCommand;
/*
* Class Modifiers:
*
*/
externalprefix = xtrc_;
externalstem = xtrc;
majorversion = 1;
minorversion = 1;
filestem = xtrash; //# specifies the filestem for sc-generated files
metaclass = M_XWPTrashCan;
dllname = "xfldr.dll";
callstyle = oidl; //# forget CORBA stuff (*ev and such)
/*
* Internal instance variables for XWPTrashCan:
*
*/
BOOL fAlreadyPopulated; // TRUE after the first call to wpPopulate
BOOL fFilledIconSet; // TRUE if "filled" icon has been set already
ULONG ulTrashObjectCount; // no. of trash objects in trash can;
// initialized to 0, updated by wpPopulate
double dSizeOfAllObjects; // size of all objects in trash can
CHAR cDrivePopulating; // if this is != 0, a drive is currently
// being populated; set by wpPopulate and
// used for the status bar
ULONG ulBusyCount; // raised or lowered with every xwpTrashCanBusy call
// HPOINTER hptrEmpty; // icon for empty trash can
// HPOINTER hptrFull; // icon for full trash can
// removed those V0.9.16 (2002-01-01) [umoeller]
BOOL fOpeningSettings; // TRUE while in wpOpen for settings view
/*
* WPFolder methods overridden by XWPTrashCan:
*
*/
wpInitData: override;
wpObjectReady: override;
wpUnInitData: override;
wpSaveState: override;
wpRestoreState: override;
wpSetup: override;
wpFilterPopupMenu: override;
wpModifyPopupMenu: override;
wpMenuItemSelected: override;
wpMenuItemHelpSelected: override;
//# wpQueryDefaultHelp: override; replaced with class method V0.9.20 (2002-07-12) [umoeller]
wpOpen: override;
wpPopulate: override;
wpRefresh: override;
wpAddToContent: override;
wpDeleteFromContent: override;
wpDeleteContents: override;
wpDragOver: override;
wpDrop: override;
wpAddObjectGeneralPage: override;
wpAddObjectGeneralPage2: override;
wpAddFolderIncludePage: override;
wpAddFolderSelfClosePage: override;
wpAddFolderView2Page: override;
wpAddSettingsPages: override;
wpSetIcon: override;
#ifdef __PRIVATE__
#endif
}; // implementation
#endif /* __SOMIDL__ */
};
//#
//#
//# Now define Metaclass.
//# ---------------------
//#
interface M_XWPTrashCan : M_WPFolder
{
/*
* New class methods for M_XWPTrashCan:
*
*/
XWPTrashCan xwpclsQueryDefaultTrashCan();
BOOL xwpclsSetDrivesSupport(in PBYTE pabSupportedDrives);
BOOL xwpclsQueryDrivesSupport(in PBYTE pabSupportedDrives);
#ifdef __SOMIDL__
implementation {
releaseorder: xwpclsQueryDefaultTrashCan,
xwpclsSetDrivesSupport,
xwpclsQueryDrivesSupport;
/*
* Class Modifiers:
*
*/
externalprefix = xtrcM_;
externalstem = xtrcM;
functionprefix = xtrcM_;
majorversion = 1;
minorversion = 1;
filestem = xtrash; //# specifies the filestem for sc-generated files
dllname = "xfldr.dll";
callstyle = oidl;
/*
* Internal instance variables for M_XWPTrashCan:
*
*/
/*
* M_WPFolder methods overridden by M_XWPTrashCan:
*
*/
wpclsInitData: override;
wpclsUnInitData: override;
wpclsCreateDefaultTemplates: override;
wpclsQueryTitle: override;
wpclsQueryStyle: override;
wpclsQueryDefaultHelp: override;
wpclsQueryIconData: override;
wpclsQueryIconDataN: override;
};
#endif /* __SOMIDL__ */
};