X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/27d7687903b04c56878597fefccf3daafd0a58fa..a7689c49fe02c0c065facf736ab28b19f5997b7c:/include/wx/msw/ole/automtn.h diff --git a/include/wx/msw/ole/automtn.h b/include/wx/msw/ole/automtn.h index 7ea70f8e4c..89eee6909c 100644 --- a/include/wx/msw/ole/automtn.h +++ b/include/wx/msw/ole/automtn.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: automtn.h +// Name: wx/msw/ole/automtn.h // Purpose: OLE automation utilities // Author: Julian Smart // Modified by: @@ -21,11 +21,26 @@ typedef void WXIDISPATCH; typedef unsigned short* WXBSTR; +typedef unsigned long WXLCID; #ifdef GetObject #undef GetObject #endif +// Flags used with wxAutomationObject::GetInstance() +enum wxAutomationInstanceFlags +{ + // Only use the existing instance, never create a new one. + wxAutomationInstance_UseExistingOnly = 0, + + // Create a new instance if there are no existing ones. + wxAutomationInstance_CreateIfNeeded = 1, + + // Do not log errors if we failed to get the existing instance because none + // is available. + wxAutomationInstance_SilentIfNone = 2 +}; + /* * wxAutomationObject * Wraps up an IDispatch pointer and invocation; does variant conversion. @@ -44,9 +59,10 @@ public: // Get a dispatch pointer from the current object associated // with a ProgID, such as "Excel.Application" - bool GetInstance(const wxString& progId) const; + bool GetInstance(const wxString& progId, + int flags = wxAutomationInstance_CreateIfNeeded) const; - // Get a dispatch pointer from a new instance of the the class + // Get a dispatch pointer from a new instance of the class bool CreateInstance(const wxString& progId) const; // Low-level invocation function. Pass either an array of variants, @@ -91,9 +107,21 @@ public: bool GetObject(wxAutomationObject& obj, const wxString& property, int noArgs = 0, wxVariant args[] = NULL) const; bool GetObject(wxAutomationObject& obj, const wxString& property, int noArgs, const wxVariant **args) const; -public: + // Returns the locale identifier used in automation calls. The default is + // LOCALE_SYSTEM_DEFAULT. Objects obtained by GetObject() inherit the + // locale identifier from the one that created them. + WXLCID GetLCID() const; + + // Sets the locale identifier to be used in automation calls performed by + // this object. The default is LOCALE_SYSTEM_DEFAULT. + void SetLCID(WXLCID lcid); + +public: // public for compatibility only, don't use m_dispatchPtr directly. WXIDISPATCH* m_dispatchPtr; +private: + WXLCID m_lcid; + wxDECLARE_NO_COPY_CLASS(wxAutomationObject); };