From aa0b7e1e64beaeada5234d73ca6a41781a2acc73 Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Tue, 8 Dec 1998 18:52:06 +0000 Subject: [PATCH] Additions to wxTime; always inits OLE now in wxMSW git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/time.cpp | 32 +++++++++++++ src/msw/app.cpp | 107 ++++++++++++++++++++++++------------------- src/msw/makefile.b32 | 5 ++ src/msw/makefile.g95 | 3 +- src/msw/makefile.nt | 9 +++- 5 files changed, 107 insertions(+), 49 deletions(-) diff --git a/src/common/time.cpp b/src/common/time.cpp index 1d30d65da0..c8a19d6395 100644 --- a/src/common/time.cpp +++ b/src/common/time.cpp @@ -271,6 +271,38 @@ secondTy wxTime::GetSecond() const return (secondTy)(((sec % 86400) % 3600) % 60); } +secondTy wxTime::GetSecondGMT() const +/* + Return the minute of this wxTime in GMT. +*/ +{ + return (secondTy)(((sec % 86400) % 3600) % 60); +} + +int wxTime::GetDay() const +{ + wxDate da((wxDate) *this); + return da.GetDay(); +} + +int wxTime::GetDayOfWeek() const +{ + wxDate da((wxDate) *this); + return da.GetDayOfWeek(); +} + +int wxTime::GetMonth() const +{ + wxDate da((wxDate) *this); + return da.GetMonth(); +} + +int wxTime::GetYear() const +{ + wxDate da((wxDate) *this); + return da.GetYear(); +} + wxTime wxTime::Max(const wxTime& t) const { if (t < *this) return *this; diff --git a/src/msw/app.cpp b/src/msw/app.cpp index a9fb77fdd2..58798d9374 100644 --- a/src/msw/app.cpp +++ b/src/msw/app.cpp @@ -117,34 +117,34 @@ long wxApp::sm_lastMessageTime = 0; bool wxApp::Initialize() { - wxBuffer = new char[1500]; + wxBuffer = new char[1500]; - #ifdef wxUSE_VC_CRTDBG +#ifdef wxUSE_VC_CRTDBG // do check for memory leaks on program exit // (another useful flag is _CRTDBG_DELAY_FREE_MEM_DF which doesn't free // deallocated memory which may be used to simulate low-memory condition) _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF); - #endif // debug build under MS VC++ +#endif // debug build under MS VC++ - wxClassInfo::InitializeClasses(); + wxClassInfo::InitializeClasses(); - #if wxUSE_RESOURCES +#if wxUSE_RESOURCES wxGetResource("wxWindows", "OsVersion", &wxOsVersion); - #endif +#endif - wxTheColourDatabase = new wxColourDatabase(wxKEY_STRING); - wxTheColourDatabase->Initialize(); + wxTheColourDatabase = new wxColourDatabase(wxKEY_STRING); + wxTheColourDatabase->Initialize(); - wxInitializeStockLists(); - wxInitializeStockObjects(); + wxInitializeStockLists(); + wxInitializeStockObjects(); - #if wxUSE_WX_RESOURCES +#if wxUSE_WX_RESOURCES wxInitializeResourceSystem(); - #endif +#endif - wxBitmap::InitStandardHandlers(); + wxBitmap::InitStandardHandlers(); - #if defined(__WIN95__) +#if defined(__WIN95__) InitCommonControls(); gs_hRichEdit = LoadLibrary("RICHED32.DLL"); @@ -152,60 +152,75 @@ bool wxApp::Initialize() { wxMessageBox("Could not initialise Rich Edit DLL"); } - #endif +#endif + + int iMsg = 96; + + // for OLE, enlarge message queue to be as large as possible + while (!SetMessageQueue(iMsg) && (iMsg -= 8)); - #if defined(WX_DRAG_DROP) +/* + DWORD dwOleVer; + dwOleVer = CoBuildVersion(); + + // check the OLE library version + if (rmm != HIWORD(dwOleVer)) + { + wxMessageBox("Incorrect version of OLE libraries."); + return FALSE; + } +*/ + // we need to initialize OLE library if ( FAILED(::OleInitialize(NULL)) ) wxFatalError(_("Cannot initialize OLE")); - #endif - #if CTL3D +#if CTL3D if (!Ctl3dRegister(wxhInstance)) wxFatalError("Cannot register CTL3D"); Ctl3dAutoSubclass(wxhInstance); - #endif +#endif - g_globalCursor = new wxCursor; + g_globalCursor = new wxCursor; - wxSTD_FRAME_ICON = LoadIcon(wxhInstance, "wxSTD_FRAME"); - wxSTD_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, "wxSTD_MDIPARENTFRAME"); - wxSTD_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, "wxSTD_MDICHILDFRAME"); + wxSTD_FRAME_ICON = LoadIcon(wxhInstance, "wxSTD_FRAME"); + wxSTD_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, "wxSTD_MDIPARENTFRAME"); + wxSTD_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, "wxSTD_MDICHILDFRAME"); - wxDEFAULT_FRAME_ICON = LoadIcon(wxhInstance, "wxDEFAULT_FRAME"); - wxDEFAULT_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, "wxDEFAULT_MDIPARENTFRAME"); - wxDEFAULT_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, "wxDEFAULT_MDICHILDFRAME"); + wxDEFAULT_FRAME_ICON = LoadIcon(wxhInstance, "wxDEFAULT_FRAME"); + wxDEFAULT_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, "wxDEFAULT_MDIPARENTFRAME"); + wxDEFAULT_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, "wxDEFAULT_MDICHILDFRAME"); - RegisterWindowClasses(); + RegisterWindowClasses(); - // Create the brush for disabling bitmap buttons + // Create the brush for disabling bitmap buttons - LOGBRUSH lb ; - lb.lbStyle = BS_PATTERN; - lb.lbHatch = (int)LoadBitmap( wxhInstance, "wxDISABLE_BUTTON_BITMAP" ) ; - wxDisableButtonBrush = ::CreateBrushIndirect( & lb ) ; - ::DeleteObject( (HGDIOBJ)lb.lbHatch ) ; + LOGBRUSH lb ; + lb.lbStyle = BS_PATTERN; + lb.lbHatch = (int)LoadBitmap( wxhInstance, "wxDISABLE_BUTTON_BITMAP" ) ; + wxDisableButtonBrush = ::CreateBrushIndirect( & lb ) ; + ::DeleteObject( (HGDIOBJ)lb.lbHatch ) ; - #if wxUSE_PENWINDOWS +#if wxUSE_PENWINDOWS wxRegisterPenWin(); - #endif +#endif - wxWinHandleList = new wxList(wxKEY_INTEGER); + wxWinHandleList = new wxList(wxKEY_INTEGER); - // This is to foil optimizations in Visual C++ that - // throw out dummy.obj. - #if (_MSC_VER >= 800) && !defined(WXMAKINGDLL) + // This is to foil optimizations in Visual C++ that + // throw out dummy.obj. +#if (_MSC_VER >= 800) && !defined(WXMAKINGDLL) extern char wxDummyChar; if (wxDummyChar) wxDummyChar++; - #endif +#endif - wxSetKeyboardHook(TRUE); + wxSetKeyboardHook(TRUE); - wxModule::RegisterModules(); - if (!wxModule::InitializeModules()) - return FALSE; - return TRUE; + wxModule::RegisterModules(); + if (!wxModule::InitializeModules()) + return FALSE; + return TRUE; } //// RegisterWindowClasses @@ -471,9 +486,7 @@ void wxApp::CleanUp() if ( wxDisableButtonBrush ) ::DeleteObject( wxDisableButtonBrush ) ; -#if defined(WX_DRAG_DROP) ::OleUninitialize(); -#endif #if CTL3D Ctl3dUnregister(wxhInstance); diff --git a/src/msw/makefile.b32 b/src/msw/makefile.b32 index 19837e185f..974eaab732 100644 --- a/src/msw/makefile.b32 +++ b/src/msw/makefile.b32 @@ -239,6 +239,9 @@ MSWOBJS = \ $(MSWDIR)\dataobj.obj \ $(MSWDIR)\uuid.obj +# Unfortunately this causes a crash when the oleauto sample starts. +# $(MSWDIR)\automtn.obj + OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) default: wx @@ -456,6 +459,8 @@ $(MSWDIR)\oleutils.obj: $(OLEDIR)\oleutils.$(SRCSUFF) $(MSWDIR)\uuid.obj: $(OLEDIR)\uuid.$(SRCSUFF) +$(MSWDIR)\automtn.obj: $(OLEDIR)\automtn.$(SRCSUFF) + ######################################################## # Common objects (always compiled) diff --git a/src/msw/makefile.g95 b/src/msw/makefile.g95 index db437e0f3e..977aa6854d 100644 --- a/src/msw/makefile.g95 +++ b/src/msw/makefile.g95 @@ -228,7 +228,8 @@ MSWOBJS = \ # $(OLEDIR)/dropsrc.$(OBJSUFF) \ # $(OLEDIR)/dataobj.$(OBJSUFF) \ # $(OLEDIR)/oleutils.$(OBJSUFF) \ -# $(OLEDIR)/uuid.$(OBJSUFF) +# $(OLEDIR)/uuid.$(OBJSUFF) \ +# $(OLEDIR)/automtn.$(OBJSUFF) XPMOBJECTS = $(XPMDIR)/crbuffri.o\ $(XPMDIR)/crdatfri.o\ diff --git a/src/msw/makefile.nt b/src/msw/makefile.nt index 36bbc16889..0a0e364f43 100644 --- a/src/msw/makefile.nt +++ b/src/msw/makefile.nt @@ -219,7 +219,8 @@ MSWOBJS = \ $(OLEDIR)\dropsrc.obj \ $(OLEDIR)\dataobj.obj \ $(OLEDIR)\oleutils.obj \ - $(OLEDIR)\uuid.obj + $(OLEDIR)\uuid.obj \ + $(OLEDIR)\automtn.obj XPMOBJECTS = $(XPMDIR)\crbuffri.obj\ $(XPMDIR)\crdatfri.obj\ @@ -739,6 +740,12 @@ $(OLEDIR)/uuid.obj: $*.$(SRCSUFF) $(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@ << +$(OLEDIR)/automtn.obj: $*.$(SRCSUFF) + echo $(CPPFLAGS) + cl @<< +$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@ +<< + ######################################################## # Common objects (always compiled) -- 2.45.2