/*
* COM interfaces for shell objects
*
* Copyright (C) 2004 Maxime Bellengé
*
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
/*
* Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
* other than GPL or LGPL is available it will apply instead, Oracle elects to use only
* the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
* a choice of LGPL license versions is made available with the language indicating
* that LGPLv2 or any later version may be used, or where a choice of which version
* of the LGPL is applied is otherwise unspecified.
*/
import "ocidl.idl";
cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
cpp_quote("#undef ShellExecute")
cpp_quote("#endif")
/*****************************************************************************
* IEnumACString interface
*/
[
]
interface IEnumACString : IEnumString
{
typedef enum _tagACENUMOPTION
{
ACEO_NONE = 0x00000000,
ACEO_MOSTRECENTFIRST = 0x00000001,
ACEO_FIRSTUNUSED = 0x00010000,
} ACENUMOPTION;
}
/*****************************************************************************
* IAutoComplete interface
*/
[
]
interface IAutoComplete : IUnknown
{
}
/*****************************************************************************
* IAutoComplete2 interface
*/
[
]
interface IAutoComplete2 : IAutoComplete
{
{
}
[
version(1.0)
]
{
importlib("stdole2.tlb");
[
]
interface IFolderViewOC : IDispatch
{
}
[
]
{
void SelectionChanged();
void EnumDone();
}
[
]
{
[default] interface IFolderViewOC;
}
interface FolderItem;
interface FolderItems;
interface FolderItemVerb;
interface FolderItemVerbs;
/*****************************************************************************
* Folder interface
*/
[
]
{
[propget]
[propget]
[propget]
}
/*****************************************************************************
* Folder2 interface
*/
[
]
{
[propget]
[propget]
}
/*****************************************************************************
* Folder3 interface
*/
[
]
{
}
/*****************************************************************************
* FolderItem interface
*/
[
]
interface FolderItem : IDispatch
{
[propget]
[propget]
[propget]
[propget]
[propget]
[propget]
[propget]
[propget]
[propget]
[propget]
[propput]
[propget]
[propget]
}
/*****************************************************************************
* FolderItems interface
*/
[
]
interface FolderItems : IDispatch
{
[propget]
[propget]
[propget]
[id(DISPID_NEWENUM)]
}
/*****************************************************************************
* FolderItemVerb interface
*/
[
]
interface FolderItemVerb : IDispatch
{
[propget]
[propget]
}
/*****************************************************************************
* FolderItemVerbs interface
*/
[
]
interface FolderItemVerbs : IDispatch
{
[propget]
[propget]
[propget]
[id(DISPID_NEWENUM)]
}
/*****************************************************************************
* IShellDispatch interface
*/
[
]
interface IShellDispatch : IDispatch
{
[propget]
[propget]
}
[
dual,
]
interface IShellDispatch2 : IShellDispatch
{
HRESULT FindPrinter([in, optional] BSTR name, [in, optional] BSTR location, [in, optional] BSTR model);
}
[
]
{
[default] interface IShellDispatch2;
}
[
]
{
interface IUnknown;
}
[
]
enum ShellSpecialFolderConstants {
ssfDESKTOP = 0x00,
ssfPROGRAMS = 0x02,
ssfCONTROLS = 0x03,
ssfPRINTERS = 0x04,
ssfPERSONAL = 0x05,
ssfFAVORITES = 0x06,
ssfSTARTUP = 0x07,
ssfRECENT = 0x08,
ssfSENDTO = 0x09,
ssfBITBUCKET = 0x0a,
ssfSTARTMENU = 0x0b,
ssfDESKTOPDIRECTORY = 0x10,
ssfDRIVES = 0x11,
ssfNETWORK = 0x12,
ssfNETHOOD = 0x13,
ssfFONTS = 0x14,
ssfTEMPLATES = 0x15,
ssfCOMMONSTARTMENU = 0x16,
ssfCOMMONPROGRAMS = 0x17,
ssfCOMMONSTARTUP = 0x18,
ssfCOMMONDESKTOPDIR = 0x19,
ssfAPPDATA = 0x1a,
ssfPRINTHOOD = 0x1b,
ssfLOCALAPPDATA = 0x1c,
ssfALTSTARTUP = 0x1d,
ssfCOMMONALTSTARTUP = 0x1e,
ssfCOMMONFAVORITES = 0x1f,
ssfINTERNETCACHE = 0x20,
ssfCOOKIES = 0x21,
ssfHISTORY = 0x22,
ssfCOMMONAPPDATA = 0x23,
ssfWINDOWS = 0x24,
ssfSYSTEM = 0x25,
ssfPROGRAMFILES = 0x26,
ssfMYPICTURES = 0x27,
ssfPROFILE = 0x28,
ssfSYSTEMx86 = 0x29,
ssfPROGRAMFILESx86 = 0x30
} /* library Shell32 */
/*****************************************************************************
* IAsyncOperation interface
*/
[
]
interface IAsyncOperation : IUnknown
{
}