166 lines
5.1 KiB
C
166 lines
5.1 KiB
C
/*
|
|
* cmnquery.h Common query interfaces
|
|
*
|
|
* =========================================================================
|
|
*
|
|
* Open Watcom Project
|
|
*
|
|
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
|
|
*
|
|
* This file is automatically generated. Do not edit directly.
|
|
*
|
|
* =========================================================================
|
|
*/
|
|
|
|
#ifndef __cmnquery_h
|
|
#define __cmnquery_h
|
|
|
|
#ifndef _ENABLE_AUTODEPEND
|
|
#pragma read_only_file;
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Forward declarations */
|
|
typedef interface IPersistQuery IPersistQuery;
|
|
|
|
/* Query form flags */
|
|
#define QUERYFORM_CHANGESFORMLIST 0x00000001L
|
|
#define QUERYFORM_CHANGESOPTFORMLIST 0x00000002L
|
|
|
|
/* Common query form flags */
|
|
#define CQFF_NOGLOBALPAGES 0x00000001L
|
|
#define CQFF_ISOPTIONAL 0x00000002L
|
|
|
|
/* Common query page messages */
|
|
#define CQPM_INITIALIZE 0x00000001
|
|
#define CQPM_RELEASE 0x00000002
|
|
#define CQPM_ENABLE 0x00000003
|
|
#define CQPM_GETPARAMETERS 0x00000005
|
|
#define CQPM_CLEARFORM 0x00000006
|
|
#define CQPM_PERSIST 0x00000007
|
|
#define CQPM_HELP 0x00000008
|
|
#define CQPM_SETDEFAULTPARAMETERS 0x00000009
|
|
#define CQPM_HANDLERSPECIFIC 0x10000000
|
|
|
|
/* Common query flags */
|
|
#define OQWF_OKCANCEL 0x00000001L
|
|
#define OQWF_DEFAULTFORM 0x00000002L
|
|
#define OQWF_SINGLESELECT 0x00000004L
|
|
#define OQWF_LOADQUERY 0x00000008L
|
|
#define OQWF_REMOVESCOPES 0x00000010L
|
|
#define OQWF_REMOVEFORMS 0x00000020L
|
|
#define OQWF_ISSUEONOPEN 0x00000040L
|
|
#define OQWF_SHOWOPTIONAL 0x00000080L
|
|
#define OQWF_SAVEQUERYONOK 0x00000200L
|
|
#define OQWF_HIDEMENUS 0x00000400L
|
|
#define OQWF_HIDESEARCHUI 0x00000800L
|
|
#define OQWF_PARAMISPROPERTYBAG 0x80000000L
|
|
|
|
/* Common query form information */
|
|
typedef struct {
|
|
DWORD cbStruct;
|
|
DWORD dwFlags;
|
|
CLSID clsid;
|
|
HICON hIcon;
|
|
LPCWSTR pszTitle;
|
|
} CQFORM;
|
|
typedef CQFORM *LPCQFORM;
|
|
|
|
/* Query form callbacks */
|
|
typedef HRESULT (CALLBACK *LPCQADDFORMSPROC)( LPARAM, LPCQFORM );
|
|
typedef HRESULT (CALLBACK *LPCQADDPAGESPROC)( LPARAM, REFCLSID, struct _cqpage * );
|
|
typedef HRESULT (CALLBACK *LPCQPAGEPROC)( struct _cqpage *, HWND, UINT, WPARAM, LPARAM );
|
|
|
|
/* Common query page information */
|
|
typedef struct _cqpage {
|
|
DWORD cbStruct;
|
|
DWORD dwFlags;
|
|
LPCQPAGEPROC pPageProc;
|
|
HINSTANCE hInstance;
|
|
INT idPageName;
|
|
INT idPageTemplate;
|
|
DLGPROC pDlgProc;
|
|
LPARAM lParam;
|
|
} CQPAGE;
|
|
typedef CQPAGE *LPCQPAGE;
|
|
|
|
/* ICommonQuery::OpenQueryWindow() parameters */
|
|
typedef struct {
|
|
DWORD cbStruct;
|
|
DWORD dwFlags;
|
|
CLSID clsidHandler;
|
|
LPVOID pHandlerParameters;
|
|
CLSID clsidDefaultForm;
|
|
IPersistQuery *pPersistQuery;
|
|
union {
|
|
void *pFormParameters;
|
|
IPropertyBag *ppbFormParameters;
|
|
};
|
|
} OPENQUERYWINDOW;
|
|
typedef OPENQUERYWINDOW *LPOPENQUERYWINDOW;
|
|
|
|
/* GUIDs */
|
|
EXTERN_C const IID IID_IQueryForm;
|
|
EXTERN_C const IID IID_IPersistQuery;
|
|
EXTERN_C const IID IID_ICommonQuery;
|
|
EXTERN_C const CLSID CLSID_CommonQuery;
|
|
|
|
/* IQueryForm interface */
|
|
#undef INTERFACE
|
|
#define INTERFACE IQueryForm
|
|
DECLARE_INTERFACE_( IQueryForm, IUnknown ) {
|
|
/* IUnknown methods */
|
|
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
|
|
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
|
|
STDMETHOD_( ULONG, Release )( THIS ) PURE;
|
|
|
|
/* IQueryForm methods */
|
|
STDMETHOD( Initialize )( THIS_ HKEY ) PURE;
|
|
STDMETHOD( AddForms )( THIS_ LPCQADDFORMSPROC, LPARAM ) PURE;
|
|
STDMETHOD( AddPages )( THIS_ LPCQADDPAGESPROC, LPARAM ) PURE;
|
|
};
|
|
|
|
/* IPersistQuery interface */
|
|
#undef INTERFACE
|
|
#define INTERFACE IPersistQuery
|
|
DECLARE_INTERFACE_( IPersistQuery, IPersist ) {
|
|
/* IUnknown methods */
|
|
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
|
|
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
|
|
STDMETHOD_( ULONG, Release )( THIS ) PURE;
|
|
|
|
/* IPersist methods */
|
|
STDMETHOD( GetClassID )( THIS_ CLSID * ) PURE;
|
|
|
|
/* IPersistQuery methods */
|
|
STDMETHOD( WriteString )( THIS_ LPCWSTR, LPCWSTR, LPCWSTR ) PURE;
|
|
STDMETHOD( ReadString )( THIS_ LPCWSTR, LPCWSTR, LPWSTR, INT ) PURE;
|
|
STDMETHOD( WriteInt )( THIS_ LPCWSTR, LPCWSTR, INT ) PURE;
|
|
STDMETHOD( ReadInt )( THIS_ LPCWSTR, LPCWSTR, LPINT ) PURE;
|
|
STDMETHOD( WriteStruct )( THIS_ LPCWSTR, LPCWSTR, LPVOID, DWORD ) PURE;
|
|
STDMETHOD( ReadStruct )( THIS_ LPCWSTR, LPCWSTR, LPVOID, DWORD ) PURE;
|
|
STDMETHOD( Clear )( THIS ) PURE;
|
|
};
|
|
|
|
/* ICommonQuery interface */
|
|
#undef INTERFACE
|
|
#define INTERFACE ICommonQuery
|
|
DECLARE_INTERFACE_( ICommonQuery, IUnknown ) {
|
|
/* IUnknown methods */
|
|
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
|
|
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
|
|
STDMETHOD_( ULONG, Release )( THIS ) PURE;
|
|
|
|
/* ICommonQuery methods */
|
|
STDMETHOD( OpenQueryWindow )( THIS_ HWND, LPOPENQUERYWINDOW, IDataObject ** ) PURE;
|
|
};
|
|
|
|
#ifdef __cplusplus
|
|
} /* extern "C" */
|
|
#endif
|
|
|
|
#endif /* __cmnquery_h */
|