From 8d661b6bf8e2adc1a73fb2489f0689cdfaa52a66 Mon Sep 17 00:00:00 2001 From: Dimitri Schoolwerth Date: Tue, 3 May 2016 21:55:55 +0400 Subject: [PATCH 001/916] Clarify and change a drawing fix for wxMSW ListCtrl with wxLC_VRULES Since 9eaba6927648cf2989a3fddf4a5e2deea1d62708 a fix was added for leaving behind trailing pixels when resizing a column in a ListCtrl that uses wxLC_VRULES. This fix is only needed for ComCtl32.dll versions prior to 6.0. Make the fix conditional and explain the (rare) conditions under which the problem still occurs. Also see #747. --- src/msw/listctrl.cpp | 44 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index b699719fcc..b590ebce93 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -3098,16 +3098,42 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) if (GetItemRect(itemCount - 1, itemRect)) { - // this is a fix for bug 673394: erase the pixels which we would - // otherwise leave on the screen - static const int gap = 2; - dc.SetPen(*wxTRANSPARENT_PEN); - dc.SetBrush(wxBrush(GetBackgroundColour())); - dc.DrawRectangle(0, firstItemRect.GetY() - gap, - clientSize.GetWidth(), gap); + /* + This is a fix for ticket #747: erase the pixels which we would + otherwise leave on the screen. - dc.SetPen(pen); - dc.SetBrush(*wxTRANSPARENT_BRUSH); + The drawing of the rectangle as a fix to erase trailing pixels + when resizing a column is only needed for ComCtl32 prior to + 6.0, i.e. when not using a manifest in which case 5.82 is + used. And even then it only happens when "Show window contents + while dragging" is enabled under Windows, resulting in live + updates when resizing columns. Note that even with that setting + on, at least under Windows 7 and 10 no live updating is done when + using ComCtl32 5.82. + + Revision b66c3a67519caa9debfd76e6d74954eaebfa56d9 made this fix + almost redundant, except that when you do NOT handle + EVT_LIST_COL_DRAGGING (or do and skip the event) the trailing + pixels still appear. In case of wanting to reproduce the problem + in the listctrl sample: comment out handling oF + EVT_LIST_COL_DRAGGING and also set useDrawFix to false and gap to + 2 (not 0). + */ + + static const bool useDrawFix = wxApp::GetComCtl32Version() < 600; + + static const int gap = useDrawFix ? 2 : 0; + + if (useDrawFix) + { + dc.SetPen(*wxTRANSPARENT_PEN); + dc.SetBrush(wxBrush(GetBackgroundColour())); + dc.DrawRectangle(0, firstItemRect.GetY() - gap, + clientSize.GetWidth(), gap); + + dc.SetPen(pen); + dc.SetBrush(*wxTRANSPARENT_BRUSH); + } const int numCols = GetColumnCount(); wxVector indexArray(numCols); From 761f05c6494562f9941cdd84614cd587709ad338 Mon Sep 17 00:00:00 2001 From: Dimitri Schoolwerth Date: Wed, 4 May 2016 02:47:56 +0400 Subject: [PATCH 002/916] Improve wxMSW ListCtrl drawing of horizontal rules Appending an item in the listctrl sample results in two horizontal lines drawn next to each other while they should be overlapping. Fix by drawing only the bottom line of each item instead of skipping the first one (should have been the top visible item since 6443de026310552cacd68a6d0318e73d14929680) and drawing the last one in the list (should have been bottom visible item). --- src/msw/listctrl.cpp | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index b590ebce93..4355256ce2 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -3071,22 +3071,13 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) if (drawHRules) { const long top = GetTopItem(); - for ( int i = top; i < top + GetCountPerPage() + 1; i++ ) + const long bottom = wxMin(top + GetCountPerPage(), itemCount - 1); + for ( long i = top; i <= bottom; i++ ) { if (GetItemRect(i, itemRect)) { - int cy = itemRect.GetTop(); - if (i != 0) // Don't draw the first one - { - dc.DrawLine(0, cy, clientSize.x, cy); - } - // Draw last line - if (i == itemCount - 1) - { - cy = itemRect.GetBottom(); - dc.DrawLine(0, cy, clientSize.x, cy); - break; - } + const int cy = itemRect.GetBottom(); + dc.DrawLine(0, cy, clientSize.x, cy); } } } From d382107ea240010de96e5780b017738f89ac3439 Mon Sep 17 00:00:00 2001 From: Dimitri Schoolwerth Date: Wed, 4 May 2016 03:13:43 +0400 Subject: [PATCH 003/916] Slightly improve wxMSW ListCtrl drawing of vertical rules Draw the vertical rules with Y coordinates related to the top and bottom visible item which makes more sense than using the first and last item. --- src/msw/listctrl.cpp | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index 4355256ce2..59f70aa200 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -3066,12 +3066,20 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) dc.SetBrush(* wxTRANSPARENT_BRUSH); wxSize clientSize = GetClientSize(); - wxRect itemRect; + + const int countPerPage = GetCountPerPage(); + if (countPerPage < 0) + { + // Can be -1 in which case it's useless to try to draw rules. + return; + } + + const long top = GetTopItem(); + const long bottom = wxMin(top + countPerPage, itemCount - 1); if (drawHRules) { - const long top = GetTopItem(); - const long bottom = wxMin(top + GetCountPerPage(), itemCount - 1); + wxRect itemRect; for ( long i = top; i <= bottom; i++ ) { if (GetItemRect(i, itemRect)) @@ -3084,10 +3092,10 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) if (drawVRules) { - wxRect firstItemRect; - GetItemRect(0, firstItemRect); + wxRect topItemRect, bottomItemRect; + GetItemRect(top, topItemRect); - if (GetItemRect(itemCount - 1, itemRect)) + if (GetItemRect(bottom, bottomItemRect)) { /* This is a fix for ticket #747: erase the pixels which we would @@ -3119,7 +3127,7 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) { dc.SetPen(*wxTRANSPARENT_PEN); dc.SetBrush(wxBrush(GetBackgroundColour())); - dc.DrawRectangle(0, firstItemRect.GetY() - gap, + dc.DrawRectangle(0, topItemRect.GetY() - gap, clientSize.GetWidth(), gap); dc.SetPen(pen); @@ -3136,13 +3144,13 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) return; } - int x = itemRect.GetX(); + int x = bottomItemRect.GetX(); for (int col = 0; col < numCols; col++) { int colWidth = GetColumnWidth(indexArray[col]); x += colWidth ; - dc.DrawLine(x-1, firstItemRect.GetY() - gap, - x-1, itemRect.GetBottom()); + dc.DrawLine(x-1, topItemRect.GetY() - gap, + x-1, bottomItemRect.GetBottom()); } } } From 374db28747a90bdced3ad05005e5d5ef406cbc18 Mon Sep 17 00:00:00 2001 From: Dimitri Schoolwerth Date: Wed, 4 May 2016 11:19:21 +0400 Subject: [PATCH 004/916] Fix wxMSW ListCtrl drawing of horizontal rules for new items When adding a new item to a wxMSW ListCtrl that uses horizontal rules the painting is horizontally clipped to the left of the control and the rightmost column and the rule doesn't extend beyond that as it does when doing a full repaint. Fix by refreshing the part to the right of the rightmost column. This also reverts 02c8973a575d14a66898533293ab58dd30447616 which became unnecessary now. Also see #17158. --- src/msw/listctrl.cpp | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index 59f70aa200..3f38b4713b 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -709,15 +709,7 @@ bool wxListCtrl::SetColumnWidth(int col, int width) else if ( width == wxLIST_AUTOSIZE_USEHEADER) width = LVSCW_AUTOSIZE_USEHEADER; - if ( !ListView_SetColumnWidth(GetHwnd(), col, width) ) - return false; - - // Failure to explicitly refresh the control with horizontal rules results - // in corrupted rules display. - if ( HasFlag(wxLC_HRULES) ) - Refresh(); - - return true; + return ListView_SetColumnWidth(GetHwnd(), col, width) != 0; } // ---------------------------------------------------------------------------- @@ -3077,6 +3069,9 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) const long top = GetTopItem(); const long bottom = wxMin(top + countPerPage, itemCount - 1); + wxRect clipRect; + dc.GetClippingBox(clipRect); + if (drawHRules) { wxRect itemRect; @@ -3085,9 +3080,24 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) if (GetItemRect(i, itemRect)) { const int cy = itemRect.GetBottom(); - dc.DrawLine(0, cy, clientSize.x, cy); + dc.DrawLine(clipRect.x, cy, clipRect.GetRight() + 1, cy); } } + + /* + The drawing can be clipped horizontally to the rightmost column. This + happens when an item is added (and visible) and results in a + horizontal rule being clipped instead of drawn across the entire list + control. In that case we request for the part to the right of the + rightmost column to be drawn as well. + */ + if ( clipRect.GetRight() != clientSize.GetWidth() - 1 + && clipRect.width) + { + RefreshRect(wxRect(clipRect.GetRight(), clipRect.y, + clientSize.x - clipRect.width, clipRect.height), + false /* erase background? */); + } } if (drawVRules) From acf53800fca55a50f39659c5d92111134593aa27 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 3 Dec 2017 17:50:18 +0100 Subject: [PATCH 005/916] Extract reusable part of the MFC sample in a header Allow reusing this functionality from outside the library, it can he useful if an MFC window needs to be embedded into a wx application (or vice versa). Also use a better wxEntryStart() overload as a side effect, this should, in particular, fix the problem with command line arguments processing in mixed MFC/wx applications pointed out in a comment in the sample previously. --- include/wx/msw/mfc.h | 137 ++++++++++++++++++++++++++++++++++++++++ samples/mfc/mfctest.cpp | 109 +++----------------------------- samples/mfc/mfctest.h | 46 ++++++-------- 3 files changed, 166 insertions(+), 126 deletions(-) create mode 100644 include/wx/msw/mfc.h diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h new file mode 100644 index 0000000000..49974bb9ea --- /dev/null +++ b/include/wx/msw/mfc.h @@ -0,0 +1,137 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/msw/mfc.h +// Purpose: Helpers for applications using both wxWidgets and MFC +// Author: Julian Smart, Vadim Zeitlin +// Created: 2017-12-01 (mostly extracted from samples/mfc) +// Copyright: (c) 2017 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_MSW_MFC_H_ +#define _WX_MSW_MFC_H_ + +#ifndef __AFXWIN_H__ + #error "MFC headers must be included before including this file." +#endif + +#include "wx/app.h" +#include "wx/evtloop.h" +#include "wx/window.h" +#include "wx/msw/winundef.h" + +// ---------------------------------------------------------------------------- +// MFC window class wrapping a window created by wxWidgets +// ---------------------------------------------------------------------------- + +class wxMFCWnd : public CWnd +{ +public: + explicit wxMFCWnd(wxWindow* w) + { + Attach(w->GetHWND()); + } + + ~wxMFCWnd() + { + // Prevent MFC from destroying the wxWindow. + Detach(); + } +}; + +// ---------------------------------------------------------------------------- +// MFC application class forwarding everything to wxApp +// ---------------------------------------------------------------------------- + +class wxMFCWinApp : public CWinApp +{ +public: + BOOL InitInstance() wxOVERRIDE + { + if ( !CWinApp::InitInstance() ) + return FALSE; + + if ( !wxEntryStart(m_hInstance) ) + return FALSE; + + if ( !wxTheApp || !wxTheApp->CallOnInit() ) + return FALSE; + + if ( !InitMainWnd() ) + return FALSE; + + return TRUE; + } + + int ExitInstance() wxOVERRIDE + { + delete m_pMainWnd; + + if ( wxTheApp ) + wxTheApp->OnExit(); + + wxEntryCleanup(); + + return CWinApp::ExitInstance(); + } + + // Override this to provide wxWidgets message loop compatibility + BOOL PreTranslateMessage(MSG *msg) wxOVERRIDE + { + wxEventLoop * const + evtLoop = static_cast(wxEventLoop::GetActive()); + if ( evtLoop && evtLoop->PreProcessMessage(msg) ) + return TRUE; + + return CWinApp::PreTranslateMessage(msg); + } + + BOOL OnIdle(LONG lCount) wxOVERRIDE + { + BOOL moreIdle = CWinApp::OnIdle(lCount); + + if ( wxTheApp && wxTheApp->ProcessIdle() ) + moreIdle = TRUE; + + return moreIdle; + } + +protected: + // This virtual method can be overridden to create the main window using + // MFC code. The default implementation relies on wxApp::OnInit() creating + // a top level window which is then wrapped in an MFC window and used as + // the main window. + virtual BOOL InitMainWnd() + { + wxWindow* const w = wxTheApp->GetTopWindow(); + if ( !w ) + return FALSE; + + // We need to initialize the main window to let the program continue + // running. + m_pMainWnd = new wxMFCWnd(w); + + // And we need to let wxWidgets know that it should exit the + // application when this window is closed, as OnRun(), which does this + // by default, won't be called when using MFC main message loop. + wxTheApp->SetExitOnFrameDelete(true); + + return TRUE; + } +}; + +// ---------------------------------------------------------------------------- +// wxWidgets application class to be used in MFC applications +// ---------------------------------------------------------------------------- + +class wxAppWithMFC : public wxApp +{ +public: + void ExitMainLoop() wxOVERRIDE + { + // There is no wxEventLoop to exit, tell MFC to stop pumping messages + // instead. + ::PostQuitMessage(0); + } +}; + +#endif // _WX_MSW_MFC_H_ diff --git a/samples/mfc/mfctest.cpp b/samples/mfc/mfctest.cpp index 9263040ceb..1c00df1c9e 100644 --- a/samples/mfc/mfctest.cpp +++ b/samples/mfc/mfctest.cpp @@ -17,8 +17,8 @@ // created subsequently. // // (1) Make MyApp::OnInit not create a main window. -// (2) Make MFC's InitInstance create a main window, and remove -// creation of CDummyWindow. +// (2) Define a class deriving from wxMFCWinApp and override its InitMainWnd() +// to create the main window in MFC code. // // This can be accomplished by setting START_WITH_MFC_WINDOW to 1 below. @@ -73,6 +73,8 @@ #include "wx/nativewin.h" #include "wx/spinctrl.h" +#include "wx/msw/mfc.h" + #include "resource.h" #include "mfctest.h" @@ -82,19 +84,15 @@ // theApp: // Just creating this application object runs the whole application. // -CTheApp theApp; +SampleMFCWinApp theApp; // wxWidgets elements -// Define a new application type -class MyApp: public wxApp +// Define a new application type inheriting from wxAppWithMFC +class MyApp: public wxAppWithMFC { public: - virtual bool OnInit(); - - // we need to override this as the default behaviour only works when we're - // running wxWidgets main loop, not MFC one - virtual void ExitMainLoop(); + virtual bool OnInit() wxOVERRIDE; wxFrame *CreateFrame(); }; @@ -238,73 +236,6 @@ ON_COMMAND( IDM_TEST, OnTest ) //}}AFX_MSG_MAP END_MESSAGE_MAP() -BOOL CTheApp::InitInstance() -{ - if ( !CWinApp::InitInstance() ) - return FALSE; - - // TODO: cmd line parsing - WXDLLIMPEXP_BASE void wxSetInstance(HINSTANCE hInst); - wxSetInstance(m_hInstance); - wxApp::m_nCmdShow = m_nCmdShow; - int argc = 0; - wxChar **argv = NULL; - wxEntryStart(argc, argv); - if ( !wxTheApp || !wxTheApp->CallOnInit() ) - return FALSE; - -#if START_WITH_MFC_WINDOW - // Demonstrate creation of an initial MFC main window. - m_pMainWnd = new CMainWindow(); - m_pMainWnd->ShowWindow( m_nCmdShow ); - m_pMainWnd->UpdateWindow(); -#else - // Demonstrate creation of an initial wxWidgets main window. - // Wrap wxWidgets window in a dummy MFC window and - // make the main window. - if (wxTheApp && wxTheApp->GetTopWindow()) - { - m_pMainWnd = new CDummyWindow((HWND) wxTheApp->GetTopWindow()->GetHWND()); - } -#endif - - return TRUE; -} - -int CTheApp::ExitInstance() -{ -#if !START_WITH_MFC_WINDOW - delete m_pMainWnd; -#endif - - if ( wxTheApp ) - wxTheApp->OnExit(); - wxEntryCleanup(); - - return CWinApp::ExitInstance(); -} - -// Override this to provide wxWidgets message loop compatibility -BOOL CTheApp::PreTranslateMessage(MSG *msg) -{ - wxEventLoop * const - evtLoop = static_cast(wxEventLoop::GetActive()); - if ( evtLoop && evtLoop->PreProcessMessage(msg) ) - return TRUE; - - return CWinApp::PreTranslateMessage(msg); -} - -BOOL CTheApp::OnIdle(LONG lCount) -{ - BOOL moreIdle = CWinApp::OnIdle(lCount); - - if ( wxTheApp && wxTheApp->ProcessIdle() ) - moreIdle = TRUE; - - return moreIdle; -} - /********************************************************************* * wxWidgets elements ********************************************************************/ @@ -315,22 +246,12 @@ bool MyApp::OnInit() return false; #if !START_WITH_MFC_WINDOW - // as we're not inside wxWidgets main loop, the default logic doesn't work - // in our case and we need to do this explicitly - SetExitOnFrameDelete(true); - (void) CreateFrame(); #endif return true; } -void MyApp::ExitMainLoop() -{ - // instead of existing wxWidgets main loop, terminate the MFC one - ::PostQuitMessage(0); -} - wxFrame *MyApp::CreateFrame() { MyChild *subframe = new MyChild(NULL, wxT("Canvas Frame"), wxPoint(10, 10), wxSize(300, 300), @@ -451,17 +372,3 @@ void MyChild::OnActivate(wxActivateEvent& event) if (event.GetActive() && canvas) canvas->SetFocus(); } - -// Dummy MFC window for specifying a valid main window to MFC, using -// a wxWidgets HWND. -CDummyWindow::CDummyWindow(HWND hWnd) -{ - Attach(hWnd); -} - -// Don't let the CWnd destructor delete the HWND -CDummyWindow::~CDummyWindow() -{ - Detach(); -} - diff --git a/samples/mfc/mfctest.h b/samples/mfc/mfctest.h index 2c49911339..b12036d913 100644 --- a/samples/mfc/mfctest.h +++ b/samples/mfc/mfctest.h @@ -9,11 +9,7 @@ #ifndef __MFCTEST_H__ #define __MFCTEST_H__ -///////////////////////////////////////////////////////////////////////////// - -// CMainWindow: -// See hello.cpp for the code to the member functions and the message map. -// +// CMainWindow: just a normal MFC window class. class CMainWindow : public CFrameWnd { public: @@ -31,30 +27,30 @@ private: class wxNativeContainerWindow* m_containerWX; }; -// A dummy CWnd pointing to a wxWindow's HWND -class CDummyWindow: public CWnd +#if START_WITH_MFC_WINDOW + +// There is no need to define an application class if the default behaviour of +// using the wxWindow created in wxApp::OnInit() as main window is acceptable, +// but if we want to create the initial window in MFC, we need this class in +// order to override InitMainWnd() in it. +class SampleMFCWinApp : public wxMFCWinApp { - public: - CDummyWindow(HWND hWnd); - ~CDummyWindow(void); +protected: + BOOL InitMainWnd() wxOVERRIDE + { + // Demonstrate creation of an initial MFC main window. + m_pMainWnd = new CMainWindow(); + m_pMainWnd->ShowWindow( m_nCmdShow ); + m_pMainWnd->UpdateWindow(); + + return TRUE; + } }; -///////////////////////////////////////////////////////////////////////////// +#else // !START_WITH_MFC_WINDOW -// CTheApp: -// -class CTheApp : public CWinApp -{ -public: - BOOL InitInstance(); - int ExitInstance(); +typedef wxMFCWinApp SampleMFCWinApp; - // Override this to provide wxWidgets message loop - // compatibility - BOOL PreTranslateMessage(MSG *msg); - BOOL OnIdle(LONG lCount); -}; - -///////////////////////////////////////////////////////////////////////////// +#endif // START_WITH_MFC_WINDOW/!START_WITH_MFC_WINDOW #endif // __MFCTEST_H__ From 9dd83933f3b870cbe939a49438d51586afa1659d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 6 Dec 2017 18:25:20 +0100 Subject: [PATCH 006/916] Remove redundant sections from wx/msw/winundef.h Somehow we redefined GetFirstChild() and GetNextSibling() twice in a row for the last ~18 years. --- include/wx/msw/winundef.h | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/include/wx/msw/winundef.h b/include/wx/msw/winundef.h index b363e7e94e..b5722ff98d 100644 --- a/include/wx/msw/winundef.h +++ b/include/wx/msw/winundef.h @@ -420,26 +420,6 @@ // For ming and cygwin -// GetFirstChild -#ifdef GetFirstChild - #undef GetFirstChild - inline HWND GetFirstChild(HWND h) - { - return GetTopWindow(h); - } -#endif - - -// GetNextSibling -#ifdef GetNextSibling - #undef GetNextSibling - inline HWND GetNextSibling(HWND h) - { - return GetWindow(h, GW_HWNDNEXT); - } -#endif - - #ifdef Yield #undef Yield #endif From 042d922e88da988875d043b837dc548eb4b930b0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 8 Dec 2017 16:40:42 +0100 Subject: [PATCH 007/916] Allow predefining wxUSE_UNICODE_WINDOWS_H in wxMSW builds This can be used in order to use normal Unicode build of wxWidgets with an application that needs to use ANSI versions of Win32 functions, e.g. because it doesn't compile with UNICODE defined. --- include/wx/msw/winundef.h | 46 +++++++++++++++++++++++---------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/include/wx/msw/winundef.h b/include/wx/msw/winundef.h index b5722ff98d..aedf4340d3 100644 --- a/include/wx/msw/winundef.h +++ b/include/wx/msw/winundef.h @@ -15,6 +15,14 @@ #define _WX_WINUNDEF_H_ */ +#ifndef wxUSE_UNICODE_WINDOWS_H + #ifdef _UNICODE + #define wxUSE_UNICODE_WINDOWS_H 1 + #else + #define wxUSE_UNICODE_WINDOWS_H 0 + #endif +#endif + // ---------------------------------------------------------------------------- // windows.h #defines the following identifiers which are also used in wxWin so // we replace these symbols with the corresponding inline functions and @@ -34,7 +42,7 @@ HWND hwndParent, DLGPROC pDlgProc) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return CreateDialogW(hInstance, pTemplate, hwndParent, pDlgProc); #else return CreateDialogA(hInstance, pTemplate, hwndParent, pDlgProc); @@ -62,7 +70,7 @@ DWORD family, LPCTSTR facename) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return CreateFontW(height, width, escapement, orientation, weight, italic, underline, strikeout, charset, outprecision, clipprecision, quality, @@ -90,7 +98,7 @@ HINSTANCE hInstance, LPVOID lpParam) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return CreateWindowW(lpClassName, lpWndClass, dwStyle, x, y, w, h, hWndParent, hMenu, hInstance, lpParam); #else @@ -107,7 +115,7 @@ inline HMENU LoadMenu(HINSTANCE instance, LPCTSTR name) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return LoadMenuW(instance, name); #else return LoadMenuA(instance, name); @@ -122,7 +130,7 @@ inline HWND APIENTRY FindText(LPFINDREPLACE lpfindreplace) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return FindTextW(lpfindreplace); #else return FindTextA(lpfindreplace); @@ -136,7 +144,7 @@ #undef GetCharWidth inline BOOL GetCharWidth(HDC dc, UINT first, UINT last, LPINT buffer) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return GetCharWidthW(dc, first, last, buffer); #else return GetCharWidthA(dc, first, last, buffer); @@ -148,7 +156,7 @@ #ifdef FindWindow #undef FindWindow - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline HWND FindWindow(LPCWSTR classname, LPCWSTR windowname) { return FindWindowW(classname, windowname); @@ -165,7 +173,7 @@ #ifdef PlaySound #undef PlaySound - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline BOOL PlaySound(LPCWSTR pszSound, HMODULE hMod, DWORD fdwSound) { return PlaySoundW(pszSound, hMod, fdwSound); @@ -182,7 +190,7 @@ #ifdef GetClassName #undef GetClassName - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline int GetClassName(HWND h, LPWSTR classname, int maxcount) { return GetClassNameW(h, classname, maxcount); @@ -199,7 +207,7 @@ #ifdef GetClassInfo #undef GetClassInfo - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline BOOL GetClassInfo(HINSTANCE h, LPCWSTR name, LPWNDCLASSW winclass) { return GetClassInfoW(h, name, winclass); @@ -216,7 +224,7 @@ #ifdef LoadAccelerators #undef LoadAccelerators - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline HACCEL LoadAccelerators(HINSTANCE h, LPCWSTR name) { return LoadAcceleratorsW(h, name); @@ -233,7 +241,7 @@ #ifdef DrawText #undef DrawText - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline int DrawText(HDC h, LPCWSTR str, int count, LPRECT rect, UINT format) { return DrawTextW(h, str, count, rect, format); @@ -252,7 +260,7 @@ #ifdef StartDoc #undef StartDoc - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline int StartDoc(HDC h, CONST DOCINFOW* info) { return StartDocW(h, (DOCINFOW*) info); @@ -271,7 +279,7 @@ #undef GetObject inline int GetObject(HGDIOBJ h, int i, LPVOID buffer) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return GetObjectW(h, i, buffer); #else return GetObjectA(h, i, buffer); @@ -285,7 +293,7 @@ #undef GetMessage inline int GetMessage(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return GetMessageW(lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax); #else return GetMessageA(lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax); @@ -298,7 +306,7 @@ #undef LoadIcon inline HICON LoadIcon(HINSTANCE hInstance, LPCTSTR lpIconName) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return LoadIconW(hInstance, lpIconName); #else // ANSI return LoadIconA(hInstance, lpIconName); @@ -311,7 +319,7 @@ #undef LoadBitmap inline HBITMAP LoadBitmap(HINSTANCE hInstance, LPCTSTR lpBitmapName) { - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H return LoadBitmapW(hInstance, lpBitmapName); #else // ANSI return LoadBitmapA(hInstance, lpBitmapName); @@ -323,7 +331,7 @@ #ifdef LoadLibrary #undef LoadLibrary - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline HINSTANCE LoadLibrary(LPCWSTR lpLibFileName) { return LoadLibraryW(lpLibFileName); @@ -339,7 +347,7 @@ // FindResource #ifdef FindResource #undef FindResource - #ifdef _UNICODE + #if wxUSE_UNICODE_WINDOWS_H inline HRSRC FindResource(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType) { return FindResourceW(hModule, lpName, lpType); From 3960e630f18c39b4e4a1be62593c9cd4fa6c5e5d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 8 Dec 2017 16:42:34 +0100 Subject: [PATCH 008/916] Make it possible to use an existing base class for wxMFCWinApp When porting an existing MFC codebase to wxWidgets, it may be useful to continue using the existing CWinApp-derived application class, so allow deriving wxMFCApp from it instead of always deriving it from CWinApp itself. --- include/wx/msw/mfc.h | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h index 49974bb9ea..894918f194 100644 --- a/include/wx/msw/mfc.h +++ b/include/wx/msw/mfc.h @@ -42,12 +42,17 @@ public: // MFC application class forwarding everything to wxApp // ---------------------------------------------------------------------------- -class wxMFCWinApp : public CWinApp +// The template parameter here is an existing class deriving from CWinApp or, +// if there is no such class, just CWinApp itself. +template +class wxMFCApp : public T { public: + typedef T BaseApp; + BOOL InitInstance() wxOVERRIDE { - if ( !CWinApp::InitInstance() ) + if ( !BaseApp::InitInstance() ) return FALSE; if ( !wxEntryStart(m_hInstance) ) @@ -71,7 +76,7 @@ public: wxEntryCleanup(); - return CWinApp::ExitInstance(); + return BaseApp::ExitInstance(); } // Override this to provide wxWidgets message loop compatibility @@ -82,12 +87,12 @@ public: if ( evtLoop && evtLoop->PreProcessMessage(msg) ) return TRUE; - return CWinApp::PreTranslateMessage(msg); + return BaseApp::PreTranslateMessage(msg); } BOOL OnIdle(LONG lCount) wxOVERRIDE { - BOOL moreIdle = CWinApp::OnIdle(lCount); + BOOL moreIdle = BaseApp::OnIdle(lCount); if ( wxTheApp && wxTheApp->ProcessIdle() ) moreIdle = TRUE; @@ -119,6 +124,8 @@ protected: } }; +typedef wxMFCApp wxMFCWinApp; + // ---------------------------------------------------------------------------- // wxWidgets application class to be used in MFC applications // ---------------------------------------------------------------------------- From 636219bd355bd64a5b1507e4d37e033fe50969f3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 11 Dec 2017 22:06:13 +0100 Subject: [PATCH 009/916] Always pre-process messages for wx windows in mixed wx/MFC apps Still use the active event loop if there is one, just in case it customizes messages pre-processing, but fall back on the standard pre-processing code even if there is no active wx event loop and we're only running the MFC one, as without doing this there are just too many things that don't work (e.g. menu accelerators didn't work at all in mixed wx/MFC applications previously). --- include/wx/msw/mfc.h | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h index 894918f194..f3fc23e44d 100644 --- a/include/wx/msw/mfc.h +++ b/include/wx/msw/mfc.h @@ -79,12 +79,19 @@ public: return BaseApp::ExitInstance(); } - // Override this to provide wxWidgets message loop compatibility + // Override this to provide messages pre-processing for wxWidgets windows. BOOL PreTranslateMessage(MSG *msg) wxOVERRIDE { - wxEventLoop * const - evtLoop = static_cast(wxEventLoop::GetActive()); - if ( evtLoop && evtLoop->PreProcessMessage(msg) ) + // Use the current event loop if there is one, or just fall back to the + // standard one otherwise, but make sure we pre-process messages in any + // case as otherwise many things would break (e.g. keyboard + // accelerators). + wxGUIEventLoop* + evtLoop = static_cast(wxEventLoop::GetActive()); + wxGUIEventLoop evtLoopStd; + if ( !evtLoop ) + evtLoop = &evtLoopStd; + if ( evtLoop->PreProcessMessage(msg) ) return TRUE; return BaseApp::PreTranslateMessage(msg); From 44c31d2700874ece57bcb7dcd3b7a56f1c5b820a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 11 Dec 2017 23:07:33 +0100 Subject: [PATCH 010/916] Destroy MFC main window when its wx counterpart is destroyed This avoids using m_pMainWnd after its HWND becomes invalid, as this resulted in assert failures from CWnd::WalkPreTranslateTree() called with this HWND as its hWndStop argument from PreTranslateMessage() which was used to pre-translate a WM_NULL message the application sometimes received while closing down. --- include/wx/msw/mfc.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h index f3fc23e44d..14b1a1d5d4 100644 --- a/include/wx/msw/mfc.h +++ b/include/wx/msw/mfc.h @@ -122,6 +122,11 @@ protected: // running. m_pMainWnd = new wxMFCWnd(w); + // We also need to reset m_pMainWnd when this window will be destroyed + // to prevent MFC from using an invalid HWND, which is probably not + // fatal but can result in at least asserts failures. + w->Bind(wxEVT_DESTROY, &wxMFCApp::OnMainWindowDestroyed, this); + // And we need to let wxWidgets know that it should exit the // application when this window is closed, as OnRun(), which does this // by default, won't be called when using MFC main message loop. @@ -129,6 +134,15 @@ protected: return TRUE; } + +private: + void OnMainWindowDestroyed(wxWindowDestroyEvent& event) + { + event.Skip(); + + delete m_pMainWnd; + m_pMainWnd = NULL; + } }; typedef wxMFCApp wxMFCWinApp; From 6c7e5a92008e731ec555f5884dd3009373105e95 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 12 Dec 2017 18:46:29 +0100 Subject: [PATCH 011/916] Allow attaching a wxWindow to CWnd later in wxMFCWnd When using two-step creation, as when loading from resources, for example, it can be convenient to create wxMFCWnd as part of the (parent) wxWindow object, but only attach it to the real HWND later, once it becomes available. --- include/wx/msw/mfc.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h index 14b1a1d5d4..8cab2ee37f 100644 --- a/include/wx/msw/mfc.h +++ b/include/wx/msw/mfc.h @@ -26,9 +26,20 @@ class wxMFCWnd : public CWnd { public: + // If default ctor is used, Attach() must be called later. + wxMFCWnd() + { + } + + // Combines default ctor and Attach(). explicit wxMFCWnd(wxWindow* w) { - Attach(w->GetHWND()); + Attach(w); + } + + void Attach(wxWindow* w) + { + CWnd::Attach(w->GetHWND()); } ~wxMFCWnd() From 51ed404ca5ba76097e9f3dfc6f407456859dd7db Mon Sep 17 00:00:00 2001 From: Erik Sperling Johansen Date: Thu, 23 Mar 2017 23:48:09 +0800 Subject: [PATCH 012/916] Optimize sorting items in wxDataViewCtrl Limit node sorting to a minimum, by making all sorts happen on demand and utilizing already sorted child lists to do quicker insertions. --- src/generic/datavgen.cpp | 382 +++++++++++++++++++++++++++++---------- 1 file changed, 291 insertions(+), 91 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 9cc10f4e0e..f62622acaa 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -91,9 +91,6 @@ static const int EXPANDER_OFFSET = 1; // of the special values in this enum: enum { - // Sort when we're thawed later. - SortColumn_OnThaw = -3, - // Don't sort at all. SortColumn_None = -2, @@ -541,6 +538,8 @@ public: { m_branchData->open = !m_branchData->open; ChangeSubTreeCount(+sum); + // Sort the children if needed + Resort(); } } @@ -588,6 +587,7 @@ public: } void Resort(); + void MoveUpdatedChild(wxDataViewTreeNode * childNode); private: wxDataViewMainWindow * const m_window; @@ -602,7 +602,9 @@ private: { BranchNodeData() : open(false), - subTreeCount(0) + subTreeCount(0), + sortColumn(SortColumn_None), + sortAscending(false) { } @@ -613,6 +615,12 @@ private: // Is the branch node currently open (expanded)? bool open; + // By which column are the children currently sorted + int sortColumn; + + // Are the children currently sorted ascending or descending + bool sortAscending; + // Total count of expanded (i.e. visible with the help of some // scrolling) items in the subtree, but excluding this node. I.e. it is // 0 for leaves and is the number of rows the subtree occupies for @@ -660,19 +668,6 @@ public: UpdateDisplay(); } - // Override the base class method to resort if needed, i.e. if - // SortPrepare() was called -- and ignored -- while we were frozen. - virtual void DoThaw() wxOVERRIDE - { - if ( m_sortColumn == SortColumn_OnThaw ) - { - Resort(); - m_sortColumn = SortColumn_None; - } - - wxWindow::DoThaw(); - } - void SortPrepare() { wxDataViewModel* model = GetModel(); @@ -682,11 +677,7 @@ public: { if (model->HasDefaultCompare()) { - // See below for the explanation of IsFrozen() test. - if ( IsFrozen() ) - m_sortColumn = SortColumn_OnThaw; - else - m_sortColumn = SortColumn_Default; + m_sortColumn = SortColumn_Default; } else m_sortColumn = SortColumn_None; @@ -695,15 +686,6 @@ public: return; } - // Avoid sorting while the window is frozen, this allows to quickly add - // many items without resorting after each addition and only resort - // them all at once when the window is finally thawed, see above. - if ( IsFrozen() ) - { - m_sortColumn = SortColumn_OnThaw; - return; - } - m_sortColumn = col->GetModelColumn(); m_sortAscending = col->IsSortOrderAscending(); } @@ -1637,39 +1619,207 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) if (!m_branchData) m_branchData = new BranchNodeData; - m_branchData->children.Insert(node, index); + g_column = m_window->GetSortColumn(); + g_model = m_window->GetModel(); + g_asending = m_window->IsAscendingSort(); - // TODO: insert into sorted array directly in O(log n) instead of resorting in O(n log n) - if ((g_column = m_window->GetSortColumn()) >= -1) + // Flag indicating whether we should retain existing sorted list when + // inserting the child node. + bool insertSorted = false; + + if ( g_column == SortColumn_None ) { - g_model = m_window->GetModel(); - g_asending = m_window->IsAscendingSort(); + // We should insert assuming an unsorted list. This will cause the + // child list to lose the current sort order, if any. + m_branchData->sortColumn = SortColumn_None; + m_branchData->sortAscending = true; + } + else if ( m_branchData->open ) + { + // The child list will always be correctly sorted for open nodes. + // The sole exception is the root node, on the first child + // addition. + if ( ( m_parent == NULL ) && m_branchData->children.IsEmpty()) + { + m_branchData->sortColumn = g_column; + m_branchData->sortAscending = g_asending; + } + else + { + wxASSERT(m_branchData->sortColumn == g_column); + wxASSERT(m_branchData->sortAscending == g_asending); + } - m_branchData->children.Sort(&wxGenericTreeModelNodeCmp); + // We retain the sorted child list + insertSorted = true; + } + else if ( m_branchData->children.IsEmpty() ) + { + // We're inserting the first child of a closed node. We can choose + // whether to consider this empty child list sorted or unsorted. + // By choosing unsorted, we postpone comparisons until the parent + // node is opened in the view, which may be never. + m_branchData->sortColumn = SortColumn_None; + m_branchData->sortAscending = true; + } + else if ( (m_branchData->sortColumn == g_column) && (m_branchData->sortAscending == g_asending) ) + { + // The children are already sorted by the correct criteria. This + // means the node has at some point in time been open. Even though + // the node is closed now, we insert sorted to avoid a later resort. + insertSorted = true; + } + else + { + // The children aren't sorted by the correct criteria, so we just + // insert unsorted. + m_branchData->sortColumn = SortColumn_None; + m_branchData->sortAscending = true; + } + + + if ( insertSorted ) + { + if ( m_branchData->children.IsEmpty() ) + { + m_branchData->children.Insert(node, 0); + } + else + { + // Insert directly into sorted array + int lo = 0, hi = m_branchData->children.size(); + while ( lo < hi ) + { + int mid = lo + (hi - lo) / 2; + int r = wxGenericTreeModelNodeCmp(&node, &m_branchData->children[mid]); + if ( r < 0 ) + hi = mid; + else if ( r > 0 ) + lo = mid + 1; + else + lo = hi = mid; + } + m_branchData->children.Insert(node, lo); + + } + } + else + { + m_branchData->children.Insert(node, index); } } + void wxDataViewTreeNode::Resort() { if (!m_branchData) return; - if ((g_column = m_window->GetSortColumn()) >= -1) - { - wxDataViewTreeNodes& nodes = m_branchData->children; + // No reason to sort a closed node. + if ( !m_branchData->open ) + return; + g_column = m_window->GetSortColumn(); + if ( g_column != SortColumn_None ) + { g_model = m_window->GetModel(); g_asending = m_window->IsAscendingSort(); - nodes.Sort(&wxGenericTreeModelNodeCmp); - int len = nodes.GetCount(); - for (int i = 0; i < len; i++) + wxDataViewTreeNodes& nodes = m_branchData->children; + + // Only sort the children if they aren't already sorted by the wanted criteria + if ( (g_column != m_branchData->sortColumn) || (g_asending != m_branchData->sortAscending) ) { - if (nodes[i]->HasChildren()) + nodes.Sort(&wxGenericTreeModelNodeCmp); + m_branchData->sortColumn = g_column; + m_branchData->sortAscending = g_asending; + } + + // There may be open child nodes that also need a resort. + int len = nodes.GetCount(); + for ( int i = 0; i < len; i++ ) + { + if ( nodes[i]->HasChildren() ) nodes[i]->Resort(); } } } + +void wxDataViewTreeNode::MoveUpdatedChild(wxDataViewTreeNode * childNode) +{ + // The childNode has changed, and may need to be moved to another location + // in the sorted child list. + + if ( !m_branchData ) + return; + if ( !m_branchData->open ) + return; + if ( m_branchData->sortColumn == SortColumn_None ) + return; + + g_column = m_window->GetSortColumn(); + g_model = m_window->GetModel(); + g_asending = m_window->IsAscendingSort(); + + wxASSERT(g_column == m_branchData->sortColumn); + wxASSERT(g_asending == m_branchData->sortAscending); + + wxDataViewTreeNodes& nodes = m_branchData->children; + + // First find the node in the current child list + int hi = nodes.size(); + int oldLocation = -1; + for ( int index = 0; index < hi; ++index ) + { + if ( nodes[index] == childNode ) + { + oldLocation = index; + break; + } + } + wxASSERT(oldLocation >= 0); + + if ( oldLocation < 0 ) + return; + + // Check if we actually need to move the node. + bool locationChanged = false; + + if ( oldLocation > 0 ) + { + if (wxGenericTreeModelNodeCmp(&nodes[oldLocation - 1], &childNode) > 0 ) + locationChanged = true; + } + if ( !locationChanged && (oldLocation + 1 < static_cast(nodes.size())) ) + { + if ( wxGenericTreeModelNodeCmp(&childNode, &nodes[oldLocation + 1]) > 0 ) + locationChanged = true; + } + + + if ( locationChanged ) + { + // Remove and reinsert the node in the child list + nodes.RemoveAt(oldLocation); + hi = nodes.size(); + int lo = 0; + while ( lo < hi ) + { + int mid = lo + (hi - lo) / 2; + int r = wxGenericTreeModelNodeCmp(&childNode, &m_branchData->children[mid]); + if ( r < 0 ) + hi = mid; + else if ( r > 0 ) + lo = mid + 1; + else + lo = hi = mid; + } + nodes.Insert(childNode, lo); + } + +} + + //----------------------------------------------------------------------------- // wxDataViewMainWindow //----------------------------------------------------------------------------- @@ -2536,60 +2686,70 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData if ( !parentNode ) return false; - wxDataViewItemArray modelSiblings; - GetModel()->GetChildren(parent, modelSiblings); - const int modelSiblingsSize = modelSiblings.size(); - - int posInModel = modelSiblings.Index(item, /*fromEnd=*/true); - wxCHECK_MSG( posInModel != wxNOT_FOUND, false, "adding non-existent item?" ); - wxDataViewTreeNode *itemNode = new wxDataViewTreeNode(this, parentNode, item); itemNode->SetHasChildren(GetModel()->IsContainer(item)); - parentNode->SetHasChildren(true); - const wxDataViewTreeNodes& nodeSiblings = parentNode->GetChildNodes(); - const int nodeSiblingsSize = nodeSiblings.size(); - - int nodePos = 0; - - if ( posInModel == modelSiblingsSize - 1 ) + if ( m_sortColumn == SortColumn_None ) { - nodePos = nodeSiblingsSize; - } - else if ( modelSiblingsSize == nodeSiblingsSize + 1 ) - { - // This is the simple case when our node tree already matches the - // model and only this one item is missing. - nodePos = posInModel; + // There's no sorting, so we need to select an insertion position + + wxDataViewItemArray modelSiblings; + GetModel()->GetChildren(parent, modelSiblings); + const int modelSiblingsSize = modelSiblings.size(); + + int posInModel = modelSiblings.Index(item, /*fromEnd=*/true); + wxCHECK_MSG(posInModel != wxNOT_FOUND, false, "adding non-existent item?"); + + + const wxDataViewTreeNodes& nodeSiblings = parentNode->GetChildNodes(); + const int nodeSiblingsSize = nodeSiblings.size(); + + int nodePos = 0; + + if ( posInModel == modelSiblingsSize - 1 ) + { + nodePos = nodeSiblingsSize; + } + else if ( modelSiblingsSize == nodeSiblingsSize + 1 ) + { + // This is the simple case when our node tree already matches the + // model and only this one item is missing. + nodePos = posInModel; + } + else + { + // It's possible that a larger discrepancy between the model and + // our realization exists. This can happen e.g. when adding a bunch + // of items to the model and then calling ItemsAdded() just once + // afterwards. In this case, we must find the right position by + // looking at sibling items. + + // append to the end if we won't find a better position: + nodePos = nodeSiblingsSize; + + for ( int nextItemPos = posInModel + 1; + nextItemPos < modelSiblingsSize; + nextItemPos++ ) + { + int nextNodePos = parentNode->FindChildByItem(modelSiblings[nextItemPos]); + if ( nextNodePos != wxNOT_FOUND ) + { + nodePos = nextNodePos; + break; + } + } + } + parentNode->ChangeSubTreeCount(+1); + parentNode->InsertChild(itemNode, nodePos); } else { - // It's possible that a larger discrepancy between the model and - // our realization exists. This can happen e.g. when adding a bunch - // of items to the model and then calling ItemsAdded() just once - // afterwards. In this case, we must find the right position by - // looking at sibling items. - - // append to the end if we won't find a better position: - nodePos = nodeSiblingsSize; - - for ( int nextItemPos = posInModel + 1; - nextItemPos < modelSiblingsSize; - nextItemPos++ ) - { - int nextNodePos = parentNode->FindChildByItem(modelSiblings[nextItemPos]); - if ( nextNodePos != wxNOT_FOUND ) - { - nodePos = nextNodePos; - break; - } - } + // Node list is or will be sorted, so InsertChild do not need insertion position + parentNode->ChangeSubTreeCount(+1); + parentNode->InsertChild(itemNode, 0); } - parentNode->ChangeSubTreeCount(+1); - parentNode->InsertChild(itemNode, nodePos); - InvalidateCount(); } @@ -2716,7 +2876,16 @@ bool wxDataViewMainWindow::ItemDeleted(const wxDataViewItem& parent, bool wxDataViewMainWindow::ItemChanged(const wxDataViewItem & item) { SortPrepare(); - GetModel()->Resort(); + + // Instead of resorting the parent, just move this specific child node. + wxDataViewItem parentItem = GetModel()->GetParent(item); + wxDataViewTreeNode * parentNode = FindNode(parentItem); + if ( parentNode ) + { + wxDataViewTreeNode * node = FindNode(item); + wxASSERT(node); + parentNode->MoveUpdatedChild(node); + } GetOwner()->InvalidateColBestWidths(); @@ -2724,6 +2893,8 @@ bool wxDataViewMainWindow::ItemChanged(const wxDataViewItem & item) wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, item); m_owner->ProcessWindowEvent(le); + // Make sure the change is actually shown right away + UpdateDisplay(); return true; } @@ -2743,7 +2914,30 @@ bool wxDataViewMainWindow::ValueChanged( const wxDataViewItem & item, unsigned i return true; */ SortPrepare(); - GetModel()->Resort(); + + // Instead of resorting the parent, just move this specific child node. + + // It is possible to skip the call to MoveUpdatedChild if the + // modified column is not the sort column, but in real world + // applications it's fully possible and likely that custom + // compare uses not only the selected model column but also + // falls back to other values for comparison. To ensure + // consistency it is better to treat a value change as if it + // was an item change. + + // Alternatively, one could require the user to use ItemChanged + // rather than ValueChanged when the changed value may affect + // sorting, and add a check for model_column vs sort column + // here. + + wxDataViewItem parentItem = GetModel()->GetParent(item); + wxDataViewTreeNode * parentNode = FindNode(parentItem); + if ( parentNode ) + { + wxDataViewTreeNode * node = FindNode(item); + wxASSERT(node); + parentNode->MoveUpdatedChild(node); + } GetOwner()->InvalidateColBestWidth(view_column); @@ -2752,6 +2946,9 @@ bool wxDataViewMainWindow::ValueChanged( const wxDataViewItem & item, unsigned i wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, column, item); m_owner->ProcessWindowEvent(le); + // Make sure the change is actually shown right away + UpdateDisplay(); + return true; } @@ -3390,12 +3587,15 @@ void wxDataViewMainWindow::Expand( unsigned int row ) return; } + + // ToggleOpen needs sorting to be prepared, in case the child list + // isn't sorted correctly. + SortPrepare(); node->ToggleOpen(); // build the children of current node if( node->GetChildNodes().empty() ) { - SortPrepare(); ::BuildTreeHelper(this, GetModel(), node->GetItem(), node); } From eef994016a204df7d136ea4f5e9c43f444529871 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 16 Dec 2017 17:30:11 +0100 Subject: [PATCH 013/916] Reorder BranchNodeData struct members to make it more compact By simply putting two bool fields consecutively to each other, we reduce the number of bytes of padding used from 6 to 2 in a typical 32 bit build, saving 4 (or 8, in 64 bits) bytes per branch item. --- src/generic/datavgen.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index f62622acaa..b4a993f888 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -615,12 +615,12 @@ private: // Is the branch node currently open (expanded)? bool open; - // By which column are the children currently sorted - int sortColumn; - // Are the children currently sorted ascending or descending bool sortAscending; + // By which column are the children currently sorted + int sortColumn; + // Total count of expanded (i.e. visible with the help of some // scrolling) items in the subtree, but excluding this node. I.e. it is // 0 for leaves and is the number of rows the subtree occupies for From 8d9f0e6fef89100f66888ff7c09591e178504331 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 16 Dec 2017 17:32:53 +0100 Subject: [PATCH 014/916] Initialize BranchNodeData members in declaration order Doing it out of order is harmless here, but would result gcc -Wreorder warnings. --- src/generic/datavgen.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index b4a993f888..aaa097ca68 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -602,9 +602,9 @@ private: { BranchNodeData() : open(false), - subTreeCount(0), + sortAscending(false), sortColumn(SortColumn_None), - sortAscending(false) + subTreeCount(0) { } From 0268c062c0d14d9028908e5d9b10f45ee26d29ae Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 17:23:42 +0100 Subject: [PATCH 015/916] Minor improvements to wxDataViewCtrl sorting optimization commit Simplify some code and make it more clear, notably by changing conditionals to be easier to follow. Also avoid repeating the same functions calls (like SortPrepare() or UpdateDisplay()) by folding them into the functions that actually need them to be done. --- src/generic/datavgen.cpp | 229 +++++++++++++++++++-------------------- 1 file changed, 111 insertions(+), 118 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index aaa097ca68..5408794848 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -587,9 +587,23 @@ public: } void Resort(); - void MoveUpdatedChild(wxDataViewTreeNode * childNode); + + // Should be called after changing the item value to update its position in + // the control if necessary. + void PutInSortOrder() + { + if ( m_parent ) + m_parent->PutChildInSortOrder(this); + } private: + // Called by the child after it has been updated to put it in the right + // place among its siblings, depending on the sort order. + // + // The argument must be non-null, but is passed as a pointer as it's + // inserted into m_branchData->children. + void PutChildInSortOrder(wxDataViewTreeNode* childNode); + wxDataViewMainWindow * const m_window; wxDataViewTreeNode *m_parent; @@ -673,21 +687,20 @@ public: wxDataViewModel* model = GetModel(); wxDataViewColumn* col = GetOwner()->GetSortingColumn(); - if( !col ) + if ( col ) + { + m_sortColumn = col->GetModelColumn(); + m_sortAscending = col->IsSortOrderAscending(); + } + else { if (model->HasDefaultCompare()) - { m_sortColumn = SortColumn_Default; - } else m_sortColumn = SortColumn_None; m_sortAscending = true; - return; } - - m_sortColumn = col->GetModelColumn(); - m_sortAscending = col->IsSortOrderAscending(); } void SetOwner( wxDataViewCtrl* owner ) { m_owner = owner; } @@ -1619,6 +1632,8 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) if (!m_branchData) m_branchData = new BranchNodeData; + m_window->SortPrepare(); + g_column = m_window->GetSortColumn(); g_model = m_window->GetModel(); g_asending = m_window->IsAscendingSort(); @@ -1636,21 +1651,23 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) } else if ( m_branchData->open ) { - // The child list will always be correctly sorted for open nodes. - // The sole exception is the root node, on the first child - // addition. - if ( ( m_parent == NULL ) && m_branchData->children.IsEmpty()) + // For open branches, children should be already sorted, with one + // possible exception that we check for here: + if ( m_branchData->sortColumn != g_column || + m_branchData->sortAscending != g_asending ) { + // This can happen for the root node, on the first child addition, + // in which case the children are nevertheless sorted (because + // there is only one of them), but we need to set the correct sort + // order. + wxASSERT_MSG( !m_parent && m_branchData->children.IsEmpty(), + "Logic error in wxDVC sorting code" ); + m_branchData->sortColumn = g_column; m_branchData->sortAscending = g_asending; } - else - { - wxASSERT(m_branchData->sortColumn == g_column); - wxASSERT(m_branchData->sortAscending == g_asending); - } - // We retain the sorted child list + // We can use fast insertion. insertSorted = true; } else if ( m_branchData->children.IsEmpty() ) @@ -1662,11 +1679,13 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) m_branchData->sortColumn = SortColumn_None; m_branchData->sortAscending = true; } - else if ( (m_branchData->sortColumn == g_column) && (m_branchData->sortAscending == g_asending) ) + else if ( (m_branchData->sortColumn == g_column) && + (m_branchData->sortAscending == g_asending) ) { - // The children are already sorted by the correct criteria. This - // means the node has at some point in time been open. Even though - // the node is closed now, we insert sorted to avoid a later resort. + // The children are already sorted by the correct criteria (because + // the node must have been opened in the same time in the past). Even + // though it is closed now, we still insert in sort order to avoid a + // later resort. insertSorted = true; } else @@ -1680,28 +1699,20 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) if ( insertSorted ) { - if ( m_branchData->children.IsEmpty() ) + // Use binary search to find the correct position to insert at. + int lo = 0, hi = m_branchData->children.size(); + while ( lo < hi ) { - m_branchData->children.Insert(node, 0); - } - else - { - // Insert directly into sorted array - int lo = 0, hi = m_branchData->children.size(); - while ( lo < hi ) - { - int mid = lo + (hi - lo) / 2; - int r = wxGenericTreeModelNodeCmp(&node, &m_branchData->children[mid]); - if ( r < 0 ) - hi = mid; - else if ( r > 0 ) - lo = mid + 1; - else - lo = hi = mid; - } - m_branchData->children.Insert(node, lo); - + int mid = lo + (hi - lo) / 2; + int r = wxGenericTreeModelNodeCmp(&node, &m_branchData->children[mid]); + if ( r < 0 ) + hi = mid; + else if ( r > 0 ) + lo = mid + 1; + else + lo = hi = mid; } + m_branchData->children.Insert(node, lo); } else { @@ -1726,8 +1737,10 @@ void wxDataViewTreeNode::Resort() g_asending = m_window->IsAscendingSort(); wxDataViewTreeNodes& nodes = m_branchData->children; - // Only sort the children if they aren't already sorted by the wanted criteria - if ( (g_column != m_branchData->sortColumn) || (g_asending != m_branchData->sortAscending) ) + // Only sort the children if they aren't already sorted by the wanted + // criteria. + if ( (g_column != m_branchData->sortColumn) || + (g_asending != m_branchData->sortAscending) ) { nodes.Sort(&wxGenericTreeModelNodeCmp); m_branchData->sortColumn = g_column; @@ -1745,7 +1758,7 @@ void wxDataViewTreeNode::Resort() } -void wxDataViewTreeNode::MoveUpdatedChild(wxDataViewTreeNode * childNode) +void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) { // The childNode has changed, and may need to be moved to another location // in the sorted child list. @@ -1757,6 +1770,15 @@ void wxDataViewTreeNode::MoveUpdatedChild(wxDataViewTreeNode * childNode) if ( m_branchData->sortColumn == SortColumn_None ) return; + wxDataViewTreeNodes& nodes = m_branchData->children; + + // This is more than an optimization, the code below assumes that 1 is a + // valid index. + if ( nodes.size() == 1 ) + return; + + m_window->SortPrepare(); + g_column = m_window->GetSortColumn(); g_model = m_window->GetModel(); g_asending = m_window->IsAscendingSort(); @@ -1764,11 +1786,9 @@ void wxDataViewTreeNode::MoveUpdatedChild(wxDataViewTreeNode * childNode) wxASSERT(g_column == m_branchData->sortColumn); wxASSERT(g_asending == m_branchData->sortAscending); - wxDataViewTreeNodes& nodes = m_branchData->children; - // First find the node in the current child list int hi = nodes.size(); - int oldLocation = -1; + int oldLocation = wxNOT_FOUND; for ( int index = 0; index < hi; ++index ) { if ( nodes[index] == childNode ) @@ -1777,46 +1797,47 @@ void wxDataViewTreeNode::MoveUpdatedChild(wxDataViewTreeNode * childNode) break; } } - wxASSERT(oldLocation >= 0); - - if ( oldLocation < 0 ) - return; + wxCHECK_RET( oldLocation >= 0, "not our child?" ); // Check if we actually need to move the node. bool locationChanged = false; - if ( oldLocation > 0 ) + if ( oldLocation == 0 ) { - if (wxGenericTreeModelNodeCmp(&nodes[oldLocation - 1], &childNode) > 0 ) + // Compare with the next item (as we return early in the case of only a + // single child, we know that there is one) to check if the item is now + // out of order. + if ( wxGenericTreeModelNodeCmp(&childNode, &nodes[1]) > 0 ) locationChanged = true; } - if ( !locationChanged && (oldLocation + 1 < static_cast(nodes.size())) ) + else // Compare with the previous item. { - if ( wxGenericTreeModelNodeCmp(&childNode, &nodes[oldLocation + 1]) > 0 ) + if ( wxGenericTreeModelNodeCmp(&nodes[oldLocation - 1], &childNode) > 0 ) locationChanged = true; } + if ( !locationChanged ) + return; - if ( locationChanged ) + // Remove and reinsert the node in the child list + nodes.RemoveAt(oldLocation); + hi = nodes.size(); + int lo = 0; + while ( lo < hi ) { - // Remove and reinsert the node in the child list - nodes.RemoveAt(oldLocation); - hi = nodes.size(); - int lo = 0; - while ( lo < hi ) - { - int mid = lo + (hi - lo) / 2; - int r = wxGenericTreeModelNodeCmp(&childNode, &m_branchData->children[mid]); - if ( r < 0 ) - hi = mid; - else if ( r > 0 ) - lo = mid + 1; - else - lo = hi = mid; - } - nodes.Insert(childNode, lo); + int mid = lo + (hi - lo) / 2; + int r = wxGenericTreeModelNodeCmp(&childNode, &m_branchData->children[mid]); + if ( r < 0 ) + hi = mid; + else if ( r > 0 ) + lo = mid + 1; + else + lo = hi = mid; } + nodes.Insert(childNode, lo); + // Make sure the change is actually shown right away + m_window->UpdateDisplay(); } @@ -2679,8 +2700,6 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData } else { - SortPrepare(); - wxDataViewTreeNode *parentNode = FindNode(parent); if ( !parentNode ) @@ -2875,17 +2894,10 @@ bool wxDataViewMainWindow::ItemDeleted(const wxDataViewItem& parent, bool wxDataViewMainWindow::ItemChanged(const wxDataViewItem & item) { - SortPrepare(); - - // Instead of resorting the parent, just move this specific child node. - wxDataViewItem parentItem = GetModel()->GetParent(item); - wxDataViewTreeNode * parentNode = FindNode(parentItem); - if ( parentNode ) - { - wxDataViewTreeNode * node = FindNode(item); - wxASSERT(node); - parentNode->MoveUpdatedChild(node); - } + // Move this node to its new correct place after it was updated. + wxDataViewTreeNode* const node = FindNode(item); + wxCHECK_MSG( node, false, "invalid item" ); + node->PutInSortOrder(); GetOwner()->InvalidateColBestWidths(); @@ -2893,8 +2905,6 @@ bool wxDataViewMainWindow::ItemChanged(const wxDataViewItem & item) wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, item); m_owner->ProcessWindowEvent(le); - // Make sure the change is actually shown right away - UpdateDisplay(); return true; } @@ -2913,31 +2923,21 @@ bool wxDataViewMainWindow::ValueChanged( const wxDataViewItem & item, unsigned i return true; */ - SortPrepare(); - // Instead of resorting the parent, just move this specific child node. + // In principle, we could skip the call to PutInSortOrder() if the modified + // column is not the sort column, but in real-world applications it's fully + // possible and likely that custom compare uses not only the selected model + // column but also falls back to other values for comparison. To ensure + // consistency it is better to treat a value change as if it was an item + // change. + // + // Alternatively, one could require the user to use ItemChanged() rather + // than ValueChanged() when the changed value may affect sorting, and add a + // check for model_column vs sort column here. - // It is possible to skip the call to MoveUpdatedChild if the - // modified column is not the sort column, but in real world - // applications it's fully possible and likely that custom - // compare uses not only the selected model column but also - // falls back to other values for comparison. To ensure - // consistency it is better to treat a value change as if it - // was an item change. - - // Alternatively, one could require the user to use ItemChanged - // rather than ValueChanged when the changed value may affect - // sorting, and add a check for model_column vs sort column - // here. - - wxDataViewItem parentItem = GetModel()->GetParent(item); - wxDataViewTreeNode * parentNode = FindNode(parentItem); - if ( parentNode ) - { - wxDataViewTreeNode * node = FindNode(item); - wxASSERT(node); - parentNode->MoveUpdatedChild(node); - } + wxDataViewTreeNode* const node = FindNode(item); + wxCHECK_MSG( node, false, "invalid item" ); + node->PutInSortOrder(); GetOwner()->InvalidateColBestWidth(view_column); @@ -2946,9 +2946,6 @@ bool wxDataViewMainWindow::ValueChanged( const wxDataViewItem & item, unsigned i wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, column, item); m_owner->ProcessWindowEvent(le); - // Make sure the change is actually shown right away - UpdateDisplay(); - return true; } @@ -3587,10 +3584,6 @@ void wxDataViewMainWindow::Expand( unsigned int row ) return; } - - // ToggleOpen needs sorting to be prepared, in case the child list - // isn't sorted correctly. - SortPrepare(); node->ToggleOpen(); // build the children of current node From 259a3578244864976cbb90ceb6317913dbdc883f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 17:31:09 +0100 Subject: [PATCH 016/916] Use index, not value, when removing items from wxDataViewTreeNode This avoids another (linear) search among the item siblings, as we can use the index we've just found instead directly. --- src/generic/datavgen.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 5408794848..0da29eba68 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -471,10 +471,10 @@ public: void InsertChild(wxDataViewTreeNode *node, unsigned index); - void RemoveChild(wxDataViewTreeNode *node) + void RemoveChild(unsigned index) { wxCHECK_RET( m_branchData != NULL, "leaf node doesn't have children" ); - m_branchData->children.Remove(node); + m_branchData->children.RemoveAt(index); } // returns position of child node for given item in children list or wxNOT_FOUND @@ -2835,7 +2835,7 @@ bool wxDataViewMainWindow::ItemDeleted(const wxDataViewItem& parent, // Delete the item from wxDataViewTreeNode representation: const int itemsDeleted = 1 + itemNode->GetSubTreeCount(); - parentNode->RemoveChild(itemNode); + parentNode->RemoveChild(itemPosInNode); delete itemNode; parentNode->ChangeSubTreeCount(-itemsDeleted); From a7c68663fd25d10cd152f8460d8c6e14089f19cd Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 17:43:11 +0100 Subject: [PATCH 017/916] Replace macro-based items array with wxVector in wxDataViewCtrl No real changes, just try to minimize the use of the old macro-based containers as there is really no reason to do it here. --- src/generic/datavgen.cpp | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 0da29eba68..55de3a6eb2 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -35,6 +35,7 @@ #include "wx/msgdlg.h" #include "wx/dcscreen.h" #include "wx/frame.h" + #include "wx/vector.h" #endif #include "wx/stockitem.h" @@ -422,7 +423,8 @@ public: class wxDataViewMainWindow; class wxDataViewTreeNode; -WX_DEFINE_ARRAY( wxDataViewTreeNode *, wxDataViewTreeNodes ); + +typedef wxVector wxDataViewTreeNodes; class wxDataViewTreeNode { @@ -474,7 +476,7 @@ public: void RemoveChild(unsigned index) { wxCHECK_RET( m_branchData != NULL, "leaf node doesn't have children" ); - m_branchData->children.RemoveAt(index); + m_branchData->RemoveChild(index); } // returns position of child node for given item in children list or wxNOT_FOUND @@ -525,7 +527,7 @@ public: int sum = 0; const wxDataViewTreeNodes& nodes = m_branchData->children; - const int len = nodes.GetCount(); + const int len = nodes.size(); for ( int i = 0;i < len; i ++) sum += 1 + nodes[i]->GetSubTreeCount(); @@ -622,6 +624,16 @@ private: { } + void InsertChild(wxDataViewTreeNode* node, unsigned index) + { + children.insert(children.begin() + index, node); + } + + void RemoveChild(unsigned index) + { + children.erase(children.begin() + index); + } + // Child nodes. Note that this may be empty even if m_hasChildren in // case this branch of the tree wasn't expanded and realized yet. wxDataViewTreeNodes children; @@ -1660,7 +1672,7 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) // in which case the children are nevertheless sorted (because // there is only one of them), but we need to set the correct sort // order. - wxASSERT_MSG( !m_parent && m_branchData->children.IsEmpty(), + wxASSERT_MSG( !m_parent && m_branchData->children.empty(), "Logic error in wxDVC sorting code" ); m_branchData->sortColumn = g_column; @@ -1670,7 +1682,7 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) // We can use fast insertion. insertSorted = true; } - else if ( m_branchData->children.IsEmpty() ) + else if ( m_branchData->children.empty() ) { // We're inserting the first child of a closed node. We can choose // whether to consider this empty child list sorted or unsorted. @@ -1712,11 +1724,11 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) else lo = hi = mid; } - m_branchData->children.Insert(node, lo); + m_branchData->InsertChild(node, lo); } else { - m_branchData->children.Insert(node, index); + m_branchData->InsertChild(node, index); } } @@ -1742,13 +1754,15 @@ void wxDataViewTreeNode::Resort() if ( (g_column != m_branchData->sortColumn) || (g_asending != m_branchData->sortAscending) ) { - nodes.Sort(&wxGenericTreeModelNodeCmp); + qsort(&m_branchData->children[0], m_branchData->children.size(), + sizeof(m_branchData->children[0]), + (CMPFUNC)&wxGenericTreeModelNodeCmp); m_branchData->sortColumn = g_column; m_branchData->sortAscending = g_asending; } // There may be open child nodes that also need a resort. - int len = nodes.GetCount(); + int len = nodes.size(); for ( int i = 0; i < len; i++ ) { if ( nodes[i]->HasChildren() ) @@ -1820,7 +1834,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) return; // Remove and reinsert the node in the child list - nodes.RemoveAt(oldLocation); + m_branchData->RemoveChild(oldLocation); hi = nodes.size(); int lo = 0; while ( lo < hi ) @@ -1834,7 +1848,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) else lo = hi = mid; } - nodes.Insert(childNode, lo); + m_branchData->InsertChild(childNode, lo); // Make sure the change is actually shown right away m_window->UpdateDisplay(); @@ -3700,7 +3714,7 @@ wxDataViewTreeNode * wxDataViewMainWindow::FindNode( const wxDataViewItem & item const wxDataViewTreeNodes& nodes = node->GetChildNodes(); bool found = false; - for (unsigned i = 0; i < nodes.GetCount(); ++i) + for (unsigned i = 0; i < nodes.size(); ++i) { wxDataViewTreeNode* currentNode = nodes[i]; if (currentNode->GetItem() == parentChain[iter]) From 5365f3563e2800aac27fc47551da399cd47f30ea Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 18:40:14 +0100 Subject: [PATCH 018/916] Get rid of global sort-related variables in wxDataViewCtrl Having to set up global variables before (re)sorting the items was too ugly and became even more so after the latest changes optimizing item sorting as sorting is done in more places now. Improve the code by introducing a SortOrder class instead of dealing with the sort column and sort order direction separately and, especially, by using std::sort() (which should be fine to use here, considering that it's used since quite some time in wxArrayString implementation) with a comparator object instead of qsort(), which doesn't allow passing any data to the sort callback otherwise than via the global variables. No changes in behaviour. --- src/generic/datavgen.cpp | 208 +++++++++++++++++++++------------------ 1 file changed, 113 insertions(+), 95 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 55de3a6eb2..cb77a75e71 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -67,7 +67,7 @@ class wxDataViewHeaderWindow; class wxDataViewCtrl; //----------------------------------------------------------------------------- -// classes +// constants //----------------------------------------------------------------------------- static const int SCROLL_UNIT_X = 15; @@ -84,9 +84,8 @@ static const int EXPANDER_OFFSET = 4; static const int EXPANDER_OFFSET = 1; #endif -// Below is the compare stuff. -// For the generic implementation, both the leaf nodes and the nodes are sorted for -// fast search when needed +namespace +{ // The column is either the index of the column to be used for sorting or one // of the special values in this enum: @@ -99,13 +98,46 @@ enum SortColumn_Default = -1 }; +// A class storing the definition of sort order used, as a column index and +// sort direction by this column. +// +// Notice that the sort order may be invalid, meaning that items shouldn't be +// sorted. +class SortOrder +{ +public: + explicit SortOrder(int column = SortColumn_None, bool ascending = true) + : m_column(column), + m_ascending(ascending) + { + } + + // Default copy ctor, assignment operator and dtor are all OK. + + bool IsNone() const { return m_column == SortColumn_None; } + + int GetColumn() const { return m_column; } + bool IsAscending() const { return m_ascending; } + + bool operator==(const SortOrder& other) const + { + return m_column == other.m_column && m_ascending == other.m_ascending; + } + + bool operator!=(const SortOrder& other) const + { + return !(*this == other); + } + +private: + int m_column; + bool m_ascending; +}; + // ---------------------------------------------------------------------------- // helper functions // ---------------------------------------------------------------------------- -namespace -{ - // Return the expander column or, if it is not set, the first column and also // set it as the expander one for the future. wxDataViewColumn* GetExpanderColumnOrFirstOne(wxDataViewCtrl* dataview) @@ -618,8 +650,6 @@ private: { BranchNodeData() : open(false), - sortAscending(false), - sortColumn(SortColumn_None), subTreeCount(0) { } @@ -638,15 +668,12 @@ private: // case this branch of the tree wasn't expanded and realized yet. wxDataViewTreeNodes children; + // Order in which children are sorted (possibly none). + SortOrder sortOrder; + // Is the branch node currently open (expanded)? bool open; - // Are the children currently sorted ascending or descending - bool sortAscending; - - // By which column are the children currently sorted - int sortColumn; - // Total count of expanded (i.e. visible with the help of some // scrolling) items in the subtree, but excluding this node. I.e. it is // 0 for leaves and is the number of rows the subtree occupies for @@ -688,30 +715,25 @@ public: { if (!IsVirtualList()) { - SortPrepare(); m_root->Resort(); } UpdateDisplay(); } - void SortPrepare() + SortOrder GetSortOrder() const { - wxDataViewModel* model = GetModel(); - - wxDataViewColumn* col = GetOwner()->GetSortingColumn(); + wxDataViewColumn* const col = GetOwner()->GetSortingColumn(); if ( col ) { - m_sortColumn = col->GetModelColumn(); - m_sortAscending = col->IsSortOrderAscending(); + return SortOrder(col->GetModelColumn(), + col->IsSortOrderAscending()); } else { - if (model->HasDefaultCompare()) - m_sortColumn = SortColumn_Default; + if (GetModel()->HasDefaultCompare()) + return SortOrder(SortColumn_Default); else - m_sortColumn = SortColumn_None; - - m_sortAscending = true; + return SortOrder(); } } @@ -852,9 +874,6 @@ public: return FindColumnForEditing(item, wxDATAVIEW_CELL_EDITABLE) != NULL; } - int GetSortColumn() const { return m_sortColumn; } - bool IsAscendingSort() const { return m_sortAscending; } - private: void InvalidateCount() { m_count = -1; } void UpdateCount(int count) @@ -923,10 +942,6 @@ private: // This is the tree node under the cursor wxDataViewTreeNode * m_underMouse; - // sorted column + extra flags - int m_sortColumn; - bool m_sortAscending; - // The control used for editing or NULL. wxWeakRef m_editorCtrl; @@ -1624,49 +1639,68 @@ void wxDataViewRenameTimer::Notify() // wxDataViewTreeNode // ---------------------------------------------------------------------------- -// Used by wxGenericTreeModelNodeCmp sort callback only. -// -// This is not thread safe but it should be fine if all events are handled in -// one thread. -static wxDataViewModel* g_model; -static int g_column; -static bool g_asending; - -int LINKAGEMODE wxGenericTreeModelNodeCmp(wxDataViewTreeNode ** node1, - wxDataViewTreeNode ** node2) +namespace { - return g_model->Compare((*node1)->GetItem(), (*node2)->GetItem(), g_column, g_asending); -} +// Comparator used for sorting the tree nodes using the model-defined sort +// order and also for performing binary search in our own code. +class wxGenericTreeModelNodeCmp +{ +public: + wxGenericTreeModelNodeCmp(wxDataViewMainWindow* window, + const SortOrder& sortOrder) + : m_model(window->GetModel()), + m_sortOrder(sortOrder) + { + wxASSERT_MSG( !m_sortOrder.IsNone(), "should have sort order" ); + } + + // Return negative, zero or positive value depending on whether the first + // item is less than, equal to or greater than the second one. + int Compare(wxDataViewTreeNode* first, wxDataViewTreeNode* second) const + { + return m_model->Compare(first->GetItem(), second->GetItem(), + m_sortOrder.GetColumn(), + m_sortOrder.IsAscending()); + } + + // Return true if the items are in order, i.e. the first item is less than + // or equal (because it's useless to exchange them in this case) than the + // second one. This is used by std::sort(). + bool operator()(wxDataViewTreeNode* first, wxDataViewTreeNode* second) const + { + return Compare(first, second) <= 0; + } + +private: + wxDataViewModel* const m_model; + const SortOrder m_sortOrder; +}; + +} // anonymous namespace void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) { if (!m_branchData) m_branchData = new BranchNodeData; - m_window->SortPrepare(); - - g_column = m_window->GetSortColumn(); - g_model = m_window->GetModel(); - g_asending = m_window->IsAscendingSort(); + const SortOrder sortOrder = m_window->GetSortOrder(); // Flag indicating whether we should retain existing sorted list when // inserting the child node. bool insertSorted = false; - if ( g_column == SortColumn_None ) + if ( sortOrder.IsNone() ) { // We should insert assuming an unsorted list. This will cause the // child list to lose the current sort order, if any. - m_branchData->sortColumn = SortColumn_None; - m_branchData->sortAscending = true; + m_branchData->sortOrder = SortOrder(); } else if ( m_branchData->open ) { // For open branches, children should be already sorted, with one // possible exception that we check for here: - if ( m_branchData->sortColumn != g_column || - m_branchData->sortAscending != g_asending ) + if ( m_branchData->sortOrder != sortOrder ) { // This can happen for the root node, on the first child addition, // in which case the children are nevertheless sorted (because @@ -1675,8 +1709,7 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) wxASSERT_MSG( !m_parent && m_branchData->children.empty(), "Logic error in wxDVC sorting code" ); - m_branchData->sortColumn = g_column; - m_branchData->sortAscending = g_asending; + m_branchData->sortOrder = sortOrder; } // We can use fast insertion. @@ -1688,11 +1721,9 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) // whether to consider this empty child list sorted or unsorted. // By choosing unsorted, we postpone comparisons until the parent // node is opened in the view, which may be never. - m_branchData->sortColumn = SortColumn_None; - m_branchData->sortAscending = true; + m_branchData->sortOrder = SortOrder(); } - else if ( (m_branchData->sortColumn == g_column) && - (m_branchData->sortAscending == g_asending) ) + else if ( m_branchData->sortOrder == sortOrder ) { // The children are already sorted by the correct criteria (because // the node must have been opened in the same time in the past). Even @@ -1704,19 +1735,19 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) { // The children aren't sorted by the correct criteria, so we just // insert unsorted. - m_branchData->sortColumn = SortColumn_None; - m_branchData->sortAscending = true; + m_branchData->sortOrder = SortOrder(); } if ( insertSorted ) { // Use binary search to find the correct position to insert at. + wxGenericTreeModelNodeCmp cmp(m_window, sortOrder); int lo = 0, hi = m_branchData->children.size(); while ( lo < hi ) { int mid = lo + (hi - lo) / 2; - int r = wxGenericTreeModelNodeCmp(&node, &m_branchData->children[mid]); + int r = cmp.Compare(node, m_branchData->children[mid]); if ( r < 0 ) hi = mid; else if ( r > 0 ) @@ -1742,23 +1773,20 @@ void wxDataViewTreeNode::Resort() if ( !m_branchData->open ) return; - g_column = m_window->GetSortColumn(); - if ( g_column != SortColumn_None ) + const SortOrder sortOrder = m_window->GetSortOrder(); + if ( !sortOrder.IsNone() ) { - g_model = m_window->GetModel(); - g_asending = m_window->IsAscendingSort(); wxDataViewTreeNodes& nodes = m_branchData->children; // Only sort the children if they aren't already sorted by the wanted // criteria. - if ( (g_column != m_branchData->sortColumn) || - (g_asending != m_branchData->sortAscending) ) + if ( m_branchData->sortOrder != sortOrder ) { - qsort(&m_branchData->children[0], m_branchData->children.size(), - sizeof(m_branchData->children[0]), - (CMPFUNC)&wxGenericTreeModelNodeCmp); - m_branchData->sortColumn = g_column; - m_branchData->sortAscending = g_asending; + std::sort(m_branchData->children.begin(), + m_branchData->children.end(), + wxGenericTreeModelNodeCmp(m_window, sortOrder)); + + m_branchData->sortOrder = sortOrder; } // There may be open child nodes that also need a resort. @@ -1781,7 +1809,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) return; if ( !m_branchData->open ) return; - if ( m_branchData->sortColumn == SortColumn_None ) + if ( m_branchData->sortOrder.IsNone() ) return; wxDataViewTreeNodes& nodes = m_branchData->children; @@ -1791,14 +1819,8 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) if ( nodes.size() == 1 ) return; - m_window->SortPrepare(); - - g_column = m_window->GetSortColumn(); - g_model = m_window->GetModel(); - g_asending = m_window->IsAscendingSort(); - - wxASSERT(g_column == m_branchData->sortColumn); - wxASSERT(g_asending == m_branchData->sortAscending); + // We should already be sorted in the right order. + wxASSERT(m_branchData->sortOrder == m_window->GetSortOrder()); // First find the node in the current child list int hi = nodes.size(); @@ -1813,6 +1835,8 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) } wxCHECK_RET( oldLocation >= 0, "not our child?" ); + wxGenericTreeModelNodeCmp cmp(m_window, m_branchData->sortOrder); + // Check if we actually need to move the node. bool locationChanged = false; @@ -1821,12 +1845,12 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) // Compare with the next item (as we return early in the case of only a // single child, we know that there is one) to check if the item is now // out of order. - if ( wxGenericTreeModelNodeCmp(&childNode, &nodes[1]) > 0 ) + if ( !cmp(childNode, nodes[1]) ) locationChanged = true; } else // Compare with the previous item. { - if ( wxGenericTreeModelNodeCmp(&nodes[oldLocation - 1], &childNode) > 0 ) + if ( !cmp(nodes[oldLocation - 1], childNode) ) locationChanged = true; } @@ -1840,7 +1864,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) while ( lo < hi ) { int mid = lo + (hi - lo) / 2; - int r = wxGenericTreeModelNodeCmp(&childNode, &m_branchData->children[mid]); + int r = cmp.Compare(childNode, m_branchData->children[mid]); if ( r < 0 ) hi = mid; else if ( r > 0 ) @@ -1943,9 +1967,6 @@ wxDataViewMainWindow::wxDataViewMainWindow( wxDataViewCtrl *parent, wxWindowID i m_count = -1; m_underMouse = NULL; - m_sortColumn = SortColumn_None; - m_sortAscending = true; - UpdateDisplay(); } @@ -2723,7 +2744,7 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData itemNode->SetHasChildren(GetModel()->IsContainer(item)); parentNode->SetHasChildren(true); - if ( m_sortColumn == SortColumn_None ) + if ( GetSortOrder().IsNone() ) { // There's no sorting, so we need to select an insertion position @@ -2971,7 +2992,6 @@ bool wxDataViewMainWindow::Cleared() if (GetModel()) { - SortPrepare(); BuildTree( GetModel() ); } else @@ -3707,7 +3727,6 @@ wxDataViewTreeNode * wxDataViewMainWindow::FindNode( const wxDataViewItem & item // Even though the item is a container, it doesn't have any // child nodes in the control's representation yet. We have // to realize its subtree now. - SortPrepare(); ::BuildTreeHelper(this, model, node->GetItem(), node); } @@ -3955,7 +3974,6 @@ void wxDataViewMainWindow::BuildTree(wxDataViewModel * model) // First we define a invalid item to fetch the top-level elements wxDataViewItem item; - SortPrepare(); BuildTreeHelper(this, model, item, m_root); InvalidateCount(); } From 3f41e84830e522e2d5340f2d109c953359dd8a8b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 18:59:36 +0100 Subject: [PATCH 019/916] Remove unused wxDataViewSelection dynamic array macro This should have been done in 36a5983f64c0f9adfdc67b5c11fe44671cea1ab5 but was forgotten and the unused array remained in the code. --- src/generic/datavgen.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index cb77a75e71..9c8736cb78 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -690,8 +690,6 @@ private: // wxDataViewMainWindow //----------------------------------------------------------------------------- -WX_DEFINE_SORTED_ARRAY_SIZE_T(unsigned int, wxDataViewSelection); - class wxDataViewMainWindow: public wxWindow { public: From 1bfe42b0ce02ab63cdc53e012cb6c553a261861e Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 19:09:04 +0100 Subject: [PATCH 020/916] Simplify sort order handling for first child item Test whether this is the first child before testing whether the branch is open as this allows to avoid the special case of inserting the first child under the root node and simplifies the assert condition to a simple check that the sort order is already what we expect. --- src/generic/datavgen.cpp | 42 ++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 9c8736cb78..3750116e64 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -1694,33 +1694,33 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) // child list to lose the current sort order, if any. m_branchData->sortOrder = SortOrder(); } - else if ( m_branchData->open ) + else if ( m_branchData->children.empty() ) { - // For open branches, children should be already sorted, with one - // possible exception that we check for here: - if ( m_branchData->sortOrder != sortOrder ) + if ( m_branchData->open ) { - // This can happen for the root node, on the first child addition, - // in which case the children are nevertheless sorted (because - // there is only one of them), but we need to set the correct sort - // order. - wxASSERT_MSG( !m_parent && m_branchData->children.empty(), - "Logic error in wxDVC sorting code" ); - + // We don't need to search for the right place to insert the first + // item (there is only one), but we do need to remember the sort + // order to use for the subsequent ones. m_branchData->sortOrder = sortOrder; } + else + { + // We're inserting the first child of a closed node. We can choose + // whether to consider this empty child list sorted or unsorted. + // By choosing unsorted, we postpone comparisons until the parent + // node is opened in the view, which may be never. + m_branchData->sortOrder = SortOrder(); + } + } + else if ( m_branchData->open ) + { + // For open branches, children should be already sorted. + wxASSERT_MSG( m_branchData->sortOrder == sortOrder, + wxS("Logic error in wxDVC sorting code") ); // We can use fast insertion. insertSorted = true; } - else if ( m_branchData->children.empty() ) - { - // We're inserting the first child of a closed node. We can choose - // whether to consider this empty child list sorted or unsorted. - // By choosing unsorted, we postpone comparisons until the parent - // node is opened in the view, which may be never. - m_branchData->sortOrder = SortOrder(); - } else if ( m_branchData->sortOrder == sortOrder ) { // The children are already sorted by the correct criteria (because @@ -1731,8 +1731,8 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) } else { - // The children aren't sorted by the correct criteria, so we just - // insert unsorted. + // The children of this closed node aren't sorted by the correct + // criteria, so we just insert unsorted. m_branchData->sortOrder = SortOrder(); } From 1dbe3dafe4b3a2fcc6134ed24abf21d7faa3851f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 17 Dec 2017 19:16:34 +0100 Subject: [PATCH 021/916] Stop storing window pointer in all wxDataViewTreeNode objects This didn't make any sense, all these objects reachable from the given root node are used by the same window, so storing the same pointer in all of them just wasted memory unnecessarily. Avoid this by passing wxDataViewMainWindow pointer explicitly to those methods of wxDataViewTreeNode that need it. No changes in behaviour, this is just a (memory use) optimization. --- src/generic/datavgen.cpp | 79 ++++++++++++++++++++-------------------- 1 file changed, 40 insertions(+), 39 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 3750116e64..82885fdc41 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -461,11 +461,8 @@ typedef wxVector wxDataViewTreeNodes; class wxDataViewTreeNode { public: - wxDataViewTreeNode(wxDataViewMainWindow *window, - wxDataViewTreeNode *parent, - const wxDataViewItem& item) - : m_window(window), - m_parent(parent), + wxDataViewTreeNode(wxDataViewTreeNode *parent, const wxDataViewItem& item) + : m_parent(parent), m_item(item), m_branchData(NULL) { @@ -487,9 +484,9 @@ public: } } - static wxDataViewTreeNode* CreateRootNode(wxDataViewMainWindow *w) + static wxDataViewTreeNode* CreateRootNode() { - wxDataViewTreeNode *n = new wxDataViewTreeNode(w, NULL, wxDataViewItem()); + wxDataViewTreeNode *n = new wxDataViewTreeNode(NULL, wxDataViewItem()); n->m_branchData = new BranchNodeData; n->m_branchData->open = true; return n; @@ -503,7 +500,8 @@ public: return m_branchData->children; } - void InsertChild(wxDataViewTreeNode *node, unsigned index); + void InsertChild(wxDataViewMainWindow* window, + wxDataViewTreeNode *node, unsigned index); void RemoveChild(unsigned index) { @@ -547,7 +545,7 @@ public: return m_branchData && m_branchData->open; } - void ToggleOpen() + void ToggleOpen(wxDataViewMainWindow* window) { // We do not allow the (invisible) root node to be collapsed because // there is no way to expand it again. @@ -573,7 +571,7 @@ public: m_branchData->open = !m_branchData->open; ChangeSubTreeCount(+sum); // Sort the children if needed - Resort(); + Resort(window); } } @@ -620,14 +618,14 @@ public: m_parent->ChangeSubTreeCount(num); } - void Resort(); + void Resort(wxDataViewMainWindow* window); // Should be called after changing the item value to update its position in // the control if necessary. - void PutInSortOrder() + void PutInSortOrder(wxDataViewMainWindow* window) { if ( m_parent ) - m_parent->PutChildInSortOrder(this); + m_parent->PutChildInSortOrder(window, this); } private: @@ -636,9 +634,9 @@ private: // // The argument must be non-null, but is passed as a pointer as it's // inserted into m_branchData->children. - void PutChildInSortOrder(wxDataViewTreeNode* childNode); + void PutChildInSortOrder(wxDataViewMainWindow* window, + wxDataViewTreeNode* childNode); - wxDataViewMainWindow * const m_window; wxDataViewTreeNode *m_parent; // Corresponding model item. @@ -713,7 +711,7 @@ public: { if (!IsVirtualList()) { - m_root->Resort(); + m_root->Resort(this); } UpdateDisplay(); } @@ -1677,12 +1675,13 @@ private: } // anonymous namespace -void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) +void wxDataViewTreeNode::InsertChild(wxDataViewMainWindow* window, + wxDataViewTreeNode *node, unsigned index) { if (!m_branchData) m_branchData = new BranchNodeData; - const SortOrder sortOrder = m_window->GetSortOrder(); + const SortOrder sortOrder = window->GetSortOrder(); // Flag indicating whether we should retain existing sorted list when // inserting the child node. @@ -1740,7 +1739,7 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) if ( insertSorted ) { // Use binary search to find the correct position to insert at. - wxGenericTreeModelNodeCmp cmp(m_window, sortOrder); + wxGenericTreeModelNodeCmp cmp(window, sortOrder); int lo = 0, hi = m_branchData->children.size(); while ( lo < hi ) { @@ -1762,7 +1761,7 @@ void wxDataViewTreeNode::InsertChild(wxDataViewTreeNode *node, unsigned index) } -void wxDataViewTreeNode::Resort() +void wxDataViewTreeNode::Resort(wxDataViewMainWindow* window) { if (!m_branchData) return; @@ -1771,7 +1770,7 @@ void wxDataViewTreeNode::Resort() if ( !m_branchData->open ) return; - const SortOrder sortOrder = m_window->GetSortOrder(); + const SortOrder sortOrder = window->GetSortOrder(); if ( !sortOrder.IsNone() ) { wxDataViewTreeNodes& nodes = m_branchData->children; @@ -1782,7 +1781,7 @@ void wxDataViewTreeNode::Resort() { std::sort(m_branchData->children.begin(), m_branchData->children.end(), - wxGenericTreeModelNodeCmp(m_window, sortOrder)); + wxGenericTreeModelNodeCmp(window, sortOrder)); m_branchData->sortOrder = sortOrder; } @@ -1792,13 +1791,15 @@ void wxDataViewTreeNode::Resort() for ( int i = 0; i < len; i++ ) { if ( nodes[i]->HasChildren() ) - nodes[i]->Resort(); + nodes[i]->Resort(window); } } } -void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) +void +wxDataViewTreeNode::PutChildInSortOrder(wxDataViewMainWindow* window, + wxDataViewTreeNode* childNode) { // The childNode has changed, and may need to be moved to another location // in the sorted child list. @@ -1818,7 +1819,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) return; // We should already be sorted in the right order. - wxASSERT(m_branchData->sortOrder == m_window->GetSortOrder()); + wxASSERT(m_branchData->sortOrder == window->GetSortOrder()); // First find the node in the current child list int hi = nodes.size(); @@ -1833,7 +1834,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) } wxCHECK_RET( oldLocation >= 0, "not our child?" ); - wxGenericTreeModelNodeCmp cmp(m_window, m_branchData->sortOrder); + wxGenericTreeModelNodeCmp cmp(window, m_branchData->sortOrder); // Check if we actually need to move the node. bool locationChanged = false; @@ -1873,7 +1874,7 @@ void wxDataViewTreeNode::PutChildInSortOrder(wxDataViewTreeNode* childNode) m_branchData->InsertChild(childNode, lo); // Make sure the change is actually shown right away - m_window->UpdateDisplay(); + window->UpdateDisplay(); } @@ -1959,7 +1960,7 @@ wxDataViewMainWindow::wxDataViewMainWindow( wxDataViewCtrl *parent, wxWindowID i // TODO: maybe there is something system colour to use m_penExpander = wxPen(wxColour(0,0,0)); - m_root = wxDataViewTreeNode::CreateRootNode(this); + m_root = wxDataViewTreeNode::CreateRootNode(); // Make m_count = -1 will cause the class recaculate the real displaying number of rows. m_count = -1; @@ -2738,7 +2739,7 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData if ( !parentNode ) return false; - wxDataViewTreeNode *itemNode = new wxDataViewTreeNode(this, parentNode, item); + wxDataViewTreeNode *itemNode = new wxDataViewTreeNode(parentNode, item); itemNode->SetHasChildren(GetModel()->IsContainer(item)); parentNode->SetHasChildren(true); @@ -2793,13 +2794,13 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData } } parentNode->ChangeSubTreeCount(+1); - parentNode->InsertChild(itemNode, nodePos); + parentNode->InsertChild(this, itemNode, nodePos); } else { // Node list is or will be sorted, so InsertChild do not need insertion position parentNode->ChangeSubTreeCount(+1); - parentNode->InsertChild(itemNode, 0); + parentNode->InsertChild(this, itemNode, 0); } InvalidateCount(); @@ -2886,7 +2887,7 @@ bool wxDataViewMainWindow::ItemDeleted(const wxDataViewItem& parent, // If it's still a container, make sure we show "+" icon for it // and not "-" one as there is nothing to collapse any more. if ( parentNode->IsOpen() ) - parentNode->ToggleOpen(); + parentNode->ToggleOpen(this); } } @@ -2930,7 +2931,7 @@ bool wxDataViewMainWindow::ItemChanged(const wxDataViewItem & item) // Move this node to its new correct place after it was updated. wxDataViewTreeNode* const node = FindNode(item); wxCHECK_MSG( node, false, "invalid item" ); - node->PutInSortOrder(); + node->PutInSortOrder(this); GetOwner()->InvalidateColBestWidths(); @@ -2970,7 +2971,7 @@ bool wxDataViewMainWindow::ValueChanged( const wxDataViewItem & item, unsigned i wxDataViewTreeNode* const node = FindNode(item); wxCHECK_MSG( node, false, "invalid item" ); - node->PutInSortOrder(); + node->PutInSortOrder(this); GetOwner()->InvalidateColBestWidth(view_column); @@ -3616,7 +3617,7 @@ void wxDataViewMainWindow::Expand( unsigned int row ) return; } - node->ToggleOpen(); + node->ToggleOpen(this); // build the children of current node if( node->GetChildNodes().empty() ) @@ -3672,7 +3673,7 @@ void wxDataViewMainWindow::Collapse(unsigned int row) SendSelectionChangedEvent(GetItemByRow(row)); } - node->ToggleOpen(); + node->ToggleOpen(this); // Adjust the current row if necessary. if ( m_currentRow > row ) @@ -3946,12 +3947,12 @@ static void BuildTreeHelper( wxDataViewMainWindow *window, const wxDataViewModel for ( unsigned int index = 0; index < num; index++ ) { - wxDataViewTreeNode *n = new wxDataViewTreeNode(window, node, children[index]); + wxDataViewTreeNode *n = new wxDataViewTreeNode(node, children[index]); if( model->IsContainer(children[index]) ) n->SetHasChildren( true ); - node->InsertChild(n, index); + node->InsertChild(window, n, index); } wxASSERT( node->IsOpen() ); @@ -3968,7 +3969,7 @@ void wxDataViewMainWindow::BuildTree(wxDataViewModel * model) return; } - m_root = wxDataViewTreeNode::CreateRootNode(this); + m_root = wxDataViewTreeNode::CreateRootNode(); // First we define a invalid item to fetch the top-level elements wxDataViewItem item; From aa7c99b275fb6485bfcd80f2348b5de6a1143f19 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 18 Dec 2017 16:58:59 +0100 Subject: [PATCH 022/916] Minor formatting fixes to recently changed wxListCtrl code No real changes. --- src/msw/listctrl.cpp | 51 ++++++++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 26 deletions(-) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index f470bb8bd6..40bdee2b09 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -3107,18 +3107,17 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) } /* - The drawing can be clipped horizontally to the rightmost column. This - happens when an item is added (and visible) and results in a - horizontal rule being clipped instead of drawn across the entire list - control. In that case we request for the part to the right of the - rightmost column to be drawn as well. + The drawing can be clipped horizontally to the rightmost column. + This happens when an item is added (and visible) and results in a + horizontal rule being clipped instead of drawn across the entire + list control. In that case we request for the part to the right of + the rightmost column to be drawn as well. */ - if ( clipRect.GetRight() != clientSize.GetWidth() - 1 - && clipRect.width) + if ( clipRect.GetRight() != clientSize.x - 1 && clipRect.width ) { RefreshRect(wxRect(clipRect.GetRight(), clipRect.y, - clientSize.x - clipRect.width, clipRect.height), - false /* erase background? */); + clientSize.x - clipRect.width, clipRect.height), + false /* don't erase background */); } } @@ -3130,25 +3129,25 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) if (GetItemRect(bottom, bottomItemRect)) { /* - This is a fix for ticket #747: erase the pixels which we would - otherwise leave on the screen. + This is a fix for ticket #747: erase the pixels which we would + otherwise leave on the screen. - The drawing of the rectangle as a fix to erase trailing pixels - when resizing a column is only needed for ComCtl32 prior to - 6.0, i.e. when not using a manifest in which case 5.82 is - used. And even then it only happens when "Show window contents - while dragging" is enabled under Windows, resulting in live - updates when resizing columns. Note that even with that setting - on, at least under Windows 7 and 10 no live updating is done when - using ComCtl32 5.82. + The drawing of the rectangle as a fix to erase trailing pixels + when resizing a column is only needed for ComCtl32 prior to + 6.0, i.e. when not using a manifest in which case 5.82 is used. + And even then it only happens when "Show window contents while + dragging" is enabled under Windows, resulting in live updates + when resizing columns. Note that even with that setting on, at + least under Windows 7 and 10 no live updating is done when + using ComCtl32 5.82. - Revision b66c3a67519caa9debfd76e6d74954eaebfa56d9 made this fix - almost redundant, except that when you do NOT handle - EVT_LIST_COL_DRAGGING (or do and skip the event) the trailing - pixels still appear. In case of wanting to reproduce the problem - in the listctrl sample: comment out handling oF - EVT_LIST_COL_DRAGGING and also set useDrawFix to false and gap to - 2 (not 0). + Revision b66c3a67519caa9debfd76e6d74954eaebfa56d9 made this fix + almost redundant, except that when you do NOT handle + EVT_LIST_COL_DRAGGING (or do and skip the event) the trailing + pixels still appear. In case of wanting to reproduce the + problem in the listctrl sample: comment out handling oF + EVT_LIST_COL_DRAGGING and also set useDrawFix to false and gap + to 2 (not 0). */ static const bool useDrawFix = wxApp::GetComCtl32Version() < 600; From de7fa05245d4e50cb5cebd55345ab4b1571edaee Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 18 Dec 2017 17:00:44 +0100 Subject: [PATCH 023/916] Use wxDCXXXChanger classes instead of manual SetXXX() calls No real changes, but the code is slightly shorter, maybe more clear and will be easier to maintain (because more difficult to break accidentally) in the future. --- src/msw/listctrl.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index 40bdee2b09..5896a1db7d 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -3156,13 +3156,11 @@ void wxListCtrl::OnPaint(wxPaintEvent& event) if (useDrawFix) { - dc.SetPen(*wxTRANSPARENT_PEN); - dc.SetBrush(wxBrush(GetBackgroundColour())); + wxDCPenChanger changePen(dc, *wxTRANSPARENT_PEN); + wxDCBrushChanger changeBrush(dc, GetBackgroundColour()); + dc.DrawRectangle(0, topItemRect.GetY() - gap, clientSize.GetWidth(), gap); - - dc.SetPen(pen); - dc.SetBrush(*wxTRANSPARENT_BRUSH); } const int numCols = GetColumnCount(); From b573315e7fbadd16c4eae3e98cd0bb448688c554 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 09:41:26 -0800 Subject: [PATCH 024/916] Add wx_is_at_least_gtk3() helper --- include/wx/gtk/private/gtk3-compat.h | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/include/wx/gtk/private/gtk3-compat.h b/include/wx/gtk/private/gtk3-compat.h index 19e9626b15..56e889ed26 100644 --- a/include/wx/gtk/private/gtk3-compat.h +++ b/include/wx/gtk/private/gtk3-compat.h @@ -23,8 +23,6 @@ static inline gboolean wx_gtk_text_iter_starts_tag(const GtkTextIter* iter, GtkT } #define gtk_text_iter_starts_tag wx_gtk_text_iter_starts_tag -#endif // !__WXGTK4__ - #ifdef __WXGTK3__ // ---------------------------------------------------------------------------- @@ -43,7 +41,24 @@ static inline void wx_gtk_widget_set_margin_end(GtkWidget* widget, gint margin) #define gtk_widget_set_margin_end wx_gtk_widget_set_margin_end #endif // __WXGTK3__ +#endif // !__WXGTK4__ wxGCC_WARNING_RESTORE() +#if defined(__WXGTK4__) || !defined(__WXGTK3__) +static inline bool wx_is_at_least_gtk3(int /* minor */) +{ +#ifdef __WXGTK4__ + return true; +#else + return false; +#endif +} +#else +static inline bool wx_is_at_least_gtk3(int minor) +{ + return gtk_check_version(3, minor, 0) == NULL; +} +#endif + #endif // _WX_GTK_PRIVATE_COMPAT3_H_ From 35f6a7c1d888a85d3c5ee9b4ef4a752c437804d4 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 09:52:56 -0800 Subject: [PATCH 025/916] Avoid deprecated GtkArrow with GTK+ >= 3.14 --- src/gtk/toolbar.cpp | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/src/gtk/toolbar.cpp b/src/gtk/toolbar.cpp index f432879948..e7ead42550 100644 --- a/src/gtk/toolbar.cpp +++ b/src/gtk/toolbar.cpp @@ -17,6 +17,7 @@ #include #include "wx/gtk/private.h" #include "wx/gtk/private/gtk2-compat.h" +#include "wx/gtk/private/gtk3-compat.h" // ---------------------------------------------------------------------------- // globals @@ -277,14 +278,28 @@ void wxToolBarTool::CreateDropDown() { gtk_tool_item_set_homogeneous(m_item, false); GtkOrientation orient = GTK_ORIENTATION_HORIZONTAL; - GtkArrowType arrowType = GTK_ARROW_DOWN; if (GetToolBar()->HasFlag(wxTB_LEFT | wxTB_RIGHT)) - { orient = GTK_ORIENTATION_VERTICAL; - arrowType = GTK_ARROW_RIGHT; - } GtkWidget* box = gtk_box_new(orient, 0); - GtkWidget* arrow = gtk_arrow_new(arrowType, GTK_SHADOW_NONE); + GtkWidget* arrow; + if (wx_is_at_least_gtk3(14)) + { + const char* icon = "pan-down-symbolic"; + if (orient == GTK_ORIENTATION_VERTICAL) + icon = "pan-end-symbolic"; + arrow = gtk_image_new_from_icon_name(icon, GTK_ICON_SIZE_BUTTON); + } +#ifndef __WXGTK4__ + else + { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + GtkArrowType arrowType = GTK_ARROW_DOWN; + if (orient == GTK_ORIENTATION_VERTICAL) + arrowType = GTK_ARROW_RIGHT; + arrow = gtk_arrow_new(arrowType, GTK_SHADOW_NONE); + wxGCC_WARNING_RESTORE() + } +#endif GtkWidget* tool_button = gtk_bin_get_child(GTK_BIN(m_item)); g_object_ref(tool_button); gtk_container_remove(GTK_CONTAINER(m_item), tool_button); From 96befc88c0e1dca9b37a049b619c89a6b9e1d951 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 09:56:23 -0800 Subject: [PATCH 026/916] Avoid gtk_tree_view_set_rules_hint() with GTK+4 --- src/gtk/assertdlg_gtk.cpp | 2 ++ src/gtk/dataview.cpp | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gtk/assertdlg_gtk.cpp b/src/gtk/assertdlg_gtk.cpp index ffe6a1353c..3efdc27b13 100644 --- a/src/gtk/assertdlg_gtk.cpp +++ b/src/gtk/assertdlg_gtk.cpp @@ -118,7 +118,9 @@ GtkWidget *gtk_assert_dialog_create_backtrace_list_model () treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL(store)); g_object_unref (store); #ifndef __WXGTK4__ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + wxGCC_WARNING_RESTORE() #endif /* append columns */ diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index ce16351a86..3683bd3e0e 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -4627,8 +4627,11 @@ bool wxDataViewCtrl::Create(wxWindow *parent, gtk_tree_view_set_grid_lines( GTK_TREE_VIEW(m_treeview), grid ); } #endif - +#ifndef __WXGTK4__ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_tree_view_set_rules_hint( GTK_TREE_VIEW(m_treeview), (style & wxDV_ROW_LINES) != 0 ); + wxGCC_WARNING_RESTORE() +#endif gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (m_widget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); From ecda9c2016701932d3e20daf360b5750d27ca426 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 10:12:04 -0800 Subject: [PATCH 027/916] Avoid GtkAlignment with GTK+4 --- src/gtk/button.cpp | 23 +++++++++++++++++++++++ src/gtk/checkbox.cpp | 6 ++++++ src/gtk/filectrl.cpp | 6 ++---- src/gtk/mdi.cpp | 6 ++++++ src/gtk/stattext.cpp | 6 ++++++ 5 files changed, 43 insertions(+), 4 deletions(-) diff --git a/src/gtk/button.cpp b/src/gtk/button.cpp index ca6fe2fc15..6121109932 100644 --- a/src/gtk/button.cpp +++ b/src/gtk/button.cpp @@ -119,7 +119,17 @@ bool wxButton::Create(wxWindow *parent, else if (HasFlag(wxBU_BOTTOM)) y_alignment = 1.0; +#ifdef __WXGTK4__ + if (useLabel) + { + g_object_set(gtk_bin_get_child(GTK_BIN(m_widget)), + "xalign", x_alignment, "yalign", y_alignment, NULL); + } +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_button_set_alignment(GTK_BUTTON(m_widget), x_alignment, y_alignment); + wxGCC_WARNING_RESTORE() +#endif if ( useLabel ) SetLabel(label); @@ -259,6 +269,13 @@ bool wxButton::DoSetLabelMarkup(const wxString& markup) GtkLabel *wxButton::GTKGetLabel() const { GtkWidget* child = gtk_bin_get_child(GTK_BIN(m_widget)); +#ifdef __WXGTK4__ + if (GTK_IS_LABEL(child)) + return GTK_LABEL(child); + + return NULL; +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) if ( GTK_IS_ALIGNMENT(child) ) { GtkWidget* box = gtk_bin_get_child(GTK_BIN(child)); @@ -274,6 +291,8 @@ GtkLabel *wxButton::GTKGetLabel() const } return GTK_LABEL(child); + wxGCC_WARNING_RESTORE() +#endif } #endif // wxUSE_MARKUP @@ -283,6 +302,8 @@ void wxButton::DoApplyWidgetStyle(GtkRcStyle *style) GtkWidget* child = gtk_bin_get_child(GTK_BIN(m_widget)); GTKApplyStyle(child, style); +#ifndef __WXGTK4__ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) // for buttons with images, the path to the label is (at least in 2.12) // GtkButton -> GtkAlignment -> GtkHBox -> GtkLabel if ( GTK_IS_ALIGNMENT(child) ) @@ -297,6 +318,8 @@ void wxButton::DoApplyWidgetStyle(GtkRcStyle *style) } } } + wxGCC_WARNING_RESTORE() +#endif } wxSize wxButton::DoGetBestSize() const diff --git a/src/gtk/checkbox.cpp b/src/gtk/checkbox.cpp index 997f81fb55..72beb09210 100644 --- a/src/gtk/checkbox.cpp +++ b/src/gtk/checkbox.cpp @@ -123,7 +123,13 @@ bool wxCheckBox::Create(wxWindow *parent, m_widgetCheckbox = gtk_check_button_new(); m_widgetLabel = gtk_label_new(""); +#ifdef __WXGTK4__ + g_object_set(m_widgetLabel, "xalign", 0.0f, NULL); +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_misc_set_alignment(GTK_MISC(m_widgetLabel), 0.0, 0.5); + wxGCC_WARNING_RESTORE() +#endif m_widget = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start(GTK_BOX(m_widget), m_widgetLabel, FALSE, FALSE, 3); diff --git a/src/gtk/filectrl.cpp b/src/gtk/filectrl.cpp index 0ab9103b48..a50a83b27d 100644 --- a/src/gtk/filectrl.cpp +++ b/src/gtk/filectrl.cpp @@ -339,11 +339,9 @@ bool wxGtkFileCtrl::Create( wxWindow *parent, if ( style & wxFC_SAVE ) gtkAction = GTK_FILE_CHOOSER_ACTION_SAVE; - m_widget = gtk_alignment_new ( 0, 0, 1, 1 ); - g_object_ref(m_widget); m_fcWidget = GTK_FILE_CHOOSER( gtk_file_chooser_widget_new(gtkAction) ); - gtk_widget_show ( GTK_WIDGET( m_fcWidget ) ); - gtk_container_add ( GTK_CONTAINER ( m_widget ), GTK_WIDGET( m_fcWidget ) ); + m_widget = GTK_WIDGET(m_fcWidget); + g_object_ref(m_widget); m_focusWidget = GTK_WIDGET( m_fcWidget ); diff --git a/src/gtk/mdi.cpp b/src/gtk/mdi.cpp index 4437030362..dd86d5c83e 100644 --- a/src/gtk/mdi.cpp +++ b/src/gtk/mdi.cpp @@ -422,7 +422,13 @@ void wxMDIClientWindow::AddChildGTK(wxWindowGTK* child) s = _("MDI child"); GtkWidget *label_widget = gtk_label_new( s.mbc_str() ); +#ifdef __WXGTK4__ + g_object_set(label_widget, "xalign", 0.0f, NULL); +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_misc_set_alignment( GTK_MISC(label_widget), 0.0, 0.5 ); + wxGCC_WARNING_RESTORE() +#endif GtkNotebook* notebook = GTK_NOTEBOOK(m_widget); diff --git a/src/gtk/stattext.cpp b/src/gtk/stattext.cpp index b84ddd9073..9c1031f9fb 100644 --- a/src/gtk/stattext.cpp +++ b/src/gtk/stattext.cpp @@ -108,7 +108,13 @@ bool wxStaticText::Create(wxWindow *parent, // GTK_JUSTIFY_LEFT is 0, RIGHT 1 and CENTER 2 static const float labelAlignments[] = { 0.0, 1.0, 0.5 }; +#ifdef __WXGTK4__ + g_object_set(m_widget, "xalign", labelAlignments[justify], NULL); +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_misc_set_alignment(GTK_MISC(m_widget), labelAlignments[justify], 0.0); + wxGCC_WARNING_RESTORE() +#endif gtk_label_set_line_wrap( GTK_LABEL(m_widget), TRUE ); From 97ee4582a45ea894060db784a11f2678ad957289 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 10:38:38 -0800 Subject: [PATCH 028/916] Avoid GtkHandleBox, GtkTearoffMenuItem, GtkImageMenuItem with GTK+4 --- src/gtk/menu.cpp | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/src/gtk/menu.cpp b/src/gtk/menu.cpp index 763cadee7e..1b84b76807 100644 --- a/src/gtk/menu.cpp +++ b/src/gtk/menu.cpp @@ -120,6 +120,7 @@ void wxMenuBar::Init(size_t n, wxMenu *menus[], const wxString titles[], long st m_menubar = gtk_menu_bar_new(); +#ifndef __WXGTK4__ if ((style & wxMB_DOCKABLE) #ifdef __WXGTK3__ // using GtkHandleBox prevents menubar from drawing with GTK+ >= 3.19.7 @@ -127,11 +128,14 @@ void wxMenuBar::Init(size_t n, wxMenu *menus[], const wxString titles[], long st #endif ) { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) m_widget = gtk_handle_box_new(); + wxGCC_WARNING_RESTORE() gtk_container_add(GTK_CONTAINER(m_widget), m_menubar); gtk_widget_show(m_menubar); } else +#endif { m_widget = m_menubar; } @@ -773,15 +777,19 @@ void wxMenu::Init() m_owner = NULL; +#ifndef __WXGTK4__ // Tearoffs are entries, just like separators. So if we want this // menu to be a tear-off one, we just append a tearoff entry // immediately. if ( m_style & wxMENU_TEAROFF ) { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) GtkWidget *tearoff = gtk_tearoff_menu_item_new(); + wxGCC_WARNING_RESTORE() gtk_menu_shell_append(GTK_MENU_SHELL(m_menu), tearoff); } +#endif // append the title as the very first entry if we have it if ( !m_title.empty() ) @@ -894,6 +902,12 @@ void wxMenu::GtkAppend(wxMenuItem* mitem, int pos) wxFAIL_MSG("unexpected menu item kind"); // fall through case wxITEM_NORMAL: +#ifdef __WXGTK4__ + //TODO GtkImageMenuItem is gone, have to implement it ourselves with + // GtkMenuItem GtkBox GtkAccelLabel GtkImage + menuItem = gtk_menu_item_new_with_label(""); +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) const wxBitmap& bitmap = mitem->GetBitmap(); if (bitmap.IsOk()) { @@ -906,16 +920,16 @@ void wxMenu::GtkAppend(wxMenuItem* mitem, int pos) } else { -#if !defined(__WXGTK3__) || !GTK_CHECK_VERSION(3,10,0) const char* stockid = wxGetStockGtkID(mitem->GetId()); if (stockid) // use stock bitmap for this item if available on the assumption // that it never hurts to follow GTK+ conventions more closely menuItem = gtk_image_menu_item_new_from_stock(stockid, NULL); else -#endif // GTK < 3.10 menuItem = gtk_menu_item_new_with_label(""); } + wxGCC_WARNING_RESTORE() +#endif break; } mitem->SetMenuItem(menuItem); @@ -1279,9 +1293,10 @@ wxGetGtkAccel(const wxMenuItem* item, guint* accel_key, GdkModifierType* accel_m const wxString string = GetGtkHotKey(*item); if (!string.empty()) gtk_accelerator_parse(wxGTK_CONV_SYS(string), accel_key, accel_mods); -#if !defined(__WXGTK3__) || !GTK_CHECK_VERSION(3,10,0) +#ifndef __WXGTK4__ else { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) GtkStockItem stock_item; const char* stockid = wxGetStockGtkID(item->GetId()); if (stockid && gtk_stock_lookup(stockid, &stock_item)) @@ -1289,13 +1304,14 @@ wxGetGtkAccel(const wxMenuItem* item, guint* accel_key, GdkModifierType* accel_m *accel_key = stock_item.keyval; *accel_mods = stock_item.modifier; } + wxGCC_WARNING_RESTORE() } -#endif // GTK < 3.10 +#endif } #endif // wxUSE_ACCEL -// Stock items are deprecated since GTK+ 3.10 -#if !defined(__WXGTK3__) || !GTK_CHECK_VERSION(3,10,0) +#ifndef __WXGTK4__ +wxGCC_WARNING_SUPPRESS(deprecated-declarations) const char *wxGetStockGtkID(wxWindowID id) { #define STOCKITEM(wx,gtk) \ @@ -1398,6 +1414,7 @@ const char *wxGetStockGtkID(wxWindowID id) return NULL; } -#endif // GTK < 3.10 +wxGCC_WARNING_RESTORE() +#endif // !__WXGTK4__ #endif // wxUSE_MENUS From 620b83109e26471f82728c62f75457c107749dad Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 10:40:34 -0800 Subject: [PATCH 029/916] Use gdk_seat_grab()/gdk_seat_ungrab() with GTK+4 --- src/gtk/minifram.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gtk/minifram.cpp b/src/gtk/minifram.cpp index 1ff1327c14..20735bc921 100644 --- a/src/gtk/minifram.cpp +++ b/src/gtk/minifram.cpp @@ -171,6 +171,11 @@ gtk_window_button_press_callback(GtkWidget* widget, GdkEventButton* gdk_event, w gdk_window_raise(gtk_widget_get_window(win->m_widget)); +#ifdef __WXGTK4__ + gdk_seat_grab( + gdk_event_get_seat((GdkEvent*)gdk_event), gdk_event_get_window((GdkEvent*)gdk_event), + GDK_SEAT_CAPABILITY_POINTER, false, NULL, (GdkEvent*)gdk_event, NULL, 0); +#else const GdkEventMask mask = GdkEventMask( GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | @@ -179,12 +184,15 @@ gtk_window_button_press_callback(GtkWidget* widget, GdkEventButton* gdk_event, w GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK); #ifdef __WXGTK3__ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gdk_device_grab( gdk_event->device, gdk_event->window, GDK_OWNERSHIP_NONE, false, mask, NULL, gdk_event->time); + wxGCC_WARNING_RESTORE() #else gdk_pointer_grab(gdk_event->window, false, mask, NULL, NULL, gdk_event->time); #endif +#endif // !__WXGTK4__ win->m_diffX = x; win->m_diffY = y; @@ -216,8 +224,12 @@ gtk_window_button_release_callback(GtkWidget* widget, GdkEventButton* gdk_event, int x = (int)gdk_event->x; int y = (int)gdk_event->y; -#ifdef __WXGTK3__ +#ifdef __WXGTK4__ + gdk_seat_ungrab(gdk_event_get_seat((GdkEvent*)gdk_event)); +#elif defined(__WXGTK3__) + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gdk_device_ungrab(gdk_event->device, gdk_event->time); + wxGCC_WARNING_RESTORE() #else gdk_pointer_ungrab(gdk_event->time); #endif From 9d837f7556738ade8c0ea0aad696d0f37555a3ca Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 10:41:49 -0800 Subject: [PATCH 030/916] Avoid gdk_screen_get_width() with GTK+4 --- src/gtk/textctrl.cpp | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/gtk/textctrl.cpp b/src/gtk/textctrl.cpp index 32e6ec5834..dd02a570ba 100644 --- a/src/gtk/textctrl.cpp +++ b/src/gtk/textctrl.cpp @@ -217,9 +217,19 @@ static void wxGtkTextApplyTagsFromAttr(GtkWidget *text, wxGtkTextRemoveTagsWithPrefix(text_buffer, "WXINDENT", ¶_start, ¶_end); // Convert indent from 1/10th of a mm into pixels +#ifdef __WXGTK4__ + GdkMonitor* monitor = gdk_display_get_monitor_at_window( + gtk_widget_get_display(text), gtk_widget_get_window(text)); + GdkRectangle rect; + gdk_monitor_get_geometry(monitor, &rect); + float factor = float(rect.width) / gdk_monitor_get_width_mm(monitor); +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) float factor = (float)gdk_screen_get_width(gtk_widget_get_screen(text)) / gdk_screen_get_width_mm(gtk_widget_get_screen(text)) / 10; + wxGCC_WARNING_RESTORE() +#endif const int indent = (int)(factor * attr.GetLeftIndent()); const int subIndent = (int)(factor * attr.GetLeftSubIndent()); @@ -274,10 +284,19 @@ static void wxGtkTextApplyTagsFromAttr(GtkWidget *text, if (!tag) { // Factor to convert from 1/10th of a mm into pixels +#ifdef __WXGTK4__ + GdkMonitor* monitor = gdk_display_get_monitor_at_window( + gtk_widget_get_display(text), gtk_widget_get_window(text)); + GdkRectangle rect; + gdk_monitor_get_geometry(monitor, &rect); + float factor = float(rect.width) / gdk_monitor_get_width_mm(monitor); +#else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) float factor = (float)gdk_screen_get_width(gtk_widget_get_screen(text)) / gdk_screen_get_width_mm(gtk_widget_get_screen(text)) / 10; - + wxGCC_WARNING_RESTORE() +#endif PangoTabArray* tabArray = pango_tab_array_new(tabs.GetCount(), TRUE); for (size_t i = 0; i < tabs.GetCount(); i++) pango_tab_array_set_tab(tabArray, i, PANGO_TAB_LEFT, (gint)(tabs[i] * factor)); From de273046a408ea25a82f5f6de2c62a2e02a15749 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 10:42:47 -0800 Subject: [PATCH 031/916] Avoid gtk_entry_{get,set}_inner_border() with GTK+4 --- src/gtk/textentry.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 7725a45800..966d9b9153 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -521,7 +521,7 @@ bool wxTextEntry::GTKEntryOnInsertText(const char* text) bool wxTextEntry::DoSetMargins(const wxPoint& margins) { -#if GTK_CHECK_VERSION(2,10,0) +#if GTK_CHECK_VERSION(2,10,0) && !defined(__WXGTK4__) GtkEntry* entry = GetEntry(); if ( !entry ) @@ -529,6 +529,7 @@ bool wxTextEntry::DoSetMargins(const wxPoint& margins) if ( !wx_is_at_least_gtk2(10) ) return false; + wxGCC_WARNING_SUPPRESS(deprecated-declarations) const GtkBorder* oldBorder = gtk_entry_get_inner_border(entry); GtkBorder newBorder; @@ -553,6 +554,7 @@ bool wxTextEntry::DoSetMargins(const wxPoint& margins) newBorder.top = margins.y; gtk_entry_set_inner_border(entry, &newBorder); + wxGCC_WARNING_RESTORE() return true; #else @@ -564,13 +566,15 @@ bool wxTextEntry::DoSetMargins(const wxPoint& margins) wxPoint wxTextEntry::DoGetMargins() const { wxPoint point(-1, -1); -#if GTK_CHECK_VERSION(2,10,0) +#if GTK_CHECK_VERSION(2,10,0) && !defined(__WXGTK4__) GtkEntry* entry = GetEntry(); if (entry) { if (wx_is_at_least_gtk2(10)) { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) const GtkBorder* border = gtk_entry_get_inner_border(entry); + wxGCC_WARNING_RESTORE() if (border) { point.x = border->left; From 54bcf1b9b6d1490b7d2050d86b259d0e76700b25 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 10:46:37 -0800 Subject: [PATCH 032/916] Avoid gtk_widget_get_pointer() with GTK+4 --- src/gtk/dataview.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index 3683bd3e0e..6e102ae7c4 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -3631,14 +3631,19 @@ gboolean wxDataViewCtrlInternal::row_draggable( GtkTreeDragSource *WXUNUSED(drag delete m_dragDataObject; m_dragDataObject = NULL; +#ifdef __WXGTK4__ + return false; +#else wxDataViewCtrl* const dvc = GetOwner(); wxDataViewItem item(dvc->GTKPathToItem(path)); if ( !item ) return FALSE; wxDataViewEvent event(wxEVT_DATAVIEW_ITEM_BEGIN_DRAG, dvc, item); + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gint x, y; gtk_widget_get_pointer(m_owner->GtkGetTreeView(), &x, &y); + wxGCC_WARNING_RESTORE() event.SetPosition(x, y); if (!m_owner->HandleWindowEvent( event )) return FALSE; @@ -3653,6 +3658,7 @@ gboolean wxDataViewCtrlInternal::row_draggable( GtkTreeDragSource *WXUNUSED(drag m_dragDataObject = obj; return TRUE; +#endif } gboolean From a3518a550f2ee6bba6d56d949b1139f4ffe72234 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 20:47:10 -0800 Subject: [PATCH 033/916] Use GtkGrid instead of GtkTable with GTK+3 GtkTable was deprecated in GTK+ 3.4 --- src/gtk/radiobox.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/gtk/radiobox.cpp b/src/gtk/radiobox.cpp index 96ac8cc740..4a47baaa5b 100644 --- a/src/gtk/radiobox.cpp +++ b/src/gtk/radiobox.cpp @@ -236,11 +236,17 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, GtkRadioButton *rbtn = NULL; +#ifdef __WXGTK3__ + GtkWidget* grid = gtk_grid_new(); + gtk_widget_show(grid); + gtk_container_add(GTK_CONTAINER(m_widget), grid); +#else GtkWidget *table = gtk_table_new( num_of_rows, num_of_cols, FALSE ); gtk_table_set_col_spacings( GTK_TABLE(table), 1 ); gtk_table_set_row_spacings( GTK_TABLE(table), 1 ); gtk_widget_show( table ); gtk_container_add( GTK_CONTAINER(m_widget), table ); +#endif GSList *radio_button_group = NULL; for (unsigned int i = 0; i < (unsigned int)n; i++) @@ -301,6 +307,20 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, m_buttonsInfo.Append( new wxGTKRadioButtonInfo( rbtn, wxRect() ) ); +#ifdef __WXGTK3__ + int left, top; + if (HasFlag(wxRA_SPECIFY_COLS)) + { + left = i % num_of_cols; + top = i / num_of_cols; + } + else + { + left = i / num_of_rows; + top = i % num_of_rows; + } + gtk_grid_attach(GTK_GRID(grid), GTK_WIDGET(rbtn), left, top, 1, 1); +#else if (HasFlag(wxRA_SPECIFY_COLS)) { int left = i%num_of_cols; @@ -319,6 +339,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, gtk_table_attach( GTK_TABLE(table), GTK_WIDGET(rbtn), left, right, top, bottom, GTK_FILL, GTK_FILL, 1, 1 ); } +#endif ConnectWidget( GTK_WIDGET(rbtn) ); From 72fe3a1d0708550d63e22f14a48d562ebe444617 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 21:40:38 -0800 Subject: [PATCH 034/916] Avoid gdk_window_set_composited() with GTK+4 --- src/gtk/window.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 93a209b5d2..4c7426756b 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -53,8 +53,12 @@ using namespace wxGTKImpl; typedef guint KeySym; #endif +#ifdef __WXGTK4__ +#define wxGTK_HAS_COMPOSITING_SUPPORT 0 +#else // gdk_window_set_composited() is only supported since 2.12 #define wxGTK_HAS_COMPOSITING_SUPPORT (GTK_CHECK_VERSION(2,12,0) && wxUSE_CAIRO) +#endif #ifndef PANGO_VERSION_CHECK #define PANGO_VERSION_CHECK(a,b,c) 0 @@ -2310,8 +2314,10 @@ void wxWindowGTK::GTKHandleRealized() #if wxGTK_HAS_COMPOSITING_SUPPORT if (IsTransparentBackgroundSupported()) { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) if (window) gdk_window_set_composited(window, true); + wxGCC_WARNING_RESTORE() } else #endif // wxGTK_HAS_COMPOSITING_SUPPORT From 1235c7bb74bc932db210aa81e98b440f5fe10285 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 21:43:16 -0800 Subject: [PATCH 035/916] Avoid gtk_widget_is_composited() with GTK+4 --- src/gtk/toplevel.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gtk/toplevel.cpp b/src/gtk/toplevel.cpp index f300b5ea56..3be043c44e 100644 --- a/src/gtk/toplevel.cpp +++ b/src/gtk/toplevel.cpp @@ -1641,16 +1641,22 @@ bool wxTopLevelWindowGTK::CanSetTransparent() return wxSystemOptions::GetOptionInt(SYSOPT_TRANSPARENT) != 0; } +#ifdef __WXGTK4__ + return gdk_display_is_composited(gtk_widget_get_display(m_widget)) != 0; +#else #if GTK_CHECK_VERSION(2,10,0) if (wx_is_at_least_gtk2(10)) { + wxGCC_WARNING_SUPPRESS(deprecated-declarations) return gtk_widget_is_composited(m_widget) != 0; + wxGCC_WARNING_RESTORE() } else #endif // In case of lower versions than gtk+-2.10.0 we could look for _NET_WM_CM_Sn ourselves { return false; } +#endif #if 0 // Don't be optimistic here for the sake of wxAUI int opcode, event, error; From 9249e823d91b201cccc2d58bce82f358bd228b9c Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 21:48:34 -0800 Subject: [PATCH 036/916] Avoid gtk_window_set_opacity() with GTK+4 --- src/gtk/toplevel.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gtk/toplevel.cpp b/src/gtk/toplevel.cpp index 3be043c44e..f63fdd3e46 100644 --- a/src/gtk/toplevel.cpp +++ b/src/gtk/toplevel.cpp @@ -41,6 +41,7 @@ #include "wx/gtk/private.h" #include "wx/gtk/private/gtk2-compat.h" +#include "wx/gtk/private/gtk3-compat.h" #include "wx/gtk/private/win_gtk.h" // ---------------------------------------------------------------------------- @@ -1587,14 +1588,18 @@ bool wxTopLevelWindowGTK::SetTransparent(wxByte alpha) #ifdef __WXGTK3__ #if GTK_CHECK_VERSION(3,8,0) - if(gtk_check_version(3,8,0) == NULL) + if (wx_is_at_least_gtk3(8)) { gtk_widget_set_opacity(m_widget, alpha / 255.0); } else #endif // GTK+ 3.8+ { +#ifndef __WXGTK4__ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) gtk_window_set_opacity(GTK_WINDOW(m_widget), alpha / 255.0); + wxGCC_WARNING_RESTORE() +#endif } return true; From c23cac4c7917e629df2146358d1d3a8408f229ed Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 19 Dec 2017 21:49:13 -0800 Subject: [PATCH 037/916] Avoid GtkAlignment with GTK+4 --- src/gtk/tglbtn.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gtk/tglbtn.cpp b/src/gtk/tglbtn.cpp index b4d90adb5f..0778546883 100644 --- a/src/gtk/tglbtn.cpp +++ b/src/gtk/tglbtn.cpp @@ -216,6 +216,8 @@ void wxToggleButton::DoApplyWidgetStyle(GtkRcStyle *style) GtkWidget* child = gtk_bin_get_child(GTK_BIN(m_widget)); GTKApplyStyle(child, style); +#ifndef __WXGTK4__ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) // for buttons with images, the path to the label is (at least in 2.12) // GtkButton -> GtkAlignment -> GtkHBox -> GtkLabel if ( GTK_IS_ALIGNMENT(child) ) @@ -230,6 +232,8 @@ void wxToggleButton::DoApplyWidgetStyle(GtkRcStyle *style) } } } + wxGCC_WARNING_RESTORE() +#endif } // Get the "best" size for this control. From 121ac8742dc615d068edfad83b24a0bcffe46d0a Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Wed, 20 Dec 2017 22:29:21 -0800 Subject: [PATCH 038/916] Fix wxStaticBox non-default background with GTK+2 See #15466 --- src/gtk/statbox.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/gtk/statbox.cpp b/src/gtk/statbox.cpp index cfbd915fd3..71ec2c0dde 100644 --- a/src/gtk/statbox.cpp +++ b/src/gtk/statbox.cpp @@ -44,6 +44,14 @@ static void size_allocate(GtkWidget* widget, GtkAllocation* alloc, void*) gtk_widget_size_allocate(label_widget, &a); } } + +static gboolean expose_event(GtkWidget* widget, GdkEventExpose*, wxWindow*) +{ + const GtkAllocation& a = widget->allocation; + gtk_paint_flat_box(gtk_widget_get_style(widget), gtk_widget_get_window(widget), + GTK_STATE_NORMAL, GTK_SHADOW_NONE, NULL, widget, "", a.x, a.y, a.width, a.height); + return false; +} } #endif @@ -137,6 +145,14 @@ void wxStaticBox::SetLabel( const wxString& label ) void wxStaticBox::DoApplyWidgetStyle(GtkRcStyle *style) { GTKFrameApplyWidgetStyle(GTK_FRAME(m_widget), style); + if (m_wxwindow) + GTKApplyStyle(m_wxwindow, style); + +#ifndef __WXGTK3__ + g_signal_handlers_disconnect_by_func(m_widget, (void*)expose_event, this); + if (m_backgroundColour.IsOk()) + g_signal_connect(m_widget, "expose-event", G_CALLBACK(expose_event), this); +#endif } bool wxStaticBox::GTKWidgetNeedsMnemonic() const From c867e0a23bb0222ee84c55be4901d9c310fef525 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Wed, 20 Dec 2017 22:33:07 -0800 Subject: [PATCH 039/916] Fix wxRadioBox non-default background with GTK+2 --- src/gtk/radiobox.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/gtk/radiobox.cpp b/src/gtk/radiobox.cpp index 4a47baaa5b..a92985a16a 100644 --- a/src/gtk/radiobox.cpp +++ b/src/gtk/radiobox.cpp @@ -183,6 +183,17 @@ static void gtk_radiobutton_size_allocate( GtkWidget *widget, } } +#ifndef __WXGTK3__ +extern "C" { +static gboolean expose_event(GtkWidget* widget, GdkEventExpose*, wxWindow*) +{ + const GtkAllocation& a = widget->allocation; + gtk_paint_flat_box(gtk_widget_get_style(widget), gtk_widget_get_window(widget), + GTK_STATE_NORMAL, GTK_SHADOW_NONE, NULL, widget, "", a.x, a.y, a.width, a.height); + return false; +} +} +#endif //----------------------------------------------------------------------------- // wxRadioBox @@ -605,6 +616,12 @@ void wxRadioBox::DoApplyWidgetStyle(GtkRcStyle *style) node = node->GetNext(); } + +#ifndef __WXGTK3__ + g_signal_handlers_disconnect_by_func(m_widget, (void*)expose_event, this); + if (m_backgroundColour.IsOk()) + g_signal_connect(m_widget, "expose-event", G_CALLBACK(expose_event), this); +#endif } bool wxRadioBox::GTKWidgetNeedsMnemonic() const From be35405129932325a506bc27064bff2dcb76a4ad Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Thu, 21 Dec 2017 10:06:10 -0800 Subject: [PATCH 040/916] Apply current style to wxStaticBox container when it's created Background may have been set before adding any children See #15466 --- src/gtk/statbox.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gtk/statbox.cpp b/src/gtk/statbox.cpp index 71ec2c0dde..797d80caf8 100644 --- a/src/gtk/statbox.cpp +++ b/src/gtk/statbox.cpp @@ -130,6 +130,7 @@ void wxStaticBox::AddChild( wxWindowBase *child ) m_wxwindow = wxPizza::New(); gtk_widget_show( m_wxwindow ); gtk_container_add( GTK_CONTAINER (m_widget), m_wxwindow ); + GTKApplyWidgetStyle(); } wxStaticBoxBase::AddChild(child); From 4f7fb24ef44dfff5f062fa3dee3bfc4c4cbf1771 Mon Sep 17 00:00:00 2001 From: Artur Wieczorek Date: Sun, 24 Dec 2017 00:22:15 +0100 Subject: [PATCH 041/916] Use composite template to create GtkAssertDialog as a composite children GtkAssertDialog UI is now defined with GtkBuilder XML because gtk_widget_push_composite_child() and gtk_widget_pop_composite_child() are deprecated since 3.10 and composite widget templates should be used to make composite children. --- src/gtk/assertdlg_gtk.cpp | 636 +++++++++++++++++++++++++++++++------- 1 file changed, 516 insertions(+), 120 deletions(-) diff --git a/src/gtk/assertdlg_gtk.cpp b/src/gtk/assertdlg_gtk.cpp index 3efdc27b13..12cc36109f 100644 --- a/src/gtk/assertdlg_gtk.cpp +++ b/src/gtk/assertdlg_gtk.cpp @@ -37,13 +37,10 @@ GtkAssertDialog helpers ---------------------------------------------------------------------------- */ +// This function is called only for GTK+ < 3.10 static GtkWidget *gtk_assert_dialog_add_button_to (GtkBox *box, const gchar *label, -#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - const gchar *icon) -#else const gchar *stock) -#endif // GTK >= 3.10 / < 3.10 { /* create the button */ GtkWidget *button = gtk_button_new_with_mnemonic (label); @@ -51,13 +48,11 @@ GtkWidget *gtk_assert_dialog_add_button_to (GtkBox *box, const gchar *label, /* add a stock icon inside it */ #ifdef __WXGTK4__ - gtk_button_set_icon_name (GTK_BUTTON (button), icon); + gtk_button_set_icon_name (GTK_BUTTON (button), stock); #else - #if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - GtkWidget *image = gtk_image_new_from_icon_name(icon, GTK_ICON_SIZE_BUTTON); - #else + wxGCC_WARNING_SUPPRESS(deprecated-declarations) GtkWidget *image = gtk_image_new_from_stock (stock, GTK_ICON_SIZE_BUTTON); - #endif // GTK >= 3.10 / < 3.10 + wxGCC_WARNING_RESTORE() gtk_button_set_image (GTK_BUTTON (button), image); #endif @@ -72,6 +67,7 @@ GtkWidget *gtk_assert_dialog_add_button_to (GtkBox *box, const gchar *label, return button; } +// This function is called only for GTK+ < 3.10 static GtkWidget *gtk_assert_dialog_add_button (GtkAssertDialog *dlg, const gchar *label, const gchar *stock, gint response_id) @@ -87,6 +83,7 @@ GtkWidget *gtk_assert_dialog_add_button (GtkAssertDialog *dlg, const gchar *labe #if wxUSE_STACKWALKER +// This function is called only for GTK+ < 3.10 static void gtk_assert_dialog_append_text_column (GtkWidget *treeview, const gchar *name, int index) { @@ -101,6 +98,7 @@ void gtk_assert_dialog_append_text_column (GtkWidget *treeview, const gchar *nam gtk_tree_view_column_set_reorderable (column, TRUE); } +// This function is called only for GTK+ < 3.10 static GtkWidget *gtk_assert_dialog_create_backtrace_list_model () { @@ -256,6 +254,9 @@ static void gtk_assert_dialog_continue_callback(GtkWidget*, GtkAssertDialog* dlg ---------------------------------------------------------------------------- */ extern "C" { +#if GTK_CHECK_VERSION(3,10,0) +static void gtk_assert_dialog_class_init(gpointer g_class, void*); +#endif // GTK+ >= 3.10 static void gtk_assert_dialog_init(GTypeInstance* instance, void*); } @@ -270,7 +271,11 @@ GType gtk_assert_dialog_get_type() sizeof (GtkAssertDialogClass), NULL, /* base_init */ NULL, /* base_finalize */ +#if GTK_CHECK_VERSION(3,10,0) + gtk_assert_dialog_class_init, /* class init */ +#else NULL, +#endif // GTK+ >= 3.10 / < 3.10 NULL, /* class_finalize */ NULL, /* class_data */ sizeof (GtkAssertDialog), @@ -285,139 +290,530 @@ GType gtk_assert_dialog_get_type() } extern "C" { +// For GTK+ >= 3.10, Composite Widget Templates are used to define composite widgets. +#if GTK_CHECK_VERSION(3,10,0) +static void gtk_assert_dialog_class_init(gpointer g_class, void*) +{ + if (gtk_check_version(3,10,0) == NULL) + { + // GtkBuilder XML to be bound to the dialog class data + static const char dlgTempl[] = + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "True" + "False" + "go-next" + "" + "" + "True" + "False" + "edit-copy" + "" + "" + "True" + "False" + "document-save" + "" + "" + "True" + "False" + "application-exit" + "" + "" + ""; + + // Verify numeric values of response codes hard-coded in the XML + wxASSERT(GTK_ASSERT_DIALOG_STOP == 0); + wxASSERT(GTK_ASSERT_DIALOG_CONTINUE == 1); + + GtkWidgetClass* widgetClass = GTK_WIDGET_CLASS(g_class); + + GBytes* templBytes = g_bytes_new_static(dlgTempl, sizeof(dlgTempl)-1); + gtk_widget_class_set_template(widgetClass, templBytes); + + // Define the relationship of the entries in GtkAssertDialog and entries defined in the XML + gtk_widget_class_bind_template_child(widgetClass, GtkAssertDialog, message); +#if wxUSE_STACKWALKER + gtk_widget_class_bind_template_child(widgetClass, GtkAssertDialog, expander); + gtk_widget_class_bind_template_child(widgetClass, GtkAssertDialog, treeview); +#endif // wxUSE_STACKWALKER + gtk_widget_class_bind_template_child(widgetClass, GtkAssertDialog, shownexttime); + + // Bind connections defined in the GtkBuilder XML + // with callbacks exposed by GtkAssertDialog. +#if wxUSE_STACKWALKER + gtk_widget_class_bind_template_callback(widgetClass, gtk_assert_dialog_expander_callback); + gtk_widget_class_bind_template_callback(widgetClass, gtk_assert_dialog_save_backtrace_callback); + gtk_widget_class_bind_template_callback(widgetClass, gtk_assert_dialog_copy_callback); +#endif // wxUSE_STACKWALKER + gtk_widget_class_bind_template_callback(widgetClass, gtk_assert_dialog_continue_callback); + } +} +#endif // GTK+ >= 3.10 + static void gtk_assert_dialog_init(GTypeInstance* instance, void*) { - GtkAssertDialog* dlg = GTK_ASSERT_DIALOG(instance); - GtkWidget *continuebtn; - + // For GTK+ >= 3.10 create and initialize the dialog from the already assigned template + // or create the dialog "manually" otherwise. +#if GTK_CHECK_VERSION(3,10,0) + if (gtk_check_version(3,10,0) == NULL) { - GtkWidget *vbox, *hbox, *image; - - /* start the main vbox */ - gtk_widget_push_composite_child (); - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 8); - gtk_container_set_border_width (GTK_CONTAINER(vbox), 8); - gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg))), vbox, true, true, 5); - - - /* add the icon+message hbox */ - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); - gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0); - - /* icon */ -#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - image = gtk_image_new_from_icon_name("dialog-error", GTK_ICON_SIZE_DIALOG); -#else - image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_ERROR, GTK_ICON_SIZE_DIALOG); -#endif // GTK >= 3.10 / < 3.10 - gtk_box_pack_start (GTK_BOX(hbox), image, FALSE, FALSE, 12); + GtkAssertDialog* dlg = GTK_ASSERT_DIALOG(instance); + gtk_widget_init_template(GTK_WIDGET(dlg)); + /* complete creation */ + dlg->callback = NULL; + dlg->userdata = NULL; + } + else +#endif // GTK+ >= 3.10 + { + GtkAssertDialog* dlg = GTK_ASSERT_DIALOG(instance); + GtkWidget *continuebtn; + // This code is called only for GTK+ < 3.10 { - GtkWidget *vbox2, *info; + GtkWidget *vbox, *hbox, *image; - /* message */ - vbox2 = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); - gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE, 0); - info = gtk_label_new ("An assertion failed!"); - gtk_box_pack_start (GTK_BOX(vbox2), info, TRUE, TRUE, 8); + /* start the main vbox */ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + gtk_widget_push_composite_child (); + wxGCC_WARNING_RESTORE() + vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 8); + gtk_container_set_border_width (GTK_CONTAINER(vbox), 8); + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg))), vbox, true, true, 5); - /* assert message */ - dlg->message = gtk_label_new (NULL); - gtk_label_set_selectable (GTK_LABEL (dlg->message), TRUE); - gtk_label_set_line_wrap (GTK_LABEL (dlg->message), TRUE); - gtk_label_set_justify (GTK_LABEL (dlg->message), GTK_JUSTIFY_LEFT); - gtk_widget_set_size_request (GTK_WIDGET(dlg->message), 450, -1); - gtk_box_pack_end (GTK_BOX(vbox2), GTK_WIDGET(dlg->message), TRUE, TRUE, 8); + /* add the icon+message hbox */ + hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); + gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0); + + /* icon */ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_ERROR, GTK_ICON_SIZE_DIALOG); + wxGCC_WARNING_RESTORE() + gtk_box_pack_start (GTK_BOX(hbox), image, FALSE, FALSE, 12); + + { + GtkWidget *vbox2, *info; + + /* message */ + vbox2 = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); + gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE, 0); + info = gtk_label_new ("An assertion failed!"); + gtk_box_pack_start (GTK_BOX(vbox2), info, TRUE, TRUE, 8); + + /* assert message */ + dlg->message = gtk_label_new (NULL); + gtk_label_set_selectable (GTK_LABEL (dlg->message), TRUE); + gtk_label_set_line_wrap (GTK_LABEL (dlg->message), TRUE); + gtk_label_set_justify (GTK_LABEL (dlg->message), GTK_JUSTIFY_LEFT); + gtk_widget_set_size_request (GTK_WIDGET(dlg->message), 450, -1); + + gtk_box_pack_end (GTK_BOX(vbox2), GTK_WIDGET(dlg->message), TRUE, TRUE, 8); + } + +#if wxUSE_STACKWALKER + /* add the expander */ + dlg->expander = gtk_expander_new_with_mnemonic ("Back_trace:"); + gtk_box_pack_start (GTK_BOX(vbox), dlg->expander, TRUE, TRUE, 0); + g_signal_connect (dlg->expander, "activate", + G_CALLBACK(gtk_assert_dialog_expander_callback), dlg); +#endif // wxUSE_STACKWALKER } - #if wxUSE_STACKWALKER - /* add the expander */ - dlg->expander = gtk_expander_new_with_mnemonic ("Back_trace:"); - gtk_box_pack_start (GTK_BOX(vbox), dlg->expander, TRUE, TRUE, 0); - g_signal_connect (dlg->expander, "activate", - G_CALLBACK(gtk_assert_dialog_expander_callback), dlg); -#endif // wxUSE_STACKWALKER - } -#if wxUSE_STACKWALKER - { - GtkWidget *hbox, *vbox, *button, *sw; + { + GtkWidget *hbox, *vbox, *button, *sw; - /* create expander's vbox */ - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); - gtk_container_add (GTK_CONTAINER (dlg->expander), vbox); + /* create expander's vbox */ + vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); + gtk_container_add (GTK_CONTAINER (dlg->expander), vbox); - /* add a scrollable window under the expander */ - sw = gtk_scrolled_window_new (NULL, NULL); - gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw), GTK_SHADOW_ETCHED_IN); - gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); - gtk_box_pack_start (GTK_BOX(vbox), sw, TRUE, TRUE, 8); + /* add a scrollable window under the expander */ + sw = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw), GTK_SHADOW_ETCHED_IN); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), GTK_POLICY_AUTOMATIC, + GTK_POLICY_AUTOMATIC); + gtk_box_pack_start (GTK_BOX(vbox), sw, TRUE, TRUE, 8); - /* add the treeview to the scrollable window */ - dlg->treeview = gtk_assert_dialog_create_backtrace_list_model (); - gtk_widget_set_size_request (GTK_WIDGET(dlg->treeview), -1, 180); - gtk_container_add (GTK_CONTAINER (sw), dlg->treeview); + /* add the treeview to the scrollable window */ + dlg->treeview = gtk_assert_dialog_create_backtrace_list_model (); + gtk_widget_set_size_request (GTK_WIDGET(dlg->treeview), -1, 180); + gtk_container_add (GTK_CONTAINER (sw), dlg->treeview); - /* create button's hbox */ - hbox = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL); - gtk_box_pack_end (GTK_BOX(vbox), hbox, FALSE, FALSE, 0); - gtk_button_box_set_layout (GTK_BUTTON_BOX(hbox), GTK_BUTTONBOX_END); + /* create button's hbox */ + hbox = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL); + gtk_box_pack_end (GTK_BOX(vbox), hbox, FALSE, FALSE, 0); + gtk_button_box_set_layout (GTK_BUTTON_BOX(hbox), GTK_BUTTONBOX_END); - /* add the buttons */ - button = gtk_assert_dialog_add_button_to (GTK_BOX(hbox), "Save to _file", -#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - "document-save"); -#else - GTK_STOCK_SAVE); -#endif // GTK >= 3.10 / < 3.10 - g_signal_connect (button, "clicked", - G_CALLBACK(gtk_assert_dialog_save_backtrace_callback), dlg); + /* add the buttons */ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + button = gtk_assert_dialog_add_button_to (GTK_BOX(hbox), "Save to _file", GTK_STOCK_SAVE); + wxGCC_WARNING_RESTORE() + g_signal_connect (button, "clicked", + G_CALLBACK(gtk_assert_dialog_save_backtrace_callback), dlg); - button = gtk_assert_dialog_add_button_to (GTK_BOX(hbox), "Copy to clip_board", -#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - "edit-copy"); -#else - GTK_STOCK_COPY); -#endif // GTK >= 3.10 / < 3.10 - g_signal_connect (button, "clicked", G_CALLBACK(gtk_assert_dialog_copy_callback), dlg); - } + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + button = gtk_assert_dialog_add_button_to (GTK_BOX(hbox), "Copy to clip_board", GTK_STOCK_COPY); + wxGCC_WARNING_RESTORE() + g_signal_connect (button, "clicked", G_CALLBACK(gtk_assert_dialog_copy_callback), dlg); + } #endif // wxUSE_STACKWALKER - /* add the checkbutton */ - dlg->shownexttime = gtk_check_button_new_with_mnemonic("Show this _dialog the next time"); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(dlg->shownexttime), TRUE); - gtk_box_pack_end(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dlg))), dlg->shownexttime, false, true, 8); + /* add the checkbutton */ + dlg->shownexttime = gtk_check_button_new_with_mnemonic("Show this _dialog the next time"); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(dlg->shownexttime), TRUE); + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + gtk_box_pack_end(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dlg))), dlg->shownexttime, false, true, 8); + wxGCC_WARNING_RESTORE() - /* add the stop button */ - gtk_assert_dialog_add_button (dlg, "_Stop", -#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - "application-exit", -#else - GTK_STOCK_QUIT, -#endif // GTK >= 3.10 / < 3.10 - GTK_ASSERT_DIALOG_STOP); + /* add the stop button */ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + gtk_assert_dialog_add_button (dlg, "_Stop", GTK_STOCK_QUIT, GTK_ASSERT_DIALOG_STOP); + wxGCC_WARNING_RESTORE() - /* add the continue button */ - continuebtn = gtk_assert_dialog_add_button (dlg, "_Continue", -#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) - "go-next", -#else - GTK_STOCK_YES, -#endif - GTK_ASSERT_DIALOG_CONTINUE); - gtk_dialog_set_default_response (GTK_DIALOG (dlg), GTK_ASSERT_DIALOG_CONTINUE); - g_signal_connect (continuebtn, "clicked", G_CALLBACK(gtk_assert_dialog_continue_callback), dlg); + /* add the continue button */ + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + continuebtn = gtk_assert_dialog_add_button (dlg, "_Continue", GTK_STOCK_YES, GTK_ASSERT_DIALOG_CONTINUE); + wxGCC_WARNING_RESTORE() + gtk_dialog_set_default_response (GTK_DIALOG (dlg), GTK_ASSERT_DIALOG_CONTINUE); + g_signal_connect (continuebtn, "clicked", G_CALLBACK(gtk_assert_dialog_continue_callback), dlg); - /* complete creation */ - dlg->callback = NULL; - dlg->userdata = NULL; + /* complete creation */ + dlg->callback = NULL; + dlg->userdata = NULL; - /* the resizable property of this window is modified by the expander: - when it's collapsed, the window must be non-resizable! */ - gtk_window_set_resizable (GTK_WINDOW (dlg), FALSE); - gtk_widget_pop_composite_child (); - gtk_widget_show_all (GTK_WIDGET(dlg)); + /* the resizable property of this window is modified by the expander: + when it's collapsed, the window must be non-resizable! */ + gtk_window_set_resizable (GTK_WINDOW (dlg), FALSE); + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + gtk_widget_pop_composite_child (); + wxGCC_WARNING_RESTORE() + gtk_widget_show_all (GTK_WIDGET(dlg)); + } } } From 3de89b2710b6a1724323246067db9ba59fffef13 Mon Sep 17 00:00:00 2001 From: skruse Date: Sun, 24 Dec 2017 15:20:23 +0100 Subject: [PATCH 042/916] Fix auto-sizing multiline wxGrid column labels with empty lines Account for the empty lines explicitly by reserving enough vertical space for them, as wxDC::GetTextExtent() wouldn't do it as it simply returns 0 for empty strings. Closes #18028. --- src/generic/grid.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp index 64b2113ebf..ddc158258a 100644 --- a/src/generic/grid.cpp +++ b/src/generic/grid.cpp @@ -6139,9 +6139,18 @@ void wxGrid::GetTextBoxSize( const wxDC& dc, size_t i; for ( i = 0; i < lines.GetCount(); i++ ) { - dc.GetTextExtent( lines[i], &lineW, &lineH ); - w = wxMax( w, lineW ); - h += lineH; + if ( lines[i].empty() ) + { + // GetTextExtent() would return 0 for empty lines, but we still + // need to account for their height. + h += dc.GetCharHeight(); + } + else + { + dc.GetTextExtent( lines[i], &lineW, &lineH ); + w = wxMax( w, lineW ); + h += lineH; + } } *width = w; From 2a8c290e0de5e657f22a0c13817df65688b01345 Mon Sep 17 00:00:00 2001 From: jonkraber Date: Sun, 24 Dec 2017 15:37:10 +0100 Subject: [PATCH 043/916] Restore previous clipping box in wxDCClipper Remember the clipping box of the previously active clipping region in wxDCClipper ctor and restore it in its dtor. See #13834. --- include/wx/dc.h | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/include/wx/dc.h b/include/wx/dc.h index 7cfe17fb14..dadbe793a3 100644 --- a/include/wx/dc.h +++ b/include/wx/dc.h @@ -1436,16 +1436,30 @@ class WXDLLIMPEXP_CORE wxDCClipper { public: wxDCClipper(wxDC& dc, const wxRegion& r) : m_dc(dc) - { dc.SetClippingRegion(r.GetBox()); } + { + dc.GetClippingBox(m_oldClipRect); + dc.SetClippingRegion(r.GetBox()); + } wxDCClipper(wxDC& dc, const wxRect& r) : m_dc(dc) - { dc.SetClippingRegion(r.x, r.y, r.width, r.height); } + { + dc.GetClippingBox(m_oldClipRect); + dc.SetClippingRegion(r.x, r.y, r.width, r.height); + } wxDCClipper(wxDC& dc, wxCoord x, wxCoord y, wxCoord w, wxCoord h) : m_dc(dc) - { dc.SetClippingRegion(x, y, w, h); } + { + dc.GetClippingBox(m_oldClipRect); + dc.SetClippingRegion(x, y, w, h); + } - ~wxDCClipper() { m_dc.DestroyClippingRegion(); } + ~wxDCClipper() + { + m_dc.DestroyClippingRegion(); + m_dc.SetClippingRegion(m_oldClipRect); + } private: wxDC& m_dc; + wxRect m_oldClipRect; wxDECLARE_NO_COPY_CLASS(wxDCClipper); }; From ba719c576ec72d42186309131d30c111309a2ce9 Mon Sep 17 00:00:00 2001 From: John Roberts Date: Sun, 24 Dec 2017 15:39:40 +0100 Subject: [PATCH 044/916] Document the new wxDCClipper behaviour after last commit change wxDCClipper does restore the (bounding box of the) previously active clipping region now. See #13834. --- interface/wx/dc.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/interface/wx/dc.h b/interface/wx/dc.h index 67ce583325..79490c9c9a 100644 --- a/interface/wx/dc.h +++ b/interface/wx/dc.h @@ -1669,11 +1669,10 @@ public: } @endcode - @note Unlike other similar classes such as wxDCFontChanger, wxDCClipper - currently doesn't restore the previously active clipping region when it - is destroyed but simply resets clipping on the associated wxDC. This - may be changed in the future wxWidgets versions but has to be taken - into account explicitly in the current one. + @note Since 3.1.1 wxDCClipper restores the previously active clipping + region when it is destroyed. Previously it reset clipping on the + associated wxDC and this has to be taken into account explicitly in + previous wxWidgets versions. @library{wxcore} @category{gdi} From 7f52ff751f377ab616550fdf9dbbfeff2f808332 Mon Sep 17 00:00:00 2001 From: jonkraber Date: Sun, 24 Dec 2017 15:43:20 +0100 Subject: [PATCH 045/916] Fix clipping of cell contents in wxGrid Use wxDCClipper, now that it doesn't lose the previously set clipping region any more, in wxGridCellStringRenderer::Draw() to ensure that we don't overflow the area allocated for the cell. Closes #17872. --- src/generic/grid.cpp | 5 ++++- src/generic/gridctrl.cpp | 4 +--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp index 64b2113ebf..37041f5d1d 100644 --- a/src/generic/grid.cpp +++ b/src/generic/grid.cpp @@ -1871,7 +1871,10 @@ void wxGrid::Render( wxDC& dc, dc.DrawRectangle( pointOffSet, sizeCells ); // draw cells - DrawGridCellArea( dc, renderCells ); + { + wxDCClipper clipper( dc, wxRect(pointOffSet, sizeCells) ); + DrawGridCellArea( dc, renderCells ); + } // draw grid lines if ( style & wxGRID_DRAW_CELL_LINES ) diff --git a/src/generic/gridctrl.cpp b/src/generic/gridctrl.cpp index 36ff071777..ecd8ac5d13 100644 --- a/src/generic/gridctrl.cpp +++ b/src/generic/gridctrl.cpp @@ -630,8 +630,7 @@ void wxGridCellStringRenderer::Draw(wxGrid& grid, for (int i = col + cell_cols; i <= col_end; i++) { clip.width = grid.GetColSize(i) - 1; - dc.DestroyClippingRegion(); - dc.SetClippingRegion(clip); + wxDCClipper clipper(dc, clip); SetTextColoursAndFont(grid, attr, dc, grid.IsInSelection(row,i)); @@ -644,7 +643,6 @@ void wxGridCellStringRenderer::Draw(wxGrid& grid, rect = rectCell; rect.Inflate(-1); rect.width++; - dc.DestroyClippingRegion(); } } From f36973875ead865f0ca251b57971255cd9f73777 Mon Sep 17 00:00:00 2001 From: John Roberts Date: Sun, 24 Dec 2017 15:54:51 +0100 Subject: [PATCH 046/916] Silence uninitialized variable warning in wxMac PanGestureEvent Even though the value of this variable is not actually used in this case, we still must initialize it to something before comparing with NSGestureRecognizerState{Began,Ended} below. Closes https://github.com/wxWidgets/wxWidgets/pull/645 --- src/osx/cocoa/window.mm | 1 + 1 file changed, 1 insertion(+) diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index ffe70b4429..de48514a23 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -1646,6 +1646,7 @@ void wxWidgetCocoaImpl::PanGestureEvent(NSPanGestureRecognizer* panGestureRecogn gestureState = NSGestureRecognizerStateBegan; break; case NSGestureRecognizerStateChanged: + gestureState = NSGestureRecognizerStateChanged; break; case NSGestureRecognizerStateEnded: case NSGestureRecognizerStateCancelled: From 87afebd6f280b564dcefc27231dbd1dec9f71162 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 18 Dec 2017 18:28:53 +0100 Subject: [PATCH 047/916] Inline wxStaticBox ctors in wxGTK No real changes, just make the trivial ctors of this class inline for consistency with the new ctor about to be added. --- include/wx/gtk/statbox.h | 11 +++++++++-- src/gtk/statbox.cpp | 15 --------------- 2 files changed, 9 insertions(+), 17 deletions(-) diff --git a/include/wx/gtk/statbox.h b/include/wx/gtk/statbox.h index 7dd72b86ff..b019740133 100644 --- a/include/wx/gtk/statbox.h +++ b/include/wx/gtk/statbox.h @@ -16,14 +16,21 @@ class WXDLLIMPEXP_CORE wxStaticBox : public wxStaticBoxBase { public: - wxStaticBox(); + wxStaticBox() + { + } + wxStaticBox( wxWindow *parent, wxWindowID id, const wxString &label, const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, long style = 0, - const wxString &name = wxStaticBoxNameStr ); + const wxString &name = wxStaticBoxNameStr ) + { + Create( parent, id, label, pos, size, style, name ); + } + bool Create( wxWindow *parent, wxWindowID id, const wxString &label, diff --git a/src/gtk/statbox.cpp b/src/gtk/statbox.cpp index 797d80caf8..1e4a724497 100644 --- a/src/gtk/statbox.cpp +++ b/src/gtk/statbox.cpp @@ -59,21 +59,6 @@ static gboolean expose_event(GtkWidget* widget, GdkEventExpose*, wxWindow*) // wxStaticBox //----------------------------------------------------------------------------- -wxStaticBox::wxStaticBox() -{ -} - -wxStaticBox::wxStaticBox( wxWindow *parent, - wxWindowID id, - const wxString &label, - const wxPoint& pos, - const wxSize& size, - long style, - const wxString& name ) -{ - Create( parent, id, label, pos, size, style, name ); -} - bool wxStaticBox::Create( wxWindow *parent, wxWindowID id, const wxString& label, From aa47c15abdbd582c5a7c78d745412c15e4c41b45 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 19 Dec 2017 21:47:01 +0100 Subject: [PATCH 048/916] Add WXDestroyWithoutChildren() and use it from wxStaticBoxSizer Factor out the code from wxStaticBoxSizer dtor into a wxStaticBox method to improve encapsulation: the static box knows better than another class how to detach its children from it before destroying it. No real changes yet. --- include/wx/statbox.h | 6 ++++++ src/common/sizer.cpp | 15 +-------------- src/common/statboxcmn.cpp | 16 ++++++++++++++++ 3 files changed, 23 insertions(+), 14 deletions(-) diff --git a/include/wx/statbox.h b/include/wx/statbox.h index 968903b009..26f3f0dd14 100644 --- a/include/wx/statbox.h +++ b/include/wx/statbox.h @@ -45,6 +45,12 @@ public: *borderOther = BORDER; } + // This is an internal function currently used by wxStaticBoxSizer only. + // + // Reparent all children of the static box under its parent and destroy the + // box itself. + virtual void WXDestroyWithoutChildren(); + protected: // choose the default border for this window virtual wxBorder GetDefaultBorder() const wxOVERRIDE { return wxBORDER_NONE; } diff --git a/src/common/sizer.cpp b/src/common/sizer.cpp index ce59f88a1e..b0b94674b0 100644 --- a/src/common/sizer.cpp +++ b/src/common/sizer.cpp @@ -2582,20 +2582,7 @@ wxStaticBoxSizer::~wxStaticBoxSizer() // previous wxWidgets versions, so ensure they are left alive. if ( m_staticBox ) - { - // Notice that we must make a copy of the list as it will be changed by - // Reparent() calls in the loop. - const wxWindowList children = m_staticBox->GetChildren(); - wxWindow* const parent = m_staticBox->GetParent(); - for ( wxWindowList::const_iterator i = children.begin(); - i != children.end(); - ++i ) - { - (*i)->Reparent(parent); - } - - delete m_staticBox; - } + m_staticBox->WXDestroyWithoutChildren(); } void wxStaticBoxSizer::RecalcSizes() diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 3539c3c356..68b42d7af4 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -36,6 +36,22 @@ wxStaticBoxBase::wxStaticBoxBase() #endif } +void wxStaticBoxBase::WXDestroyWithoutChildren() +{ + // Notice that we must make a copy of the list as it will be changed by + // Reparent() calls in the loop. + const wxWindowList children = GetChildren(); + wxWindow* const parent = GetParent(); + for ( wxWindowList::const_iterator i = children.begin(); + i != children.end(); + ++i ) + { + (*i)->Reparent(parent); + } + + delete this; +} + // ---------------------------------------------------------------------------- // XTI // ---------------------------------------------------------------------------- From 29bd25b757a9e18888f43be551367a8ac812665e Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 19 Dec 2017 22:07:15 +0100 Subject: [PATCH 049/916] Add GTKDoApplyWidgetStyle() helper This allows to call the protected wxWindowGTK::DoApplyWidgetStyle() method when it's really necessary, e.g. when forwarding to it from DoApplyWidgetStyle() implementation for another window. --- include/wx/gtk/window.h | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/include/wx/gtk/window.h b/include/wx/gtk/window.h index fd3f683491..d7b55ae685 100644 --- a/include/wx/gtk/window.h +++ b/include/wx/gtk/window.h @@ -206,6 +206,15 @@ public: virtual void GTKHandleRealized(); void GTKHandleUnrealize(); + // Apply the widget style to the given window. Should normally only be + // called from the overridden DoApplyWidgetStyle() implementation in + // another window and exists solely to provide access to protected + // DoApplyWidgetStyle() when it's really needed. + static void GTKDoApplyWidgetStyle(wxWindowGTK* win, GtkRcStyle *style) + { + win->DoApplyWidgetStyle(style); + } + protected: // for controls composed of multiple GTK widgets, return true to eliminate // spurious focus events if the focus changes between GTK+ children within @@ -426,8 +435,11 @@ protected: void GTKApplyWidgetStyle(bool forceStyle = false); - // helper function to ease native widgets wrapping, called by - // ApplyWidgetStyle -- override this, not ApplyWidgetStyle + // Helper function to ease native widgets wrapping, called by + // GTKApplyWidgetStyle() and supposed to be overridden, not called. + // + // And if you actually need to call it, e.g. to propagate style change to a + // composite control, use public static GTKDoApplyWidgetStyle(). virtual void DoApplyWidgetStyle(GtkRcStyle *style); void GTKApplyStyle(GtkWidget* widget, GtkRcStyle* style); From 7c849276f884de1471e56b3b262e408dcbf20cec Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 19 Dec 2017 21:29:32 +0100 Subject: [PATCH 050/916] Add support for using arbitrary windows as wxStaticBox labels This commit implements the new feature in wxGTK and updates the sample and the documentation. --- docs/changes.txt | 1 + docs/doxygen/mainpages/const_cpp.h | 2 + include/wx/gtk/statbox.h | 58 ++++++++++++++++++++++- interface/wx/statbox.h | 58 ++++++++++++++++++++++- samples/widgets/static.cpp | 49 +++++++++++++++++-- src/gtk/statbox.cpp | 75 +++++++++++++++++++++++++----- 6 files changed, 226 insertions(+), 17 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 676a77fc19..58207bbf06 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -113,6 +113,7 @@ All (GUI): - Allow wxWebView::RunScript() return values (Jose Lorenzo, GSoC 2017). - Allow using fractional pen widths with wxGraphicsContext (Adrien Tétar). - Add support for loading fonts from external files (Arthur Norman). +- Add support for using arbitrary windows as wxStaticBox labels. - Improve wxSVGFileDC to support more of wxDC API (Maarten Bent). - Add support for wxAuiManager and wxAuiPaneInfo to XRC (Andrea Zanellato). - Add support for wxSL_MIN_MAX_LABELS and wxSL_VALUE_LABEL to XRC (ousnius). diff --git a/docs/doxygen/mainpages/const_cpp.h b/docs/doxygen/mainpages/const_cpp.h index 1756d18a82..6114326616 100644 --- a/docs/doxygen/mainpages/const_cpp.h +++ b/docs/doxygen/mainpages/const_cpp.h @@ -194,6 +194,8 @@ Currently the following symbols exist: @itemdef{wxHAS_RAW_KEY_CODES, Defined if raw key codes (see wxKeyEvent::GetRawKeyCode are supported.} @itemdef{wxHAS_REGEX_ADVANCED, Defined if advanced syntax is available in wxRegEx.} @itemdef{wxHAS_TASK_BAR_ICON, Defined if wxTaskBarIcon is available on the current platform.} +@itemdef{wxHAS_WINDOW_LABEL_IN_STATIC_BOX, Defined if wxStaticBox::Create() + overload taking @c wxWindow* instead of the text label is available on the current platform.} @itemdef{wxHAS_MODE_T, Defined when wxWidgets defines @c mode_t typedef for the compilers not providing it. If another library used in a wxWidgets application, such as ACE (http://www.cs.wustl.edu/~schmidt/ACE.html), also diff --git a/include/wx/gtk/statbox.h b/include/wx/gtk/statbox.h index b019740133..64255f242d 100644 --- a/include/wx/gtk/statbox.h +++ b/include/wx/gtk/statbox.h @@ -18,6 +18,7 @@ class WXDLLIMPEXP_CORE wxStaticBox : public wxStaticBoxBase public: wxStaticBox() { + Init(); } wxStaticBox( wxWindow *parent, @@ -28,6 +29,21 @@ public: long style = 0, const wxString &name = wxStaticBoxNameStr ) { + Init(); + + Create( parent, id, label, pos, size, style, name ); + } + + wxStaticBox( wxWindow *parent, + wxWindowID id, + wxWindow* label, + const wxPoint &pos = wxDefaultPosition, + const wxSize &size = wxDefaultSize, + long style = 0, + const wxString &name = wxStaticBoxNameStr ) + { + Init(); + Create( parent, id, label, pos, size, style, name ); } @@ -37,7 +53,21 @@ public: const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, long style = 0, - const wxString &name = wxStaticBoxNameStr ); + const wxString &name = wxStaticBoxNameStr ) + { + return DoCreate( parent, id, &label, NULL, pos, size, style, name ); + } + + bool Create( wxWindow *parent, + wxWindowID id, + wxWindow* label, + const wxPoint &pos = wxDefaultPosition, + const wxSize &size = wxDefaultSize, + long style = 0, + const wxString &name = wxStaticBoxNameStr ) + { + return DoCreate( parent, id, NULL, label, pos, size, style, name ); + } virtual void SetLabel( const wxString &label ) wxOVERRIDE; @@ -52,13 +82,39 @@ public: virtual void AddChild( wxWindowBase *child ) wxOVERRIDE; + virtual void WXDestroyWithoutChildren() wxOVERRIDE; + protected: + // Common part of all ctors. + void Init() + { + m_labelWin = NULL; + } + + // Common implementation of both Create() overloads: exactly one of + // labelStr and labelWin parameters must be non-null. + bool DoCreate(wxWindow *parent, + wxWindowID id, + const wxString* labelStr, + wxWindow* labelWin, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name); + virtual bool GTKWidgetNeedsMnemonic() const wxOVERRIDE; virtual void GTKWidgetDoSetMnemonic(GtkWidget* w) wxOVERRIDE; void DoApplyWidgetStyle(GtkRcStyle *style) wxOVERRIDE; + // If non-null, the window used as our label. This window is owned by the + // static box and will be deleted when it is. + wxWindow* m_labelWin; + wxDECLARE_DYNAMIC_CLASS(wxStaticBox); }; +// Indicate that we have the ctor overload taking wxWindow as label. +#define wxHAS_WINDOW_LABEL_IN_STATIC_BOX + #endif // _WX_GTKSTATICBOX_H_ diff --git a/interface/wx/statbox.h b/interface/wx/statbox.h index 46004f20f4..8627255027 100644 --- a/interface/wx/statbox.h +++ b/interface/wx/statbox.h @@ -84,6 +84,42 @@ public: long style = 0, const wxString& name = wxStaticBoxNameStr); + /** + Constructor for a static box using the given window as label. + + This constructor takes a pointer to an arbitrary window (although + usually a wxCheckBox or a wxRadioButton) instead of just the usual text + label and puts this window at the top of the box at the place where the + label would be shown. + + The @a label window must be a non-null, fully created window and will + become a child of this wxStaticBox, i.e. it will be owned by this + control and will be deleted when the wxStaticBox itself is deleted. + + An example of creating a wxStaticBox with window as a label: + @code + void MyFrame::CreateControls() + { + wxPanel* panel = new wxPanel(this); + wxCheckBox* checkbox = new wxCheckBox(panel, wxID_ANY, "Box checkbox"); + wxStaticBox* box = new wxStaticBox(panel, wxID_ANY, checkbox); + ... + } + @endcode + + Currently this constructor is only available in wxGTK, use + @c wxHAS_WINDOW_LABEL_IN_STATIC_BOX to check whether it can be used at + compile-time. + + @since 3.1.1 + */ + wxStaticBox(wxWindow* parent, wxWindowID id, + wxWindow* label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxStaticBoxNameStr); + /** Destructor, destroying the group box. */ @@ -97,5 +133,25 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = wxStaticBoxNameStr); -}; + /** + Creates the static box with the window as a label. + + This method can only be called for an object created using its default + constructor. + + See the constructor documentation for more details. + + Currently this overload is only available in wxGTK, use + @c wxHAS_WINDOW_LABEL_IN_STATIC_BOX to check whether it can be used at + compile-time. + + @since 3.1.1 + */ + wxStaticBox(wxWindow* parent, wxWindowID id, + wxWindow* label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxStaticBoxNameStr); +}; diff --git a/samples/widgets/static.cpp b/samples/widgets/static.cpp index 36827f50ae..5e16c71d89 100644 --- a/samples/widgets/static.cpp +++ b/samples/widgets/static.cpp @@ -116,6 +116,9 @@ public: protected: // event handlers void OnCheckOrRadioBox(wxCommandEvent& event); +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + void OnBoxCheckBox(wxCommandEvent& event); +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX void OnButtonReset(wxCommandEvent& event); void OnButtonBoxText(wxCommandEvent& event); @@ -137,6 +140,9 @@ protected: // the check/radio boxes for styles wxCheckBox *m_chkVert, *m_chkGeneric, +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + *m_chkBoxWithCheck, +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX *m_chkAutoResize, *m_chkEllipsize; @@ -207,6 +213,9 @@ StaticWidgetsPage::StaticWidgetsPage(WidgetsBookCtrl *book, m_chkVert = m_chkAutoResize = m_chkGeneric = +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + m_chkBoxWithCheck = +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX #if wxUSE_MARKUP m_chkGreen = #endif // wxUSE_MARKUP @@ -243,6 +252,9 @@ void StaticWidgetsPage::CreateContent() m_chkGeneric = CreateCheckBoxAndAddToSizer(sizerLeft, "&Generic wxStaticText"); +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + m_chkBoxWithCheck = CreateCheckBoxAndAddToSizer(sizerLeft, "Checkable &box"); +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX m_chkVert = CreateCheckBoxAndAddToSizer(sizerLeft, "&Vertical line"); m_chkAutoResize = CreateCheckBoxAndAddToSizer(sizerLeft, "&Fit to text"); sizerLeft->Add(5, 5, 0, wxGROW | wxALL, 5); // spacer @@ -367,6 +379,9 @@ void StaticWidgetsPage::CreateContent() void StaticWidgetsPage::Reset() { m_chkGeneric->SetValue(false); +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + m_chkBoxWithCheck->SetValue(false); +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX m_chkVert->SetValue(false); m_chkAutoResize->SetValue(true); m_chkEllipsize->SetValue(true); @@ -469,10 +484,28 @@ void StaticWidgetsPage::CreateStatic() flagsText |= align; flagsBox |= align; - wxStaticBox *staticBox = new wxStaticBox(this, wxID_ANY, - m_textBox->GetValue(), - wxDefaultPosition, wxDefaultSize, - flagsBox); + wxStaticBox *staticBox; +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + if ( m_chkBoxWithCheck->GetValue() ) + { + wxCheckBox* const label = new wxCheckBox(this, wxID_ANY, + m_textBox->GetValue()); + label->Bind(wxEVT_CHECKBOX, &StaticWidgetsPage::OnBoxCheckBox, this); + + staticBox = new wxStaticBox(this, wxID_ANY, + label, + wxDefaultPosition, wxDefaultSize, + flagsBox); + } + else // normal static box +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX + { + staticBox = new wxStaticBox(this, wxID_ANY, + m_textBox->GetValue(), + wxDefaultPosition, wxDefaultSize, + flagsBox); + } + m_sizerStatBox = new wxStaticBoxSizer(staticBox, isVert ? wxHORIZONTAL : wxVERTICAL); @@ -559,6 +592,14 @@ void StaticWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& event) CreateStatic(); } +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX +void StaticWidgetsPage::OnBoxCheckBox(wxCommandEvent& event) +{ + wxLogMessage("Box check box has been %schecked", + event.IsChecked() ? "": "un"); +} +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX + void StaticWidgetsPage::OnButtonBoxText(wxCommandEvent& WXUNUSED(event)) { m_sizerStatBox->GetStaticBox()->SetLabel(m_textBox->GetValue()); diff --git a/src/gtk/statbox.cpp b/src/gtk/statbox.cpp index 1e4a724497..0d144e128b 100644 --- a/src/gtk/statbox.cpp +++ b/src/gtk/statbox.cpp @@ -59,13 +59,14 @@ static gboolean expose_event(GtkWidget* widget, GdkEventExpose*, wxWindow*) // wxStaticBox //----------------------------------------------------------------------------- -bool wxStaticBox::Create( wxWindow *parent, - wxWindowID id, - const wxString& label, - const wxPoint& pos, - const wxSize& size, - long style, - const wxString& name ) +bool wxStaticBox::DoCreate(wxWindow *parent, + wxWindowID id, + const wxString* labelStr, + wxWindow* labelWin, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name) { if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) @@ -74,11 +75,41 @@ bool wxStaticBox::Create( wxWindow *parent, return false; } - m_widget = GTKCreateFrame(label); - g_object_ref(m_widget); + if ( labelStr ) + { + m_widget = GTKCreateFrame(*labelStr); - // only base SetLabel needs to be called after GTKCreateFrame - wxControl::SetLabel(label); + // only base SetLabel needs to be called after GTKCreateFrame + wxControl::SetLabel(*labelStr); + } + else // Use the given window as the label. + { + wxCHECK_MSG( labelWin, false, wxS("Label window can't be null") ); + + GtkWidget* const labelWidget = labelWin->m_widget; + wxCHECK_MSG( labelWidget, false, wxS("Label window must be created") ); + + // The widget must not have any parent at GTK+ level or setting it as + // label widget would fail. + GtkWidget* const oldParent = gtk_widget_get_parent(labelWidget); + gtk_container_remove(GTK_CONTAINER(oldParent), labelWidget); + gtk_widget_unparent(labelWidget); + + // It also should be our child at wx API level, but without being our + // child in wxGTK, i.e. it must not be added to the GtkFrame container, + // so we can't call Reparent() here (not even wxWindowBase version, as + // it still would end up in our overridden AddChild()), nor the normal + // AddChild() for the same reason. + labelWin->GetParent()->RemoveChild(labelWin); + wxWindowBase::AddChild(labelWin); + + m_labelWin = labelWin; + + m_widget = gtk_frame_new(NULL); + gtk_frame_set_label_widget(GTK_FRAME(m_widget), labelWidget); + } + + g_object_ref(m_widget); m_parent->DoAddChild( this ); @@ -121,16 +152,38 @@ void wxStaticBox::AddChild( wxWindowBase *child ) wxStaticBoxBase::AddChild(child); } +void wxStaticBox::WXDestroyWithoutChildren() +{ + // The label window doesn't count as our child, it's really a part of + // static box itself and it makes no sense to leave it alive when the box + // is destroyed, so do it even when it's supposed to be destroyed without + // destroying its children. + if ( m_labelWin ) + { + // By deleting it here, we indirectly remove this window from the list + // of our children and hence prevent the base class version of this + // method from reparenting it and thus keeping it alive. + delete m_labelWin; + m_labelWin = NULL; + } + + wxStaticBoxBase::WXDestroyWithoutChildren(); +} + void wxStaticBox::SetLabel( const wxString& label ) { wxCHECK_RET( m_widget != NULL, wxT("invalid staticbox") ); + wxCHECK_RET( !m_labelWin, wxS("Doesn't make sense when using label window") ); + GTKSetLabelForFrame(GTK_FRAME(m_widget), label); } void wxStaticBox::DoApplyWidgetStyle(GtkRcStyle *style) { GTKFrameApplyWidgetStyle(GTK_FRAME(m_widget), style); + if ( m_labelWin ) + GTKDoApplyWidgetStyle(m_labelWin, style); if (m_wxwindow) GTKApplyStyle(m_wxwindow, style); From 8c06a24da4ffdb0e4f3d9713491edb45f9fac318 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 00:03:55 +0100 Subject: [PATCH 051/916] Move m_labelWin to wxStaticBoxBase itself It will be reused by all platforms and is not specific to wxGTK. This also means WXDestroyWithoutChildren() doesn't need to be virtual any longer. --- include/wx/gtk/statbox.h | 17 ----------------- include/wx/statbox.h | 6 +++++- src/common/statboxcmn.cpp | 12 +++++++++++- src/gtk/statbox.cpp | 18 ------------------ 4 files changed, 16 insertions(+), 37 deletions(-) diff --git a/include/wx/gtk/statbox.h b/include/wx/gtk/statbox.h index 64255f242d..cce262cbae 100644 --- a/include/wx/gtk/statbox.h +++ b/include/wx/gtk/statbox.h @@ -18,7 +18,6 @@ class WXDLLIMPEXP_CORE wxStaticBox : public wxStaticBoxBase public: wxStaticBox() { - Init(); } wxStaticBox( wxWindow *parent, @@ -29,8 +28,6 @@ public: long style = 0, const wxString &name = wxStaticBoxNameStr ) { - Init(); - Create( parent, id, label, pos, size, style, name ); } @@ -42,8 +39,6 @@ public: long style = 0, const wxString &name = wxStaticBoxNameStr ) { - Init(); - Create( parent, id, label, pos, size, style, name ); } @@ -82,15 +77,7 @@ public: virtual void AddChild( wxWindowBase *child ) wxOVERRIDE; - virtual void WXDestroyWithoutChildren() wxOVERRIDE; - protected: - // Common part of all ctors. - void Init() - { - m_labelWin = NULL; - } - // Common implementation of both Create() overloads: exactly one of // labelStr and labelWin parameters must be non-null. bool DoCreate(wxWindow *parent, @@ -107,10 +94,6 @@ protected: void DoApplyWidgetStyle(GtkRcStyle *style) wxOVERRIDE; - // If non-null, the window used as our label. This window is owned by the - // static box and will be deleted when it is. - wxWindow* m_labelWin; - wxDECLARE_DYNAMIC_CLASS(wxStaticBox); }; diff --git a/include/wx/statbox.h b/include/wx/statbox.h index 26f3f0dd14..360881031a 100644 --- a/include/wx/statbox.h +++ b/include/wx/statbox.h @@ -49,12 +49,16 @@ public: // // Reparent all children of the static box under its parent and destroy the // box itself. - virtual void WXDestroyWithoutChildren(); + void WXDestroyWithoutChildren(); protected: // choose the default border for this window virtual wxBorder GetDefaultBorder() const wxOVERRIDE { return wxBORDER_NONE; } + // If non-null, the window used as our label. This window is owned by the + // static box and will be deleted when it is. + wxWindow* m_labelWin; + wxDECLARE_NO_COPY_CLASS(wxStaticBoxBase); }; diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 68b42d7af4..62c4b50134 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -31,6 +31,8 @@ extern WXDLLEXPORT_DATA(const char) wxStaticBoxNameStr[] = "groupBox"; wxStaticBoxBase::wxStaticBoxBase() { + m_labelWin = NULL; + #ifndef __WXGTK__ m_container.DisableSelfFocus(); #endif @@ -46,7 +48,15 @@ void wxStaticBoxBase::WXDestroyWithoutChildren() i != children.end(); ++i ) { - (*i)->Reparent(parent); + // The label window doesn't count as our child, it's really a part of + // static box itself and it makes no sense to leave it alive when the + // box is destroyed, so do it even when it's supposed to be destroyed + // without destroying its children -- by not reparenting it, we ensure + // that it's destroyed when this object itself is below. + if ( *i != m_labelWin ) + { + (*i)->Reparent(parent); + } } delete this; diff --git a/src/gtk/statbox.cpp b/src/gtk/statbox.cpp index 0d144e128b..6979591287 100644 --- a/src/gtk/statbox.cpp +++ b/src/gtk/statbox.cpp @@ -152,24 +152,6 @@ void wxStaticBox::AddChild( wxWindowBase *child ) wxStaticBoxBase::AddChild(child); } -void wxStaticBox::WXDestroyWithoutChildren() -{ - // The label window doesn't count as our child, it's really a part of - // static box itself and it makes no sense to leave it alive when the box - // is destroyed, so do it even when it's supposed to be destroyed without - // destroying its children. - if ( m_labelWin ) - { - // By deleting it here, we indirectly remove this window from the list - // of our children and hence prevent the base class version of this - // method from reparenting it and thus keeping it alive. - delete m_labelWin; - m_labelWin = NULL; - } - - wxStaticBoxBase::WXDestroyWithoutChildren(); -} - void wxStaticBox::SetLabel( const wxString& label ) { wxCHECK_RET( m_widget != NULL, wxT("invalid staticbox") ); From 91875045ac841f2c1d9d7d6b1c7539ba7d111b06 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 00:06:08 +0100 Subject: [PATCH 052/916] Don't make wxStaticBoxBase::GetBordersForSizer() inline Move the function definition to the source file, there doesn't seem to be any reason to keep it in the header. --- include/wx/statbox.h | 8 +------- src/common/statboxcmn.cpp | 8 ++++++++ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/include/wx/statbox.h b/include/wx/statbox.h index 360881031a..0e6e4f3ac3 100644 --- a/include/wx/statbox.h +++ b/include/wx/statbox.h @@ -37,13 +37,7 @@ public: // // the top border is the margin at the top (where the title is), // borderOther is the margin on all other sides - virtual void GetBordersForSizer(int *borderTop, int *borderOther) const - { - const int BORDER = FromDIP(5); // FIXME: hardcoded value - - *borderTop = GetLabel().empty() ? BORDER : GetCharHeight(); - *borderOther = BORDER; - } + virtual void GetBordersForSizer(int *borderTop, int *borderOther) const; // This is an internal function currently used by wxStaticBoxSizer only. // diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 62c4b50134..c8427783f3 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -38,6 +38,14 @@ wxStaticBoxBase::wxStaticBoxBase() #endif } +void wxStaticBoxBase::GetBordersForSizer(int *borderTop, int *borderOther) const +{ + const int BORDER = FromDIP(5); // FIXME: hardcoded value + + *borderTop = GetLabel().empty() ? BORDER : GetCharHeight(); + *borderOther = BORDER; +} + void wxStaticBoxBase::WXDestroyWithoutChildren() { // Notice that we must make a copy of the list as it will be changed by From 67225fb07edb94deefc8d2e5b05431ad5e2e2d98 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 00:29:03 +0100 Subject: [PATCH 053/916] Remove borders from wxStaticBoxSizer items in the widgets sample This allows to see better whether the borders returned by wxStaticBox::GetBordersForSizer() are correct. --- samples/widgets/static.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/widgets/static.cpp b/samples/widgets/static.cpp index 5e16c71d89..8869bab39d 100644 --- a/samples/widgets/static.cpp +++ b/samples/widgets/static.cpp @@ -551,12 +551,12 @@ void StaticWidgetsPage::CreateStatic() isVert ? wxLI_VERTICAL : wxLI_HORIZONTAL); #endif // wxUSE_STATLINE - m_sizerStatBox->Add(m_statText, 0, wxGROW | wxALL, 5); + m_sizerStatBox->Add(m_statText, 0, wxGROW); #if wxUSE_STATLINE - m_sizerStatBox->Add(m_statLine, 0, wxGROW | wxALL, 5); + m_sizerStatBox->Add(m_statLine, 0, wxGROW | wxTOP | wxBOTTOM, 10); #endif // wxUSE_STATLINE #if wxUSE_MARKUP - m_sizerStatBox->Add(m_statMarkup, 0, wxALL, 5); + m_sizerStatBox->Add(m_statMarkup); #endif // wxUSE_MARKUP m_sizerStatic->Add(m_sizerStatBox, 0, wxGROW); From b34a1c036a18e1bf90cd81b264ee9dfe1d5382f3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 00:30:12 +0100 Subject: [PATCH 054/916] Account for label window in wxStaticBoxBase::GetBordersForSizer() Take the window used as label into account in the default implementation of this method. --- src/common/statboxcmn.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index c8427783f3..4db934146a 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -42,7 +42,15 @@ void wxStaticBoxBase::GetBordersForSizer(int *borderTop, int *borderOther) const { const int BORDER = FromDIP(5); // FIXME: hardcoded value - *borderTop = GetLabel().empty() ? BORDER : GetCharHeight(); + if ( m_labelWin ) + { + *borderTop = m_labelWin->GetSize().y; + } + else + { + *borderTop = GetLabel().empty() ? BORDER : GetCharHeight(); + } + *borderOther = BORDER; } From 23a830ae16de33d30ee184097e42b5998c3ebb73 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 22:53:12 +0100 Subject: [PATCH 055/916] Use symbolic names in wxMSW wxStaticBox drawing code Introduce symbolic constants instead of using raw magic numbers. No real changes and these numbers are still as magic as before, but at least they will be easier to change now. --- src/msw/statbox.cpp | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index 9ae5c230df..bcc79cd1f7 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -54,6 +54,21 @@ #define TMT_FONT 210 +namespace +{ + +// Offset of the first pixel of the label from the box left border. +// +// FIXME: value is hardcoded as this is what it is on my system, no idea if +// it's true everywhere +const int LABEL_HORZ_OFFSET = 9; + +// Extra borders around the label on left/right and bottom sides. +const int LABEL_HORZ_BORDER = 2; +const int LABEL_VERT_BORDER = 2; + +} // anonymous namespace + // ---------------------------------------------------------------------------- // wxWin macros // ---------------------------------------------------------------------------- @@ -443,23 +458,17 @@ void wxStaticBox::PaintForeground(wxDC& dc, const RECT&) dc.GetTextExtent(wxStripMenuCodes(label, wxStrip_Mnemonics), &width, &height); - int x; - int y = height; - // first we need to correctly paint the background of the label // as Windows ignores the brush offset when doing it - // - // FIXME: value of x is hardcoded as this is what it is on my system, - // no idea if it's true everywhere - RECT dimensions = {0, 0, 0, y}; - x = 9; + const int x = LABEL_HORZ_OFFSET; + RECT dimensions = { x, 0, 0, height }; dimensions.left = x; dimensions.right = x + width; // need to adjust the rectangle to cover all the label background - dimensions.left -= 2; - dimensions.right += 2; - dimensions.bottom += 2; + dimensions.left -= LABEL_HORZ_BORDER; + dimensions.right += LABEL_HORZ_BORDER; + dimensions.bottom += LABEL_VERT_BORDER; if ( UseBgCol() ) { @@ -489,7 +498,7 @@ void wxStaticBox::PaintForeground(wxDC& dc, const RECT&) } // now draw the text - RECT rc2 = { x, 0, x + width, y }; + RECT rc2 = { x, 0, x + width, height }; ::DrawText(hdc, label.t_str(), label.length(), &rc2, drawTextFlags); } From dfba063d53b0183196f1be7c49be18840ea475d8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 23:01:11 +0100 Subject: [PATCH 056/916] Adjust wxMSW wxStaticBox pixel constants for DPI Use FromDIP() with all constants expressed in pixels, this should result in better appearance when using high DPI. --- src/msw/statbox.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index bcc79cd1f7..167de6c152 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -460,15 +460,15 @@ void wxStaticBox::PaintForeground(wxDC& dc, const RECT&) // first we need to correctly paint the background of the label // as Windows ignores the brush offset when doing it - const int x = LABEL_HORZ_OFFSET; + const int x = FromDIP(LABEL_HORZ_OFFSET); RECT dimensions = { x, 0, 0, height }; dimensions.left = x; dimensions.right = x + width; // need to adjust the rectangle to cover all the label background - dimensions.left -= LABEL_HORZ_BORDER; - dimensions.right += LABEL_HORZ_BORDER; - dimensions.bottom += LABEL_VERT_BORDER; + dimensions.left -= FromDIP(LABEL_HORZ_BORDER); + dimensions.right += FromDIP(LABEL_HORZ_BORDER); + dimensions.bottom += FromDIP(LABEL_VERT_BORDER); if ( UseBgCol() ) { From 900c6d5d75ae980c3ebf03c70bebcc319a44bfe2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 22:54:44 +0100 Subject: [PATCH 057/916] Slightly decrease the top margin of wxMSW wxStaticBox Use the same offset we already use in the drawing code, this is a bit less arbitrary than what we did before and looks slightly better too. --- src/msw/statbox.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index 167de6c152..a178c4abcb 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -167,7 +167,7 @@ void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const wxStaticBoxBase::GetBordersForSizer(borderTop, borderOther); // need extra space, don't know how much but this seems to be enough - *borderTop += GetCharHeight()/3; + *borderTop += FromDIP(LABEL_VERT_BORDER); } WXLRESULT wxStaticBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam) From 4a4d1643192d3d485ff073707ae941e4480132e3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 20 Dec 2017 23:29:07 +0100 Subject: [PATCH 058/916] Keep attributes after recreating static controls in widgets sample Preserve the colours, font etc after recreating the widgets to facilitate testing. --- samples/widgets/static.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/samples/widgets/static.cpp b/samples/widgets/static.cpp index 8869bab39d..71b42b59b4 100644 --- a/samples/widgets/static.cpp +++ b/samples/widgets/static.cpp @@ -569,6 +569,8 @@ void StaticWidgetsPage::CreateStatic() staticBox->Connect(wxEVT_LEFT_UP, wxMouseEventHandler(StaticWidgetsPage::OnMouseEvent), NULL, this); + + SetUpWidget(); } // ---------------------------------------------------------------------------- From 598c62a26715e3e6ebdb1c9485b437fba649a40f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 21 Dec 2017 13:46:32 +0100 Subject: [PATCH 059/916] Don't change wxCompositeWindow size from SetLayoutDirection() Remove wxSIZE_AUTO from the SetSize() call, this was completely unnecessary and unexpectedly (and wrongly) resized composite windows managed by sizers as SetLayoutDirection() side-effect. --- include/wx/compositewin.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/wx/compositewin.h b/include/wx/compositewin.h index b443eaceb5..48d0ae344e 100644 --- a/include/wx/compositewin.h +++ b/include/wx/compositewin.h @@ -109,7 +109,7 @@ public: // SetLayoutDirection(wxLayout_Default) wouldn't result in a re-layout // neither, but then we're not supposed to be called with it at all. if ( dir != wxLayout_Default ) - this->SetSize(-1, -1, -1, -1, wxSIZE_AUTO | wxSIZE_FORCE); + this->SetSize(-1, -1, -1, -1, wxSIZE_FORCE); } #if wxUSE_TOOLTIPS From 59ca9b93a0b36200e1bc15f39c85f78bb0ee7d38 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 21 Dec 2017 13:48:30 +0100 Subject: [PATCH 060/916] Make wxCompositeWindow ctor protected As this class is only supposed to be used as a base class, its ctor doesn't need to be, and hence ought not to be, public. Also update an outdated comment stating that the ctor didn't do anything when it, in fact, does perform an important task. --- include/wx/compositewin.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/include/wx/compositewin.h b/include/wx/compositewin.h index 48d0ae344e..ec26a414b5 100644 --- a/include/wx/compositewin.h +++ b/include/wx/compositewin.h @@ -33,17 +33,6 @@ class wxCompositeWindow : public W public: typedef W BaseWindowClass; - // Default ctor doesn't do anything. - wxCompositeWindow() - { - this->Connect - ( - wxEVT_CREATE, - wxWindowCreateEventHandler(wxCompositeWindow::OnWindowCreate) - ); - - } - // Override all wxWindow methods which must be forwarded to the composite // window parts. @@ -136,6 +125,17 @@ public: wxSetFocusToChild(this, NULL); } +protected: + // Default ctor sets things up for handling children events correctly. + wxCompositeWindow() + { + this->Connect + ( + wxEVT_CREATE, + wxWindowCreateEventHandler(wxCompositeWindow::OnWindowCreate) + ); + } + private: // Must be implemented by the derived class to return all children to which // the public methods we override should forward to. From 3ff9846a227b8eba066d12cedbc86d58cd61c192 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 21 Dec 2017 19:03:12 +0100 Subject: [PATCH 061/916] Document alignment styles in wxStaticBox Mention that they work in wxGTK, even if it seems to be the only platform supporting them currently. --- interface/wx/statbox.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/interface/wx/statbox.h b/interface/wx/statbox.h index 8627255027..d57949ee9b 100644 --- a/interface/wx/statbox.h +++ b/interface/wx/statbox.h @@ -71,7 +71,11 @@ public: Checkbox size. If ::wxDefaultSize is specified then a default size is chosen. @param style - Window style. See wxStaticBox. + Window style. There are no wxStaticBox-specific styles, but generic + ::wxALIGN_LEFT, ::wxALIGN_CENTRE_HORIZONTAL and ::wxALIGN_RIGHT can + be used here to change the position of the static box label when + using wxGTK (these styles are ignored under the other platforms + currently). @param name Window name. From 36c4b7651e83752745c1e10f6fe3d742b2ef9942 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 24 Dec 2017 19:54:41 +0100 Subject: [PATCH 062/916] Fix background of wxCheckBoxes inside wxStaticBox in wxMSW Erase background of the partially transparent native child controls, such as wxCheckBox, using our own background colour if we have it instead of using the parent's colour. For some reason, we -- seemingly intentionally, judging from the comment -- didn't do it before, but this meant that checkboxes inside static boxes didn't inherit the box background colour, if it was set, which was ugly and inconsistent with at least wxGTK. So do use our own background if we have it now by just reusing the existing PaintBackground() instead of manually using the parent background brush in WM_PRINTCLIENT handler. --- src/msw/statbox.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index a178c4abcb..6596e1b573 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -204,9 +204,10 @@ WXLRESULT wxStaticBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lPar if ( !HandlePrintClient((WXHDC)wParam) ) { // no, we don't, erase the background ourselves - // (don't use our own) - see PaintBackground for explanation - wxBrush brush(GetParent()->GetBackgroundColour()); - wxFillRect(GetHwnd(), (HDC)wParam, GetHbrushOf(brush)); + RECT rc; + ::GetClientRect(GetHwnd(), &rc); + wxDCTemp dc((WXHDC)wParam); + PaintBackground(dc, rc); } return 0; From 687192d86a52b2779ff0c73a32403c1a0a257385 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 24 Dec 2017 20:07:05 +0100 Subject: [PATCH 063/916] Add support for arbitrary window labels in wxStaticBox to wxMSW Just reparent the label window and position it accordingly and, also, avoid painting over it in MSW-specific code. --- include/wx/msw/statbox.h | 20 ++++++++++++ interface/wx/statbox.h | 2 +- src/msw/statbox.cpp | 66 +++++++++++++++++++++++++++++++++++++--- 3 files changed, 83 insertions(+), 5 deletions(-) diff --git a/include/wx/msw/statbox.h b/include/wx/msw/statbox.h index 87ad173cba..89eb8fcdde 100644 --- a/include/wx/msw/statbox.h +++ b/include/wx/msw/statbox.h @@ -27,6 +27,16 @@ public: Create(parent, id, label, pos, size, style, name); } + wxStaticBox(wxWindow* parent, wxWindowID id, + wxWindow* label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString &name = wxStaticBoxNameStr) + { + Create(parent, id, label, pos, size, style, name); + } + bool Create(wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos = wxDefaultPosition, @@ -34,6 +44,13 @@ public: long style = 0, const wxString& name = wxStaticBoxNameStr); + bool Create(wxWindow *parent, wxWindowID id, + wxWindow* label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxStaticBoxNameStr); + /// Implementation only virtual void GetBordersForSizer(int *borderTop, int *borderOther) const wxOVERRIDE; @@ -66,5 +83,8 @@ protected: wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxStaticBox); }; +// Indicate that we have the ctor overload taking wxWindow as label. +#define wxHAS_WINDOW_LABEL_IN_STATIC_BOX + #endif // _WX_MSW_STATBOX_H_ diff --git a/interface/wx/statbox.h b/interface/wx/statbox.h index d57949ee9b..d7aae13cc0 100644 --- a/interface/wx/statbox.h +++ b/interface/wx/statbox.h @@ -111,7 +111,7 @@ public: } @endcode - Currently this constructor is only available in wxGTK, use + Currently this constructor is only available in wxGTK and wxMSW, use @c wxHAS_WINDOW_LABEL_IN_STATIC_BOX to check whether it can be used at compile-time. diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index 6596e1b573..9ca1b792bd 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -107,6 +107,27 @@ bool wxStaticBox::Create(wxWindow *parent, return true; } +bool wxStaticBox::Create(wxWindow* parent, + wxWindowID id, + wxWindow* labelWin, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name) +{ + wxCHECK_MSG( labelWin, false, wxS("Label window can't be null") ); + + if ( !Create(parent, id, wxString(), pos, size, style, name) ) + return false; + + m_labelWin = labelWin; + m_labelWin->Reparent(this); + + m_labelWin->Move(FromDIP(LABEL_HORZ_OFFSET), 0); + + return true; +} + WXDWORD wxStaticBox::MSWGetStyle(long style, WXDWORD *exstyle) const { long styleWin = wxStaticBoxBase::MSWGetStyle(style, exstyle); @@ -269,7 +290,21 @@ void wxStaticBox::MSWGetRegionWithoutSelf(WXHRGN hRgn, int w, int h) GetBordersForSizer(&borderTop, &border); // top - SubtractRectFromRgn(hrgn, 0, 0, w, borderTop); + if ( m_labelWin ) + { + // Don't exclude the entire rectangle at the top, we do need to paint + // the background of the gap between the label window and the box + // frame. + const wxRect labelRect = m_labelWin->GetRect(); + const int gap = FromDIP(LABEL_HORZ_BORDER); + + SubtractRectFromRgn(hrgn, 0, 0, labelRect.GetLeft() - gap, borderTop); + SubtractRectFromRgn(hrgn, labelRect.GetRight() + gap, 0, w, borderTop); + } + else + { + SubtractRectFromRgn(hrgn, 0, 0, w, borderTop); + } // bottom SubtractRectFromRgn(hrgn, 0, h - border, w, h); @@ -415,7 +450,7 @@ void wxStaticBox::PaintForeground(wxDC& dc, const RECT&) // background mode doesn't change anything: the static box def window proc // still draws the label in its own colours, so we need to redraw the text // ourselves if we have a non default fg colour - if ( m_hasFgCol && wxUxThemeEngine::GetIfActive() ) + if ( m_hasFgCol && wxUxThemeEngine::GetIfActive() && !m_labelWin ) { // draw over the text in default colour in our colour HDC hdc = GetHdcOf(*impl); @@ -535,8 +570,31 @@ void wxStaticBox::OnPaint(wxPaintEvent& WXUNUSED(event)) GetBordersForSizer(&borderTop, &border); // top - dc.Blit(border, 0, rc.right - border, borderTop, - &memdc, border, 0); + if ( m_labelWin ) + { + // We also have to exclude the area taken by the label window, + // otherwise there would be flicker when it draws itself on top of it. + const wxRect labelRect = m_labelWin->GetRect(); + + // We also leave a small border around label window to make it appear + // more similarly to a plain text label. + const int gap = FromDIP(LABEL_HORZ_BORDER); + + dc.Blit(border, 0, + labelRect.GetLeft() - gap - border, + borderTop, + &memdc, border, 0); + dc.Blit(labelRect.GetRight() + gap, 0, + rc.right - (labelRect.GetRight() + gap), + borderTop, + &memdc, border, 0); + } + else + { + dc.Blit(border, 0, rc.right - border, borderTop, + &memdc, border, 0); + } + // bottom dc.Blit(border, rc.bottom - border, rc.right - border, border, &memdc, border, rc.bottom - border); From 329af399ebfeeb3c92c78d8ec3a9e876ed4c01f1 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 24 Dec 2017 21:43:57 +0100 Subject: [PATCH 064/916] Factor out wxCompositeWindowSettersOnly class Extract this class from wxCompositeWindow, as sometimes it can be convenient to just define the setter functions to do the right thing for a window containing sub-windows, but without dealing with focus too. This will be used in wxMSW wxStaticBox in the next commit. --- include/wx/compositewin.h | 68 +++++++++++++++++++++++++-------------- 1 file changed, 44 insertions(+), 24 deletions(-) diff --git a/include/wx/compositewin.h b/include/wx/compositewin.h index ec26a414b5..567d0e8999 100644 --- a/include/wx/compositewin.h +++ b/include/wx/compositewin.h @@ -26,9 +26,14 @@ class WXDLLIMPEXP_FWD_CORE wxToolTip; // base class name and implement GetCompositeWindowParts() pure virtual method. // ---------------------------------------------------------------------------- +// This is the base class of wxCompositeWindow which takes care of propagating +// colours, fonts etc changes to all the children, but doesn't bother with +// handling their events or focus. There should be rarely any need to use it +// rather than the full wxCompositeWindow. + // The template parameter W must be a wxWindow-derived class. template -class wxCompositeWindow : public W +class wxCompositeWindowSettersOnly : public W { public: typedef W BaseWindowClass; @@ -120,6 +125,44 @@ public: } #endif // wxUSE_TOOLTIPS +protected: + // Trivial but necessary default ctor. + wxCompositeWindowSettersOnly() + { + } + +private: + // Must be implemented by the derived class to return all children to which + // the public methods we override should forward to. + virtual wxWindowList GetCompositeWindowParts() const = 0; + + template + void SetForAllParts(R (wxWindowBase::*func)(TArg), T arg) + { + // Simply call the setters for all parts of this composite window. + const wxWindowList parts = GetCompositeWindowParts(); + for ( wxWindowList::const_iterator i = parts.begin(); + i != parts.end(); + ++i ) + { + wxWindow * const child = *i; + + // Allow NULL elements in the list, this makes the code of derived + // composite controls which may have optionally shown children + // simpler and it doesn't cost us much here. + if ( child ) + (child->*func)(arg); + } + } + + wxDECLARE_NO_COPY_TEMPLATE_CLASS(wxCompositeWindowSettersOnly, W); +}; + +// The real wxCompositeWindow itself, inheriting all the setters defined above. +template +class wxCompositeWindow : public wxCompositeWindowSettersOnly +{ +public: virtual void SetFocus() wxOVERRIDE { wxSetFocusToChild(this, NULL); @@ -137,10 +180,6 @@ protected: } private: - // Must be implemented by the derived class to return all children to which - // the public methods we override should forward to. - virtual wxWindowList GetCompositeWindowParts() const = 0; - void OnWindowCreate(wxWindowCreateEvent& event) { event.Skip(); @@ -206,25 +245,6 @@ private: event.Skip(); } - template - void SetForAllParts(R (wxWindowBase::*func)(TArg), T arg) - { - // Simply call the setters for all parts of this composite window. - const wxWindowList parts = GetCompositeWindowParts(); - for ( wxWindowList::const_iterator i = parts.begin(); - i != parts.end(); - ++i ) - { - wxWindow * const child = *i; - - // Allow NULL elements in the list, this makes the code of derived - // composite controls which may have optionally shown children - // simpler and it doesn't cost us much here. - if ( child ) - (child->*func)(arg); - } - } - wxDECLARE_NO_COPY_TEMPLATE_CLASS(wxCompositeWindow, W); }; From fdf47e8e1279f6becf013e1025c091a54caac894 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 24 Dec 2017 21:48:51 +0100 Subject: [PATCH 065/916] Fix colours and fonts of wxStaticBox label window in wxMSW Inherit from wxCompositeWindowSettersOnly<> to make sure all the usual setters, such as SetForegroundColour() and SetFont(), called on wxStaticBox are propagated to the label window too. However also prevent SetBackgroundColour() from being propagated unnecessarily -- because the checkbox already inherits the parent background colour by default in wxMSW anyhow -- and still override SetFont() to adjust the label window position after the font change, otherwise it could be truncated after increasing the font size, for example. Because of these issues, wxCompositeWindowSettersOnly is not ideally suited for its use here, but on balance it still seems to be better to use it rather than reimplement parts of its functionality here. --- include/wx/msw/statbox.h | 19 +++++++++++++++++-- src/msw/statbox.cpp | 40 +++++++++++++++++++++++++++++++++++++++- 2 files changed, 56 insertions(+), 3 deletions(-) diff --git a/include/wx/msw/statbox.h b/include/wx/msw/statbox.h index 89eb8fcdde..294f1519ae 100644 --- a/include/wx/msw/statbox.h +++ b/include/wx/msw/statbox.h @@ -11,11 +11,16 @@ #ifndef _WX_MSW_STATBOX_H_ #define _WX_MSW_STATBOX_H_ +#include "wx/compositewin.h" + // Group box -class WXDLLIMPEXP_CORE wxStaticBox : public wxStaticBoxBase +class WXDLLIMPEXP_CORE wxStaticBox : public wxCompositeWindowSettersOnly { public: - wxStaticBox() { } + wxStaticBox() + : wxCompositeWindowSettersOnly() + { + } wxStaticBox(wxWindow *parent, wxWindowID id, const wxString& label, @@ -23,6 +28,7 @@ public: const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = wxStaticBoxNameStr) + : wxCompositeWindowSettersOnly() { Create(parent, id, label, pos, size, style, name); } @@ -33,6 +39,7 @@ public: const wxSize& size = wxDefaultSize, long style = 0, const wxString &name = wxStaticBoxNameStr) + : wxCompositeWindowSettersOnly() { Create(parent, id, label, pos, size, style, name); } @@ -54,6 +61,9 @@ public: /// Implementation only virtual void GetBordersForSizer(int *borderTop, int *borderOther) const wxOVERRIDE; + virtual bool SetBackgroundColour(const wxColour& colour) wxOVERRIDE; + virtual bool SetFont(const wxFont& font) wxOVERRIDE; + virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const wxOVERRIDE; // returns true if the platform should explicitly apply a theme border @@ -66,6 +76,8 @@ public: virtual WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam) wxOVERRIDE; protected: + virtual wxWindowList GetCompositeWindowParts() const wxOVERRIDE; + // return the region with all the windows inside this static box excluded virtual WXHRGN MSWGetRegionWithoutChildren(); @@ -80,6 +92,9 @@ protected: void OnPaint(wxPaintEvent& event); +private: + void PositionLabelWindow(); + wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxStaticBox); }; diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index 9ca1b792bd..97a48d7bb6 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -123,11 +123,25 @@ bool wxStaticBox::Create(wxWindow* parent, m_labelWin = labelWin; m_labelWin->Reparent(this); - m_labelWin->Move(FromDIP(LABEL_HORZ_OFFSET), 0); + PositionLabelWindow(); return true; } +void wxStaticBox::PositionLabelWindow() +{ + m_labelWin->SetSize(m_labelWin->GetBestSize()); + m_labelWin->Move(FromDIP(LABEL_HORZ_OFFSET), 0); +} + +wxWindowList wxStaticBox::GetCompositeWindowParts() const +{ + wxWindowList parts; + if ( m_labelWin ) + parts.push_back(m_labelWin); + return parts; +} + WXDWORD wxStaticBox::MSWGetStyle(long style, WXDWORD *exstyle) const { long styleWin = wxStaticBoxBase::MSWGetStyle(style, exstyle); @@ -191,6 +205,30 @@ void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const *borderTop += FromDIP(LABEL_VERT_BORDER); } +bool wxStaticBox::SetBackgroundColour(const wxColour& colour) +{ + // Do _not_ call the immediate base class method, we don't need to set the + // label window (which is the only sub-window of this composite window) + // background explicitly because it will almost always be a wxCheckBox or + // wxRadioButton which inherits its background from the box anyhow, so + // setting it would be at best useless. + return wxStaticBoxBase::SetBackgroundColour(colour); +} + +bool wxStaticBox::SetFont(const wxFont& font) +{ + if ( !wxCompositeWindowSettersOnly::SetFont(font) ) + return false; + + // We need to reposition the label as its size may depend on the font. + if ( m_labelWin ) + { + PositionLabelWindow(); + } + + return true; +} + WXLRESULT wxStaticBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam) { if ( nMsg == WM_NCHITTEST ) From ca1b76ba4966844dce30ef91b9ab630d5d77322e Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Sun, 24 Dec 2017 18:23:13 -0600 Subject: [PATCH 066/916] Set a minimum size for MyGestureFrame --- samples/event/gestures.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/samples/event/gestures.cpp b/samples/event/gestures.cpp index f28c53dc89..669d5972dc 100644 --- a/samples/event/gestures.cpp +++ b/samples/event/gestures.cpp @@ -17,6 +17,10 @@ MyGestureFrame::MyGestureFrame() sizer->Add(m_logText, wxSizerFlags().Expand()); SetSizer(sizer); + // Set a minimum size for the frame + wxSize dsplySz = wxGetDisplaySize(); + SetSizeHints(wxMin(800,dsplySz.GetWidth()), wxMin(600,dsplySz.GetHeight())); + // Log to the text control delete wxLog::SetActiveTarget(new wxLogTextCtrl(m_logText)); From d3fd17db0457a5dedf85819434dcff8e9e5d96da Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Sun, 24 Dec 2017 18:24:05 -0600 Subject: [PATCH 067/916] Use wxAutoBufferedPaintDC to reduce flicker with wxMSW --- samples/event/gestures.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/samples/event/gestures.cpp b/samples/event/gestures.cpp index 669d5972dc..711d702e83 100644 --- a/samples/event/gestures.cpp +++ b/samples/event/gestures.cpp @@ -1,5 +1,6 @@ #include "gestures.h" #include "wx/dcgraph.h" +#include "wx/dcbuffer.h" #include "../image/horse.xpm" @@ -40,6 +41,7 @@ MyGesturePanel::MyGesturePanel(MyGestureFrame *parent) : wxPanel(parent, wxID_ANY), m_bitmap(horse_xpm) { + SetBackgroundStyle(wxBG_STYLE_PAINT); Bind(wxEVT_PAINT, &MyGesturePanel::OnPaint, this); if ( !EnableTouchEvents(wxTOUCH_ALL_GESTURES) ) @@ -75,12 +77,10 @@ void MyGestureFrame::OnGesture(wxGestureEvent& event) void MyGesturePanel::OnPaint(wxPaintEvent& WXUNUSED(event)) { - wxPaintDC paintDC(this); + wxAutoBufferedPaintDC paintDC(this); + paintDC.Clear(); wxGCDC dc(paintDC); - - dc.Clear(); - dc.SetTransformMatrix(m_affineMatrix); dc.DrawBitmap(m_bitmap, wxRound(m_translateDistance.m_x), wxRound(m_translateDistance.m_y)); } From 0fa033df61666f025df5bf3d13fc9bdae773a264 Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Sun, 24 Dec 2017 18:24:45 -0600 Subject: [PATCH 068/916] Remove newline characters from log message strings --- samples/event/gestures.cpp | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/samples/event/gestures.cpp b/samples/event/gestures.cpp index 711d702e83..2356b667bc 100644 --- a/samples/event/gestures.cpp +++ b/samples/event/gestures.cpp @@ -89,7 +89,7 @@ void MyGesturePanel::OnPan(wxPanGestureEvent& event) { if ( event.IsGestureStart() ) { - wxLogMessage("Pan gesture started\n"); + wxLogMessage("Pan gesture started"); } const wxPoint delta = event.GetDelta(); @@ -111,7 +111,7 @@ void MyGesturePanel::OnPan(wxPanGestureEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Pan gesture Ended\n"); + wxLogMessage("Pan gesture Ended"); } Refresh(); @@ -121,12 +121,12 @@ void MyGesturePanel::OnZoom(wxZoomGestureEvent& event) { if ( event.IsGestureStart() ) { - wxLogMessage("Zoom gesture started\n"); + wxLogMessage("Zoom gesture started"); m_lastZoomFactor = 1.0; } - wxLogMessage("Zoom gesture performed with zoom center at (%d, %d) and zoom Factor = %f\n", + wxLogMessage("Zoom gesture performed with zoom center at (%d, %d) and zoom Factor = %f", event.GetPosition().x, event.GetPosition().y, event.GetZoomFactor()); const wxPoint& zoomCenter = event.GetPosition(); @@ -140,7 +140,7 @@ void MyGesturePanel::OnZoom(wxZoomGestureEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Zoom gesture Ended\n"); + wxLogMessage("Zoom gesture Ended"); } m_lastZoomFactor = event.GetZoomFactor(); @@ -152,12 +152,12 @@ void MyGesturePanel::OnRotate(wxRotateGestureEvent& event) { if ( event.IsGestureStart() ) { - wxLogMessage("Rotate gesture started\n"); + wxLogMessage("Rotate gesture started"); m_lastRotationAngle = 0.0; } - wxLogMessage("Rotate gesture performed with rotation center at (%d, %d) and cumulative rotation angle = %f\n", + wxLogMessage("Rotate gesture performed with rotation center at (%d, %d) and cumulative rotation angle = %f", event.GetPosition().x, event.GetPosition().y, event.GetRotationAngle()); const wxPoint& rotationCenter = event.GetPosition(); @@ -171,7 +171,7 @@ void MyGesturePanel::OnRotate(wxRotateGestureEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Rotate gesture Ended\n"); + wxLogMessage("Rotate gesture Ended"); } m_lastRotationAngle = event.GetRotationAngle(); @@ -183,14 +183,14 @@ void MyGesturePanel::OnTwoFingerTap(wxTwoFingerTapEvent& event) { if ( event.IsGestureStart() ) { - wxLogMessage("Two Finger Tap gesture gesture started\n"); + wxLogMessage("Two Finger Tap gesture gesture started"); } - wxLogMessage("Two Finger Tap gesture performed at (%d, %d)\n", event.GetPosition().x, event.GetPosition().y); + wxLogMessage("Two Finger Tap gesture performed at (%d, %d)", event.GetPosition().x, event.GetPosition().y); if ( event.IsGestureEnd() ) { - wxLogMessage("Two Finger Tap gesture Ended\n"); + wxLogMessage("Two Finger Tap gesture Ended"); } } @@ -198,14 +198,14 @@ void MyGesturePanel::OnLongPress(wxLongPressEvent& event) { if ( event.IsGestureStart() ) { - wxLogMessage("Long Press gesture started\n"); + wxLogMessage("Long Press gesture started"); } - wxLogMessage("Long Press gesture performed at (%d,%d)\n", event.GetPosition().x, event.GetPosition().y); + wxLogMessage("Long Press gesture performed at (%d,%d)", event.GetPosition().x, event.GetPosition().y); if ( event.IsGestureEnd() ) { - wxLogMessage("Long Press gesture Ended\n"); + wxLogMessage("Long Press gesture Ended"); } } @@ -213,13 +213,13 @@ void MyGesturePanel::OnPressAndTap(wxPressAndTapEvent& event) { if ( event.IsGestureStart() ) { - wxLogMessage("Press and Tap gesture started\n"); + wxLogMessage("Press and Tap gesture started"); } - wxLogMessage("Press and Tap gesture performed at (%d,%d)\n", event.GetPosition().x, event.GetPosition().y); + wxLogMessage("Press and Tap gesture performed at (%d,%d)", event.GetPosition().x, event.GetPosition().y); if ( event.IsGestureEnd() ) { - wxLogMessage("Press and Tap gesture Ended\n"); + wxLogMessage("Press and Tap gesture Ended"); } } From a636141b56dc2ad2b84b183321471b9f83faa099 Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Sun, 24 Dec 2017 18:25:26 -0600 Subject: [PATCH 069/916] Use consistent letter case in log message strings --- samples/event/gestures.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/samples/event/gestures.cpp b/samples/event/gestures.cpp index 2356b667bc..8a030bff3f 100644 --- a/samples/event/gestures.cpp +++ b/samples/event/gestures.cpp @@ -111,7 +111,7 @@ void MyGesturePanel::OnPan(wxPanGestureEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Pan gesture Ended"); + wxLogMessage("Pan gesture ended"); } Refresh(); @@ -140,7 +140,7 @@ void MyGesturePanel::OnZoom(wxZoomGestureEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Zoom gesture Ended"); + wxLogMessage("Zoom gesture ended"); } m_lastZoomFactor = event.GetZoomFactor(); @@ -171,7 +171,7 @@ void MyGesturePanel::OnRotate(wxRotateGestureEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Rotate gesture Ended"); + wxLogMessage("Rotate gesture ended"); } m_lastRotationAngle = event.GetRotationAngle(); @@ -190,7 +190,7 @@ void MyGesturePanel::OnTwoFingerTap(wxTwoFingerTapEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Two Finger Tap gesture Ended"); + wxLogMessage("Two Finger Tap gesture ended"); } } @@ -205,7 +205,7 @@ void MyGesturePanel::OnLongPress(wxLongPressEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Long Press gesture Ended"); + wxLogMessage("Long Press gesture ended"); } } @@ -220,6 +220,6 @@ void MyGesturePanel::OnPressAndTap(wxPressAndTapEvent& event) if ( event.IsGestureEnd() ) { - wxLogMessage("Press and Tap gesture Ended"); + wxLogMessage("Press and Tap gesture ended"); } } From 610c16498816cf007e96ded5c9ede866b08a1a74 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 25 Dec 2017 17:14:56 +0100 Subject: [PATCH 070/916] Always let DefWndProc() process column resizing in wxListCtrl If we don't pass these messages to it, the selected items highlight rectangle doesn't get updated when the columns are resized when using visual themes, as could be seen in the listctrl sample. While this did work if the wxEVT_LIST_COL_DRAGGING event handler skipped the event, prefer to not require doing this as things work without this call to wxEvent::Skip() under the other platforms and even MSW with themes disabled. Closes #18032. --- src/msw/listctrl.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index 5896a1db7d..ad763145ba 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -2716,6 +2716,12 @@ bool wxListCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result) // --------------- switch ( nmhdr->code ) { + case HDN_ITEMCHANGING: + // Always let the default handling of this event take place, + // otherwise the selected items are not redrawn to correspond to + // the new column widths, see #18032. + return false; + case LVN_DELETEALLITEMS: // always return true to suppress all additional LVN_DELETEITEM // notifications - this makes deleting all items from a list ctrl From f32edbe1fcd523b359a4fb11e320645997b5ceaa Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 25 Dec 2017 18:45:06 +0100 Subject: [PATCH 071/916] Test wxTE_PROCESS_TAB support on text page of widgets sample too Do it for completeness and symmetry with the already existing checkbox enabling wxTE_PROCESS_ENTER. --- samples/widgets/textctrl.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/samples/widgets/textctrl.cpp b/samples/widgets/textctrl.cpp index dad4d87c2b..f903b8d267 100644 --- a/samples/widgets/textctrl.cpp +++ b/samples/widgets/textctrl.cpp @@ -115,6 +115,7 @@ static const struct ControlValues bool password; bool readonly; bool processEnter; + bool processTab; bool filename; bool noVertScrollbar; @@ -130,6 +131,7 @@ static const struct ControlValues false, // not password false, // not readonly true, // do process enter + false, // do not process Tab false, // not filename false, // don't hide vertical scrollbar WrapStyle_Word, // wrap on word boundaries @@ -225,6 +227,7 @@ protected: wxCheckBox *m_chkPassword, *m_chkReadonly, *m_chkProcessEnter, + *m_chkProcessTab, *m_chkFilename, *m_chkNoVertScrollbar; @@ -389,6 +392,7 @@ TextWidgetsPage::TextWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist) m_chkPassword = m_chkReadonly = m_chkProcessEnter = + m_chkProcessTab = m_chkFilename = m_chkNoVertScrollbar = (wxCheckBox *)NULL; @@ -439,6 +443,9 @@ void TextWidgetsPage::CreateContent() m_chkProcessEnter = CreateCheckBoxAndAddToSizer( sizerLeft, wxT("Process &Enter") ); + m_chkProcessTab = CreateCheckBoxAndAddToSizer( + sizerLeft, wxT("Process &Tab") + ); m_chkFilename = CreateCheckBoxAndAddToSizer( sizerLeft, wxT("&Filename control") ); @@ -657,6 +664,7 @@ void TextWidgetsPage::Reset() m_chkPassword->SetValue(DEFAULTS.password); m_chkReadonly->SetValue(DEFAULTS.readonly); m_chkProcessEnter->SetValue(DEFAULTS.processEnter); + m_chkProcessTab->SetValue(DEFAULTS.processTab); m_chkFilename->SetValue(DEFAULTS.filename); m_chkNoVertScrollbar->SetValue(DEFAULTS.noVertScrollbar); @@ -691,6 +699,8 @@ void TextWidgetsPage::CreateText() flags |= wxTE_READONLY; if ( m_chkProcessEnter->GetValue() ) flags |= wxTE_PROCESS_ENTER; + if ( m_chkProcessTab->GetValue() ) + flags |= wxTE_PROCESS_TAB; if ( m_chkNoVertScrollbar->GetValue() ) flags |= wxTE_NO_VSCROLL; @@ -960,6 +970,7 @@ void TextWidgetsPage::OnUpdateUIResetButton(wxUpdateUIEvent& event) (m_chkPassword->GetValue() != DEFAULTS.password) || (m_chkReadonly->GetValue() != DEFAULTS.readonly) || (m_chkProcessEnter->GetValue() != DEFAULTS.processEnter) || + (m_chkProcessTab->GetValue() != DEFAULTS.processTab) || (m_chkFilename->GetValue() != DEFAULTS.filename) || (m_chkNoVertScrollbar->GetValue() != DEFAULTS.noVertScrollbar) || (m_radioWrap->GetSelection() != DEFAULTS.wrapStyle) ); From 5a949efc5c9ebe5e455d5a82492a6fd303f29991 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 25 Dec 2017 19:29:25 +0100 Subject: [PATCH 072/916] Fix sending wxEVT_TEXT_ENTER when using auto-completion in wxMSW We need to explicitly generate this event from the char hook handler as we don't get the normal WM_CHAR for it, it is apparently intercepted by the window proc installed by the auto-completing code, so check if wxTE_PROCESS_ENTER is used for the text entry and call a special new MSWProcessSpecialKey() method to do the right thing if it is. Similarly, handle Tab presses correctly if wxTE_PROCESS_TAB is used. Closes #12613. --- docs/changes.txt | 1 + include/wx/msw/combobox.h | 8 +++ include/wx/msw/textctrl.h | 4 ++ include/wx/msw/textentry.h | 10 ++++ src/msw/combobox.cpp | 105 ++++++++++++++++++++++--------------- src/msw/textctrl.cpp | 13 +++++ src/msw/textentry.cpp | 54 ++++++++++++++++--- 7 files changed, 144 insertions(+), 51 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 676a77fc19..3f776b10b2 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -232,6 +232,7 @@ wxMSW: - Implement SetIcon(), SetPosition(), GetPosition() for native wxProgressDialog. - Fix focus-related problems when using native wxProgressDialog. - Fix crash when reparenting the currently focused window to another TLW. +- Fix sending wxEVT_TEXT_ENTER when using auto-completion (Dubby). wxOSX: diff --git a/include/wx/msw/combobox.h b/include/wx/msw/combobox.h index 329c10adb1..027b7c277e 100644 --- a/include/wx/msw/combobox.h +++ b/include/wx/msw/combobox.h @@ -158,6 +158,14 @@ private: virtual wxWindow *GetEditableWindow() wxOVERRIDE; virtual WXHWND GetEditHWND() const wxOVERRIDE; + // Common part of MSWProcessEditMsg() and MSWProcessSpecialKey(), return + // true if the key was processed. + bool MSWProcessEditSpecialKey(WXWPARAM vkey); + +#if wxUSE_OLE + virtual void MSWProcessSpecialKey(wxKeyEvent& event) wxOVERRIDE; +#endif // wxUSE_OLE + // common part of all ctors void Init() { diff --git a/include/wx/msw/textctrl.h b/include/wx/msw/textctrl.h index a3d5870532..4fe3a470e6 100644 --- a/include/wx/msw/textctrl.h +++ b/include/wx/msw/textctrl.h @@ -277,6 +277,10 @@ private: // the simple EDIT controls virtual WXHWND GetEditHWND() const wxOVERRIDE { return m_hWnd; } +#if wxUSE_OLE + virtual void MSWProcessSpecialKey(wxKeyEvent& event) wxOVERRIDE; +#endif // wxUSE_OLE + void OnKeyDown(wxKeyEvent& event); // Used by EN_MAXTEXT handler to increase the size limit (will do nothing diff --git a/include/wx/msw/textentry.h b/include/wx/msw/textentry.h index 8f9d92ba95..5d3a0d9e8a 100644 --- a/include/wx/msw/textentry.h +++ b/include/wx/msw/textentry.h @@ -86,6 +86,16 @@ private: virtual WXHWND GetEditHWND() const = 0; #if wxUSE_OLE + // This method is called to process special keys such as Return and Tab + // before they're consumed by the auto-completer. Notice that it is only + // called if we do need to process the key, i.e. if the corresponding + // wxTE_PROCESS_XXX style is set in the associated object. + // + // It is not pure virtual because it won't get called if the derived class + // doesn't use auto-completer, but it does need to be overridden if it can + // be called and the default implementation asserts if this is not the case. + virtual void MSWProcessSpecialKey(wxKeyEvent& event); + // Get the auto-complete object creating it if necessary. Returns NULL if // creating it failed. wxTextAutoCompleteData *GetOrCreateCompleter(); diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index 47b288f86b..999cac1717 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -218,54 +218,63 @@ WXLRESULT wxComboBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lPara return wxChoice::MSWWindowProc(nMsg, wParam, lParam); } +bool wxComboBox::MSWProcessEditSpecialKey(WXWPARAM vkey) +{ + // for compatibility with wxTextCtrl, generate a special message + // when Enter is pressed + switch ( vkey ) + { + case VK_RETURN: + { + if (SendMessage(GetHwnd(), CB_GETDROPPEDSTATE, 0, 0)) + break; + + wxCommandEvent event(wxEVT_TEXT_ENTER, m_windowId); + + const int sel = GetSelection(); + event.SetInt(sel); + event.SetString(GetValue()); + InitCommandEventWithItems(event, sel); + + if ( ProcessCommand(event) ) + { + // don't let the event through to the native control + // because it doesn't need it and may generate an annoying + // beep if it gets it + return true; + } + } + break; + + case VK_TAB: + // If we have wxTE_PROCESS_ENTER style, we get all char + // events, including those for TAB which are usually used + // for keyboard navigation, but we should not process them + // unless we also have wxTE_PROCESS_TAB style. + if ( !HasFlag(wxTE_PROCESS_TAB) ) + { + int flags = 0; + if ( !wxIsShiftDown() ) + flags |= wxNavigationKeyEvent::IsForward; + if ( wxIsCtrlDown() ) + flags |= wxNavigationKeyEvent::WinChange; + if ( Navigate(flags) ) + return true; + } + break; + } + + return false; +} + bool wxComboBox::MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam) { switch ( msg ) { case WM_CHAR: - // for compatibility with wxTextCtrl, generate a special message - // when Enter is pressed - switch ( wParam ) - { - case VK_RETURN: - { - if (SendMessage(GetHwnd(), CB_GETDROPPEDSTATE, 0, 0)) - return false; - - wxCommandEvent event(wxEVT_TEXT_ENTER, m_windowId); - - const int sel = GetSelection(); - event.SetInt(sel); - event.SetString(GetValue()); - InitCommandEventWithItems(event, sel); - - if ( ProcessCommand(event) ) - { - // don't let the event through to the native control - // because it doesn't need it and may generate an annoying - // beep if it gets it - return true; - } - } - break; - - case VK_TAB: - // If we have wxTE_PROCESS_ENTER style, we get all char - // events, including those for TAB which are usually used - // for keyboard navigation, but we should not process them - // unless we also have wxTE_PROCESS_TAB style. - if ( !HasFlag(wxTE_PROCESS_TAB) ) - { - int flags = 0; - if ( !wxIsShiftDown() ) - flags |= wxNavigationKeyEvent::IsForward; - if ( wxIsCtrlDown() ) - flags |= wxNavigationKeyEvent::WinChange; - if ( Navigate(flags) ) - return true; - } - break; - } + if ( MSWProcessEditSpecialKey(wParam) ) + return true; + break; } if ( ShouldForwardFromEditToCombo(msg) ) @@ -383,6 +392,16 @@ bool wxComboBox::MSWShouldPreProcessMessage(WXMSG *pMsg) return wxChoice::MSWShouldPreProcessMessage(pMsg); } +#if wxUSE_OLE + +void wxComboBox::MSWProcessSpecialKey(wxKeyEvent& event) +{ + if ( !MSWProcessEditSpecialKey(event.GetRawKeyCode()) ) + event.Skip(); +} + +#endif // wxUSE_OLE + WXHWND wxComboBox::GetEditHWNDIfAvailable() const { WinStruct info; diff --git a/src/msw/textctrl.cpp b/src/msw/textctrl.cpp index ddc02dec39..2f7bc4d21a 100644 --- a/src/msw/textctrl.cpp +++ b/src/msw/textctrl.cpp @@ -2103,6 +2103,19 @@ void wxTextCtrl::OnChar(wxKeyEvent& event) event.Skip(); } +#if wxUSE_OLE + +void wxTextCtrl::MSWProcessSpecialKey(wxKeyEvent& event) +{ + // It is not a good idea, in general, to manually call another event + // handler, but here we need to do exactly the same thing as in OnChar() + // above, so it doesn't seem to make much sense to add another function to + // forward to when we can just call it directly. + OnChar(event); +} + +#endif // wxUSE_OLE + void wxTextCtrl::OnKeyDown(wxKeyEvent& event) { // richedit control doesn't send WM_PASTE, WM_CUT and WM_COPY messages diff --git a/src/msw/textentry.cpp b/src/msw/textentry.cpp index 97956296ab..46246846ca 100644 --- a/src/msw/textentry.cpp +++ b/src/msw/textentry.cpp @@ -573,21 +573,54 @@ private: void OnCharHook(wxKeyEvent& event) { - // If the autocomplete drop-down list is currently displayed when the - // user presses Escape, we need to dismiss it manually from here as - // Escape could be eaten by something else (e.g. EVT_CHAR_HOOK in the - // dialog that this control is found in) otherwise. - if ( event.GetKeyCode() == WXK_ESCAPE ) + // We need to override the default handling of some keys here. + bool specialKey = false; + switch ( event.GetKeyCode() ) { + case WXK_RETURN: + if ( m_win->HasFlag(wxTE_PROCESS_ENTER) ) + specialKey = true; + break; + + case WXK_TAB: + if ( m_win->HasFlag(wxTE_PROCESS_TAB) ) + specialKey = true; + break; + + case WXK_ESCAPE: + specialKey = true; + break; + } + + if ( specialKey ) + { + // Check if the drop down is currently open. DWORD dwFlags = 0; if ( SUCCEEDED(m_autoCompleteDropDown->GetDropDownStatus(&dwFlags, NULL)) && dwFlags == ACDD_VISIBLE ) { - ::SendMessage(GetHwndOf(m_win), WM_KEYDOWN, WXK_ESCAPE, 0); + if ( event.GetKeyCode() == WXK_ESCAPE ) + { + // We need to dismiss the drop-down manually as Escape + // could be eaten by something else (e.g. EVT_CHAR_HOOK in + // the dialog that this control is found in) otherwise. + ::SendMessage(GetHwndOf(m_win), WM_KEYDOWN, WXK_ESCAPE, 0); - // Do not skip the event in this case, we've already handled it. - return; + // Do not skip the event in this case, we've already handled it. + return; + } + } + else // Drop down is not open. + { + // In this case we need to handle Return and Tab as both of + // them are simply eaten by the auto completer and never reach + // us at all otherwise. + if ( event.GetKeyCode() != WXK_ESCAPE ) + { + m_entry->MSWProcessSpecialKey(event); + return; + } } } @@ -804,6 +837,11 @@ bool wxTextEntry::DoAutoCompleteFileNames(int flags) #endif // wxUSE_DYNLIB_CLASS +void wxTextEntry::MSWProcessSpecialKey(wxKeyEvent& WXUNUSED(event)) +{ + wxFAIL_MSG(wxS("Must be overridden if can be called")); +} + wxTextAutoCompleteData *wxTextEntry::GetOrCreateCompleter() { if ( !m_autoCompleteData ) From 079069834514b86bc0fa3d64a3a5e680b89648ec Mon Sep 17 00:00:00 2001 From: orbitcowboy Date: Tue, 26 Dec 2017 00:25:52 +0100 Subject: [PATCH 073/916] Use postfix operator when iterating over containers. --- src/common/any.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/any.cpp b/src/common/any.cpp index b4141c47e5..a8ba6577c8 100644 --- a/src/common/any.cpp +++ b/src/common/any.cpp @@ -102,7 +102,7 @@ public: return it->second; // Finally, attempt to find a compatible type - for ( it = anyToVariant.begin(); it != anyToVariant.end(); it++ ) + for ( it = anyToVariant.begin(); it != anyToVariant.end(); ++it ) { if ( type->IsSameType(it->first) ) { From c697b62d461fa3ba0794fac2387ad6b75a2f133f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 25 Dec 2017 19:29:25 +0100 Subject: [PATCH 074/916] Compilation fix for PCH-less build after last commit Include the headers required by the new code in src/msw/textentry.cpp. See #12613. --- src/msw/textentry.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/msw/textentry.cpp b/src/msw/textentry.cpp index 46246846ca..3acd21fff1 100644 --- a/src/msw/textentry.cpp +++ b/src/msw/textentry.cpp @@ -24,7 +24,9 @@ #ifndef WX_PRECOMP #include "wx/arrstr.h" + #include "wx/event.h" #include "wx/string.h" + #include "wx/textctrl.h" // Only for wxTE_PROCESS_XXX constants #endif // WX_PRECOMP #if wxUSE_TEXTCTRL || wxUSE_COMBOBOX From f83d16aa460119d8788ac296612a228b4cebfc34 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 26 Dec 2017 04:29:42 +0100 Subject: [PATCH 075/916] Undefine min and max before using them in wx/valnum.h Avoid problems when using this header in code also include (and not doing it via wx/msw/wrapwin.h) by ensuring that min and max used here are not defined as macros. --- include/wx/valnum.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/wx/valnum.h b/include/wx/valnum.h index 166206138d..540f9d6b82 100644 --- a/include/wx/valnum.h +++ b/include/wx/valnum.h @@ -18,6 +18,12 @@ #include "wx/textentry.h" #include "wx/validate.h" +// This header uses std::numeric_limits<>::min/max, but these symbols are, +// unfortunately, often defined as macros and the code here wouldn't compile in +// this case, so preventively undefine them to avoid this problem. +#undef min +#undef max + #include // Bit masks used for numeric validator styles. From f423b88deda58d62a5b6f2f1db7b926aa10f6eda Mon Sep 17 00:00:00 2001 From: orbitcowboy Date: Wed, 27 Dec 2017 14:00:44 +0100 Subject: [PATCH 076/916] Replace post-increment on iterators with pre-increment This is a micro-optimization, as pre-increment is at least as efficient as post-increment and typically slightly more so because it doesn't need to make a copy of the iterator, and better conforms to the prevailing C++ style. Closes https://github.com/wxWidgets/wxWidgets/pull/655 --- src/common/datavcmn.cpp | 4 ++-- src/common/menucmn.cpp | 2 +- src/common/tarstrm.cpp | 2 +- src/generic/datavgen.cpp | 2 +- src/generic/notifmsgg.cpp | 4 ++-- src/msw/menu.cpp | 4 ++-- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index 8e05377d40..0f2ccc24b8 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -2734,7 +2734,7 @@ unsigned int wxDataViewTreeStore::GetChildren( const wxDataViewItem &item, wxDat if (!node) return 0; wxDataViewTreeStoreNodeList::iterator iter; - for (iter = node->GetChildren().begin(); iter != node->GetChildren().end(); iter++) + for (iter = node->GetChildren().begin(); iter != node->GetChildren().end(); ++iter) { wxDataViewTreeStoreNode* child = *iter; children.Add( child->GetItem() ); @@ -2939,7 +2939,7 @@ void wxDataViewTreeCtrl::DeleteChildren( const wxDataViewItem& item ) wxDataViewItemArray array; wxDataViewTreeStoreNodeList::iterator iter; - for (iter = node->GetChildren().begin(); iter != node->GetChildren().end(); iter++) + for (iter = node->GetChildren().begin(); iter != node->GetChildren().end(); ++iter) { wxDataViewTreeStoreNode* child = *iter; array.Add( child->GetItem() ); diff --git a/src/common/menucmn.cpp b/src/common/menucmn.cpp index 2808af69d6..7c12f30765 100644 --- a/src/common/menucmn.cpp +++ b/src/common/menucmn.cpp @@ -982,7 +982,7 @@ wxMenuItem *wxMenuBarBase::FindItem(int itemid, wxMenu **menu) const wxMenuItem *item = NULL; size_t count = GetMenuCount(), i; wxMenuList::const_iterator it; - for ( i = 0, it = m_menus.begin(); !item && (i < count); i++, it++ ) + for ( i = 0, it = m_menus.begin(); !item && (i < count); i++, ++it ) { item = (*it)->FindItem(itemid, menu); } diff --git a/src/common/tarstrm.cpp b/src/common/tarstrm.cpp index f56a0d530b..f080e759de 100644 --- a/src/common/tarstrm.cpp +++ b/src/common/tarstrm.cpp @@ -903,7 +903,7 @@ wxTarNumber wxTarInputStream::GetHeaderNumber(int id) const wxTarNumber n = 0; wxString::const_iterator p = value.begin(); while (p != value.end() && *p == ' ') - p++; + ++p; while (isdigit(*p)) n = n * 10 + (*p++ - '0'); return n; diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 9cc10f4e0e..17a8e5bddb 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -3654,7 +3654,7 @@ public: if( node->GetItem() == *m_iter ) { - m_iter++; + ++m_iter; return DoJob::CONTINUE; } else diff --git a/src/generic/notifmsgg.cpp b/src/generic/notifmsgg.cpp index c126948c6f..34ed4828ba 100644 --- a/src/generic/notifmsgg.cpp +++ b/src/generic/notifmsgg.cpp @@ -327,7 +327,7 @@ void wxNotificationMessageWindow::AddVisibleNotification(wxNotificationMessageWi { bool found = false; for ( wxVector::iterator it = ms_visibleNotifications.begin(); - it != ms_visibleNotifications.end(); it++ ) + it != ms_visibleNotifications.end(); ++it ) { if ( *it == notif ) { @@ -345,7 +345,7 @@ void wxNotificationMessageWindow::AddVisibleNotification(wxNotificationMessageWi void wxNotificationMessageWindow::RemoveVisibleNotification(wxNotificationMessageWindow* notif) { for ( wxVector::iterator it = ms_visibleNotifications.begin(); - it != ms_visibleNotifications.end(); it++ ) + it != ms_visibleNotifications.end(); ++it ) { if ( *it == notif ) { diff --git a/src/msw/menu.cpp b/src/msw/menu.cpp index 1f88d96a92..1378f51131 100644 --- a/src/msw/menu.cpp +++ b/src/msw/menu.cpp @@ -1195,7 +1195,7 @@ void wxMenuBar::RebuildAccelTable() size_t nAccelCount = 0; size_t i, count = GetMenuCount(); wxMenuList::iterator it; - for ( i = 0, it = m_menus.begin(); i < count; i++, it++ ) + for ( i = 0, it = m_menus.begin(); i < count; i++, ++it ) { nAccelCount += (*it)->GetAccelCount(); } @@ -1205,7 +1205,7 @@ void wxMenuBar::RebuildAccelTable() wxAcceleratorEntry *accelEntries = new wxAcceleratorEntry[nAccelCount]; nAccelCount = 0; - for ( i = 0, it = m_menus.begin(); i < count; i++, it++ ) + for ( i = 0, it = m_menus.begin(); i < count; i++, ++it ) { nAccelCount += (*it)->CopyAccels(&accelEntries[nAccelCount]); } From f4b56f67ec3168d8b2cca7310dd4679a7c67a95b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Bron?= Date: Wed, 27 Dec 2017 16:56:50 +0100 Subject: [PATCH 077/916] Improve documentation of wxPropertyGrid::MakeColumnEditable() Explain that column must be different from 1 in the documentation and in the (already existing) assert checking it. Closes https://github.com/wxWidgets/wxWidgets/pull/656 --- interface/wx/propgrid/propgrid.h | 4 ++++ src/propgrid/propgrid.cpp | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/interface/wx/propgrid/propgrid.h b/interface/wx/propgrid/propgrid.h index 226533c21c..2e7bf51563 100644 --- a/interface/wx/propgrid/propgrid.h +++ b/interface/wx/propgrid/propgrid.h @@ -942,6 +942,10 @@ public: @param editable Using @false here will disable column from being editable. + Note that @a column must not be equal to 1, as the second column is + always editable and can be made read-only only on cell-by-cell basis + using @code wxPGProperty::ChangeFlag(wxPG_PROP_READONLY, true) @endcode + @see BeginLabelEdit(), EndLabelEdit() */ void MakeColumnEditable( unsigned int column, bool editable = true ); diff --git a/src/propgrid/propgrid.cpp b/src/propgrid/propgrid.cpp index 6ced9091b7..3bc9611f1a 100644 --- a/src/propgrid/propgrid.cpp +++ b/src/propgrid/propgrid.cpp @@ -964,7 +964,13 @@ void wxPropertyGrid::DoSetSelection( const wxArrayPGProperty& newSelection, void wxPropertyGrid::MakeColumnEditable( unsigned int column, bool editable ) { - wxASSERT( column != 1 ); + // The second column is always editable. To make it read-only is a property + // by property decision by setting its wxPG_PROP_READONLY flag. + wxASSERT_MSG + ( + column != 1, + wxS("Set wxPG_PROP_READONLY property flag instead") + ); wxArrayInt& cols = m_pState->m_editableColumns; From 6c7aaa9e95c4c0f3c73206b58595d1ecf60a9586 Mon Sep 17 00:00:00 2001 From: adrian5 Date: Fri, 29 Dec 2017 19:28:03 +0100 Subject: [PATCH 078/916] Improve wording and formatting in "Hello World" example Minor fixes to the "Hello World" example in the manual to make its style more consistent and the text more readable. Closes https://github.com/wxWidgets/wxWidgets/pull/657 --- docs/doxygen/overviews/helloworld.h | 121 ++++++++++++++-------------- 1 file changed, 61 insertions(+), 60 deletions(-) diff --git a/docs/doxygen/overviews/helloworld.h b/docs/doxygen/overviews/helloworld.h index 8b2fefa5f7..ddb6c344ab 100644 --- a/docs/doxygen/overviews/helloworld.h +++ b/docs/doxygen/overviews/helloworld.h @@ -24,7 +24,7 @@ them). For the platforms with support for precompiled headers, as indicated by only include it for the other ones: @code -// wxWidgets "Hello world" Program +// wxWidgets "Hello World" Program // For compilers that support precompilation, includes "wx/wx.h". #include @@ -35,11 +35,11 @@ only include it for the other ones: @endcode Practically every app should define a new class derived from wxApp. By -overriding wxApp's OnInit() virtual method the program can be initialized, e.g. -by creating a new main window. +overriding wxApp's OnInit() virtual method the program can be initialized, +e.g. by creating a new main window. @code -class MyApp: public wxApp +class MyApp : public wxApp { public: virtual bool OnInit(); @@ -48,20 +48,20 @@ public: The main window is created by deriving a class from wxFrame and giving it a menu and a status bar in its constructor. Also, any class that wishes to -respond to any "event" (such as mouse clicks or messages from the menu or a +respond to an "event" (such as mouse clicks, messages from the menu, or a button) must declare an event table using the macro below. -Finally, the way to react to such events must be done in "event handlers" which -are just functions (or functors, including lambdas if you're using C++11) +Finally, reacting to such events is done via "event handlers" which are +just functions (or functors, including lambdas if you're using C++11) taking the @c event parameter of the type corresponding to the event being handled, e.g. wxCommandEvent for the events from simple controls such as -buttons, text fields and also menu items. In our sample, we react to three menu -items, one for our custom menu command and two for the standard "Exit" and -"About" commands (any program should normally implement the latter two). Notice -that these handlers don't need to be neither virtual nor public. +buttons, text fields and also menu items. In our example, we react to three +menu items: our custom "Hello", and the "Exit" and "About" items (any program +should normally implement the latter two). Notice that these handlers don't +need to be virtual or public. @code -class MyFrame: public wxFrame +class MyFrame : public wxFrame { public: MyFrame(); @@ -84,13 +84,13 @@ enum }; @endcode -Notice that you don't need to define identifiers for the "About" and "Exit" as -wxWidgets already predefines and the standard values such as wxID_ABOUT and -wxID_EXIT should be used whenever possible, as they can be handled in a special +Notice that you don't need to define identifiers for "About" and "Exit", as +wxWidgets already predefines standard values such as wxID_ABOUT and wxID_EXIT. +You should use these whenever possible, as they can be handled in a special way by a particular platform. -As in all programs there must be a "main" function. Under wxWidgets main is -implemented inside ::wxIMPLEMENT_APP() macro, which creates an application +As in all programs, there must be a "main" function. Under wxWidgets, main is +implemented inside the ::wxIMPLEMENT_APP() macro, which creates an application instance of the specified class and starts running the GUI event loop. It is used simply as: @@ -100,23 +100,23 @@ wxIMPLEMENT_APP(MyApp); As mentioned above, wxApp::OnInit() is called upon startup and should be used to initialize the program, maybe showing a "splash screen" and creating the -main window (or several). As frames are created hidden by default, to allow -creating their child windows before showing them, we also need to explicitly -show it to make it appear on the screen. Finally, we return @true from this -method to indicate successful initialization: +main window (or several). Frames are created hidden by default, to allow the +creation of child windows before displaying them. We thus need to explicitly +show them. Finally, we return @true from this method to indicate successful +initialization: @code bool MyApp::OnInit() { MyFrame *frame = new MyFrame(); - frame->Show( true ); + frame->Show(true); return true; } @endcode -In the constructor of the main window (or later on) we create a menu with our -menu items as well as a status bar to be shown at the bottom of the main -window. Both have to be associated with the frame with respective calls. +In the constructor of the main window (or later on), we create a menu with our +menu items, as well as a status bar to be shown at the bottom of the main +window. Both have to be bound to the frame with respective calls. @code MyFrame::MyFrame() @@ -132,39 +132,40 @@ MyFrame::MyFrame() menuHelp->Append(wxID_ABOUT); wxMenuBar *menuBar = new wxMenuBar; - menuBar->Append( menuFile, "&File" ); - menuBar->Append( menuHelp, "&Help" ); + menuBar->Append(menuFile, "&File"); + menuBar->Append(menuHelp, "&Help"); - SetMenuBar( menuBar ); + SetMenuBar(menuBar); CreateStatusBar(); - SetStatusText( "Welcome to wxWidgets!" ); + SetStatusText("Welcome to wxWidgets!"); ... continued below ... @endcode Notice that we don't need to specify the labels for the standard menu items -@c wxID_ABOUT and @c wxID_EXIT, they will be given standard (even correctly -translated) labels and also standard accelerators correct for the current -platform making your program behaviour more native. For this reason you should -prefer reusing the standard ids (see @ref page_stockitems) if possible. +@c wxID_ABOUT and @c wxID_EXIT — they will be given standard (even correctly +translated) labels and standard accelerators correct for the current +platform, making our program behaviour more native. For this reason, you +should prefer reusing the standard ids (see @ref page_stockitems) where +possible. -We also have to actually connect our event handlers to the events we want to -handle in them, by calling Bind() to send all the menu events, identified by -wxEVT_MENU event type, with the specified ID to the given function. The +We also have to connect our event handlers to the events we want to handle in +them. We do this by calling Bind() to send all the menu events (identified by +wxEVT_MENU event type) with the specified ID to the given function. The parameters we pass to Bind() are --# The event type, e.g. wxEVT_MENU or wxEVT_BUTTON or wxEVT_SIZE or one +-# The event type, e.g. wxEVT_MENU, wxEVT_BUTTON, wxEVT_SIZE, or one of many other events used by wxWidgets. --# Pointer to the member function to call and the object to call it on. In - this case we just call our own function, hence we pass `this` for this - object itself, but we could call a member function of another object too. - And we could could also use a non-member function here, and, in fact, - anything that can be called passing it a wxCommandEvent could be used here. --# The optional identifier allowing to select just some events of wxEVT_MENU +-# A Pointer to the method to call, and the object to call it on. In + this case, we just call our own function, and pass the `this` pointer + for the object itself. We could instead call the method of another object, + or a non-member function — in fact, any object that can be called with a + wxCommandEvent, can be used here. +-# An optional identifier, allowing us to select just some events of wxEVT_MENU type, namely those from the menu item with the given ID, instead of handling - all of them in the provided handler. This is especially useful with the menu - items and rarely used with other kinds of events. + all of them in the provided handler. This is mainly useful with menu items + and rarely with other kinds of events. @code ... continued from above ... @@ -183,7 +184,7 @@ If there is no other main window left, the application will quit. @code void MyFrame::OnExit(wxCommandEvent& event) { - Close( true ); + Close(true); } @endcode @@ -193,14 +194,14 @@ case a typical "About" window with information about the program. @code void MyFrame::OnAbout(wxCommandEvent& event) { - wxMessageBox( "This is a wxWidgets' Hello world sample", - "About Hello World", wxOK | wxICON_INFORMATION ); + wxMessageBox("This is a wxWidgets Hello World example", + "About Hello World", wxOK | wxICON_INFORMATION); } @endcode The implementation of custom menu command handler may perform whatever task your program needs to do, in this case we will simply show a message from it as -befits a hello world example: +befits a Hello World example: @code void MyFrame::OnHello(wxCommandEvent& event) @@ -223,7 +224,7 @@ void MyFrame::OnHello(wxCommandEvent& event) Here is the entire program that can be copied and pasted: @code -// wxWidgets "Hello world" Program +// wxWidgets "Hello World" Program // For compilers that support precompilation, includes "wx/wx.h". #include @@ -232,13 +233,13 @@ Here is the entire program that can be copied and pasted: #include #endif -class MyApp: public wxApp +class MyApp : public wxApp { public: virtual bool OnInit(); }; -class MyFrame: public wxFrame +class MyFrame : public wxFrame { public: MyFrame(); @@ -259,12 +260,12 @@ wxIMPLEMENT_APP(MyApp); bool MyApp::OnInit() { MyFrame *frame = new MyFrame(); - frame->Show( true ); + frame->Show(true); return true; } MyFrame::MyFrame() - : wxFrame(NULL, wxID_ANY, "Hello World") + : wxFrame(NULL, wxID_ANY, "Hello World") { wxMenu *menuFile = new wxMenu; menuFile->Append(ID_Hello, "&Hello...\tCtrl-H", @@ -276,13 +277,13 @@ MyFrame::MyFrame() menuHelp->Append(wxID_ABOUT); wxMenuBar *menuBar = new wxMenuBar; - menuBar->Append( menuFile, "&File" ); - menuBar->Append( menuHelp, "&Help" ); + menuBar->Append(menuFile, "&File"); + menuBar->Append(menuHelp, "&Help"); SetMenuBar( menuBar ); CreateStatusBar(); - SetStatusText( "Welcome to wxWidgets!" ); + SetStatusText("Welcome to wxWidgets!"); Bind(wxEVT_MENU, &MyFrame::OnHello, this, ID_Hello); Bind(wxEVT_MENU, &MyFrame::OnAbout, this, wxID_ABOUT); @@ -291,13 +292,13 @@ MyFrame::MyFrame() void MyFrame::OnExit(wxCommandEvent& event) { - Close( true ); + Close(true); } void MyFrame::OnAbout(wxCommandEvent& event) { - wxMessageBox( "This is a wxWidgets' Hello world sample", - "About Hello World", wxOK | wxICON_INFORMATION ); + wxMessageBox("This is a wxWidgets Hello World example", + "About Hello World", wxOK | wxICON_INFORMATION); } void MyFrame::OnHello(wxCommandEvent& event) From c65eaac529c623b1357b34e32b58b59137f5a2a5 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Dec 2017 18:51:05 +0100 Subject: [PATCH 079/916] Fix harmless warning about comparing values of different enums This avoids a bunch of -Wenum-compare-switch warnings from clang 6. --- src/generic/dcpsg.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/generic/dcpsg.cpp b/src/generic/dcpsg.cpp index a6375b0c6b..295c7c7650 100644 --- a/src/generic/dcpsg.cpp +++ b/src/generic/dcpsg.cpp @@ -1097,8 +1097,8 @@ void wxPostScriptDCImpl::SetPSFont() wxString name; switch ( m_font.GetFamily() ) { - case wxTELETYPE: - case wxMODERN: + case wxFONTFAMILY_TELETYPE: + case wxFONTFAMILY_MODERN: { if (Style == wxFONTSTYLE_ITALIC) { @@ -1116,7 +1116,7 @@ void wxPostScriptDCImpl::SetPSFont() } break; } - case wxROMAN: + case wxFONTFAMILY_ROMAN: { if (Style == wxFONTSTYLE_ITALIC) { @@ -1134,12 +1134,12 @@ void wxPostScriptDCImpl::SetPSFont() } break; } - case wxSCRIPT: + case wxFONTFAMILY_SCRIPT: { name = wxS("/ZapfChancery-MediumItalic"); break; } - case wxSWISS: + case wxFONTFAMILY_SWISS: default: { if (Style == wxFONTSTYLE_ITALIC) From 69cd6039eb3b1e5559121e9d2e7fe2299a814fb7 Mon Sep 17 00:00:00 2001 From: nowhere Date: Sat, 30 Dec 2017 18:52:36 +0100 Subject: [PATCH 080/916] Make parsing WAV data more robust Check that we have enough data in the input instead of happily reading out of bounds memory. This fixes the most common problem of crashing on bad data which doesn't look like WAV at all, but doesn't fix problems with parsing input which does look like WAV, but is incorrect -- this will be done in subsequent commits. --- src/unix/sound.cpp | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/unix/sound.cpp b/src/unix/sound.cpp index ae38289009..2227b117d1 100644 --- a/src/unix/sound.cpp +++ b/src/unix/sound.cpp @@ -651,14 +651,6 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) waveformat.uiBlockAlign = wxUINT16_SWAP_ON_BE(waveformat.uiBlockAlign); waveformat.uiBitsPerSample = wxUINT16_SWAP_ON_BE(waveformat.uiBitsPerSample); - // get the sound data size - wxUint32 ul; - memcpy(&ul, &data[FMT_INDEX + waveformat.uiSize + 12], 4); - ul = wxUINT32_SWAP_ON_BE(ul); - - if ( length < ul + FMT_INDEX + waveformat.uiSize + 16 ) - return false; - if (memcmp(data, "RIFF", 4) != 0) return false; if (memcmp(&data[WAVE_INDEX], "WAVE", 4) != 0) @@ -675,6 +667,24 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) waveformat.ulAvgBytesPerSec / waveformat.uiBlockAlign) return false; + // get file size from header + wxUint32 chunkSize; + memcpy(&chunkSize, &data[4], 4); + chunkSize = wxUINT32_SWAP_ON_BE(chunkSize); + + // ensure file length is at least length in header + if (chunkSize > length - 8) + return false; + + // get the sound data size + wxUint32 ul; + memcpy(&ul, &data[FMT_INDEX + waveformat.uiSize + 12], 4); + ul = wxUINT32_SWAP_ON_BE(ul); + + // ensure we actually have at least that much data in the input + if (ul > length - FMT_INDEX - waveformat.uiSize - 16) + return false; + m_data = new wxSoundData; m_data->m_channels = waveformat.uiChannels; m_data->m_samplingRate = waveformat.ulSamplesPerSec; From 45e8d13e1304f39fdf763ec06a9443d3a4df06f3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Dec 2017 17:28:27 +0100 Subject: [PATCH 081/916] Add format sub-chunk size check to WAV parsing This fixes a crash due to reading beyond the buffer bounds when checking for "data" if WAVEFORMAT::uiSize was too big. --- src/unix/sound.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/unix/sound.cpp b/src/unix/sound.cpp index 2227b117d1..53e3f31240 100644 --- a/src/unix/sound.cpp +++ b/src/unix/sound.cpp @@ -657,6 +657,12 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) return false; if (memcmp(&data[FMT_INDEX], "fmt ", 4) != 0) return false; + + // Check that the format chunk size is correct: it must be 16 for PCM, + // which is the only format we handle. + if (waveformat.uiSize != 16) + return false; + if (memcmp(&data[FMT_INDEX + waveformat.uiSize + 8], "data", 4) != 0) return false; From 932f384c87959790fc47fe1099c8ac54530c1b3d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Dec 2017 17:37:21 +0100 Subject: [PATCH 082/916] Avoid division by 0 when parsing WAV data Don't divide by waveformat.uiBlockAlign which could be 0, but rather multiply by it and verify that we get the expected result. This is more robust, as it prevents crashes on malformed input and also slightly more efficient even for correct input. --- src/unix/sound.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/unix/sound.cpp b/src/unix/sound.cpp index 53e3f31240..e0913ee65d 100644 --- a/src/unix/sound.cpp +++ b/src/unix/sound.cpp @@ -669,8 +669,8 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) if (waveformat.uiFormatTag != WAVE_FORMAT_PCM) return false; - if (waveformat.ulSamplesPerSec != - waveformat.ulAvgBytesPerSec / waveformat.uiBlockAlign) + if (waveformat.ulAvgBytesPerSec != + waveformat.ulSamplesPerSec * waveformat.uiBlockAlign) return false; // get file size from header From 61c7cf9a9c5d743fee16094f491fa83c03391eb8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Dec 2017 17:45:01 +0100 Subject: [PATCH 083/916] Fix yet another division by 0 when parsing WAV data Ensure that the size of one sample (including all the channels) is non zero before dividing by it. --- src/unix/sound.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/unix/sound.cpp b/src/unix/sound.cpp index e0913ee65d..9697c36af4 100644 --- a/src/unix/sound.cpp +++ b/src/unix/sound.cpp @@ -673,6 +673,13 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) waveformat.ulSamplesPerSec * waveformat.uiBlockAlign) return false; + // We divide by this number below to obtain the number of samples, so it + // definitely can't be 0. + wxUint32 const sampleSize = + waveformat.uiChannels * waveformat.uiBitsPerSample / 8; + if (!sampleSize) + return false; + // get file size from header wxUint32 chunkSize; memcpy(&chunkSize, &data[4], 4); @@ -695,7 +702,7 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) m_data->m_channels = waveformat.uiChannels; m_data->m_samplingRate = waveformat.ulSamplesPerSec; m_data->m_bitsPerSample = waveformat.uiBitsPerSample; - m_data->m_samples = ul / (m_data->m_channels * m_data->m_bitsPerSample / 8); + m_data->m_samples = ul / sampleSize; m_data->m_dataBytes = ul; if (copyData) From c010efc172907253570126d5a13c70230b2abbda Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Dec 2017 18:47:43 +0100 Subject: [PATCH 084/916] Avoid integer overflow when computing the sample size While it seems to be harmless in this particular case, it still prevents testing this code with UBSAN by triggering it here, so check that multiplication doesn't overflow. --- src/unix/sound.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/unix/sound.cpp b/src/unix/sound.cpp index 9697c36af4..355fc8673d 100644 --- a/src/unix/sound.cpp +++ b/src/unix/sound.cpp @@ -673,10 +673,16 @@ bool wxSound::LoadWAV(const void* data_, size_t length, bool copyData) waveformat.ulSamplesPerSec * waveformat.uiBlockAlign) return false; - // We divide by this number below to obtain the number of samples, so it - // definitely can't be 0. - wxUint32 const sampleSize = - waveformat.uiChannels * waveformat.uiBitsPerSample / 8; + // We divide by the sample size below to obtain the number of samples, so + // it definitely can't be 0. Also take care to avoid integer overflow when + // computing it. + unsigned tmp = waveformat.uiChannels; + if (tmp >= 0x10000) + return false; + + tmp *= waveformat.uiBitsPerSample; + + wxUint32 const sampleSize = tmp / 8; if (!sampleSize) return false; From bf09ff2320537ceabf55b3067afec16061c16cb9 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 31 Dec 2017 02:26:22 +0100 Subject: [PATCH 085/916] Remove unused GTK_IS_WX_CELL_EDITOR_BIN* macros No real changes, just don't define macros that we never use and don't plan on using it (why would we need to test whether something is of this type when we already know it). --- src/gtk/dataview.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index 6e102ae7c4..f72a4518fc 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1151,8 +1151,6 @@ extern "C" { #define GTK_TYPE_WX_CELL_EDITOR_BIN (gtk_wx_cell_editor_bin_get_type ()) #define GTK_WX_CELL_EDITOR_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_WX_CELL_EDITOR_BIN, GtkWxCellEditorBin)) -#define GTK_IS_WX_CELL_EDITOR_BIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_WX_CELL_EDITOR_BIN)) -#define GTK_IS_WX_CELL_EDITOR_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_WX_CELL_EDITOR_BIN)) struct GtkWxCellEditorBin { From bde62ce981271fdd93c94909ba2f543e6c75c568 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 31 Dec 2017 02:33:26 +0100 Subject: [PATCH 086/916] Get rid of unused renderer rect in gtk_wx_cell_renderer_new() No real changes, just don't call gtk_wx_cell_renderer_get_size() unnecessarily as we never use its result: the code using the returned rectangle was commented out ever since it was added (more than 10 years ago) in 1e510b1e2d0270caf227c3fc0cf34ae2e7dd6794 --- src/gtk/dataview.cpp | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index f72a4518fc..edd9dbcd08 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1420,7 +1420,7 @@ gtk_wx_cell_renderer_new (void) static GtkCellEditable *gtk_wx_cell_renderer_start_editing( GtkCellRenderer *renderer, GdkEvent *WXUNUSED(event), - GtkWidget *widget, + GtkWidget *WXUNUSED(widget), const gchar *path, wxConstGdkRect *WXUNUSED(background_area), wxConstGdkRect *cell_area, @@ -1437,25 +1437,10 @@ static GtkCellEditable *gtk_wx_cell_renderer_start_editing( if (cell->GetEditorCtrl()) return NULL; - GdkRectangle rect; - gtk_wx_cell_renderer_get_size (renderer, widget, cell_area, - &rect.x, - &rect.y, - &rect.width, - &rect.height); - - rect.x += cell_area->x; - rect.y += cell_area->y; -// rect.width -= renderer->xpad * 2; -// rect.height -= renderer->ypad * 2; - -// wxRect renderrect(wxRectFromGDKRect(&rect)); - wxRect renderrect(wxRectFromGDKRect(cell_area)); - wxDataViewItem item(cell->GetOwner()->GetOwner()->GTKPathToItem(wxGtkTreePath(path))); - if (!cell->StartEditing(item, renderrect)) + if (!cell->StartEditing(item, wxRectFromGDKRect(cell_area))) return NULL; wxrenderer->editor_bin = gtk_wx_cell_editor_bin_new(cell->GetEditorCtrl()); From 32fc7c368f26a3872670002932e4752d6a3a5cef Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 2 Jan 2018 16:53:43 +0100 Subject: [PATCH 087/916] Make it more clear that XRC version must be set Omitting the version can result in difficult to diagnose problems, so insist that it should be set in the format documentation. See #18033. --- docs/doxygen/overviews/xrc_format.h | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index 187d8677d1..7a1a25fe8e 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -48,20 +48,9 @@ be accessed using XRCCTRL(). @section overview_xrcformat_root Resource Root Element The root element is always @c \. It has one optional attribute, @c -version. If set, it specifies version of the file. In absence of @c version -attribute, the default is @c "0.0.0.0". - -The version consists of four integers separated by periods. The first three -components are major, minor and release number of the wxWidgets release when -the change was introduced, the last one is revision number and is 0 for the -first incompatible change in given wxWidgets release, 1 for the second and so -on. The version changes only if there was an incompatible change introduced; -merely adding new kind of objects does not constitute incompatible change. - -At the time of writing, the latest version is @c "2.5.3.0". - -Note that even though @c version attribute is optional, it should always be -specified to take advantage of the latest capabilities: +version which, while optional, should always be set to the latest version. At +the time of writing, it is @c "2.5.3.0", so all XRC documents should look like +the following: @code @@ -70,6 +59,13 @@ specified to take advantage of the latest capabilities: @endcode +The version consists of four integers separated by periods. The first three +components are major, minor and release number of the wxWidgets release when +the change was introduced, the last one is revision number and is 0 for the +first incompatible change in given wxWidgets release, 1 for the second and so +on. The version changes only if there was an incompatible change introduced; +merely adding new kind of objects does not constitute incompatible change. + @c \ may have arbitrary number of @ref overview_xrcformat_objects "object elements" as its children; they are referred to as @em toplevel objects in the rest of this document. Unlike objects defined From 0a2dfc7959305be706658f21c9590c8c633c68f0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 2 Jan 2018 17:06:58 +0100 Subject: [PATCH 088/916] Document wxClipboard::AddData() as synonym for SetData() Don't pretend that AddData() allows to add multiple objects to the clipboard because it doesn't work like this by default under any platform and only MSW possibly supports this in the non-default build with wxUSE_OLE==0 -- but mentioning it in the documentation would arguably be more confusing than helpful. See #17925. --- interface/wx/clipbrd.h | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/interface/wx/clipbrd.h b/interface/wx/clipbrd.h index 3b1ca4d83e..14593e27cc 100644 --- a/interface/wx/clipbrd.h +++ b/interface/wx/clipbrd.h @@ -72,14 +72,9 @@ public: virtual ~wxClipboard(); /** - Call this function to add the data object to the clipboard. You may - call this function repeatedly after having cleared the clipboard using - Clear(). + Call this function to add the data object to the clipboard. - After this function has been called, the clipboard owns the data, so do - not delete the data explicitly. - - @see SetData() + This is an obsolete synonym for SetData(). */ virtual bool AddData(wxDataObject* data); @@ -149,14 +144,17 @@ public: virtual bool Open(); /** - Call this function to set the data object to the clipboard. This - function will clear all previous contents in the clipboard, so calling - it several times does not make any sense. + Call this function to set the data object to the clipboard. + + The new data object replaces any previously set one, so if the + application wants to provide clipboard data in several different + formats, it must use a composite data object supporting all of the + formats instead of calling this function several times with different + data objects as this would only leave data from the last one in the + clipboard. After this function has been called, the clipboard owns the data, so do not delete the data explicitly. - - @see AddData() */ virtual bool SetData(wxDataObject* data); From 827e90e8deb2add5d10aec1fdb8730dcd05c1248 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 31 Dec 2017 02:28:14 +0100 Subject: [PATCH 089/916] Use GtkHBox as GtkWxCellEditorBin parent with GTK+ < 4 Using GtkBin as widget parent didn't work without overriding its size-related vfuncs until GTK+ 3.8 and, in particular, resulted in the editor (which was the child of the bin) not being visible at all with GTK+ 2. Switch to using GtkHBox as parent, which does work with both GTK+ 2 and any GTK+ 3 version, but keep using GtkBin with GTK+ 4 as GtkHBox is removed in it. This fixes bug introduced in c2821dcea0d88828149c9a1ffe50544564250aa8 since which custom wxDataViewCtrl editors were not visible any more. Closes #17686. --- src/gtk/dataview.cpp | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index edd9dbcd08..e89c058c05 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1152,9 +1152,33 @@ extern "C" { #define GTK_TYPE_WX_CELL_EDITOR_BIN (gtk_wx_cell_editor_bin_get_type ()) #define GTK_WX_CELL_EDITOR_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_WX_CELL_EDITOR_BIN, GtkWxCellEditorBin)) +// In GTK+ < 3.8 GtkBin can't be used as widget base type without defining our +// own size_allocate and related (either size_request for GTK+ 2 or +// get_preferred_height for GTK+ 3) vfuncs, so we use GtkHBox instead. But in +// GTK+ 4, GtkHBox is removed, so we do use GtkBin with it. +#ifdef __WXGTK4__ + typedef GtkBin GtkWxCellEditorBinBase; + typedef GtkBinClass GtkWxCellEditorBinBaseClass; + + // Notice that this can't be just a (const) variable as GTK+ type constants + // are actually macros expanding into function calls, which shouldn't be + // performed before the library is initialized, so we need to use either an + // inline function or a define, which is simpler. + #define GtkWxCellEditorBinBaseType GTK_TYPE_BIN +#else // GTK+ < 4 + // GtkHBox is deprecated since 3.2, so avoid warnings about using it. + wxGCC_WARNING_SUPPRESS(deprecated-declarations) + + typedef GtkHBox GtkWxCellEditorBinBase; + typedef GtkHBoxClass GtkWxCellEditorBinBaseClass; + #define GtkWxCellEditorBinBaseType GTK_TYPE_HBOX + + wxGCC_WARNING_RESTORE(deprecated-declarations) +#endif // GTK+ version + struct GtkWxCellEditorBin { - GtkBin parent; + GtkWxCellEditorBinBase parent; // The actual user-created editor. wxWindow* editor; @@ -1182,7 +1206,7 @@ gtk_wx_cell_editor_bin_get_type() { const GTypeInfo cell_editor_bin_info = { - sizeof (GtkBinClass), + sizeof (GtkWxCellEditorBinBaseClass), NULL, /* base_init */ NULL, /* base_finalize */ gtk_wx_cell_editor_bin_class_init, @@ -1194,7 +1218,8 @@ gtk_wx_cell_editor_bin_get_type() NULL }; - cell_editor_bin_type = g_type_register_static( GTK_TYPE_BIN, + cell_editor_bin_type = g_type_register_static( + GtkWxCellEditorBinBaseType, "GtkWxCellEditorBin", &cell_editor_bin_info, (GTypeFlags)0 ); From da186a0713244d542c5b73019dfbe596e21e93bd Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Wed, 3 Jan 2018 09:16:06 -0800 Subject: [PATCH 090/916] Avoid trying to override non-existent property with GTK+ < 2.20 --- src/gtk/dataview.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index e89c058c05..944f97f00a 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1252,9 +1252,12 @@ static void gtk_wx_cell_editor_bin_class_init(void* klass, void*) oclass->set_property = gtk_wx_cell_editor_bin_set_property; oclass->get_property = gtk_wx_cell_editor_bin_get_property; - g_object_class_override_property(oclass, + if (wx_is_at_least_gtk2(20)) + { + g_object_class_override_property(oclass, CELL_EDITOR_BIN_PROP_EDITING_CANCELED, "editing-canceled"); + } } // We need to provide these virtual methods as we must support the From b02df5ea33ebe532812cc59b00380b396798756d Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Wed, 3 Jan 2018 09:26:12 -0800 Subject: [PATCH 091/916] Remove unneeded init function GObject instances are already zero-initialized --- src/gtk/dataview.cpp | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index 944f97f00a..d78d075559 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1150,7 +1150,6 @@ enum extern "C" { #define GTK_TYPE_WX_CELL_EDITOR_BIN (gtk_wx_cell_editor_bin_get_type ()) -#define GTK_WX_CELL_EDITOR_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_WX_CELL_EDITOR_BIN, GtkWxCellEditorBin)) // In GTK+ < 3.8 GtkBin can't be used as widget base type without defining our // own size_allocate and related (either size_request for GTK+ 2 or @@ -1185,7 +1184,6 @@ struct GtkWxCellEditorBin }; static GtkWidget* gtk_wx_cell_editor_bin_new(wxWindow* editor); -static void gtk_wx_cell_editor_bin_init(GTypeInstance* instance, void*); static void gtk_wx_cell_editor_bin_class_init(void* klass, void*); static void gtk_wx_cell_editor_bin_get_property(GObject*, guint, GValue*, GParamSpec*); static void gtk_wx_cell_editor_bin_set_property(GObject*, guint, const GValue*, GParamSpec*); @@ -1214,7 +1212,7 @@ gtk_wx_cell_editor_bin_get_type() NULL, /* class_data */ sizeof (GtkWxCellEditorBin), 0, /* n_preallocs */ - gtk_wx_cell_editor_bin_init, + NULL, // init NULL }; @@ -1238,13 +1236,6 @@ gtk_wx_cell_editor_bin_get_type() return cell_editor_bin_type; } -static void -gtk_wx_cell_editor_bin_init(GTypeInstance* instance, void*) -{ - GtkWxCellEditorBin* const bin = GTK_WX_CELL_EDITOR_BIN(instance); - bin->editor = NULL; -} - static void gtk_wx_cell_editor_bin_class_init(void* klass, void*) { GObjectClass* const oclass = G_OBJECT_CLASS(klass); From 5efba4ce470148c92b62e903c9d40f9a05702715 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Wed, 3 Jan 2018 20:22:12 -0800 Subject: [PATCH 092/916] Avoid invisible wxTextCtrl selection with GTK+3 See #18036 --- src/gtk/window.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 4c7426756b..50973fcf02 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -5439,9 +5439,9 @@ void wxWindowGTK::GTKApplyWidgetStyle(bool forceStyle) } g_string_append_c(css, '}'); - if (isFg && isBg) + if (isFg || isBg) { - // Selection will be invisible, so add textview selection colors. + // Selection may be invisible, so add textview selection colors. // This is specifically for wxTextCtrl, but may be useful for other // controls, and seems to do no harm to apply to all. const wxColour fg_sel(wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHTTEXT)); From 48a5d6c5f835ce70d7b06a89a51a164b58c19dad Mon Sep 17 00:00:00 2001 From: Mart Raudsepp Date: Thu, 4 Jan 2018 16:12:15 +0200 Subject: [PATCH 093/916] Move wx/evtloopsrc.h to BASE_CMN_HDR from GUI_CMN_HDR This header ends up being included by wx/apptrait.h, which is in BASE_CMN_HDR, so it needs itself to be there too in order for compilation to work when using non-GUI library build. Closes #18038. --- Makefile.in | 3 ++- build/bakefiles/files.bkl | 2 +- build/files | 2 +- build/msw/wx_base.vcxproj | 1 + build/msw/wx_base.vcxproj.filters | 3 +++ build/msw/wx_core.vcxproj | 1 - build/msw/wx_core.vcxproj.filters | 3 --- build/msw/wx_vc7_base.vcproj | 3 +++ build/msw/wx_vc7_core.vcproj | 3 --- build/msw/wx_vc8_base.vcproj | 4 ++++ build/msw/wx_vc8_core.vcproj | 4 ---- build/msw/wx_vc9_base.vcproj | 4 ++++ build/msw/wx_vc9_core.vcproj | 4 ---- 13 files changed, 19 insertions(+), 18 deletions(-) diff --git a/Makefile.in b/Makefile.in index 3a49998522..c00dbf1699 100644 --- a/Makefile.in +++ b/Makefile.in @@ -406,6 +406,7 @@ ALL_BASE_HEADERS = \ wx/event.h \ wx/eventfilter.h \ wx/evtloop.h \ + wx/evtloopsrc.h \ wx/except.h \ wx/features.h \ wx/flags.h \ @@ -588,6 +589,7 @@ ALL_PORTS_BASE_HEADERS = \ wx/event.h \ wx/eventfilter.h \ wx/evtloop.h \ + wx/evtloopsrc.h \ wx/except.h \ wx/features.h \ wx/flags.h \ @@ -3920,7 +3922,6 @@ COND_USE_GUI_1_ALL_GUI_HEADERS = \ wx/docmdi.h \ wx/docview.h \ wx/effects.h \ - wx/evtloopsrc.h \ wx/fdrepdlg.h \ wx/filectrl.h \ wx/filehistory.h \ diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl index 850ba226f1..85658c2a8c 100644 --- a/build/bakefiles/files.bkl +++ b/build/bakefiles/files.bkl @@ -595,6 +595,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/event.h wx/eventfilter.h wx/evtloop.h + wx/evtloopsrc.h wx/except.h wx/features.h wx/flags.h @@ -1101,7 +1102,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/docmdi.h wx/docview.h wx/effects.h - wx/evtloopsrc.h wx/fdrepdlg.h wx/filectrl.h wx/filehistory.h diff --git a/build/files b/build/files index 757ffab063..d450ec7464 100644 --- a/build/files +++ b/build/files @@ -526,6 +526,7 @@ BASE_CMN_HDR = wx/event.h wx/eventfilter.h wx/evtloop.h + wx/evtloopsrc.h wx/except.h wx/features.h wx/flags.h @@ -1021,7 +1022,6 @@ GUI_CMN_HDR = wx/docmdi.h wx/docview.h wx/effects.h - wx/evtloopsrc.h wx/fdrepdlg.h wx/filectrl.h wx/filehistory.h diff --git a/build/msw/wx_base.vcxproj b/build/msw/wx_base.vcxproj index 7f5a03c6d4..bdf09a2b7d 100644 --- a/build/msw/wx_base.vcxproj +++ b/build/msw/wx_base.vcxproj @@ -821,6 +821,7 @@ + diff --git a/build/msw/wx_base.vcxproj.filters b/build/msw/wx_base.vcxproj.filters index b2a36fd44b..6e1b1cace5 100644 --- a/build/msw/wx_base.vcxproj.filters +++ b/build/msw/wx_base.vcxproj.filters @@ -499,6 +499,9 @@ Common Headers + + Common Headers + Common Headers diff --git a/build/msw/wx_core.vcxproj b/build/msw/wx_core.vcxproj index 40cf55da63..174b3d06f7 100644 --- a/build/msw/wx_core.vcxproj +++ b/build/msw/wx_core.vcxproj @@ -1235,7 +1235,6 @@ - diff --git a/build/msw/wx_core.vcxproj.filters b/build/msw/wx_core.vcxproj.filters index d8057768a5..3d054e9e26 100644 --- a/build/msw/wx_core.vcxproj.filters +++ b/build/msw/wx_core.vcxproj.filters @@ -1090,9 +1090,6 @@ Common Headers - - Common Headers - Common Headers diff --git a/build/msw/wx_vc7_base.vcproj b/build/msw/wx_vc7_base.vcproj index 3a48f12db1..22993e476a 100644 --- a/build/msw/wx_vc7_base.vcproj +++ b/build/msw/wx_vc7_base.vcproj @@ -1027,6 +1027,9 @@ + + diff --git a/build/msw/wx_vc7_core.vcproj b/build/msw/wx_vc7_core.vcproj index 2427c2944c..117b6efbc3 100644 --- a/build/msw/wx_vc7_core.vcproj +++ b/build/msw/wx_vc7_core.vcproj @@ -2147,9 +2147,6 @@ - - diff --git a/build/msw/wx_vc8_base.vcproj b/build/msw/wx_vc8_base.vcproj index 88700558c6..d7bb2eb254 100644 --- a/build/msw/wx_vc8_base.vcproj +++ b/build/msw/wx_vc8_base.vcproj @@ -1967,6 +1967,10 @@ RelativePath="..\..\include\wx\evtloop.h" > + + diff --git a/build/msw/wx_vc8_core.vcproj b/build/msw/wx_vc8_core.vcproj index ec5944ffc8..d42bb1e612 100644 --- a/build/msw/wx_vc8_core.vcproj +++ b/build/msw/wx_vc8_core.vcproj @@ -3364,10 +3364,6 @@ RelativePath="..\..\include\wx\encinfo.h" > - - diff --git a/build/msw/wx_vc9_base.vcproj b/build/msw/wx_vc9_base.vcproj index 9cecac72e4..ec52aebd6a 100644 --- a/build/msw/wx_vc9_base.vcproj +++ b/build/msw/wx_vc9_base.vcproj @@ -1963,6 +1963,10 @@ RelativePath="..\..\include\wx\evtloop.h" > + + diff --git a/build/msw/wx_vc9_core.vcproj b/build/msw/wx_vc9_core.vcproj index 09e025ae63..cb6cbf6566 100644 --- a/build/msw/wx_vc9_core.vcproj +++ b/build/msw/wx_vc9_core.vcproj @@ -3360,10 +3360,6 @@ RelativePath="..\..\include\wx\encinfo.h" > - - From 48faeb65b3d1786a19359798f46b1d8a92d7e8d4 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 4 Jan 2018 21:39:57 +0100 Subject: [PATCH 094/916] Fix copy ctor in numeric validators classes wxFloatingPointValidator and wxIntegerValidator copy ctor didn't copy the associated window, so it was lost when the validator was Clone()'d. Fix this by correctly using wxValidator copy ctor, instead of the default one, in the copy ctor of the common wxNumValidatorBase base class. --- include/wx/valnum.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/wx/valnum.h b/include/wx/valnum.h index 540f9d6b82..f4436cb027 100644 --- a/include/wx/valnum.h +++ b/include/wx/valnum.h @@ -56,7 +56,7 @@ protected: m_style = style; } - wxNumValidatorBase(const wxNumValidatorBase& other) : wxValidator() + wxNumValidatorBase(const wxNumValidatorBase& other) : wxValidator(other) { m_style = other.m_style; } From d332ccfd6f8fe82d439a35dc22b5c9f8e6efd421 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 4 Jan 2018 22:58:50 +0100 Subject: [PATCH 095/916] Add support for wxStaticBoxSizer "windowlabel" property to XRC Allow specifying arbitrary windows as labels for the static boxes created from XRC. Note that wxStaticBox XRC handler itself wasn't updated to support this, as this handler seems to be quite useless because it's impossible to define any box children with it, so only wxStaticBoxSizer XRC handler really matters, anyhow. --- docs/doxygen/overviews/xrc_format.h | 3 ++ samples/xrc/rc/controls.xrc | 52 +++++++++++++++++++++++ src/xrc/xh_sizer.cpp | 65 +++++++++++++++++++++++++---- 3 files changed, 112 insertions(+), 8 deletions(-) diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index 187d8677d1..66dada62a6 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -2416,6 +2416,9 @@ support the following properties: Sizer orientation, "wxHORIZONTAL" or "wxVERTICAL" (default: wxHORIZONTAL).} @row3col{label, @ref overview_xrcformat_type_text, Label to be used for the static box around the sizer (default: empty).} +@row3col{windowlabel, any window, + Window to be used instead of the plain text label (default: none). + This property is only available since wxWidgets 3.1.1.}} @endTable @subsection overview_xrcformat_wxgridsizer wxGridSizer diff --git a/samples/xrc/rc/controls.xrc b/samples/xrc/rc/controls.xrc index bac4812e5e..8072505d22 100644 --- a/samples/xrc/rc/controls.xrc +++ b/samples/xrc/rc/controls.xrc @@ -983,6 +983,58 @@ lay them out using wxSizers, absolute positioning, everything you like! wxVERTICAL + + wxALL + 5 + + + + + + + wxALL + 5 + + + + + + wxALL + 5 + + + 1 + + + + + + wxGROW|wxALL + 5 + + wxVERTICAL + + + + 1 + + + + wxALL + 5 + + + + + + + wxALL + 5 + + + 1 + + diff --git a/src/xrc/xh_sizer.cpp b/src/xrc/xh_sizer.cpp index 8a91eb91e9..2a17184a55 100644 --- a/src/xrc/xh_sizer.cpp +++ b/src/xrc/xh_sizer.cpp @@ -320,14 +320,63 @@ wxSizer* wxSizerXmlHandler::Handle_wxBoxSizer() #if wxUSE_STATBOX wxSizer* wxSizerXmlHandler::Handle_wxStaticBoxSizer() { - return new wxStaticBoxSizer( - new wxStaticBox(m_parentAsWindow, - GetID(), - GetText(wxT("label")), - wxDefaultPosition, wxDefaultSize, - 0/*style*/, - GetName()), - GetStyle(wxT("orient"), wxHORIZONTAL)); + wxXmlNode* nodeWindowLabel = GetParamNode(wxS("windowlabel")); + wxString const& labelText = GetText(wxS("label")); + + wxStaticBox* box = NULL; + if ( nodeWindowLabel ) + { + if ( !labelText.empty() ) + { + ReportError("Either label or windowlabel can be used, but not both"); + return NULL; + } + +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + wxXmlNode* n = nodeWindowLabel->GetChildren(); + if ( !n ) + { + ReportError("windowlabel must have a window child"); + return NULL; + } + + if ( n->GetNext() ) + { + ReportError("windowlabel can only have a single child"); + return NULL; + } + + wxObject* const item = CreateResFromNode(n, m_parent, NULL); + wxWindow* const wndLabel = wxDynamicCast(item, wxWindow); + if ( !wndLabel ) + { + ReportError(n, "windowlabel child must be a window"); + return NULL; + } + + box = new wxStaticBox(m_parentAsWindow, + GetID(), + wndLabel, + wxDefaultPosition, wxDefaultSize, + 0/*style*/, + GetName()); +#else // !wxHAS_WINDOW_LABEL_IN_STATIC_BOX + ReportError("Support for using windows as wxStaticBox labels is " + "missing in this build of wxWidgets."); + return NULL; +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX/!wxHAS_WINDOW_LABEL_IN_STATIC_BOX + } + else // Using plain text label. + { + box = new wxStaticBox(m_parentAsWindow, + GetID(), + labelText, + wxDefaultPosition, wxDefaultSize, + 0/*style*/, + GetName()); + } + + return new wxStaticBoxSizer(box, GetStyle(wxS("orient"), wxHORIZONTAL)); } #endif // wxUSE_STATBOX From 00d8434156178e9e02cb733e4abb61d62a0dd913 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Fri, 5 Jan 2018 10:01:38 -0800 Subject: [PATCH 096/916] Avoid debug message when there is no session manager See #16024 --- src/gtk/utilsgtk.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gtk/utilsgtk.cpp b/src/gtk/utilsgtk.cpp index 093db50437..7a43641e96 100644 --- a/src/gtk/utilsgtk.cpp +++ b/src/gtk/utilsgtk.cpp @@ -254,7 +254,11 @@ static wxString GetSM() if ( !smc_conn ) { - wxLogDebug("Failed to connect to session manager: %s", smerr); + // Don't report error if there is no session manager at all + if (getenv("SESSION_MANAGER")) + { + wxLogDebug("Failed to connect to session manager: %s", smerr); + } return wxEmptyString; } From c8b6ca308b69e8b7ed3d8a933520f01e0e6b4196 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Fri, 5 Jan 2018 19:51:47 +0100 Subject: [PATCH 097/916] Update year in copyright notices to 2018 Use 2018 instead of 2017 (mostly in version info files). See https://github.com/wxWidgets/wxWidgets/pull/661 --- CMakeLists.txt | 2 +- docs/doxygen/mainpages/copyright.h | 2 +- docs/doxygen/regen.sh | 2 +- interface/wx/aboutdlg.h | 2 +- interface/wx/generic/aboutdlgg.h | 2 +- samples/Info.plist | 6 +++--- samples/docview/Info.plist | 6 +++--- samples/minimal/Info_cocoa.plist | 6 +++--- src/common/utilscmn.cpp | 2 +- src/msw/version.rc | 2 +- src/osx/carbon/Info.plist.in | 6 +++--- 11 files changed, 19 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5e47eb01e7..42be0430e7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,7 +47,7 @@ else() endif() set(wxVERSION ${wxMAJOR_VERSION}.${wxMINOR_VERSION}.${wxRELEASE_NUMBER}) -set(wxCOPYRIGHT "1992-2016 wxWidgets") +set(wxCOPYRIGHT "1992-2018 wxWidgets") include(build/cmake/main.cmake) diff --git a/docs/doxygen/mainpages/copyright.h b/docs/doxygen/mainpages/copyright.h index 13fda6de6d..88eadadd8d 100644 --- a/docs/doxygen/mainpages/copyright.h +++ b/docs/doxygen/mainpages/copyright.h @@ -11,7 +11,7 @@ @section section_copyright wxWidgets Copyrights and Licenses -Copyright (c) 1992-2017 Julian Smart, Vadim Zeitlin, Stefan Csomor, Robert +Copyright (c) 1992-2018 Julian Smart, Vadim Zeitlin, Stefan Csomor, Robert Roebling, and other members of the wxWidgets team, please see the acknowledgements section below. diff --git a/docs/doxygen/regen.sh b/docs/doxygen/regen.sh index 0c108350ec..87462f9931 100755 --- a/docs/doxygen/regen.sh +++ b/docs/doxygen/regen.sh @@ -183,7 +183,7 @@ if [[ "$1" = "docset" ]]; then defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetFeedURL $ATOMDIR/$ATOM defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetFallbackURL http://docs.wxwidgets.org defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetDescription "API reference and conceptual documentation for wxWidgets 3.0" - defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info NSHumanReadableCopyright "Copyright 1992-2017 wxWidgets team, Portions 1996 Artificial Intelligence Applications Institute" + defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info NSHumanReadableCopyright "Copyright 1992-2018 wxWidgets team, Portions 1996 Artificial Intelligence Applications Institute" defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info isJavaScriptEnabled true defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info dashIndexFilePath index.html defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetPlatformFamily wx diff --git a/interface/wx/aboutdlg.h b/interface/wx/aboutdlg.h index f92ce60106..4d3bf6340f 100644 --- a/interface/wx/aboutdlg.h +++ b/interface/wx/aboutdlg.h @@ -37,7 +37,7 @@ aboutInfo.SetName("MyApp"); aboutInfo.SetVersion(MY_APP_VERSION_STRING); aboutInfo.SetDescription(_("My wxWidgets-based application!")); - aboutInfo.SetCopyright("(C) 1992-2017"); + aboutInfo.SetCopyright("(C) 1992-2018"); aboutInfo.SetWebSite("http://myapp.org"); aboutInfo.AddDeveloper("My Self"); diff --git a/interface/wx/generic/aboutdlgg.h b/interface/wx/generic/aboutdlgg.h index d201f22a03..c0fbab297b 100644 --- a/interface/wx/generic/aboutdlgg.h +++ b/interface/wx/generic/aboutdlgg.h @@ -34,7 +34,7 @@ aboutInfo.SetName("MyApp"); aboutInfo.SetVersion(MY_APP_VERSION_STRING); aboutInfo.SetDescription(_("My wxWidgets-based application!")); - aboutInfo.SetCopyright("(C) 1992-2017"); + aboutInfo.SetCopyright("(C) 1992-2018"); aboutInfo.SetWebSite("http://myapp.org"); aboutInfo.AddDeveloper("My Self"); diff --git a/samples/Info.plist b/samples/Info.plist index 3e57462ed4..1476b139d8 100644 --- a/samples/Info.plist +++ b/samples/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(PRODUCT_NAME) CFBundleGetInfoString - $(PRODUCT_NAME) version 3.1.1, (c) 2005-2017 wxWidgets + $(PRODUCT_NAME) version 3.1.1, (c) 2005-2018 wxWidgets CFBundleIconFile wxmac.icns CFBundleIdentifier @@ -15,7 +15,7 @@ CFBundleInfoDictionaryVersion 6.0 CFBundleLongVersionString - 3.1.1, (c) 2005-2017 wxWidgets + 3.1.1, (c) 2005-2018 wxWidgets CFBundleName $(PRODUCT_NAME) CFBundlePackageType @@ -31,6 +31,6 @@ LSRequiresCarbon NSHumanReadableCopyright - Copyright 2005-2017 wxWidgets + Copyright 2005-2018 wxWidgets diff --git a/samples/docview/Info.plist b/samples/docview/Info.plist index 195a02675a..b39ead40c6 100644 --- a/samples/docview/Info.plist +++ b/samples/docview/Info.plist @@ -51,7 +51,7 @@ CFBundleExecutable $(PRODUCT_NAME) CFBundleGetInfoString - $(PRODUCT_NAME) version 3.1.1, (c) 2005-2017 wxWidgets + $(PRODUCT_NAME) version 3.1.1, (c) 2005-2018 wxWidgets CFBundleIconFile doc CFBundleIdentifier @@ -66,7 +66,7 @@ it CFBundleLongVersionString - 3.1.1, (c) 2005-2017 wxWidgets + 3.1.1, (c) 2005-2018 wxWidgets CFBundleName $(PRODUCT_NAME) CFBundlePackageType @@ -82,6 +82,6 @@ LSRequiresCarbon NSHumanReadableCopyright - Copyright 2005-2017 wxWidgets + Copyright 2005-2018 wxWidgets diff --git a/samples/minimal/Info_cocoa.plist b/samples/minimal/Info_cocoa.plist index b8709b4d5b..561ee3ad00 100644 --- a/samples/minimal/Info_cocoa.plist +++ b/samples/minimal/Info_cocoa.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(PRODUCT_NAME) CFBundleGetInfoString - $(PRODUCT_NAME) version 3.1.1, (c) 2005-2017 wxWidgets + $(PRODUCT_NAME) version 3.1.1, (c) 2005-2018 wxWidgets CFBundleIconFile wxmac.icns CFBundleIdentifier @@ -22,7 +22,7 @@ it CFBundleLongVersionString - 3.1.1, (c) 2005-2017 wxWidgets + 3.1.1, (c) 2005-2018 wxWidgets CFBundleName $(PRODUCT_NAME) CFBundlePackageType @@ -34,7 +34,7 @@ CFBundleVersion 3.1.1 NSHumanReadableCopyright - Copyright 2005-2017 wxWidgets + Copyright 2005-2018 wxWidgets NSPrincipalClass wxNSApplication diff --git a/src/common/utilscmn.cpp b/src/common/utilscmn.cpp index 8b31568fa5..81fddcc644 100644 --- a/src/common/utilscmn.cpp +++ b/src/common/utilscmn.cpp @@ -1415,7 +1415,7 @@ wxVersionInfo wxGetLibraryVersionInfo() wxMINOR_VERSION, wxRELEASE_NUMBER, msg, - wxS("Copyright (c) 1995-2017 wxWidgets team")); + wxS("Copyright (c) 1995-2018 wxWidgets team")); } void wxInfoMessageBox(wxWindow* parent) diff --git a/src/msw/version.rc b/src/msw/version.rc index 561fe87fd3..f1ddd9dbcc 100644 --- a/src/msw/version.rc +++ b/src/msw/version.rc @@ -92,7 +92,7 @@ BEGIN VALUE "FileDescription", "wxWidgets " WXLIBDESC " library\0" VALUE "FileVersion", wxVERSION_NUM_DOT_STRING "\0" VALUE "InternalName", wxSTRINGIZE(WXDLLNAME) "\0" - VALUE "LegalCopyright", "Copyright © 1993-2017 wxWidgets development team\0" + VALUE "LegalCopyright", "Copyright © 1993-2018 wxWidgets development team\0" VALUE "OriginalFilename", wxSTRINGIZE(WXDLLNAME) ".dll\0" VALUE "ProductName", "wxWidgets\0" VALUE "ProductVersion", wxVERSION_NUM_DOT_STRING "\0" diff --git a/src/osx/carbon/Info.plist.in b/src/osx/carbon/Info.plist.in index 7007f6d8c0..5f9c8f0338 100644 --- a/src/osx/carbon/Info.plist.in +++ b/src/osx/carbon/Info.plist.in @@ -32,11 +32,11 @@ CFBundleShortVersionString VERSION CFBundleGetInfoString - EXECUTABLE version VERSION, (c) 2002-2017 wxWidgets + EXECUTABLE version VERSION, (c) 2002-2018 wxWidgets CFBundleLongVersionString - VERSION, (c) 2002-2017 wxWidgets + VERSION, (c) 2002-2018 wxWidgets NSHumanReadableCopyright - Copyright 2002-2017 wxWidgets + Copyright 2002-2018 wxWidgets LSRequiresCarbon CSResourcesFileMapped From af56ccd46f777d7995bd426772acc66a46d96e67 Mon Sep 17 00:00:00 2001 From: rmpowell77 Date: Sat, 6 Jan 2018 08:37:20 -0800 Subject: [PATCH 098/916] Use semicolons as statement separators in wxHTML code This avoids (harmless in this, but not necessarily in the other, case) clang warning: possible misuse of comma operator here [-Wcomma]. See https://github.com/wxWidgets/wxWidgets/pull/662 --- include/wx/html/htmlcell.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/wx/html/htmlcell.h b/include/wx/html/htmlcell.h index 199768effd..6f726b2795 100644 --- a/include/wx/html/htmlcell.h +++ b/include/wx/html/htmlcell.h @@ -232,7 +232,7 @@ public: virtual wxHtmlCell* GetFirstChild() const { return NULL; } // members writing methods - virtual void SetPos(int x, int y) {m_PosX = x, m_PosY = y;} + virtual void SetPos(int x, int y) {m_PosX = x; m_PosY = y;} void SetLink(const wxHtmlLinkInfo& link); void SetNext(wxHtmlCell *cell) {m_Next = cell;} @@ -486,7 +486,7 @@ public: // returns background colour (of wxNullColour if none set), so that widgets can // adapt to it: wxColour GetBackgroundColour(); - void SetBorder(const wxColour& clr1, const wxColour& clr2, int border = 1) {m_Border = border; m_BorderColour1 = clr1, m_BorderColour2 = clr2;} + void SetBorder(const wxColour& clr1, const wxColour& clr2, int border = 1) {m_Border = border; m_BorderColour1 = clr1; m_BorderColour2 = clr2;} virtual wxHtmlLinkInfo* GetLink(int x = 0, int y = 0) const wxOVERRIDE; virtual const wxHtmlCell* Find(int condition, const void* param) const wxOVERRIDE; From 572fe37898f8d4f8664849ec76483dd63ea13a13 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 6 Jan 2018 11:07:11 -0800 Subject: [PATCH 099/916] Avoid calling default "key-press-event" handler We have already done everything it does, and doing it again seems to cause an infinite loop with WebKitGTK. See #17932 --- src/gtk/toplevel.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gtk/toplevel.cpp b/src/gtk/toplevel.cpp index f63fdd3e46..ae825d4039 100644 --- a/src/gtk/toplevel.cpp +++ b/src/gtk/toplevel.cpp @@ -215,16 +215,16 @@ wxgtk_tlw_key_press_event(GtkWidget *widget, GdkEventKey *event) // GTK+ gtk_window_key_press_event() handler. if ( gtk_window_propagate_key_event(window, event) ) - return TRUE; + return true; if ( gtk_window_activate_key(window, event) ) - return TRUE; + return true; void* parent_class = g_type_class_peek_parent(G_OBJECT_GET_CLASS(widget)); - if (GTK_WIDGET_CLASS(parent_class)->key_press_event(widget, event)) - return TRUE; + GTK_WIDGET_CLASS(parent_class)->key_press_event(widget, event); - return FALSE; + // Avoid calling the default handler, we have already done everything it does + return true; } } From 1d037dd4c9d0096f1eb9493f88de4e239e3275fd Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 01:14:17 +0100 Subject: [PATCH 100/916] Don't disable wxStaticBox window label when disabling the box This behaviour might be not completely intuitive, but it makes it much simpler to handle the box state using a checkbox as the label control (which is by far the most common case of using box window labels). Notice that while we could add a separate EnableWithoutLabel() method to wxStaticBox to make it possible to set the state of the box directly relatively easily, it wouldn't help with using wxEVT_UPDATE_UI for managing the box state indirectly as it relies on calling Enable() only. And this solution does allow wxEVT_UPDATE_UI handlers for the box itself to work (provided the handler takes care to check for the event object being the box itself, as otherwise it would still disable the child checkbox when its wxEVT_UPDATE_UI bubbles up to the box). --- include/wx/statbox.h | 1 + interface/wx/statbox.h | 26 ++++++++++++++++++++++++++ src/common/statboxcmn.cpp | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 66 insertions(+) diff --git a/include/wx/statbox.h b/include/wx/statbox.h index 0e6e4f3ac3..ecb07ed92f 100644 --- a/include/wx/statbox.h +++ b/include/wx/statbox.h @@ -31,6 +31,7 @@ public: // overridden base class virtuals virtual bool HasTransparentBackground() wxOVERRIDE { return true; } + virtual bool Enable(bool enable = true) wxOVERRIDE; // implementation only: this is used by wxStaticBoxSizer to account for the // need for extra space taken by the static box diff --git a/interface/wx/statbox.h b/interface/wx/statbox.h index d7aae13cc0..c0fcac378e 100644 --- a/interface/wx/statbox.h +++ b/interface/wx/statbox.h @@ -158,4 +158,30 @@ public: const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = wxStaticBoxNameStr); + + /** + Enables or disables the box without affecting its label window, if any. + + wxStaticBox overrides wxWindow::Enable() in order to avoid disabling + the control used as a label, if this box is using one. This is done in + order to allow using a wxCheckBox, for example, label and enable or + disable the box according to the state of the checkbox: if disabling + the box also disabled the checkbox in this situation, it would make it + impossible for the user to re-enable the box after disabling it, so the + checkbox stays enabled even if @c box->Enable(false) is called. + + However with the actual behaviour, implemented in this overridden + method, the following code (shown using C++11 only for convenience, + this behaviour is not C++11-specific): + @code + auto check = new wxCheckBox(parent, wxID_ANY, "Use the box"); + auto box = new wxStaticBox(parent, wxID_ANY, check); + check->Bind(wxEVT_CHECKBOX, + [box](wxCommandEvent& event) { + box->Enable(event.IsChecked()); + }); + @endcode + does work as expected. + */ + virtual bool Enable(bool enable = true); }; diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 4db934146a..0e77dfe74f 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -78,6 +78,45 @@ void wxStaticBoxBase::WXDestroyWithoutChildren() delete this; } +bool wxStaticBoxBase::Enable(bool enable) +{ +#ifdef wxHAS_WINDOW_LABEL_IN_STATIC_BOX + // We want to keep the window label enabled even if the static box is + // disabled because this label is often used to enable/disable the box + // (e.g. a checkbox or a radio button is commonly used for this purpose) + // and it would be impossible to re-enable the box back if disabling it + // also disabled the label control. + // + // Unfortunately it is _not_ enough to just disable the box and then enable + // the label window as it would still remain disabled under some platforms + // (those where wxHAS_NATIVE_ENABLED_MANAGEMENT is defined, e.g. wxGTK) for + // as long as its parent is disabled. So we avoid disabling the box at all + // in this case and only disable its children, but still pretend that the + // box is disabled by updating its m_isEnabled, as it would be surprising + // if IsEnabled() didn't return false after disabling the box, for example. + if ( m_labelWin ) + { + if ( enable == IsThisEnabled() ) + return false; + + const wxWindowList& children = GetChildren(); + for ( wxWindowList::const_iterator i = children.begin(); + i != children.end(); + ++i ) + { + if ( *i != m_labelWin ) + (*i)->Enable(enable); + } + + m_isEnabled = enable; + + return true; + } +#endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX + + return wxNavigationEnabled::Enable(enable); +} + // ---------------------------------------------------------------------------- // XTI // ---------------------------------------------------------------------------- From bfcd51cb6a51269fdae6d210b13b5ba5474f3e5f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 01:25:10 +0100 Subject: [PATCH 101/916] Make wxValidator::SetWindow() virtual Allow overriding the method called when the validator is associated with the window, this can be convenient to perform some initialization on the validator instance actually used as it can't be done on the initially created object itself because it will be cloned by SetValidator(), creating a new instance. Also change SetWindow() to take wxWindow instead of wxWindowBase, this still requires the cast in wxWindow::SetValidator(), but it's better to have it there rather than in wxValidator and use the simpler type in the public function signature. --- include/wx/validate.h | 9 ++++++--- interface/wx/validate.h | 11 +++++++---- src/common/wincmn.cpp | 4 ++-- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/include/wx/validate.h b/include/wx/validate.h index 477af1019a..0fcc58e476 100644 --- a/include/wx/validate.h +++ b/include/wx/validate.h @@ -62,9 +62,12 @@ public: // Called to transfer data from the window virtual bool TransferFromWindow() { return false; } + // Called when the validator is associated with a window, may be useful to + // override if it needs to somehow initialize the window. + virtual void SetWindow(wxWindow *win) { m_validatorWindow = win; } + // accessors - wxWindow *GetWindow() const { return (wxWindow *)m_validatorWindow; } - void SetWindow(wxWindowBase *win) { m_validatorWindow = win; } + wxWindow *GetWindow() const { return m_validatorWindow; } // validators beep by default if invalid key is pressed, this function // allows to change this @@ -85,7 +88,7 @@ public: #endif protected: - wxWindowBase *m_validatorWindow; + wxWindow *m_validatorWindow; private: static bool ms_isSilent; diff --git a/interface/wx/validate.h b/interface/wx/validate.h index 5a1c4e81d9..1096077019 100644 --- a/interface/wx/validate.h +++ b/interface/wx/validate.h @@ -85,8 +85,11 @@ public: /** Associates a window with the validator. - This function is automatically called by wxWidgets when creating a wxWindow-derived - class instance which takes a wxValidator reference. + This function is automatically called by wxWidgets when creating a + wxWindow-derived class instance which takes a wxValidator reference. + Since wxWidgets 3.1.1, it can be overridden in custom validators in + order to perform any one-time initialization or checks of the window + when the validator is associated with it. E.g. @code @@ -94,9 +97,9 @@ public: wxTextValidator(wxFILTER_ALPHA, &g_data.m_string)); @endcode will automatically link the wxTextValidator instance with the wxTextCtrl - instance. + instance and call SetWindow() method on the wxTextValidator object. */ - void SetWindow(wxWindow* window); + virtual void SetWindow(wxWindow* window); /** This overridable function is called when the value in the window must diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index f07acd465d..b0e542a171 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -1782,10 +1782,10 @@ void wxWindowBase::SetValidator(const wxValidator& validator) if ( m_windowValidator ) delete m_windowValidator; - m_windowValidator = (wxValidator *)validator.Clone(); + m_windowValidator = static_cast(validator.Clone()); if ( m_windowValidator ) - m_windowValidator->SetWindow(this); + m_windowValidator->SetWindow(static_cast(this)); } #endif // wxUSE_VALIDATORS From a6d677a0fec04b3aeae0fde2ed038b31b7c9ee0c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 01:26:53 +0100 Subject: [PATCH 102/916] Check for correct window in wxNumValidatorBase::SetWindow() Override SetWindow() to check that the validator is being associated with the window of the correct type, this allows to trigger an assert immediately if this is not the case, making it simpler to find the error as the call to SetValitator() on the wrong window will be in the call stack when this happens, unlike before when the assert would happen only at some later time. --- include/wx/valnum.h | 4 ++++ src/common/valnum.cpp | 19 +++++++++++++++++-- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/include/wx/valnum.h b/include/wx/valnum.h index f4436cb027..42f7675a76 100644 --- a/include/wx/valnum.h +++ b/include/wx/valnum.h @@ -50,6 +50,10 @@ public: // we don't need this as we do our validation on the fly here. virtual bool Validate(wxWindow * WXUNUSED(parent)) wxOVERRIDE { return true; } + // Override base class method to check that the window is a text control or + // combobox. + virtual void SetWindow(wxWindow *win) wxOVERRIDE; + protected: wxNumValidatorBase(int style) { diff --git a/src/common/valnum.cpp b/src/common/valnum.cpp index bb483502a6..4f11072b1c 100644 --- a/src/common/valnum.cpp +++ b/src/common/valnum.cpp @@ -52,6 +52,23 @@ int wxNumValidatorBase::GetFormatFlags() const return flags; } +void wxNumValidatorBase::SetWindow(wxWindow *win) +{ + wxValidator::SetWindow(win); + +#if wxUSE_TEXTCTRL + if ( wxDynamicCast(m_validatorWindow, wxTextCtrl) ) + return; +#endif // wxUSE_TEXTCTRL + +#if wxUSE_COMBOBOX + if ( wxDynamicCast(m_validatorWindow, wxComboBox) ) + return; +#endif // wxUSE_COMBOBOX + + wxFAIL_MSG("Can only be used with wxTextCtrl or wxComboBox"); +} + wxTextEntry *wxNumValidatorBase::GetTextEntry() const { #if wxUSE_TEXTCTRL @@ -64,8 +81,6 @@ wxTextEntry *wxNumValidatorBase::GetTextEntry() const return combo; #endif // wxUSE_COMBOBOX - wxFAIL_MSG("Can only be used with wxTextCtrl or wxComboBox"); - return NULL; } From c1e097cc680733cd5fa7cc12faa6b3aa037c7950 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 17:03:46 +0100 Subject: [PATCH 103/916] Update CMake files list Regenerate the file that was forgotten before by the changes of 48a5d6c5f835ce70d7b06a89a51a164b58c19dad (see #18038) and 95b28abfdf6ad32a62884112d495076f38ec6e5b (see https://github.com/wxWidgets/wxWidgets/pull/541). --- build/cmake/files.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index ee77fecdb2..018fd0b30d 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -509,6 +509,7 @@ set(BASE_CMN_HDR wx/event.h wx/eventfilter.h wx/evtloop.h + wx/evtloopsrc.h wx/except.h wx/features.h wx/flags.h @@ -1009,7 +1010,6 @@ set(GUI_CMN_HDR wx/docmdi.h wx/docview.h wx/effects.h - wx/evtloopsrc.h wx/fdrepdlg.h wx/filectrl.h wx/filehistory.h @@ -1054,6 +1054,7 @@ set(GUI_CMN_HDR wx/paper.h wx/persist.h wx/persist/bookctrl.h + wx/persist/dataview.h wx/persist/splitter.h wx/persist/toplevel.h wx/persist/treebook.h From 9a75103d9aa24620678f8cfac2c48d4cab9537bb Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 18:33:26 +0100 Subject: [PATCH 104/916] Fix upmake bug with conditions in bakefile files Don't strip the tags from bakefile variables (this bug fix is actually in Makefile::Update Perl module, but is incorporated here by reference) and remove these tags which somehow made it into upmake input file, as they make no sense there. Note also that upmake was recreated using a different version of fatpack (0.010007), which accounts for many other differences in this file. --- build/files | 4 - build/upmake | 580 ++++++++++++++++++++------------------------------- 2 files changed, 222 insertions(+), 362 deletions(-) diff --git a/build/files b/build/files index d450ec7464..e6d0c67a6d 100644 --- a/build/files +++ b/build/files @@ -2067,7 +2067,6 @@ DFB_LOWLEVEL_HDR = OSX_LOWLEVEL_SRC = # Shared wxMac and wxCocoa files - src/osx/artmac.cpp src/osx/brush.cpp src/osx/dialog_osx.cpp @@ -2091,12 +2090,10 @@ OSX_LOWLEVEL_SRC = src/osx/core/printmac.cpp src/osx/core/timer.cpp src/osx/core/utilsexc_cf.cpp - OSX_LOWLEVEL_HDR = OSX_COMMON_SRC = - # Common controls implementation src/osx/anybutton_osx.cpp src/osx/bmpbuttn_osx.cpp @@ -2169,7 +2166,6 @@ OSX_COMMON_SRC = src/generic/prntdlgg.cpp src/generic/statusbr.cpp src/generic/textmeasure.cpp - # Header files like wx/osx/foo.h which include wx/osx/carbon/foo.h OSX_SHARED_HDR = diff --git a/build/upmake b/build/upmake index d74de1d71e..e6dffcd114 100755 --- a/build/upmake +++ b/build/upmake @@ -18,9 +18,44 @@ $fatpacked{"Makefile/Update.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<< our @EXPORT = qw(read_files_list upmake); - our $VERSION = '0.3'; # VERSION + # VERSION + =head1 SYNOPSIS + use Makefile::Update; + my $vars = read_files_list('files.lst'); + upmake('foo.vcxproj', $vars->{sources}, $vars->{headers}); + + =cut + + =func read_files_list + + Reads the file containing the file lists definitions and returns a hash ref + with variable names as keys and refs to arrays of the file names as values. + + Takes an (open) file handle as argument. + + The file contents is supposed to have the following very simple format: + + # Comments are allowed and ignored. + # + # The variable definitions must always be in the format shown below, + # i.e. whitespace is significant and there should always be a single + # file per line. + sources = + file1.cpp + file2.cpp + + headers = + file1.h + file2.h + + # It is also possible to define variables in terms of other variables + # defined before it in the file (no forward references): + everything = + $sources + $headers + =cut sub read_files_list { @@ -55,6 +90,41 @@ $fatpacked{"Makefile/Update.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<< return \%vars; } + =func upmake + + Update a file in place using the specified function and passing it the rest of + the arguments. + + The first parameter is either just the file path or a hash reference which may + contain the following keys: + + =over + + =item C + + The path to the file to be updated, required. + + =item C + + If true, give more messages about what is being done. + + =item C + + If true, don't output any non-error messages. + + =item C + + If true, don't really update the file but just output whether it would have + been updated or not. If C is also true, also output the diff of the + changes that would have been done. + + =back + + This is meant to be used with C defined in different + Makefile::Update::Xxx modules. + + Returns 1 if the file was changed or 0 otherwise. + =cut sub upmake { @@ -137,104 +207,6 @@ $fatpacked{"Makefile/Update.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<< } 1; - - __END__ - - =pod - - =encoding UTF-8 - - =head1 NAME - - Makefile::Update - Update make files. - - =head1 VERSION - - version 0.3 - - =head1 SYNOPSIS - - use Makefile::Update; - my $vars = read_files_list('files.lst'); - upmake('foo.vcxproj', $vars->{sources}, $vars->{headers}); - - =head1 FUNCTIONS - - =head2 read_files_list - - Reads the file containing the file lists definitions and returns a hash ref - with variable names as keys and refs to arrays of the file names as values. - - Takes an (open) file handle as argument. - - The file contents is supposed to have the following very simple format: - - # Comments are allowed and ignored. - # - # The variable definitions must always be in the format shown below, - # i.e. whitespace is significant and there should always be a single - # file per line. - sources = - file1.cpp - file2.cpp - - headers = - file1.h - file2.h - - # It is also possible to define variables in terms of other variables - # defined before it in the file (no forward references): - everything = - $sources - $headers - - =head2 upmake - - Update a file in place using the specified function and passing it the rest of - the arguments. - - The first parameter is either just the file path or a hash reference which may - contain the following keys: - - =over - - =item C - - The path to the file to be updated, required. - - =item C - - If true, give more messages about what is being done. - - =item C - - If true, don't output any non-error messages. - - =item C - - If true, don't really update the file but just output whether it would have - been updated or not. If C is also true, also output the diff of the - changes that would have been done. - - =back - - This is meant to be used with C defined in different - Makefile::Update::Xxx modules. - - Returns 1 if the file was changed or 0 otherwise. - - =head1 AUTHOR - - Vadim Zeitlin - - =head1 COPYRIGHT AND LICENSE - - This software is copyright (c) 2015 by Vadim Zeitlin. - - This is free software; you can redistribute it and/or modify it under - the same terms as the Perl 5 programming language system itself. - - =cut MAKEFILE_UPDATE $fatpacked{"Makefile/Update/Bakefile0.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'MAKEFILE_UPDATE_BAKEFILE0'; @@ -247,9 +219,32 @@ $fatpacked{"Makefile/Update/Bakefile0.pm"} = '#line '.(1+__LINE__).' "'.__FILE__ use strict; use warnings; - our $VERSION = '0.3'; # VERSION + # VERSION + =head1 SYNOPSIS + This is used exclusively to update wxWidgets C and is probably not + useful outside of wxWidgets project. + + use Makefile::Update::Bakefile0; + Makefile::Update::upmake('bakefiles/files.bkl', \&update_bakefile_0, $vars); + + =head1 SEE ALSO + + Makefile::Update + + =cut + + =func update_bakefile_0 + + Update file with variable definitions in bakefile-0 format with the data + from the hash ref containing all the file lists. + + Takes the (open) file handles of the files to read and to write and the file + lists hash ref as arguments. + + Returns 1 if any changes were made. + =cut sub update_bakefile_0 { @@ -275,6 +270,8 @@ $fatpacked{"Makefile/Update/Bakefile0.pm"} = '#line '.(1+__LINE__).' "'.__FILE__ s///; s/^\s+//; s/\s+$//; + s{]+>}{}; + s{}{}; if (m{}) { # Check if we have any new files. # @@ -311,57 +308,6 @@ $fatpacked{"Makefile/Update/Bakefile0.pm"} = '#line '.(1+__LINE__).' "'.__FILE__ $changed } - - __END__ - - =pod - - =encoding UTF-8 - - =head1 NAME - - Makefile::Update::Bakefile0 - Update bakefile-0.x files list. - - =head1 VERSION - - version 0.3 - - =head1 SYNOPSIS - - This is used exclusively to update wxWidgets C and is probably not - useful outside of wxWidgets project. - - use Makefile::Update::Bakefile0; - Makefile::Update::upmake('bakefiles/files.bkl', \&update_bakefile_0, $vars); - - =head1 FUNCTIONS - - =head2 update_bakefile_0 - - Update file with variable definitions in bakefile-0 format with the data - from the hash ref containing all the file lists. - - Takes the (open) file handles of the files to read and to write and the file - lists hash ref as arguments. - - Returns 1 if any changes were made. - - =head1 SEE ALSO - - Makefile::Update - - =head1 AUTHOR - - Vadim Zeitlin - - =head1 COPYRIGHT AND LICENSE - - This software is copyright (c) 2015 by Vadim Zeitlin. - - This is free software; you can redistribute it and/or modify it under - the same terms as the Perl 5 programming language system itself. - - =cut MAKEFILE_UPDATE_BAKEFILE0 $fatpacked{"Makefile/Update/MSBuild.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'MAKEFILE_UPDATE_MSBUILD'; @@ -374,9 +320,34 @@ $fatpacked{"Makefile/Update/MSBuild.pm"} = '#line '.(1+__LINE__).' "'.__FILE__." use strict; use warnings; - our $VERSION = '0.3'; # VERSION + # VERSION + =head1 SYNOPSIS + Given an MSBuild project C and its associated filters file + C, the functions in this module can be used to update + the list of files in them to correspond to the given ones. + + use Makefile::Update::MSBuild; + upmake_msbuild_project('project.vcxproj', \@sources, \@headers); + + =head1 SEE ALSO + + Makefile::Update, Makefile::Update::VCProj + + =cut + + =func update_msbuild_project + + Update sources and headers in an MSBuild project and filter files. + + Pass the path of the project to update or a hash with the same keys as used by + C as the first parameter and the references to the + sources and headers arrays as the subsequent ones. + + Returns 1 if any changes were made, either to the project itself or to its + associated C<.filters> file. + =cut sub update_msbuild_project { @@ -405,6 +376,15 @@ $fatpacked{"Makefile/Update/MSBuild.pm"} = '#line '.(1+__LINE__).' "'.__FILE__." } + =func update_msbuild + + Update sources and headers in an MSBuild project. + + Parameters: input and output file handles and array references to the sources + and the headers to be used in this project. + + Returns 1 if any changes were made. + =cut sub update_msbuild { @@ -508,6 +488,16 @@ $fatpacked{"Makefile/Update/MSBuild.pm"} = '#line '.(1+__LINE__).' "'.__FILE__." $changed } + =func update_msbuild_filters + + Update sources and headers in an MSBuild filters file. + + Parameters: input and output file handles, array references to the sources + and the headers to be used in this project and a callback used to determine + the filter for the new files. + + Returns 1 if any changes were made. + =cut sub update_msbuild_filters { @@ -635,78 +625,6 @@ $fatpacked{"Makefile/Update/MSBuild.pm"} = '#line '.(1+__LINE__).' "'.__FILE__." $changed } - - __END__ - - =pod - - =encoding UTF-8 - - =head1 NAME - - Makefile::Update::MSBuild - Update list of sources and headers in MSBuild projects. - - =head1 VERSION - - version 0.3 - - =head1 SYNOPSIS - - Given an MSBuild project C and its associated filters file - C, the functions in this module can be used to update - the list of files in them to correspond to the given ones. - - use Makefile::Update::MSBuild; - upmake_msbuild_project('project.vcxproj', \@sources, \@headers); - - =head1 FUNCTIONS - - =head2 update_msbuild_project - - Update sources and headers in an MSBuild project and filter files. - - Pass the path of the project to update or a hash with the same keys as used by - C as the first parameter and the references to the - sources and headers arrays as the subsequent ones. - - Returns 1 if any changes were made, either to the project itself or to its - associated C<.filters> file. - - =head2 update_msbuild - - Update sources and headers in an MSBuild project. - - Parameters: input and output file handles and array references to the sources - and the headers to be used in this project. - - Returns 1 if any changes were made. - - =head2 update_msbuild_filters - - Update sources and headers in an MSBuild filters file. - - Parameters: input and output file handles, array references to the sources - and the headers to be used in this project and a callback used to determine - the filter for the new files. - - Returns 1 if any changes were made. - - =head1 SEE ALSO - - Makefile::Update, Makefile::Update::VCProj - - =head1 AUTHOR - - Vadim Zeitlin - - =head1 COPYRIGHT AND LICENSE - - This software is copyright (c) 2015 by Vadim Zeitlin. - - This is free software; you can redistribute it and/or modify it under - the same terms as the Perl 5 programming language system itself. - - =cut MAKEFILE_UPDATE_MSBUILD $fatpacked{"Makefile/Update/Makefile.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'MAKEFILE_UPDATE_MAKEFILE'; @@ -719,9 +637,53 @@ $fatpacked{"Makefile/Update/Makefile.pm"} = '#line '.(1+__LINE__).' "'.__FILE__. use strict; use warnings; - our $VERSION = '0.3'; # VERSION + # VERSION + =head1 SYNOPSIS + This can be used to update the contents of a variable containing a list of + files in a makefile. + + use Makefile::Update::Makefile; + Makefile::Update::upmake('GNUmakefile', \&update_makefile, $vars); + + =head1 SEE ALSO + + Makefile::Update + + =cut + + =func update_makefile + + Update variable definitions in a makefile format with the data from the hash + ref containing all the file lists. + + Only most straightforward cases of variable or target definitions are + recognized here, i.e. just "var := value", "var = value" or "target: value". + In particular we don't support any GNU make extensions such as "export" or + "override" without speaking of anything more complex. + + On top of it, currently the value should contain a single file per line with + none at all on the first line (but this restriction could be relaxed later if + needed), i.e. the only supported case is + + var = \ + foo \ + bar \ + baz + + and it must be followed by an empty line, too. + + Notice that if any of the "files" in the variable value looks like a makefile + variable, i.e. has "$(foo)" form, it is ignored by this function, i.e. not + removed even if it doesn't appear in the list of files (which will never be + the case normally). + + Takes the (open) file handles of the files to read and to write and the file + lists hash ref as arguments. + + Returns 1 if any changes were made. + =cut sub update_makefile { @@ -1002,78 +964,6 @@ $fatpacked{"Makefile/Update/Makefile.pm"} = '#line '.(1+__LINE__).' "'.__FILE__. $changed } - - __END__ - - =pod - - =encoding UTF-8 - - =head1 NAME - - Makefile::Update::Makefile - Update lists of files in makefile variables. - - =head1 VERSION - - version 0.3 - - =head1 SYNOPSIS - - This can be used to update the contents of a variable containing a list of - files in a makefile. - - use Makefile::Update::Makefile; - Makefile::Update::upmake('GNUmakefile', \&update_makefile, $vars); - - =head1 FUNCTIONS - - =head2 update_makefile - - Update variable definitions in a makefile format with the data from the hash - ref containing all the file lists. - - Only most straightforward cases of variable or target definitions are - recognized here, i.e. just "var := value", "var = value" or "target: value". - In particular we don't support any GNU make extensions such as "export" or - "override" without speaking of anything more complex. - - On top of it, currently the value should contain a single file per line with - none at all on the first line (but this restriction could be relaxed later if - needed), i.e. the only supported case is - - var = \ - foo \ - bar \ - baz - - and it must be followed by an empty line, too. - - Notice that if any of the "files" in the variable value looks like a makefile - variable, i.e. has "$(foo)" form, it is ignored by this function, i.e. not - removed even if it doesn't appear in the list of files (which will never be - the case normally). - - Takes the (open) file handles of the files to read and to write and the file - lists hash ref as arguments. - - Returns 1 if any changes were made. - - =head1 SEE ALSO - - Makefile::Update - - =head1 AUTHOR - - Vadim Zeitlin - - =head1 COPYRIGHT AND LICENSE - - This software is copyright (c) 2015 by Vadim Zeitlin. - - This is free software; you can redistribute it and/or modify it under - the same terms as the Perl 5 programming language system itself. - - =cut MAKEFILE_UPDATE_MAKEFILE $fatpacked{"Makefile/Update/VCProj.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'MAKEFILE_UPDATE_VCPROJ'; @@ -1086,9 +976,32 @@ $fatpacked{"Makefile/Update/VCProj.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\ use strict; use warnings; - our $VERSION = '0.3'; # VERSION + # VERSION + =head1 SYNOPSIS + The function L can be used to update the list of headers and + sources in the given Visual C++ project file C: + + use Makefile::Update::VCProj; + upmake_msbuild_project('project.vcproj', \@sources, \@headers); + + =head1 SEE ALSO + + Makefile::Update, Makefile::Update::MSBuild + + =cut + + =func update_vcproj + + Update sources and headers in a VC++ project. + + Parameters: input and output file handles, array references to the sources + and the headers to be used in this project and a callback used to determine + the filter for the new files. + + Returns 1 if any changes were made. + =cut sub update_vcproj { @@ -1252,57 +1165,6 @@ $fatpacked{"Makefile/Update/VCProj.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\ $changed } - - __END__ - - =pod - - =encoding UTF-8 - - =head1 NAME - - Makefile::Update::VCProj - Update list of sources and headers in Visual C++ projects. - - =head1 VERSION - - version 0.3 - - =head1 SYNOPSIS - - The function L can be used to update the list of headers and - sources in the given Visual C++ project file C: - - use Makefile::Update::VCProj; - upmake_msbuild_project('project.vcproj', \@sources, \@headers); - - =head1 FUNCTIONS - - =head2 update_vcproj - - Update sources and headers in a VC++ project. - - Parameters: input and output file handles, array references to the sources - and the headers to be used in this project and a callback used to determine - the filter for the new files. - - Returns 1 if any changes were made. - - =head1 SEE ALSO - - Makefile::Update, Makefile::Update::MSBuild - - =head1 AUTHOR - - Vadim Zeitlin - - =head1 COPYRIGHT AND LICENSE - - This software is copyright (c) 2015 by Vadim Zeitlin. - - This is free software; you can redistribute it and/or modify it under - the same terms as the Perl 5 programming language system itself. - - =cut MAKEFILE_UPDATE_VCPROJ s/^ //mg for values %fatpacked; @@ -1313,15 +1175,17 @@ no strict 'refs'; if ($] < 5.008) { *{"${class}::INC"} = sub { - if (my $fat = $_[0]{$_[1]}) { - return sub { - return 0 unless length $fat; - $fat =~ s/^([^\n]*\n?)//; - $_ = $1; - return 1; - }; - } - return; + if (my $fat = $_[0]{$_[1]}) { + my $pos = 0; + my $last = length $fat; + return (sub { + return 0 if $pos == $last; + my $next = (1 + index $fat, "\n", $pos) || $last; + $_ .= substr $fat, $pos, $next - $pos; + $pos = $next; + return 1; + }); + } }; } From d7fbf1f820778710277fa419dd76e2fa291ee4e3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 18:43:01 +0100 Subject: [PATCH 105/916] Output the message about bakefile_gen by default in upmake This message shouldn't be given only when --verbose is given, it's useful as a reminder and you shouldn't have to remember to give a special option to get this reminder. --- build/upmake | 2 +- build/upmake_script.pl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/upmake b/build/upmake index e6dffcd114..c02001348d 100755 --- a/build/upmake +++ b/build/upmake @@ -1257,7 +1257,7 @@ my $vars = read_files_list($files); if (!$only_msvs) { if (call_upmake("$Bin/bakefiles/files.bkl", \&update_bakefile_0, $vars)) { - print qq{Don't forget to run "bakefile_gen -b wx.bkl".\n} if $verbose; + print qq{Don't forget to run "bakefile_gen -b wx.bkl".\n}; } } diff --git a/build/upmake_script.pl b/build/upmake_script.pl index 75939c8407..a0855b04e6 100755 --- a/build/upmake_script.pl +++ b/build/upmake_script.pl @@ -53,7 +53,7 @@ my $vars = read_files_list($files); if (!$only_msvs) { if (call_upmake("$Bin/bakefiles/files.bkl", \&update_bakefile_0, $vars)) { - print qq{Don't forget to run "bakefile_gen -b wx.bkl".\n} if $verbose; + print qq{Don't forget to run "bakefile_gen -b wx.bkl".\n}; } } From b2a8c2188f00d4bb2dcb84f5ffab82395c3c9476 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 19:19:29 +0100 Subject: [PATCH 106/916] Remove duplicate wx/scrolbar.h from CMake files list This will avoid warnings when regenerating it the next time. --- build/cmake/files.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index 018fd0b30d..265b868059 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -952,7 +952,6 @@ set(GUI_CMN_HDR wx/renderer.h wx/richmsgdlg.h wx/scrolbar.h - wx/scrolbar.h wx/scrolwin.h wx/selstore.h wx/settings.h From 267067aa8af98ff92ca79c33dcf4f570b8aa4df8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 22:29:42 +0100 Subject: [PATCH 107/916] Regenerate CMake files list from upmake too Replace the specialized Python script used for it before (and which was actually forgotten to run a couple of times already) with a newer version of upmake, which can now update CMake variable definitions too. --- build/cmake/files.cmake | 2 +- build/cmake/update_files.py | 77 --------------------- build/upmake | 131 ++++++++++++++++++++++++++++++++++++ build/upmake_script.pl | 5 ++ 4 files changed, 137 insertions(+), 78 deletions(-) delete mode 100755 build/cmake/update_files.py diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index 265b868059..82690419f8 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -1,4 +1,4 @@ -# Automatically generated from build/files by update_files.py +# Automatically generated from build/files by build/upmake # DO NOT MODIFY MANUALLY ! set(BASE_UNIX_AND_DARWIN_SRC diff --git a/build/cmake/update_files.py b/build/cmake/update_files.py deleted file mode 100755 index aea703b253..0000000000 --- a/build/cmake/update_files.py +++ /dev/null @@ -1,77 +0,0 @@ -#!/usr/bin/env python - -############################################################################# -# Name: build/cmake/update_files.py -# Purpose: Convert build/files to files.cmake -# Author: Tobias Taschner -# Created: 2016-09-20 -# Copyright: (c) 2016 wxWidgets development team -# Licence: wxWindows licence -############################################################################# - -import os -import re - -outpath = os.path.dirname(os.path.abspath(__file__)) - -infile = open(outpath + "/../files", "r") -outfile = open(outpath + "/files.cmake", "w") -outfile.write("# Automatically generated from build/files by " + os.path.basename(__file__) + "\n") -outfile.write("# DO NOT MODIFY MANUALLY !\n\n") - -# Compile regular expressions -var_ex = re.compile('([\w]+)[\s]*=') -comment_ex = re.compile('^[#]+') -evar_ex = re.compile('\$\(([\w]+)\)') -cmd_ex = re.compile('^<') - -files = None -var_name = None - -def write_file_list(): - # Write current list of files to output file - if not var_name: - return - - outfile.write('set(' + var_name + '\n') - for file in files: - outfile.write(' ') - vm = evar_ex.match(file) - if vm: - # Convert variable reference to cmake variable reference - outfile.write('${'+vm.group(1)+'}') - else: - outfile.write(file) - outfile.write('\n') - - outfile.write(')\n\n') - -for line in infile.readlines(): - # Ignore comment lines - m = comment_ex.match(line) - if m: - continue - m = cmd_ex.match(line.strip()) - if m: - # Ignore bake file commands but note them in the target file in - # case we might need them - line = '#TODO: ' + line - - # Check for variable declaration - m = var_ex.match(line) - if m: - write_file_list() - - var_name = m.group(1) - files = [] - else: - # Collect every file entry - file = line.strip() - if file and var_name: - files.append(file) - -# Write last variable -write_file_list() - -infile.close() -outfile.close() diff --git a/build/upmake b/build/upmake index c02001348d..8a10b35d62 100755 --- a/build/upmake +++ b/build/upmake @@ -310,6 +310,132 @@ $fatpacked{"Makefile/Update/Bakefile0.pm"} = '#line '.(1+__LINE__).' "'.__FILE__ } MAKEFILE_UPDATE_BAKEFILE0 +$fatpacked{"Makefile/Update/CMakefile.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'MAKEFILE_UPDATE_CMAKEFILE'; + package Makefile::Update::CMakefile; + # ABSTRACT: Update lists of files in CMake variables. + + use Exporter qw(import); + our @EXPORT = qw(update_cmakefile); + + use strict; + use warnings; + + # VERSION + + =head1 SYNOPSIS + + This can be used to update the contents of a variable containing a list of + files in a CMake file. + + use Makefile::Update::CMakefile; + Makefile::Update::upmake('CMakeLists.txt', \&update_cmakefile, $vars); + + =head1 SEE ALSO + + Makefile::Update + + =cut + + # Variables in our input files use make-like $(var) syntax while CMake uses + # shell-like ${var}, so convert to the target format. + sub _var_to_cmake + { + my ($var) = @_; + $var =~ s/\((\w+)\)/{$1}/g; + $var; + } + + =func update_cmakefile + + Update variable definitions in a CMake file with the data from the hash + ref containing all the file lists. + + The variables are supposed to be defined in the following format: + + set(var + foo + bar + baz + ) + + Notably, each file has to be on its own line, including the first one. + + Takes the (open) file handles of the files to read and to write and the file + lists hash ref as arguments. + + Returns 1 if any changes were made. + =cut + + sub update_cmakefile + { + my ($in, $out, $vars) = @_; + + # Variable whose contents is being currently replaced. + my $var; + + # Hash with files defined for the specified variable as keys and 0 or 1 + # depending on whether we have seen them in the input file as values. + my %files; + + # Set to 1 if we made any changes. + my $changed = 0; + while (<$in>) { + # Preserve the original line to be able to output it with any comments + # that we strip below. + my $line_orig = $_; + + # Get rid of white space and comments. + chomp; + s/^\s+//; + s/\s+$//; + s/ *#.*$//; + + # Are we inside a variable definition? + if (defined $var) { + if (/^\)$/) { + # End of variable definition, check if we have any new files. + # + # TODO Insert them in alphabetical order. + while (my ($file, $seen) = each(%files)) { + if (!$seen) { + # This file wasn't present in the input, add it. + # TODO Use proper indentation. + print $out " $file\n"; + + $changed = 1; + } + } + + undef $var; + } elsif ($_) { + # We're inside a variable definition. + if (not exists $files{$_}) { + # This file was removed. + $changed = 1; + next; + } + + if ($files{$_}) { + warn qq{Duplicate file "$_" in the definition of the } . + qq{variable "$var" at line $.\n} + } else { + $files{$_} = 1; + } + } + } elsif (/^set *\( *(\w+)$/ && exists $vars->{$1}) { + # Start of a new variable definition. + $var = $1; + + %files = map { _var_to_cmake($_) => 0 } @{$vars->{$var}}; + } + + print $out $line_orig; + } + + $changed + } +MAKEFILE_UPDATE_CMAKEFILE + $fatpacked{"Makefile/Update/MSBuild.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'MAKEFILE_UPDATE_MSBUILD'; package Makefile::Update::MSBuild; # ABSTRACT: Update list of sources and headers in MSBuild projects. @@ -1214,6 +1340,7 @@ use FindBin qw($Bin); use Makefile::Update; use Makefile::Update::Bakefile0; +use Makefile::Update::CMakefile; use Makefile::Update::MSBuild; use Makefile::Update::VCProj; @@ -1261,6 +1388,10 @@ if (!$only_msvs) { } } +if (!$only_msvs && !$only_bkl) { + call_upmake("$Bin/cmake/files.cmake", \&update_cmakefile, $vars); +} + if (!$only_bkl) { # Path to the project root directory from the directory containing the # projects. diff --git a/build/upmake_script.pl b/build/upmake_script.pl index a0855b04e6..f11bbeaf72 100755 --- a/build/upmake_script.pl +++ b/build/upmake_script.pl @@ -10,6 +10,7 @@ use FindBin qw($Bin); use Makefile::Update; use Makefile::Update::Bakefile0; +use Makefile::Update::CMakefile; use Makefile::Update::MSBuild; use Makefile::Update::VCProj; @@ -57,6 +58,10 @@ if (!$only_msvs) { } } +if (!$only_msvs && !$only_bkl) { + call_upmake("$Bin/cmake/files.cmake", \&update_cmakefile, $vars); +} + if (!$only_bkl) { # Path to the project root directory from the directory containing the # projects. From 5def115f284efc31fa6c480944cc6e4c1e090c08 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 7 Jan 2018 22:43:24 +0100 Subject: [PATCH 108/916] Extract common type definitions from wx/defs.h to wx/types.h Fix the problem with compiling user code including wx/debug.h as the first wxWidgets header under MSW. This ought to work, but didn't, because wx/debug.h included wx/chartype.h without including wx/defs.h (because there is already an inclusion in the other direction), which defines SIZEOF_WCHAR_T required by wx/chartype.h, first. Notice that we repurpose the existing but completely unused (no mentions of it or the symbols defined in it anywhere neither in wxWidgets nor in any of the code search engines) wx/types.h header as it has a fitting name and this avoids having to add a new header and remove the existing one. --- include/wx/chartype.h | 9 +- include/wx/defs.h | 376 +--------------------------------- include/wx/types.h | 461 +++++++++++++++++++++++++++++++++++------- 3 files changed, 391 insertions(+), 455 deletions(-) diff --git a/include/wx/chartype.h b/include/wx/chartype.h index cc65a8b3a8..9a3a805a21 100644 --- a/include/wx/chartype.h +++ b/include/wx/chartype.h @@ -13,8 +13,13 @@ #ifndef _WX_WXCHARTYPE_H_ #define _WX_WXCHARTYPE_H_ -/* defs.h indirectly includes this file, so don't include it here */ -#include "wx/platform.h" +/* + wx/defs.h indirectly includes this file, so we can't include it here, + include just its subset which defines SIZEOF_WCHAR_T that is used here + (under Unix it's in configure-generated setup.h, so including wx/platform.h + would have been enough, but this is not the case under other platforms). + */ +#include "wx/types.h" /* check whether we have wchar_t and which size it is if we do */ #if !defined(wxUSE_WCHAR_T) diff --git a/include/wx/defs.h b/include/wx/defs.h index 2c5cdeeeb6..b1d11474a0 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -836,381 +836,7 @@ typedef short int WXTYPE; # define wxUSE_DEBUG_NEW_ALWAYS 0 #endif -/* ---------------------------------------------------------------------------- */ -/* standard wxWidgets types */ -/* ---------------------------------------------------------------------------- */ - -/* the type for screen and DC coordinates */ -typedef int wxCoord; - -enum { wxDefaultCoord = -1 }; - -/* ---------------------------------------------------------------------------- */ -/* define fixed length types */ -/* ---------------------------------------------------------------------------- */ - -#if defined(__MINGW32__) - #include -#endif - -/* chars are always one byte (by definition), shorts are always two (in */ -/* practice) */ - -/* 8bit */ -typedef signed char wxInt8; -typedef unsigned char wxUint8; -typedef wxUint8 wxByte; - - -/* 16bit */ -#ifdef SIZEOF_SHORT - #if SIZEOF_SHORT != 2 - #error "wxWidgets assumes sizeof(short) == 2, please fix the code" - #endif -#else - #define SIZEOF_SHORT 2 -#endif - -typedef signed short wxInt16; -typedef unsigned short wxUint16; - -typedef wxUint16 wxWord; - -/* - things are getting more interesting with ints, longs and pointers - - there are several different standard data models described by this table: - - +-----------+----------------------------+ - |type\model | LP64 ILP64 LLP64 ILP32 LP32| - +-----------+----------------------------+ - |char | 8 8 8 8 8 | - |short | 16 16 16 16 16 | - |int | 32 64 32 32 16 | - |long | 64 64 32 32 32 | - |long long | 64 64 64 -- -- | - |void * | 64 64 64 32 32 | - +-----------+----------------------------+ - - Win16 used LP32 (but we don't support it any longer), Win32 obviously used - ILP32 and Win64 uses LLP64 (a.k.a. P64) - - Under Unix LP64 is the most widely used (the only I've ever seen, in fact) - */ - -/* 32bit */ -#if defined(__WINDOWS__) - #if defined(__WIN32__) - typedef int wxInt32; - typedef unsigned int wxUint32; - - /* - Win64 uses LLP64 model and so ints and longs have the same size as - in Win32. - */ - #ifndef SIZEOF_INT - #define SIZEOF_INT 4 - #endif - - #ifndef SIZEOF_LONG - #define SIZEOF_LONG 4 - #endif - - #ifndef SIZEOF_LONG_LONG - #define SIZEOF_LONG_LONG 8 - #endif - - #ifndef SIZEOF_WCHAR_T - /* Windows uses UTF-16 */ - #define SIZEOF_WCHAR_T 2 - #endif - - #ifndef SIZEOF_SIZE_T - /* - Under Win64 sizeof(size_t) == 8 and so it is neither unsigned - int nor unsigned long! - */ - #ifdef __WIN64__ - #define SIZEOF_SIZE_T 8 - - #undef wxSIZE_T_IS_UINT - #else /* Win32 */ - #define SIZEOF_SIZE_T 4 - - #define wxSIZE_T_IS_UINT - #endif - #undef wxSIZE_T_IS_ULONG - #endif - - #ifndef SIZEOF_VOID_P - #ifdef __WIN64__ - #define SIZEOF_VOID_P 8 - #else /* Win32 */ - #define SIZEOF_VOID_P 4 - #endif /* Win64/32 */ - #endif - #else - #error "Unsupported Windows version" - #endif -#else /* !Windows */ - /* SIZEOF_XXX are normally defined by configure */ - #ifdef SIZEOF_INT - #if SIZEOF_INT == 8 - /* must be ILP64 data model, there is normally a special 32 bit */ - /* type in it but we don't know what it is... */ - #error "No 32bit int type on this platform" - #elif SIZEOF_INT == 4 - typedef int wxInt32; - typedef unsigned int wxUint32; - #elif SIZEOF_INT == 2 - /* must be LP32 */ - #if SIZEOF_LONG != 4 - #error "No 32bit int type on this platform" - #endif - - typedef long wxInt32; - typedef unsigned long wxUint32; - #else - /* wxWidgets is not ready for 128bit systems yet... */ - #error "Unknown sizeof(int) value, what are you compiling for?" - #endif - #else /* !defined(SIZEOF_INT) */ - /* assume default 32bit machine -- what else can we do? */ - wxCOMPILE_TIME_ASSERT( sizeof(int) == 4, IntMustBeExactly4Bytes); - wxCOMPILE_TIME_ASSERT( sizeof(size_t) == 4, SizeTMustBeExactly4Bytes); - wxCOMPILE_TIME_ASSERT( sizeof(void *) == 4, PtrMustBeExactly4Bytes); - - #define SIZEOF_INT 4 - #define SIZEOF_SIZE_T 4 - #define SIZEOF_VOID_P 4 - - typedef int wxInt32; - typedef unsigned int wxUint32; - - #if defined(__MACH__) && !defined(SIZEOF_WCHAR_T) - #define SIZEOF_WCHAR_T 4 - #endif - #if !defined(SIZEOF_WCHAR_T) - /* also assume that sizeof(wchar_t) == 2 (under Unix the most */ - /* common case is 4 but there configure would have defined */ - /* SIZEOF_WCHAR_T for us) */ - /* the most common case */ - wxCOMPILE_TIME_ASSERT( sizeof(wchar_t) == 2, - Wchar_tMustBeExactly2Bytes); - - #define SIZEOF_WCHAR_T 2 - #endif /* !defined(SIZEOF_WCHAR_T) */ - #endif -#endif /* Win/!Win */ - -#ifndef SIZEOF_WCHAR_T - #error "SIZEOF_WCHAR_T must be defined, but isn't" -#endif - -/* also define C99-like sized MIN/MAX constants */ -#define wxINT8_MIN CHAR_MIN -#define wxINT8_MAX CHAR_MAX -#define wxUINT8_MAX UCHAR_MAX - -#define wxINT16_MIN SHRT_MIN -#define wxINT16_MAX SHRT_MAX -#define wxUINT16_MAX USHRT_MAX - -#if SIZEOF_INT == 4 - #define wxINT32_MIN INT_MIN - #define wxINT32_MAX INT_MAX - #define wxUINT32_MAX UINT_MAX -#elif SIZEOF_LONG == 4 - #define wxINT32_MIN LONG_MIN - #define wxINT32_MAX LONG_MAX - #define wxUINT32_MAX ULONG_MAX -#else - #error "Unknown 32 bit type" -#endif - -typedef wxUint32 wxDword; - -#ifdef LLONG_MAX - #define wxINT64_MIN LLONG_MIN - #define wxINT64_MAX LLONG_MAX - #define wxUINT64_MAX ULLONG_MAX -#else - #define wxINT64_MIN (wxLL(-9223372036854775807)-1) - #define wxINT64_MAX wxLL(9223372036854775807) - #define wxUINT64_MAX wxULL(0xFFFFFFFFFFFFFFFF) -#endif - -/* 64 bit */ - -/* NB: we #define and not typedef wxLongLong_t because we use "#ifdef */ -/* wxLongLong_t" in wx/longlong.h */ - -/* wxULongLong_t is set later (usually to unsigned wxLongLong_t) */ - -/* to avoid compilation problems on 64bit machines with ambiguous method calls */ -/* we will need to define this */ -#undef wxLongLongIsLong - -/* - First check for specific compilers which have known 64 bit integer types, - this avoids clashes with SIZEOF_LONG[_LONG] being defined incorrectly for - e.g. MSVC builds (Python.h defines it as 8 even for MSVC). - - Also notice that we check for "long long" before checking for 64 bit long as - we still want to use "long long" and not "long" for wxLongLong_t on 64 bit - architectures to be able to pass wxLongLong_t to the standard functions - prototyped as taking "long long" such as strtoll(). - */ -#if (defined(__VISUALC__) || defined(__INTELC__)) && defined(__WIN32__) - #define wxLongLong_t __int64 - #define wxLongLongSuffix i64 - #define wxLongLongFmtSpec "I64" -#elif defined(__BORLANDC__) && defined(__WIN32__) && (__BORLANDC__ >= 0x520) - #define wxLongLong_t __int64 - #define wxLongLongSuffix i64 - #define wxLongLongFmtSpec "L" -#elif defined(__MINGW32__) && \ - (defined(__USE_MINGW_ANSI_STDIO) && (__USE_MINGW_ANSI_STDIO != 1)) - #define wxLongLong_t long long - #define wxLongLongSuffix ll - #define wxLongLongFmtSpec "I64" -#elif (defined(SIZEOF_LONG_LONG) && SIZEOF_LONG_LONG >= 8) || \ - defined(__GNUC__) || \ - defined(__CYGWIN__) - #define wxLongLong_t long long - #define wxLongLongSuffix ll - #define wxLongLongFmtSpec "ll" -#elif defined(SIZEOF_LONG) && (SIZEOF_LONG == 8) - #define wxLongLong_t long - #define wxLongLongSuffix l - #define wxLongLongFmtSpec "l" - #define wxLongLongIsLong -#endif - - -#ifdef wxLongLong_t - #define wxULongLong_t unsigned wxLongLong_t - - /* - wxLL() and wxULL() macros allow to define 64 bit constants in a - portable way. - */ - #ifndef wxCOMPILER_BROKEN_CONCAT_OPER - #define wxLL(x) wxCONCAT(x, wxLongLongSuffix) - #define wxULL(x) wxCONCAT(x, wxCONCAT(u, wxLongLongSuffix)) - #else - /* - Currently only Borland compiler has broken concatenation operator - and this compiler is known to use [u]i64 suffix. - */ - #define wxLL(x) wxAPPEND_i64(x) - #define wxULL(x) wxAPPEND_ui64(x) - #endif - - typedef wxLongLong_t wxInt64; - typedef wxULongLong_t wxUint64; - - #define wxHAS_INT64 1 - - #ifndef wxLongLongIsLong - #define wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG - #endif -#elif wxUSE_LONGLONG - /* these macros allow to define 64 bit constants in a portable way */ - #define wxLL(x) wxLongLong(x) - #define wxULL(x) wxULongLong(x) - - #define wxInt64 wxLongLong - #define wxUint64 wxULongLong - - #define wxHAS_INT64 1 - -#else /* !wxUSE_LONGLONG */ - - #define wxHAS_INT64 0 - -#endif - -/* - Helper macro for conditionally compiling some code only if wxLongLong_t is - available and is a type different from the other integer types (i.e. not - long). - */ -#ifdef wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG - #define wxIF_LONG_LONG_TYPE(x) x -#else - #define wxIF_LONG_LONG_TYPE(x) -#endif - - -/* Make sure ssize_t is defined (a signed type the same size as size_t). */ -/* (HAVE_SSIZE_T is not already defined by configure) */ -#ifndef HAVE_SSIZE_T -#ifdef __MINGW32__ - #if defined(_SSIZE_T_) || defined(_SSIZE_T_DEFINED) - #define HAVE_SSIZE_T - #endif -#endif -#endif /* !HAVE_SSIZE_T */ - -/* If we really don't have ssize_t, provide our own version. */ -#ifdef HAVE_SSIZE_T - #ifdef __UNIX__ - #include - #endif -#else /* !HAVE_SSIZE_T */ - #if SIZEOF_SIZE_T == 4 - typedef wxInt32 ssize_t; - #elif SIZEOF_SIZE_T == 8 - typedef wxInt64 ssize_t; - #else - #error "error defining ssize_t, size_t is not 4 or 8 bytes" - #endif - - /* prevent ssize_t redefinitions in other libraries */ - #define HAVE_SSIZE_T -#endif - -/* - We can't rely on Windows _W64 being defined as windows.h may not be - included so define our own equivalent: this should be used with types - like WXLPARAM or WXWPARAM which are 64 bit under Win64 to avoid warnings - each time we cast it to a pointer or a handle (which results in hundreds - of warnings as Win32 API often passes pointers in them) - */ -#ifdef __VISUALC__ - #define wxW64 __w64 -#else - #define wxW64 -#endif - -/* - Define signed and unsigned integral types big enough to contain all of long, - size_t and void *. - */ -#if SIZEOF_LONG >= SIZEOF_VOID_P - /* - Normal case when long is the largest integral type. - */ - typedef long wxIntPtr; - typedef unsigned long wxUIntPtr; -#elif SIZEOF_SIZE_T >= SIZEOF_VOID_P - /* - Win64 case: size_t is the only integral type big enough for "void *". - - Notice that we must use __w64 to avoid warnings about casting pointers - to wxIntPtr (which we do often as this is what it is defined for) in 32 - bit build with MSVC. - */ - typedef wxW64 ssize_t wxIntPtr; - typedef size_t wxUIntPtr; -#else - /* - This should never happen for the current architectures but if you're - using one where it does, please contact wx-dev@googlegroups.com. - */ - #error "Pointers can't be stored inside integer types." -#endif +#include "wx/types.h" #ifdef __cplusplus diff --git a/include/wx/types.h b/include/wx/types.h index 2e58582168..6e8d76b756 100644 --- a/include/wx/types.h +++ b/include/wx/types.h @@ -1,92 +1,397 @@ -///////////////////////////////////////////////////////////////////////////// -// Name: wx/types.h -// Purpose: Type identifiers, used by resource system -// Author: Julian Smart -// Modified by: -// Created: 01/02/97 -// Copyright: (c) Julian Smart -// Licence: wxWindows licence -///////////////////////////////////////////////////////////////////////////// +/* + * Name: wx/types.h + * Purpose: Declarations of common wx types and related constants. + * Author: Vadim Zeitlin (extracted from wx/defs.h) + * Created: 2018-01-07 + * Copyright: (c) 1997-2018 wxWidgets dev team + * Licence: wxWindows licence + */ -#ifndef _WX_TYPESH__ -#define _WX_TYPESH__ +/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ -// Types of objects -#define wxTYPE_ANY 0 -#define wxTYPE_OBJECT wxTYPE_ANY -#define wxTYPE_WINDOW 1 -#define wxTYPE_DIALOG_BOX 2 -#define wxTYPE_ITEM 3 -#define wxTYPE_PANEL 4 -#define wxTYPE_CANVAS 5 -#define wxTYPE_TEXT_WINDOW 6 -#define wxTYPE_FRAME 7 +#ifndef _WX_TYPES_H_ +#define _WX_TYPES_H_ -#define wxTYPE_BUTTON 8 -#define wxTYPE_TEXT 9 -#define wxTYPE_MESSAGE 10 -#define wxTYPE_CHOICE 11 -#define wxTYPE_LIST_BOX 12 -#define wxTYPE_SLIDER 13 -#define wxTYPE_CHECK_BOX 14 -#define wxTYPE_MENU 15 -#define wxTYPE_MENU_BAR 16 -#define wxTYPE_MULTI_TEXT 17 -#define wxTYPE_RADIO_BOX 18 -#define wxTYPE_GROUP_BOX 19 -#define wxTYPE_GAUGE 20 -#define wxTYPE_SCROLL_BAR 21 -#define wxTYPE_VIRT_LIST_BOX 22 -#define wxTYPE_COMBO_BOX 23 -#define wxTYPE_RADIO_BUTTON 24 +/* + Don't include wx/defs.h from here as we're included from it, but do include + wx/platform.h which will take care of including wx/setup.h too. + */ +#include "wx/platform.h" -#define wxTYPE_EVENT 25 -#define wxTYPE_DC 26 -#define wxTYPE_DC_CANVAS 27 -#define wxTYPE_DC_POSTSCRIPT 28 -#define wxTYPE_DC_PRINTER 29 -#define wxTYPE_DC_METAFILE 30 -#define wxTYPE_DC_MEMORY 31 -#define wxTYPE_MOUSE_EVENT 32 -#define wxTYPE_KEY_EVENT 33 -#define wxTYPE_COMMAND_EVENT 34 -#define wxTYPE_DC_PANEL 35 +/* ---------------------------------------------------------------------------- */ +/* standard wxWidgets types */ +/* ---------------------------------------------------------------------------- */ -#define wxTYPE_PEN 40 -#define wxTYPE_BRUSH 41 -#define wxTYPE_FONT 42 -#define wxTYPE_ICON 42 -#define wxTYPE_BITMAP 43 -#define wxTYPE_METAFILE 44 -#define wxTYPE_TIMER 45 -#define wxTYPE_COLOUR 46 -#define wxTYPE_COLOURMAP 47 -#define wxTYPE_CURSOR 48 +/* the type for screen and DC coordinates */ +typedef int wxCoord; -#define wxTYPE_DDE_CLIENT 60 -#define wxTYPE_DDE_SERVER 61 -#define wxTYPE_DDE_CONNECTION 62 +enum { wxDefaultCoord = -1 }; -#define wxTYPE_HELP_INSTANCE 63 +/* ---------------------------------------------------------------------------- */ +/* define fixed length types */ +/* ---------------------------------------------------------------------------- */ -#define wxTYPE_LIST 70 -#define wxTYPE_STRING_LIST 71 -#define wxTYPE_HASH_TABLE 72 -#define wxTYPE_NODE 73 -#define wxTYPE_APP 74 -#define wxTYPE_DATE 75 +#if defined(__MINGW32__) + #include +#endif -#define wxTYPE_ENHANCED_DIALOG 80 -#define wxTYPE_TOOLBAR 81 -#define wxTYPE_BUTTONBAR 82 +/* chars are always one byte (by definition), shorts are always two (in */ +/* practice) */ -#define wxTYPE_DATABASE 90 -#define wxTYPE_QUERY_FIELD 91 -#define wxTYPE_QUERY_COL 92 -#define wxTYPE_RECORDSET 93 +/* 8bit */ +typedef signed char wxInt8; +typedef unsigned char wxUint8; +typedef wxUint8 wxByte; -#define wxTYPE_USER 500 + +/* 16bit */ +#ifdef SIZEOF_SHORT + #if SIZEOF_SHORT != 2 + #error "wxWidgets assumes sizeof(short) == 2, please fix the code" + #endif +#else + #define SIZEOF_SHORT 2 +#endif + +typedef signed short wxInt16; +typedef unsigned short wxUint16; + +typedef wxUint16 wxWord; + +/* + things are getting more interesting with ints, longs and pointers + + there are several different standard data models described by this table: + + +-----------+----------------------------+ + |type\model | LP64 ILP64 LLP64 ILP32 LP32| + +-----------+----------------------------+ + |char | 8 8 8 8 8 | + |short | 16 16 16 16 16 | + |int | 32 64 32 32 16 | + |long | 64 64 32 32 32 | + |long long | 64 64 64 -- -- | + |void * | 64 64 64 32 32 | + +-----------+----------------------------+ + + Win16 used LP32 (but we don't support it any longer), Win32 obviously used + ILP32 and Win64 uses LLP64 (a.k.a. P64) + + Under Unix LP64 is the most widely used (the only I've ever seen, in fact) + */ + +/* 32bit */ +#if defined(__WINDOWS__) + #if defined(__WIN32__) + typedef int wxInt32; + typedef unsigned int wxUint32; + + /* + Win64 uses LLP64 model and so ints and longs have the same size as + in Win32. + */ + #ifndef SIZEOF_INT + #define SIZEOF_INT 4 + #endif + + #ifndef SIZEOF_LONG + #define SIZEOF_LONG 4 + #endif + + #ifndef SIZEOF_LONG_LONG + #define SIZEOF_LONG_LONG 8 + #endif + + #ifndef SIZEOF_WCHAR_T + /* Windows uses UTF-16 */ + #define SIZEOF_WCHAR_T 2 + #endif + + #ifndef SIZEOF_SIZE_T + /* + Under Win64 sizeof(size_t) == 8 and so it is neither unsigned + int nor unsigned long! + */ + #ifdef __WIN64__ + #define SIZEOF_SIZE_T 8 + + #undef wxSIZE_T_IS_UINT + #else /* Win32 */ + #define SIZEOF_SIZE_T 4 + + #define wxSIZE_T_IS_UINT + #endif + #undef wxSIZE_T_IS_ULONG + #endif + + #ifndef SIZEOF_VOID_P + #ifdef __WIN64__ + #define SIZEOF_VOID_P 8 + #else /* Win32 */ + #define SIZEOF_VOID_P 4 + #endif /* Win64/32 */ + #endif + #else + #error "Unsupported Windows version" + #endif +#else /* !Windows */ + /* SIZEOF_XXX are normally defined by configure */ + #ifdef SIZEOF_INT + #if SIZEOF_INT == 8 + /* must be ILP64 data model, there is normally a special 32 bit */ + /* type in it but we don't know what it is... */ + #error "No 32bit int type on this platform" + #elif SIZEOF_INT == 4 + typedef int wxInt32; + typedef unsigned int wxUint32; + #elif SIZEOF_INT == 2 + /* must be LP32 */ + #if SIZEOF_LONG != 4 + #error "No 32bit int type on this platform" + #endif + + typedef long wxInt32; + typedef unsigned long wxUint32; + #else + /* wxWidgets is not ready for 128bit systems yet... */ + #error "Unknown sizeof(int) value, what are you compiling for?" + #endif + #else /* !defined(SIZEOF_INT) */ + /* assume default 32bit machine -- what else can we do? */ + wxCOMPILE_TIME_ASSERT( sizeof(int) == 4, IntMustBeExactly4Bytes); + wxCOMPILE_TIME_ASSERT( sizeof(size_t) == 4, SizeTMustBeExactly4Bytes); + wxCOMPILE_TIME_ASSERT( sizeof(void *) == 4, PtrMustBeExactly4Bytes); + + #define SIZEOF_INT 4 + #define SIZEOF_SIZE_T 4 + #define SIZEOF_VOID_P 4 + + typedef int wxInt32; + typedef unsigned int wxUint32; + + #if defined(__MACH__) && !defined(SIZEOF_WCHAR_T) + #define SIZEOF_WCHAR_T 4 + #endif + #if !defined(SIZEOF_WCHAR_T) + /* also assume that sizeof(wchar_t) == 2 (under Unix the most */ + /* common case is 4 but there configure would have defined */ + /* SIZEOF_WCHAR_T for us) */ + /* the most common case */ + wxCOMPILE_TIME_ASSERT( sizeof(wchar_t) == 2, + Wchar_tMustBeExactly2Bytes); + + #define SIZEOF_WCHAR_T 2 + #endif /* !defined(SIZEOF_WCHAR_T) */ + #endif +#endif /* Win/!Win */ + +#ifndef SIZEOF_WCHAR_T + #error "SIZEOF_WCHAR_T must be defined, but isn't" +#endif + +/* also define C99-like sized MIN/MAX constants */ +#define wxINT8_MIN CHAR_MIN +#define wxINT8_MAX CHAR_MAX +#define wxUINT8_MAX UCHAR_MAX + +#define wxINT16_MIN SHRT_MIN +#define wxINT16_MAX SHRT_MAX +#define wxUINT16_MAX USHRT_MAX + +#if SIZEOF_INT == 4 + #define wxINT32_MIN INT_MIN + #define wxINT32_MAX INT_MAX + #define wxUINT32_MAX UINT_MAX +#elif SIZEOF_LONG == 4 + #define wxINT32_MIN LONG_MIN + #define wxINT32_MAX LONG_MAX + #define wxUINT32_MAX ULONG_MAX +#else + #error "Unknown 32 bit type" +#endif + +typedef wxUint32 wxDword; + +#ifdef LLONG_MAX + #define wxINT64_MIN LLONG_MIN + #define wxINT64_MAX LLONG_MAX + #define wxUINT64_MAX ULLONG_MAX +#else + #define wxINT64_MIN (wxLL(-9223372036854775807)-1) + #define wxINT64_MAX wxLL(9223372036854775807) + #define wxUINT64_MAX wxULL(0xFFFFFFFFFFFFFFFF) +#endif + +/* 64 bit */ + +/* NB: we #define and not typedef wxLongLong_t because we use "#ifdef */ +/* wxLongLong_t" in wx/longlong.h */ + +/* wxULongLong_t is set later (usually to unsigned wxLongLong_t) */ + +/* to avoid compilation problems on 64bit machines with ambiguous method calls */ +/* we will need to define this */ +#undef wxLongLongIsLong + +/* + First check for specific compilers which have known 64 bit integer types, + this avoids clashes with SIZEOF_LONG[_LONG] being defined incorrectly for + e.g. MSVC builds (Python.h defines it as 8 even for MSVC). + + Also notice that we check for "long long" before checking for 64 bit long as + we still want to use "long long" and not "long" for wxLongLong_t on 64 bit + architectures to be able to pass wxLongLong_t to the standard functions + prototyped as taking "long long" such as strtoll(). + */ +#if (defined(__VISUALC__) || defined(__INTELC__)) && defined(__WIN32__) + #define wxLongLong_t __int64 + #define wxLongLongSuffix i64 + #define wxLongLongFmtSpec "I64" +#elif defined(__BORLANDC__) && defined(__WIN32__) && (__BORLANDC__ >= 0x520) + #define wxLongLong_t __int64 + #define wxLongLongSuffix i64 + #define wxLongLongFmtSpec "L" +#elif defined(__MINGW32__) && \ + (defined(__USE_MINGW_ANSI_STDIO) && (__USE_MINGW_ANSI_STDIO != 1)) + #define wxLongLong_t long long + #define wxLongLongSuffix ll + #define wxLongLongFmtSpec "I64" +#elif (defined(SIZEOF_LONG_LONG) && SIZEOF_LONG_LONG >= 8) || \ + defined(__GNUC__) || \ + defined(__CYGWIN__) + #define wxLongLong_t long long + #define wxLongLongSuffix ll + #define wxLongLongFmtSpec "ll" +#elif defined(SIZEOF_LONG) && (SIZEOF_LONG == 8) + #define wxLongLong_t long + #define wxLongLongSuffix l + #define wxLongLongFmtSpec "l" + #define wxLongLongIsLong +#endif + + +#ifdef wxLongLong_t + #define wxULongLong_t unsigned wxLongLong_t + + /* + wxLL() and wxULL() macros allow to define 64 bit constants in a + portable way. + */ + #ifndef wxCOMPILER_BROKEN_CONCAT_OPER + #define wxLL(x) wxCONCAT(x, wxLongLongSuffix) + #define wxULL(x) wxCONCAT(x, wxCONCAT(u, wxLongLongSuffix)) + #else + /* + Currently only Borland compiler has broken concatenation operator + and this compiler is known to use [u]i64 suffix. + */ + #define wxLL(x) wxAPPEND_i64(x) + #define wxULL(x) wxAPPEND_ui64(x) + #endif + + typedef wxLongLong_t wxInt64; + typedef wxULongLong_t wxUint64; + + #define wxHAS_INT64 1 + + #ifndef wxLongLongIsLong + #define wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG + #endif +#elif wxUSE_LONGLONG + /* these macros allow to define 64 bit constants in a portable way */ + #define wxLL(x) wxLongLong(x) + #define wxULL(x) wxULongLong(x) + + #define wxInt64 wxLongLong + #define wxUint64 wxULongLong + + #define wxHAS_INT64 1 + +#else /* !wxUSE_LONGLONG */ + + #define wxHAS_INT64 0 #endif - // _WX_TYPESH__ +/* + Helper macro for conditionally compiling some code only if wxLongLong_t is + available and is a type different from the other integer types (i.e. not + long). + */ +#ifdef wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG + #define wxIF_LONG_LONG_TYPE(x) x +#else + #define wxIF_LONG_LONG_TYPE(x) +#endif + + +/* Make sure ssize_t is defined (a signed type the same size as size_t). */ +/* (HAVE_SSIZE_T is not already defined by configure) */ +#ifndef HAVE_SSIZE_T +#ifdef __MINGW32__ + #if defined(_SSIZE_T_) || defined(_SSIZE_T_DEFINED) + #define HAVE_SSIZE_T + #endif +#endif +#endif /* !HAVE_SSIZE_T */ + +/* If we really don't have ssize_t, provide our own version. */ +#ifdef HAVE_SSIZE_T + #ifdef __UNIX__ + #include + #endif +#else /* !HAVE_SSIZE_T */ + #if SIZEOF_SIZE_T == 4 + typedef wxInt32 ssize_t; + #elif SIZEOF_SIZE_T == 8 + typedef wxInt64 ssize_t; + #else + #error "error defining ssize_t, size_t is not 4 or 8 bytes" + #endif + + /* prevent ssize_t redefinitions in other libraries */ + #define HAVE_SSIZE_T +#endif + +/* + We can't rely on Windows _W64 being defined as windows.h may not be + included so define our own equivalent: this should be used with types + like WXLPARAM or WXWPARAM which are 64 bit under Win64 to avoid warnings + each time we cast it to a pointer or a handle (which results in hundreds + of warnings as Win32 API often passes pointers in them) + */ +#ifdef __VISUALC__ + #define wxW64 __w64 +#else + #define wxW64 +#endif + +/* + Define signed and unsigned integral types big enough to contain all of long, + size_t and void *. + */ +#if SIZEOF_LONG >= SIZEOF_VOID_P + /* + Normal case when long is the largest integral type. + */ + typedef long wxIntPtr; + typedef unsigned long wxUIntPtr; +#elif SIZEOF_SIZE_T >= SIZEOF_VOID_P + /* + Win64 case: size_t is the only integral type big enough for "void *". + + Notice that we must use __w64 to avoid warnings about casting pointers + to wxIntPtr (which we do often as this is what it is defined for) in 32 + bit build with MSVC. + */ + typedef wxW64 ssize_t wxIntPtr; + typedef size_t wxUIntPtr; +#else + /* + This should never happen for the current architectures but if you're + using one where it does, please contact wx-dev@googlegroups.com. + */ + #error "Pointers can't be stored inside integer types." +#endif + +#endif // _WX_TYPES_H_ From 80f4c8cde3c1e9e042d850ef21a1859fdf213c21 Mon Sep 17 00:00:00 2001 From: Trylz Date: Wed, 10 Jan 2018 17:26:24 +0100 Subject: [PATCH 109/916] Add XRC handler for wxSpinCtrlDouble Create wxSpinCtrlDoubleXmlHandler class similar to the existing wxSpinCtrlXmlHandler and update the XRC schema to account for it. --- docs/changes.txt | 1 + include/wx/xrc/xh_spin.h | 13 ++++++++++-- misc/schema/xrc_schema.rnc | 14 +++++++++++++ src/xrc/xh_spin.cpp | 42 ++++++++++++++++++++++++++++++++++++++ src/xrc/xmlrsall.cpp | 1 + 5 files changed, 69 insertions(+), 2 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 801172be93..f4e42fb2d1 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -115,6 +115,7 @@ All (GUI): - Add support for loading fonts from external files (Arthur Norman). - Improve wxSVGFileDC to support more of wxDC API (Maarten Bent). - Add support for wxAuiManager and wxAuiPaneInfo to XRC (Andrea Zanellato). +- Add XRC handler for wxSpinCtrlDouble (Trylz). - Add support for wxSL_MIN_MAX_LABELS and wxSL_VALUE_LABEL to XRC (ousnius). - Update Scintilla to v3.7.2 (NewPagodi, Paul Kulchenko). - Update bundled libpng to 1.6.28 (Catalin Raceanu). diff --git a/include/wx/xrc/xh_spin.h b/include/wx/xrc/xh_spin.h index 93762e0325..bf522e936f 100644 --- a/include/wx/xrc/xh_spin.h +++ b/include/wx/xrc/xh_spin.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: wx/xrc/xh_spin.h -// Purpose: XML resource handler for wxSpinButton and wxSpinCtrl +// Purpose: XML resource handler for wxSpinButton, wxSpinCtrl, wxSpinCtrlDouble // Author: Bob Mitchell // Created: 2000/03/21 // Copyright: (c) 2000 Bob Mitchell and Verant Interactive @@ -28,7 +28,6 @@ public: #endif // wxUSE_SPINBTN - #if wxUSE_SPINCTRL class WXDLLIMPEXP_XRC wxSpinCtrlXmlHandler : public wxXmlResourceHandler @@ -41,6 +40,16 @@ public: wxDECLARE_DYNAMIC_CLASS(wxSpinCtrlXmlHandler); }; +class WXDLLIMPEXP_XRC wxSpinCtrlDoubleXmlHandler : public wxXmlResourceHandler +{ +public: + wxSpinCtrlDoubleXmlHandler(); + virtual wxObject *DoCreateResource() wxOVERRIDE; + virtual bool CanHandle(wxXmlNode *node) wxOVERRIDE; + + wxDECLARE_DYNAMIC_CLASS(wxSpinCtrlDoubleXmlHandler); +}; + #endif // wxUSE_SPINCTRL #endif // wxUSE_XRC diff --git a/misc/schema/xrc_schema.rnc b/misc/schema/xrc_schema.rnc index b298088e45..e4617452f6 100644 --- a/misc/schema/xrc_schema.rnc +++ b/misc/schema/xrc_schema.rnc @@ -214,6 +214,7 @@ builtinWindowClasses = | wxSlider | wxSpinButton | wxSpinCtrl + | wxSpinCtrlDouble | wxSplitterWindow | wxSearchCtrl | wxStatusBar @@ -310,6 +311,7 @@ builtinClassesNames = | "wxSlider" | "wxSpinButton" | "wxSpinCtrl" + | "wxSpinCtrlDouble" | "wxSplitterWindow" | "wxSearchCtrl" | "wxStatusBar" @@ -1413,6 +1415,18 @@ wxSpinCtrl = } +wxSpinCtrlDouble = + element object { + attribute class { "wxSpinCtrlDouble" } & + stdObjectNodeAttributes & + stdWindowProperties & + [xrc:p="o"] element value {_, t_float }* & + [xrc:p="o"] element min {_, t_float }* & + [xrc:p="o"] element max {_, t_float }* & + [xrc:p="o"] element inc {_, t_float}* + } + + wxSplitterWindow = element object { attribute class { "wxSplitterWindow" } & diff --git a/src/xrc/xh_spin.cpp b/src/xrc/xh_spin.cpp index ebd452e7ae..1e7a04affc 100644 --- a/src/xrc/xh_spin.cpp +++ b/src/xrc/xh_spin.cpp @@ -67,6 +67,8 @@ bool wxSpinButtonXmlHandler::CanHandle(wxXmlNode *node) #include "wx/spinctrl.h" +static const float DEFAULT_INC = 1.; + wxIMPLEMENT_DYNAMIC_CLASS(wxSpinCtrlXmlHandler, wxXmlResourceHandler); wxSpinCtrlXmlHandler::wxSpinCtrlXmlHandler() @@ -109,6 +111,46 @@ bool wxSpinCtrlXmlHandler::CanHandle(wxXmlNode *node) return IsOfClass(node, wxT("wxSpinCtrl")); } + +wxIMPLEMENT_DYNAMIC_CLASS(wxSpinCtrlDoubleXmlHandler, wxXmlResourceHandler); + +wxSpinCtrlDoubleXmlHandler::wxSpinCtrlDoubleXmlHandler() + : wxXmlResourceHandler() +{ + XRC_ADD_STYLE(wxSP_HORIZONTAL); + XRC_ADD_STYLE(wxSP_VERTICAL); + XRC_ADD_STYLE(wxSP_ARROW_KEYS); + XRC_ADD_STYLE(wxSP_WRAP); + XRC_ADD_STYLE(wxALIGN_LEFT); + XRC_ADD_STYLE(wxALIGN_CENTER); + XRC_ADD_STYLE(wxALIGN_RIGHT); +} + +wxObject *wxSpinCtrlDoubleXmlHandler::DoCreateResource() +{ + XRC_MAKE_INSTANCE(control, wxSpinCtrlDouble) + + control->Create(m_parentAsWindow, + GetID(), + GetText(wxS("value")), + GetPosition(), GetSize(), + GetStyle(wxS("style"), wxSP_ARROW_KEYS | wxALIGN_RIGHT), + GetFloat(wxS("min"), (float)DEFAULT_MIN), + GetFloat(wxS("max"), (float)DEFAULT_MAX), + GetFloat(wxS("value"), (float)DEFAULT_VALUE), + GetFloat(wxS("inc"), DEFAULT_INC), + GetName()); + + SetupWindow(control); + + return control; +} + +bool wxSpinCtrlDoubleXmlHandler::CanHandle(wxXmlNode *node) +{ + return IsOfClass(node, wxS("wxSpinCtrlDouble")); +} + #endif // wxUSE_SPINCTRL #endif // wxUSE_XRC diff --git a/src/xrc/xmlrsall.cpp b/src/xrc/xmlrsall.cpp index 00c787a58f..0f67288385 100644 --- a/src/xrc/xmlrsall.cpp +++ b/src/xrc/xmlrsall.cpp @@ -165,6 +165,7 @@ void wxXmlResource::InitAllHandlers() #endif #if wxUSE_SPINCTRL AddHandler(new wxSpinCtrlXmlHandler); + AddHandler(new wxSpinCtrlDoubleXmlHandler); #endif #if wxUSE_SPLITTER AddHandler(new wxSplitterWindowXmlHandler); From 74cf8370ce6c617cb951af2ad0a6d532dbb8d017 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 10 Jan 2018 17:31:23 +0100 Subject: [PATCH 110/916] Avoid code duplication between wxSpinCtrl XRC handlers Extract styles initialization into a function reused by both wxSpinCtrlXmlHandler and wxSpinCtrlDoubleXmlHandler. No real changes, this is a pure refactoring. --- src/xrc/xh_spin.cpp | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/src/xrc/xh_spin.cpp b/src/xrc/xh_spin.cpp index 1e7a04affc..314697d768 100644 --- a/src/xrc/xh_spin.cpp +++ b/src/xrc/xh_spin.cpp @@ -69,18 +69,23 @@ bool wxSpinButtonXmlHandler::CanHandle(wxXmlNode *node) static const float DEFAULT_INC = 1.; +static void AddSpinCtrlStyles(wxXmlResourceHandler& handler) +{ + handler.XRC_ADD_STYLE(wxSP_HORIZONTAL); + handler.XRC_ADD_STYLE(wxSP_VERTICAL); + handler.XRC_ADD_STYLE(wxSP_ARROW_KEYS); + handler.XRC_ADD_STYLE(wxSP_WRAP); + handler.XRC_ADD_STYLE(wxALIGN_LEFT); + handler.XRC_ADD_STYLE(wxALIGN_CENTER); + handler.XRC_ADD_STYLE(wxALIGN_RIGHT); +} + wxIMPLEMENT_DYNAMIC_CLASS(wxSpinCtrlXmlHandler, wxXmlResourceHandler); wxSpinCtrlXmlHandler::wxSpinCtrlXmlHandler() -: wxXmlResourceHandler() + : wxXmlResourceHandler() { - XRC_ADD_STYLE(wxSP_HORIZONTAL); - XRC_ADD_STYLE(wxSP_VERTICAL); - XRC_ADD_STYLE(wxSP_ARROW_KEYS); - XRC_ADD_STYLE(wxSP_WRAP); - XRC_ADD_STYLE(wxALIGN_LEFT); - XRC_ADD_STYLE(wxALIGN_CENTER); - XRC_ADD_STYLE(wxALIGN_RIGHT); + AddSpinCtrlStyles(*this); } wxObject *wxSpinCtrlXmlHandler::DoCreateResource() @@ -117,13 +122,7 @@ wxIMPLEMENT_DYNAMIC_CLASS(wxSpinCtrlDoubleXmlHandler, wxXmlResourceHandler); wxSpinCtrlDoubleXmlHandler::wxSpinCtrlDoubleXmlHandler() : wxXmlResourceHandler() { - XRC_ADD_STYLE(wxSP_HORIZONTAL); - XRC_ADD_STYLE(wxSP_VERTICAL); - XRC_ADD_STYLE(wxSP_ARROW_KEYS); - XRC_ADD_STYLE(wxSP_WRAP); - XRC_ADD_STYLE(wxALIGN_LEFT); - XRC_ADD_STYLE(wxALIGN_CENTER); - XRC_ADD_STYLE(wxALIGN_RIGHT); + AddSpinCtrlStyles(*this); } wxObject *wxSpinCtrlDoubleXmlHandler::DoCreateResource() From c3c8a2198db04c00063979a467add3bee4353e41 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 10 Jan 2018 17:35:34 +0100 Subject: [PATCH 111/916] Document the recently added wxSpinCtrlDouble XRC handler Update XRC reference documentation after adding a new handler too. --- docs/doxygen/overviews/xrc_format.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index 7a1a25fe8e..abffacb471 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -1906,6 +1906,19 @@ wxWidgets 2.9.5, another one: @endTable +@subsubsection xrc_wxspinctrldouble wxSpinCtrlDouble + +wxSpinCtrlDouble supports the same properties as @ref xrc_wxspinbutton but @c +value, @c min and @a max are all of type float instead of int. There is one +additional property: +@beginTable +@row3col{inc, float, + The amount by which the number is changed by a single arrow press.} +@endTable + +This handler was added in wxWidgets 3.1.1. + + @subsubsection xrc_wxsplitterwindow wxSplitterWindow @beginTable From 6bd8cb964bd625d7f974621cc9883ba52b58600a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 10 Jan 2018 23:44:07 +0100 Subject: [PATCH 112/916] Really remove removed files from the help sample This does what 1c2e58cd85497f8ceb546c40487c7b246447c4af tried to do manually correctly, by updating bakefile and rebaking, and so finally completing the changes of 961a1c2b3931d64809b51a5042357817ace37677. See #17962. --- samples/help/Makefile.in | 2 +- samples/help/help.bkl | 5 ----- samples/help/makefile.bcc | 2 +- samples/help/makefile.gcc | 2 +- samples/help/makefile.vc | 2 +- 5 files changed, 4 insertions(+), 9 deletions(-) diff --git a/samples/help/Makefile.in b/samples/help/Makefile.in index baca165290..d43b20b770 100644 --- a/samples/help/Makefile.in +++ b/samples/help/Makefile.in @@ -194,7 +194,7 @@ data: data_doc: @mkdir -p ./doc - @for f in aindex.html ClassGraph.class ClassGraphPanel.class ClassLayout.class down.gif dxxgifs.tex HIER.html HIERjava.html icon1.gif icon2.gif index.html logo.gif NavigatorButton.class USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm; do \ + @for f in aindex.html down.gif dxxgifs.tex HIER.html icon1.gif icon2.gif index.html logo.gif USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm; do \ if test ! -f ./doc/$$f -a ! -d ./doc/$$f ; \ then x=yep ; \ else x=`find $(srcdir)/doc/$$f -newer ./doc/$$f -print` ; \ diff --git a/samples/help/help.bkl b/samples/help/help.bkl index 50af7881c2..14a7a735c3 100644 --- a/samples/help/help.bkl +++ b/samples/help/help.bkl @@ -36,18 +36,13 @@ $(SRCDIR)/doc aindex.html - ClassGraph.class - ClassGraphPanel.class - ClassLayout.class down.gif dxxgifs.tex HIER.html - HIERjava.html icon1.gif icon2.gif index.html logo.gif - NavigatorButton.class USE_HELP.html wx204.htm wx34.htm diff --git a/samples/help/makefile.bcc b/samples/help/makefile.bcc index e482238ff4..390126e43c 100644 --- a/samples/help/makefile.bcc +++ b/samples/help/makefile.bcc @@ -245,7 +245,7 @@ data: data_doc: if not exist $(OBJS)\doc mkdir $(OBJS)\doc - for %f in (aindex.html ClassGraph.class ClassGraphPanel.class ClassLayout.class down.gif dxxgifs.tex HIER.html HIERjava.html icon1.gif icon2.gif index.html logo.gif NavigatorButton.class USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm) do if not exist $(OBJS)\doc\%f copy .\doc\%f $(OBJS)\doc + for %f in (aindex.html down.gif dxxgifs.tex HIER.html icon1.gif icon2.gif index.html logo.gif USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm) do if not exist $(OBJS)\doc\%f copy .\doc\%f $(OBJS)\doc $(OBJS)\help_sample.res: .\..\..\samples\sample.rc brcc32 -32 -r -fo$@ -i$(BCCDIR)\include -d__WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) -i$(SETUPHDIR) -i.\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_1_p) -i. $(__DLLFLAG_p_1) -i.\..\..\samples -i$(BCCDIR)\include\windows\sdk -dNOPCH .\..\..\samples\sample.rc diff --git a/samples/help/makefile.gcc b/samples/help/makefile.gcc index 20ab94973a..e318d753ac 100644 --- a/samples/help/makefile.gcc +++ b/samples/help/makefile.gcc @@ -234,7 +234,7 @@ data: data_doc: if not exist $(OBJS)\doc mkdir $(OBJS)\doc - for %%f in (aindex.html ClassGraph.class ClassGraphPanel.class ClassLayout.class down.gif dxxgifs.tex HIER.html HIERjava.html icon1.gif icon2.gif index.html logo.gif NavigatorButton.class USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm) do if not exist $(OBJS)\doc\%%f copy .\doc\%%f $(OBJS)\doc + for %%f in (aindex.html down.gif dxxgifs.tex HIER.html icon1.gif icon2.gif index.html logo.gif USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm) do if not exist $(OBJS)\doc\%%f copy .\doc\%%f $(OBJS)\doc $(OBJS)\help_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/help/makefile.vc b/samples/help/makefile.vc index debbb3c689..c38f41b88a 100644 --- a/samples/help/makefile.vc +++ b/samples/help/makefile.vc @@ -368,7 +368,7 @@ data: data_doc: if not exist $(OBJS)\doc mkdir $(OBJS)\doc - for %f in (aindex.html ClassGraph.class ClassGraphPanel.class ClassLayout.class down.gif dxxgifs.tex HIER.html HIERjava.html icon1.gif icon2.gif index.html logo.gif NavigatorButton.class USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm) do if not exist $(OBJS)\doc\%f copy .\doc\%f $(OBJS)\doc + for %f in (aindex.html down.gif dxxgifs.tex HIER.html icon1.gif icon2.gif index.html logo.gif USE_HELP.html wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm) do if not exist $(OBJS)\doc\%f copy .\doc\%f $(OBJS)\doc $(OBJS)\help_sample.res: .\..\..\samples\sample.rc rc /fo$@ /d WIN32 $(____DEBUGRUNTIME_3_p_1) /d _CRT_SECURE_NO_DEPRECATE=1 /d _CRT_NON_CONFORMING_SWPRINTFS=1 /d _SCL_SECURE_NO_WARNINGS=1 $(__NO_VC_CRTDBG_p_1) /d __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) /i $(SETUPHDIR) /i .\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_1_p) /i . $(__DLLFLAG_p_1) /d _WINDOWS /i .\..\..\samples /d NOPCH .\..\..\samples\sample.rc From 689704119a3a12110bf8842c76c6298c5e4d9d1d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 11 Jan 2018 00:27:08 +0100 Subject: [PATCH 113/916] Fix handling of underscores in tags in "wxrc -g" output Unlike all the other nodes containing translatable text, the contents of the tags, used for wxChoice, wxListBox etc items, is not escaped (because it can't contain mnemonics), so don't unescape it when outputting it from "wxrc --gettext" neither. See #18033. --- utils/wxrc/wxrc.cpp | 89 +++++++++++++++++++++++++++++---------------- 1 file changed, 57 insertions(+), 32 deletions(-) diff --git a/utils/wxrc/wxrc.cpp b/utils/wxrc/wxrc.cpp index 56f4c9799f..fb06278d07 100644 --- a/utils/wxrc/wxrc.cpp +++ b/utils/wxrc/wxrc.cpp @@ -949,6 +949,46 @@ static wxString ConvertText(const wxString& str) } +enum ContentsKind +{ + Contents_NotTrans, // Not a translatable text at all. + Contents_TransOnly, // Translatable but not escaped text. + Contents_Text // Text, i.e. both translatable and escaped. +}; + +// Check if the given node contains translatable text and, if it does, whether +// it's escaped (i.e. parsed using GetText()) or not. +ContentsKind +GetNodeContentsKind(wxXmlNode& node, const wxString& contents) +{ + if ( node.GetName() == wxT("label") || + (node.GetName() == wxT("value") && !contents.IsNumber()) || + node.GetName() == wxT("help") || + node.GetName() == wxT("hint") || + node.GetName() == wxT("longhelp") || + node.GetName() == wxT("tooltip") || + node.GetName() == wxT("htmlcode") || + node.GetName() == wxT("title") || + node.GetName() == wxT("message") || + node.GetName() == wxT("note") || + node.GetName() == wxT("defaultdirectory") || + node.GetName() == wxT("defaultfilename") || + node.GetName() == wxT("defaultfolder") || + node.GetName() == wxT("filter") || + node.GetName() == wxT("caption") ) + { + return Contents_Text; + } + + // This one is special: it is translated in XRC, but its contents is not + // escaped. + if ( node.GetName() == wxT("item") ) + return Contents_TransOnly; + + return Contents_NotTrans; +} + + ExtractedStrings XmlResApp::FindStrings(const wxString& filename, wxXmlNode *node) { @@ -963,41 +1003,26 @@ XmlResApp::FindStrings(const wxString& filename, wxXmlNode *node) if ((node->GetType() == wxXML_ELEMENT_NODE) && // parent is an element, i.e. has subnodes... (n->GetType() == wxXML_TEXT_NODE || - n->GetType() == wxXML_CDATA_SECTION_NODE) && + n->GetType() == wxXML_CDATA_SECTION_NODE)) // ...it is textnode... - ( - node/*not n!*/->GetName() == wxT("label") || - (node/*not n!*/->GetName() == wxT("value") && - !n->GetContent().IsNumber()) || - node/*not n!*/->GetName() == wxT("help") || - node/*not n!*/->GetName() == wxT("hint") || - node/*not n!*/->GetName() == wxT("longhelp") || - node/*not n!*/->GetName() == wxT("tooltip") || - node/*not n!*/->GetName() == wxT("htmlcode") || - node/*not n!*/->GetName() == wxT("title") || - node/*not n!*/->GetName() == wxT("item") || - node/*not n!*/->GetName() == wxT("message") || - node/*not n!*/->GetName() == wxT("note") || - node/*not n!*/->GetName() == wxT("defaultdirectory") || - node/*not n!*/->GetName() == wxT("defaultfilename") || - node/*not n!*/->GetName() == wxT("defaultfolder") || - node/*not n!*/->GetName() == wxT("filter") || - node/*not n!*/->GetName() == wxT("caption") - )) - // ...and known to contain translatable string { - if (!flagGettext || - node->GetAttribute(wxT("translate"), wxT("1")) != wxT("0")) + wxString s = n->GetContent(); + switch ( GetNodeContentsKind(*node, s) ) { - arr.push_back - ( - ExtractedString - ( - ConvertText(n->GetContent()), - filename, - n->GetLineNumber() - ) - ); + case Contents_NotTrans: + break; + + case Contents_Text: + s = ConvertText(s); + wxFALLTHROUGH; + + case Contents_TransOnly: + if (!flagGettext || + node->GetAttribute(wxT("translate"), wxT("1")) != wxT("0")) + { + arr.push_back(ExtractedString(s, filename, n->GetLineNumber())); + } + break; } } From 52635cfc100380e7d182a771ad070c663afc8e0d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 11 Jan 2018 00:57:02 +0100 Subject: [PATCH 114/916] Reuse the same XRC function for all translations Translate all strings in the new GetNodeText() function replacing the old GetText() which was mostly used for translatable strings before -- except that tag contents didn't use it because it also performed string unescaping, not wanted for the control items, in addition to translation. Replace the old GetText() (while still keeping it for compatibility, i.e. to avoid breaking any custom XRC handlers using it) with the new function which is more flexible and can be used for all tags. No real changes, this is just a refactoring. --- include/wx/xrc/xmlres.h | 5 +- include/wx/xrc/xmlreshandler.h | 16 ++++- src/xrc/xh_chckl.cpp | 5 +- src/xrc/xh_choic.cpp | 5 +- src/xrc/xh_combo.cpp | 5 +- src/xrc/xh_editlbox.cpp | 5 +- src/xrc/xh_htmllbox.cpp | 5 +- src/xrc/xh_listb.cpp | 5 +- src/xrc/xh_odcombo.cpp | 5 +- src/xrc/xh_radbx.cpp | 27 ++------ src/xrc/xmlres.cpp | 120 ++++++++++++++++++--------------- 11 files changed, 96 insertions(+), 107 deletions(-) diff --git a/include/wx/xrc/xmlres.h b/include/wx/xrc/xmlres.h index de31ea27a4..bde64138a5 100644 --- a/include/wx/xrc/xmlres.h +++ b/include/wx/xrc/xmlres.h @@ -513,7 +513,10 @@ public: // - replaces \n, \r, \t by respective chars (according to C syntax) // - replaces _ by & and __ by _ (needed for _File => &File because of XML) // - calls wxGetTranslations (unless disabled in wxXmlResource) - wxString GetText(const wxString& param, bool translate = true) wxOVERRIDE; + // + // The first two conversions can be disabled by using wxXRC_TEXT_NO_ESCAPE + // in flags and the last one -- by using wxXRC_TEXT_NO_TRANSLATE. + wxString GetNodeText(const wxXmlNode *node, int flags = 0) wxOVERRIDE; // Returns the XRCID. int GetID() wxOVERRIDE; diff --git a/include/wx/xrc/xmlreshandler.h b/include/wx/xrc/xmlreshandler.h index 5c2f6b4be1..cdf7f0ab17 100644 --- a/include/wx/xrc/xmlreshandler.h +++ b/include/wx/xrc/xmlreshandler.h @@ -32,6 +32,13 @@ class WXDLLIMPEXP_FWD_CORE wxXmlResourceHandler; // by wxXmlResourceHandler implementation itself. #define XRC_ADD_STYLE(style) AddStyle(wxT(#style), style) +// Flags for GetNodeText(). +enum +{ + wxXRC_TEXT_NO_TRANSLATE = 1, + wxXRC_TEXT_NO_ESCAPE = 2 +}; + // Abstract base class for the implementation object used by // wxXmlResourceHandlerImpl. The real implementation is in // wxXmlResourceHandlerImpl class in the "xrc" library while this class is in @@ -61,7 +68,7 @@ public: virtual wxString GetParamValue(const wxString& param) = 0; virtual wxString GetParamValue(const wxXmlNode* node) = 0; virtual int GetStyle(const wxString& param = wxT("style"), int defaults = 0) = 0; - virtual wxString GetText(const wxString& param, bool translate = true) = 0; + virtual wxString GetNodeText(const wxXmlNode *node, int flags = 0) = 0; virtual int GetID() = 0; virtual wxString GetName() = 0; virtual bool GetBool(const wxString& param, bool defaultv = false) = 0; @@ -254,9 +261,14 @@ protected: { return GetImpl()->GetStyle(param, defaults); } + wxString GetNodeText(const wxXmlNode *node, int flags = 0) + { + return GetImpl()->GetNodeText(node, flags); + } wxString GetText(const wxString& param, bool translate = true) { - return GetImpl()->GetText(param, translate); + return GetImpl()->GetNodeText(GetImpl()->GetParamNode(param), + translate ? 0 : wxXRC_TEXT_NO_TRANSLATE); } int GetID() const { diff --git a/src/xrc/xh_chckl.cpp b/src/xrc/xh_chckl.cpp index fddfcf97c2..61675db8f4 100644 --- a/src/xrc/xh_chckl.cpp +++ b/src/xrc/xh_chckl.cpp @@ -94,10 +94,7 @@ wxObject *wxCheckListBoxXmlHandler::DoCreateResource() // handle Label // add to the list - wxString str = GetNodeContent(m_node); - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - str = wxGetTranslation(str, m_resource->GetDomain()); - strList.Add(str); + strList.Add(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } } diff --git a/src/xrc/xh_choic.cpp b/src/xrc/xh_choic.cpp index 445ec6b43a..52a3358cac 100644 --- a/src/xrc/xh_choic.cpp +++ b/src/xrc/xh_choic.cpp @@ -70,10 +70,7 @@ wxObject *wxChoiceXmlHandler::DoCreateResource() // handle Label // add to the list - wxString str = GetNodeContent(m_node); - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - str = wxGetTranslation(str, m_resource->GetDomain()); - strList.Add(str); + strList.Add(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } diff --git a/src/xrc/xh_combo.cpp b/src/xrc/xh_combo.cpp index a11d24bef9..e0f672ebe4 100644 --- a/src/xrc/xh_combo.cpp +++ b/src/xrc/xh_combo.cpp @@ -77,10 +77,7 @@ wxObject *wxComboBoxXmlHandler::DoCreateResource() // handle Label // add to the list - wxString str = GetNodeContent(m_node); - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - str = wxGetTranslation(str, m_resource->GetDomain()); - strList.Add(str); + strList.Add(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } diff --git a/src/xrc/xh_editlbox.cpp b/src/xrc/xh_editlbox.cpp index 32ab05f525..48a57847d4 100644 --- a/src/xrc/xh_editlbox.cpp +++ b/src/xrc/xh_editlbox.cpp @@ -99,10 +99,7 @@ wxObject *wxEditableListBoxXmlHandler::DoCreateResource() } else if ( m_insideBox && m_node->GetName() == EDITLBOX_ITEM_NAME ) { - wxString str = GetNodeContent(m_node); - if ( m_resource->GetFlags() & wxXRC_USE_LOCALE ) - str = wxGetTranslation(str, m_resource->GetDomain()); - m_items.push_back(str); + m_items.push_back(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } diff --git a/src/xrc/xh_htmllbox.cpp b/src/xrc/xh_htmllbox.cpp index 2b310e4c4e..82c01f10ad 100644 --- a/src/xrc/xh_htmllbox.cpp +++ b/src/xrc/xh_htmllbox.cpp @@ -69,10 +69,7 @@ wxObject *wxSimpleHtmlListBoxXmlHandler::DoCreateResource() // handle Label // add to the list - wxString str = GetNodeContent(m_node); - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - str = wxGetTranslation(str, m_resource->GetDomain()); - strList.Add(str); + strList.Add(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } diff --git a/src/xrc/xh_listb.cpp b/src/xrc/xh_listb.cpp index f496023095..e74eb99e2c 100644 --- a/src/xrc/xh_listb.cpp +++ b/src/xrc/xh_listb.cpp @@ -77,10 +77,7 @@ wxObject *wxListBoxXmlHandler::DoCreateResource() // handle Label // add to the list - wxString str = GetNodeContent(m_node); - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - str = wxGetTranslation(str, m_resource->GetDomain()); - strList.Add(str); + strList.Add(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } diff --git a/src/xrc/xh_odcombo.cpp b/src/xrc/xh_odcombo.cpp index 955ac1d826..293e7c5d30 100644 --- a/src/xrc/xh_odcombo.cpp +++ b/src/xrc/xh_odcombo.cpp @@ -85,10 +85,7 @@ wxObject *wxOwnerDrawnComboBoxXmlHandler::DoCreateResource() // handle Label // add to the list - wxString str = GetNodeContent(m_node); - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - str = wxGetTranslation(str, m_resource->GetDomain()); - strList.Add(str); + strList.Add(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); return NULL; } diff --git a/src/xrc/xh_radbx.cpp b/src/xrc/xh_radbx.cpp index 12c9e02a25..762f31b2e0 100644 --- a/src/xrc/xh_radbx.cpp +++ b/src/xrc/xh_radbx.cpp @@ -107,30 +107,15 @@ wxObject *wxRadioBoxXmlHandler::DoCreateResource() // we handle handle Label constructs here, and the item // tag can have tooltip, helptext, enabled and hidden attributes - wxString label = GetNodeContent(m_node); - - wxString tooltip; - m_node->GetAttribute(wxT("tooltip"), &tooltip); - - wxString helptext; - bool hasHelptext = m_node->GetAttribute(wxT("helptext"), &helptext); - - if (m_resource->GetFlags() & wxXRC_USE_LOCALE) - { - label = wxGetTranslation(label, m_resource->GetDomain()); - if ( !tooltip.empty() ) - tooltip = wxGetTranslation(tooltip, m_resource->GetDomain()); - if ( hasHelptext ) - helptext = wxGetTranslation(helptext, m_resource->GetDomain()); - } - - m_labels.push_back(label); + m_labels.push_back(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); #if wxUSE_TOOLTIPS - m_tooltips.push_back(tooltip); + m_tooltips.push_back(GetNodeText(GetParamNode(wxT("tooltip")), + wxXRC_TEXT_NO_ESCAPE)); #endif // wxUSE_TOOLTIPS #if wxUSE_HELP - m_helptexts.push_back(helptext); - m_helptextSpecified.push_back(hasHelptext); + const wxXmlNode* const nodeHelp = GetParamNode(wxT("helptext")); + m_helptexts.push_back(GetNodeText(nodeHelp, wxXRC_TEXT_NO_ESCAPE)); + m_helptextSpecified.push_back(nodeHelp != NULL); #endif // wxUSE_HELP m_isEnabled.push_back(GetBoolAttr("enabled", 1)); m_isShown.push_back(!GetBoolAttr("hidden", 0)); diff --git a/src/xrc/xmlres.cpp b/src/xrc/xmlres.cpp index 6a1e813c26..1963ba9d73 100644 --- a/src/xrc/xmlres.cpp +++ b/src/xrc/xmlres.cpp @@ -1506,73 +1506,83 @@ int wxXmlResourceHandlerImpl::GetStyle(const wxString& param, int defaults) -wxString wxXmlResourceHandlerImpl::GetText(const wxString& param, bool translate) +wxString wxXmlResourceHandlerImpl::GetNodeText(const wxXmlNode* node, int flags) { - wxXmlNode *parNode = GetParamNode(param); - wxString str1(GetNodeContent(parNode)); + wxString str1(GetNodeContent(node)); + if ( str1.empty() ) + return str1; + wxString str2; - // "\\" wasn't translated to "\" prior to 2.5.3.0: - const bool escapeBackslash = (m_handler->m_resource->CompareVersion(2,5,3,0) >= 0); - - // VS: First version of XRC resources used $ instead of & (which is - // illegal in XML), but later I realized that '_' fits this purpose - // much better (because &File means "File with F underlined"). - const wxChar amp_char = (m_handler->m_resource->CompareVersion(2,3,0,1) < 0) - ? '$' : '_'; - - for ( wxString::const_iterator dt = str1.begin(); dt != str1.end(); ++dt ) + if ( !(flags & wxXRC_TEXT_NO_ESCAPE) ) { - // Remap amp_char to &, map double amp_char to amp_char (for things - // like "&File..." -- this is illegal in XML, so we use "_File..."): - if ( *dt == amp_char ) + // "\\" wasn't translated to "\" prior to 2.5.3.0: + const bool escapeBackslash = (m_handler->m_resource->CompareVersion(2,5,3,0) >= 0); + + // VS: First version of XRC resources used $ instead of & (which is + // illegal in XML), but later I realized that '_' fits this purpose + // much better (because &File means "File with F underlined"). + const wxChar amp_char = (m_handler->m_resource->CompareVersion(2,3,0,1) < 0) + ? '$' : '_'; + + for ( wxString::const_iterator dt = str1.begin(); dt != str1.end(); ++dt ) { - if ( dt+1 == str1.end() || *(++dt) == amp_char ) - str2 << amp_char; - else - str2 << wxT('&') << *dt; - } - // Remap \n to CR, \r to LF, \t to TAB, \\ to \: - else if ( *dt == wxT('\\') ) - { - switch ( (*(++dt)).GetValue() ) + // Remap amp_char to &, map double amp_char to amp_char (for things + // like "&File..." -- this is illegal in XML, so we use "_File..."): + if ( *dt == amp_char ) { - case wxT('n'): - str2 << wxT('\n'); - break; - - case wxT('t'): - str2 << wxT('\t'); - break; - - case wxT('r'): - str2 << wxT('\r'); - break; - - case wxT('\\') : - // "\\" wasn't translated to "\" prior to 2.5.3.0: - if ( escapeBackslash ) - { - str2 << wxT('\\'); + if ( dt+1 == str1.end() || *(++dt) == amp_char ) + str2 << amp_char; + else + str2 << wxT('&') << *dt; + } + // Remap \n to CR, \r to LF, \t to TAB, \\ to \: + else if ( *dt == wxT('\\') ) + { + switch ( (*(++dt)).GetValue() ) + { + case wxT('n'): + str2 << wxT('\n'); break; - } - wxFALLTHROUGH;// else fall-through to default: branch below - default: - str2 << wxT('\\') << *dt; - break; + case wxT('t'): + str2 << wxT('\t'); + break; + + case wxT('r'): + str2 << wxT('\r'); + break; + + case wxT('\\') : + // "\\" wasn't translated to "\" prior to 2.5.3.0: + if ( escapeBackslash ) + { + str2 << wxT('\\'); + break; + } + wxFALLTHROUGH;// else fall-through to default: branch below + + default: + str2 << wxT('\\') << *dt; + break; + } + } + else + { + str2 << *dt; } } - else - { - str2 << *dt; - } + } + else // Don't escape anything in this string. + { + // We won't use str1 at all, so move its contents to str2. + str2.swap(str1); } if (m_handler->m_resource->GetFlags() & wxXRC_USE_LOCALE) { - if (translate && parNode && - parNode->GetAttribute(wxT("translate"), wxEmptyString) != wxT("0")) + if (!(flags & wxXRC_TEXT_NO_TRANSLATE) && node && + node->GetAttribute(wxT("translate"), wxEmptyString) != wxT("0")) { return wxGetTranslation(str2, m_handler->m_resource->GetDomain()); } @@ -2508,14 +2518,14 @@ void wxXmlResourceHandlerImpl::SetupWindow(wxWindow *wnd) wnd->SetFocus(); #if wxUSE_TOOLTIPS if (HasParam(wxT("tooltip"))) - wnd->SetToolTip(GetText(wxT("tooltip"))); + wnd->SetToolTip(GetNodeText(GetParamNode(wxT("tooltip")))); #endif if (HasParam(wxT("font"))) wnd->SetFont(GetFont(wxT("font"), wnd)); if (HasParam(wxT("ownfont"))) wnd->SetOwnFont(GetFont(wxT("ownfont"), wnd)); if (HasParam(wxT("help"))) - wnd->SetHelpText(GetText(wxT("help"))); + wnd->SetHelpText(GetNodeText(GetParamNode(wxT("help")))); } From bc2c9ce2a3565cd774cbb56bc770833e6530cb11 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 11 Jan 2018 01:03:01 +0100 Subject: [PATCH 115/916] Fix misspelling of a label in XRC docs and example It was spelt in 2 different ways, neither of which was actually correct. --- docs/doxygen/overviews/xrc_format.h | 2 +- samples/xrc/rc/controls.xrc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index abffacb471..de2c1e0a27 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -1611,7 +1611,7 @@ Example: Energy 98.3 CHUM FM 92FM - + @endcode diff --git a/samples/xrc/rc/controls.xrc b/samples/xrc/rc/controls.xrc index bac4812e5e..a6c4406570 100644 --- a/samples/xrc/rc/controls.xrc +++ b/samples/xrc/rc/controls.xrc @@ -779,7 +779,7 @@ lay them out using wxSizers, absolute positioning, everything you like! Energy 98.3 CHUM FM 92FM - + From 3357d46ccc8c53233b7089a042cbfe22d5417ca2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 11 Jan 2018 01:14:47 +0100 Subject: [PATCH 116/916] Make it simpler to use mnemonics for wxRadioBox items in XRC Allow specifying label="1" attribute in wxRadioBox tags to indicate that the usual translation of "_" to "&" should be done, as for all the other labels. This is still not the default behaviour to avoid breaking any existing XRC files using "_", even though using labels="1" by default would make more sense. --- docs/doxygen/overviews/xrc_format.h | 5 +++++ misc/schema/xrc_schema.rnc | 1 + src/xrc/xh_radbx.cpp | 8 +++++++- utils/wxrc/wxrc.cpp | 9 +++++++-- 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index de2c1e0a27..ebc25b1513 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -1595,6 +1595,11 @@ can also have some optional XML @em attributes (not properties!): Is the button enabled (default: 1)?} @row3col{hidden, @ref overview_xrcformat_type_bool, Is the button hidden initially (default: 0)?} +@row3col{label, @ref overview_xrcformat_type_bool, + Should this item text be interpreted as a label, i.e. escaping underscores + in it as done for the label properties of other controls? This attribute + exists since wxWidgets 3.1.1 and was always treated as having the value of + 0, which still remains its default, until then.} @endTable Example: diff --git a/misc/schema/xrc_schema.rnc b/misc/schema/xrc_schema.rnc index e4617452f6..ada4360591 100644 --- a/misc/schema/xrc_schema.rnc +++ b/misc/schema/xrc_schema.rnc @@ -1225,6 +1225,7 @@ wxRadioBox = attribute helptext { t_string }?, attribute enabled { t_bool }?, attribute hidden { t_bool }?, + attribute label { t_bool }?, t_text }* }? diff --git a/src/xrc/xh_radbx.cpp b/src/xrc/xh_radbx.cpp index 762f31b2e0..5fd8a84287 100644 --- a/src/xrc/xh_radbx.cpp +++ b/src/xrc/xh_radbx.cpp @@ -107,7 +107,13 @@ wxObject *wxRadioBoxXmlHandler::DoCreateResource() // we handle handle Label constructs here, and the item // tag can have tooltip, helptext, enabled and hidden attributes - m_labels.push_back(GetNodeText(m_node, wxXRC_TEXT_NO_ESCAPE)); + // For compatibility, labels are not escaped in XRC by default and + // label="1" attribute needs to be explicitly specified to handle them + // consistently with the other labels. + m_labels.push_back(GetNodeText(m_node, + GetBoolAttr("label", 0) + ? 0 + : wxXRC_TEXT_NO_ESCAPE)); #if wxUSE_TOOLTIPS m_tooltips.push_back(GetNodeText(GetParamNode(wxT("tooltip")), wxXRC_TEXT_NO_ESCAPE)); diff --git a/utils/wxrc/wxrc.cpp b/utils/wxrc/wxrc.cpp index fb06278d07..72bfd49738 100644 --- a/utils/wxrc/wxrc.cpp +++ b/utils/wxrc/wxrc.cpp @@ -981,9 +981,14 @@ GetNodeContentsKind(wxXmlNode& node, const wxString& contents) } // This one is special: it is translated in XRC, but its contents is not - // escaped. + // escaped, except for the special case of wxRadioBox when it can be, if + // "label" attribute is supplied. if ( node.GetName() == wxT("item") ) - return Contents_TransOnly; + { + return node.GetAttribute(wxT("label"), wxT("0")) == wxT("1") + ? Contents_Text + : Contents_TransOnly; + } return Contents_NotTrans; } From 4d35e8e54d22ae147295fb8510601afc4ea9d967 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Wed, 10 Jan 2018 22:48:39 +0100 Subject: [PATCH 117/916] CMake: Copy demo and sample data files to correct directory Instead of 'lib/', copy it to directory where the executables are (e.g. 'lib/vc_x64_lib/'). --- build/cmake/demos/CMakeLists.txt | 2 +- build/cmake/functions.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/cmake/demos/CMakeLists.txt b/build/cmake/demos/CMakeLists.txt index ee5f973dc9..a905d3e857 100644 --- a/build/cmake/demos/CMakeLists.txt +++ b/build/cmake/demos/CMakeLists.txt @@ -26,7 +26,7 @@ function(wx_add_demo name) foreach(data_file ${DEMO_DATA}) list(APPEND cmds COMMAND ${CMAKE_COMMAND} -E copy ${wxSOURCE_DIR}/demos/${name}/${data_file} - ${wxOUTPUT_DIR}/${data_file}) + ${wxOUTPUT_DIR}/${wxPLATFORM_LIB_DIR}/${data_file}) endforeach() add_custom_command( TARGET ${DEMO_NAME} ${cmds} diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index 4edd9c8ff2..1720672ea7 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -574,7 +574,7 @@ function(wx_add_sample name) foreach(data_file ${SAMPLE_DATA}) list(APPEND cmds COMMAND ${CMAKE_COMMAND} -E copy ${wxSOURCE_DIR}/samples/${wxSAMPLE_SUBDIR}${name}/${data_file} - ${wxOUTPUT_DIR}/${data_file}) + ${wxOUTPUT_DIR}/${wxPLATFORM_LIB_DIR}/${data_file}) endforeach() add_custom_command( TARGET ${target_name} ${cmds} From 573e887a4c00bd3e050d7ca27a3546467969feba Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Wed, 10 Jan 2018 22:50:51 +0100 Subject: [PATCH 118/916] CMake: Fix building and running samples Add missing header, source and resource files. Add missing data files (font), remove deleted data files (help). Fix specifying xrc sample data files. Remove WXUSINGDLL check from dialogs sample, it is not defined in e.g. static gui build. --- build/cmake/samples/CMakeLists.txt | 35 +++++++++++++++--------------- samples/dialogs/dialogs.h | 16 ++++---------- 2 files changed, 21 insertions(+), 30 deletions(-) diff --git a/build/cmake/samples/CMakeLists.txt b/build/cmake/samples/CMakeLists.txt index 9fbe640381..f8b7ac28fa 100644 --- a/build/cmake/samples/CMakeLists.txt +++ b/build/cmake/samples/CMakeLists.txt @@ -8,10 +8,10 @@ ############################################################################# wx_add_sample(access accesstest.cpp) -wx_add_sample(animate anitest.cpp LIBRARIES adv DATA throbber.gif hourglass.ani) +wx_add_sample(animate anitest.cpp anitest.h LIBRARIES adv DATA throbber.gif hourglass.ani) wx_add_sample(artprov arttest.cpp artbrows.cpp artbrows.h) wx_add_sample(aui auidemo.cpp LIBRARIES adv aui html NAME auidemo) -wx_add_sample(calendar LIBRARIES adv) +wx_add_sample(calendar RES calendar.rc LIBRARIES adv) wx_add_sample(caret) wx_add_sample(clipboard) wx_add_sample(collpane LIBRARIES adv) @@ -30,20 +30,18 @@ wx_add_sample(dragimag dragimag.cpp dragimag.h RES dragimag.rc DATA backgrnd.png shape01.png shape02.png shape03.png) wx_add_sample(drawing DATA pat4.bmp pat35.bmp pat36.bmp image.bmp mask.bmp) wx_add_sample(erase) -wx_add_sample(event) +wx_add_sample(event event.cpp gestures.cpp gestures.h) wx_add_sample(except) wx_add_sample(exec) -wx_add_sample(font) +wx_add_sample(font DATA wxprivate.ttf) wx_add_sample(fswatcher) wx_add_sample(grid griddemo.cpp griddemo.h LIBRARIES adv) wx_list_add_prefix(HELP_DOC_FILES doc/ - aindex.html ClassGraph.class ClassGraphPanel.class ClassLayout.class - down.gif dxxgifs.tex HIER.html HIERjava.html icon1.gif icon2.gif - index.html logo.gif NavigatorButton.class USE_HELP.html wx204.htm - wx34.htm wxExtHelpController.html wxhelp.map wx.htm + aindex.html down.gif dxxgifs.tex HIER.html icon1.gif icon2.gif index.html + logo.gif wx204.htm wx34.htm wxExtHelpController.html wxhelp.map wx.htm ) -wx_add_sample(help demo.cpp doc.h LIBRARIES html adv +wx_add_sample(help demo.cpp LIBRARIES html adv DATA back.gif bullet.bmp contents.gif cshelp.txt doc.chm doc.cnt doc.hhc doc.hhk doc.hhp doc.hlp doc.hpj doc.zip forward.gif up.gif @@ -52,7 +50,7 @@ wx_add_sample(help demo.cpp doc.h LIBRARIES html adv ) wx_add_sample(htlbox LIBRARIES html) include(html.cmake) -wx_add_sample(image image.cpp canvas.cpp canvas.h RES image.rc +wx_add_sample(image image.cpp canvas.cpp canvas.h cursor_png.c RES image.rc DATA horse.png horse.jpg horse.bmp horse.gif horse.pcx horse.pnm horse_ag.pnm horse_rg.pnm horse.tif horse.tga horse.xpm horse.cur horse.ico horse3.ani smile.xbm toucan.png cmyk.jpg cursor.png) @@ -105,7 +103,7 @@ wx_add_sample(render FOLDER render) wx_add_sample(render DLL renddll.cpp NAME renddll FOLDER render) wx_add_sample(ribbon ribbondemo.cpp LIBRARIES ribbon adv NAME ribbondemo) wx_add_sample(richtext LIBRARIES richtext adv html xml NAME richtextdemo) -wx_add_sample(sashtest sashtest.cpp sashtest.h LIBRARIES adv) +wx_add_sample(sashtest sashtest.cpp sashtest.h RES sashtest.rc LIBRARIES adv) wx_add_sample(scroll) wx_add_sample(secretstore CONSOLE DEPENDS wxUSE_SECRETSTORE) wx_add_sample(shaped DATA star.png) @@ -122,7 +120,7 @@ wx_add_sample(splitter) wx_add_sample(statbar) wx_add_sample(stc stctest.cpp edit.cpp prefs.cpp edit.h defsext.h prefs.h DATA stctest.cpp NAME stctest LIBRARIES stc) -wx_add_sample(svg svgtest.cpp) +wx_add_sample(svg svgtest.cpp RES svgtest.rc) wx_add_sample(taborder) wx_add_sample(taskbar tbtest.cpp tbtest.h LIBRARIES adv DEPENDS wxUSE_TASKBARICON) wx_add_sample(text) @@ -132,7 +130,7 @@ wx_add_sample(treectrl treetest.cpp treetest.h) wx_add_sample(treelist LIBRARIES adv) wx_add_sample(typetest typetest.cpp typetest.h) wx_add_sample(uiaction) -wx_add_sample(validate) +wx_add_sample(validate validate.cpp validate.h) wx_add_sample(vscroll vstest.cpp) wx_add_sample(webview LIBRARIES webview stc adv NAME webviewsample) # widgets Sample @@ -210,26 +208,27 @@ wx_add_sample(xrc myframe.h custclas.h objrefdlg.h - ${XRC_RC_FILES} + DATA ${XRC_RC_FILES} LIBRARIES aui ribbon xrc html adv NAME xrcdemo ) -wx_add_sample(xti xti.cpp classlist.cpp codereadercallback.cpp LIBRARIES xml +wx_add_sample(xti xti.cpp classlist.cpp codereadercallback.cpp + classlist.h codereadercallback.h LIBRARIES xml DEPENDS wxUSE_EXTENDED_RTTI) if(WIN32) # Windows only samples # DLL Sample - wx_add_sample(dll DLL my_dll.cpp NAME my_dll FOLDER dll + wx_add_sample(dll DLL my_dll.cpp my_dll.h NAME my_dll FOLDER dll DEFINITIONS MY_DLL_BUILDING) if(NOT wxBUILD_SHARED) # this test only makes sense with statically built wx, otherwise # the same copy of wx would be used - wx_add_sample(dll wx_exe.cpp NAME wx_exe FOLDER dll LIBRARIES my_dll) + wx_add_sample(dll wx_exe.cpp my_dll.h NAME wx_exe FOLDER dll LIBRARIES my_dll) endif() - wx_add_sample(dll sdk_exe.cpp NAME sdk_exe FOLDER dll LIBRARIES my_dll) + wx_add_sample(dll sdk_exe.cpp my_dll.h NAME sdk_exe FOLDER dll LIBRARIES my_dll) wx_add_sample(flash) #TODO: renable when sample is fixed #wx_add_sample(mfc mfctest.cpp mfctest.h resource.h stdafx.h RES mfctest.rc) diff --git a/samples/dialogs/dialogs.h b/samples/dialogs/dialogs.h index 482d636e3a..a7df5878b5 100644 --- a/samples/dialogs/dialogs.h +++ b/samples/dialogs/dialogs.h @@ -28,12 +28,6 @@ of MSW, MAC and OS2 #define USE_WXUNIVERSAL 0 #endif -#ifdef WXUSINGDLL - #define USE_DLL 1 -#else - #define USE_DLL 0 -#endif - #if defined(__WXMSW__) #define USE_WXMSW 1 #else @@ -58,16 +52,14 @@ of MSW, MAC and OS2 #define USE_WXGTK 0 #endif -#define USE_GENERIC_DIALOGS (!USE_WXUNIVERSAL && !USE_DLL) - #define USE_COLOURDLG_GENERIC \ - ((USE_WXMSW || USE_WXMAC) && USE_GENERIC_DIALOGS && wxUSE_COLOURDLG) + ((USE_WXMSW || USE_WXMAC) && USE_WXUNIVERSAL && wxUSE_COLOURDLG) #define USE_DIRDLG_GENERIC \ - ((USE_WXMSW || USE_WXMAC) && USE_GENERIC_DIALOGS && wxUSE_DIRDLG) + ((USE_WXMSW || USE_WXMAC) && USE_WXUNIVERSAL && wxUSE_DIRDLG) #define USE_FILEDLG_GENERIC \ - ((USE_WXMSW || USE_WXMAC) && USE_GENERIC_DIALOGS && wxUSE_FILEDLG) + ((USE_WXMSW || USE_WXMAC) && USE_WXUNIVERSAL && wxUSE_FILEDLG) #define USE_FONTDLG_GENERIC \ - ((USE_WXMSW || USE_WXMACFONTDLG) && USE_GENERIC_DIALOGS && wxUSE_FONTDLG) + ((USE_WXMSW || USE_WXMACFONTDLG) && USE_WXUNIVERSAL && wxUSE_FONTDLG) // Turn USE_MODAL_PRESENTATION to 0 if there is any reason for not presenting difference // between modal and modeless dialogs (ie. not implemented it in your port yet) From db86112675d9867a650d06da41f60040602c32cc Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Wed, 10 Jan 2018 22:53:00 +0100 Subject: [PATCH 119/916] CMake: Disable crt and socket warnings from Windows headers --- build/cmake/functions.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index 1720672ea7..c2c28b8c5a 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -175,6 +175,7 @@ function(wx_set_target_properties target_name is_base) _CRT_SECURE_NO_DEPRECATE=1 _CRT_NON_CONFORMING_SWPRINTFS=1 _SCL_SECURE_NO_WARNINGS=1 + _WINSOCK_DEPRECATED_NO_WARNINGS=1 ) endif() @@ -381,7 +382,10 @@ function(wx_set_builtin_target_properties target_name) # standard C functions in the 3rd party libraries (these warnings # are only given by VC8+ but it's simpler to just always define # this symbol which disables them, even for previous VC versions) - target_compile_definitions(${target_name} PRIVATE _CRT_SECURE_NO_WARNINGS) + target_compile_definitions(${target_name} PRIVATE + _CRT_SECURE_NO_DEPRECATE=1 + _SCL_SECURE_NO_WARNINGS=1 + ) endif() set_target_properties(${target_name} PROPERTIES FOLDER "Third Party Libraries") From 21615b16347e6ccb8380a4bc5344a16058d55427 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Wed, 10 Jan 2018 22:56:42 +0100 Subject: [PATCH 120/916] CMake: Set Visual Studio working directory Use the executable output directory for samples and demos, use the source directory for tests. --- build/cmake/demos/CMakeLists.txt | 3 +++ build/cmake/functions.cmake | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/build/cmake/demos/CMakeLists.txt b/build/cmake/demos/CMakeLists.txt index a905d3e857..e8f7f7d412 100644 --- a/build/cmake/demos/CMakeLists.txt +++ b/build/cmake/demos/CMakeLists.txt @@ -38,6 +38,9 @@ function(wx_add_demo name) target_link_libraries(${DEMO_NAME} core ${DEMO_LIBRARIES}) wx_set_common_target_properties(${DEMO_NAME}) set_target_properties(${DEMO_NAME} PROPERTIES FOLDER "Demos") + set_target_properties(${DEMO_NAME} PROPERTIES + VS_DEBUGGER_WORKING_DIRECTORY "${wxOUTPUT_DIR}/${wxCOMPILER_PREFIX}${wxARCH_SUFFIX}_${lib_suffix}" + ) endfunction() wx_add_demo(bombs diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index c2c28b8c5a..75e0f1f2ba 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -610,6 +610,9 @@ function(wx_add_sample name) set_target_properties(${target_name} PROPERTIES FOLDER ${folder} ) + set_target_properties(${target_name} PROPERTIES + VS_DEBUGGER_WORKING_DIRECTORY "${wxOUTPUT_DIR}/${wxCOMPILER_PREFIX}${wxARCH_SUFFIX}_${lib_suffix}" + ) endfunction() # Link libraries to a sample @@ -704,6 +707,9 @@ function(wx_add_test name) endif() wx_set_common_target_properties(${name}) set_target_properties(${name} PROPERTIES FOLDER "Tests") + set_target_properties(${name} PROPERTIES + VS_DEBUGGER_WORKING_DIRECTORY "${wxSOURCE_DIR}/tests" + ) add_test(NAME ${name} COMMAND ${name} From f166d3b9c05e4fea3c6613e7fcc5d30fa06ed6b6 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Wed, 10 Jan 2018 22:58:53 +0100 Subject: [PATCH 121/916] CMake: Don't use external project for wxexpat This simplifies things a lot. And it is also not used for png, tiff and zlib. --- build/cmake/lib/xml/CMakeLists.txt | 45 +++++------------------------- 1 file changed, 7 insertions(+), 38 deletions(-) diff --git a/build/cmake/lib/xml/CMakeLists.txt b/build/cmake/lib/xml/CMakeLists.txt index 718f5f64ad..4dfc9e4cc2 100644 --- a/build/cmake/lib/xml/CMakeLists.txt +++ b/build/cmake/lib/xml/CMakeLists.txt @@ -9,45 +9,14 @@ include(../../source_groups.cmake) -if(WIN32) - set(EXPAT_POSTFIX $<$:d>) -endif(WIN32) - if(wxUSE_EXPAT STREQUAL "builtin") - ExternalProject_Add(wxexpat - DOWNLOAD_COMMAND "" - SOURCE_DIR ${wxSOURCE_DIR}/src/expat/expat - CMAKE_ARGS - -DCMAKE_INSTALL_PREFIX= - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DBUILD_tools=OFF - -DBUILD_examples=OFF - -DBUILD_tests=OFF - -DBUILD_shared=OFF - INSTALL_COMMAND - ${CMAKE_COMMAND} --build --config $ --target install - COMMAND - ${CMAKE_COMMAND} -E make_directory /wxlib - COMMAND - ${CMAKE_COMMAND} -E rename - /lib/${CMAKE_STATIC_LIBRARY_PREFIX}expat${EXPAT_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX} - /wxlib/${CMAKE_STATIC_LIBRARY_PREFIX}wxexpat$<$:d>${CMAKE_STATIC_LIBRARY_SUFFIX} - ) - ExternalProject_Get_Property(wxexpat INSTALL_DIR) - add_library(expat STATIC IMPORTED) - set_target_properties(expat PROPERTIES - IMPORTED_LOCATION "${INSTALL_DIR}/wxlib/${CMAKE_STATIC_LIBRARY_PREFIX}wxexpat${CMAKE_STATIC_LIBRARY_SUFFIX}" - IMPORTED_LOCATION_DEBUG "${INSTALL_DIR}/wxlib/${CMAKE_STATIC_LIBRARY_PREFIX}wxexpatd${CMAKE_STATIC_LIBRARY_SUFFIX}" - FOLDER "Third Party Libraries" - ) - add_dependencies(expat wxexpat) - set(EXPAT_INCLUDE_DIRS "${INSTALL_DIR}/include") - set(EXPAT_LIBRARIES expat) - if(NOT wxBUILD_SHARED) - wx_install( - FILES ${INSTALL_DIR}/wxlib/${CMAKE_STATIC_LIBRARY_PREFIX}wxexpat$<$:d>${CMAKE_STATIC_LIBRARY_SUFFIX} - DESTINATION "lib${wxPLATFORM_LIB_DIR}") - endif() + wx_add_builtin_library(wxexpat + src/expat/expat/lib/xmlparse.c + src/expat/expat/lib/xmlrole.c + src/expat/expat/lib/xmltok.c + ) + set(EXPAT_LIBRARIES wxexpat) + set(EXPAT_INCLUDE_DIRS ${wxSOURCE_DIR}/src/expat/expat/lib) elseif(wxUSE_EXPAT) find_package(EXPAT) endif() From 47fb2b612208e4fd53f5b2d27063b65401069312 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Thu, 11 Jan 2018 22:04:58 +0100 Subject: [PATCH 122/916] CMake: Update cotire to 1.7.10 --- build/cmake/modules/cotire.cmake | 118 +++++++++++++++++++++---------- 1 file changed, 82 insertions(+), 36 deletions(-) diff --git a/build/cmake/modules/cotire.cmake b/build/cmake/modules/cotire.cmake index ab611007dc..62cd23db98 100644 --- a/build/cmake/modules/cotire.cmake +++ b/build/cmake/modules/cotire.cmake @@ -3,7 +3,7 @@ # See the cotire manual for usage hints. # #============================================================================= -# Copyright 2012-2016 Sascha Kratky +# Copyright 2012-2017 Sascha Kratky # # Permission is hereby granted, free of charge, to any person # obtaining a copy of this software and associated documentation @@ -43,7 +43,7 @@ if (NOT CMAKE_SCRIPT_MODE_FILE) endif() set (COTIRE_CMAKE_MODULE_FILE "${CMAKE_CURRENT_LIST_FILE}") -set (COTIRE_CMAKE_MODULE_VERSION "1.7.9") +set (COTIRE_CMAKE_MODULE_VERSION "1.7.10") # activate select policies if (POLICY CMP0025) @@ -106,6 +106,11 @@ if (POLICY CMP0054) cmake_policy(SET CMP0054 NEW) endif() +if (POLICY CMP0055) + # strict checking for break() command + cmake_policy(SET CMP0055 NEW) +endif() + include(CMakeParseArguments) include(ProcessorCount) @@ -293,7 +298,7 @@ function (cotire_get_source_file_property_values _valuesVar _property) set (${_valuesVar} ${_values} PARENT_SCOPE) endfunction() -function (cotire_resolve_config_properites _configurations _propertiesVar) +function (cotire_resolve_config_properties _configurations _propertiesVar) set (_properties "") foreach (_property ${ARGN}) if ("${_property}" MATCHES "") @@ -309,8 +314,8 @@ function (cotire_resolve_config_properites _configurations _propertiesVar) set (${_propertiesVar} ${_properties} PARENT_SCOPE) endfunction() -function (cotire_copy_set_properites _configurations _type _source _target) - cotire_resolve_config_properites("${_configurations}" _properties ${ARGN}) +function (cotire_copy_set_properties _configurations _type _source _target) + cotire_resolve_config_properties("${_configurations}" _properties ${ARGN}) foreach (_property ${_properties}) get_property(_isSet ${_type} ${_source} PROPERTY ${_property} SET) if (_isSet) @@ -320,13 +325,18 @@ function (cotire_copy_set_properites _configurations _type _source _target) endforeach() endfunction() -function (cotire_get_target_usage_requirements _target _targetRequirementsVar) +function (cotire_get_target_usage_requirements _target _config _targetRequirementsVar) set (_targetRequirements "") get_target_property(_librariesToProcess ${_target} LINK_LIBRARIES) while (_librariesToProcess) # remove from head list (GET _librariesToProcess 0 _library) list (REMOVE_AT _librariesToProcess 0) + if (_library MATCHES "^\\$<\\$:([A-Za-z0-9_:-]+)>$") + set (_library "${CMAKE_MATCH_1}") + elseif (_config STREQUAL "None" AND _library MATCHES "^\\$<\\$:([A-Za-z0-9_:-]+)>$") + set (_library "${CMAKE_MATCH_1}") + endif() if (TARGET ${_library}) list (FIND _targetRequirements ${_library} _index) if (_index LESS 0) @@ -441,7 +451,7 @@ function (cotire_get_target_compile_flags _config _language _target _flagsVar) # interface compile options from linked library targets if (_target) set (_linkedTargets "") - cotire_get_target_usage_requirements(${_target} _linkedTargets) + cotire_get_target_usage_requirements(${_target} ${_config} _linkedTargets) foreach (_linkedTarget ${_linkedTargets}) get_target_property(_targetOptions ${_linkedTarget} INTERFACE_COMPILE_OPTIONS) if (_targetOptions) @@ -573,7 +583,7 @@ function (cotire_get_target_include_directories _config _language _target _inclu # interface include directories from linked library targets if (_target) set (_linkedTargets "") - cotire_get_target_usage_requirements(${_target} _linkedTargets) + cotire_get_target_usage_requirements(${_target} ${_config} _linkedTargets) foreach (_linkedTarget ${_linkedTargets}) get_target_property(_linkedTargetType ${_linkedTarget} TYPE) if (CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE AND NOT CMAKE_VERSION VERSION_LESS "3.4.0" AND @@ -627,7 +637,7 @@ function (cotire_get_target_include_directories _config _language _target _inclu if (CMAKE_${_language}_IMPLICIT_INCLUDE_DIRECTORIES) list (REMOVE_ITEM _includeDirs ${CMAKE_${_language}_IMPLICIT_INCLUDE_DIRECTORIES}) endif() - if (WIN32) + if (WIN32 AND NOT MINGW) # convert Windows paths in include directories to CMake paths if (_includeDirs) set (_paths "") @@ -703,7 +713,7 @@ function (cotire_get_target_compile_definitions _config _language _target _defin endif() # interface compile definitions from linked library targets set (_linkedTargets "") - cotire_get_target_usage_requirements(${_target} _linkedTargets) + cotire_get_target_usage_requirements(${_target} ${_config} _linkedTargets) foreach (_linkedTarget ${_linkedTargets}) get_target_property(_definitions ${_linkedTarget} INTERFACE_COMPILE_DEFINITIONS) if (_definitions) @@ -859,6 +869,9 @@ macro (cotire_set_cmd_to_prologue _cmdVar) list (APPEND ${_cmdVar} "--warn-uninitialized") endif() list (APPEND ${_cmdVar} "-DCOTIRE_BUILD_TYPE:STRING=$") + if (XCODE) + list (APPEND ${_cmdVar} "-DXCODE:BOOL=TRUE") + endif() if (COTIRE_VERBOSE) list (APPEND ${_cmdVar} "-DCOTIRE_VERBOSE:BOOL=ON") elseif("${CMAKE_GENERATOR}" MATCHES "Makefiles") @@ -902,16 +915,16 @@ function (cotire_add_includes_to_cmd _cmdVar _language _includesVar _systemInclu foreach (_include ${_includeDirs}) if (WIN32 AND CMAKE_${_language}_COMPILER_ID MATCHES "MSVC|Intel") file (TO_NATIVE_PATH "${_include}" _include) - list (APPEND ${_cmdVar} "${CMAKE_INCLUDE_FLAG_${_language}}${CMAKE_INCLUDE_FLAG_${_language}_SEP}${_include}") + list (APPEND ${_cmdVar} "${CMAKE_INCLUDE_FLAG_${_language}}${CMAKE_INCLUDE_FLAG_SEP_${_language}}${_include}") else() set (_index -1) if ("${CMAKE_INCLUDE_SYSTEM_FLAG_${_language}}" MATCHES ".+") list (FIND ${_systemIncludesVar} "${_include}" _index) endif() if (_index GREATER -1) - list (APPEND ${_cmdVar} "${CMAKE_INCLUDE_SYSTEM_FLAG_${_language}}${_include}") + list (APPEND ${_cmdVar} "${CMAKE_INCLUDE_SYSTEM_FLAG_${_language}}${CMAKE_INCLUDE_FLAG_SEP_${_language}}${_include}") else() - list (APPEND ${_cmdVar} "${CMAKE_INCLUDE_FLAG_${_language}}${CMAKE_INCLUDE_FLAG_${_language}_SEP}${_include}") + list (APPEND ${_cmdVar} "${CMAKE_INCLUDE_FLAG_${_language}}${CMAKE_INCLUDE_FLAG_SEP_${_language}}${_include}") endif() endif() endforeach() @@ -1657,6 +1670,10 @@ function (cotire_add_pch_compilation_flags _language _compilerID _compilerVersio get_filename_component(_pchName "${_pchFile}" NAME) set (_xLanguage_C "c-header") set (_xLanguage_CXX "c++-header") + set (_pchSuppressMessages FALSE) + if ("${CMAKE_${_language}_FLAGS}" MATCHES ".*-Wno-pch-messages.*") + set(_pchSuppressMessages TRUE) + endif() if (_flags) # append to list if ("${_language}" STREQUAL "CXX") @@ -1664,13 +1681,17 @@ function (cotire_add_pch_compilation_flags _language _compilerID _compilerVersio endif() list (APPEND _flags "-include" "${_prefixFile}" "-pch-dir" "${_pchDir}" "-pch-create" "${_pchName}" "-fsyntax-only" "${_hostFile}") if (NOT "${_compilerVersion}" VERSION_LESS "13.1.0") - list (APPEND _flags "-Wpch-messages") + if (NOT _pchSuppressMessages) + list (APPEND _flags "-Wpch-messages") + endif() endif() else() # return as a flag string set (_flags "-include \"${_prefixFile}\" -pch-dir \"${_pchDir}\" -pch-create \"${_pchName}\"") if (NOT "${_compilerVersion}" VERSION_LESS "13.1.0") - set (_flags "${_flags} -Wpch-messages") + if (NOT _pchSuppressMessages) + set (_flags "${_flags} -Wpch-messages") + endif() endif() endif() endif() @@ -1781,17 +1802,25 @@ function (cotire_add_prefix_pch_inclusion_flags _language _compilerID _compilerV if (_pchFile) get_filename_component(_pchDir "${_pchFile}" DIRECTORY) get_filename_component(_pchName "${_pchFile}" NAME) + set (_pchSuppressMessages FALSE) + if ("${CMAKE_${_language}_FLAGS}" MATCHES ".*-Wno-pch-messages.*") + set(_pchSuppressMessages TRUE) + endif() if (_flags) # append to list list (APPEND _flags "-include" "${_prefixFile}" "-pch-dir" "${_pchDir}" "-pch-use" "${_pchName}") if (NOT "${_compilerVersion}" VERSION_LESS "13.1.0") - list (APPEND _flags "-Wpch-messages") + if (NOT _pchSuppressMessages) + list (APPEND _flags "-Wpch-messages") + endif() endif() else() # return as a flag string set (_flags "-include \"${_prefixFile}\" -pch-dir \"${_pchDir}\" -pch-use \"${_pchName}\"") if (NOT "${_compilerVersion}" VERSION_LESS "13.1.0") - set (_flags "${_flags} -Wpch-messages") + if (NOT _pchSuppressMessages) + set (_flags "${_flags} -Wpch-messages") + endif() endif() endif() else() @@ -1839,6 +1868,14 @@ function (cotire_precompile_prefix_header _prefixFile _pchFile _hostFile) if (_option_COMPILER_ID MATCHES "MSVC") # cl.exe messes with the output streams unless the environment variable VS_UNICODE_OUTPUT is cleared unset (ENV{VS_UNICODE_OUTPUT}) + elseif (_option_COMPILER_ID MATCHES "GNU|Clang") + if (_option_COMPILER_LAUNCHER MATCHES "ccache" OR + _option_COMPILER_EXECUTABLE MATCHES "ccache") + # Newer versions of Clang and GCC seem to embed a compilation timestamp into the precompiled header binary, + # which results in "file has been modified since the precompiled header was built" errors if ccache is used. + # We work around the problem by disabling ccache upon pre-compiling the prefix header. + set (ENV{CCACHE_DISABLE} "true") + endif() endif() execute_process( COMMAND ${_cmd} @@ -2191,7 +2228,7 @@ function (cotire_generate_target_script _language _configurations _target _targe XCODE MSVC CMAKE_GENERATOR CMAKE_BUILD_TYPE CMAKE_CONFIGURATION_TYPES CMAKE_${_language}_COMPILER_ID CMAKE_${_language}_COMPILER_VERSION CMAKE_${_language}_COMPILER_LAUNCHER CMAKE_${_language}_COMPILER CMAKE_${_language}_COMPILER_ARG1 - CMAKE_INCLUDE_FLAG_${_language} CMAKE_INCLUDE_FLAG_${_language}_SEP + CMAKE_INCLUDE_FLAG_${_language} CMAKE_INCLUDE_FLAG_SEP_${_language} CMAKE_INCLUDE_SYSTEM_FLAG_${_language} CMAKE_${_language}_FRAMEWORK_SEARCH_FLAG CMAKE_${_language}_SYSTEM_FRAMEWORK_SEARCH_FLAG @@ -2989,8 +3026,13 @@ function (cotire_setup_unity_build_target _languages _configurations _target) if (_targetAutoMoc OR _targetAutoUic OR _targetAutoRcc) # if the original target sources are subject to CMake's automatic Qt processing, # also include implicitly generated _automoc.cpp file - list (APPEND _unityTargetSources "${_target}_automoc.cpp") - set_property (SOURCE "${_target}_automoc.cpp" PROPERTY GENERATED TRUE) + if (CMAKE_VERSION VERSION_LESS "3.8.0") + list (APPEND _unityTargetSources "${_target}_automoc.cpp") + set_property (SOURCE "${_target}_automoc.cpp" PROPERTY GENERATED TRUE) + else() + list (APPEND _unityTargetSources "${_target}_autogen/moc_compilation.cpp") + set_property (SOURCE "${_target}_autogen/moc_compilation.cpp" PROPERTY GENERATED TRUE) + endif() endif() # prevent AUTOMOC, AUTOUIC and AUTORCC properties from being set when the unity target is created set (CMAKE_AUTOMOC OFF) @@ -3013,7 +3055,11 @@ function (cotire_setup_unity_build_target _languages _configurations _target) else() if (_targetAutoMoc OR _targetAutoUic OR _targetAutoRcc) # depend on the original target's implicity generated _automoc target - add_dependencies(${_unityTargetName} ${_target}_automoc) + if (CMAKE_VERSION VERSION_LESS "3.8.0") + add_dependencies(${_unityTargetName} ${_target}_automoc) + else() + add_dependencies(${_unityTargetName} ${_target}_autogen) + endif() endif() endif() # copy output location properties @@ -3027,8 +3073,8 @@ function (cotire_setup_unity_build_target _languages _configurations _target) set (_outputDir "${COTIRE_UNITY_OUTPUT_DIRECTORY}") else() # append relative COTIRE_UNITY_OUTPUT_DIRECTORY to target's actual output directory - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} ${_outputDirProperties}) - cotire_resolve_config_properites("${_configurations}" _properties ${_outputDirProperties}) + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} ${_outputDirProperties}) + cotire_resolve_config_properties("${_configurations}" _properties ${_outputDirProperties}) foreach (_property ${_properties}) get_property(_outputDir TARGET ${_target} PROPERTY ${_property}) if (_outputDir) @@ -3048,11 +3094,11 @@ function (cotire_setup_unity_build_target _languages _configurations _target) RUNTIME_OUTPUT_DIRECTORY "${_outputDir}") endif() else() - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} ${_outputDirProperties}) endif() # copy output name - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} ARCHIVE_OUTPUT_NAME ARCHIVE_OUTPUT_NAME_ LIBRARY_OUTPUT_NAME LIBRARY_OUTPUT_NAME_ OUTPUT_NAME OUTPUT_NAME_ @@ -3060,7 +3106,7 @@ function (cotire_setup_unity_build_target _languages _configurations _target) PREFIX _POSTFIX SUFFIX IMPORT_PREFIX IMPORT_SUFFIX) # copy compile stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} COMPILE_DEFINITIONS COMPILE_DEFINITIONS_ COMPILE_FLAGS COMPILE_OPTIONS Fortran_FORMAT Fortran_MODULE_DIRECTORY @@ -3072,12 +3118,12 @@ function (cotire_setup_unity_build_target _languages _configurations _target) C_VISIBILITY_PRESET CXX_VISIBILITY_PRESET VISIBILITY_INLINES_HIDDEN C_CLANG_TIDY CXX_CLANG_TIDY) # copy compile features - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} C_EXTENSIONS C_STANDARD C_STANDARD_REQUIRED CXX_EXTENSIONS CXX_STANDARD CXX_STANDARD_REQUIRED COMPILE_FEATURES) # copy interface stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} COMPATIBLE_INTERFACE_BOOL COMPATIBLE_INTERFACE_NUMBER_MAX COMPATIBLE_INTERFACE_NUMBER_MIN COMPATIBLE_INTERFACE_STRING INTERFACE_COMPILE_DEFINITIONS INTERFACE_COMPILE_FEATURES INTERFACE_COMPILE_OPTIONS @@ -3085,7 +3131,7 @@ function (cotire_setup_unity_build_target _languages _configurations _target) INTERFACE_POSITION_INDEPENDENT_CODE INTERFACE_SYSTEM_INCLUDE_DIRECTORIES INTERFACE_AUTOUIC_OPTIONS NO_SYSTEM_FROM_IMPORTED) # copy link stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} BUILD_WITH_INSTALL_RPATH INSTALL_RPATH INSTALL_RPATH_USE_LINK_PATH SKIP_BUILD_RPATH LINKER_LANGUAGE LINK_DEPENDS LINK_DEPENDS_NO_SHARED LINK_FLAGS LINK_FLAGS_ @@ -3094,18 +3140,18 @@ function (cotire_setup_unity_build_target _languages _configurations _target) LINK_SEARCH_START_STATIC LINK_SEARCH_END_STATIC STATIC_LIBRARY_FLAGS STATIC_LIBRARY_FLAGS_ NO_SONAME SOVERSION VERSION - LINK_WHAT_YOU_USE) + LINK_WHAT_YOU_USE BUILD_RPATH) # copy cmake stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} IMPLICIT_DEPENDS_INCLUDE_TRANSFORM RULE_LAUNCH_COMPILE RULE_LAUNCH_CUSTOM RULE_LAUNCH_LINK) # copy Apple platform specific stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} BUNDLE BUNDLE_EXTENSION FRAMEWORK FRAMEWORK_VERSION INSTALL_NAME_DIR MACOSX_BUNDLE MACOSX_BUNDLE_INFO_PLIST MACOSX_FRAMEWORK_INFO_PLIST MACOSX_RPATH OSX_ARCHITECTURES OSX_ARCHITECTURES_ PRIVATE_HEADER PUBLIC_HEADER RESOURCE XCTEST - IOS_INSTALL_COMBINED) + IOS_INSTALL_COMBINED XCODE_EXPLICIT_FILE_TYPE XCODE_PRODUCT_TYPE) # copy Windows platform specific stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} GNUtoMS COMPILE_PDB_NAME COMPILE_PDB_NAME_ COMPILE_PDB_OUTPUT_DIRECTORY COMPILE_PDB_OUTPUT_DIRECTORY_ @@ -3119,9 +3165,9 @@ function (cotire_setup_unity_build_target _languages _configurations _target) VS_WINRT_COMPONENT VS_WINRT_EXTENSIONS VS_WINRT_REFERENCES WIN32_EXECUTABLE WINDOWS_EXPORT_ALL_SYMBOLS DEPLOYMENT_REMOTE_DIRECTORY VS_CONFIGURATION_TYPE - VS_SDK_REFERENCES) + VS_SDK_REFERENCES VS_USER_PROPS VS_DEBUGGER_WORKING_DIRECTORY) # copy Android platform specific stuff - cotire_copy_set_properites("${_configurations}" TARGET ${_target} ${_unityTargetName} + cotire_copy_set_properties("${_configurations}" TARGET ${_target} ${_unityTargetName} ANDROID_API ANDROID_API_MIN ANDROID_GUI ANDROID_ANT_ADDITIONAL_OPTIONS ANDROID_ARCH ANDROID_ASSETS_DIRECTORIES ANDROID_JAR_DEPENDENCIES ANDROID_JAR_DIRECTORIES ANDROID_JAVA_SOURCE_DIR From d26758044c55c0111ccd5e2c4d161f74c06d1771 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 12 Jan 2018 17:16:02 +0100 Subject: [PATCH 123/916] Don't call wxWakeUpIdle() with a lock in wxProgressDialog This can result in deadlocks because wxWakeUpIdle(), admittedly rather unexpectedly, can result in dispatching a message in the main thread, which could reacquire the same lock again. --- src/msw/progdlg.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/msw/progdlg.cpp b/src/msw/progdlg.cpp index 46416402c5..2f1131a5dc 100644 --- a/src/msw/progdlg.cpp +++ b/src/msw/progdlg.cpp @@ -1133,6 +1133,18 @@ wxProgressDialogTaskRunner::TaskDialogCallbackProc LONG_PTR dwRefData ) { + if ( uNotification == TDN_CREATED ) + { + // The main thread may be sitting in an event dispatching loop waiting + // for this dialog to be shown, so make sure it does wake up now that + // it is. Notice that we must do it from here and not from inside the + // block below in which sharedData is locked as otherwise we could + // deadlock if wxWakeUpIdle() dispatched some event which tried to call + // any of wxProgressDialog methods, which also lock this data, from the + // main thread. + wxWakeUpIdle(); + } + bool endDialog = false; // Block for shared data critical section. @@ -1148,10 +1160,6 @@ wxProgressDialogTaskRunner::TaskDialogCallbackProc // Store the HWND for the main thread use. sharedData->m_hwnd = hwnd; - // The main thread is sitting in an event dispatching loop waiting - // for this dialog to be shown, so make sure it does get an event. - wxWakeUpIdle(); - // Set the maximum value and disable Close button. ::SendMessage( hwnd, TDM_SET_PROGRESS_BAR_RANGE, From 91aed00288ec61275576121f957a35d7b98ad57f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 15:23:30 +0100 Subject: [PATCH 124/916] Revert "Revert using an event object for waking up event loop in wxMSW" This reverts commit ebb3a791b96bcb26bcad9a4c97e8e62e2d6aa6ed, effectively reapplying 6c40531fb763fcb850bfe275bdcac018b147be7c once again. This breaks wake up when not running our own event loop once again (see #17579), but this will be fixed in the next commit. --- include/wx/msw/evtloop.h | 1 - include/wx/msw/evtloopconsole.h | 19 ++++++- src/msw/app.cpp | 63 ++++++----------------- src/msw/evtloop.cpp | 5 -- src/msw/evtloopconsole.cpp | 90 +++++++++++++++++++-------------- 5 files changed, 85 insertions(+), 93 deletions(-) diff --git a/include/wx/msw/evtloop.h b/include/wx/msw/evtloop.h index 43ef271a87..911d77d385 100644 --- a/include/wx/msw/evtloop.h +++ b/include/wx/msw/evtloop.h @@ -53,7 +53,6 @@ public: // override/implement base class virtuals virtual bool Dispatch() wxOVERRIDE; virtual int DispatchTimeout(unsigned long timeout) wxOVERRIDE; - virtual void WakeUp() wxOVERRIDE; protected: virtual void OnNextIteration() wxOVERRIDE; diff --git a/include/wx/msw/evtloopconsole.h b/include/wx/msw/evtloopconsole.h index 32c411a50a..17df0a4e7a 100644 --- a/include/wx/msw/evtloopconsole.h +++ b/include/wx/msw/evtloopconsole.h @@ -15,9 +15,20 @@ class WXDLLIMPEXP_BASE wxMSWEventLoopBase : public wxEventLoopManual { public: wxMSWEventLoopBase(); + virtual ~wxMSWEventLoopBase(); // implement base class pure virtuals virtual bool Pending() const wxOVERRIDE; + virtual void WakeUp() wxOVERRIDE; + +#if wxUSE_THREADS + // MSW-specific method to wait for the termination of the specified (by its + // native handle) thread or any input message arriving (in GUI case). + // + // Return value is WAIT_OBJECT_0 if the thread terminated, WAIT_OBJECT_0+1 + // if a message arrived with anything else indicating an error. + WXDWORD MSWWaitForThread(WXHANDLE hThread); +#endif // wxUSE_THREADS protected: // get the next message from queue and return true or return false if we @@ -25,8 +36,13 @@ protected: bool GetNextMessage(WXMSG *msg); // same as above but with a timeout and return value can be -1 meaning that - // time out expired in addition to + // time out expired in addition to true/false int GetNextMessageTimeout(WXMSG *msg, unsigned long timeout); + +private: + // An auto-reset Win32 event which is signalled when we need to wake up the + // main thread waiting in GetNextMessage[Timeout](). + WXHANDLE m_heventWake; }; #if wxUSE_CONSOLE_EVENTLOOP @@ -39,7 +55,6 @@ public: // override/implement base class virtuals virtual bool Dispatch() wxOVERRIDE; virtual int DispatchTimeout(unsigned long timeout) wxOVERRIDE; - virtual void WakeUp() wxOVERRIDE; // Windows-specific function to process a single message virtual void ProcessMessage(WXMSG *msg); diff --git a/src/msw/app.cpp b/src/msw/app.cpp index 27a4ca23e7..866078a53a 100644 --- a/src/msw/app.cpp +++ b/src/msw/app.cpp @@ -248,23 +248,16 @@ WXDWORD wxGUIAppTraits::WaitForThread(WXHANDLE hThread, int flags) // have a running event loop as we would never remove them from the message // queue then and so we would enter an infinite loop as // MsgWaitForMultipleObjects() keeps returning WAIT_OBJECT_0 + 1. - if ( flags == wxTHREAD_WAIT_BLOCK || - !wxIsMainThread() || - !wxEventLoop::GetActive() ) + if ( flags == wxTHREAD_WAIT_YIELD && wxIsMainThread() ) { - // Simple blocking wait. - return DoSimpleWaitForThread(hThread); + wxMSWEventLoopBase* const + evtLoop = static_cast(wxEventLoop::GetActive()); + if ( evtLoop ) + return evtLoop->MSWWaitForThread(hThread); } - return ::MsgWaitForMultipleObjects - ( - 1, // number of objects to wait for - (HANDLE *)&hThread, // the objects - false, // wait for any objects, not all - INFINITE, // no timeout - QS_ALLINPUT | // return as soon as there are any events - QS_ALLPOSTMESSAGE - ); + // Simple blocking wait. + return DoSimpleWaitForThread(hThread); } #endif // wxUSE_THREADS @@ -785,42 +778,16 @@ void wxApp::OnIdle(wxIdleEvent& WXUNUSED(event)) void wxApp::WakeUpIdle() { - // Send the top window a dummy message so idle handler processing will - // start up again. Doing it this way ensures that the idle handler - // wakes up in the right thread (see also wxWakeUpMainThread() which does - // the same for the main app thread only) - wxWindow * const topWindow = wxTheApp->GetTopWindow(); - if ( topWindow ) + wxEventLoopBase * const evtLoop = wxEventLoop::GetActive(); + if ( !evtLoop ) { - HWND hwndTop = GetHwndOf(topWindow); - - // Do not post WM_NULL if there's already a pending WM_NULL to avoid - // overflowing the message queue. - // - // Notice that due to a limitation of PeekMessage() API (which handles - // 0,0 range specially), we have to check the range from 0-1 instead. - // This still makes it possible to overflow the queue with WM_NULLs by - // interspersing the calles to WakeUpIdle() with windows creation but - // it should be rather hard to do it accidentally. - MSG msg; - if ( !::PeekMessage(&msg, hwndTop, 0, 1, PM_NOREMOVE) || - ::PeekMessage(&msg, hwndTop, 1, 1, PM_NOREMOVE) ) - { - // If this fails too, there is really not much we can do, but then - // neither do we need to, as it normally indicates that the window - // queue is full to the brim with the messages and so the main loop - // is running and doesn't need to be woken up. - // - // Notice that we especially should not try use wxLogLastError() - // here as this would lead to another call to wxWakeUpIdle() from - // inside wxLog and stack overflow due to the resulting recursion. - ::PostMessage(hwndTop, WM_NULL, 0, 0); - } + // We can't wake up the event loop if there is none and there is just + // no need to do anything in this case, any pending events will be + // handled when the event loop starts. + return; } -#if wxUSE_THREADS - else - wxWakeUpMainThread(); -#endif // wxUSE_THREADS + + evtLoop->WakeUp(); } // ---------------------------------------------------------------------------- diff --git a/src/msw/evtloop.cpp b/src/msw/evtloop.cpp index bdfab07471..47b7972bc3 100644 --- a/src/msw/evtloop.cpp +++ b/src/msw/evtloop.cpp @@ -248,11 +248,6 @@ void wxGUIEventLoop::OnNextIteration() #endif // wxUSE_THREADS } -void wxGUIEventLoop::WakeUp() -{ - ::PostMessage(NULL, WM_NULL, 0, 0); -} - // ---------------------------------------------------------------------------- // Yield to incoming messages diff --git a/src/msw/evtloopconsole.cpp b/src/msw/evtloopconsole.cpp index a746343609..c0ba2716fa 100644 --- a/src/msw/evtloopconsole.cpp +++ b/src/msw/evtloopconsole.cpp @@ -42,6 +42,17 @@ wxMSWEventLoopBase::wxMSWEventLoopBase() { m_shouldExit = false; m_exitcode = 0; + + // Create initially not signalled auto-reset event object. + m_heventWake = ::CreateEvent(NULL, FALSE, FALSE, NULL); + if ( !m_heventWake ) + wxLogLastError(wxS("CreateEvent(wake)")); +} + +wxMSWEventLoopBase::~wxMSWEventLoopBase() +{ + if ( m_heventWake && !::CloseHandle(m_heventWake) ) + wxLogLastError(wxS("CloseHandle(wake)")); } // ---------------------------------------------------------------------------- @@ -54,26 +65,36 @@ bool wxMSWEventLoopBase::Pending() const return ::PeekMessage(&msg, 0, 0, 0, PM_NOREMOVE) != 0; } +void wxMSWEventLoopBase::WakeUp() +{ + if ( !::SetEvent(m_heventWake) ) + wxLogLastError(wxS("SetEvent(wake)")); +} + +#if wxUSE_THREADS + +WXDWORD wxMSWEventLoopBase::MSWWaitForThread(WXHANDLE hThread) +{ + // The order is important here, the code using this function assumes that + // WAIT_OBJECT_0 indicates the thread termination and anything else -- the + // availability of an input event. So the thread handle must come first. + HANDLE handles[2] = { hThread, m_heventWake }; + return ::MsgWaitForMultipleObjects + ( + WXSIZEOF(handles), // number of objects to wait for + handles, // the objects + false, // wait for any objects, not all + INFINITE, // no timeout + QS_ALLINPUT | // return as soon as there are any events + QS_ALLPOSTMESSAGE + ); +} + +#endif // wxUSE_THREADS + bool wxMSWEventLoopBase::GetNextMessage(WXMSG* msg) { - const BOOL rc = ::GetMessage(msg, NULL, 0, 0); - - if ( rc == 0 ) - { - // got WM_QUIT - return false; - } - - if ( rc == -1 ) - { - // should never happen, but let's test for it nevertheless - wxLogLastError(wxT("GetMessage")); - - // still break from the loop - return false; - } - - return true; + return GetNextMessageTimeout(msg, INFINITE) == TRUE; } int wxMSWEventLoopBase::GetNextMessageTimeout(WXMSG *msg, unsigned long timeout) @@ -81,16 +102,14 @@ int wxMSWEventLoopBase::GetNextMessageTimeout(WXMSG *msg, unsigned long timeout) // MsgWaitForMultipleObjects() won't notice any input which was already // examined (e.g. using PeekMessage()) but not yet removed from the queue // so we need to remove any immediately messages manually - if ( !::PeekMessage(msg, 0, 0, 0, PM_REMOVE) ) + while ( !::PeekMessage(msg, 0, 0, 0, PM_REMOVE) ) { - // we use this function just in order to not block longer than the - // given timeout, so we don't pass any handles to it at all DWORD rc = ::MsgWaitForMultipleObjects ( - 0, NULL, + 1, &m_heventWake, FALSE, timeout, - QS_ALLINPUT + QS_ALLINPUT | QS_ALLPOSTMESSAGE ); switch ( rc ) @@ -104,13 +123,17 @@ int wxMSWEventLoopBase::GetNextMessageTimeout(WXMSG *msg, unsigned long timeout) return -1; case WAIT_OBJECT_0: - if ( !::PeekMessage(msg, 0, 0, 0, PM_REMOVE) ) - { - // somehow it may happen that MsgWaitForMultipleObjects() - // returns true but there are no messages -- just treat it - // the same as timeout then - return -1; - } + // We were woken up by a background thread, which means there + // is no actual input message available, but we should still + // return to the event loop, so pretend there was WM_NULL in + // the queue. + wxZeroMemory(*msg); + return TRUE; + + case WAIT_OBJECT_0 + 1: + // Some message is supposed to be available, but spurious + // wake ups are also possible, so just return to the loop: + // either we'll get the message or start waiting again. break; } } @@ -124,13 +147,6 @@ int wxMSWEventLoopBase::GetNextMessageTimeout(WXMSG *msg, unsigned long timeout) #if wxUSE_CONSOLE_EVENTLOOP -void wxConsoleEventLoop::WakeUp() -{ -#if wxUSE_THREADS - wxWakeUpMainThread(); -#endif -} - void wxConsoleEventLoop::ProcessMessage(WXMSG *msg) { ::DispatchMessage(msg); From 9b4759d7b6dfc1ea016db543405c09ae2f0d49db Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 17:33:09 +0100 Subject: [PATCH 125/916] Don't rely on getting WM_NULL messages in wxIdleWakeUpModule Since the switch to using an event object for idle handling wakeup, WM_NULLs are not being sent any longer, so wxIdleWakeUpModule didn't do anything, resulting in pending event dispatching being paused while our event loop was not running, as it happened, for example, while the window was resized. See #17579. --- include/wx/msw/app.h | 4 ++++ include/wx/msw/evtloopconsole.h | 4 ++++ src/msw/app.cpp | 10 ++++++++++ src/msw/evtloopconsole.cpp | 5 +++++ src/msw/window.cpp | 21 ++++++++------------- 5 files changed, 31 insertions(+), 13 deletions(-) diff --git a/include/wx/msw/app.h b/include/wx/msw/app.h index cbd4c09a46..6a8c8baf0d 100644 --- a/include/wx/msw/app.h +++ b/include/wx/msw/app.h @@ -103,6 +103,10 @@ public: // use it. static wxLayoutDirection MSWGetDefaultLayout(wxWindow* parent = NULL); + // Call ProcessPendingEvents() but only if we need to do it, i.e. there was + // a recent call to WakeUpIdle(). + void MSWProcessPendingEventsIfNeeded(); + protected: int m_printMode; // wxPRINT_WINDOWS, wxPRINT_POSTSCRIPT diff --git a/include/wx/msw/evtloopconsole.h b/include/wx/msw/evtloopconsole.h index 17df0a4e7a..87217bc64b 100644 --- a/include/wx/msw/evtloopconsole.h +++ b/include/wx/msw/evtloopconsole.h @@ -30,6 +30,10 @@ public: WXDWORD MSWWaitForThread(WXHANDLE hThread); #endif // wxUSE_THREADS + // Return true if wake up was requested and not handled yet, i.e. if + // m_heventWake is signaled. + bool MSWIsWakeUpRequested(); + protected: // get the next message from queue and return true or return false if we // got WM_QUIT or an error occurred diff --git a/src/msw/app.cpp b/src/msw/app.cpp index 866078a53a..2c3d14273b 100644 --- a/src/msw/app.cpp +++ b/src/msw/app.cpp @@ -790,6 +790,16 @@ void wxApp::WakeUpIdle() evtLoop->WakeUp(); } +void wxApp::MSWProcessPendingEventsIfNeeded() +{ + // The cast below is safe as wxEventLoop derives from wxMSWEventLoopBase in + // both console and GUI applications. + wxMSWEventLoopBase * const evtLoop + = static_cast(wxEventLoop::GetActive()); + if ( evtLoop && evtLoop->MSWIsWakeUpRequested() ) + ProcessPendingEvents(); +} + // ---------------------------------------------------------------------------- // other wxApp event handlers // ---------------------------------------------------------------------------- diff --git a/src/msw/evtloopconsole.cpp b/src/msw/evtloopconsole.cpp index c0ba2716fa..869ea888fd 100644 --- a/src/msw/evtloopconsole.cpp +++ b/src/msw/evtloopconsole.cpp @@ -71,6 +71,11 @@ void wxMSWEventLoopBase::WakeUp() wxLogLastError(wxS("SetEvent(wake)")); } +bool wxMSWEventLoopBase::MSWIsWakeUpRequested() +{ + return ::WaitForSingleObject(m_heventWake, 0) == WAIT_OBJECT_0; +} + #if wxUSE_THREADS WXDWORD wxMSWEventLoopBase::MSWWaitForThread(WXHANDLE hThread) diff --git a/src/msw/window.cpp b/src/msw/window.cpp index ea92c52ed0..41e84b5559 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -7511,10 +7511,9 @@ bool wxWindowMSW::HandleHotKey(WXWPARAM wParam, WXLPARAM lParam) #endif // wxUSE_HOTKEY // this class installs a message hook which really wakes up our idle processing -// each time a WM_NULL is received (wxWakeUpIdle does this), even if we're -// sitting inside a local modal loop (e.g. a menu is opened or scrollbar is -// being dragged or even inside ::MessageBox()) and so don't control message -// dispatching otherwise +// each time a message is handled, even if we're sitting inside a local modal +// loop (e.g. a menu is opened or scrollbar is being dragged or even inside +// ::MessageBox()) and so don't control message dispatching otherwise class wxIdleWakeUpModule : public wxModule { public: @@ -7545,15 +7544,11 @@ public: static LRESULT CALLBACK MsgHookProc(int nCode, WPARAM wParam, LPARAM lParam) { - MSG *msg = (MSG*)lParam; - - // only process the message if it is actually going to be removed from - // the message queue, this prevents that the same event from being - // processed multiple times if now someone just called PeekMessage() - if ( msg->message == WM_NULL && wParam == PM_REMOVE ) - { - wxTheApp->ProcessPendingEvents(); - } + // Don't process idle events unless the message is going to be really + // handled, i.e. removed from the queue, as it seems wrong to do it + // just because someone called PeekMessage(PM_NOREMOVE). + if ( wParam == PM_REMOVE ) + wxTheApp->MSWProcessPendingEventsIfNeeded(); return CallNextHookEx(ms_hMsgHookProc, nCode, wParam, lParam); } From d617834eb96b3c879d68f731c60231fdd49c2afe Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 17:39:40 +0100 Subject: [PATCH 126/916] Don't make wxEventLoop::WakeUpIdle() virtual It just forwards to (virtual) WakeUp() and there should be no need to ever override this method itself (nor even to keep it, except for backwards compatibility). No real changes. --- include/wx/evtloop.h | 5 +++-- src/common/evtloopcmn.cpp | 5 ----- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/include/wx/evtloop.h b/include/wx/evtloop.h index 00e6d097d5..bd50999509 100644 --- a/include/wx/evtloop.h +++ b/include/wx/evtloop.h @@ -128,8 +128,9 @@ public: // idle handling // ------------- - // make sure that idle events are sent again - virtual void WakeUpIdle(); + // make sure that idle events are sent again: this is just an obsolete + // synonym for WakeUp() + void WakeUpIdle() { WakeUp(); } // this virtual function is called when the application // becomes idle and by default it forwards to wxApp::ProcessIdle() and diff --git a/src/common/evtloopcmn.cpp b/src/common/evtloopcmn.cpp index e8123f3caa..572c29626a 100644 --- a/src/common/evtloopcmn.cpp +++ b/src/common/evtloopcmn.cpp @@ -88,11 +88,6 @@ void wxEventLoopBase::OnExit() wxTheApp->OnEventLoopExit(this); } -void wxEventLoopBase::WakeUpIdle() -{ - WakeUp(); -} - bool wxEventLoopBase::ProcessIdle() { return wxTheApp && wxTheApp->ProcessIdle(); From d1e57312c2be1637c8c52feff1b9f072d828ca48 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 17:41:16 +0100 Subject: [PATCH 127/916] Revert "Don't call wxWakeUpIdle() with a lock in wxProgressDialog" This reverts commit d26758044c55c0111ccd5e2c4d161f74c06d1771 which was a workaround for the problem of wxWakeUpIdle() dispatching events, as this is not the case any more after the latest changes. --- src/msw/progdlg.cpp | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/msw/progdlg.cpp b/src/msw/progdlg.cpp index 2f1131a5dc..46416402c5 100644 --- a/src/msw/progdlg.cpp +++ b/src/msw/progdlg.cpp @@ -1133,18 +1133,6 @@ wxProgressDialogTaskRunner::TaskDialogCallbackProc LONG_PTR dwRefData ) { - if ( uNotification == TDN_CREATED ) - { - // The main thread may be sitting in an event dispatching loop waiting - // for this dialog to be shown, so make sure it does wake up now that - // it is. Notice that we must do it from here and not from inside the - // block below in which sharedData is locked as otherwise we could - // deadlock if wxWakeUpIdle() dispatched some event which tried to call - // any of wxProgressDialog methods, which also lock this data, from the - // main thread. - wxWakeUpIdle(); - } - bool endDialog = false; // Block for shared data critical section. @@ -1160,6 +1148,10 @@ wxProgressDialogTaskRunner::TaskDialogCallbackProc // Store the HWND for the main thread use. sharedData->m_hwnd = hwnd; + // The main thread is sitting in an event dispatching loop waiting + // for this dialog to be shown, so make sure it does get an event. + wxWakeUpIdle(); + // Set the maximum value and disable Close button. ::SendMessage( hwnd, TDM_SET_PROGRESS_BAR_RANGE, From 564df77283e4f88f4e85c6592dcebd02b44285ac Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 22:26:07 +0100 Subject: [PATCH 128/916] Correct new wxStaticBox::Create() overload documentation Fix the method name and update its description to mention that it's also available in wxMSW. --- interface/wx/statbox.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/wx/statbox.h b/interface/wx/statbox.h index c0fcac378e..f9174261d7 100644 --- a/interface/wx/statbox.h +++ b/interface/wx/statbox.h @@ -146,13 +146,13 @@ public: See the constructor documentation for more details. - Currently this overload is only available in wxGTK, use + Currently this overload is only available in wxGTK and wxMSW, use @c wxHAS_WINDOW_LABEL_IN_STATIC_BOX to check whether it can be used at compile-time. @since 3.1.1 */ - wxStaticBox(wxWindow* parent, wxWindowID id, + bool Create(wxWindow* parent, wxWindowID id, wxWindow* label, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, From 2163b00b935a10804da08e8bd0f85d327f162343 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 22:44:44 +0100 Subject: [PATCH 129/916] Move wxHAS_NATIVE_ENABLED_MANAGEMENT definition to the source file There doesn't seem to be any need to have this symbol in the header, when it's only used in NotifyWindowOnEnableChange() in wincmn.cpp. No real changes. --- include/wx/window.h | 16 ---------------- src/common/wincmn.cpp | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/include/wx/window.h b/include/wx/window.h index 38d70ab7a8..8046223a4a 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -48,22 +48,6 @@ #define wxUSE_MENUS_NATIVE wxUSE_MENUS #endif // __WXUNIVERSAL__/!__WXUNIVERSAL__ - -// Define this macro if the corresponding operating system handles the state -// of children windows automatically when the parent is enabled/disabled. -// Otherwise wx itself must ensure that when the parent is disabled its -// children are disabled too, and their initial state is restored when the -// parent is enabled back. -#if defined(__WXMSW__) - // must do everything ourselves - #undef wxHAS_NATIVE_ENABLED_MANAGEMENT -#elif defined(__WXOSX__) - // must do everything ourselves - #undef wxHAS_NATIVE_ENABLED_MANAGEMENT -#else - #define wxHAS_NATIVE_ENABLED_MANAGEMENT -#endif - // ---------------------------------------------------------------------------- // forward declarations // ---------------------------------------------------------------------------- diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index f07acd465d..d398f1f7b0 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -1166,6 +1166,21 @@ bool wxWindowBase::IsEnabled() const return IsThisEnabled() && (IsTopLevel() || !GetParent() || GetParent()->IsEnabled()); } +// Define this macro if the corresponding operating system handles the state +// of children windows automatically when the parent is enabled/disabled. +// Otherwise wx itself must ensure that when the parent is disabled its +// children are disabled too, and their initial state is restored when the +// parent is enabled back. +#if defined(__WXMSW__) + // must do everything ourselves + #undef wxHAS_NATIVE_ENABLED_MANAGEMENT +#elif defined(__WXOSX__) + // must do everything ourselves + #undef wxHAS_NATIVE_ENABLED_MANAGEMENT +#else + #define wxHAS_NATIVE_ENABLED_MANAGEMENT +#endif + void wxWindowBase::NotifyWindowOnEnableChange(bool enabled) { // Under some platforms there is no need to update the window state From 967b4cdc1f848576be3b83fb07d59c9b670c3994 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 22:45:39 +0100 Subject: [PATCH 130/916] Always call DoEnable() from NotifyWindowOnEnableChange() Simplify the code by replacing 2 conditionally-compiled DoEnable() calls with a single unconditional one. This doesn't change the behaviour of Enable(), as it always called DoEnable() on the window itself and only did it for its children when wxHAS_NATIVE_ENABLED_MANAGEMENT was not defined before and continues to do the same thing now, but it should fix a small bug in Reparent() as it didn't update the actual status of the window if it changed as the result of reparenting before, even though it was supposed to. --- src/common/wincmn.cpp | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index d398f1f7b0..3daae78c26 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -1183,13 +1183,9 @@ bool wxWindowBase::IsEnabled() const void wxWindowBase::NotifyWindowOnEnableChange(bool enabled) { - // Under some platforms there is no need to update the window state - // explicitly, it will become disabled when its parent is. On other ones we - // do need to disable all windows recursively though. -#ifndef wxHAS_NATIVE_ENABLED_MANAGEMENT DoEnable(enabled); -#endif // !defined(wxHAS_NATIVE_ENABLED_MANAGEMENT) +#ifndef wxHAS_NATIVE_ENABLED_MANAGEMENT // Disabling a top level window is typically done when showing a modal // dialog and we don't need to disable its children in this case, they will // be logically disabled anyhow (i.e. their IsEnabled() will return false) @@ -1205,7 +1201,6 @@ void wxWindowBase::NotifyWindowOnEnableChange(bool enabled) // they would still show as enabled even though they wouldn't actually // accept any input (at least under MSW where children don't accept input // if any of the windows in their parent chain is enabled). -#ifndef wxHAS_NATIVE_ENABLED_MANAGEMENT for ( wxWindowList::compatibility_iterator node = GetChildren().GetFirst(); node; node = node->GetNext() ) @@ -1224,12 +1219,6 @@ bool wxWindowBase::Enable(bool enable) m_isEnabled = enable; - // If we call DoEnable() from NotifyWindowOnEnableChange(), we don't need - // to do it from here. -#ifdef wxHAS_NATIVE_ENABLED_MANAGEMENT - DoEnable(enable); -#endif // !defined(wxHAS_NATIVE_ENABLED_MANAGEMENT) - NotifyWindowOnEnableChange(enable); return true; From 3c29b3d0ce20df8246a32e8eaa3ed612c4fd720e Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 22:50:26 +0100 Subject: [PATCH 131/916] Don't disable wxStaticBox children at wx level when disabling it Calling Enable() on all children from wxStaticBox::Enable() was wrong, the actual status of the child, returned by wxWindow::IsThisEnabled(), is not supposed to change just because its parent was disabled. Call NotifyWindowOnEnableChange() to avoid this, while still disabling the children visually. --- include/wx/window.h | 10 +++++----- src/common/statboxcmn.cpp | 6 +++++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/include/wx/window.h b/include/wx/window.h index 8046223a4a..b8d9e8d1a3 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -1580,6 +1580,11 @@ public: return false; } + // Recursively call our own and our children DoEnable() when the + // enabled/disabled status changed because a parent window had been + // enabled/disabled. This is only used by the library implementation. + void NotifyWindowOnEnableChange(bool enabled); + protected: // helper for the derived class Create() methods: the first overload, with @@ -1891,11 +1896,6 @@ protected: static void NotifyCaptureLost(); private: - // recursively call our own and our children DoEnable() when the - // enabled/disabled status changed because a parent window had been - // enabled/disabled - void NotifyWindowOnEnableChange(bool enabled); - #if wxUSE_MENUS // temporary event handlers used by GetPopupMenuSelectionFromUser() void InternalOnPopupMenu(wxCommandEvent& event); diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 0e77dfe74f..8620d4efd0 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -105,11 +105,15 @@ bool wxStaticBoxBase::Enable(bool enable) ++i ) { if ( *i != m_labelWin ) - (*i)->Enable(enable); + (*i)->NotifyWindowOnEnableChange(enable); } m_isEnabled = enable; + // Notice that we don't call DoEnable() on the box itself: under MSW it + // doesn't actually change anything and under GTK this would disable + // the label window. + return true; } #endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX From 88c6ce344e9b4adaef2ab7ec163ecfc051865dcf Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 23:23:54 +0100 Subject: [PATCH 132/916] Fix bug with not re-enabling wxStaticBox with label sometimes In some specific scenario, described in the newly added comment in wxStaticBoxBase::Enable(), the box and its label could remain disabled after its parent was disabled and re-enabled. Fix this by continuing to use the derived class version for disabling the box children, but not when enabling them, as the base class version already does the right thing in this case. --- src/common/statboxcmn.cpp | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 8620d4efd0..50f8a932e6 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -94,7 +94,26 @@ bool wxStaticBoxBase::Enable(bool enable) // in this case and only disable its children, but still pretend that the // box is disabled by updating its m_isEnabled, as it would be surprising // if IsEnabled() didn't return false after disabling the box, for example. - if ( m_labelWin ) + // + // Finally note that this really needs to be done only when disabling the + // box and not when re-enabling it, at least for the platforms without + // native enabled state management (e.g. wxMSW) because otherwise we could + // have a bug in the following scenario: + // + // 0. The box is initially enabled + // 1. Its parent gets disabled, calling DoEnable(false) on the box and all + // its children from its NotifyWindowOnEnableChange() (including the + // label). + // 2. The box is itself disabled (for whatever app logic reason). + // 3. The parent gets enabled but this time doesn't do anything with the + // box, because it should continue being disabled. + // 4. The box is re-enabled -- but remains actually disabled as + // DoEnable(true) was never called on it (nor on the label). + // + // To avoid this possibility, we always call the base class version, which + // does call DoEnable(true) on the box itself and all its children, + // including the label, when re-enabling it. + if ( m_labelWin && !enable ) { if ( enable == IsThisEnabled() ) return false; @@ -110,10 +129,6 @@ bool wxStaticBoxBase::Enable(bool enable) m_isEnabled = enable; - // Notice that we don't call DoEnable() on the box itself: under MSW it - // doesn't actually change anything and under GTK this would disable - // the label window. - return true; } #endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX From a5ae0685a05db49d34d11b6abc26e67c794b49b8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 12 Jan 2018 02:38:00 +0100 Subject: [PATCH 133/916] Fix wxFSVolume compilation with Cygwin in 64 bits Use __LONG32, which is always 32 bits when using Cygwin, unlike long, which is 64 bits there in 64 bit builds, and so can't be used as an argument to InterlockedExchange(). Closes #16746. --- src/msw/volume.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/msw/volume.cpp b/src/msw/volume.cpp index a2932bf3d4..32e62b4980 100644 --- a/src/msw/volume.cpp +++ b/src/msw/volume.cpp @@ -68,7 +68,18 @@ static WNetCloseEnumPtr s_pWNetCloseEnum; //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Globals/Statics //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -static long s_cancelSearch = FALSE; + +#if defined(__CYGWIN__) && defined(__LP64__) + // We can't use long in 64 bit Cygwin build because Cygwin uses LP64 model + // (unlike all the other MSW compilers) and long is 64 bits, while + // InterlockedExchange(), with which this variable is used, requires a 32 + // bit-sized value, so use Cygwin-specific type with the right size. + typedef __LONG32 wxInterlockedArg_t; +#else + typedef long wxInterlockedArg_t; +#endif + +static wxInterlockedArg_t s_cancelSearch = FALSE; struct FileInfo { From 1261139bcbbcfd9048682cc3116e529582d1f72c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 12 Jan 2018 17:13:35 +0100 Subject: [PATCH 134/916] Fix wxSocket code compilation with Cygwin in 64 bits Use __ms_u_long instead of just u_long with Cygwin to avoid mismatch between (64 bit) Cygwin long and (still 32 bit, even in 64 bit build) Windows API long. --- include/wx/msw/private/sockmsw.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/include/wx/msw/private/sockmsw.h b/include/wx/msw/private/sockmsw.h index bbcad77bca..91dbbede2a 100644 --- a/include/wx/msw/private/sockmsw.h +++ b/include/wx/msw/private/sockmsw.h @@ -23,6 +23,15 @@ #if defined(__CYGWIN__) #include + #ifdef __LP64__ + // We can't use long in this case because it is 64 bits with Cygwin, so + // use their special type used for working around this instead. + #define wxIoctlSocketArg_t __ms_u_long + #endif +#endif + +#ifndef wxIoctlSocketArg_t + #define wxIoctlSocketArg_t u_long #endif // ---------------------------------------------------------------------------- @@ -61,7 +70,7 @@ private: // just useless) as they would be dispatched by the main thread // while this blocking socket can be used from a worker one, so it // would result in data races and other unpleasantness. - unsigned long trueArg = 1; + wxIoctlSocketArg_t trueArg = 1; ioctlsocket(m_fd, FIONBIO, &trueArg); } else From ebb06fbeafa0d50581823e3a372a1232b0bc736d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 13:43:28 +0100 Subject: [PATCH 135/916] Use wxTimeVal_t instead of timeval to fix 64 bit Cygwin problems Due to the same problem with sizeof(long) mismatch as in the previous commit, we can't use struct timeval, with its long fields, in 64 bit Cygwin builds, and need to use __ms_timeval instead. Add wxTimeVal_t type to hide this difference and update all code compiled under MSW (there is no need to uglify Unix-only code using timeval, as in wxSelectDispatcher, for example) to use it instead of timeval. --- include/wx/private/socket.h | 13 +++++++++++-- src/common/socket.cpp | 8 ++++---- src/msw/sockmsw.cpp | 2 +- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/include/wx/private/socket.h b/include/wx/private/socket.h index 906c20c659..56a3cef528 100644 --- a/include/wx/private/socket.h +++ b/include/wx/private/socket.h @@ -62,6 +62,15 @@ #include // for timeval #endif +// 64 bit Cygwin can't use the standard struct timeval because it has long +// fields, which are supposed to be 32 bits in Win64 API, but long is 64 bits +// in 64 bit Cygwin, so we need to use its special __ms_timeval instead. +#if defined(__CYGWIN__) && defined(__LP64__) + typedef __ms_timeval wxTimeVal_t; +#else + typedef timeval wxTimeVal_t; +#endif + // these definitions are for MSW when we don't use configure, otherwise these // symbols are defined by configure #ifndef WX_SOCKLEN_T @@ -254,7 +263,7 @@ public: // flags defines what kind of conditions we're interested in, the return // value is composed of a (possibly empty) subset of the bits set in flags wxSocketEventFlags Select(wxSocketEventFlags flags, - const timeval *timeout = NULL); + wxTimeVal_t *timeout = NULL); // convenient wrapper calling Select() with our default timeout wxSocketEventFlags SelectWithTimeout(wxSocketEventFlags flags) @@ -299,7 +308,7 @@ public: bool m_broadcast; bool m_dobind; - struct timeval m_timeout; + wxTimeVal_t m_timeout; protected: wxSocketImpl(wxSocketBase& wxsocket); diff --git a/src/common/socket.cpp b/src/common/socket.cpp index 5fb8c291ae..207b3c9751 100644 --- a/src/common/socket.cpp +++ b/src/common/socket.cpp @@ -135,7 +135,7 @@ wxIMPLEMENT_DYNAMIC_CLASS(wxSocketEvent, wxEvent); namespace { -void SetTimeValFromMS(timeval& tv, unsigned long ms) +void SetTimeValFromMS(wxTimeVal_t& tv, unsigned long ms) { tv.tv_sec = (ms / 1000); tv.tv_usec = (ms % 1000) * 1000; @@ -1304,12 +1304,12 @@ wxSocketBase& wxSocketBase::Discard() and it will return a mask indicating which operations can be performed. */ wxSocketEventFlags wxSocketImpl::Select(wxSocketEventFlags flags, - const timeval *timeout) + wxTimeVal_t *timeout) { if ( m_fd == INVALID_SOCKET ) return (wxSOCKET_LOST_FLAG & flags); - struct timeval tv; + wxTimeVal_t tv; if ( timeout ) tv = *timeout; else @@ -1502,7 +1502,7 @@ wxSocketBase::DoWait(long timeout, wxSocketEventFlags flags) else // no event loop or waiting in another thread { // as explained below, we should always check for wxSOCKET_LOST_FLAG - timeval tv; + wxTimeVal_t tv; SetTimeValFromMS(tv, timeLeft); events = m_impl->Select(flags | wxSOCKET_LOST_FLAG, &tv); } diff --git a/src/msw/sockmsw.cpp b/src/msw/sockmsw.cpp index 791f18a49b..2a66c8eda4 100644 --- a/src/msw/sockmsw.cpp +++ b/src/msw/sockmsw.cpp @@ -217,7 +217,7 @@ LRESULT CALLBACK wxSocket_Internal_WinProc(HWND hWnd, // only then). Ignore such dummy notifications. { fd_set fds; - timeval tv = { 0, 0 }; + wxTimeVal_t tv = { 0, 0 }; wxFD_ZERO(&fds); wxFD_SET(socket->m_fd, &fds); From d55d5b1dd76c5d787f6a382cdc2a068afbca11b7 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 14:26:00 +0100 Subject: [PATCH 136/916] Use LONG for OLE IAccessible methods parameters This is another fix for 64 bit Cygwin build: LONG is defined as a 32 bit type in it, but not long, which is 64 bits, so use the former instead of the latter. --- src/msw/ole/access.cpp | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/src/msw/ole/access.cpp b/src/msw/ole/access.cpp index 6dd3a7baa5..6620f74e6e 100644 --- a/src/msw/ole/access.cpp +++ b/src/msw/ole/access.cpp @@ -47,7 +47,7 @@ int wxConvertToWindowsRole(wxAccRole wxrole); // Convert to Windows state -long wxConvertToWindowsState(long wxstate); +LONG wxConvertToWindowsState(long wxstate); // Convert to Windows selection flag int wxConvertToWindowsSelFlag(wxAccSelectionFlags sel); @@ -191,17 +191,17 @@ public: // Retrieves the child element or child object at a given point on the screen. // All visual objects support this method; sound objects do not support it. - STDMETHODIMP accHitTest(long xLeft, long yLeft, VARIANT* pVarID); + STDMETHODIMP accHitTest(LONG xLeft, LONG yLeft, VARIANT* pVarID); // Retrieves the specified object's current screen location. All visual objects must // support this method; sound objects do not support it. - STDMETHODIMP accLocation ( long* pxLeft, long* pyTop, long* pcxWidth, long* pcyHeight, VARIANT varID); + STDMETHODIMP accLocation ( LONG* pxLeft, LONG* pyTop, LONG* pcxWidth, LONG* pcyHeight, VARIANT varID); // Traverses to another user interface element within a container and retrieves the object. // All visual objects must support this method. - STDMETHODIMP accNavigate ( long navDir, VARIANT varStart, VARIANT* pVarEnd); + STDMETHODIMP accNavigate ( LONG navDir, VARIANT varStart, VARIANT* pVarEnd); // Retrieves the address of an IDispatch interface for the specified child. // All objects must support this property. @@ -211,7 +211,7 @@ public: // Retrieves the number of children that belong to this object. // All objects must support this property. - STDMETHODIMP get_accChildCount ( long* pCountChildren); + STDMETHODIMP get_accChildCount ( LONG* pCountChildren); // Retrieves the IDispatch interface of the object's parent. // All objects support this property. @@ -244,7 +244,7 @@ public: // object and the identifier of the appropriate topic within that file. // Not all objects support this property. - STDMETHODIMP get_accHelpTopic ( BSTR* pszHelpFile, VARIANT varChild, long* pidTopic); + STDMETHODIMP get_accHelpTopic ( BSTR* pszHelpFile, VARIANT varChild, LONG* pidTopic); // Retrieves the specified object's shortcut key or access key, also known as // the mnemonic. All objects that have a shortcut key or access key support @@ -278,7 +278,7 @@ public: // specified object. All objects that select or receive the // keyboard focus must support this method. - STDMETHODIMP accSelect ( long flagsSelect, VARIANT varID ); + STDMETHODIMP accSelect ( LONG flagsSelect, VARIANT varID ); // Retrieves the object that has the keyboard focus. All objects // that receive the keyboard focus must support this property. @@ -368,7 +368,7 @@ void wxIAccessible::Quiesce() // Retrieves the child element or child object at a given point on the screen. // All visual objects support this method; sound objects do not support it. -STDMETHODIMP wxIAccessible::accHitTest(long xLeft, long yLeft, VARIANT* pVarID) +STDMETHODIMP wxIAccessible::accHitTest(LONG xLeft, LONG yLeft, VARIANT* pVarID) { wxLogTrace(wxT("access"), wxT("accHitTest")); wxASSERT( ( m_pAccessible != NULL ) || ( m_bQuiescing == true ) ); @@ -441,7 +441,7 @@ STDMETHODIMP wxIAccessible::accHitTest(long xLeft, long yLeft, VARIANT* pVarID) // Retrieves the specified object's current screen location. All visual objects must // support this method; sound objects do not support it. -STDMETHODIMP wxIAccessible::accLocation ( long* pxLeft, long* pyTop, long* pcxWidth, long* pcyHeight, VARIANT varID) +STDMETHODIMP wxIAccessible::accLocation ( LONG* pxLeft, LONG* pyTop, LONG* pcxWidth, LONG* pcyHeight, VARIANT varID) { wxLogTrace(wxT("access"), wxT("accLocation")); wxASSERT( ( m_pAccessible != NULL ) || ( m_bQuiescing == true ) ); @@ -492,7 +492,7 @@ STDMETHODIMP wxIAccessible::accLocation ( long* pxLeft, long* pyTop, long* pcxWi // Traverses to another user interface element within a container and retrieves the object. // All visual objects must support this method. -STDMETHODIMP wxIAccessible::accNavigate ( long navDir, VARIANT varStart, VARIANT* pVarEnd) +STDMETHODIMP wxIAccessible::accNavigate ( LONG navDir, VARIANT varStart, VARIANT* pVarEnd) { wxASSERT( ( m_pAccessible != NULL ) || ( m_bQuiescing == true ) ); if (!m_pAccessible) @@ -727,7 +727,7 @@ STDMETHODIMP wxIAccessible::get_accChild ( VARIANT varChildID, IDispatch** ppDis // Retrieves the number of children that belong to this object. // All objects must support this property. -STDMETHODIMP wxIAccessible::get_accChildCount ( long* pCountChildren) +STDMETHODIMP wxIAccessible::get_accChildCount ( LONG* pCountChildren) { wxLogTrace(wxT("access"), wxT("get_accChildCount")); wxASSERT( ( m_pAccessible != NULL ) || ( m_bQuiescing == true ) ); @@ -757,7 +757,7 @@ STDMETHODIMP wxIAccessible::get_accChildCount ( long* pCountChildren) } else { - * pCountChildren = (long) childCount; + * pCountChildren = (LONG) childCount; return S_OK; } @@ -1071,7 +1071,7 @@ STDMETHODIMP wxIAccessible::get_accHelp ( VARIANT varID, BSTR* pszHelp) // NOTE: not supported by wxWidgets at this time. Use // GetHelpText instead. -STDMETHODIMP wxIAccessible::get_accHelpTopic ( BSTR* pszHelpFile, VARIANT varChild, long* pidTopic) +STDMETHODIMP wxIAccessible::get_accHelpTopic ( BSTR* pszHelpFile, VARIANT varChild, LONG* pidTopic) { wxLogTrace(wxT("access"), wxT("get_accHelpTopic")); wxASSERT( ( m_pAccessible != NULL ) || ( m_bQuiescing == true ) ); @@ -1346,7 +1346,7 @@ STDMETHODIMP wxIAccessible::get_accState ( VARIANT varID, VARIANT* pVarState) } else { - long state = wxConvertToWindowsState(wxstate); + LONG state = wxConvertToWindowsState(wxstate); pVarState->lVal = state; pVarState->vt = VT_I4; return S_OK; @@ -1422,7 +1422,7 @@ STDMETHODIMP wxIAccessible::get_accValue ( VARIANT varID, BSTR* pszValue) // specified object. All objects that select or receive the // keyboard focus must support this method. -STDMETHODIMP wxIAccessible::accSelect ( long flagsSelect, VARIANT varID ) +STDMETHODIMP wxIAccessible::accSelect ( LONG flagsSelect, VARIANT varID ) { wxLogTrace(wxT("access"), wxT("get_accSelect")); wxASSERT( ( m_pAccessible != NULL ) || ( m_bQuiescing == true ) ); @@ -1693,13 +1693,13 @@ IAccessible* wxIAccessible::GetChildStdAccessible(int id) #if 0 { // Loop until we find the right id - long nChildren = 0; + LONG nChildren = 0; this->get_accChildCount(& nChildren); int i; for (i = 0; i < nChildren; i++) { - long obtained = 0; + LONG obtained = 0; VARIANT var; VariantInit(& var); var.vt = VT_I4; @@ -1983,9 +1983,9 @@ int wxConvertToWindowsRole(wxAccRole wxrole) } // Convert to Windows state -long wxConvertToWindowsState(long wxstate) +LONG wxConvertToWindowsState(long wxstate) { - long state = 0; + LONG state = 0; if (wxstate & wxACC_STATE_SYSTEM_ALERT_HIGH) state |= STATE_SYSTEM_ALERT_HIGH; From 277937b0c42955707d0136187d357ea3a985ff19 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 15:56:46 +0100 Subject: [PATCH 137/916] Always use stderr for wxMessageOutputBest in the tests Avoid showing message boxes even if we don't have the associated console as this prevents the test from completing on its own if an unknown exception happens. --- tests/test.cpp | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/tests/test.cpp b/tests/test.cpp index e8628ac591..09ab1e8f4b 100644 --- a/tests/test.cpp +++ b/tests/test.cpp @@ -46,6 +46,7 @@ std::string wxTheCurrentTestClass, wxTheCurrentTestMethod; #include "wx/wx.h" #endif +#include "wx/apptrait.h" #include "wx/cmdline.h" #include #include @@ -171,8 +172,10 @@ CATCH_TRANSLATE_EXCEPTION(TestAssertFailure& e) #if wxUSE_GUI typedef wxApp TestAppBase; + typedef wxGUIAppTraits TestAppTraitsBase; #else typedef wxAppConsole TestAppBase; + typedef wxConsoleAppTraits TestAppTraitsBase; #endif // The application class @@ -186,6 +189,36 @@ public: virtual bool OnInit(); virtual int OnExit(); +#ifdef __WIN32__ + virtual wxAppTraits *CreateTraits() + { + // Define a new class just to customize CanUseStderr() behaviour. + class TestAppTraits : public TestAppTraitsBase + { + public: + // We want to always use stderr, tests are also run unattended and + // in this case we really don't want to show any message boxes, as + // wxMessageOutputBest, used e.g. from the default implementation + // of wxApp::OnUnhandledException(), would do by default. + virtual bool CanUseStderr() { return true; } + + // Overriding CanUseStderr() is not enough, we also need to + // override this one to avoid returning false from it. + virtual bool WriteToStderr(const wxString& text) + { + wxFputs(text, stderr); + fflush(stderr); + + // Intentionally ignore any errors, we really don't want to + // show any message boxes in any case. + return true; + } + }; + + return new TestAppTraits; + } +#endif // __WIN32__ + // used by events propagation test virtual int FilterEvent(wxEvent& event); virtual bool ProcessEvent(wxEvent& event); From 9df5541c537778289028aaa8b006939eaeec2ed4 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 13 Jan 2018 18:08:07 +0100 Subject: [PATCH 138/916] Don't show dialogs from OnExceptionInMainLoop() in the tests Similarly to the previous commit, ensure that the tests can run unattended under MSW even if an unhandled exception is thrown during their execution. --- tests/test.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/test.cpp b/tests/test.cpp index 09ab1e8f4b..7dbb44fb53 100644 --- a/tests/test.cpp +++ b/tests/test.cpp @@ -219,6 +219,16 @@ public: } #endif // __WIN32__ + // Also override this method to avoid showing any dialogs from here -- and + // show some details about the exception along the way. + virtual bool OnExceptionInMainLoop() + { + wxFprintf(stderr, "Unhandled exception in the main loop: %s\n", + Catch::translateActiveException()); + + throw; + } + // used by events propagation test virtual int FilterEvent(wxEvent& event); virtual bool ProcessEvent(wxEvent& event); From f6dddd92282c9db684c0cf75fd0714624ec73f4e Mon Sep 17 00:00:00 2001 From: Martin Koegler Date: Sat, 30 Dec 2017 09:51:25 +0000 Subject: [PATCH 139/916] Use unordered_xxx classes detected by configure When using configure, use the same family of hash sets/maps when building wxWidgets and the applications using it as doing otherwise results in ABI incompatibility. --- include/wx/defs.h | 65 ++++++++++++++++++++++++++--------------------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/include/wx/defs.h b/include/wx/defs.h index 2c5cdeeeb6..5531948cef 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -378,40 +378,47 @@ typedef short int WXTYPE; #endif /* - Check for C++11 compilers, it is important to do it before the - __has_include() checks because at least g++ 4.9.2+ __has_include() returns - true for C++11 headers which can't be compiled in non-C++11 mode. - */ -#if __cplusplus >= 201103L || wxCHECK_VISUALC_VERSION(10) - #ifndef HAVE_TYPE_TRAITS - #define HAVE_TYPE_TRAITS - #endif - #ifndef HAVE_STD_UNORDERED_MAP - #define HAVE_STD_UNORDERED_MAP - #endif - #ifndef HAVE_STD_UNORDERED_SET - #define HAVE_STD_UNORDERED_SET - #endif -#elif defined(__has_include) + If using configure, stick to the options detected by it even if different + compiler options could result in detecting something different here, as it + would cause ABI issues otherwise (see #18034). +*/ +#ifndef __WX_SETUP_H__ /* - We're in non-C++11 mode here, so only test for pre-C++11 headers. As - mentioned above, using __has_include() to test for C++11 would wrongly - detect them even though they can't be used in this case, don't do it. + Check for C++11 compilers, it is important to do it before the + __has_include() checks because at least g++ 4.9.2+ __has_include() returns + true for C++11 headers which can't be compiled in non-C++11 mode. */ - #if !defined(HAVE_TR1_TYPE_TRAITS) && __has_include() - #define HAVE_TR1_TYPE_TRAITS - #endif + #if __cplusplus >= 201103L || wxCHECK_VISUALC_VERSION(10) + #ifndef HAVE_TYPE_TRAITS + #define HAVE_TYPE_TRAITS + #endif + #ifndef HAVE_STD_UNORDERED_MAP + #define HAVE_STD_UNORDERED_MAP + #endif + #ifndef HAVE_STD_UNORDERED_SET + #define HAVE_STD_UNORDERED_SET + #endif + #elif defined(__has_include) + /* + We're in non-C++11 mode here, so only test for pre-C++11 headers. As + mentioned above, using __has_include() to test for C++11 would wrongly + detect them even though they can't be used in this case, don't do it. + */ + #if !defined(HAVE_TR1_TYPE_TRAITS) && __has_include() + #define HAVE_TR1_TYPE_TRAITS + #endif - #if !defined(HAVE_TR1_UNORDERED_MAP) && __has_include() - #define HAVE_TR1_UNORDERED_MAP - #endif + #if !defined(HAVE_TR1_UNORDERED_MAP) && __has_include() + #define HAVE_TR1_UNORDERED_MAP + #endif - #if !defined(HAVE_TR1_UNORDERED_SET) && __has_include() - #define HAVE_TR1_UNORDERED_SET - #endif -#endif /* defined(__has_include) */ + #if !defined(HAVE_TR1_UNORDERED_SET) && __has_include() + #define HAVE_TR1_UNORDERED_SET + #endif + #endif /* defined(__has_include) */ -#endif /* __cplusplus */ + #endif /* __cplusplus */ +#endif /* __WX_SETUP_H__ */ /* provide replacement for C99 va_copy() if the compiler doesn't have it */ From 00b3b323de0843d83b7a87c8fe7c7375488438e2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Dec 2017 22:45:24 +0100 Subject: [PATCH 140/916] Define std-related symbols in configure when using C++11 too Even though we don't need to perform the checks for the availability of or headers when using C++11 because we can safely assume they're indeed available, we still need to define the corresponding symbols, as if the checks were performed, so that the code inside and outside the library could test them in any case, whether we're using C++11 or not. --- configure | 14 +++++++++++++- configure.in | 13 +++++++++++-- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/configure b/configure index 4b10f91843..552ae5d62e 100755 --- a/configure +++ b/configure @@ -19111,8 +19111,20 @@ if test "x$COMPAQCXX" = "xyes"; then CXXFLAGS="-w0 -msg_disable basclsnondto,unrimpret,intconlosbit" fi -if test "$HAVE_CXX11" != "1" ; then +if test "$HAVE_CXX11" = "1" ; then +$as_echo "#define HAVE_STD_WSTRING 1" >>confdefs.h + +$as_echo "#define HAVE_STD_STRING_COMPARE 1" >>confdefs.h + +$as_echo "#define HAVE_STD_UNORDERED_MAP 1" >>confdefs.h + +$as_echo "#define HAVE_STD_UNORDERED_SET 1" >>confdefs.h + +$as_echo "#define HAVE_TYPE_TRAITS 1" >>confdefs.h + + +else ac_ext=cpp diff --git a/configure.in b/configure.in index 7b20dff46f..6da04e5510 100644 --- a/configure.in +++ b/configure.in @@ -1818,8 +1818,17 @@ if test "x$COMPAQCXX" = "xyes"; then fi dnl The checks below are for ancient compilers and are unnecessary when using -dnl C++11. -if test "$HAVE_CXX11" != "1" ; then +dnl C++11, but we still need to define the symbols that would have been defined +dnl by them if we did run them. +if test "$HAVE_CXX11" = "1" ; then + +AC_DEFINE(HAVE_STD_WSTRING) +AC_DEFINE(HAVE_STD_STRING_COMPARE) +AC_DEFINE(HAVE_STD_UNORDERED_MAP) +AC_DEFINE(HAVE_STD_UNORDERED_SET) +AC_DEFINE(HAVE_TYPE_TRAITS) + +else dnl Not using C++11, so we do need to run the checks. dnl check for iostream (as opposed to iostream.h) standard header WX_CPP_NEW_HEADERS(, AC_DEFINE(wxUSE_IOSTREAMH)) From 27c399adbe5dba23d6851ed5e54a7803a8d45d23 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 14 Jan 2018 18:27:10 +0100 Subject: [PATCH 141/916] Remove wxALWAYS_SHOW_SB-related code from wxScrolled There is no need to handle this style specially here, it's supposed to be handled at wxWindow level and is, indeed, at least in all the major ports. So revert 2119b213e378d69b8d13f4c8f6012b3aa381efe9 (see #13616) and the workaround for it applied later for macOS (see #14856). And this also removes the need for handling wx[HV]SCROLL in wxScrolled (see #17846). Closes #14856, #17846. --- include/wx/scrolwin.h | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/include/wx/scrolwin.h b/include/wx/scrolwin.h index e904ed3922..029b0cb4b9 100644 --- a/include/wx/scrolwin.h +++ b/include/wx/scrolwin.h @@ -415,17 +415,7 @@ public: if ( !(style & (wxHSCROLL | wxVSCROLL)) ) style |= wxHSCROLL | wxVSCROLL; -#ifdef __WXOSX__ - bool retval = T::Create(parent, winid, pos, size, style, name); - if ( retval && (style & wxALWAYS_SHOW_SB) ) - ShowScrollbars(wxSHOW_SB_ALWAYS, wxSHOW_SB_ALWAYS); - return retval; -#else - if ( style & wxALWAYS_SHOW_SB ) - ShowScrollbars(wxSHOW_SB_ALWAYS, wxSHOW_SB_ALWAYS); - return T::Create(parent, winid, pos, size, style, name); -#endif } #ifdef __WXMSW__ From 673ea072843a00b001a67944ced04ff9a7a2da54 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 14 Jan 2018 18:31:29 +0100 Subject: [PATCH 142/916] Document that window must be created in ShowScrollbars() Calling it before creating the window actually works under MSW, but not under the other platforms. --- interface/wx/scrolwin.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/interface/wx/scrolwin.h b/interface/wx/scrolwin.h index e1ecdc44a4..7b44ae250c 100644 --- a/interface/wx/scrolwin.h +++ b/interface/wx/scrolwin.h @@ -332,6 +332,8 @@ public: - wxSHOW_SB_DEFAULT: To restore the default behaviour described above. + Note that the window must be created before calling this method. + @param horz The desired visibility for the horizontal scrollbar. @param vert From 5920c7edb15844a11748eccbe886cb66381fb995 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 14 Jan 2018 18:34:51 +0100 Subject: [PATCH 143/916] Mention wxMessageQueue<> in the thread overview This class should be used in almost all programs using detached threads. --- docs/doxygen/overviews/thread.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/doxygen/overviews/thread.h b/docs/doxygen/overviews/thread.h index bfa01c31d4..fcbb8895dc 100644 --- a/docs/doxygen/overviews/thread.h +++ b/docs/doxygen/overviews/thread.h @@ -72,6 +72,10 @@ from wxThread and wxEvtHandler to send messages to it: in fact, this does not work at all. You're instead encouraged to use wxThreadHelper as it greatly simplifies the communication and the sharing of resources. +For communication between the main thread and worker threads, you can use +wxMessageQueue<> class that allows to send any kind of custom messages. It is +often convenient to have a special message asking the thread to terminate. + You should also look at the wxThread docs for important notes about secondary threads and their deletion. From 3380a2438d724f6525e0bb947e780735bf8824af Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 2 Dec 2017 22:33:53 +0100 Subject: [PATCH 144/916] Fix scale factor confusion in wxMac wxBitmap implementation Merge ctors from (width, height) and (width, height, scale) into a single one because the former really should be just a special case of the latter for scale == 1 but, surprisingly and confusingly it wasn't, because the latter also multiplied the size by scale, meaning that width and height parameters had different meanings. This resulted in at least 3 bugs when using scale factors different from 1: first, copying bitmaps wasn't done correctly because as wxBitmapRefData copy ctor incorrectly scaled its size by scale again. And second, creating bitmap from wxImage whose size wasn't divisible by scale not just didn't work correctly but crashed when accessing memory outside of the image because (unnecessarily) dividing and multiplying the image size by scale wasn't idempotent. Finally, even for the images of even size (assuming scale factor of 2), bitmaps created from them used incorrect width and height, corresponding to the half of the image dimensions, instead of the same ones, as they're supposed to be (the scaled dimensions are supposed to be returned by GetScale{Width,Height} methods). Closes #17505. --- src/osx/core/bitmap.cpp | 27 +++++++-------------------- 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/src/osx/core/bitmap.cpp b/src/osx/core/bitmap.cpp index 16bec10892..52d161b17b 100644 --- a/src/osx/core/bitmap.cpp +++ b/src/osx/core/bitmap.cpp @@ -49,8 +49,7 @@ class WXDLLEXPORT wxBitmapRefData: public wxGDIRefData friend class WXDLLIMPEXP_FWD_CORE wxIcon; friend class WXDLLIMPEXP_FWD_CORE wxCursor; public: - wxBitmapRefData(int width , int height , int depth, double logicalscale); - wxBitmapRefData(int width , int height , int depth); + wxBitmapRefData(int width , int height , int depth, double logicalscale = 1.0); wxBitmapRefData(CGContextRef context); wxBitmapRefData(CGImageRef image, double scale); wxBitmapRefData(); @@ -106,8 +105,7 @@ public: int GetBytesPerRow() const { return m_bytesPerRow; } private : - bool Create(int width , int height , int depth); - bool Create(int width , int height , int depth, double logicalScale); + bool Create(int width , int height , int depth, double logicalscale); bool Create( CGImageRef image, double scale ); bool Create( CGContextRef bitmapcontext); void Init(); @@ -269,13 +267,7 @@ wxBitmapRefData::wxBitmapRefData() Init() ; } -wxBitmapRefData::wxBitmapRefData( int w , int h , int d ) -{ - Init() ; - Create( w , h , d ) ; -} - -wxBitmapRefData::wxBitmapRefData(int w , int h , int d, double logicalscale) +wxBitmapRefData::wxBitmapRefData( int w , int h , int d , double logicalscale) { Init() ; Create( w , h , d, logicalscale ) ; @@ -370,11 +362,12 @@ bool wxBitmapRefData::Create(CGContextRef context) return m_ok ; } -bool wxBitmapRefData::Create( int w , int h , int d ) +bool wxBitmapRefData::Create( int w , int h , int d, double logicalscale ) { m_width = wxMax(1, w); m_height = wxMax(1, h); m_depth = d ; + m_scaleFactor = logicalscale; m_hBitmap = NULL ; m_bytesPerRow = GetBestBytesPerRow( m_width * 4 ) ; @@ -395,12 +388,6 @@ bool wxBitmapRefData::Create( int w , int h , int d ) return m_ok ; } -bool wxBitmapRefData::Create( int w , int h , int d, double logicalScale ) -{ - m_scaleFactor = logicalScale; - return Create(w*logicalScale,h*logicalScale,d); -} - void wxBitmapRefData::UseAlpha( bool use ) { if ( m_hasAlpha == use ) @@ -1125,7 +1112,7 @@ bool wxBitmap::CreateScaled(int w, int h, int d, double logicalScale) if ( d < 0 ) d = wxDisplayDepth() ; - m_refData = new wxBitmapRefData( w , h , d, logicalScale ); + m_refData = new wxBitmapRefData( w*logicalScale , h*logicalScale , d, logicalScale ); return M_BITMAPDATA->IsOk() ; } @@ -1220,7 +1207,7 @@ wxBitmap::wxBitmap(const wxImage& image, int depth, double scale) wxBitmapRefData* bitmapRefData; - m_refData = bitmapRefData = new wxBitmapRefData( width/scale, height/scale, depth, scale) ; + m_refData = bitmapRefData = new wxBitmapRefData( width, height, depth, scale) ; if ( bitmapRefData->IsOk()) { From ad8d73cb15e39c4787a0ea71cb1759dc9921909f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 2 Dec 2017 23:11:10 +0100 Subject: [PATCH 145/916] Work around missing expanders in wxTreeListCtrl under Mac Re-indent the column containing the expanders explicitly if the control has just switched from "list" to "tree" mode. Closes #17409. --- src/generic/treelist.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/generic/treelist.cpp b/src/generic/treelist.cpp index 1880bee6a3..6dd3f275cb 100644 --- a/src/generic/treelist.cpp +++ b/src/generic/treelist.cpp @@ -482,6 +482,13 @@ wxTreeListModel::InsertItem(Node* parent, { // Not flat any more, this is a second level child. m_isFlat = false; + + // This is a hack needed to work around wxOSX wxDataViewCtrl + // implementation which removes the indent if it thinks that the model + // is flat. We need to re-add the indent back if it turns out that it + // isn't flat, in fact. + wxDataViewCtrl* const dvc = m_treelist->GetDataView(); + dvc->SetIndent(dvc->GetIndent()); } wxScopedPtr From 0eb456f08e7f6322232bfeb33c392a0c91913ea1 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 2 Dec 2017 23:07:46 +0100 Subject: [PATCH 146/916] Revert "Fix wxTreeListCtrl under wxOSX" This reverts commit 28f96bdff022da758beb802b34b5bcda77d8031d as it isn't necessary any more after the fix in the previous commit. See #17409. --- include/wx/osx/cocoa/dataview.h | 2 -- src/osx/cocoa/dataview.mm | 30 ++++++++---------------------- 2 files changed, 8 insertions(+), 24 deletions(-) diff --git a/include/wx/osx/cocoa/dataview.h b/include/wx/osx/cocoa/dataview.h index 6587f97bd9..ffe1ac2e5d 100644 --- a/include/wx/osx/cocoa/dataview.h +++ b/include/wx/osx/cocoa/dataview.h @@ -551,8 +551,6 @@ private: wxCocoaOutlineDataSource* m_DataSource; wxCocoaOutlineView* m_OutlineView; - - bool m_removeIndentIfNecessary; }; #endif // _WX_DATAVIEWCTRL_COCOOA_H_ diff --git a/src/osx/cocoa/dataview.mm b/src/osx/cocoa/dataview.mm index 9b0207eb92..c48c9c976e 100644 --- a/src/osx/cocoa/dataview.mm +++ b/src/osx/cocoa/dataview.mm @@ -2033,8 +2033,7 @@ wxCocoaDataViewControl::wxCocoaDataViewControl(wxWindow* peer, [[NSScrollView alloc] initWithFrame:wxOSXGetFrameForControl(peer,pos,size)] ), m_DataSource(NULL), - m_OutlineView([[wxCocoaOutlineView alloc] init]), - m_removeIndentIfNecessary(false) + m_OutlineView([[wxCocoaOutlineView alloc] init]) { // initialize scrollview (the outline view is part of a scrollview): NSScrollView* scrollview = (NSScrollView*) GetWXWidget(); @@ -2408,11 +2407,13 @@ bool wxCocoaDataViewControl::AssociateModel(wxDataViewModel* model) m_DataSource = NULL; [m_OutlineView setDataSource:m_DataSource]; // if there is a data source the data is immediately going to be requested - // Set this to true to check if we need to remove the indent in the next - // OnSize() call: we can't do it directly here because the model might not - // be fully initialized yet and so might not know whether it has any items - // with children or not. - m_removeIndentIfNecessary = true; + // By default, the first column is indented to leave enough place for the + // expanders, but this looks bad if there are no expanders, so don't use + // indent in this case. + if ( model && model->IsListModel() ) + { + DoSetIndent(0); + } return true; } @@ -2577,21 +2578,6 @@ void wxCocoaDataViewControl::SetRowHeight(const wxDataViewItem& WXUNUSED(item), void wxCocoaDataViewControl::OnSize() { - if ( m_removeIndentIfNecessary ) - { - m_removeIndentIfNecessary = false; - - const wxDataViewModel* const model = GetDataViewCtrl()->GetModel(); - - // By default, the first column is indented to leave enough place for the - // expanders, but this looks bad if there are no expanders, so don't use - // indent in this case. - if ( model && model->IsListModel() ) - { - DoSetIndent(0); - } - } - if ([m_OutlineView numberOfColumns] == 1) [m_OutlineView sizeLastColumnToFit]; } From d3f20c3837533c6a54c82694a4ed6e5cbb020c4f Mon Sep 17 00:00:00 2001 From: sbrowne Date: Sun, 3 Dec 2017 00:15:03 +0100 Subject: [PATCH 147/916] Fix hang when reparenting a frozen window in wxOSX The wrong order of changing parent and freezing/thawing could result in hanging the application when reparenting frozen windows, e.g. when switching order of pages in a notebook. Closes #16722. --- src/osx/cocoa/window.mm | 56 ++++++++++++++++++++++++++++++++++++++--- src/osx/window_osx.cpp | 12 +++++++-- 2 files changed, 63 insertions(+), 5 deletions(-) diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index b218573f9e..1106b2b888 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -769,6 +769,30 @@ void wxWidgetCocoaImpl::SetupMouseEvent( wxMouseEvent &wxevent , NSEvent * nsEve } } +static void SetDrawingEnabledIfFrozenRecursive(wxWidgetCocoaImpl *impl, bool enable) +{ + if (!impl->GetWXPeer()) + return; + + if (impl->GetWXPeer()->IsFrozen()) + impl->SetDrawingEnabled(enable); + + for ( wxWindowList::iterator i = impl->GetWXPeer()->GetChildren().begin(); + i != impl->GetWXPeer()->GetChildren().end(); + ++i ) + { + wxWindow *child = *i; + if ( child->IsTopLevel() || !child->IsFrozen() ) + continue; + + // Skip any user panes as they'll handle this themselves + if ( !child->GetPeer() || child->GetPeer()->IsUserPane() ) + continue; + + SetDrawingEnabledIfFrozenRecursive((wxWidgetCocoaImpl *)child->GetPeer(), enable); + } +} + @implementation wxNSView + (void)initialize @@ -887,6 +911,24 @@ void wxWidgetCocoaImpl::SetupMouseEvent( wxMouseEvent &wxevent , NSEvent * nsEve return [super hitTest:aPoint]; } +- (void) viewWillMoveToWindow:(NSWindow *)newWindow +{ + wxWidgetCocoaImpl* viewimpl = (wxWidgetCocoaImpl*) wxWidgetImpl::FindFromWXWidget( self ); + if (viewimpl) + SetDrawingEnabledIfFrozenRecursive(viewimpl, true); + + [super viewWillMoveToWindow:newWindow]; +} + +- (void) viewDidMoveToWindow +{ + wxWidgetCocoaImpl* viewimpl = (wxWidgetCocoaImpl*) wxWidgetImpl::FindFromWXWidget( self ); + if (viewimpl) + SetDrawingEnabledIfFrozenRecursive(viewimpl, false); + + [super viewDidMoveToWindow]; +} + @end // wxNSView // We need to adopt NSTextInputClient protocol in order to interpretKeyEvents: to work. @@ -2486,7 +2528,7 @@ void wxWidgetCocoaImpl::Init() wxWidgetCocoaImpl::~wxWidgetCocoaImpl() { if ( GetWXPeer() && GetWXPeer()->IsFrozen() ) - [[m_osxView window] enableFlushWindow]; + SetDrawingEnabled(true); RemoveAssociations( this ); @@ -3034,6 +3076,10 @@ void wxWidgetCocoaImpl::SetDropTarget(wxDropTarget* target) void wxWidgetCocoaImpl::RemoveFromParent() { + // User panes will be thawed in the removeFromSuperview call below + if (!IsUserPane() && m_wxPeer->IsFrozen()) + SetDrawingEnabled(true); + [m_osxView removeFromSuperview]; } @@ -3043,8 +3089,9 @@ void wxWidgetCocoaImpl::Embed( wxWidgetImpl *parent ) wxASSERT_MSG( container != NULL , wxT("No valid mac container control") ) ; [container addSubview:m_osxView]; - if( m_wxPeer->IsFrozen() ) - [[m_osxView window] disableFlushWindow]; + // User panes will be frozen elsewhere + if( m_wxPeer->IsFrozen() && !IsUserPane() ) + SetDrawingEnabled(false); } void wxWidgetCocoaImpl::SetBackgroundColour( const wxColour &col ) @@ -3693,6 +3740,9 @@ void wxWidgetCocoaImpl::SetFlipped(bool flipped) void wxWidgetCocoaImpl::SetDrawingEnabled(bool enabled) { + if ( [m_osxView window] == nil ) + return; + if ( enabled ) { [[m_osxView window] enableFlushWindow]; diff --git a/src/osx/window_osx.cpp b/src/osx/window_osx.cpp index c725ef8d57..5928260429 100644 --- a/src/osx/window_osx.cpp +++ b/src/osx/window_osx.cpp @@ -1638,6 +1638,15 @@ void wxWindowMac::RemoveChild( wxWindowBase *child ) if ( child == m_growBox ) m_growBox = NULL ; #endif + if (!child->IsBeingDeleted() && !child->IsTopLevel()) + { + // Must be removed prior to RemoveChild and next AddChild call + // Otherwise the next AddChild may freeze the wrong window + wxWindowMac *mac = (wxWindowMac *)child; + if (mac->GetPeer() && mac->GetPeer()->IsOk()) + mac->GetPeer()->RemoveFromParent(); + } + wxWindowBase::RemoveChild( child ) ; } @@ -2458,10 +2467,9 @@ bool wxWindowMac::Reparent(wxWindowBase *newParentBase) if ( !wxWindowBase::Reparent(newParent) ) return false; - GetPeer()->RemoveFromParent(); GetPeer()->Embed( GetParent()->GetPeer() ); - MacChildAdded(); + GetParent()->MacChildAdded(); return true; } From c677e4e6526378ff3cd4a55abe628b8e9a190031 Mon Sep 17 00:00:00 2001 From: Paul Kulchenko Date: Thu, 9 Nov 2017 16:25:17 -0800 Subject: [PATCH 148/916] Fix crash on calltip click on macOS Commit b0d0494f fixed it for autocomplete popup, but a similar issue is still present for calltips. This commit fixes it. Closes https://github.com/wxWidgets/wxWidgets/pull/595 --- src/stc/ScintillaWX.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/stc/ScintillaWX.cpp b/src/stc/ScintillaWX.cpp index a18796220a..deaacadbfe 100644 --- a/src/stc/ScintillaWX.cpp +++ b/src/stc/ScintillaWX.cpp @@ -490,9 +490,10 @@ void ScintillaWX::NotifyParent(SCNotification scn) { // a side effect that the AutoComp will also not be destroyed when switching // to another window, but I think that is okay. void ScintillaWX::CancelModes() { - if (! focusEvent) + if (! focusEvent) { AutoCompleteCancel(); - ct.CallTipCancel(); + ct.CallTipCancel(); + } Editor::CancelModes(); } From acdd0ef09ec4bf8518a5b0fe6640cddc5d7b662a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 15 Jan 2018 13:09:48 +0100 Subject: [PATCH 149/916] Check for HAVE_TYPE_TRAITS in CMake build not only for MSVC This check is needed for all compilers, although it can be skipped for MSVC versions too old to have either type_traits or tr1/type_traits. --- build/cmake/setup.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/cmake/setup.cmake b/build/cmake/setup.cmake index 9e0e4d24d4..1bc1a10fd8 100644 --- a/build/cmake/setup.cmake +++ b/build/cmake/setup.cmake @@ -580,7 +580,7 @@ endif() check_cxx_symbol_exists(round math.h HAVE_ROUND) # Check includes -if(NOT MSVC_VERSION LESS 1600) +if(NOT MSVC_VERSION OR NOT MSVC_VERSION LESS 1600) check_include_file_cxx(tr1/type_traits HAVE_TR1_TYPE_TRAITS) check_include_file_cxx(type_traits HAVE_TYPE_TRAITS) endif() From 52e71680ea58dc391a7bb9b94b3c35303f9a6a81 Mon Sep 17 00:00:00 2001 From: John Roberts Date: Mon, 15 Jan 2018 13:24:18 +0100 Subject: [PATCH 150/916] Fix grid sample OnGridRender() Destroy current "frameRender" when creating a new render. Make bitmap and frame size equal. Closes https://github.com/wxWidgets/wxWidgets/pull/673 --- samples/grid/griddemo.cpp | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/samples/grid/griddemo.cpp b/samples/grid/griddemo.cpp index 56b831f51d..974959aea7 100644 --- a/samples/grid/griddemo.cpp +++ b/samples/grid/griddemo.cpp @@ -2232,7 +2232,7 @@ void GridFrame::OnGridRender( wxCommandEvent& event ) int styleRender = 0, i; bool useLometric = false, defSize = false; double zoom = 1; - wxSize sizeMargin( 0, 0 ); + wxSize sizeOffset( 0, 0 ); wxPoint pointOrigin( 0, 0 ); wxMenu* menu = GetMenuBar()->GetMenu( 0 ); @@ -2255,7 +2255,7 @@ void GridFrame::OnGridRender( wxCommandEvent& event ) { pointOrigin.x += 50; pointOrigin.y += 50; - sizeMargin.IncBy( 50 ); + sizeOffset.IncBy( 50 ); } if ( menu->FindItem( ID_RENDER_ZOOM )->IsChecked() ) zoom = 1.25; @@ -2310,26 +2310,19 @@ void GridFrame::OnGridRender( wxCommandEvent& event ) sizeRender.y *= zoom; // delete any existing render frame and create new one - wxWindow* win = FindWindow( "frameRender" ); + wxWindow* win = FindWindowByName( "frameRender" ); if ( win ) win->Destroy(); + // create a frame large enough for the rendered bitmap wxFrame* frame = new wxFrame( this, wxID_ANY, "Grid Render" ); - frame->SetClientSize( 780, 400 ); + frame->SetClientSize( sizeRender + sizeOffset * 2 ); frame->SetName( "frameRender" ); wxPanel* canvas = new wxPanel( frame, wxID_ANY ); - // make bitmap large enough for margins if any - if ( !defSize ) - sizeRender.IncBy( sizeMargin * 2 ); - else - sizeRender.IncBy( sizeMargin ); - - wxBitmap bmp( sizeRender ); - // don't leave it larger or drawing will be scaled - sizeRender.DecBy( sizeMargin * 2 ); - + // make a bitmap large enough for any top/left offset + wxBitmap bmp( sizeRender + sizeOffset ); wxMemoryDC memDc(bmp); // default row labels have no background colour so set background From 4f456c8a193022cc88abcd365419fff080419398 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 16 Jan 2018 13:04:54 +0100 Subject: [PATCH 151/916] Refactor "changed" notifiers in generic wxDataViewCtrl code No real changes, just add the new DoItemChanged() used from both ItemChanged() and ValueChanged() notifications to avoid repeating the same code in both functions. --- src/generic/datavgen.cpp | 66 ++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 37 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 8a584ce69a..9f27cdcfc5 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -704,7 +704,10 @@ public: // notifications from wxDataViewModel bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item ); bool ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item ); - bool ItemChanged( const wxDataViewItem &item ); + bool ItemChanged( const wxDataViewItem &item ) + { + return DoItemChanged(item, wxNOT_FOUND); + } bool ValueChanged( const wxDataViewItem &item, unsigned int model_column ); bool Cleared(); void Resort() @@ -891,6 +894,10 @@ private: void DrawCellBackground( wxDataViewRenderer* cell, wxDC& dc, const wxRect& rect ); + // Common part of {Item,Value}Changed(): if view_column is wxNOT_FOUND, + // assumes that all columns were modified, otherwise just this one. + bool DoItemChanged(const wxDataViewItem& item, int view_column); + private: wxDataViewCtrl *m_owner; int m_lineHeight; @@ -2926,17 +2933,34 @@ bool wxDataViewMainWindow::ItemDeleted(const wxDataViewItem& parent, return true; } -bool wxDataViewMainWindow::ItemChanged(const wxDataViewItem & item) +bool wxDataViewMainWindow::DoItemChanged(const wxDataViewItem & item, int view_column) { // Move this node to its new correct place after it was updated. + // + // In principle, we could skip the call to PutInSortOrder() if the modified + // column is not the sort column, but in real-world applications it's fully + // possible and likely that custom compare uses not only the selected model + // column but also falls back to other values for comparison. To ensure + // consistency it is better to treat a value change as if it was an item + // change. wxDataViewTreeNode* const node = FindNode(item); wxCHECK_MSG( node, false, "invalid item" ); node->PutInSortOrder(this); - GetOwner()->InvalidateColBestWidths(); + wxDataViewColumn* column; + if ( view_column == wxNOT_FOUND ) + { + column = NULL; + GetOwner()->InvalidateColBestWidths(); + } + else + { + column = m_owner->GetColumn(view_column); + GetOwner()->InvalidateColBestWidth(view_column); + } // Send event - wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, item); + wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, column, item); m_owner->ProcessWindowEvent(le); return true; @@ -2948,39 +2972,7 @@ bool wxDataViewMainWindow::ValueChanged( const wxDataViewItem & item, unsigned i if ( view_column == wxNOT_FOUND ) return false; - // NOTE: to be valid, we cannot use e.g. INT_MAX - 1 -/*#define MAX_VIRTUAL_WIDTH 100000 - - wxRect rect( 0, row*m_lineHeight, MAX_VIRTUAL_WIDTH, m_lineHeight ); - m_owner->CalcScrolledPosition( rect.x, rect.y, &rect.x, &rect.y ); - Refresh( true, &rect ); - - return true; -*/ - - // In principle, we could skip the call to PutInSortOrder() if the modified - // column is not the sort column, but in real-world applications it's fully - // possible and likely that custom compare uses not only the selected model - // column but also falls back to other values for comparison. To ensure - // consistency it is better to treat a value change as if it was an item - // change. - // - // Alternatively, one could require the user to use ItemChanged() rather - // than ValueChanged() when the changed value may affect sorting, and add a - // check for model_column vs sort column here. - - wxDataViewTreeNode* const node = FindNode(item); - wxCHECK_MSG( node, false, "invalid item" ); - node->PutInSortOrder(this); - - GetOwner()->InvalidateColBestWidth(view_column); - - // Send event - wxDataViewColumn* const column = m_owner->GetColumn(view_column); - wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, column, item); - m_owner->ProcessWindowEvent(le); - - return true; + return DoItemChanged(item, view_column); } bool wxDataViewMainWindow::Cleared() From 77c7c80696a4566e10719e6b154b5d07717a3323 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 16 Jan 2018 13:08:52 +0100 Subject: [PATCH 152/916] Update modified items in generic wxDataViewCtrl immediately Recent optimizations avoiding resort on item change (see https://github.com/wxWidgets/wxWidgets/pull/642) have also optimized away refreshing the modified item, which was done implicitly, as a side effect of resorting, before, so the changes were not reflected on display immediately any longer. Fix this by simply refreshing the item explicitly and also add a way to test for the correct behaviour in the sample. --- samples/dataview/dataview.cpp | 18 ++++++++++++++++++ src/generic/datavgen.cpp | 3 +++ 2 files changed, 21 insertions(+) diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index b6fa7328b4..a53b1c7be3 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -102,6 +102,7 @@ private: void OnExpand(wxCommandEvent& event); void OnShowCurrent(wxCommandEvent& event); void OnSetNinthCurrent(wxCommandEvent& event); + void OnChangeNinthTitle(wxCommandEvent& event); void OnPrependList(wxCommandEvent& event); void OnDeleteList(wxCommandEvent& event); @@ -342,6 +343,7 @@ enum ID_EXPAND = 105, ID_SHOW_CURRENT, ID_SET_NINTH_CURRENT, + ID_CHANGE_NINTH_TITLE, ID_PREPEND_LIST = 200, ID_DELETE_LIST = 201, @@ -384,6 +386,7 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_BUTTON( ID_EXPAND, MyFrame::OnExpand ) EVT_BUTTON( ID_SHOW_CURRENT, MyFrame::OnShowCurrent ) EVT_BUTTON( ID_SET_NINTH_CURRENT, MyFrame::OnSetNinthCurrent ) + EVT_BUTTON( ID_CHANGE_NINTH_TITLE, MyFrame::OnChangeNinthTitle ) EVT_BUTTON( ID_PREPEND_LIST, MyFrame::OnPrependList ) EVT_BUTTON( ID_DELETE_LIST, MyFrame::OnDeleteList ) @@ -512,6 +515,8 @@ MyFrame::MyFrame(wxFrame *frame, const wxString &title, int x, int y, int w, int "&Show current"), border); sizerCurrent->Add(new wxButton(firstPanel, ID_SET_NINTH_CURRENT, "Make &ninth symphony current"), border); + sizerCurrent->Add(new wxButton(firstPanel, ID_CHANGE_NINTH_TITLE, + "Change ninth &title"), border); wxSizer *firstPanelSz = new wxBoxSizer( wxVERTICAL ); m_ctrl[0]->SetMinSize(wxSize(-1, 200)); @@ -1137,6 +1142,19 @@ void MyFrame::OnSetNinthCurrent(wxCommandEvent& WXUNUSED(event)) m_ctrl[0]->SetCurrentItem(item); } +void MyFrame::OnChangeNinthTitle(wxCommandEvent& WXUNUSED(event)) +{ + wxDataViewItem item(m_music_model->GetNinthItem()); + if ( !item.IsOk() ) + { + wxLogError( "Cannot change the ninth symphony title: it was removed!" ); + return; + } + + m_music_model->SetValue("Symphony No. 9", item, 0); + m_music_model->ItemChanged(item); +} + void MyFrame::OnValueChanged( wxDataViewEvent &event ) { wxString title = m_music_model->GetTitle( event.GetItem() ); diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 9f27cdcfc5..75d37d1357 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -2959,6 +2959,9 @@ bool wxDataViewMainWindow::DoItemChanged(const wxDataViewItem & item, int view_c GetOwner()->InvalidateColBestWidth(view_column); } + // Update the displayed value(s). + RefreshRow(GetRowByItem(item)); + // Send event wxDataViewEvent le(wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, m_owner, column, item); m_owner->ProcessWindowEvent(le); From 66519997198d05848f07b15c4f1bd33c8fc25d12 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 16 Jan 2018 16:22:51 +0100 Subject: [PATCH 153/916] Fold best size and ellipsis handling in AutoResizeIfNecessary() Refactor wxStaticText code to use AutoResizeIfNecessary() for all the updates done after the label extent changes (whether it's due to the change of the label itself or the font used for rendering it). There should be no changes in behaviour after this commit except for a small bug fix in wxGenericStaticText when setting label with markup: this didn't invalidate the best size before, but does now. --- src/common/stattextcmn.cpp | 21 ++++++++++++++------- src/generic/stattextg.cpp | 5 +---- src/gtk/stattext.cpp | 14 +++----------- src/msw/stattext.cpp | 7 +------ src/osx/stattext_osx.cpp | 14 ++------------ 5 files changed, 21 insertions(+), 40 deletions(-) diff --git a/src/common/stattextcmn.cpp b/src/common/stattextcmn.cpp index 203e1f7a51..aaa61e87ec 100644 --- a/src/common/stattextcmn.cpp +++ b/src/common/stattextcmn.cpp @@ -205,13 +205,20 @@ void wxStaticTextBase::Wrap(int width) void wxStaticTextBase::AutoResizeIfNecessary() { - // adjust the size of the window to fit to the label unless autoresizing is - // disabled - if ( !HasFlag(wxST_NO_AUTORESIZE) ) - { - DoSetSize(wxDefaultCoord, wxDefaultCoord, wxDefaultCoord, wxDefaultCoord, - wxSIZE_AUTO_WIDTH | wxSIZE_AUTO_HEIGHT); - } + // This method is only called if either the label or the font changed, i.e. + // if the label extent changed, so the best size is not the same neither + // any more. + InvalidateBestSize(); + + if ( IsEllipsized() ) // if ellipsize is ON, then we don't want to get resized! + return; + + // This flag is specifically used to prevent the control from resizing even + // when its label changes. + if ( HasFlag(wxST_NO_AUTORESIZE) ) + return; + + SetSize(GetBestSize()); } // ---------------------------------------------------------------------------- diff --git a/src/generic/stattextg.cpp b/src/generic/stattextg.cpp index a8b4b5c150..fa1db47c4a 100644 --- a/src/generic/stattextg.cpp +++ b/src/generic/stattextg.cpp @@ -102,10 +102,7 @@ void wxGenericStaticText::SetLabel(const wxString& label) wxControl::SetLabel(label); DoSetLabel(GetEllipsizedLabel()); - InvalidateBestSize(); - - if ( !IsEllipsized() ) - AutoResizeIfNecessary(); + AutoResizeIfNecessary(); #if wxUSE_MARKUP if ( m_markupText ) diff --git a/src/gtk/stattext.cpp b/src/gtk/stattext.cpp index 9c1031f9fb..bda1f6d135 100644 --- a/src/gtk/stattext.cpp +++ b/src/gtk/stattext.cpp @@ -138,14 +138,9 @@ void wxStaticText::GTKDoSetLabel(GTKLabelSetter setter, const wxString& label) { wxCHECK_RET( m_widget != NULL, wxT("invalid static text") ); - InvalidateBestSize(); - (this->*setter)(GTK_LABEL(m_widget), label); - // adjust the label size to the new label unless disabled - if ( !HasFlag(wxST_NO_AUTORESIZE) && - !IsEllipsized() ) // if ellipsization is ON, then we don't want to get resized! - SetSize( GetBestSize() ); + AutoResizeIfNecessary(); } void wxStaticText::SetLabel(const wxString& label) @@ -222,11 +217,8 @@ bool wxStaticText::SetFont( const wxFont &font ) gtk_label_set_use_underline(GTK_LABEL(m_widget), !isUnderlined); } - // adjust the label size to the new label unless disabled - if (!HasFlag(wxST_NO_AUTORESIZE)) - { - SetSize( GetBestSize() ); - } + AutoResizeIfNecessary(); + return ret; } diff --git a/src/msw/stattext.cpp b/src/msw/stattext.cpp index 97b28d06e8..f5a29f380e 100644 --- a/src/msw/stattext.cpp +++ b/src/msw/stattext.cpp @@ -184,12 +184,7 @@ void wxStaticText::SetLabel(const wxString& label) #endif // SS_ENDELLIPSIS DoSetLabel(GetEllipsizedLabel()); - InvalidateBestSize(); - - if ( !IsEllipsized() ) // if ellipsize is ON, then we don't want to get resized! - { - AutoResizeIfNecessary(); - } + AutoResizeIfNecessary(); } bool wxStaticText::SetFont(const wxFont& font) diff --git a/src/osx/stattext_osx.cpp b/src/osx/stattext_osx.cpp index 4176add134..53e0e0ced9 100644 --- a/src/osx/stattext_osx.cpp +++ b/src/osx/stattext_osx.cpp @@ -78,13 +78,7 @@ void wxStaticText::SetLabel(const wxString& label) DoSetLabel(GetEllipsizedLabel()); } - InvalidateBestSize(); - - if ( !(GetWindowStyle() & wxST_NO_AUTORESIZE) && - !IsEllipsized() ) // don't resize if we adjust to current size - { - SetSize( GetBestSize() ); - } + AutoResizeIfNecessary(); Refresh(); @@ -98,11 +92,7 @@ bool wxStaticText::SetFont(const wxFont& font) if ( ret ) { - if ( !(GetWindowStyle() & wxST_NO_AUTORESIZE) ) - { - InvalidateBestSize(); - SetSize( GetBestSize() ); - } + AutoResizeIfNecessary(); } return ret; From 51bfc68423d735dfa24e7c1e6dd807110bfeafae Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 16 Jan 2018 16:26:35 +0100 Subject: [PATCH 154/916] Avoid unnecessary checks in wxStaticText::SetFont() in wxGTK There is no need to do anything if the font didn't actually change. --- src/gtk/stattext.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gtk/stattext.cpp b/src/gtk/stattext.cpp index bda1f6d135..78e154c006 100644 --- a/src/gtk/stattext.cpp +++ b/src/gtk/stattext.cpp @@ -175,7 +175,8 @@ bool wxStaticText::SetFont( const wxFont &font ) const bool wasUnderlined = GetFont().GetUnderlined(); const bool wasStrickenThrough = GetFont().GetStrikethrough(); - bool ret = wxControl::SetFont(font); + if ( !wxControl::SetFont(font) ) + return false; const bool isUnderlined = GetFont().GetUnderlined(); const bool isStrickenThrough = GetFont().GetStrikethrough(); @@ -219,7 +220,7 @@ bool wxStaticText::SetFont( const wxFont &font ) AutoResizeIfNecessary(); - return ret; + return true; } wxSize wxStaticText::DoGetBestSize() const From c19e53e75e61134d8ef478a2316eef87e915f37c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 16 Jan 2018 16:27:17 +0100 Subject: [PATCH 155/916] Don't skip wxStaticText auto-resizing if it's ellipsized There doesn't seem to be any good reason for this, as it's perfectly possible to use ellipsize the text if it's too long to fit even when the control is resized to its maximal extent, but still allow the control to resize in the first place. See https://groups.google.com/d/msg/wx-dev/58xFP4FIxXc/d5lj6901CQAJ --- src/common/stattextcmn.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/common/stattextcmn.cpp b/src/common/stattextcmn.cpp index aaa61e87ec..a83d937246 100644 --- a/src/common/stattextcmn.cpp +++ b/src/common/stattextcmn.cpp @@ -210,9 +210,6 @@ void wxStaticTextBase::AutoResizeIfNecessary() // any more. InvalidateBestSize(); - if ( IsEllipsized() ) // if ellipsize is ON, then we don't want to get resized! - return; - // This flag is specifically used to prevent the control from resizing even // when its label changes. if ( HasFlag(wxST_NO_AUTORESIZE) ) From 3294b9a63a30f385b7c061acda069dc4e5820599 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 16 Jan 2018 16:47:11 +0100 Subject: [PATCH 156/916] Don't invalidate best size for controls with wxST_NO_AUTORESIZE This results in non-intuitive behaviour, as the controls with this style still get resized after changing their label, so don't do it. See https://groups.google.com/d/msg/wx-dev/58xFP4FIxXc/hm5WO0xNBwAJ --- src/common/stattextcmn.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/common/stattextcmn.cpp b/src/common/stattextcmn.cpp index a83d937246..811aceb190 100644 --- a/src/common/stattextcmn.cpp +++ b/src/common/stattextcmn.cpp @@ -205,16 +205,21 @@ void wxStaticTextBase::Wrap(int width) void wxStaticTextBase::AutoResizeIfNecessary() { - // This method is only called if either the label or the font changed, i.e. - // if the label extent changed, so the best size is not the same neither - // any more. - InvalidateBestSize(); - // This flag is specifically used to prevent the control from resizing even // when its label changes. if ( HasFlag(wxST_NO_AUTORESIZE) ) return; + // This method is only called if either the label or the font changed, i.e. + // if the label extent changed, so the best size is not the same neither + // any more. + // + // Note that we don't invalidate it when wxST_NO_AUTORESIZE is on because + // this would result in the control being effectively resized during the + // next Layout() and this style is used expressly to prevent this from + // happening. + InvalidateBestSize(); + SetSize(GetBestSize()); } From 4dc78a33e0158e92fdc45c20896a0feed8704ab8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 00:12:52 +0100 Subject: [PATCH 157/916] Fix adding items to a never opened branch of generic wxDataViewCtrl Calling ItemAdded() on a parent item that had never been opened yet "lost" all its children that initially existed in the model, as the corresponding subtree wasn't built any more in Expand() when this item was finally opened because the list of item children wasn't empty any more after ItemAdded() added the new child to it. Fix this by simply not doing anything in ItemAdded() in this situation, there is no need to update a closed tree branch immediately anyhow. --- src/generic/datavgen.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 8a584ce69a..e361ef6606 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -2739,6 +2739,14 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData if ( !parentNode ) return false; + // If the parent node isn't and hadn't been opened yet, we don't have + // anything to do here, all the items will be added to it when it's + // opened for the first time. + if ( !parentNode->IsOpen() && parentNode->GetChildNodes().empty() ) + { + return true; + } + wxDataViewTreeNode *itemNode = new wxDataViewTreeNode(parentNode, item); itemNode->SetHasChildren(GetModel()->IsContainer(item)); parentNode->SetHasChildren(true); From ff3b3269dd55fb9ae25e719ce620d703da28f53e Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 10:10:38 +0100 Subject: [PATCH 158/916] Fix adding items to wxDataViewCtrl broken in the last commit SetHasChildren(true) must be called before checking GetChildNodes() if the parent hadn't had any items in the initial model. Also remove the assert checking that the node is open in BuildTreeHelper() as we may need to build even a closed tree branch. --- src/generic/datavgen.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index e361ef6606..dfc7c2c489 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -2739,6 +2739,8 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData if ( !parentNode ) return false; + parentNode->SetHasChildren(true); + // If the parent node isn't and hadn't been opened yet, we don't have // anything to do here, all the items will be added to it when it's // opened for the first time. @@ -2749,7 +2751,6 @@ bool wxDataViewMainWindow::ItemAdded(const wxDataViewItem & parent, const wxData wxDataViewTreeNode *itemNode = new wxDataViewTreeNode(parentNode, item); itemNode->SetHasChildren(GetModel()->IsContainer(item)); - parentNode->SetHasChildren(true); if ( GetSortOrder().IsNone() ) { @@ -3963,8 +3964,8 @@ static void BuildTreeHelper( wxDataViewMainWindow *window, const wxDataViewModel node->InsertChild(window, n, index); } - wxASSERT( node->IsOpen() ); - node->ChangeSubTreeCount(+num); + if ( node->IsOpen() ) + node->ChangeSubTreeCount(+num); } void wxDataViewMainWindow::BuildTree(wxDataViewModel * model) From 91f54ea7e467e09184713cb64855ffcd0e2ae5e7 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 10:12:41 +0100 Subject: [PATCH 159/916] Remove a useless assert from wxDataViewTreeNode::GetChildNodes() Checking that a pointer is non-null before dereferencing it is perfectly useless: the code will crash anyhow, so assert doesn't help with debugging it in debug builds nor with preventing the crash in release. --- src/generic/datavgen.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index dfc7c2c489..372cb86cb8 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -496,7 +496,6 @@ public: const wxDataViewTreeNodes& GetChildNodes() const { - wxASSERT( m_branchData != NULL ); return m_branchData->children; } From 4ad61f3048db752d48d988d31c6b3a98dee0dad3 Mon Sep 17 00:00:00 2001 From: John Roberts Date: Wed, 17 Jan 2018 12:04:52 +0800 Subject: [PATCH 160/916] Fix LAN detection in wxDialUpManager for macOS Check for enX interface name for Darwin. Closes https://github.com/wxWidgets/wxWidgets/pull/676 --- src/unix/dialup.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/unix/dialup.cpp b/src/unix/dialup.cpp index 14122eb2c1..e9612b6152 100644 --- a/src/unix/dialup.cpp +++ b/src/unix/dialup.cpp @@ -722,11 +722,12 @@ wxDialUpManagerImpl::CheckIfconfig() hasModem = strstr(output.fn_str(),"ipdptp") != NULL; hasLAN = strstr(output.fn_str(), "hme") != NULL; #elif defined(__LINUX__) || defined (__FREEBSD__) || defined (__QNX__) || \ - defined(__OPENBSD__) + defined(__OPENBSD__) || defined(__DARWIN__) hasModem = strstr(output.fn_str(),"ppp") // ppp || strstr(output.fn_str(),"sl") // slip || strstr(output.fn_str(),"pl"); // plip - hasLAN = strstr(output.fn_str(), "eth") != NULL; + hasLAN = strstr(output.fn_str(), "eth") != NULL + || strstr(output.fn_str(),"en") != NULL; // en0, en1 osx #elif defined(__SGI__) // IRIX hasModem = strstr(output.fn_str(), "ppp") != NULL; // PPP #elif defined(__HPUX__) From 321c9d5f3037cc80deb17304c82eda94e21e626a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 10:18:10 +0100 Subject: [PATCH 161/916] Add another email address for John Roberts See https://github.com/wxWidgets/wxWidgets/pull/676 --- .mailmap | 1 + 1 file changed, 1 insertion(+) diff --git a/.mailmap b/.mailmap index 196e21b5e3..cbaae76c77 100644 --- a/.mailmap +++ b/.mailmap @@ -7,6 +7,7 @@ Cătălin Răceanu Dimitri Schoolwerth Hubert Talbot Ilya Bizyaev +John Roberts Jouk Jansen Julian Smart Jevgenijs Protopopovs From 1dd102d741dc9858df2b7e933761ed7cc7a51093 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 10:24:55 +0100 Subject: [PATCH 162/916] Fix crash when deleting all wxTreeListCtrl items with wxGTK3 GTK+ 3 (but not the generic version nor even GTK+ 2, apparently) sends "selection changed" event from gtk_tree_model_row_deleted() when deleting the currently selected row, which resulted in sending of wxEVT_TREELIST_SELECTION_CHANGED events with invalid wxTreeListItem, containing a dangling pointer, and a crash in the treelist sample when trying to dump it. Avoid this by clearing the model (and hence generating these events) first and deleting the items only afterwards. Also add a trivial unit test for wxTreeListCtrl::DeleteAllItems(), which doesn't even allow to reproduce this bug, but is still probably better to have than not to. Closes #18045. --- src/generic/treelist.cpp | 8 ++++++-- tests/controls/treelistctrltest.cpp | 9 +++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/generic/treelist.cpp b/src/generic/treelist.cpp index 6c599100ae..3c6f26d955 100644 --- a/src/generic/treelist.cpp +++ b/src/generic/treelist.cpp @@ -572,12 +572,16 @@ void wxTreeListModel::DeleteItem(Node* item) void wxTreeListModel::DeleteAllItems() { + // Note that this must be called before actually deleting the items as + // clearing GTK+ wxDataViewCtrl results in SELECTION_CHANGED events being + // sent and these events contain pointers to the model items, so they must + // still be valid. + Cleared(); + while ( m_root->GetChild() ) { m_root->DeleteChild(); } - - Cleared(); } const wxString& wxTreeListModel::GetItemText(Node* item, unsigned col) const diff --git a/tests/controls/treelistctrltest.cpp b/tests/controls/treelistctrltest.cpp index d4a3ac96d6..02164ab3a1 100644 --- a/tests/controls/treelistctrltest.cpp +++ b/tests/controls/treelistctrltest.cpp @@ -39,6 +39,7 @@ private: CPPUNIT_TEST( Traversal ); CPPUNIT_TEST( ItemText ); CPPUNIT_TEST( ItemCheck ); + CPPUNIT_TEST( DeleteAll ); CPPUNIT_TEST_SUITE_END(); // Create the control with the given style. @@ -55,6 +56,7 @@ private: void Traversal(); void ItemText(); void ItemCheck(); + void DeleteAll(); // The control itself. @@ -231,4 +233,11 @@ void TreeListCtrlTestCase::ItemCheck() m_treelist->GetCheckedState(m_code) ); } +void TreeListCtrlTestCase::DeleteAll() +{ + m_treelist->DeleteAllItems(); + + CHECK( !m_treelist->GetFirstChild(m_treelist->GetRootItem()).IsOk() ); +} + #endif // wxUSE_TREELISTCTRL From 4750e1ee78f9256519c80596aeb76dbbbf7b7582 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 11:47:08 +0100 Subject: [PATCH 163/916] Exit the main loop, not the current one, on unhandled exception If wxApp::OnExceptionInMainLoop() returns false, we're supposed to exit the application by stopping its main event loop, not the loop that is currently running, so do the former instead of the latter. Also call wxAbort() if we can't exit the application in any other way, this is not ideal, but still better than not doing anything and, for example, keeping showing the same "Unexpected error occurred" message box to the user over and over again if the exception comes from an event handler being called repeatedly, such as wxEVT_PAINT or wxEVT_IDLE. --- src/common/event.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/common/event.cpp b/src/common/event.cpp index d32a21d9d6..867871a348 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -1635,8 +1635,21 @@ void wxEvtHandler::WXConsumeException() { if ( !wxTheApp || !wxTheApp->OnExceptionInMainLoop() ) { - if ( loop ) - loop->Exit(); + // If OnExceptionInMainLoop() returns false, we're supposed to exit + // the program and for this we need to exit the main loop, not the + // possibly nested one we're running right now. + if ( wxTheApp ) + { + wxTheApp->ExitMainLoop(); + } + else + { + // We must not continue running after an exception, unless + // explicitly requested, so if we can't ensure this in any + // other way, do it brutally like this. + wxAbort(); + } + } //else: continue running current event loop } From 35a0ba4fcee1539817e096ee2b3f11d8a844f1df Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 17 Jan 2018 11:32:07 +0100 Subject: [PATCH 164/916] Avoid crash on abnormal exit in wx+MFC combined applications Reset m_pMainWnd in wxMFCApp::ExitInstance() to avoid crash when deleting it again in OnMainWindowDestroyed() that could happen if ExitInstance() was called not because the main window was closed (normal case) but because wxApp::ExitMainLoop() was called, as it happens when an unhandled exception is thrown. --- include/wx/msw/mfc.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h index 8cab2ee37f..830db351ac 100644 --- a/include/wx/msw/mfc.h +++ b/include/wx/msw/mfc.h @@ -81,6 +81,7 @@ public: int ExitInstance() wxOVERRIDE { delete m_pMainWnd; + m_pMainWnd = NULL; if ( wxTheApp ) wxTheApp->OnExit(); From a1cf0e1cd4e486db8f3a8bd31778e2f167e6cfb9 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Thu, 18 Jan 2018 19:42:08 +0100 Subject: [PATCH 165/916] Removing manual focus handling see https://github.com/wxWidgets/wxWidgets/pull/672 , commit 61b1a9a3533d4e16b2b7a9441e42766d8d9655c7 , revert this change if problems arise to see whether this is a recursion --- include/wx/osx/frame.h | 14 +------------- src/osx/carbon/frame.cpp | 33 --------------------------------- src/osx/window_osx.cpp | 23 ----------------------- 3 files changed, 1 insertion(+), 69 deletions(-) diff --git a/include/wx/osx/frame.h b/include/wx/osx/frame.h index 195145281f..9a493773fa 100644 --- a/include/wx/osx/frame.h +++ b/include/wx/osx/frame.h @@ -21,7 +21,7 @@ class WXDLLIMPEXP_CORE wxFrame: public wxFrameBase { public: // construction - wxFrame() { Init(); } + wxFrame() { } wxFrame(wxWindow *parent, wxWindowID id, const wxString& title, @@ -30,8 +30,6 @@ public: long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxFrameNameStr) { - Init(); - Create(parent, id, title, pos, size, style, name); } @@ -75,19 +73,12 @@ public: const wxString& name = wxStatusLineNameStr) wxOVERRIDE; #endif // wxUSE_STATUSBAR - // called by wxWindow whenever it gets focus - void SetLastFocus(wxWindow *win) { m_winLastFocused = win; } - wxWindow *GetLastFocus() const { return m_winLastFocused; } - void PositionBars(); // internal response to size events virtual void MacOnInternalSize() wxOVERRIDE { PositionBars(); } protected: - // common part of all ctors - void Init(); - #if wxUSE_TOOLBAR virtual void PositionToolBar() wxOVERRIDE; #endif @@ -104,9 +95,6 @@ protected: virtual void AttachMenuBar(wxMenuBar *menubar) wxOVERRIDE; #endif - // the last focused child: we restore focus to it on activation - wxWindow *m_winLastFocused; - virtual bool MacIsChildOfClientArea( const wxWindow* child ) const wxOVERRIDE; wxDECLARE_EVENT_TABLE(); diff --git a/src/osx/carbon/frame.cpp b/src/osx/carbon/frame.cpp index 4b27f3d719..d0033a3d5d 100644 --- a/src/osx/carbon/frame.cpp +++ b/src/osx/carbon/frame.cpp @@ -36,11 +36,6 @@ wxEND_EVENT_TABLE() // creation/destruction // ---------------------------------------------------------------------------- -void wxFrame::Init() -{ - m_winLastFocused = NULL; -} - bool wxFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, @@ -156,38 +151,10 @@ void wxFrame::OnActivate(wxActivateEvent& event) { if ( !event.GetActive() ) { - // remember the last focused child if it is our child - m_winLastFocused = FindFocus(); - - // so we NULL it out if it's a child from some other frame - wxWindow *win = m_winLastFocused; - while ( win ) - { - if ( win->IsTopLevel() ) - { - if ( win != this ) - m_winLastFocused = NULL; - - break; - } - - win = win->GetParent(); - } - event.Skip(); } else { - // restore focus to the child which was last focused - wxWindow *parent = m_winLastFocused - ? m_winLastFocused->GetParent() - : NULL; - - if (parent == NULL) - parent = this; - - wxSetFocusToChild(parent, &m_winLastFocused); - #if wxUSE_MENUS if (m_frameMenuBar != NULL) { diff --git a/src/osx/window_osx.cpp b/src/osx/window_osx.cpp index 5928260429..8ec3e2500a 100644 --- a/src/osx/window_osx.cpp +++ b/src/osx/window_osx.cpp @@ -239,20 +239,6 @@ wxWindowMac::~wxWindowMac() MacInvalidateBorders() ; -#ifndef __WXUNIVERSAL__ - // VS: make sure there's no wxFrame with last focus set to us: - for ( wxWindow *win = GetParent(); win; win = win->GetParent() ) - { - wxFrame *frame = wxDynamicCast(win, wxFrame); - if ( frame ) - { - if ( frame->GetLastFocus() == this ) - frame->SetLastFocus(NULL); - break; - } - } -#endif - // destroy children before destroying this window itself DestroyChildren(); @@ -266,15 +252,6 @@ wxWindowMac::~wxWindowMac() tlw->SetDefaultItem(NULL); } -#ifndef __WXUNIVERSAL__ - wxFrame* frame = wxDynamicCast( wxGetTopLevelParent( (wxWindow*)this ) , wxFrame ) ; - if ( frame ) - { - if ( frame->GetLastFocus() == this ) - frame->SetLastFocus( NULL ) ; - } -#endif - // delete our drop target if we've got one #if wxUSE_DRAG_AND_DROP wxDELETE(m_dropTarget); From c6e445d40c8f9a58ff728e31c72caa37045660c3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 18 Jan 2018 22:58:34 +0100 Subject: [PATCH 166/916] Set focus to wxSimplebook contents when setting focus to it This is more expected than simply doing nothing, as happened until now. --- include/wx/simplebook.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/wx/simplebook.h b/include/wx/simplebook.h index 4d604bac8e..7e819700fc 100644 --- a/include/wx/simplebook.h +++ b/include/wx/simplebook.h @@ -146,6 +146,14 @@ public: return NO_IMAGE; } + // Override some wxWindow methods too. + virtual void SetFocus() wxOVERRIDE + { + wxWindow* const page = GetCurrentPage(); + if ( page ) + page->SetFocus(); + } + protected: virtual void UpdateSelectedPage(size_t newsel) wxOVERRIDE { From 483993222782c53ae0be72f6dbd42d1a4ffc56a1 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 18 Jan 2018 22:20:58 +0100 Subject: [PATCH 167/916] Allow tabbing to the windows inside non-notebook wxBookCtrl Remove wxBookCtrlBase::AcceptsFocus() returning false as it didn't make any sense: even though wxBookCtrlBase doesn't, indeed, accept focus on itself, it does accept it for its children and returning false prevented the focus from ever getting inside it. This fixes, for example, keyboard navigation in a window containing wxSimplebook and TAB can now be used to move to the controls inside it from the outside. Also remove the now unnecessary AcceptsFocus() override which was just undoing the damage of the base class method and is not needed any more. --- include/wx/bookctrl.h | 3 --- include/wx/notebook.h | 4 ---- 2 files changed, 7 deletions(-) diff --git a/include/wx/bookctrl.h b/include/wx/bookctrl.h index 0149ba4d94..aad4834a55 100644 --- a/include/wx/bookctrl.h +++ b/include/wx/bookctrl.h @@ -228,9 +228,6 @@ public: // we do have multiple pages virtual bool HasMultiplePages() const wxOVERRIDE { return true; } - // we don't want focus for ourselves - virtual bool AcceptsFocus() const wxOVERRIDE { return false; } - // returns true if the platform should explicitly apply a theme border virtual bool CanApplyThemeBorder() const wxOVERRIDE { return false; } diff --git a/include/wx/notebook.h b/include/wx/notebook.h index 61c2d2e6b8..8416c695a5 100644 --- a/include/wx/notebook.h +++ b/include/wx/notebook.h @@ -139,10 +139,6 @@ public: // new is wxNOT_FOUND) void SendPageChangedEvent(int nPageOld, int nPageNew = wxNOT_FOUND); - // wxBookCtrlBase overrides this method to return false but we do need - // focus because we have tabs - virtual bool AcceptsFocus() const wxOVERRIDE { return wxControl::AcceptsFocus(); } - #if wxUSE_EXTENDED_RTTI // XTI accessors virtual void AddPageInfo( wxNotebookPageInfo* info ); From a67f4b8254dd371e087f132e674e52e17fc8a72c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 18 Jan 2018 23:14:36 +0100 Subject: [PATCH 168/916] Don't pretend static box with enabled label is disabled Trying to be smart by setting m_isEnabled to false in wxStaticBox::Enable() without actually disabling the box itself (because it can't be done if its label window is to remain enabled) didn't really work. For example, it was impossible to TAB to a checkbox label of the box when it was disabled, because keyboard navigation (correctly) doesn't recurse into disabled windows and there could be similar problems with any other code iterating over windows and skipping over the disabled ones. So, finally, simplify things and keep m_isEnabled in sync with the real box state, even if this, counter-intuitively, means that IsEnabled() on the box returns true after calling Enable(false) on it. This also reverts 4ee35cf5ee569b6ee6c7d0d5702484d4d2a20f96 ("Don't disable wxStaticBox children at wx level when disabling it") as we can't avoid really disabling the children any more now that their parent is not disabled: without this, their IsEnabled() would return true, i.e. they wouldn't be disabled at all, from the program point of view. This is unfortunate for the reasons that originally motivated that commit, i.e. if some wxStaticBox child is disabled, disabling and re-enabling the box will now re-enable this child, even if it shouldn't, but seems impossible to avoid. The only possible alternative is to modify IsEnabled() to add some wxStaticBox-specific hook to it, e.g. instead of calling GetParent()->IsEnabled() there, we could call some now AreChildrenEnable() method, which would delegate to IsEnabled() by default but overridden in wxStaticBox. However this seems complicated, and will add an extra virtual function call to all (frequently happening) IsEnabled() calls. --- include/wx/statbox.h | 7 +++++++ include/wx/window.h | 10 +++++----- interface/wx/statbox.h | 15 +++++++++++++++ src/common/statboxcmn.cpp | 39 +++++++++------------------------------ 4 files changed, 36 insertions(+), 35 deletions(-) diff --git a/include/wx/statbox.h b/include/wx/statbox.h index ecb07ed92f..d5d15a9f00 100644 --- a/include/wx/statbox.h +++ b/include/wx/statbox.h @@ -54,6 +54,13 @@ protected: // static box and will be deleted when it is. wxWindow* m_labelWin; + // For boxes with window label this member variable is used instead of + // m_isEnabled to remember the last value passed to Enable(). It is + // required because the box itself doesn't get disabled by Enable(false) in + // this case (see comments in Enable() implementation), and m_isEnabled + // must correspond to its real state. + bool m_areChildrenEnabled; + wxDECLARE_NO_COPY_CLASS(wxStaticBoxBase); }; diff --git a/include/wx/window.h b/include/wx/window.h index b8d9e8d1a3..8046223a4a 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -1580,11 +1580,6 @@ public: return false; } - // Recursively call our own and our children DoEnable() when the - // enabled/disabled status changed because a parent window had been - // enabled/disabled. This is only used by the library implementation. - void NotifyWindowOnEnableChange(bool enabled); - protected: // helper for the derived class Create() methods: the first overload, with @@ -1896,6 +1891,11 @@ protected: static void NotifyCaptureLost(); private: + // recursively call our own and our children DoEnable() when the + // enabled/disabled status changed because a parent window had been + // enabled/disabled + void NotifyWindowOnEnableChange(bool enabled); + #if wxUSE_MENUS // temporary event handlers used by GetPopupMenuSelectionFromUser() void InternalOnPopupMenu(wxCommandEvent& event); diff --git a/interface/wx/statbox.h b/interface/wx/statbox.h index f9174261d7..d9f2a564de 100644 --- a/interface/wx/statbox.h +++ b/interface/wx/statbox.h @@ -182,6 +182,21 @@ public: }); @endcode does work as expected. + + Please note that overriding Enable() to not actually disable this + window itself has two possibly unexpected consequences: + + - The box retains its enabled status, i.e. IsEnabled() still returns + @true, after calling @c Enable(false). + - The box children are enabled or disabled when the box is, which can + result in the loss of their original state. E.g. if a box child is + initially disabled, then the box itself is disabled and, finally, the + box is enabled again, this child will end up being enabled too (this + wouldn't happen with any other parent window as its children would + inherit the disabled state from the parent instead of being really + disabled themselves when it is disabled). To avoid this problem, + consider using ::wxEVT_UPDATE_UI to ensure that the child state is + always correct or restoring it manually after re-enabling the box. */ virtual bool Enable(bool enable = true); }; diff --git a/src/common/statboxcmn.cpp b/src/common/statboxcmn.cpp index 50f8a932e6..f8f489363b 100644 --- a/src/common/statboxcmn.cpp +++ b/src/common/statboxcmn.cpp @@ -32,6 +32,7 @@ extern WXDLLEXPORT_DATA(const char) wxStaticBoxNameStr[] = "groupBox"; wxStaticBoxBase::wxStaticBoxBase() { m_labelWin = NULL; + m_areChildrenEnabled = true; #ifndef __WXGTK__ m_container.DisableSelfFocus(); @@ -88,47 +89,25 @@ bool wxStaticBoxBase::Enable(bool enable) // also disabled the label control. // // Unfortunately it is _not_ enough to just disable the box and then enable - // the label window as it would still remain disabled under some platforms - // (those where wxHAS_NATIVE_ENABLED_MANAGEMENT is defined, e.g. wxGTK) for - // as long as its parent is disabled. So we avoid disabling the box at all - // in this case and only disable its children, but still pretend that the - // box is disabled by updating its m_isEnabled, as it would be surprising - // if IsEnabled() didn't return false after disabling the box, for example. - // - // Finally note that this really needs to be done only when disabling the - // box and not when re-enabling it, at least for the platforms without - // native enabled state management (e.g. wxMSW) because otherwise we could - // have a bug in the following scenario: - // - // 0. The box is initially enabled - // 1. Its parent gets disabled, calling DoEnable(false) on the box and all - // its children from its NotifyWindowOnEnableChange() (including the - // label). - // 2. The box is itself disabled (for whatever app logic reason). - // 3. The parent gets enabled but this time doesn't do anything with the - // box, because it should continue being disabled. - // 4. The box is re-enabled -- but remains actually disabled as - // DoEnable(true) was never called on it (nor on the label). - // - // To avoid this possibility, we always call the base class version, which - // does call DoEnable(true) on the box itself and all its children, - // including the label, when re-enabling it. - if ( m_labelWin && !enable ) + // the label window as it would still remain disabled for as long as its + // parent is disabled. So we avoid disabling the box at all in this case + // and only disable its children. + if ( m_labelWin ) { - if ( enable == IsThisEnabled() ) + if ( enable == m_areChildrenEnabled ) return false; + m_areChildrenEnabled = enable; + const wxWindowList& children = GetChildren(); for ( wxWindowList::const_iterator i = children.begin(); i != children.end(); ++i ) { if ( *i != m_labelWin ) - (*i)->NotifyWindowOnEnableChange(enable); + (*i)->Enable(enable); } - m_isEnabled = enable; - return true; } #endif // wxHAS_WINDOW_LABEL_IN_STATIC_BOX From 0cd2e4b6cbabfb54484d952d40752798d13ecbd5 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 13:10:10 +0100 Subject: [PATCH 169/916] Don't document wxEVT_ICONIZE as being for wxMSW and wxGTK only It's generated by wxOSX too. Closes #17840. --- interface/wx/event.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/interface/wx/event.h b/interface/wx/event.h index ae1eaeee9a..60e6f98475 100644 --- a/interface/wx/event.h +++ b/interface/wx/event.h @@ -4477,8 +4477,6 @@ public: An event being sent when the frame is iconized (minimized) or restored. - @onlyfor{wxmsw,wxgtk} - @beginEventTable{wxIconizeEvent} @event{EVT_ICONIZE(func)} Process a @c wxEVT_ICONIZE event. From 7ff5e5e749987086954869365f453dc6e21b6c00 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 13:45:31 +0100 Subject: [PATCH 170/916] Regenerate configure after gtk.m4 update This should have been part of 8e35398037c683e44f88ea084c9abbe64e69fafc. --- configure | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/configure b/configure index 4b10f91843..61a4e00d1d 100755 --- a/configure +++ b/configure @@ -21674,7 +21674,7 @@ if ac_fn_c_try_link "$LINENO"; then : echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means GTK+ is incorrectly installed." + echo "*** exact error that occurred. This usually means GTK+ is incorrectly installed." fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext @@ -21821,13 +21821,13 @@ main () exit(1); } - if ((GTK_MAJOR_VERSION != $gtk_config_major_version) || - (GTK_MINOR_VERSION != $gtk_config_minor_version) || - (GTK_MICRO_VERSION != $gtk_config_micro_version)) + if ((gtk_get_major_version() != $gtk_config_major_version) || + (gtk_get_minor_version() != $gtk_config_minor_version) || + (gtk_get_micro_version() != $gtk_config_micro_version)) { printf("\n*** 'pkg-config --modversion gtk+-4.0' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version, - GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); + gtk_get_major_version(), gtk_get_minor_version(), gtk_get_micro_version()); printf ("*** was found! If pkg-config was correct, then it is best\n"); printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n"); printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); @@ -21836,18 +21836,27 @@ main () printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); printf("*** to point to the correct configuration files\n"); } + else if ((gtk_get_major_version() != GTK_MAJOR_VERSION) || + (gtk_get_minor_version() != GTK_MINOR_VERSION) || + (gtk_get_micro_version() != GTK_MICRO_VERSION)) + { + printf("*** GTK+ header files (version %d.%d.%d) do not match\n", + GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); + printf("*** library (version %d.%d.%d)\n", + gtk_get_major_version(), gtk_get_minor_version(), gtk_get_micro_version()); + } else { - if ((GTK_MAJOR_VERSION > major) || - ((GTK_MAJOR_VERSION == major) && (GTK_MINOR_VERSION > minor)) || - ((GTK_MAJOR_VERSION == major) && (GTK_MINOR_VERSION == minor) && (GTK_MICRO_VERSION >= micro))) + if ((gtk_get_major_version() > major) || + ((gtk_get_major_version() == major) && (gtk_get_minor_version() > minor)) || + ((gtk_get_major_version() == major) && (gtk_get_minor_version() == minor) && (gtk_get_micro_version() >= micro))) { return 0; } else { printf("\n*** An old version of GTK+ (%u.%u.%u) was found.\n", - GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); + gtk_get_major_version(), gtk_get_minor_version(), gtk_get_micro_version()); printf("*** You need a version of GTK+ newer than %u.%u.%u. The latest version of\n", major, minor, micro); printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n"); @@ -21906,7 +21915,7 @@ $as_echo "no" >&6; } int main () { - return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); + return ((gtk_get_major_version()) || (gtk_get_minor_version()) || (gtk_get_micro_version())); ; return 0; } @@ -21923,7 +21932,7 @@ if ac_fn_c_try_link "$LINENO"; then : echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means GTK+ is incorrectly installed." + echo "*** exact error that occurred. This usually means GTK+ is incorrectly installed." fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext From bc131194943e69b2e0483cae6d987ff4b9899959 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 13:47:21 +0100 Subject: [PATCH 171/916] Don't check for non-standatd xlocale.h in configure Testing for xlocale.h was due to a misunderstanding, this header wasn't supposed to define locale_t which is defined by locale.h itself and was just some internal glibc header which was removed in its 2.26 release, see https://sourceware.org/glibc/wiki/Release/2.26#Removal_of_.27xlocale.h.27 Stop checking for it in configure and also don't always define wxUSE_XLOCALE but only do it if the configure test succeeded. --- configure | 26 ++++++++++++++------------ configure.in | 18 ++++++++---------- include/wx/xlocale.h | 1 - 3 files changed, 22 insertions(+), 23 deletions(-) diff --git a/configure b/configure index 61a4e00d1d..9c1e4bc12d 100755 --- a/configure +++ b/configure @@ -32907,12 +32907,9 @@ $as_echo "$as_me: WARNING: I18n code requires wxFile... disabled" >&2;} fi if test "$wxUSE_XLOCALE" = "yes" ; then - $as_echo "#define wxUSE_XLOCALE 1" >>confdefs.h - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for complete xlocale" >&5 -$as_echo_n "checking for complete xlocale... " >&6; } -if ${wx_cv_func_strtod_l+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for locale_t" >&5 +$as_echo_n "checking for locale_t... " >&6; } +if ${wx_cv_type_locale_t+:} false; then : $as_echo_n "(cached) " >&6 else @@ -32925,7 +32922,6 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - #include #include #include @@ -32941,9 +32937,9 @@ main () } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : - wx_cv_func_strtod_l=yes + wx_cv_type_locale_t=yes else - wx_cv_func_strtod_l=no + wx_cv_type_locale_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext @@ -32955,12 +32951,18 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $wx_cv_func_strtod_l" >&5 -$as_echo "$wx_cv_func_strtod_l" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $wx_cv_type_locale_t" >&5 +$as_echo "$wx_cv_type_locale_t" >&6; } + + if test "$wx_cv_type_locale_t" = "yes" ; then + $as_echo "#define wxUSE_XLOCALE 1" >>confdefs.h + - if test "$wx_cv_func_strtod_l" = "yes" ; then $as_echo "#define HAVE_LOCALE_T 1" >>confdefs.h + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No locale_t support, wxXLocale won't be available" >&5 +$as_echo "$as_me: WARNING: No locale_t support, wxXLocale won't be available" >&2;} fi fi diff --git a/configure.in b/configure.in index 7b20dff46f..c9a84bb3a6 100644 --- a/configure.in +++ b/configure.in @@ -5757,17 +5757,11 @@ if test "$wxUSE_INTL" = "yes" ; then fi if test "$wxUSE_XLOCALE" = "yes" ; then - AC_DEFINE(wxUSE_XLOCALE) - - dnl even if xlocale.h exists, it may not contain all that - dnl wx needs. check if strtod_l() really is available. - AC_CACHE_CHECK([for complete xlocale], - wx_cv_func_strtod_l, + AC_CACHE_CHECK([for locale_t], wx_cv_type_locale_t, [ AC_LANG_PUSH(C++) AC_TRY_COMPILE( [ - #include #include #include ], @@ -5775,16 +5769,20 @@ if test "$wxUSE_XLOCALE" = "yes" ; then locale_t t; strtod_l(NULL, NULL, t); ], - wx_cv_func_strtod_l=yes, - wx_cv_func_strtod_l=no + wx_cv_type_locale_t=yes, + wx_cv_type_locale_t=no ) AC_LANG_POP() ]) - if test "$wx_cv_func_strtod_l" = "yes" ; then + if test "$wx_cv_type_locale_t" = "yes" ; then + AC_DEFINE(wxUSE_XLOCALE) + dnl We don't test (just) for locale_t existence, but we still define dnl this symbol to avoid changing the existing code using it. AC_DEFINE(HAVE_LOCALE_T) + else + AC_MSG_WARN([No locale_t support, wxXLocale won't be available]) fi fi diff --git a/include/wx/xlocale.h b/include/wx/xlocale.h index 27493974d0..9ade3a99f4 100644 --- a/include/wx/xlocale.h +++ b/include/wx/xlocale.h @@ -41,7 +41,6 @@ #define wxXLOCALE_IDENT(name) _ ## name #elif defined(HAVE_LOCALE_T) #include - #include #include #include From d6b88ca399eeb7c8245491a9ae4d418298564078 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Sat, 20 Jan 2018 16:53:13 +0100 Subject: [PATCH 172/916] Add footer text and icon to wxRichMessageDialog The underlying Windows TaskDialog supports adding an additional footer to the message dialog. This makes the native functionality available and implements it in the generic version. See https://github.com/wxWidgets/wxWidgets/pull/573 --- docs/changes.txt | 1 + include/wx/richmsgdlg.h | 15 +++++++++++- interface/wx/richmsgdlg.h | 48 +++++++++++++++++++++++++++++++++++++ samples/dialogs/dialogs.cpp | 47 ++++++++++++++++++++++++++++++++++++ samples/dialogs/dialogs.h | 2 ++ src/generic/richmsgdlgg.cpp | 23 ++++++++++++++++++ src/msw/richmsgdlg.cpp | 21 ++++++++++++++++ 7 files changed, 156 insertions(+), 1 deletion(-) diff --git a/docs/changes.txt b/docs/changes.txt index 3867505ef1..c60379766e 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -172,6 +172,7 @@ All (GUI): - Ensure that navigation order reflects layout of wxStdDialogButtonSizer. - Add Scintilla FineTicker methods to wxSTC (NewPagodi). - Add wxFontPickerCtrl::SetMinPointSize() (Andreas Falkenhahn). +- Add Set/GetFooter/Text/Icon() to wxRichMessageDialog (Tobias Taschner) wxGTK: diff --git a/include/wx/richmsgdlg.h b/include/wx/richmsgdlg.h index ab49af7d00..53812e0e6d 100644 --- a/include/wx/richmsgdlg.h +++ b/include/wx/richmsgdlg.h @@ -28,7 +28,8 @@ public: : wxGenericMessageDialog( parent, message, caption, style ), m_detailsExpanderCollapsedLabel( wxGetTranslation("&See details") ), m_detailsExpanderExpandedLabel( wxGetTranslation("&Hide details") ), - m_checkBoxValue( false ) + m_checkBoxValue( false ), + m_footerIcon( 0 ) { } void ShowCheckBox(const wxString& checkBoxText, bool checked = false) @@ -46,6 +47,16 @@ public: virtual bool IsCheckBoxChecked() const { return m_checkBoxValue; } + void SetFooterText(const wxString& footerText) + { m_footerText = footerText; } + + wxString GetFooterText() const { return m_footerText; } + + void SetFooterIcon(int icon) + { m_footerIcon = icon; } + + int GetFooterIcon() const { return m_footerIcon; } + protected: const wxString m_detailsExpanderCollapsedLabel; const wxString m_detailsExpanderExpandedLabel; @@ -53,6 +64,8 @@ protected: wxString m_checkBoxText; bool m_checkBoxValue; wxString m_detailedText; + wxString m_footerText; + int m_footerIcon; private: void ShowDetails(bool shown); diff --git a/interface/wx/richmsgdlg.h b/interface/wx/richmsgdlg.h index c80462f3e6..649e0ae4d4 100644 --- a/interface/wx/richmsgdlg.h +++ b/interface/wx/richmsgdlg.h @@ -107,6 +107,54 @@ public: */ wxString GetDetailedText() const; + /** + Shows or hides a footer text that is used at the bottom of + the dialog together with an optional icon. + + @param footerText + The footer text if empty no footer text will be used. + + @see SetFooterIcon(), GetFooterText() + + @since 3.1.1 + */ + void SetFooterText(const wxString& footerText); + + /** + Retrieves the footer text. + + @return + The footer text or empty if footer text is not used. + + @since 3.1.1 + */ + wxString GetFooterText() const; + + /** + Specify the footer icon set together with the footer text. + + Valid values are @c wxICON_INFORMATION, @c wxICON_WARNING, + @c wxICON_AUTH_NEEDED and @c wxICON_ERROR (notice that + @c wxICON_QUESTION is not allowed here). + + @see GetFooterIcon(), SetFooterText() + + @since 3.1.1 + */ + void SetFooterIcon(int icon); + + /** + Retrieves the footer icon. + + @return + The footer icon or 0 if footer icon is not used. + + @see SetFooterIcon() + + @since 3.1.1 + */ + int GetFooterIcon() const; + /** Retrieves the state of the checkbox. diff --git a/samples/dialogs/dialogs.cpp b/samples/dialogs/dialogs.cpp index 899d50d058..c0ea4641a3 100644 --- a/samples/dialogs/dialogs.cpp +++ b/samples/dialogs/dialogs.cpp @@ -3892,6 +3892,34 @@ void TestRichMessageDialog::AddAdditionalTextOptions(wxSizer *sizer) wxTE_MULTILINE); sizerMsgs->Add(m_textDetailed, wxSizerFlags().Expand()); + // add option to show footer text + wxSizer * const sizerFooter = new wxBoxSizer(wxHORIZONTAL); + sizerFooter->Add(new wxStaticText(this, wxID_ANY, "&Footer Text:"), + wxSizerFlags().Centre().Border(wxRIGHT)); + m_textFooter = new wxTextCtrl(this, wxID_ANY); + sizerFooter->Add(m_textFooter, wxSizerFlags(1).Centre()); + + // add option to select footer icon + const wxString icons[] = + { + "None", + "Info", + "Warning", + "Error", + "Auth needed" + }; + + sizerFooter->Add(new wxStaticText(this, wxID_ANY, "Icon:"), + wxSizerFlags().Centre().Border(wxLEFT)); + m_iconsFooter = new wxChoice(this, wxID_ANY, + wxDefaultPosition, wxDefaultSize, + WXSIZEOF(icons), icons); + // Make the None the default: + m_iconsFooter->SetSelection(0); + sizerFooter->Add(m_iconsFooter, wxSizerFlags().Expand().Border()); + + sizerMsgs->Add(sizerFooter, wxSizerFlags().Expand().Border(wxTOP)); + sizer->Add(sizerMsgs, wxSizerFlags().Expand().Border()); } @@ -3912,6 +3940,25 @@ void TestRichMessageDialog::OnApply(wxCommandEvent& WXUNUSED(event)) dlg.ShowCheckBox(m_textCheckBox->GetValue(), m_initialValueCheckBox->GetValue()); dlg.ShowDetailedText(m_textDetailed->GetValue()); + dlg.SetFooterText(m_textFooter->GetValue()); + switch ( m_iconsFooter->GetSelection() ) + { + case 1: + dlg.SetFooterIcon(wxICON_INFORMATION); + break; + + case 2: + dlg.SetFooterIcon(wxICON_WARNING); + break; + + case 3: + dlg.SetFooterIcon(wxICON_ERROR); + break; + + case 4: + dlg.SetFooterIcon(wxICON_AUTH_NEEDED); + break; + } ShowResult(dlg.ShowModal()); } diff --git a/samples/dialogs/dialogs.h b/samples/dialogs/dialogs.h index a7df5878b5..45063772cb 100644 --- a/samples/dialogs/dialogs.h +++ b/samples/dialogs/dialogs.h @@ -268,6 +268,8 @@ private: wxTextCtrl *m_textCheckBox; wxCheckBox *m_initialValueCheckBox; wxTextCtrl *m_textDetailed; + wxTextCtrl *m_textFooter; + wxChoice *m_iconsFooter; wxDECLARE_EVENT_TABLE(); }; diff --git a/src/generic/richmsgdlgg.cpp b/src/generic/richmsgdlgg.cpp index c74e380f57..ed9a5d9717 100644 --- a/src/generic/richmsgdlgg.cpp +++ b/src/generic/richmsgdlgg.cpp @@ -18,12 +18,15 @@ #ifndef WX_PRECOMP #include "wx/checkbox.h" + #include "wx/statbmp.h" #include "wx/stattext.h" #include "wx/sizer.h" #endif #include "wx/collpane.h" #include "wx/richmsgdlg.h" +#include "wx/statline.h" +#include "wx/artprov.h" wxIMPLEMENT_CLASS(wxRichMessageDialog, wxDialog) @@ -77,6 +80,26 @@ void wxGenericRichMessageDialog::AddMessageDialogDetails(wxSizer *sizer) sizerDetails->Add( m_detailsPane, wxSizerFlags().Right().Expand() ); sizer->Add( sizerDetails, 0, wxTOP|wxLEFT|wxRIGHT | wxALIGN_LEFT, 10 ); } + + if ( !m_footerText.empty() ) + { + // add footer + sizer->Add( new wxStaticLine(this), wxSizerFlags().Expand().Border() ); + wxSizer *footerSizer = new wxBoxSizer(wxHORIZONTAL); + if (m_footerIcon) + { + wxSize iconSize = wxArtProvider::GetNativeSizeHint(wxART_MENU); + + wxStaticBitmap* footerIcon = new wxStaticBitmap(this, wxID_ANY, + wxArtProvider::GetIcon(wxArtProvider::GetMessageBoxIconId(m_footerIcon), + wxART_MESSAGE_BOX, iconSize)); + footerSizer->Add( footerIcon, + wxSizerFlags().Border(wxLEFT|wxRIGHT).CenterVertical() ); + } + footerSizer->Add( new wxStaticText(this, wxID_ANY, m_footerText), + wxSizerFlags().CenterVertical() ); + sizer->Add( footerSizer, wxSizerFlags().Border().Expand() ); + } } bool wxGenericRichMessageDialog::IsCheckBoxChecked() const diff --git a/src/msw/richmsgdlg.cpp b/src/msw/richmsgdlg.cpp index 5a97225887..5415bc16fe 100644 --- a/src/msw/richmsgdlg.cpp +++ b/src/msw/richmsgdlg.cpp @@ -58,6 +58,27 @@ int wxRichMessageDialog::ShowModal() if ( !m_detailedText.empty() ) tdc.pszExpandedInformation = m_detailedText.t_str(); + // Add footer text + if ( !m_footerText.empty() ) + { + tdc.pszFooter = m_footerText.t_str(); + switch ( m_footerIcon ) + { + case wxICON_INFORMATION: + tdc.pszFooterIcon = TD_INFORMATION_ICON; + break; + case wxICON_WARNING: + tdc.pszFooterIcon = TD_WARNING_ICON; + break; + case wxICON_ERROR: + tdc.pszFooterIcon = TD_ERROR_ICON; + break; + case wxICON_AUTH_NEEDED: + tdc.pszFooterIcon = TD_SHIELD_ICON; + break; + } + } + TaskDialogIndirect_t taskDialogIndirect = GetTaskDialogIndirectFunc(); if ( !taskDialogIndirect ) return wxID_CANCEL; From 5c0dfcd5aeef7dd9dd6a9f7b5b5d871a8517ac48 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 17:28:20 +0100 Subject: [PATCH 173/916] Fix extra wxEVT_COLLAPSIBLEPANE_CHANGED with wxCP_NO_TLW_RESIZE A pane using wxCP_NO_TLW_RESIZE would generate wxCollapsiblePaneEvent even when toggled from a program because the GTK+ callback didn't take m_bIgnoreNextChange flag into account in this case. Fix this and also avoid duplicating the code for sending the event. --- src/gtk/collpane.cpp | 53 +++++++++++++++++++------------------------- 1 file changed, 23 insertions(+), 30 deletions(-) diff --git a/src/gtk/collpane.cpp b/src/gtk/collpane.cpp index 9d67ea4ca6..a2007f6662 100644 --- a/src/gtk/collpane.cpp +++ b/src/gtk/collpane.cpp @@ -99,40 +99,33 @@ gtk_collapsiblepane_expanded_callback(GObject * WXUNUSED(object), // (redraw/relayout/resize) so that it's flicker-free p->SetMinSize(sz); - if (p->HasFlag(wxCP_NO_TLW_RESIZE)) + if (!p->HasFlag(wxCP_NO_TLW_RESIZE)) { - // fire an event - wxCollapsiblePaneEvent ev(p, p->GetId(), p->IsCollapsed()); - p->HandleWindowEvent(ev); - - // the user asked to explicitly handle the resizing itself... - return; - } - - wxTopLevelWindow * - top = wxDynamicCast(wxGetTopLevelParent(p), wxTopLevelWindow); - if ( top && top->GetSizer() ) - { - // 2) recalculate minimal size of the top window - sz = top->GetSizer()->CalcMin(); - - if (top->m_mainWidget) + wxTopLevelWindow * + top = wxDynamicCast(wxGetTopLevelParent(p), wxTopLevelWindow); + if ( top && top->GetSizer() ) { - // 3) MAGIC HACK: if you ever used GtkExpander in a GTK+ program - // you know that this magic call is required to make it possible - // to shrink the top level window in the expanded->collapsed - // transition. This may be sometimes undesired but *is* - // necessary and if you look carefully, all GTK+ programs using - // GtkExpander perform this trick (e.g. the standard "open file" - // dialog of GTK+>=2.4 is not resizable when the expander is - // collapsed!) - gtk_window_set_resizable (GTK_WINDOW (top->m_widget), p->IsExpanded()); + // 2) recalculate minimal size of the top window + sz = top->GetSizer()->CalcMin(); - // 4) set size hints - top->SetMinClientSize(sz); + if (top->m_mainWidget) + { + // 3) MAGIC HACK: if you ever used GtkExpander in a GTK+ program + // you know that this magic call is required to make it possible + // to shrink the top level window in the expanded->collapsed + // transition. This may be sometimes undesired but *is* + // necessary and if you look carefully, all GTK+ programs using + // GtkExpander perform this trick (e.g. the standard "open file" + // dialog of GTK+>=2.4 is not resizable when the expander is + // collapsed!) + gtk_window_set_resizable (GTK_WINDOW (top->m_widget), p->IsExpanded()); - // 5) set size - top->SetClientSize(sz); + // 4) set size hints + top->SetMinClientSize(sz); + + // 5) set size + top->SetClientSize(sz); + } } } From c63d47bc9451daf2e2509fe400a13d2e547fbdaa Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 18:07:23 +0100 Subject: [PATCH 174/916] Fix broken resize handling in wxGTK wxCollapsiblePane Almost totally rewrite the resize-after-toggle code in this control so that it actually makes sense and works, especially in the situations when the contents of wxCollapsiblePane changes, for example when it contains another wxCollapsiblePane inside it which can be collapsed or expanded. Previously, this didn't work at all in wxGTK and the inner pane always remained at its minimal, collapsed size. Now it does, after doing the following: First, replace the completely useless DoGetBestSize() which just did the same thing as its base class implementation with the code actually determining the best size of the window that was previously hidden inside gtk_collapsiblepane_expanded_callback() for some reason. Note that the comment about "not caching the best size" in the old code was very out of date and was probably left over from the days when GetBestSize() itself was virtual, as caching is not done in DoGetBestSize() anyhow, but in GetBestSize() itself. So, second, do fix the best size invalidation by doing it explicitly whenever the pane is toggled. And, relatedly, do not set the min size of anything because this overrides the layout computations and is never reset/invalidated, unlike the best size, even if the best size of the pane changes, e.g. because of a change to its contents. Finally, remove many thoroughly outdated comments, e.g. the one speaking about OnStateChange() which doesn't exist at all in this implementation. --- src/gtk/collpane.cpp | 84 +++++++++++++++----------------------------- 1 file changed, 29 insertions(+), 55 deletions(-) diff --git a/src/gtk/collpane.cpp b/src/gtk/collpane.cpp index a2007f6662..e02c0be1da 100644 --- a/src/gtk/collpane.cpp +++ b/src/gtk/collpane.cpp @@ -51,62 +51,28 @@ gtk_collapsiblepane_expanded_callback(GObject * WXUNUSED(object), GParamSpec * WXUNUSED(param_spec), wxCollapsiblePane *p) { - // NB: unlike for the "activate" signal, when this callback is called, if - // we try to query the "collapsed" status through p->IsCollapsed(), we - // get the right value. I.e. here p->IsCollapsed() will return false if - // this callback has been called at the end of a collapsed->expanded - // transition and viceversa. Inside the "activate" signal callback - // p->IsCollapsed() would return the wrong value! - - wxSize sz; - if ( p->IsExpanded() ) - { - // NB: we cannot use the p->GetBestSize() or p->GetMinSize() functions - // here as they would return the size for the collapsed expander - // even if the collapsed->expanded transition has already been - // completed; we solve this problem doing: - - sz = p->m_szCollapsed; - - wxSize panesz = p->GetPane()->GetBestSize(); - sz.x = wxMax(sz.x, panesz.x); - sz.y += gtk_expander_get_spacing(GTK_EXPANDER(p->m_widget)) + panesz.y; - } - else // collapsed - { - // same problem described above: using p->Get[Best|Min]Size() here we - // would get the size of the control when it is expanded even if the - // expanded->collapsed transition should be complete now... - // So, we use the size cached at control-creation time... - sz = p->m_szCollapsed; - } - - // VERY IMPORTANT: - // just calling - // p->OnStateChange(sz); - // here would work work BUT: - // 1) in the expanded->collapsed transition it provokes a lot of flickering - // 2) in the collapsed->expanded transition using the "Change status" wxButton - // in samples/collpane application some strange warnings would be generated - // by the "clearlooks" theme, if that's your theme. - // - // So we prefer to use some GTK+ native optimized calls, which prevent too many resize - // calculations to happen. Note that the following code has been very carefully designed - // and tested - be VERY careful when changing it! - - // 1) need to update our size hints - // NB: this function call won't actually do any long operation - // (redraw/relayout/resize) so that it's flicker-free - p->SetMinSize(sz); + // When the pane is expanded or collapsed, its best size changes, so it + // needs to be invalidated in any case. + p->InvalidateBestSize(); if (!p->HasFlag(wxCP_NO_TLW_RESIZE)) { wxTopLevelWindow * top = wxDynamicCast(wxGetTopLevelParent(p), wxTopLevelWindow); + + // If we want to automatically resize the entire TLW to adopt to the + // new pane size, we also need to invalidate the cached best sizes of + // all the intermediate windows to ensure that it's recalculated + // correctly when doing the layout below. + for ( wxWindow* w = p->GetParent(); w != top; w = w->GetParent() ) + { + w->InvalidateBestSize(); + } + if ( top && top->GetSizer() ) { // 2) recalculate minimal size of the top window - sz = top->GetSizer()->CalcMin(); + const wxSize sz = top->GetSizer()->CalcMin(); if (top->m_mainWidget) { @@ -184,9 +150,10 @@ bool wxCollapsiblePane::Create(wxWindow *parent, gtk_expander_new_with_mnemonic(wxGTK_CONV(GTKConvertMnemonics(label))); g_object_ref(m_widget); - // see the gtk_collapsiblepane_expanded_callback comments to understand why - // we connect to the "notify::expanded" signal instead of the more common - // "activate" one + // Connect to the "notify::expanded" signal instead of the more common + // "activate" one in order to use the new state in our callback, which is + // more convenient e.g. because calling GetBestSize() returns the suitable + // size for the new state. g_signal_connect(m_widget, "notify::expanded", G_CALLBACK(gtk_collapsiblepane_expanded_callback), this); @@ -204,7 +171,7 @@ bool wxCollapsiblePane::Create(wxWindow *parent, m_pPane->SetBackgroundColour(bg); // remember the size of this control when it's collapsed - m_szCollapsed = GetBestSize(); + m_szCollapsed = GTKGetPreferredSize(m_widget); return true; } @@ -213,9 +180,16 @@ wxSize wxCollapsiblePane::DoGetBestSize() const { wxASSERT_MSG( m_widget, wxT("DoGetBestSize called before creation") ); - // notice that we do not cache our best size here as it changes - // all times the user expands/hide our pane - return GTKGetPreferredSize(m_widget); + wxSize sz = m_szCollapsed; + + if ( IsExpanded() ) + { + const wxSize panesz = m_pPane->GetBestSize(); + sz.x = wxMax(sz.x, panesz.x); + sz.y += gtk_expander_get_spacing(GTK_EXPANDER(m_widget)) + panesz.y; + } + + return sz; } void wxCollapsiblePane::Collapse(bool collapse) From 678d1142b44b5ffea684254a84d177cd4bbc1eda Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 21 Jan 2018 16:23:15 +0100 Subject: [PATCH 175/916] Fix typo in EVT_LIST_BEGIN_LABEL_EDIT in the documentation "LIST" part was somehow forgotten. Closes #18051. --- interface/wx/listctrl.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/wx/listctrl.h b/interface/wx/listctrl.h index e853e13a82..bd6bbad11a 100644 --- a/interface/wx/listctrl.h +++ b/interface/wx/listctrl.h @@ -200,7 +200,7 @@ enum @event{EVT_LIST_BEGIN_RDRAG(id, func)} Begin dragging with the right mouse button. Processes a @c wxEVT_LIST_BEGIN_RDRAG event type. - @event{EVT_BEGIN_LABEL_EDIT(id, func)} + @event{EVT_LIST_BEGIN_LABEL_EDIT(id, func)} Begin editing a label. This can be prevented by calling Veto(). Processes a @c wxEVT_LIST_BEGIN_LABEL_EDIT event type. @event{EVT_LIST_END_LABEL_EDIT(id, func)} From e723bb2ee485aec50ab2595ae976ec573796a59e Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 21 Jan 2018 16:49:26 +0100 Subject: [PATCH 176/916] Try to fix macOS build using cmake after xlocale changes Commit bc131194943e69b2e0483cae6d987ff4b9899959 removed the inclusion of xlocale.h because it is not (and never was) needed under Linux with glibc, but it is still needed under macOS, so this (silently) disabled wxXLocale support under Mac when using configure and broke the build when using cmake. Fix both problems by using xlocale.h only if it's available, both in configure and in cmake. --- build/cmake/setup.cmake | 1 + build/cmake/setup.h.in | 3 ++ configure | 107 ++++++++++++++++++++++++++++++++++++++++ configure.in | 7 +++ include/wx/xlocale.h | 5 ++ setup.h.in | 3 ++ 6 files changed, 126 insertions(+) diff --git a/build/cmake/setup.cmake b/build/cmake/setup.cmake index 9e0e4d24d4..a21a2449a8 100644 --- a/build/cmake/setup.cmake +++ b/build/cmake/setup.cmake @@ -649,6 +649,7 @@ if(wxUSE_FSWATCHER) endif() if(wxUSE_XLOCALE) + check_include_file(xlocale.h HAVE_XLOCALE_H) set(CMAKE_EXTRA_INCLUDE_FILES xlocale.h locale.h) check_type_size(locale_t LOCALE_T) set(CMAKE_EXTRA_INCLUDE_FILES) diff --git a/build/cmake/setup.h.in b/build/cmake/setup.h.in index ab342723f1..4f244d7da4 100644 --- a/build/cmake/setup.h.in +++ b/build/cmake/setup.h.in @@ -1257,6 +1257,9 @@ /* Define if setpriority() is available. */ #cmakedefine HAVE_SETPRIORITY 1 +/* Define if xlocale.h header file exists. */ +#cmakedefine HAVE_XLOCALE_H 1 + /* Define if locale_t is available */ #cmakedefine HAVE_LOCALE_T 1 diff --git a/configure b/configure index 9c1e4bc12d..7266ef5019 100755 --- a/configure +++ b/configure @@ -3217,6 +3217,97 @@ fi as_fn_set_status $ac_retval } # ac_fn_cxx_try_run + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## -------------------------------------- ## +## Report this to wx-dev@googlegroups.com ## +## -------------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_mongrel cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. @@ -32907,6 +32998,19 @@ $as_echo "$as_me: WARNING: I18n code requires wxFile... disabled" >&2;} fi if test "$wxUSE_XLOCALE" = "yes" ; then + for ac_header in xlocale.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "xlocale.h" "ac_cv_header_xlocale_h" "$ac_includes_default" +if test "x$ac_cv_header_xlocale_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_XLOCALE_H 1 +_ACEOF + +fi + +done + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for locale_t" >&5 $as_echo_n "checking for locale_t... " >&6; } if ${wx_cv_type_locale_t+:} false; then : @@ -32922,6 +33026,9 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ + #ifdef HAVE_XLOCALE_H + #include + #endif #include #include diff --git a/configure.in b/configure.in index c9a84bb3a6..5af395548d 100644 --- a/configure.in +++ b/configure.in @@ -5757,11 +5757,18 @@ if test "$wxUSE_INTL" = "yes" ; then fi if test "$wxUSE_XLOCALE" = "yes" ; then + dnl Some platforms (e.g. macOS) require an extra header, others (Linux) + dnl don't, but it's simpler to just check for it under all of them. + AC_CHECK_HEADERS([xlocale.h]) + AC_CACHE_CHECK([for locale_t], wx_cv_type_locale_t, [ AC_LANG_PUSH(C++) AC_TRY_COMPILE( [ + #ifdef HAVE_XLOCALE_H + #include + #endif #include #include ], diff --git a/include/wx/xlocale.h b/include/wx/xlocale.h index 9ade3a99f4..476a3a737e 100644 --- a/include/wx/xlocale.h +++ b/include/wx/xlocale.h @@ -40,6 +40,11 @@ typedef _locale_t wxXLocale_t; #define wxXLOCALE_IDENT(name) _ ## name #elif defined(HAVE_LOCALE_T) + // Some systems (notably macOS) require including a separate header for + // locale_t and related functions. + #ifdef HAVE_XLOCALE_H + #include + #endif #include #include #include diff --git a/setup.h.in b/setup.h.in index 1f1955ad4c..981b45e1da 100644 --- a/setup.h.in +++ b/setup.h.in @@ -1267,6 +1267,9 @@ /* Define if setpriority() is available. */ #undef HAVE_SETPRIORITY +/* Define if xlocale.h header file exists. */ +#undef HAVE_XLOCALE_H + /* Define if locale_t is available */ #undef HAVE_LOCALE_T From aae23be946fca2ff7b57da5af97f04fe77e1f857 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Sun, 21 Jan 2018 17:33:50 +0100 Subject: [PATCH 177/916] Fixing xcode build after xlocale.h include change see commit e723bb2ee485aec50ab2595ae976ec573796a59e --- include/wx/osx/config_xcode.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/wx/osx/config_xcode.h b/include/wx/osx/config_xcode.h index 56aef33402..c9f3922de4 100644 --- a/include/wx/osx/config_xcode.h +++ b/include/wx/osx/config_xcode.h @@ -121,6 +121,7 @@ #define HAVE_GETPWUID_R 1 #define HAVE_GETGRGID_R 1 #define HAVE_LOCALE_T 1 +#define HAVE_XLOCALE_H 1 #define wxHAS_KQUEUE 1 #define PACKAGE_BUGREPORT "wx-dev@googlegroups.com" From ce90336dffdeb8ae1efdae9842574f12bbad90d5 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Sun, 21 Jan 2018 20:41:52 +0100 Subject: [PATCH 178/916] Fixing popup windows with a modal dialog as parent When having a certain creation sequence, these popup windows were not focused correctly, see https://github.com/wxWidgets/wxWidgets/pull/672 , commit d2265136e359df4d14054860a68bbc7f4910279d , revert this change if problems arise to see whether this is a recursion --- include/wx/osx/cocoa/private.h | 4 +++ src/osx/cocoa/nonownedwnd.mm | 62 ++++++++++++++++++++-------------- 2 files changed, 41 insertions(+), 25 deletions(-) diff --git a/include/wx/osx/cocoa/private.h b/include/wx/osx/cocoa/private.h index db182e4479..07402e06d1 100644 --- a/include/wx/osx/cocoa/private.h +++ b/include/wx/osx/cocoa/private.h @@ -288,6 +288,10 @@ protected : CGWindowLevel m_macWindowLevel; WXWindow m_macWindow; void * m_macFullScreenData ; + +private: + void SetUpForModalParent(); + wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxNonOwnedWindowCocoaImpl); }; diff --git a/src/osx/cocoa/nonownedwnd.mm b/src/osx/cocoa/nonownedwnd.mm index 735ed8f5e4..9291601699 100644 --- a/src/osx/cocoa/nonownedwnd.mm +++ b/src/osx/cocoa/nonownedwnd.mm @@ -733,31 +733,9 @@ long style, long extraStyle, const wxString& WXUNUSED(name) ) [[m_macWindow standardWindowButton:NSWindowMiniaturizeButton] setHidden:YES]; } - // If the parent is modal, windows with wxFRAME_FLOAT_ON_PARENT style need - // to be in NSModalPanelWindowLevel and not NSFloatingWindowLevel to stay - // above the parent. - wxDialog * const parentDialog = parent == NULL ? NULL : wxDynamicCast(parent->MacGetTopLevelWindow(), wxDialog); - if (parentDialog && parentDialog->IsModal()) - { - if (level == NSFloatingWindowLevel) - { - level = NSModalPanelWindowLevel; - } - - // Cocoa's modal loop does not process other windows by default, but - // don't call this on normal window levels so nested modal dialogs will - // still behave modally. - if (level != NSNormalWindowLevel) - { - if ([m_macWindow isKindOfClass:[NSPanel class]]) - { - [(NSPanel*)m_macWindow setWorksWhenModal:YES]; - } - } - } - - [m_macWindow setLevel:level]; m_macWindowLevel = level; + SetUpForModalParent(); + [m_macWindow setLevel:m_macWindowLevel]; [m_macWindow setDelegate:controller]; @@ -791,8 +769,41 @@ void wxNonOwnedWindowCocoaImpl::Lower() [m_macWindow orderWindow:NSWindowBelow relativeTo:0]; } +void wxNonOwnedWindowCocoaImpl::SetUpForModalParent() +{ + wxNonOwnedWindow* wxpeer = GetWXPeer(); + if (wxpeer) + { + // If the parent is modal, windows with wxFRAME_FLOAT_ON_PARENT style need + // to be in NSModalPanelWindowLevel and not NSFloatingWindowLevel to stay + // above the parent. + wxDialog* const parentDialog = wxDynamicCast(wxGetTopLevelParent(wxpeer->GetParent()), wxDialog); + if (parentDialog && parentDialog->IsModal()) + { + if (m_macWindowLevel == NSFloatingWindowLevel) + { + m_macWindowLevel = NSModalPanelWindowLevel; + if ([m_macWindow level] == NSFloatingWindowLevel) + [m_macWindow setLevel:m_macWindowLevel]; + } + + // Cocoa's modal loop does not process other windows by default, but + // don't call this on normal window levels so nested modal dialogs will + // still behave modally. + if (m_macWindowLevel != NSNormalWindowLevel) + { + if ([m_macWindow isKindOfClass:[NSPanel class]]) + { + [(NSPanel*)m_macWindow setWorksWhenModal:YES]; + } + } + } + } +} + void wxNonOwnedWindowCocoaImpl::ShowWithoutActivating() { + SetUpForModalParent(); [m_macWindow orderFront:nil]; [[m_macWindow contentView] setNeedsDisplay: YES]; } @@ -826,7 +837,8 @@ bool wxNonOwnedWindowCocoaImpl::Show(bool show) } } - if (!(wxpeer->GetWindowStyle() & wxFRAME_TOOL_WINDOW)) + SetUpForModalParent(); + if (!(wxpeer->GetWindowStyle() & wxFRAME_TOOL_WINDOW)) [m_macWindow makeKeyAndOrderFront:nil]; else [m_macWindow orderFront:nil]; From ddceaab001a6c9459af84f3937e99fa9b8dc755a Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Fri, 27 Oct 2017 20:55:40 +0200 Subject: [PATCH 179/916] Remove MSW wxUxThemeEngine class This undocumented "private" class was used for various windows UxTheme functions which are available since WinXP. As wxWidgets 3.1 is XP+ it does not make sense anymore to load the theme functions dynamically. --- Makefile.in | 1 - build/bakefiles/common.bkl | 1 + build/bakefiles/files.bkl | 1 - build/cmake/files.cmake | 1 - build/files | 1 - build/msw/makefile.bcc | 34 ++-- build/msw/makefile.gcc | 34 ++-- build/msw/wx_core.vcxproj | 1 - build/msw/wx_core.vcxproj.filters | 3 - build/msw/wx_vc7_core.vcproj | 3 - build/msw/wx_vc8_core.vcproj | 4 - build/msw/wx_vc9_core.vcproj | 4 - configure | 2 +- configure.in | 2 +- demos/bombs/makefile.bcc | 2 +- demos/bombs/makefile.gcc | 2 +- demos/forty/makefile.bcc | 2 +- demos/forty/makefile.gcc | 2 +- demos/fractal/makefile.bcc | 2 +- demos/fractal/makefile.gcc | 2 +- demos/life/makefile.bcc | 2 +- demos/life/makefile.gcc | 2 +- demos/poem/makefile.bcc | 2 +- demos/poem/makefile.gcc | 2 +- docs/changes.txt | 9 +- include/wx/msw/libraries.h | 5 + include/wx/msw/uxtheme.h | 223 +-------------------------- include/wx/msw/uxthemep.h | 169 -------------------- samples/access/makefile.bcc | 2 +- samples/access/makefile.gcc | 2 +- samples/animate/makefile.bcc | 2 +- samples/animate/makefile.gcc | 2 +- samples/artprov/makefile.bcc | 2 +- samples/artprov/makefile.gcc | 2 +- samples/aui/makefile.bcc | 2 +- samples/aui/makefile.gcc | 2 +- samples/calendar/makefile.bcc | 2 +- samples/calendar/makefile.gcc | 2 +- samples/caret/makefile.bcc | 2 +- samples/caret/makefile.gcc | 2 +- samples/clipboard/makefile.bcc | 2 +- samples/clipboard/makefile.gcc | 2 +- samples/collpane/makefile.bcc | 2 +- samples/collpane/makefile.gcc | 2 +- samples/combo/makefile.bcc | 2 +- samples/combo/makefile.gcc | 2 +- samples/config/makefile.bcc | 2 +- samples/config/makefile.gcc | 2 +- samples/console/makefile.bcc | 2 +- samples/console/makefile.gcc | 2 +- samples/dataview/makefile.bcc | 2 +- samples/dataview/makefile.gcc | 2 +- samples/debugrpt/makefile.bcc | 2 +- samples/debugrpt/makefile.gcc | 2 +- samples/dialogs/makefile.bcc | 2 +- samples/dialogs/makefile.gcc | 2 +- samples/dialup/makefile.bcc | 2 +- samples/dialup/makefile.gcc | 2 +- samples/display/makefile.bcc | 2 +- samples/display/makefile.gcc | 2 +- samples/dll/makefile.bcc | 4 +- samples/dll/makefile.gcc | 4 +- samples/dnd/makefile.bcc | 2 +- samples/dnd/makefile.gcc | 2 +- samples/docview/makefile.bcc | 2 +- samples/docview/makefile.gcc | 2 +- samples/dragimag/makefile.bcc | 2 +- samples/dragimag/makefile.gcc | 2 +- samples/drawing/makefile.bcc | 2 +- samples/drawing/makefile.gcc | 2 +- samples/erase/makefile.bcc | 2 +- samples/erase/makefile.gcc | 2 +- samples/event/makefile.bcc | 2 +- samples/event/makefile.gcc | 2 +- samples/except/makefile.bcc | 2 +- samples/except/makefile.gcc | 2 +- samples/exec/makefile.bcc | 2 +- samples/exec/makefile.gcc | 2 +- samples/font/makefile.bcc | 2 +- samples/font/makefile.gcc | 2 +- samples/fswatcher/makefile.bcc | 2 +- samples/fswatcher/makefile.gcc | 2 +- samples/grid/makefile.bcc | 2 +- samples/grid/makefile.gcc | 2 +- samples/help/makefile.bcc | 2 +- samples/help/makefile.gcc | 2 +- samples/htlbox/makefile.bcc | 2 +- samples/htlbox/makefile.gcc | 2 +- samples/html/about/makefile.bcc | 2 +- samples/html/about/makefile.gcc | 2 +- samples/html/help/makefile.bcc | 2 +- samples/html/help/makefile.gcc | 2 +- samples/html/helpview/makefile.bcc | 2 +- samples/html/helpview/makefile.gcc | 2 +- samples/html/printing/makefile.bcc | 2 +- samples/html/printing/makefile.gcc | 2 +- samples/html/test/makefile.bcc | 2 +- samples/html/test/makefile.gcc | 2 +- samples/html/virtual/makefile.bcc | 2 +- samples/html/virtual/makefile.gcc | 2 +- samples/html/widget/makefile.bcc | 2 +- samples/html/widget/makefile.gcc | 2 +- samples/html/zip/makefile.bcc | 2 +- samples/html/zip/makefile.gcc | 2 +- samples/image/makefile.bcc | 2 +- samples/image/makefile.gcc | 2 +- samples/internat/makefile.bcc | 2 +- samples/internat/makefile.gcc | 2 +- samples/ipc/makefile.bcc | 8 +- samples/ipc/makefile.gcc | 8 +- samples/joytest/makefile.bcc | 2 +- samples/joytest/makefile.gcc | 2 +- samples/keyboard/makefile.bcc | 2 +- samples/keyboard/makefile.gcc | 2 +- samples/layout/makefile.bcc | 2 +- samples/layout/makefile.gcc | 2 +- samples/listctrl/makefile.bcc | 2 +- samples/listctrl/makefile.gcc | 2 +- samples/mdi/makefile.bcc | 2 +- samples/mdi/makefile.gcc | 2 +- samples/mediaplayer/makefile.bcc | 2 +- samples/mediaplayer/makefile.gcc | 2 +- samples/memcheck/makefile.bcc | 2 +- samples/memcheck/makefile.gcc | 2 +- samples/menu/makefile.bcc | 2 +- samples/menu/makefile.gcc | 2 +- samples/minimal/makefile.bcc | 2 +- samples/minimal/makefile.gcc | 2 +- samples/nativdlg/makefile.bcc | 2 +- samples/nativdlg/makefile.gcc | 2 +- samples/notebook/makefile.bcc | 2 +- samples/notebook/makefile.gcc | 2 +- samples/oleauto/makefile.bcc | 2 +- samples/oleauto/makefile.gcc | 2 +- samples/opengl/cube/makefile.bcc | 2 +- samples/opengl/cube/makefile.gcc | 2 +- samples/opengl/isosurf/makefile.bcc | 2 +- samples/opengl/isosurf/makefile.gcc | 2 +- samples/opengl/penguin/makefile.bcc | 2 +- samples/opengl/penguin/makefile.gcc | 2 +- samples/opengl/pyramid/makefile.bcc | 2 +- samples/opengl/pyramid/makefile.gcc | 2 +- samples/ownerdrw/makefile.bcc | 2 +- samples/ownerdrw/makefile.gcc | 2 +- samples/popup/makefile.bcc | 2 +- samples/popup/makefile.gcc | 2 +- samples/power/makefile.bcc | 2 +- samples/power/makefile.gcc | 2 +- samples/preferences/makefile.bcc | 2 +- samples/preferences/makefile.gcc | 2 +- samples/printing/makefile.bcc | 2 +- samples/printing/makefile.gcc | 2 +- samples/propgrid/makefile.bcc | 2 +- samples/propgrid/makefile.gcc | 2 +- samples/regtest/makefile.bcc | 2 +- samples/regtest/makefile.gcc | 2 +- samples/render/makefile.bcc | 4 +- samples/render/makefile.gcc | 4 +- samples/ribbon/makefile.bcc | 2 +- samples/ribbon/makefile.gcc | 2 +- samples/richtext/makefile.bcc | 2 +- samples/richtext/makefile.gcc | 2 +- samples/sashtest/makefile.bcc | 2 +- samples/sashtest/makefile.gcc | 2 +- samples/scroll/makefile.bcc | 2 +- samples/scroll/makefile.gcc | 2 +- samples/secretstore/makefile.bcc | 2 +- samples/secretstore/makefile.gcc | 2 +- samples/shaped/makefile.bcc | 2 +- samples/shaped/makefile.gcc | 2 +- samples/sockets/makefile.bcc | 8 +- samples/sockets/makefile.gcc | 8 +- samples/sound/makefile.bcc | 2 +- samples/sound/makefile.gcc | 2 +- samples/splash/makefile.bcc | 2 +- samples/splash/makefile.gcc | 2 +- samples/splitter/makefile.bcc | 2 +- samples/splitter/makefile.gcc | 2 +- samples/statbar/makefile.bcc | 2 +- samples/statbar/makefile.gcc | 2 +- samples/stc/makefile.bcc | 2 +- samples/stc/makefile.gcc | 2 +- samples/svg/makefile.bcc | 2 +- samples/svg/makefile.gcc | 2 +- samples/taborder/makefile.bcc | 2 +- samples/taborder/makefile.gcc | 2 +- samples/taskbar/makefile.bcc | 2 +- samples/taskbar/makefile.gcc | 2 +- samples/taskbarbutton/makefile.bcc | 2 +- samples/taskbarbutton/makefile.gcc | 2 +- samples/text/makefile.bcc | 2 +- samples/text/makefile.gcc | 2 +- samples/thread/makefile.bcc | 2 +- samples/thread/makefile.gcc | 2 +- samples/toolbar/makefile.bcc | 2 +- samples/toolbar/makefile.gcc | 2 +- samples/treectrl/makefile.bcc | 2 +- samples/treectrl/makefile.gcc | 2 +- samples/treelist/makefile.bcc | 2 +- samples/treelist/makefile.gcc | 2 +- samples/typetest/makefile.bcc | 2 +- samples/typetest/makefile.gcc | 2 +- samples/uiaction/makefile.bcc | 2 +- samples/uiaction/makefile.gcc | 2 +- samples/validate/makefile.bcc | 2 +- samples/validate/makefile.gcc | 2 +- samples/vscroll/makefile.bcc | 2 +- samples/vscroll/makefile.gcc | 2 +- samples/webview/makefile.bcc | 2 +- samples/webview/makefile.gcc | 2 +- samples/widgets/makefile.bcc | 2 +- samples/widgets/makefile.gcc | 2 +- samples/wizard/makefile.bcc | 2 +- samples/wizard/makefile.gcc | 2 +- samples/wrapsizer/makefile.bcc | 2 +- samples/wrapsizer/makefile.gcc | 2 +- samples/xrc/makefile.bcc | 2 +- samples/xrc/makefile.gcc | 2 +- samples/xti/makefile.bcc | 2 +- samples/xti/makefile.gcc | 2 +- src/aui/barartmsw.cpp | 28 ++-- src/aui/tabartmsw.cpp | 29 ++-- src/generic/combog.cpp | 9 +- src/generic/richtooltipg.cpp | 24 ++- src/msw/anybutton.cpp | 29 ++-- src/msw/combo.cpp | 31 +--- src/msw/combobox.cpp | 2 +- src/msw/control.cpp | 2 +- src/msw/menuitem.cpp | 64 ++++---- src/msw/notebook.cpp | 22 +-- src/msw/renderer.cpp | 89 +++++++---- src/msw/richtooltip.cpp | 2 +- src/msw/statbox.cpp | 4 +- src/msw/statusbar.cpp | 4 +- src/msw/systhemectrl.cpp | 9 +- src/msw/textentry.cpp | 4 +- src/msw/uxtheme.cpp | 146 +----------------- src/msw/window.cpp | 24 ++- tests/benchmarks/makefile.bcc | 6 +- tests/benchmarks/makefile.gcc | 6 +- tests/makefile.bcc | 8 +- tests/makefile.gcc | 8 +- utils/emulator/src/makefile.bcc | 2 +- utils/emulator/src/makefile.gcc | 2 +- utils/execmon/makefile.bcc | 2 +- utils/execmon/makefile.gcc | 2 +- utils/helpview/src/makefile.bcc | 2 +- utils/helpview/src/makefile.gcc | 2 +- utils/hhp2cached/makefile.bcc | 2 +- utils/hhp2cached/makefile.gcc | 2 +- utils/ifacecheck/src/makefile.bcc | 2 +- utils/ifacecheck/src/makefile.gcc | 2 +- utils/screenshotgen/src/makefile.bcc | 2 +- utils/screenshotgen/src/makefile.gcc | 2 +- utils/wxrc/makefile.bcc | 2 +- utils/wxrc/makefile.gcc | 2 +- 256 files changed, 478 insertions(+), 1034 deletions(-) delete mode 100644 include/wx/msw/uxthemep.h diff --git a/Makefile.in b/Makefile.in index c00dbf1699..9c8279c3ef 100644 --- a/Makefile.in +++ b/Makefile.in @@ -2761,7 +2761,6 @@ COND_TOOLKIT_MSW_LOWLEVEL_HDR = \ wx/msw/ole/activex.h \ wx/msw/popupwin.h \ wx/msw/uxtheme.h \ - wx/msw/uxthemep.h \ wx/msw/htmlhelp.h \ wx/msw/helpchm.h \ wx/msw/helpwin.h diff --git a/build/bakefiles/common.bkl b/build/bakefiles/common.bkl index c596c08ccc..5febc1ac6e 100644 --- a/build/bakefiles/common.bkl +++ b/build/bakefiles/common.bkl @@ -570,6 +570,7 @@ $(TAB)cl /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\rcdefs.h" wx/msw/libraries.h when wxUSE_ACCESSIBILITY==1 --> oleacc + uxtheme diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl index 85658c2a8c..429136f79a 100644 --- a/build/bakefiles/files.bkl +++ b/build/bakefiles/files.bkl @@ -1919,7 +1919,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/msw/ole/activex.h wx/msw/popupwin.h wx/msw/uxtheme.h - wx/msw/uxthemep.h wx/msw/htmlhelp.h diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index 82690419f8..1253477e0b 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -1793,7 +1793,6 @@ set(MSW_LOWLEVEL_HDR wx/msw/ole/activex.h wx/msw/popupwin.h wx/msw/uxtheme.h - wx/msw/uxthemep.h wx/msw/htmlhelp.h ) diff --git a/build/files b/build/files index e6d0c67a6d..e38e8fd584 100644 --- a/build/files +++ b/build/files @@ -1785,7 +1785,6 @@ MSW_LOWLEVEL_HDR = wx/msw/ole/activex.h wx/msw/popupwin.h wx/msw/uxtheme.h - wx/msw/uxthemep.h wx/msw/htmlhelp.h MSW_DESKTOP_LOWLEVEL_SRC = diff --git a/build/msw/makefile.bcc b/build/msw/makefile.bcc index 8a61ffbd7a..6cccbb80d7 100644 --- a/build/msw/makefile.bcc +++ b/build/msw/makefile.bcc @@ -5222,7 +5222,7 @@ $(LIBDIRNAME)\wxscintilla$(WXDEBUGFLAG).lib: $(WXSCINTILLA_OBJECTS) !if "$(MONOLITHIC)" == "1" && "$(SHARED)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\monodll_dummy.obj $(MONODLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\monodll_version.res $(__wxscintilla_library_link_DEP) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(MONODLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(__wxscintilla) import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\monodll_version.res + c0d32.obj $(MONODLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(__wxscintilla) import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\monodll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR) $@ !endif @@ -5238,7 +5238,7 @@ $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXD !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\basedll_dummy.obj $(BASEDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\basedll_version.res ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(BASEDLL_OBJECTS),$@,, wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\basedll_version.res + c0d32.obj $(BASEDLL_OBJECTS),$@,, wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\basedll_version.res | implib -f $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR) $@ !endif @@ -5258,7 +5258,7 @@ wxbase: $(____wxbase_namedll_DEP) $(____wxbase_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_net$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\netdll_dummy.obj $(NETDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\netdll_version.res $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(NETDLL_OBJECTS),$@,, wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\netdll_version.res + c0d32.obj $(NETDLL_OBJECTS),$@,, wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\netdll_version.res | implib -f $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_net $@ !endif @@ -5278,7 +5278,7 @@ wxnet: $(____wxnet_namedll_DEP) $(____wxnet_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_GUI)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\coredll_dummy.obj $(COREDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\coredll_version.res $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(COREDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\coredll_version.res + c0d32.obj $(COREDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\coredll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core $@ !endif @@ -5298,7 +5298,7 @@ wxcore: $(____wxcore_namedll_DEP) $(____wxcore_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_GUI)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\advdll_dummy.obj $(ADVDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\advdll_version.res $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(ADVDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\advdll_version.res + c0d32.obj $(ADVDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\advdll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv $@ !endif @@ -5318,7 +5318,7 @@ wxadv: $(____wxadv_namedll_DEP) $(____wxadv_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_GUI)" == "1" && "$(USE_MEDIA)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_media$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\mediadll_dummy.obj $(MEDIADLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\mediadll_version.res $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(MEDIADLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\mediadll_version.res + c0d32.obj $(MEDIADLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\mediadll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_media $@ !endif @@ -5338,7 +5338,7 @@ wxmedia: $(____wxmedia_namedll_DEP) $(____wxmedia_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_GUI)" == "1" && "$(USE_HTML)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\htmldll_dummy.obj $(HTMLDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\htmldll_version.res $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(HTMLDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\htmldll_version.res + c0d32.obj $(HTMLDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\htmldll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html $@ !endif @@ -5358,7 +5358,7 @@ wxhtml: $(____wxhtml_namedll_DEP) $(____wxhtml_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_GUI)" == "1" && "$(USE_WEBVIEW)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_webview$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\webviewdll_dummy.obj $(WEBVIEWDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\webviewdll_version.res $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(WEBVIEWDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\webviewdll_version.res + c0d32.obj $(WEBVIEWDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\webviewdll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_webview $@ !endif @@ -5378,7 +5378,7 @@ wxwebview: $(____wxwebview_namedll_DEP) $(____wxwebview_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_GUI)" == "1" && "$(USE_QA)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_qa$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\qadll_dummy.obj $(QADLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\qadll_version.res $(__coredll___depname) $(__basedll___depname) $(__xmldll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(QADLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\qadll_version.res + c0d32.obj $(QADLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\qadll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_qa $@ !endif @@ -5398,7 +5398,7 @@ wxqa: $(____wxqa_namedll_DEP) $(____wxqa_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\xmldll_dummy.obj $(XMLDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\xmldll_version.res $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(XMLDLL_OBJECTS),$@,, wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\xmldll_version.res + c0d32.obj $(XMLDLL_OBJECTS),$@,, wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\xmldll_version.res | implib -f $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml $@ !endif @@ -5418,7 +5418,7 @@ wxxml: $(____wxxml_namedll_DEP) $(____wxxml_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_XRC)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xrc$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\xrcdll_dummy.obj $(XRCDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\xrcdll_version.res $(__htmldll_library_link_DEP) $(__advdll___depname) $(__coredll___depname) $(__xmldll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(XRCDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\xrcdll_version.res + c0d32.obj $(XRCDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\xrcdll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xrc $@ !endif @@ -5438,7 +5438,7 @@ wxxrc: $(____wxxrc_namedll_DEP) $(____wxxrc_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_AUI)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_aui$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\auidll_dummy.obj $(AUIDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\auidll_version.res $(__advdll___depname) $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(AUIDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\auidll_version.res + c0d32.obj $(AUIDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\auidll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_aui $@ !endif @@ -5458,7 +5458,7 @@ wxaui: $(____wxaui_namedll_DEP) $(____wxaui_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_RIBBON)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_ribbon$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\ribbondll_dummy.obj $(RIBBONDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\ribbondll_version.res $(__advdll___depname) $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(RIBBONDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\ribbondll_version.res + c0d32.obj $(RIBBONDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\ribbondll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_ribbon $@ !endif @@ -5478,7 +5478,7 @@ wxribbon: $(____wxribbon_namedll_DEP) $(____wxribbon_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_PROPGRID)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_propgrid$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\propgriddll_dummy.obj $(PROPGRIDDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\propgriddll_version.res $(__advdll___depname) $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(PROPGRIDDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\propgriddll_version.res + c0d32.obj $(PROPGRIDDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\propgriddll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_propgrid $@ !endif @@ -5498,7 +5498,7 @@ wxpropgrid: $(____wxpropgrid_namedll_DEP) $(____wxpropgrid_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_RICHTEXT)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_richtext$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\richtextdll_dummy.obj $(RICHTEXTDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\richtextdll_version.res $(__advdll___depname) $(__htmldll_library_link_DEP) $(__xmldll___depname) $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(RICHTEXTDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\richtextdll_version.res + c0d32.obj $(RICHTEXTDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\richtextdll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_richtext $@ !endif @@ -5518,7 +5518,7 @@ wxrichtext: $(____wxrichtext_namedll_DEP) $(____wxrichtext_namelib_DEP) !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" && "$(USE_STC)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_stc$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\stcdll_dummy.obj $(STCDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(__wxscintilla) $(OBJS)\stcdll_version.res $(__coredll___depname) $(__basedll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(STCDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(LIBDIRNAME)\wxscintilla$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\stcdll_version.res + c0d32.obj $(STCDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(LIBDIRNAME)\wxscintilla$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib $(LIBDIRNAME)\wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\stcdll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_stc $@ !endif @@ -5538,7 +5538,7 @@ wxstc: $(____wxstc_namedll_DEP) $(____wxstc_namelib_DEP) !if "$(SHARED)" == "1" && "$(USE_GUI)" == "1" && "$(USE_OPENGL)" == "1" $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl$(WXCOMPILER)$(VENDORTAG).dll: $(OBJS)\gldll_dummy.obj $(GLDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\wxexpat$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxzlib$(WXDEBUGFLAG).lib $(LIBDIRNAME)\wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib $(OBJS)\gldll_version.res $(__basedll___depname) $(__coredll___depname) $(__monodll___depname) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(GLDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib $(__WXLIBGLDEP_CORE_p) $(__WXLIBGLDEP_BASE_p) $(__WXLIB_MONO_p) import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\gldll_version.res + c0d32.obj $(GLDLL_OBJECTS),$@,, $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib $(__WXLIBGLDEP_CORE_p) $(__WXLIBGLDEP_BASE_p) $(__WXLIB_MONO_p) import32.lib cw32$(__THREADSFLAG_14)$(__RUNTIME_LIBS_5).lib,, $(OBJS)\gldll_version.res | implib -f $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl $@ !endif diff --git a/build/msw/makefile.gcc b/build/msw/makefile.gcc index d9945f9e6b..2f6f1f2f0e 100644 --- a/build/msw/makefile.gcc +++ b/build/msw/makefile.gcc @@ -5311,7 +5311,7 @@ endif ifeq ($(MONOLITHIC),1) ifeq ($(SHARED),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG).dll: $(MONODLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\monodll_version_rc.o $(__wxscintilla_library_link_DEP) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(MONODLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(__wxscintilla) + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(MONODLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(__wxscintilla) endif endif @@ -5327,7 +5327,7 @@ endif ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG).dll: $(BASEDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\basedll_version_rc.o - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(BASEDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(BASEDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif endif @@ -5347,7 +5347,7 @@ endif ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_net$(WXCOMPILER)$(VENDORTAG).dll: $(NETDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\netdll_version_rc.o $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(NETDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_net.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(NETDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_net.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif @@ -5368,7 +5368,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core$(WXCOMPILER)$(VENDORTAG).dll: $(COREDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\coredll_version_rc.o $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(COREDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(COREDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5394,7 +5394,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv$(WXCOMPILER)$(VENDORTAG).dll: $(ADVDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\advdll_version_rc.o $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(ADVDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(ADVDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5421,7 +5421,7 @@ ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) ifeq ($(USE_MEDIA),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_media$(WXCOMPILER)$(VENDORTAG).dll: $(MEDIADLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\mediadll_version_rc.o $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(MEDIADLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_media.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(MEDIADLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_media.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5453,7 +5453,7 @@ ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) ifeq ($(USE_HTML),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html$(WXCOMPILER)$(VENDORTAG).dll: $(HTMLDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\htmldll_version_rc.o $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(HTMLDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(HTMLDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5483,7 +5483,7 @@ ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) ifeq ($(USE_WEBVIEW),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_webview$(WXCOMPILER)$(VENDORTAG).dll: $(WEBVIEWDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\webviewdll_version_rc.o $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(WEBVIEWDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_webview.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(WEBVIEWDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_webview.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5513,7 +5513,7 @@ ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) ifeq ($(USE_QA),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_qa$(WXCOMPILER)$(VENDORTAG).dll: $(QADLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\qadll_version_rc.o $(__coredll___depname) $(__basedll___depname) $(__xmldll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(QADLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_qa.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(QADLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_qa.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a endif endif endif @@ -5541,7 +5541,7 @@ endif ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml$(WXCOMPILER)$(VENDORTAG).dll: $(XMLDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\xmldll_version_rc.o $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(XMLDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(XMLDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif @@ -5562,7 +5562,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_XRC),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xrc$(WXCOMPILER)$(VENDORTAG).dll: $(XRCDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\xrcdll_version_rc.o $(__htmldll_library_link_DEP) $(__advdll___depname) $(__coredll___depname) $(__xmldll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(XRCDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xrc.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(XRCDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xrc.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5588,7 +5588,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_AUI),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_aui$(WXCOMPILER)$(VENDORTAG).dll: $(AUIDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\auidll_version_rc.o $(__advdll___depname) $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(AUIDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_aui.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(AUIDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_aui.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5614,7 +5614,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_RIBBON),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_ribbon$(WXCOMPILER)$(VENDORTAG).dll: $(RIBBONDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\ribbondll_version_rc.o $(__advdll___depname) $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(RIBBONDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_ribbon.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(RIBBONDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_ribbon.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5640,7 +5640,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_PROPGRID),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_propgrid$(WXCOMPILER)$(VENDORTAG).dll: $(PROPGRIDDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\propgriddll_version_rc.o $(__advdll___depname) $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(PROPGRIDDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_propgrid.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(PROPGRIDDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_propgrid.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5666,7 +5666,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_RICHTEXT),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_richtext$(WXCOMPILER)$(VENDORTAG).dll: $(RICHTEXTDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\richtextdll_version_rc.o $(__advdll___depname) $(__htmldll_library_link_DEP) $(__xmldll___depname) $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(RICHTEXTDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_richtext.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(RICHTEXTDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_richtext.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.a $(__htmldll_library_link_LIBR) $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5692,7 +5692,7 @@ ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) ifeq ($(USE_STC),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_stc$(WXCOMPILER)$(VENDORTAG).dll: $(STCDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(__wxscintilla) $(OBJS)\stcdll_version_rc.o $(__coredll___depname) $(__basedll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(STCDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_stc.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(LIBDIRNAME)\libwxscintilla$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(STCDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_stc.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(LIBDIRNAME)\libwxscintilla$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.a $(LIBDIRNAME)\libwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).a endif endif endif @@ -5718,7 +5718,7 @@ ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) ifeq ($(USE_OPENGL),1) $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl$(WXCOMPILER)$(VENDORTAG).dll: $(GLDLL_OBJECTS) $(__wxtiff___depname) $(__wxjpeg___depname) $(__wxpng___depname) $(__wxscintilla) $(LIBDIRNAME)\libwxexpat$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxzlib$(WXDEBUGFLAG).a $(LIBDIRNAME)\libwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).a $(OBJS)\gldll_version_rc.o $(__basedll___depname) $(__coredll___depname) $(__monodll___depname) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(GLDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc $(__WXLIBGLDEP_CORE_p) $(__WXLIBGLDEP_BASE_p) $(__WXLIB_MONO_p) -lopengl32 -lglu32 + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(GLDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--out-implib=$(LIBDIRNAME)\libwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.a $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(__WXLIBGLDEP_CORE_p) $(__WXLIBGLDEP_BASE_p) $(__WXLIB_MONO_p) -lopengl32 -lglu32 endif endif endif diff --git a/build/msw/wx_core.vcxproj b/build/msw/wx_core.vcxproj index 174b3d06f7..fa5484d035 100644 --- a/build/msw/wx_core.vcxproj +++ b/build/msw/wx_core.vcxproj @@ -1140,7 +1140,6 @@ - diff --git a/build/msw/wx_core.vcxproj.filters b/build/msw/wx_core.vcxproj.filters index 3d054e9e26..d27e7e9151 100644 --- a/build/msw/wx_core.vcxproj.filters +++ b/build/msw/wx_core.vcxproj.filters @@ -1675,9 +1675,6 @@ MSW Headers - - MSW Headers - MSW Headers diff --git a/build/msw/wx_vc7_core.vcproj b/build/msw/wx_vc7_core.vcproj index 117b6efbc3..bc06126838 100644 --- a/build/msw/wx_vc7_core.vcproj +++ b/build/msw/wx_vc7_core.vcproj @@ -1631,9 +1631,6 @@ - - diff --git a/build/msw/wx_vc8_core.vcproj b/build/msw/wx_vc8_core.vcproj index d42bb1e612..a5cb10c1df 100644 --- a/build/msw/wx_vc8_core.vcproj +++ b/build/msw/wx_vc8_core.vcproj @@ -2677,10 +2677,6 @@ RelativePath="..\..\include\wx\msw\uxtheme.h" > - - diff --git a/build/msw/wx_vc9_core.vcproj b/build/msw/wx_vc9_core.vcproj index cb6cbf6566..f480343e17 100644 --- a/build/msw/wx_vc9_core.vcproj +++ b/build/msw/wx_vc9_core.vcproj @@ -2673,10 +2673,6 @@ RelativePath="..\..\include\wx\msw\uxtheme.h" > - - diff --git a/configure b/configure index 7266ef5019..40cee31096 100755 --- a/configure +++ b/configure @@ -21125,7 +21125,7 @@ fi - LIBS="$LIBS -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lcomdlg32 -ladvapi32 -lversion -lwsock32 -lgdi32" + LIBS="$LIBS -luxtheme -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lcomdlg32 -ladvapi32 -lversion -lwsock32 -lgdi32" case "${host}" in x86_64-*-mingw32* ) WINDRES_CPU_DEFINE="--define WX_CPU_AMD64" diff --git a/configure.in b/configure.in index 5af395548d..7e6a66a077 100644 --- a/configure.in +++ b/configure.in @@ -2705,7 +2705,7 @@ if test "$USE_WIN32" = 1 ; then ], [ ]) - LIBS="$LIBS -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lcomdlg32 -ladvapi32 -lversion -lwsock32 -lgdi32" + LIBS="$LIBS -luxtheme -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lcomdlg32 -ladvapi32 -lversion -lwsock32 -lgdi32" case "${host}" in x86_64-*-mingw32* ) dnl we need to define this to embed the manifest for correct diff --git a/demos/bombs/makefile.bcc b/demos/bombs/makefile.bcc index 844f6c3038..bf2c8945a7 100644 --- a/demos/bombs/makefile.bcc +++ b/demos/bombs/makefile.bcc @@ -230,7 +230,7 @@ clean: $(OBJS)\bombs.exe: $(BOMBS_OBJECTS) $(OBJS)\bombs_bombs.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(BOMBS_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\bombs_bombs.res + c0w32.obj $(BOMBS_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\bombs_bombs.res | $(OBJS)\bombs_bombs.obj: .\bombs.cpp diff --git a/demos/bombs/makefile.gcc b/demos/bombs/makefile.gcc index 65c4ee8fe1..f23e5e9ac9 100644 --- a/demos/bombs/makefile.gcc +++ b/demos/bombs/makefile.gcc @@ -220,7 +220,7 @@ clean: -if exist $(OBJS)\bombs.exe del $(OBJS)\bombs.exe $(OBJS)\bombs.exe: $(BOMBS_OBJECTS) $(OBJS)\bombs_bombs_rc.o - $(CXX) -o $@ $(BOMBS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BOMBS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\bombs_bombs.o: ./bombs.cpp $(CXX) -c -o $@ $(BOMBS_CXXFLAGS) $(CPPDEPS) $< diff --git a/demos/forty/makefile.bcc b/demos/forty/makefile.bcc index 5abf5b6c3e..52ac1b6c5e 100644 --- a/demos/forty/makefile.bcc +++ b/demos/forty/makefile.bcc @@ -247,7 +247,7 @@ clean: $(OBJS)\forty.exe: $(FORTY_OBJECTS) $(OBJS)\forty_forty.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(FORTY_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\forty_forty.res + c0w32.obj $(FORTY_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\forty_forty.res | data: diff --git a/demos/forty/makefile.gcc b/demos/forty/makefile.gcc index 4501b33c43..b2f549b595 100644 --- a/demos/forty/makefile.gcc +++ b/demos/forty/makefile.gcc @@ -237,7 +237,7 @@ clean: -if exist $(OBJS)\forty.exe del $(OBJS)\forty.exe $(OBJS)\forty.exe: $(FORTY_OBJECTS) $(OBJS)\forty_forty_rc.o - $(CXX) -o $@ $(FORTY_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(FORTY_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/demos/fractal/makefile.bcc b/demos/fractal/makefile.bcc index 2bb7560b45..eae6b853b1 100644 --- a/demos/fractal/makefile.bcc +++ b/demos/fractal/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\fractal.exe: $(FRACTAL_OBJECTS) $(OBJS)\fractal_fractal.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(FRACTAL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\fractal_fractal.res + c0w32.obj $(FRACTAL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\fractal_fractal.res | $(OBJS)\fractal_fractal.obj: .\fractal.cpp diff --git a/demos/fractal/makefile.gcc b/demos/fractal/makefile.gcc index 3dda17bf5c..02a1065f4b 100644 --- a/demos/fractal/makefile.gcc +++ b/demos/fractal/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\fractal.exe del $(OBJS)\fractal.exe $(OBJS)\fractal.exe: $(FRACTAL_OBJECTS) $(OBJS)\fractal_fractal_rc.o - $(CXX) -o $@ $(FRACTAL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(FRACTAL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\fractal_fractal.o: ./fractal.cpp $(CXX) -c -o $@ $(FRACTAL_CXXFLAGS) $(CPPDEPS) $< diff --git a/demos/life/makefile.bcc b/demos/life/makefile.bcc index 126e8b841f..e7a0b3172c 100644 --- a/demos/life/makefile.bcc +++ b/demos/life/makefile.bcc @@ -231,7 +231,7 @@ clean: $(OBJS)\life.exe: $(LIFE_OBJECTS) $(OBJS)\life_life.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(LIFE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\life_life.res + c0w32.obj $(LIFE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\life_life.res | data: diff --git a/demos/life/makefile.gcc b/demos/life/makefile.gcc index f3d854c349..081320c979 100644 --- a/demos/life/makefile.gcc +++ b/demos/life/makefile.gcc @@ -221,7 +221,7 @@ clean: -if exist $(OBJS)\life.exe del $(OBJS)\life.exe $(OBJS)\life.exe: $(LIFE_OBJECTS) $(OBJS)\life_life_rc.o - $(CXX) -o $@ $(LIFE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(LIFE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/demos/poem/makefile.bcc b/demos/poem/makefile.bcc index 2f713bd71e..92b823c43f 100644 --- a/demos/poem/makefile.bcc +++ b/demos/poem/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\wxpoem.exe: $(WXPOEM_OBJECTS) $(OBJS)\wxpoem_wxpoem.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WXPOEM_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wxpoem_wxpoem.res + c0w32.obj $(WXPOEM_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wxpoem_wxpoem.res | data: diff --git a/demos/poem/makefile.gcc b/demos/poem/makefile.gcc index 8580edc6f1..da1cd7a9cc 100644 --- a/demos/poem/makefile.gcc +++ b/demos/poem/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\wxpoem.exe del $(OBJS)\wxpoem.exe $(OBJS)\wxpoem.exe: $(WXPOEM_OBJECTS) $(OBJS)\wxpoem_wxpoem_rc.o - $(CXX) -o $@ $(WXPOEM_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WXPOEM_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/docs/changes.txt b/docs/changes.txt index c60379766e..4378b63aa8 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -48,10 +48,11 @@ Changes in behaviour which may result in build errors - "webview" library is not included in `wx-config --libs` output any more, you need to request it explicitly, e.g. `wx-config --libs std,webview`. -- wxMSW now requires linking with shlwapi.lib and version.lib. This is done - automatically in most cases, but if you use a static build of the library - with a non-MSVC compiler such as MinGW and do not use wx-config, then you - will need to add these libraries to your make or project files yourself. +- wxMSW now requires linking with uxtheme.lib, shlwapi.lib and version.lib. + This is done automatically in most cases, but if you use a static build of + the library with a non-MSVC compiler such as MinGW and do not use wx-config, + then you will need to add these libraries to your make or project files + yourself. - WXWIN_OS_DESCRIPTION doesn't exist any longer, use wxGetOsDescription(). diff --git a/include/wx/msw/libraries.h b/include/wx/msw/libraries.h index abd0046a74..50282ceb90 100644 --- a/include/wx/msw/libraries.h +++ b/include/wx/msw/libraries.h @@ -22,4 +22,9 @@ #pragma comment(lib, "oleacc") #endif +#if defined __VISUALC__ && wxUSE_UXTHEME +#pragma comment(lib, "uxtheme") +#endif + + #endif /* _WX_MSW_LIBRARIES_H_ */ diff --git a/include/wx/msw/uxtheme.h b/include/wx/msw/uxtheme.h index 394dd4d975..b081ed2fc5 100644 --- a/include/wx/msw/uxtheme.h +++ b/include/wx/msw/uxtheme.h @@ -14,7 +14,7 @@ #include "wx/defs.h" #include "wx/msw/private.h" // we use GetHwndOf() -#include "wx/msw/uxthemep.h" +#include // Amazingly, GetThemeFont() and GetThemeSysFont() functions use LOGFONTA under // XP but LOGFONTW (even in non-Unicode build) under later versions of Windows. @@ -32,21 +32,18 @@ public: // Trivial default ctor. wxUxThemeFont() { } - // Just some unique type. - struct Ptr { }; - #if wxUSE_UNICODE // In Unicode build we always use LOGFONT anyhow so this class is // completely trivial. - Ptr *GetPtr() { return reinterpret_cast(&m_lfW); } + LPLOGFONTW GetPtr() { return &m_lfW; } const LOGFONTW& GetLOGFONT() { return m_lfW; } #else // !wxUSE_UNICODE // Return either LOGFONTA or LOGFONTW pointer as required by the current // Windows version. - Ptr *GetPtr() + LPLOGFONTW GetPtr() { - return UseLOGFONTW() ? reinterpret_cast(&m_lfW) - : reinterpret_cast(&m_lfA); + return UseLOGFONTW() ? &m_lfW + : reinterpret_cast(&m_lfA); } // This method returns LOGFONT (i.e. LOGFONTA in ANSI build and LOGFONTW in @@ -84,208 +81,7 @@ private: wxDECLARE_NO_COPY_CLASS(wxUxThemeFont); }; -typedef int(__stdcall *DTT_CALLBACK_PROC)(HDC hdc, const wchar_t * pszText, int cchText, RECT * prc, unsigned int dwFlags, WXLPARAM lParam); - -typedef struct _DTTOPTS -{ - DWORD dwSize; - DWORD dwFlags; - COLORREF crText; - COLORREF crBorder; - COLORREF crShadow; - int iTextShadowType; - POINT ptShadowOffset; - int iBorderSize; - int iFontPropId; - int iColorPropId; - int iStateId; - BOOL fApplyOverlay; - int iGlowSize; - DTT_CALLBACK_PROC pfnDrawTextCallback; - WXLPARAM lParam; -} DTTOPTS, *PDTTOPTS; - -typedef HTHEME (__stdcall *PFNWXUOPENTHEMEDATA)(HWND, const wchar_t *); -typedef HRESULT (__stdcall *PFNWXUCLOSETHEMEDATA)(HTHEME); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMEBACKGROUND)(HTHEME, HDC, int, int, const RECT *, const RECT *); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMEBACKGROUNDEX)(HTHEME, HDC, int, int, const RECT *, const DTBGOPTS *); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMETEXT)(HTHEME, HDC, int, int, const wchar_t *, int, DWORD, DWORD, const RECT *); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMETEXTEX)(HTHEME, HDC, int, int, const wchar_t *, int, DWORD, RECT *, const DTTOPTS *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEBACKGROUNDCONTENTRECT)(HTHEME, HDC, int, int, const RECT *, RECT *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEBACKGROUNDEXTENT)(HTHEME, HDC, int, int, const RECT *, RECT *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEPARTSIZE)(HTHEME, HDC, int, int, const RECT *, /* enum */ THEMESIZE, SIZE *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMETEXTEXTENT)(HTHEME, HDC, int, int, const wchar_t *, int, DWORD, const RECT *, RECT *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMETEXTMETRICS)(HTHEME, HDC, int, int, TEXTMETRIC*); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEBACKGROUNDREGION)(HTHEME, HDC, int, int, const RECT *, HRGN *); -typedef HRESULT (__stdcall *PFNWXUHITTESTTHEMEBACKGROUND)(HTHEME, HDC, int, int, DWORD, const RECT *, HRGN, POINT, unsigned short *); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMEEDGE)(HTHEME, HDC, int, int, const RECT *, unsigned int, unsigned int, RECT *); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMEICON)(HTHEME, HDC, int, int, const RECT *, HIMAGELIST, int); -typedef BOOL (__stdcall *PFNWXUISTHEMEPARTDEFINED)(HTHEME, int, int); -typedef BOOL (__stdcall *PFNWXUISTHEMEBACKGROUNDPARTIALLYTRANSPARENT)(HTHEME, int, int); -typedef HRESULT (__stdcall *PFNWXUGETTHEMECOLOR)(HTHEME, int, int, int, COLORREF*); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEMETRIC)(HTHEME, HDC, int, int, int, int *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMESTRING)(HTHEME, int, int, int, wchar_t *, int); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEBOOL)(HTHEME, int, int, int, BOOL *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEINT)(HTHEME, int, int, int, int *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEENUMVALUE)(HTHEME, int, int, int, int *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEPOSITION)(HTHEME, int, int, int, POINT *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEFONT)(HTHEME, HDC, int, int, int, wxUxThemeFont::Ptr *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMERECT)(HTHEME, int, int, int, RECT *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEMARGINS)(HTHEME, HDC, int, int, int, RECT *, MARGINS *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEINTLIST)(HTHEME, int, int, int, INTLIST*); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEPROPERTYORIGIN)(HTHEME, int, int, int, /* enum */ PROPERTYORIGIN *); -typedef HRESULT (__stdcall *PFNWXUSETWINDOWTHEME)(HWND, const wchar_t*, const wchar_t *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEFILENAME)(HTHEME, int, int, int, wchar_t *, int); -typedef COLORREF(__stdcall *PFNWXUGETTHEMESYSCOLOR)(HTHEME, int); -typedef HBRUSH (__stdcall *PFNWXUGETTHEMESYSCOLORBRUSH)(HTHEME, int); -typedef BOOL (__stdcall *PFNWXUGETTHEMESYSBOOL)(HTHEME, int); -typedef int (__stdcall *PFNWXUGETTHEMESYSSIZE)(HTHEME, int); -typedef HRESULT (__stdcall *PFNWXUGETTHEMESYSFONT)(HTHEME, int, wxUxThemeFont::Ptr *); -typedef HRESULT (__stdcall *PFNWXUGETTHEMESYSSTRING)(HTHEME, int, wchar_t *, int); -typedef HRESULT (__stdcall *PFNWXUGETTHEMESYSINT)(HTHEME, int, int *); -typedef BOOL (__stdcall *PFNWXUISTHEMEACTIVE)(); -typedef BOOL (__stdcall *PFNWXUISAPPTHEMED)(); -typedef HTHEME (__stdcall *PFNWXUGETWINDOWTHEME)(HWND); -typedef HRESULT (__stdcall *PFNWXUENABLETHEMEDIALOGTEXTURE)(HWND, DWORD); -typedef BOOL (__stdcall *PFNWXUISTHEMEDIALOGTEXTUREENABLED)(HWND); -typedef DWORD (__stdcall *PFNWXUGETTHEMEAPPPROPERTIES)(); -typedef void (__stdcall *PFNWXUSETTHEMEAPPPROPERTIES)(DWORD); -typedef HRESULT (__stdcall *PFNWXUGETCURRENTTHEMENAME)(wchar_t *, int, wchar_t *, int, wchar_t *, int); -typedef HRESULT (__stdcall *PFNWXUGETTHEMEDOCUMENTATIONPROPERTY)(const wchar_t *, const wchar_t *, wchar_t *, int); -typedef HRESULT (__stdcall *PFNWXUDRAWTHEMEPARENTBACKGROUND)(HWND, HDC, const RECT *); -typedef HRESULT (__stdcall *PFNWXUENABLETHEMING)(BOOL); - -// ---------------------------------------------------------------------------- -// wxUxThemeEngine: provides all theme functions from uxtheme.dll -// ---------------------------------------------------------------------------- - -// we always define this class, even if wxUSE_UXTHEME == 0, but we just make it -// empty in this case -- this allows to use it elsewhere without any #ifdefs -#if wxUSE_UXTHEME - #include "wx/dynlib.h" - - #define wxUX_THEME_DECLARE(type, func) type func; -#else - #define wxUX_THEME_DECLARE(type, func) type func(...) { return 0; } -#endif - -class WXDLLIMPEXP_CORE wxUxThemeEngine -{ -public: - // get the theme engine or NULL if themes are not available - static wxUxThemeEngine *Get(); - - // get the theme enging or NULL if themes are not available or not used for - // this application - static wxUxThemeEngine *GetIfActive(); - - // all uxtheme.dll functions - wxUX_THEME_DECLARE(PFNWXUOPENTHEMEDATA, OpenThemeData) - wxUX_THEME_DECLARE(PFNWXUCLOSETHEMEDATA, CloseThemeData) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMEBACKGROUND, DrawThemeBackground) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMEBACKGROUNDEX, DrawThemeBackgroundEx) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMETEXT, DrawThemeText) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMETEXTEX, DrawThemeTextEx) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEBACKGROUNDCONTENTRECT, GetThemeBackgroundContentRect) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEBACKGROUNDEXTENT, GetThemeBackgroundExtent) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEPARTSIZE, GetThemePartSize) - wxUX_THEME_DECLARE(PFNWXUGETTHEMETEXTEXTENT, GetThemeTextExtent) - wxUX_THEME_DECLARE(PFNWXUGETTHEMETEXTMETRICS, GetThemeTextMetrics) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEBACKGROUNDREGION, GetThemeBackgroundRegion) - wxUX_THEME_DECLARE(PFNWXUHITTESTTHEMEBACKGROUND, HitTestThemeBackground) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMEEDGE, DrawThemeEdge) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMEICON, DrawThemeIcon) - wxUX_THEME_DECLARE(PFNWXUISTHEMEPARTDEFINED, IsThemePartDefined) - wxUX_THEME_DECLARE(PFNWXUISTHEMEBACKGROUNDPARTIALLYTRANSPARENT, IsThemeBackgroundPartiallyTransparent) - wxUX_THEME_DECLARE(PFNWXUGETTHEMECOLOR, GetThemeColor) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEMETRIC, GetThemeMetric) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESTRING, GetThemeString) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEBOOL, GetThemeBool) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEINT, GetThemeInt) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEENUMVALUE, GetThemeEnumValue) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEPOSITION, GetThemePosition) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEFONT, GetThemeFont) - wxUX_THEME_DECLARE(PFNWXUGETTHEMERECT, GetThemeRect) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEMARGINS, GetThemeMargins) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEINTLIST, GetThemeIntList) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEPROPERTYORIGIN, GetThemePropertyOrigin) - wxUX_THEME_DECLARE(PFNWXUSETWINDOWTHEME, SetWindowTheme) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEFILENAME, GetThemeFilename) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSCOLOR, GetThemeSysColor) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSCOLORBRUSH, GetThemeSysColorBrush) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSBOOL, GetThemeSysBool) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSSIZE, GetThemeSysSize) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSFONT, GetThemeSysFont) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSSTRING, GetThemeSysString) - wxUX_THEME_DECLARE(PFNWXUGETTHEMESYSINT, GetThemeSysInt) - wxUX_THEME_DECLARE(PFNWXUISTHEMEACTIVE, IsThemeActive) - wxUX_THEME_DECLARE(PFNWXUISAPPTHEMED, IsAppThemed) - wxUX_THEME_DECLARE(PFNWXUGETWINDOWTHEME, GetWindowTheme) - wxUX_THEME_DECLARE(PFNWXUENABLETHEMEDIALOGTEXTURE, EnableThemeDialogTexture) - wxUX_THEME_DECLARE(PFNWXUISTHEMEDIALOGTEXTUREENABLED, IsThemeDialogTextureEnabled) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEAPPPROPERTIES, GetThemeAppProperties) - wxUX_THEME_DECLARE(PFNWXUSETTHEMEAPPPROPERTIES, SetThemeAppProperties) - wxUX_THEME_DECLARE(PFNWXUGETCURRENTTHEMENAME, GetCurrentThemeName) - wxUX_THEME_DECLARE(PFNWXUGETTHEMEDOCUMENTATIONPROPERTY, GetThemeDocumentationProperty) - wxUX_THEME_DECLARE(PFNWXUDRAWTHEMEPARENTBACKGROUND, DrawThemeParentBackground) - wxUX_THEME_DECLARE(PFNWXUENABLETHEMING, EnableTheming) - -private: - // construcor is private as only Get() can create us and is also trivial as - // everything really happens in Initialize() - wxUxThemeEngine() { } - - // destructor is private as only Get() and wxUxThemeModule delete us, it is - // not virtual as we're not supposed to be derived from - ~wxUxThemeEngine() { } - -#if wxUSE_UXTHEME - // initialize the theme engine: load the DLL, resolve the functions - // - // return true if we can be used, false if themes are not available - bool Initialize(); - - - // uxtheme.dll - wxDynamicLibrary m_dllUxTheme; - - - // the one and only theme engine, initially NULL - static wxUxThemeEngine *ms_themeEngine; - - // this is a bool which initially has the value -1 meaning "unknown" - static int ms_isThemeEngineAvailable; - - // it must be able to delete us - friend class wxUxThemeModule; -#endif // wxUSE_UXTHEME - - wxDECLARE_NO_COPY_CLASS(wxUxThemeEngine); -}; - -#if wxUSE_UXTHEME - -/* static */ inline wxUxThemeEngine *wxUxThemeEngine::GetIfActive() -{ - wxUxThemeEngine *engine = Get(); - return engine && engine->IsAppThemed() && engine->IsThemeActive() - ? engine - : NULL; -} - -#else // !wxUSE_UXTHEME - -/* static */ inline wxUxThemeEngine *wxUxThemeEngine::Get() -{ - return NULL; -} - -/* static */ inline wxUxThemeEngine *wxUxThemeEngine::GetIfActive() -{ - return NULL; -} - -#endif // wxUSE_UXTHEME/!wxUSE_UXTHEME +WXDLLIMPEXP_CORE bool wxUxThemeIsActive(); // ---------------------------------------------------------------------------- // wxUxThemeHandle: encapsulates ::Open/CloseThemeData() @@ -296,10 +92,7 @@ class wxUxThemeHandle public: wxUxThemeHandle(const wxWindow *win, const wchar_t *classes) { - wxUxThemeEngine *engine = wxUxThemeEngine::Get(); - - m_hTheme = engine ? (HTHEME)engine->OpenThemeData(GetHwndOf(win), classes) - : NULL; + m_hTheme = (HTHEME)::OpenThemeData(GetHwndOf(win), classes); } operator HTHEME() const { return m_hTheme; } @@ -308,7 +101,7 @@ public: { if ( m_hTheme ) { - wxUxThemeEngine::Get()->CloseThemeData(m_hTheme); + ::CloseThemeData(m_hTheme); } } diff --git a/include/wx/msw/uxthemep.h b/include/wx/msw/uxthemep.h deleted file mode 100644 index 3d5123b9cf..0000000000 --- a/include/wx/msw/uxthemep.h +++ /dev/null @@ -1,169 +0,0 @@ -/* - * Win32 5.1 theme definitions - * - * Copyright (C) 2003 Kevin Koltzau - * - * Originally written for the Wine project, and issued under - * the wxWindows licence by kind permission of the author. - * - * Licence: wxWindows licence - */ - -#ifndef __WINE_UXTHEME_H -#define __WINE_UXTHEME_H - -#include "wx/msw/wrapcctl.h" - -typedef HANDLE HTHEME; - -HRESULT WINAPI CloseThemeData(HTHEME hTheme); -HRESULT WINAPI DrawThemeBackground(HTHEME,HDC,int,int,const RECT*,const RECT*); - -#define DTBG_CLIPRECT 0x00000001 -#define DTBG_DRAWSOLID 0x00000002 -#define DTBG_OMITBORDER 0x00000004 -#define DTBG_OMITCONTENT 0x00000008 -#define DTBG_COMPUTINGREGION 0x00000010 -#define DTBG_MIRRORDC 0x00000020 - -typedef struct _DTBGOPTS { - DWORD dwSize; - DWORD dwFlags; - RECT rcClip; -} DTBGOPTS, *PDTBGOPTS; - -HRESULT WINAPI DrawThemeBackgroundEx(HTHEME,HDC,int,int,const RECT*, - const DTBGOPTS*); -HRESULT WINAPI DrawThemeEdge(HTHEME,HDC,int,int,const RECT*,UINT,UINT, - RECT*); -HRESULT WINAPI DrawThemeIcon(HTHEME,HDC,int,int,const RECT*,HIMAGELIST,int); -HRESULT WINAPI DrawThemeParentBackground(HWND,HDC,RECT*); - -#define DTT_GRAYED 0x1 - -HRESULT WINAPI DrawThemeText(HTHEME,HDC,int,int,LPCWSTR,int,DWORD,DWORD, - const RECT*); - -#define ETDT_DISABLE 0x00000001 -#define ETDT_ENABLE 0x00000002 -#define ETDT_USETABTEXTURE 0x00000004 -#define ETDT_ENABLETAB (ETDT_ENABLE|ETDT_USETABTEXTURE) - -HRESULT WINAPI EnableThemeDialogTexture(HWND,DWORD); -HRESULT WINAPI EnableTheming(BOOL); -HRESULT WINAPI GetCurrentThemeName(LPWSTR,int,LPWSTR,int,LPWSTR,int); - -#define STAP_ALLOW_NONCLIENT (1<<0) -#define STAP_ALLOW_CONTROLS (1<<1) -#define STAP_ALLOW_WEBCONTENT (1<<2) - -DWORD WINAPI GetThemeAppProperties(void); -HRESULT WINAPI GetThemeBackgroundContentRect(HTHEME,HDC,int,int, - const RECT*,RECT*); -HRESULT WINAPI GetThemeBackgroundExtent(HTHEME,HDC,int,int,const RECT*,RECT*); -HRESULT WINAPI GetThemeBackgroundRegion(HTHEME,HDC,int,int,const RECT*,HRGN*); -HRESULT WINAPI GetThemeBool(HTHEME,int,int,int,BOOL*); -HRESULT WINAPI GetThemeColor(HTHEME,int,int,int,COLORREF*); - -#if defined(__GNUC__) -# define SZ_THDOCPROP_DISPLAYNAME (const WCHAR []){ 'D','i','s','p','l','a','y','N','a','m','e',0 } -# define SZ_THDOCPROP_CANONICALNAME (const WCHAR []){ 'T','h','e','m','e','N','a','m','e',0 } -# define SZ_THDOCPROP_TOOLTIP (const WCHAR []){ 'T','o','o','l','T','i','p',0 } -# define SZ_THDOCPROP_AUTHOR (const WCHAR []){ 'a','u','t','h','o','r',0 } -#else /* lif defined(_MSC_VER) */ -# define SZ_THDOCPROP_DISPLAYNAME L"DisplayName" -# define SZ_THDOCPROP_CANONICALNAME L"ThemeName" -# define SZ_THDOCPROP_TOOLTIP L"ToolTip" -# define SZ_THDOCPROP_AUTHOR L"author" -/* -#else -static const WCHAR SZ_THDOCPROP_DISPLAYNAME[] = { 'D','i','s','p','l','a','y','N','a','m','e',0 }; -static const WCHAR SZ_THDOCPROP_CANONICALNAME[] = { 'T','h','e','m','e','N','a','m','e',0 }; -static const WCHAR SZ_THDOCPROP_TOOLTIP[] = { 'T','o','o','l','T','i','p',0 }; -static const WCHAR SZ_THDOCPROP_AUTHOR[] = { 'a','u','t','h','o','r',0 }; -*/ -#endif - -HRESULT WINAPI GetThemeDocumentationProperty(LPCWSTR,LPCWSTR,LPWSTR,int); -HRESULT WINAPI GetThemeEnumValue(HTHEME,int,int,int,int*); -HRESULT WINAPI GetThemeFilename(HTHEME,int,int,int,LPWSTR,int); -HRESULT WINAPI GetThemeFont(HTHEME,HDC,int,int,int,LOGFONTW*); -HRESULT WINAPI GetThemeInt(HTHEME,int,int,int,int*); - -#define MAX_INTLIST_COUNT 10 -typedef struct _INTLIST { - int iValueCount; - int iValues[MAX_INTLIST_COUNT]; -} INTLIST, *PINTLIST; - -HRESULT WINAPI GetThemeIntList(HTHEME,int,int,int,INTLIST*); - -typedef struct _MARGINS { - int cxLeftWidth; - int cxRightWidth; - int cyTopHeight; - int cyBottomHeight; -} MARGINS, *PMARGINS; - -HRESULT WINAPI GetThemeMargins(HTHEME,HDC,int,int,int,RECT*,MARGINS*); -HRESULT WINAPI GetThemeMetric(HTHEME,HDC,int,int,int,int*); - -typedef enum { - TS_MIN, - TS_TRUE, - TS_DRAW -} THEMESIZE; - -HRESULT WINAPI GetThemePartSize(HTHEME,HDC,int,int,RECT*,THEMESIZE,SIZE*); -HRESULT WINAPI GetThemePosition(HTHEME,int,int,int,POINT*); - -typedef enum { - PO_STATE, - PO_PART, - PO_CLASS, - PO_GLOBAL, - PO_NOTFOUND -} PROPERTYORIGIN; - -HRESULT WINAPI GetThemePropertyOrigin(HTHEME,int,int,int,PROPERTYORIGIN*); -HRESULT WINAPI GetThemeRect(HTHEME,int,int,int,RECT*); -HRESULT WINAPI GetThemeString(HTHEME,int,int,int,LPWSTR,int); -BOOL WINAPI GetThemeSysBool(HTHEME,int); -COLORREF WINAPI GetThemeSysColor(HTHEME,int); -HBRUSH WINAPI GetThemeSysColorBrush(HTHEME,int); -HRESULT WINAPI GetThemeSysFont(HTHEME,int,LOGFONTW*); -HRESULT WINAPI GetThemeSysInt(HTHEME,int,int*); -int WINAPI GetThemeSysSize(HTHEME,int); -HRESULT WINAPI GetThemeSysString(HTHEME,int,LPWSTR,int); -HRESULT WINAPI GetThemeTextExtent(HTHEME,HDC,int,int,LPCWSTR,int,DWORD, - const RECT*,RECT*); -HRESULT WINAPI GetThemeTextMetrics(HTHEME,HDC,int,int,TEXTMETRICW*); -HTHEME WINAPI GetWindowTheme(HWND); - -#define HTTB_BACKGROUNDSEG 0x0000 -#define HTTB_FIXEDBORDER 0x0002 -#define HTTB_CAPTION 0x0004 -#define HTTB_RESIZINGBORDER_LEFT 0x0010 -#define HTTB_RESIZINGBORDER_TOP 0x0020 -#define HTTB_RESIZINGBORDER_RIGHT 0x0040 -#define HTTB_RESIZINGBORDER_BOTTOM 0x0080 -#define HTTB_RESIZINGBORDER \ - (HTTB_RESIZINGBORDER_LEFT|HTTB_RESIZINGBORDER_TOP|\ - HTTB_RESIZINGBORDER_RIGHT|HTTB_RESIZINGBORDER_BOTTOM) -#define HTTB_SIZINGTEMPLATE 0x0100 -#define HTTB_SYSTEMSIZINGMARGINS 0x0200 - -HRESULT WINAPI HitTestThemeBackground(HTHEME,HDC,int,int,DWORD,const RECT*, - HRGN,POINT,WORD*); -BOOL WINAPI IsAppThemed(void); -BOOL WINAPI IsThemeActive(void); -BOOL WINAPI IsThemeBackgroundPartiallyTransparent(HTHEME,int,int); -BOOL WINAPI IsThemeDialogTextureEnabled(void); -BOOL WINAPI IsThemePartDefined(HTHEME,int,int); -HTHEME WINAPI OpenThemeData(HWND,LPCWSTR); -void WINAPI SetThemeAppProperties(DWORD); -HRESULT WINAPI SetWindowTheme(HWND,LPCWSTR,LPCWSTR); - - -#endif - diff --git a/samples/access/makefile.bcc b/samples/access/makefile.bcc index ce41305742..275ab535ef 100644 --- a/samples/access/makefile.bcc +++ b/samples/access/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\accesstest.exe: $(ACCESSTEST_OBJECTS) $(OBJS)\accesstest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ACCESSTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\accesstest_sample.res + c0w32.obj $(ACCESSTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\accesstest_sample.res | $(OBJS)\accesstest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/access/makefile.gcc b/samples/access/makefile.gcc index c33c0d83eb..164157970d 100644 --- a/samples/access/makefile.gcc +++ b/samples/access/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\accesstest.exe del $(OBJS)\accesstest.exe $(OBJS)\accesstest.exe: $(ACCESSTEST_OBJECTS) $(OBJS)\accesstest_sample_rc.o - $(CXX) -o $@ $(ACCESSTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ACCESSTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\accesstest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/animate/makefile.bcc b/samples/animate/makefile.bcc index 628dfa04d2..4620304fe2 100644 --- a/samples/animate/makefile.bcc +++ b/samples/animate/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\anitest.exe: $(ANITEST_OBJECTS) $(OBJS)\anitest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ANITEST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\anitest_sample.res + c0w32.obj $(ANITEST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\anitest_sample.res | catalog: diff --git a/samples/animate/makefile.gcc b/samples/animate/makefile.gcc index 026e185023..dec12d9f27 100644 --- a/samples/animate/makefile.gcc +++ b/samples/animate/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\anitest.exe del $(OBJS)\anitest.exe $(OBJS)\anitest.exe: $(ANITEST_OBJECTS) $(OBJS)\anitest_sample_rc.o - $(CXX) -o $@ $(ANITEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ANITEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme catalog: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/artprov/makefile.bcc b/samples/artprov/makefile.bcc index 077fb197aa..1088ec82bf 100644 --- a/samples/artprov/makefile.bcc +++ b/samples/artprov/makefile.bcc @@ -229,7 +229,7 @@ clean: $(OBJS)\arttest.exe: $(ARTTEST_OBJECTS) $(OBJS)\arttest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ARTTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\arttest_sample.res + c0w32.obj $(ARTTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\arttest_sample.res | $(OBJS)\arttest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/artprov/makefile.gcc b/samples/artprov/makefile.gcc index 2a16db8950..cb30a37f45 100644 --- a/samples/artprov/makefile.gcc +++ b/samples/artprov/makefile.gcc @@ -219,7 +219,7 @@ clean: -if exist $(OBJS)\arttest.exe del $(OBJS)\arttest.exe $(OBJS)\arttest.exe: $(ARTTEST_OBJECTS) $(OBJS)\arttest_sample_rc.o - $(CXX) -o $@ $(ARTTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ARTTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\arttest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/aui/makefile.bcc b/samples/aui/makefile.bcc index 473719a270..4f4b27bf47 100644 --- a/samples/aui/makefile.bcc +++ b/samples/aui/makefile.bcc @@ -244,7 +244,7 @@ clean: $(OBJS)\auidemo.exe: $(AUIDEMO_OBJECTS) $(OBJS)\auidemo_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(AUIDEMO_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\auidemo_sample.res + c0w32.obj $(AUIDEMO_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\auidemo_sample.res | $(OBJS)\auidemo_sample.res: .\..\..\samples\sample.rc diff --git a/samples/aui/makefile.gcc b/samples/aui/makefile.gcc index 6ed67b1f6f..8c8463b7f9 100644 --- a/samples/aui/makefile.gcc +++ b/samples/aui/makefile.gcc @@ -234,7 +234,7 @@ clean: -if exist $(OBJS)\auidemo.exe del $(OBJS)\auidemo.exe $(OBJS)\auidemo.exe: $(AUIDEMO_OBJECTS) $(OBJS)\auidemo_sample_rc.o - $(CXX) -o $@ $(AUIDEMO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(AUIDEMO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\auidemo_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/calendar/makefile.bcc b/samples/calendar/makefile.bcc index 2fac3f428e..a9d3ca3c57 100644 --- a/samples/calendar/makefile.bcc +++ b/samples/calendar/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\calendar.exe: $(CALENDAR_OBJECTS) $(OBJS)\calendar_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(CALENDAR_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\calendar_sample.res + c0w32.obj $(CALENDAR_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\calendar_sample.res | $(OBJS)\calendar_sample.res: .\..\..\samples\sample.rc diff --git a/samples/calendar/makefile.gcc b/samples/calendar/makefile.gcc index 864e250986..c76df1c53b 100644 --- a/samples/calendar/makefile.gcc +++ b/samples/calendar/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\calendar.exe del $(OBJS)\calendar.exe $(OBJS)\calendar.exe: $(CALENDAR_OBJECTS) $(OBJS)\calendar_sample_rc.o - $(CXX) -o $@ $(CALENDAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CALENDAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\calendar_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/caret/makefile.bcc b/samples/caret/makefile.bcc index ab429db739..8e24bced84 100644 --- a/samples/caret/makefile.bcc +++ b/samples/caret/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\caret.exe: $(CARET_OBJECTS) $(OBJS)\caret_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(CARET_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\caret_sample.res + c0w32.obj $(CARET_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\caret_sample.res | $(OBJS)\caret_sample.res: .\..\..\samples\sample.rc diff --git a/samples/caret/makefile.gcc b/samples/caret/makefile.gcc index 3bc309a808..c640d97a16 100644 --- a/samples/caret/makefile.gcc +++ b/samples/caret/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\caret.exe del $(OBJS)\caret.exe $(OBJS)\caret.exe: $(CARET_OBJECTS) $(OBJS)\caret_sample_rc.o - $(CXX) -o $@ $(CARET_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CARET_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\caret_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/clipboard/makefile.bcc b/samples/clipboard/makefile.bcc index 76f135634a..5998c83e98 100644 --- a/samples/clipboard/makefile.bcc +++ b/samples/clipboard/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\clipboard.exe: $(CLIPBOARD_OBJECTS) $(OBJS)\clipboard_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(CLIPBOARD_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\clipboard_sample.res + c0w32.obj $(CLIPBOARD_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\clipboard_sample.res | $(OBJS)\clipboard_sample.res: .\..\..\samples\sample.rc diff --git a/samples/clipboard/makefile.gcc b/samples/clipboard/makefile.gcc index dfdc7d1645..7c2cbb07fe 100644 --- a/samples/clipboard/makefile.gcc +++ b/samples/clipboard/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\clipboard.exe del $(OBJS)\clipboard.exe $(OBJS)\clipboard.exe: $(CLIPBOARD_OBJECTS) $(OBJS)\clipboard_sample_rc.o - $(CXX) -o $@ $(CLIPBOARD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CLIPBOARD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\clipboard_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/collpane/makefile.bcc b/samples/collpane/makefile.bcc index d4cd5b7539..9bfcf19416 100644 --- a/samples/collpane/makefile.bcc +++ b/samples/collpane/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\collpane.exe: $(COLLPANE_OBJECTS) $(OBJS)\collpane_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(COLLPANE_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\collpane_sample.res + c0w32.obj $(COLLPANE_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\collpane_sample.res | $(OBJS)\collpane_collpane.obj: .\collpane.cpp diff --git a/samples/collpane/makefile.gcc b/samples/collpane/makefile.gcc index dfe1d75562..23ff544cf5 100644 --- a/samples/collpane/makefile.gcc +++ b/samples/collpane/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\collpane.exe del $(OBJS)\collpane.exe $(OBJS)\collpane.exe: $(COLLPANE_OBJECTS) $(OBJS)\collpane_sample_rc.o - $(CXX) -o $@ $(COLLPANE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(COLLPANE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\collpane_collpane.o: ./collpane.cpp $(CXX) -c -o $@ $(COLLPANE_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/combo/makefile.bcc b/samples/combo/makefile.bcc index 5af539b793..fab83da5e1 100644 --- a/samples/combo/makefile.bcc +++ b/samples/combo/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\combo.exe: $(COMBO_OBJECTS) $(OBJS)\combo_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(COMBO_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\combo_sample.res + c0w32.obj $(COMBO_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\combo_sample.res | data: diff --git a/samples/combo/makefile.gcc b/samples/combo/makefile.gcc index 834855271b..eebb17631e 100644 --- a/samples/combo/makefile.gcc +++ b/samples/combo/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\combo.exe del $(OBJS)\combo.exe $(OBJS)\combo.exe: $(COMBO_OBJECTS) $(OBJS)\combo_sample_rc.o - $(CXX) -o $@ $(COMBO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(COMBO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/config/makefile.bcc b/samples/config/makefile.bcc index 7ff505cda0..cf6f3ed978 100644 --- a/samples/config/makefile.bcc +++ b/samples/config/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\conftest.exe: $(CONFTEST_OBJECTS) $(OBJS)\conftest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(CONFTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\conftest_sample.res + c0w32.obj $(CONFTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\conftest_sample.res | $(OBJS)\conftest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/config/makefile.gcc b/samples/config/makefile.gcc index 9476d2eeec..fecaab0587 100644 --- a/samples/config/makefile.gcc +++ b/samples/config/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\conftest.exe del $(OBJS)\conftest.exe $(OBJS)\conftest.exe: $(CONFTEST_OBJECTS) $(OBJS)\conftest_sample_rc.o - $(CXX) -o $@ $(CONFTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CONFTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\conftest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/console/makefile.bcc b/samples/console/makefile.bcc index ea3692fb1c..6fec7a44f9 100644 --- a/samples/console/makefile.bcc +++ b/samples/console/makefile.bcc @@ -192,7 +192,7 @@ clean: $(OBJS)\console.exe: $(CONSOLE_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0x32.obj $(CONSOLE_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, + c0x32.obj $(CONSOLE_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, | $(OBJS)\console_console.obj: .\console.cpp diff --git a/samples/console/makefile.gcc b/samples/console/makefile.gcc index 72e8c298a9..4c0ba4cd0e 100644 --- a/samples/console/makefile.gcc +++ b/samples/console/makefile.gcc @@ -179,7 +179,7 @@ clean: -if exist $(OBJS)\console.exe del $(OBJS)\console.exe $(OBJS)\console.exe: $(CONSOLE_OBJECTS) - $(CXX) -o $@ $(CONSOLE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CONSOLE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\console_console.o: ./console.cpp $(CXX) -c -o $@ $(CONSOLE_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/dataview/makefile.bcc b/samples/dataview/makefile.bcc index bcacf4bb00..3524569234 100644 --- a/samples/dataview/makefile.bcc +++ b/samples/dataview/makefile.bcc @@ -233,7 +233,7 @@ clean: $(OBJS)\dataview.exe: $(DATAVIEW_OBJECTS) $(OBJS)\dataview_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DATAVIEW_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dataview_sample.res + c0w32.obj $(DATAVIEW_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dataview_sample.res | $(OBJS)\dataview_dataview.obj: .\dataview.cpp diff --git a/samples/dataview/makefile.gcc b/samples/dataview/makefile.gcc index fa65cbfaed..101c7ff350 100644 --- a/samples/dataview/makefile.gcc +++ b/samples/dataview/makefile.gcc @@ -223,7 +223,7 @@ clean: -if exist $(OBJS)\dataview.exe del $(OBJS)\dataview.exe $(OBJS)\dataview.exe: $(DATAVIEW_OBJECTS) $(OBJS)\dataview_sample_rc.o - $(CXX) -o $@ $(DATAVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DATAVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\dataview_dataview.o: ./dataview.cpp $(CXX) -c -o $@ $(DATAVIEW_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/debugrpt/makefile.bcc b/samples/debugrpt/makefile.bcc index cc1a6c00ba..128e0ef7ab 100644 --- a/samples/debugrpt/makefile.bcc +++ b/samples/debugrpt/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\debugrpt.exe: $(DEBUGRPT_OBJECTS) $(OBJS)\debugrpt_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DEBUGRPT_OBJECTS),$@,, $(__WXLIB_QA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_XML_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\debugrpt_sample.res + c0w32.obj $(DEBUGRPT_OBJECTS),$@,, $(__WXLIB_QA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_XML_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\debugrpt_sample.res | $(OBJS)\debugrpt_sample.res: .\..\..\samples\sample.rc diff --git a/samples/debugrpt/makefile.gcc b/samples/debugrpt/makefile.gcc index bd2df19b50..cc33187e6d 100644 --- a/samples/debugrpt/makefile.gcc +++ b/samples/debugrpt/makefile.gcc @@ -226,7 +226,7 @@ clean: -if exist $(OBJS)\debugrpt.exe del $(OBJS)\debugrpt.exe $(OBJS)\debugrpt.exe: $(DEBUGRPT_OBJECTS) $(OBJS)\debugrpt_sample_rc.o - $(CXX) -o $@ $(DEBUGRPT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_QA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_XML_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DEBUGRPT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_QA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_XML_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\debugrpt_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/dialogs/makefile.bcc b/samples/dialogs/makefile.bcc index 61bf3a6765..95190bf0a5 100644 --- a/samples/dialogs/makefile.bcc +++ b/samples/dialogs/makefile.bcc @@ -240,7 +240,7 @@ clean: $(OBJS)\dialogs.exe: $(DIALOGS_OBJECTS) $(OBJS)\dialogs_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DIALOGS_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dialogs_sample.res + c0w32.obj $(DIALOGS_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dialogs_sample.res | data: diff --git a/samples/dialogs/makefile.gcc b/samples/dialogs/makefile.gcc index ebcdb7c06a..a3f1bef975 100644 --- a/samples/dialogs/makefile.gcc +++ b/samples/dialogs/makefile.gcc @@ -232,7 +232,7 @@ clean: -if exist $(OBJS)\dialogs.exe del $(OBJS)\dialogs.exe $(OBJS)\dialogs.exe: $(DIALOGS_OBJECTS) $(OBJS)\dialogs_sample_rc.o - $(CXX) -o $@ $(DIALOGS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DIALOGS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/dialup/makefile.bcc b/samples/dialup/makefile.bcc index bb706b7ac9..954bd7f431 100644 --- a/samples/dialup/makefile.bcc +++ b/samples/dialup/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\nettest.exe: $(NETTEST_OBJECTS) $(OBJS)\nettest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(NETTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\nettest_sample.res + c0w32.obj $(NETTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\nettest_sample.res | $(OBJS)\nettest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/dialup/makefile.gcc b/samples/dialup/makefile.gcc index f63ea26360..f0685888a4 100644 --- a/samples/dialup/makefile.gcc +++ b/samples/dialup/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\nettest.exe del $(OBJS)\nettest.exe $(OBJS)\nettest.exe: $(NETTEST_OBJECTS) $(OBJS)\nettest_sample_rc.o - $(CXX) -o $@ $(NETTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(NETTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\nettest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/display/makefile.bcc b/samples/display/makefile.bcc index b31ca6b3c1..95e8b48898 100644 --- a/samples/display/makefile.bcc +++ b/samples/display/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\display.exe: $(DISPLAY_OBJECTS) $(OBJS)\display_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DISPLAY_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\display_sample.res + c0w32.obj $(DISPLAY_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\display_sample.res | $(OBJS)\display_sample.res: .\..\..\samples\sample.rc diff --git a/samples/display/makefile.gcc b/samples/display/makefile.gcc index 7c970200d4..15f9d4454c 100644 --- a/samples/display/makefile.gcc +++ b/samples/display/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\display.exe del $(OBJS)\display.exe $(OBJS)\display.exe: $(DISPLAY_OBJECTS) $(OBJS)\display_sample_rc.o - $(CXX) -o $@ $(DISPLAY_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DISPLAY_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\display_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/dll/makefile.bcc b/samples/dll/makefile.bcc index 68ab07796a..de1c0da19d 100644 --- a/samples/dll/makefile.bcc +++ b/samples/dll/makefile.bcc @@ -256,14 +256,14 @@ clean: $(OBJS)\my_dll.dll: $(MY_DLL_OBJECTS) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(MY_DLL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, + c0d32.obj $(MY_DLL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, | implib -f $(OBJS)\my_dll $@ !if "$(SHARED)" == "0" $(OBJS)\wx_exe.exe: $(WX_EXE_OBJECTS) $(OBJS)\wx_exe_sample.res $(OBJS)\my_dll.dll ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0w32.obj $(WX_EXE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(OBJS)\my_dll.lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, $(OBJS)\wx_exe_sample.res + c0w32.obj $(WX_EXE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(OBJS)\my_dll.lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, $(OBJS)\wx_exe_sample.res | !endif diff --git a/samples/dll/makefile.gcc b/samples/dll/makefile.gcc index 2d2b055fb0..dc0502f9e1 100644 --- a/samples/dll/makefile.gcc +++ b/samples/dll/makefile.gcc @@ -238,11 +238,11 @@ clean: -if exist $(OBJS)\sdk_exe.exe del $(OBJS)\sdk_exe.exe $(OBJS)\my_dll.dll: $(MY_DLL_OBJECTS) - $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(MY_DLL_OBJECTS) -Wl,--out-implib=$(OBJS)\libmy_dll.a $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) $(LINK_DLL_FLAGS) -fPIC -o $@ $(MY_DLL_OBJECTS) -Wl,--out-implib=$(OBJS)\libmy_dll.a $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme ifeq ($(SHARED),0) $(OBJS)\wx_exe.exe: $(WX_EXE_OBJECTS) $(OBJS)\wx_exe_sample_rc.o $(OBJS)\my_dll.dll - $(CXX) -o $@ $(WX_EXE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(OBJS)\libmy_dll.a $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WX_EXE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(OBJS)\libmy_dll.a $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\sdk_exe.exe: $(SDK_EXE_OBJECTS) $(OBJS)\my_dll.dll diff --git a/samples/dnd/makefile.bcc b/samples/dnd/makefile.bcc index 4a514a4a45..51b6f4b835 100644 --- a/samples/dnd/makefile.bcc +++ b/samples/dnd/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\dnd.exe: $(DND_OBJECTS) $(OBJS)\dnd_dnd.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DND_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dnd_dnd.res + c0w32.obj $(DND_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dnd_dnd.res | data: diff --git a/samples/dnd/makefile.gcc b/samples/dnd/makefile.gcc index 85e91ad59b..5879de67e7 100644 --- a/samples/dnd/makefile.gcc +++ b/samples/dnd/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\dnd.exe del $(OBJS)\dnd.exe $(OBJS)\dnd.exe: $(DND_OBJECTS) $(OBJS)\dnd_dnd_rc.o - $(CXX) -o $@ $(DND_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DND_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/docview/makefile.bcc b/samples/docview/makefile.bcc index 9bc0a3b5d0..b7a3be7a76 100644 --- a/samples/docview/makefile.bcc +++ b/samples/docview/makefile.bcc @@ -230,7 +230,7 @@ clean: $(OBJS)\docview.exe: $(DOCVIEW_OBJECTS) $(OBJS)\docview_docview.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DOCVIEW_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\docview_docview.res + c0w32.obj $(DOCVIEW_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\docview_docview.res | $(OBJS)\docview_docview.obj: .\docview.cpp diff --git a/samples/docview/makefile.gcc b/samples/docview/makefile.gcc index 28fe0ccb9a..d07248d8a2 100644 --- a/samples/docview/makefile.gcc +++ b/samples/docview/makefile.gcc @@ -220,7 +220,7 @@ clean: -if exist $(OBJS)\docview.exe del $(OBJS)\docview.exe $(OBJS)\docview.exe: $(DOCVIEW_OBJECTS) $(OBJS)\docview_docview_rc.o - $(CXX) -o $@ $(DOCVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DOCVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\docview_docview.o: ./docview.cpp $(CXX) -c -o $@ $(DOCVIEW_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/dragimag/makefile.bcc b/samples/dragimag/makefile.bcc index 9b521efcb2..4ac2da81d3 100644 --- a/samples/dragimag/makefile.bcc +++ b/samples/dragimag/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\dragimag.exe: $(DRAGIMAG_OBJECTS) $(OBJS)\dragimag_dragimag.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DRAGIMAG_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dragimag_dragimag.res + c0w32.obj $(DRAGIMAG_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\dragimag_dragimag.res | data: diff --git a/samples/dragimag/makefile.gcc b/samples/dragimag/makefile.gcc index 4a4286d519..956f37a35a 100644 --- a/samples/dragimag/makefile.gcc +++ b/samples/dragimag/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\dragimag.exe del $(OBJS)\dragimag.exe $(OBJS)\dragimag.exe: $(DRAGIMAG_OBJECTS) $(OBJS)\dragimag_dragimag_rc.o - $(CXX) -o $@ $(DRAGIMAG_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DRAGIMAG_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/drawing/makefile.bcc b/samples/drawing/makefile.bcc index 4d6d2c187f..47f2e4e7c5 100644 --- a/samples/drawing/makefile.bcc +++ b/samples/drawing/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\drawing.exe: $(DRAWING_OBJECTS) $(OBJS)\drawing_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(DRAWING_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\drawing_sample.res + c0w32.obj $(DRAWING_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\drawing_sample.res | data: diff --git a/samples/drawing/makefile.gcc b/samples/drawing/makefile.gcc index 4f4209ad11..fefce55548 100644 --- a/samples/drawing/makefile.gcc +++ b/samples/drawing/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\drawing.exe del $(OBJS)\drawing.exe $(OBJS)\drawing.exe: $(DRAWING_OBJECTS) $(OBJS)\drawing_sample_rc.o - $(CXX) -o $@ $(DRAWING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(DRAWING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/erase/makefile.bcc b/samples/erase/makefile.bcc index 39cee15fee..a6d7095c74 100644 --- a/samples/erase/makefile.bcc +++ b/samples/erase/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\erase.exe: $(ERASE_OBJECTS) $(OBJS)\erase_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ERASE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\erase_sample.res + c0w32.obj $(ERASE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\erase_sample.res | $(OBJS)\erase_sample.res: .\..\..\samples\sample.rc diff --git a/samples/erase/makefile.gcc b/samples/erase/makefile.gcc index 498f4521a8..8be5ff80a3 100644 --- a/samples/erase/makefile.gcc +++ b/samples/erase/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\erase.exe del $(OBJS)\erase.exe $(OBJS)\erase.exe: $(ERASE_OBJECTS) $(OBJS)\erase_sample_rc.o - $(CXX) -o $@ $(ERASE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ERASE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\erase_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/event/makefile.bcc b/samples/event/makefile.bcc index eb9481716f..b73990856c 100644 --- a/samples/event/makefile.bcc +++ b/samples/event/makefile.bcc @@ -229,7 +229,7 @@ clean: $(OBJS)\event.exe: $(EVENT_OBJECTS) $(OBJS)\event_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(EVENT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\event_sample.res + c0w32.obj $(EVENT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\event_sample.res | $(OBJS)\event_sample.res: .\..\..\samples\sample.rc diff --git a/samples/event/makefile.gcc b/samples/event/makefile.gcc index 105c791901..c689b86707 100644 --- a/samples/event/makefile.gcc +++ b/samples/event/makefile.gcc @@ -219,7 +219,7 @@ clean: -if exist $(OBJS)\event.exe del $(OBJS)\event.exe $(OBJS)\event.exe: $(EVENT_OBJECTS) $(OBJS)\event_sample_rc.o - $(CXX) -o $@ $(EVENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(EVENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\event_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/except/makefile.bcc b/samples/except/makefile.bcc index d480321d83..6804598fff 100644 --- a/samples/except/makefile.bcc +++ b/samples/except/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\except.exe: $(EXCEPT_OBJECTS) $(OBJS)\except_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(EXCEPT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\except_sample.res + c0w32.obj $(EXCEPT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\except_sample.res | $(OBJS)\except_sample.res: .\..\..\samples\sample.rc diff --git a/samples/except/makefile.gcc b/samples/except/makefile.gcc index 59b10a279f..7c5216968a 100644 --- a/samples/except/makefile.gcc +++ b/samples/except/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\except.exe del $(OBJS)\except.exe $(OBJS)\except.exe: $(EXCEPT_OBJECTS) $(OBJS)\except_sample_rc.o - $(CXX) -o $@ $(EXCEPT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(EXCEPT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\except_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/exec/makefile.bcc b/samples/exec/makefile.bcc index 46585c4db6..a3d9470249 100644 --- a/samples/exec/makefile.bcc +++ b/samples/exec/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\exec.exe: $(EXEC_OBJECTS) $(OBJS)\exec_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(EXEC_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\exec_sample.res + c0w32.obj $(EXEC_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\exec_sample.res | $(OBJS)\exec_sample.res: .\..\..\samples\sample.rc diff --git a/samples/exec/makefile.gcc b/samples/exec/makefile.gcc index 23a28020ec..65a84bfd4c 100644 --- a/samples/exec/makefile.gcc +++ b/samples/exec/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\exec.exe del $(OBJS)\exec.exe $(OBJS)\exec.exe: $(EXEC_OBJECTS) $(OBJS)\exec_sample_rc.o - $(CXX) -o $@ $(EXEC_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(EXEC_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\exec_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/font/makefile.bcc b/samples/font/makefile.bcc index 7d8249c264..1259e50616 100644 --- a/samples/font/makefile.bcc +++ b/samples/font/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\font.exe: $(FONT_OBJECTS) $(OBJS)\font_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(FONT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\font_sample.res + c0w32.obj $(FONT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\font_sample.res | data: diff --git a/samples/font/makefile.gcc b/samples/font/makefile.gcc index db2b679db0..4082a98966 100644 --- a/samples/font/makefile.gcc +++ b/samples/font/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\font.exe del $(OBJS)\font.exe $(OBJS)\font.exe: $(FONT_OBJECTS) $(OBJS)\font_sample_rc.o - $(CXX) -o $@ $(FONT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(FONT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/fswatcher/makefile.bcc b/samples/fswatcher/makefile.bcc index 50415ff8da..f0af45993d 100644 --- a/samples/fswatcher/makefile.bcc +++ b/samples/fswatcher/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\fswatcher.exe: $(FSWATCHER_OBJECTS) $(OBJS)\fswatcher_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(FSWATCHER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\fswatcher_sample.res + c0w32.obj $(FSWATCHER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\fswatcher_sample.res | $(OBJS)\fswatcher_sample.res: .\..\..\samples\sample.rc diff --git a/samples/fswatcher/makefile.gcc b/samples/fswatcher/makefile.gcc index 2c35167715..0bf7551253 100644 --- a/samples/fswatcher/makefile.gcc +++ b/samples/fswatcher/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\fswatcher.exe del $(OBJS)\fswatcher.exe $(OBJS)\fswatcher.exe: $(FSWATCHER_OBJECTS) $(OBJS)\fswatcher_sample_rc.o - $(CXX) -o $@ $(FSWATCHER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(FSWATCHER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\fswatcher_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/grid/makefile.bcc b/samples/grid/makefile.bcc index 93a11bf585..a3d2b5d9b2 100644 --- a/samples/grid/makefile.bcc +++ b/samples/grid/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\grid.exe: $(GRID_OBJECTS) $(OBJS)\grid_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(GRID_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\grid_sample.res + c0w32.obj $(GRID_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\grid_sample.res | $(OBJS)\grid_sample.res: .\..\..\samples\sample.rc diff --git a/samples/grid/makefile.gcc b/samples/grid/makefile.gcc index ebdec45674..17d7dd24e5 100644 --- a/samples/grid/makefile.gcc +++ b/samples/grid/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\grid.exe del $(OBJS)\grid.exe $(OBJS)\grid.exe: $(GRID_OBJECTS) $(OBJS)\grid_sample_rc.o - $(CXX) -o $@ $(GRID_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(GRID_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\grid_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/help/makefile.bcc b/samples/help/makefile.bcc index 390126e43c..bdc2ab23d6 100644 --- a/samples/help/makefile.bcc +++ b/samples/help/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\help.exe: $(HELP_OBJECTS) $(OBJS)\help_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HELP_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\help_sample.res + c0w32.obj $(HELP_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\help_sample.res | data: diff --git a/samples/help/makefile.gcc b/samples/help/makefile.gcc index e318d753ac..18d90b7e2c 100644 --- a/samples/help/makefile.gcc +++ b/samples/help/makefile.gcc @@ -226,7 +226,7 @@ clean: -if exist $(OBJS)\help.exe del $(OBJS)\help.exe $(OBJS)\help.exe: $(HELP_OBJECTS) $(OBJS)\help_sample_rc.o - $(CXX) -o $@ $(HELP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HELP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/htlbox/makefile.bcc b/samples/htlbox/makefile.bcc index e2ee1599c3..249ce68137 100644 --- a/samples/htlbox/makefile.bcc +++ b/samples/htlbox/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\htlbox.exe: $(HTLBOX_OBJECTS) $(OBJS)\htlbox_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HTLBOX_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\htlbox_sample.res + c0w32.obj $(HTLBOX_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\htlbox_sample.res | $(OBJS)\htlbox_sample.res: .\..\..\samples\sample.rc diff --git a/samples/htlbox/makefile.gcc b/samples/htlbox/makefile.gcc index 9532dbf68c..f86bd19114 100644 --- a/samples/htlbox/makefile.gcc +++ b/samples/htlbox/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\htlbox.exe del $(OBJS)\htlbox.exe $(OBJS)\htlbox.exe: $(HTLBOX_OBJECTS) $(OBJS)\htlbox_sample_rc.o - $(CXX) -o $@ $(HTLBOX_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HTLBOX_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\htlbox_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/html/about/makefile.bcc b/samples/html/about/makefile.bcc index 9484e46d4c..43b99adeca 100644 --- a/samples/html/about/makefile.bcc +++ b/samples/html/about/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\about.exe: $(ABOUT_OBJECTS) $(OBJS)\about_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ABOUT_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\about_sample.res + c0w32.obj $(ABOUT_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\about_sample.res | data_files: diff --git a/samples/html/about/makefile.gcc b/samples/html/about/makefile.gcc index 7ed5b99d9d..ed953003be 100644 --- a/samples/html/about/makefile.gcc +++ b/samples/html/about/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\about.exe del $(OBJS)\about.exe $(OBJS)\about.exe: $(ABOUT_OBJECTS) $(OBJS)\about_sample_rc.o - $(CXX) -o $@ $(ABOUT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ABOUT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data_files: if not exist $(OBJS)\data mkdir $(OBJS)\data diff --git a/samples/html/help/makefile.bcc b/samples/html/help/makefile.bcc index b0137584e5..cc49c04206 100644 --- a/samples/html/help/makefile.bcc +++ b/samples/html/help/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\htmlhelp.exe: $(HTMLHELP_OBJECTS) $(OBJS)\htmlhelp_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HTMLHELP_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\htmlhelp_sample.res + c0w32.obj $(HTMLHELP_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\htmlhelp_sample.res | data: diff --git a/samples/html/help/makefile.gcc b/samples/html/help/makefile.gcc index 4b689ed534..0e75133f8e 100644 --- a/samples/html/help/makefile.gcc +++ b/samples/html/help/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\htmlhelp.exe del $(OBJS)\htmlhelp.exe $(OBJS)\htmlhelp.exe: $(HTMLHELP_OBJECTS) $(OBJS)\htmlhelp_sample_rc.o - $(CXX) -o $@ $(HTMLHELP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HTMLHELP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS)\helpfiles mkdir $(OBJS)\helpfiles diff --git a/samples/html/helpview/makefile.bcc b/samples/html/helpview/makefile.bcc index 59aaa33399..0be78c6a18 100644 --- a/samples/html/helpview/makefile.bcc +++ b/samples/html/helpview/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\helpview.exe: $(HELPVIEW_OBJECTS) $(OBJS)\helpview_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HELPVIEW_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\helpview_sample.res + c0w32.obj $(HELPVIEW_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\helpview_sample.res | data: diff --git a/samples/html/helpview/makefile.gcc b/samples/html/helpview/makefile.gcc index bd55b7707e..3f24e71fd1 100644 --- a/samples/html/helpview/makefile.gcc +++ b/samples/html/helpview/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\helpview.exe del $(OBJS)\helpview.exe $(OBJS)\helpview.exe: $(HELPVIEW_OBJECTS) $(OBJS)\helpview_sample_rc.o - $(CXX) -o $@ $(HELPVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HELPVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/html/printing/makefile.bcc b/samples/html/printing/makefile.bcc index 964a37b4f5..4fbc685102 100644 --- a/samples/html/printing/makefile.bcc +++ b/samples/html/printing/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\htmlprinting.exe: $(HTMLPRINTING_OBJECTS) $(OBJS)\htmlprinting_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HTMLPRINTING_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\htmlprinting_sample.res + c0w32.obj $(HTMLPRINTING_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\htmlprinting_sample.res | data: diff --git a/samples/html/printing/makefile.gcc b/samples/html/printing/makefile.gcc index 047ae980f1..9b2d9157a2 100644 --- a/samples/html/printing/makefile.gcc +++ b/samples/html/printing/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\htmlprinting.exe del $(OBJS)\htmlprinting.exe $(OBJS)\htmlprinting.exe: $(HTMLPRINTING_OBJECTS) $(OBJS)\htmlprinting_sample_rc.o - $(CXX) -o $@ $(HTMLPRINTING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HTMLPRINTING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/html/test/makefile.bcc b/samples/html/test/makefile.bcc index 781041f5b9..b731585504 100644 --- a/samples/html/test/makefile.bcc +++ b/samples/html/test/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\test.exe: $(TEST_OBJECTS) $(OBJS)\test_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TEST_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\test_sample.res + c0w32.obj $(TEST_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\test_sample.res | data: diff --git a/samples/html/test/makefile.gcc b/samples/html/test/makefile.gcc index 88efccc04d..39b76549bb 100644 --- a/samples/html/test/makefile.gcc +++ b/samples/html/test/makefile.gcc @@ -226,7 +226,7 @@ clean: -if exist $(OBJS)\test.exe del $(OBJS)\test.exe $(OBJS)\test.exe: $(TEST_OBJECTS) $(OBJS)\test_sample_rc.o - $(CXX) -o $@ $(TEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/html/virtual/makefile.bcc b/samples/html/virtual/makefile.bcc index 7bd3c5fc9d..f28c2a3f02 100644 --- a/samples/html/virtual/makefile.bcc +++ b/samples/html/virtual/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\virtual.exe: $(VIRTUAL_OBJECTS) $(OBJS)\virtual_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(VIRTUAL_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\virtual_sample.res + c0w32.obj $(VIRTUAL_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\virtual_sample.res | data: diff --git a/samples/html/virtual/makefile.gcc b/samples/html/virtual/makefile.gcc index d70212c306..30f5425fbc 100644 --- a/samples/html/virtual/makefile.gcc +++ b/samples/html/virtual/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\virtual.exe del $(OBJS)\virtual.exe $(OBJS)\virtual.exe: $(VIRTUAL_OBJECTS) $(OBJS)\virtual_sample_rc.o - $(CXX) -o $@ $(VIRTUAL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(VIRTUAL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/html/widget/makefile.bcc b/samples/html/widget/makefile.bcc index 1e04c8e799..bfa09e5a6f 100644 --- a/samples/html/widget/makefile.bcc +++ b/samples/html/widget/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\widget.exe: $(WIDGET_OBJECTS) $(OBJS)\widget_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WIDGET_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\widget_sample.res + c0w32.obj $(WIDGET_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\widget_sample.res | data: diff --git a/samples/html/widget/makefile.gcc b/samples/html/widget/makefile.gcc index eeba506dc2..03b78a8228 100644 --- a/samples/html/widget/makefile.gcc +++ b/samples/html/widget/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\widget.exe del $(OBJS)\widget.exe $(OBJS)\widget.exe: $(WIDGET_OBJECTS) $(OBJS)\widget_sample_rc.o - $(CXX) -o $@ $(WIDGET_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WIDGET_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/html/zip/makefile.bcc b/samples/html/zip/makefile.bcc index a7c0931eb3..54ba40aafa 100644 --- a/samples/html/zip/makefile.bcc +++ b/samples/html/zip/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\zip.exe: $(ZIP_OBJECTS) $(OBJS)\zip_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ZIP_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\zip_sample.res + c0w32.obj $(ZIP_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\zip_sample.res | data: diff --git a/samples/html/zip/makefile.gcc b/samples/html/zip/makefile.gcc index b95713925d..208c74a050 100644 --- a/samples/html/zip/makefile.gcc +++ b/samples/html/zip/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\zip.exe del $(OBJS)\zip.exe $(OBJS)\zip.exe: $(ZIP_OBJECTS) $(OBJS)\zip_sample_rc.o - $(CXX) -o $@ $(ZIP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ZIP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/image/makefile.bcc b/samples/image/makefile.bcc index 1f68ea8194..57286539ae 100644 --- a/samples/image/makefile.bcc +++ b/samples/image/makefile.bcc @@ -229,7 +229,7 @@ clean: $(OBJS)\image.exe: $(IMAGE_OBJECTS) $(OBJS)\image_image.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(IMAGE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\image_image.res + c0w32.obj $(IMAGE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\image_image.res | data: diff --git a/samples/image/makefile.gcc b/samples/image/makefile.gcc index 755fe5fca1..daead73f9a 100644 --- a/samples/image/makefile.gcc +++ b/samples/image/makefile.gcc @@ -219,7 +219,7 @@ clean: -if exist $(OBJS)\image.exe del $(OBJS)\image.exe $(OBJS)\image.exe: $(IMAGE_OBJECTS) $(OBJS)\image_image_rc.o - $(CXX) -o $@ $(IMAGE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(IMAGE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/internat/makefile.bcc b/samples/internat/makefile.bcc index 19ec3e705a..fa8a0724ef 100644 --- a/samples/internat/makefile.bcc +++ b/samples/internat/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\internat.exe: $(INTERNAT_OBJECTS) $(OBJS)\internat_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(INTERNAT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\internat_sample.res + c0w32.obj $(INTERNAT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\internat_sample.res | ar: diff --git a/samples/internat/makefile.gcc b/samples/internat/makefile.gcc index 9c0bb1fcbc..ff784f1903 100644 --- a/samples/internat/makefile.gcc +++ b/samples/internat/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\internat.exe del $(OBJS)\internat.exe $(OBJS)\internat.exe: $(INTERNAT_OBJECTS) $(OBJS)\internat_sample_rc.o - $(CXX) -o $@ $(INTERNAT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(INTERNAT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme ar: if not exist $(OBJS)\ar mkdir $(OBJS)\ar diff --git a/samples/ipc/makefile.bcc b/samples/ipc/makefile.bcc index 40e063d3ea..07b4acbe36 100644 --- a/samples/ipc/makefile.bcc +++ b/samples/ipc/makefile.bcc @@ -287,25 +287,25 @@ clean: !if "$(USE_GUI)" == "1" $(OBJS)\ipcclient.exe: $(IPCCLIENT_OBJECTS) $(OBJS)\ipcclient_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0w32.obj $(IPCCLIENT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\ipcclient_sample.res + c0w32.obj $(IPCCLIENT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\ipcclient_sample.res | !endif !if "$(USE_GUI)" == "1" $(OBJS)\ipcserver.exe: $(IPCSERVER_OBJECTS) $(OBJS)\ipcserver_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0w32.obj $(IPCSERVER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\ipcserver_sample.res + c0w32.obj $(IPCSERVER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\ipcserver_sample.res | !endif $(OBJS)\baseipcclient.exe: $(BASEIPCCLIENT_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BASEIPCCLIENT_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0x32.obj $(BASEIPCCLIENT_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | $(OBJS)\baseipcserver.exe: $(BASEIPCSERVER_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BASEIPCSERVER_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0x32.obj $(BASEIPCSERVER_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | $(OBJS)\ipcclient_sample.res: .\..\..\samples\sample.rc diff --git a/samples/ipc/makefile.gcc b/samples/ipc/makefile.gcc index 42385f8689..d81ac94a99 100644 --- a/samples/ipc/makefile.gcc +++ b/samples/ipc/makefile.gcc @@ -266,19 +266,19 @@ clean: ifeq ($(USE_GUI),1) $(OBJS)\ipcclient.exe: $(IPCCLIENT_OBJECTS) $(OBJS)\ipcclient_sample_rc.o - $(CXX) -o $@ $(IPCCLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(IPCCLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif ifeq ($(USE_GUI),1) $(OBJS)\ipcserver.exe: $(IPCSERVER_OBJECTS) $(OBJS)\ipcserver_sample_rc.o - $(CXX) -o $@ $(IPCSERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(IPCSERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\baseipcclient.exe: $(BASEIPCCLIENT_OBJECTS) - $(CXX) -o $@ $(BASEIPCCLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BASEIPCCLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\baseipcserver.exe: $(BASEIPCSERVER_OBJECTS) - $(CXX) -o $@ $(BASEIPCSERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BASEIPCSERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\ipcclient_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_0) $(__DEBUG_DEFINE_p_0) $(__NDEBUG_DEFINE_p_0) $(__EXCEPTIONS_DEFINE_p_0) $(__RTTI_DEFINE_p_0) $(__THREAD_DEFINE_p_0) $(__UNICODE_DEFINE_p_0) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_0) --include-dir ./../../samples --define NOPCH diff --git a/samples/joytest/makefile.bcc b/samples/joytest/makefile.bcc index cc808666b6..95be09737d 100644 --- a/samples/joytest/makefile.bcc +++ b/samples/joytest/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\joytest.exe: $(JOYTEST_OBJECTS) $(OBJS)\joytest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(JOYTEST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\joytest_sample.res + c0w32.obj $(JOYTEST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\joytest_sample.res | $(OBJS)\joytest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/joytest/makefile.gcc b/samples/joytest/makefile.gcc index df95730908..f0b35596d3 100644 --- a/samples/joytest/makefile.gcc +++ b/samples/joytest/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\joytest.exe del $(OBJS)\joytest.exe $(OBJS)\joytest.exe: $(JOYTEST_OBJECTS) $(OBJS)\joytest_sample_rc.o - $(CXX) -o $@ $(JOYTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(JOYTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\joytest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/keyboard/makefile.bcc b/samples/keyboard/makefile.bcc index dfd4245487..e4f0e13c9d 100644 --- a/samples/keyboard/makefile.bcc +++ b/samples/keyboard/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\keyboard.exe: $(KEYBOARD_OBJECTS) $(OBJS)\keyboard_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(KEYBOARD_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\keyboard_sample.res + c0w32.obj $(KEYBOARD_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\keyboard_sample.res | $(OBJS)\keyboard_sample.res: .\..\..\samples\sample.rc diff --git a/samples/keyboard/makefile.gcc b/samples/keyboard/makefile.gcc index 240c90e7ae..d008b12cae 100644 --- a/samples/keyboard/makefile.gcc +++ b/samples/keyboard/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\keyboard.exe del $(OBJS)\keyboard.exe $(OBJS)\keyboard.exe: $(KEYBOARD_OBJECTS) $(OBJS)\keyboard_sample_rc.o - $(CXX) -o $@ $(KEYBOARD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(KEYBOARD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\keyboard_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/layout/makefile.bcc b/samples/layout/makefile.bcc index c8e2db8537..e6f2ad94be 100644 --- a/samples/layout/makefile.bcc +++ b/samples/layout/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\layout.exe: $(LAYOUT_OBJECTS) $(OBJS)\layout_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(LAYOUT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\layout_sample.res + c0w32.obj $(LAYOUT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\layout_sample.res | $(OBJS)\layout_sample.res: .\..\..\samples\sample.rc diff --git a/samples/layout/makefile.gcc b/samples/layout/makefile.gcc index 23004a7fee..a0796d8572 100644 --- a/samples/layout/makefile.gcc +++ b/samples/layout/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\layout.exe del $(OBJS)\layout.exe $(OBJS)\layout.exe: $(LAYOUT_OBJECTS) $(OBJS)\layout_sample_rc.o - $(CXX) -o $@ $(LAYOUT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(LAYOUT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\layout_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/listctrl/makefile.bcc b/samples/listctrl/makefile.bcc index b9beab0623..3cd9f8ce03 100644 --- a/samples/listctrl/makefile.bcc +++ b/samples/listctrl/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\listctrl.exe: $(LISTCTRL_OBJECTS) $(OBJS)\listctrl_listtest.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(LISTCTRL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\listctrl_listtest.res + c0w32.obj $(LISTCTRL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\listctrl_listtest.res | $(OBJS)\listctrl_listtest.obj: .\listtest.cpp diff --git a/samples/listctrl/makefile.gcc b/samples/listctrl/makefile.gcc index 2642494e93..a21dd4642f 100644 --- a/samples/listctrl/makefile.gcc +++ b/samples/listctrl/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\listctrl.exe del $(OBJS)\listctrl.exe $(OBJS)\listctrl.exe: $(LISTCTRL_OBJECTS) $(OBJS)\listctrl_listtest_rc.o - $(CXX) -o $@ $(LISTCTRL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(LISTCTRL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\listctrl_listtest.o: ./listtest.cpp $(CXX) -c -o $@ $(LISTCTRL_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/mdi/makefile.bcc b/samples/mdi/makefile.bcc index f8f47f66bf..55a910aa2e 100644 --- a/samples/mdi/makefile.bcc +++ b/samples/mdi/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\mdi.exe: $(MDI_OBJECTS) $(OBJS)\mdi_mdi.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(MDI_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\mdi_mdi.res + c0w32.obj $(MDI_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\mdi_mdi.res | $(OBJS)\mdi_mdi.obj: .\mdi.cpp diff --git a/samples/mdi/makefile.gcc b/samples/mdi/makefile.gcc index 55ecec86af..2f3b7a3da5 100644 --- a/samples/mdi/makefile.gcc +++ b/samples/mdi/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\mdi.exe del $(OBJS)\mdi.exe $(OBJS)\mdi.exe: $(MDI_OBJECTS) $(OBJS)\mdi_mdi_rc.o - $(CXX) -o $@ $(MDI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(MDI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\mdi_mdi.o: ./mdi.cpp $(CXX) -c -o $@ $(MDI_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/mediaplayer/makefile.bcc b/samples/mediaplayer/makefile.bcc index 38f19120df..ef0733c66e 100644 --- a/samples/mediaplayer/makefile.bcc +++ b/samples/mediaplayer/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\mediaplayer.exe: $(MEDIAPLAYER_OBJECTS) $(OBJS)\mediaplayer_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(MEDIAPLAYER_OBJECTS),$@,, $(__WXLIB_MEDIA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\mediaplayer_sample.res + c0w32.obj $(MEDIAPLAYER_OBJECTS),$@,, $(__WXLIB_MEDIA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\mediaplayer_sample.res | $(OBJS)\mediaplayer_sample.res: .\..\..\samples\sample.rc diff --git a/samples/mediaplayer/makefile.gcc b/samples/mediaplayer/makefile.gcc index 235e48f980..c5c235aa0e 100644 --- a/samples/mediaplayer/makefile.gcc +++ b/samples/mediaplayer/makefile.gcc @@ -224,7 +224,7 @@ clean: -if exist $(OBJS)\mediaplayer.exe del $(OBJS)\mediaplayer.exe $(OBJS)\mediaplayer.exe: $(MEDIAPLAYER_OBJECTS) $(OBJS)\mediaplayer_sample_rc.o - $(CXX) -o $@ $(MEDIAPLAYER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_MEDIA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(MEDIAPLAYER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_MEDIA_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\mediaplayer_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/memcheck/makefile.bcc b/samples/memcheck/makefile.bcc index 2ae5a77004..5f6b64c6dc 100644 --- a/samples/memcheck/makefile.bcc +++ b/samples/memcheck/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\memcheck.exe: $(MEMCHECK_OBJECTS) $(OBJS)\memcheck_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(MEMCHECK_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\memcheck_sample.res + c0w32.obj $(MEMCHECK_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\memcheck_sample.res | $(OBJS)\memcheck_sample.res: .\..\..\samples\sample.rc diff --git a/samples/memcheck/makefile.gcc b/samples/memcheck/makefile.gcc index 0e60f79893..94296ebc29 100644 --- a/samples/memcheck/makefile.gcc +++ b/samples/memcheck/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\memcheck.exe del $(OBJS)\memcheck.exe $(OBJS)\memcheck.exe: $(MEMCHECK_OBJECTS) $(OBJS)\memcheck_sample_rc.o - $(CXX) -o $@ $(MEMCHECK_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(MEMCHECK_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\memcheck_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/menu/makefile.bcc b/samples/menu/makefile.bcc index f900fa2edb..c32a522c8c 100644 --- a/samples/menu/makefile.bcc +++ b/samples/menu/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\menu.exe: $(MENU_OBJECTS) $(OBJS)\menu_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(MENU_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\menu_sample.res + c0w32.obj $(MENU_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\menu_sample.res | $(OBJS)\menu_sample.res: .\..\..\samples\sample.rc diff --git a/samples/menu/makefile.gcc b/samples/menu/makefile.gcc index 87a5216b43..a85ff6e18f 100644 --- a/samples/menu/makefile.gcc +++ b/samples/menu/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\menu.exe del $(OBJS)\menu.exe $(OBJS)\menu.exe: $(MENU_OBJECTS) $(OBJS)\menu_sample_rc.o - $(CXX) -o $@ $(MENU_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(MENU_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\menu_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/minimal/makefile.bcc b/samples/minimal/makefile.bcc index 54dc0e4c48..bffab29c32 100644 --- a/samples/minimal/makefile.bcc +++ b/samples/minimal/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\minimal.exe: $(MINIMAL_OBJECTS) $(OBJS)\minimal_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(MINIMAL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\minimal_sample.res + c0w32.obj $(MINIMAL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\minimal_sample.res | $(OBJS)\minimal_sample.res: .\..\..\samples\sample.rc diff --git a/samples/minimal/makefile.gcc b/samples/minimal/makefile.gcc index 41830b907e..711548768c 100644 --- a/samples/minimal/makefile.gcc +++ b/samples/minimal/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\minimal.exe del $(OBJS)\minimal.exe $(OBJS)\minimal.exe: $(MINIMAL_OBJECTS) $(OBJS)\minimal_sample_rc.o - $(CXX) -o $@ $(MINIMAL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(MINIMAL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\minimal_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/nativdlg/makefile.bcc b/samples/nativdlg/makefile.bcc index 0b2c397f05..cdd93cb759 100644 --- a/samples/nativdlg/makefile.bcc +++ b/samples/nativdlg/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\nativdlg.exe: $(NATIVDLG_OBJECTS) $(OBJS)\nativdlg_nativdlg.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(NATIVDLG_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\nativdlg_nativdlg.res + c0w32.obj $(NATIVDLG_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\nativdlg_nativdlg.res | $(OBJS)\nativdlg_nativdlg.obj: .\nativdlg.cpp diff --git a/samples/nativdlg/makefile.gcc b/samples/nativdlg/makefile.gcc index ecfc98a195..0bc86b5a7f 100644 --- a/samples/nativdlg/makefile.gcc +++ b/samples/nativdlg/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\nativdlg.exe del $(OBJS)\nativdlg.exe $(OBJS)\nativdlg.exe: $(NATIVDLG_OBJECTS) $(OBJS)\nativdlg_nativdlg_rc.o - $(CXX) -o $@ $(NATIVDLG_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(NATIVDLG_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\nativdlg_nativdlg.o: ./nativdlg.cpp $(CXX) -c -o $@ $(NATIVDLG_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/notebook/makefile.bcc b/samples/notebook/makefile.bcc index 564fad40f0..7d3b94d54c 100644 --- a/samples/notebook/makefile.bcc +++ b/samples/notebook/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\notebook.exe: $(NOTEBOOK_OBJECTS) $(OBJS)\notebook_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(NOTEBOOK_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\notebook_sample.res + c0w32.obj $(NOTEBOOK_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\notebook_sample.res | $(OBJS)\notebook_sample.res: .\..\..\samples\sample.rc diff --git a/samples/notebook/makefile.gcc b/samples/notebook/makefile.gcc index 63dd763309..a806301c70 100644 --- a/samples/notebook/makefile.gcc +++ b/samples/notebook/makefile.gcc @@ -226,7 +226,7 @@ clean: -if exist $(OBJS)\notebook.exe del $(OBJS)\notebook.exe $(OBJS)\notebook.exe: $(NOTEBOOK_OBJECTS) $(OBJS)\notebook_sample_rc.o - $(CXX) -o $@ $(NOTEBOOK_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(NOTEBOOK_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\notebook_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/oleauto/makefile.bcc b/samples/oleauto/makefile.bcc index c55b679b58..c7ecd889ab 100644 --- a/samples/oleauto/makefile.bcc +++ b/samples/oleauto/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\oleauto.exe: $(OLEAUTO_OBJECTS) $(OBJS)\oleauto_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(OLEAUTO_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\oleauto_sample.res + c0w32.obj $(OLEAUTO_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\oleauto_sample.res | $(OBJS)\oleauto_sample.res: .\..\..\samples\sample.rc diff --git a/samples/oleauto/makefile.gcc b/samples/oleauto/makefile.gcc index 9523461c22..fcffcc9629 100644 --- a/samples/oleauto/makefile.gcc +++ b/samples/oleauto/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\oleauto.exe del $(OBJS)\oleauto.exe $(OBJS)\oleauto.exe: $(OLEAUTO_OBJECTS) $(OBJS)\oleauto_sample_rc.o - $(CXX) -o $@ $(OLEAUTO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(OLEAUTO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\oleauto_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/opengl/cube/makefile.bcc b/samples/opengl/cube/makefile.bcc index b4904cf64d..e87c2e5b29 100644 --- a/samples/opengl/cube/makefile.bcc +++ b/samples/opengl/cube/makefile.bcc @@ -232,7 +232,7 @@ clean: !if "$(USE_OPENGL)" == "1" $(OBJS)\cube.exe: $(CUBE_OBJECTS) $(OBJS)\cube_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(CUBE_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\cube_sample.res + c0w32.obj $(CUBE_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\cube_sample.res | !endif diff --git a/samples/opengl/cube/makefile.gcc b/samples/opengl/cube/makefile.gcc index ae98ae7e43..ca0543d428 100644 --- a/samples/opengl/cube/makefile.gcc +++ b/samples/opengl/cube/makefile.gcc @@ -222,7 +222,7 @@ clean: ifeq ($(USE_OPENGL),1) $(OBJS)\cube.exe: $(CUBE_OBJECTS) $(OBJS)\cube_sample_rc.o - $(CXX) -o $@ $(CUBE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CUBE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\cube_sample_rc.o: ./../../../samples/sample.rc diff --git a/samples/opengl/isosurf/makefile.bcc b/samples/opengl/isosurf/makefile.bcc index b30f10fe32..5759c79737 100644 --- a/samples/opengl/isosurf/makefile.bcc +++ b/samples/opengl/isosurf/makefile.bcc @@ -232,7 +232,7 @@ clean: !if "$(USE_OPENGL)" == "1" $(OBJS)\isosurf.exe: $(ISOSURF_OBJECTS) $(OBJS)\isosurf_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(ISOSURF_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\isosurf_sample.res + c0w32.obj $(ISOSURF_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\isosurf_sample.res | !endif diff --git a/samples/opengl/isosurf/makefile.gcc b/samples/opengl/isosurf/makefile.gcc index 1a3e836b9b..bf59d3f9d9 100644 --- a/samples/opengl/isosurf/makefile.gcc +++ b/samples/opengl/isosurf/makefile.gcc @@ -222,7 +222,7 @@ clean: ifeq ($(USE_OPENGL),1) $(OBJS)\isosurf.exe: $(ISOSURF_OBJECTS) $(OBJS)\isosurf_sample_rc.o - $(CXX) -o $@ $(ISOSURF_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(ISOSURF_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif data: diff --git a/samples/opengl/penguin/makefile.bcc b/samples/opengl/penguin/makefile.bcc index 1d92eb5dae..42ba6a7339 100644 --- a/samples/opengl/penguin/makefile.bcc +++ b/samples/opengl/penguin/makefile.bcc @@ -240,7 +240,7 @@ clean: !if "$(USE_OPENGL)" == "1" $(OBJS)\penguin.exe: $(PENGUIN_OBJECTS) $(OBJS)\penguin_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(PENGUIN_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\penguin_sample.res + c0w32.obj $(PENGUIN_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\penguin_sample.res | !endif diff --git a/samples/opengl/penguin/makefile.gcc b/samples/opengl/penguin/makefile.gcc index d78bec52f8..b98a5dd0dd 100644 --- a/samples/opengl/penguin/makefile.gcc +++ b/samples/opengl/penguin/makefile.gcc @@ -230,7 +230,7 @@ clean: ifeq ($(USE_OPENGL),1) $(OBJS)\penguin.exe: $(PENGUIN_OBJECTS) $(OBJS)\penguin_sample_rc.o - $(CXX) -o $@ $(PENGUIN_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(PENGUIN_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif data: diff --git a/samples/opengl/pyramid/makefile.bcc b/samples/opengl/pyramid/makefile.bcc index a921cb1372..f081413209 100644 --- a/samples/opengl/pyramid/makefile.bcc +++ b/samples/opengl/pyramid/makefile.bcc @@ -235,7 +235,7 @@ clean: !if "$(USE_OPENGL)" == "1" $(OBJS)\pyramid.exe: $(PYRAMID_OBJECTS) $(OBJS)\pyramid_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(PYRAMID_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\pyramid_sample.res + c0w32.obj $(PYRAMID_OBJECTS),$@,, wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\pyramid_sample.res | !endif diff --git a/samples/opengl/pyramid/makefile.gcc b/samples/opengl/pyramid/makefile.gcc index d5b36f1fbb..8fea2b8e9f 100644 --- a/samples/opengl/pyramid/makefile.gcc +++ b/samples/opengl/pyramid/makefile.gcc @@ -225,7 +225,7 @@ clean: ifeq ($(USE_OPENGL),1) $(OBJS)\pyramid.exe: $(PYRAMID_OBJECTS) $(OBJS)\pyramid_sample_rc.o - $(CXX) -o $@ $(PYRAMID_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(PYRAMID_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\pyramid_sample_rc.o: ./../../../samples/sample.rc diff --git a/samples/ownerdrw/makefile.bcc b/samples/ownerdrw/makefile.bcc index ebd9ccd7a8..791fbbca1a 100644 --- a/samples/ownerdrw/makefile.bcc +++ b/samples/ownerdrw/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\ownerdrw.exe: $(OWNERDRW_OBJECTS) $(OBJS)\ownerdrw_ownerdrw.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(OWNERDRW_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\ownerdrw_ownerdrw.res + c0w32.obj $(OWNERDRW_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\ownerdrw_ownerdrw.res | data: diff --git a/samples/ownerdrw/makefile.gcc b/samples/ownerdrw/makefile.gcc index 1df36b4e42..62538a219c 100644 --- a/samples/ownerdrw/makefile.gcc +++ b/samples/ownerdrw/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\ownerdrw.exe del $(OBJS)\ownerdrw.exe $(OBJS)\ownerdrw.exe: $(OWNERDRW_OBJECTS) $(OBJS)\ownerdrw_ownerdrw_rc.o - $(CXX) -o $@ $(OWNERDRW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(OWNERDRW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/popup/makefile.bcc b/samples/popup/makefile.bcc index 29b477d4ac..cce36235d0 100644 --- a/samples/popup/makefile.bcc +++ b/samples/popup/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\popup.exe: $(POPUP_OBJECTS) $(OBJS)\popup_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(POPUP_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\popup_sample.res + c0w32.obj $(POPUP_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\popup_sample.res | $(OBJS)\popup_popup.obj: .\popup.cpp diff --git a/samples/popup/makefile.gcc b/samples/popup/makefile.gcc index d83e980c5e..babb06554d 100644 --- a/samples/popup/makefile.gcc +++ b/samples/popup/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\popup.exe del $(OBJS)\popup.exe $(OBJS)\popup.exe: $(POPUP_OBJECTS) $(OBJS)\popup_sample_rc.o - $(CXX) -o $@ $(POPUP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(POPUP_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\popup_popup.o: ./popup.cpp $(CXX) -c -o $@ $(POPUP_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/power/makefile.bcc b/samples/power/makefile.bcc index 40206995a6..cd8c2596b7 100644 --- a/samples/power/makefile.bcc +++ b/samples/power/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\power.exe: $(POWER_OBJECTS) $(OBJS)\power_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(POWER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\power_sample.res + c0w32.obj $(POWER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\power_sample.res | $(OBJS)\power_sample.res: .\..\..\samples\sample.rc diff --git a/samples/power/makefile.gcc b/samples/power/makefile.gcc index 847a64d091..3a35fd7644 100644 --- a/samples/power/makefile.gcc +++ b/samples/power/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\power.exe del $(OBJS)\power.exe $(OBJS)\power.exe: $(POWER_OBJECTS) $(OBJS)\power_sample_rc.o - $(CXX) -o $@ $(POWER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(POWER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\power_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/preferences/makefile.bcc b/samples/preferences/makefile.bcc index 3788266b20..b418bdb53a 100644 --- a/samples/preferences/makefile.bcc +++ b/samples/preferences/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\preferences.exe: $(PREFERENCES_OBJECTS) $(OBJS)\preferences_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(PREFERENCES_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\preferences_sample.res + c0w32.obj $(PREFERENCES_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\preferences_sample.res | $(OBJS)\preferences_sample.res: .\..\..\samples\sample.rc diff --git a/samples/preferences/makefile.gcc b/samples/preferences/makefile.gcc index 10b21bbb02..deb3cd9cbc 100644 --- a/samples/preferences/makefile.gcc +++ b/samples/preferences/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\preferences.exe del $(OBJS)\preferences.exe $(OBJS)\preferences.exe: $(PREFERENCES_OBJECTS) $(OBJS)\preferences_sample_rc.o - $(CXX) -o $@ $(PREFERENCES_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(PREFERENCES_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\preferences_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/printing/makefile.bcc b/samples/printing/makefile.bcc index 29a7f05217..41ea718904 100644 --- a/samples/printing/makefile.bcc +++ b/samples/printing/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\printing.exe: $(PRINTING_OBJECTS) $(OBJS)\printing_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(PRINTING_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\printing_sample.res + c0w32.obj $(PRINTING_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\printing_sample.res | $(OBJS)\printing_sample.res: .\..\..\samples\sample.rc diff --git a/samples/printing/makefile.gcc b/samples/printing/makefile.gcc index 74ca4081c2..c434648c8d 100644 --- a/samples/printing/makefile.gcc +++ b/samples/printing/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\printing.exe del $(OBJS)\printing.exe $(OBJS)\printing.exe: $(PRINTING_OBJECTS) $(OBJS)\printing_sample_rc.o - $(CXX) -o $@ $(PRINTING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(PRINTING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\printing_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/propgrid/makefile.bcc b/samples/propgrid/makefile.bcc index 018a800b31..d58518cf89 100644 --- a/samples/propgrid/makefile.bcc +++ b/samples/propgrid/makefile.bcc @@ -239,7 +239,7 @@ clean: $(OBJS)\propgrid.exe: $(PROPGRID_OBJECTS) $(OBJS)\propgrid_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(PROPGRID_OBJECTS),$@,, $(__WXLIB_PROPGRID_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\propgrid_sample.res + c0w32.obj $(PROPGRID_OBJECTS),$@,, $(__WXLIB_PROPGRID_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\propgrid_sample.res | $(OBJS)\propgrid_propgrid.obj: .\propgrid.cpp diff --git a/samples/propgrid/makefile.gcc b/samples/propgrid/makefile.gcc index a7be5b6cdd..33bf48e163 100644 --- a/samples/propgrid/makefile.gcc +++ b/samples/propgrid/makefile.gcc @@ -229,7 +229,7 @@ clean: -if exist $(OBJS)\propgrid.exe del $(OBJS)\propgrid.exe $(OBJS)\propgrid.exe: $(PROPGRID_OBJECTS) $(OBJS)\propgrid_sample_rc.o - $(CXX) -o $@ $(PROPGRID_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_PROPGRID_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(PROPGRID_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_PROPGRID_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\propgrid_propgrid.o: ./propgrid.cpp $(CXX) -c -o $@ $(PROPGRID_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/regtest/makefile.bcc b/samples/regtest/makefile.bcc index a850a8cee0..65896405aa 100644 --- a/samples/regtest/makefile.bcc +++ b/samples/regtest/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\regtest.exe: $(REGTEST_OBJECTS) $(OBJS)\regtest_regtest.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(REGTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\regtest_regtest.res + c0w32.obj $(REGTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\regtest_regtest.res | $(OBJS)\regtest_regtest.obj: .\regtest.cpp diff --git a/samples/regtest/makefile.gcc b/samples/regtest/makefile.gcc index ec10368d30..8cee01e2f1 100644 --- a/samples/regtest/makefile.gcc +++ b/samples/regtest/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\regtest.exe del $(OBJS)\regtest.exe $(OBJS)\regtest.exe: $(REGTEST_OBJECTS) $(OBJS)\regtest_regtest_rc.o - $(CXX) -o $@ $(REGTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(REGTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\regtest_regtest.o: ./regtest.cpp $(CXX) -c -o $@ $(REGTEST_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/render/makefile.bcc b/samples/render/makefile.bcc index 4b69d5994e..581ff0cec6 100644 --- a/samples/render/makefile.bcc +++ b/samples/render/makefile.bcc @@ -253,13 +253,13 @@ clean: $(OBJS)\render.exe: $(RENDER_OBJECTS) $(OBJS)\render_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0w32.obj $(RENDER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_0).lib,, $(OBJS)\render_sample.res + c0w32.obj $(RENDER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_0).lib,, $(OBJS)\render_sample.res | !if "$(SHARED)" == "1" $(OBJS)\renddll_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_VERSION_NODOT)$(WXCOMPILER).dll: $(RENDDLL_OBJECTS) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(RENDDLL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_0).lib,, + c0d32.obj $(RENDDLL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_0).lib,, | !endif diff --git a/samples/render/makefile.gcc b/samples/render/makefile.gcc index c8ad42db98..780f193448 100644 --- a/samples/render/makefile.gcc +++ b/samples/render/makefile.gcc @@ -239,11 +239,11 @@ clean: -if exist $(OBJS)\renddll_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_VERSION_NODOT)$(WXCOMPILER).dll del $(OBJS)\renddll_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_VERSION_NODOT)$(WXCOMPILER).dll $(OBJS)\render.exe: $(RENDER_OBJECTS) $(OBJS)\render_sample_rc.o - $(CXX) -o $@ $(RENDER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(RENDER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme ifeq ($(SHARED),1) $(OBJS)\renddll_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_VERSION_NODOT)$(WXCOMPILER).dll: $(RENDDLL_OBJECTS) - $(CXX) $(LINK_MODULE_FLAGS) -fPIC -o $@ $(RENDDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) $(LINK_MODULE_FLAGS) -fPIC -o $@ $(RENDDLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\render_sample_rc.o: ./../../samples/sample.rc diff --git a/samples/ribbon/makefile.bcc b/samples/ribbon/makefile.bcc index f161a7846d..149bba1de7 100644 --- a/samples/ribbon/makefile.bcc +++ b/samples/ribbon/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\ribbon.exe: $(RIBBON_OBJECTS) $(OBJS)\ribbon_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(RIBBON_OBJECTS),$@,, $(__WXLIB_RIBBON_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\ribbon_sample.res + c0w32.obj $(RIBBON_OBJECTS),$@,, $(__WXLIB_RIBBON_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\ribbon_sample.res | $(OBJS)\ribbon_ribbondemo.obj: .\ribbondemo.cpp diff --git a/samples/ribbon/makefile.gcc b/samples/ribbon/makefile.gcc index ccd496dbc8..ebc9a77175 100644 --- a/samples/ribbon/makefile.gcc +++ b/samples/ribbon/makefile.gcc @@ -226,7 +226,7 @@ clean: -if exist $(OBJS)\ribbon.exe del $(OBJS)\ribbon.exe $(OBJS)\ribbon.exe: $(RIBBON_OBJECTS) $(OBJS)\ribbon_sample_rc.o - $(CXX) -o $@ $(RIBBON_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_RIBBON_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(RIBBON_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_RIBBON_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\ribbon_ribbondemo.o: ./ribbondemo.cpp $(CXX) -c -o $@ $(RIBBON_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/richtext/makefile.bcc b/samples/richtext/makefile.bcc index 20de2ba196..fbd940d06f 100644 --- a/samples/richtext/makefile.bcc +++ b/samples/richtext/makefile.bcc @@ -244,7 +244,7 @@ clean: $(OBJS)\richtext.exe: $(RICHTEXT_OBJECTS) $(OBJS)\richtext_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(RICHTEXT_OBJECTS),$@,, $(__WXLIB_RICHTEXT_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\richtext_sample.res + c0w32.obj $(RICHTEXT_OBJECTS),$@,, $(__WXLIB_RICHTEXT_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\richtext_sample.res | $(OBJS)\richtext_richtext.obj: .\richtext.cpp diff --git a/samples/richtext/makefile.gcc b/samples/richtext/makefile.gcc index 92800d9ce5..792011b285 100644 --- a/samples/richtext/makefile.gcc +++ b/samples/richtext/makefile.gcc @@ -234,7 +234,7 @@ clean: -if exist $(OBJS)\richtext.exe del $(OBJS)\richtext.exe $(OBJS)\richtext.exe: $(RICHTEXT_OBJECTS) $(OBJS)\richtext_sample_rc.o - $(CXX) -o $@ $(RICHTEXT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_RICHTEXT_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(RICHTEXT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_RICHTEXT_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\richtext_richtext.o: ./richtext.cpp $(CXX) -c -o $@ $(RICHTEXT_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/sashtest/makefile.bcc b/samples/sashtest/makefile.bcc index 397573c108..6e2ea07aa1 100644 --- a/samples/sashtest/makefile.bcc +++ b/samples/sashtest/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\sashtest.exe: $(SASHTEST_OBJECTS) $(OBJS)\sashtest_sashtest.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SASHTEST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\sashtest_sashtest.res + c0w32.obj $(SASHTEST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\sashtest_sashtest.res | $(OBJS)\sashtest_sashtest.obj: .\sashtest.cpp diff --git a/samples/sashtest/makefile.gcc b/samples/sashtest/makefile.gcc index 9ad5b6e05c..5042132793 100644 --- a/samples/sashtest/makefile.gcc +++ b/samples/sashtest/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\sashtest.exe del $(OBJS)\sashtest.exe $(OBJS)\sashtest.exe: $(SASHTEST_OBJECTS) $(OBJS)\sashtest_sashtest_rc.o - $(CXX) -o $@ $(SASHTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SASHTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\sashtest_sashtest.o: ./sashtest.cpp $(CXX) -c -o $@ $(SASHTEST_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/scroll/makefile.bcc b/samples/scroll/makefile.bcc index e5fcf6ace4..894644cee4 100644 --- a/samples/scroll/makefile.bcc +++ b/samples/scroll/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\scroll.exe: $(SCROLL_OBJECTS) $(OBJS)\scroll_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SCROLL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\scroll_sample.res + c0w32.obj $(SCROLL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\scroll_sample.res | $(OBJS)\scroll_sample.res: .\..\..\samples\sample.rc diff --git a/samples/scroll/makefile.gcc b/samples/scroll/makefile.gcc index 18e377a155..3d3fd5b1d1 100644 --- a/samples/scroll/makefile.gcc +++ b/samples/scroll/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\scroll.exe del $(OBJS)\scroll.exe $(OBJS)\scroll.exe: $(SCROLL_OBJECTS) $(OBJS)\scroll_sample_rc.o - $(CXX) -o $@ $(SCROLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SCROLL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\scroll_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/secretstore/makefile.bcc b/samples/secretstore/makefile.bcc index 00bc5570df..fe4f092d64 100644 --- a/samples/secretstore/makefile.bcc +++ b/samples/secretstore/makefile.bcc @@ -194,7 +194,7 @@ clean: $(OBJS)\secretstore.exe: $(SECRETSTORE_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0x32.obj $(SECRETSTORE_OBJECTS),$@,, $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, + c0x32.obj $(SECRETSTORE_OBJECTS),$@,, $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, | $(OBJS)\secretstore_secretstore.obj: .\secretstore.cpp diff --git a/samples/secretstore/makefile.gcc b/samples/secretstore/makefile.gcc index aa8346da6a..346e92ba0e 100644 --- a/samples/secretstore/makefile.gcc +++ b/samples/secretstore/makefile.gcc @@ -183,7 +183,7 @@ clean: -if exist $(OBJS)\secretstore.exe del $(OBJS)\secretstore.exe $(OBJS)\secretstore.exe: $(SECRETSTORE_OBJECTS) - $(CXX) -o $@ $(SECRETSTORE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SECRETSTORE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\secretstore_secretstore.o: ./secretstore.cpp $(CXX) -c -o $@ $(SECRETSTORE_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/shaped/makefile.bcc b/samples/shaped/makefile.bcc index d9364280c1..b49c335c77 100644 --- a/samples/shaped/makefile.bcc +++ b/samples/shaped/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\shaped.exe: $(SHAPED_OBJECTS) $(OBJS)\shaped_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SHAPED_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\shaped_sample.res + c0w32.obj $(SHAPED_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\shaped_sample.res | data: diff --git a/samples/shaped/makefile.gcc b/samples/shaped/makefile.gcc index b99bd96405..694e5d40b0 100644 --- a/samples/shaped/makefile.gcc +++ b/samples/shaped/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\shaped.exe del $(OBJS)\shaped.exe $(OBJS)\shaped.exe: $(SHAPED_OBJECTS) $(OBJS)\shaped_sample_rc.o - $(CXX) -o $@ $(SHAPED_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SHAPED_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/sockets/makefile.bcc b/samples/sockets/makefile.bcc index 5696d7a4c6..5472b953d5 100644 --- a/samples/sockets/makefile.bcc +++ b/samples/sockets/makefile.bcc @@ -287,25 +287,25 @@ clean: !if "$(USE_GUI)" == "1" $(OBJS)\client.exe: $(CLIENT_OBJECTS) $(OBJS)\client_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0w32.obj $(CLIENT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\client_sample.res + c0w32.obj $(CLIENT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\client_sample.res | !endif !if "$(USE_GUI)" == "1" $(OBJS)\server.exe: $(SERVER_OBJECTS) $(OBJS)\server_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0w32.obj $(SERVER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\server_sample.res + c0w32.obj $(SERVER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\server_sample.res | !endif $(OBJS)\baseclient.exe: $(BASECLIENT_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BASECLIENT_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0x32.obj $(BASECLIENT_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | $(OBJS)\baseserver.exe: $(BASESERVER_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BASESERVER_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0x32.obj $(BASESERVER_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | $(OBJS)\client_sample.res: .\..\..\samples\sample.rc diff --git a/samples/sockets/makefile.gcc b/samples/sockets/makefile.gcc index acfb41723e..3ee865a079 100644 --- a/samples/sockets/makefile.gcc +++ b/samples/sockets/makefile.gcc @@ -266,19 +266,19 @@ clean: ifeq ($(USE_GUI),1) $(OBJS)\client.exe: $(CLIENT_OBJECTS) $(OBJS)\client_sample_rc.o - $(CXX) -o $@ $(CLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(CLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif ifeq ($(USE_GUI),1) $(OBJS)\server.exe: $(SERVER_OBJECTS) $(OBJS)\server_sample_rc.o - $(CXX) -o $@ $(SERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\baseclient.exe: $(BASECLIENT_OBJECTS) - $(CXX) -o $@ $(BASECLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BASECLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\baseserver.exe: $(BASESERVER_OBJECTS) - $(CXX) -o $@ $(BASESERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BASESERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\client_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_0) $(__DEBUG_DEFINE_p_0) $(__NDEBUG_DEFINE_p_0) $(__EXCEPTIONS_DEFINE_p_0) $(__RTTI_DEFINE_p_0) $(__THREAD_DEFINE_p_0) $(__UNICODE_DEFINE_p_0) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_0) --include-dir ./../../samples --define NOPCH diff --git a/samples/sound/makefile.bcc b/samples/sound/makefile.bcc index a73f1639ec..429b23f6b9 100644 --- a/samples/sound/makefile.bcc +++ b/samples/sound/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\sound.exe: $(SOUND_OBJECTS) $(OBJS)\sound_sound.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SOUND_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\sound_sound.res + c0w32.obj $(SOUND_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\sound_sound.res | data: diff --git a/samples/sound/makefile.gcc b/samples/sound/makefile.gcc index fd3c557e99..ae05bb6214 100644 --- a/samples/sound/makefile.gcc +++ b/samples/sound/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\sound.exe del $(OBJS)\sound.exe $(OBJS)\sound.exe: $(SOUND_OBJECTS) $(OBJS)\sound_sound_rc.o - $(CXX) -o $@ $(SOUND_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SOUND_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/splash/makefile.bcc b/samples/splash/makefile.bcc index 95bf06b0de..c18fb1813f 100644 --- a/samples/splash/makefile.bcc +++ b/samples/splash/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\splash.exe: $(SPLASH_OBJECTS) $(OBJS)\splash_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SPLASH_OBJECTS),$@,, $(__WXLIB_MEDIA_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\splash_sample.res + c0w32.obj $(SPLASH_OBJECTS),$@,, $(__WXLIB_MEDIA_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\splash_sample.res | data: diff --git a/samples/splash/makefile.gcc b/samples/splash/makefile.gcc index 23d1f222ef..3e03ef7d07 100644 --- a/samples/splash/makefile.gcc +++ b/samples/splash/makefile.gcc @@ -228,7 +228,7 @@ clean: -if exist $(OBJS)\splash.exe del $(OBJS)\splash.exe $(OBJS)\splash.exe: $(SPLASH_OBJECTS) $(OBJS)\splash_sample_rc.o - $(CXX) -o $@ $(SPLASH_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_MEDIA_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SPLASH_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_MEDIA_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/splitter/makefile.bcc b/samples/splitter/makefile.bcc index 2d323f3d25..032d52d4ac 100644 --- a/samples/splitter/makefile.bcc +++ b/samples/splitter/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\splitter.exe: $(SPLITTER_OBJECTS) $(OBJS)\splitter_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SPLITTER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\splitter_sample.res + c0w32.obj $(SPLITTER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\splitter_sample.res | $(OBJS)\splitter_sample.res: .\..\..\samples\sample.rc diff --git a/samples/splitter/makefile.gcc b/samples/splitter/makefile.gcc index 4725d12e8b..46e06aacc4 100644 --- a/samples/splitter/makefile.gcc +++ b/samples/splitter/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\splitter.exe del $(OBJS)\splitter.exe $(OBJS)\splitter.exe: $(SPLITTER_OBJECTS) $(OBJS)\splitter_sample_rc.o - $(CXX) -o $@ $(SPLITTER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SPLITTER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\splitter_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/statbar/makefile.bcc b/samples/statbar/makefile.bcc index bbc6801397..5fb4a3bce8 100644 --- a/samples/statbar/makefile.bcc +++ b/samples/statbar/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\statbar.exe: $(STATBAR_OBJECTS) $(OBJS)\statbar_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(STATBAR_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\statbar_sample.res + c0w32.obj $(STATBAR_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\statbar_sample.res | $(OBJS)\statbar_sample.res: .\..\..\samples\sample.rc diff --git a/samples/statbar/makefile.gcc b/samples/statbar/makefile.gcc index 087cdb66ec..b2e3c3bcc9 100644 --- a/samples/statbar/makefile.gcc +++ b/samples/statbar/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\statbar.exe del $(OBJS)\statbar.exe $(OBJS)\statbar.exe: $(STATBAR_OBJECTS) $(OBJS)\statbar_sample_rc.o - $(CXX) -o $@ $(STATBAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(STATBAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\statbar_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/stc/makefile.bcc b/samples/stc/makefile.bcc index 2c0471f390..1f5abac5ee 100644 --- a/samples/stc/makefile.bcc +++ b/samples/stc/makefile.bcc @@ -234,7 +234,7 @@ clean: $(OBJS)\stctest.exe: $(STCTEST_OBJECTS) $(OBJS)\stctest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(STCTEST_OBJECTS),$@,, $(__WXLIB_STC_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) wxscintilla$(WXDEBUGFLAG).lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\stctest_sample.res + c0w32.obj $(STCTEST_OBJECTS),$@,, $(__WXLIB_STC_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) wxscintilla$(WXDEBUGFLAG).lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\stctest_sample.res | data: diff --git a/samples/stc/makefile.gcc b/samples/stc/makefile.gcc index 7068cc1c28..d4f8e1ee87 100644 --- a/samples/stc/makefile.gcc +++ b/samples/stc/makefile.gcc @@ -224,7 +224,7 @@ clean: -if exist $(OBJS)\stctest.exe del $(OBJS)\stctest.exe $(OBJS)\stctest.exe: $(STCTEST_OBJECTS) $(OBJS)\stctest_sample_rc.o - $(CXX) -o $@ $(STCTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_STC_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) -lwxscintilla$(WXDEBUGFLAG) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(STCTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_STC_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) -lwxscintilla$(WXDEBUGFLAG) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/samples/svg/makefile.bcc b/samples/svg/makefile.bcc index 5a8fb3416a..4a24390170 100644 --- a/samples/svg/makefile.bcc +++ b/samples/svg/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\svgtest.exe: $(SVGTEST_OBJECTS) $(OBJS)\svgtest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SVGTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\svgtest_sample.res + c0w32.obj $(SVGTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\svgtest_sample.res | $(OBJS)\svgtest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/svg/makefile.gcc b/samples/svg/makefile.gcc index 7a43007ef0..552fb5c36d 100644 --- a/samples/svg/makefile.gcc +++ b/samples/svg/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\svgtest.exe del $(OBJS)\svgtest.exe $(OBJS)\svgtest.exe: $(SVGTEST_OBJECTS) $(OBJS)\svgtest_sample_rc.o - $(CXX) -o $@ $(SVGTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SVGTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\svgtest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/taborder/makefile.bcc b/samples/taborder/makefile.bcc index 40072d3ec1..dd67a9579d 100644 --- a/samples/taborder/makefile.bcc +++ b/samples/taborder/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\taborder.exe: $(TABORDER_OBJECTS) $(OBJS)\taborder_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TABORDER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\taborder_sample.res + c0w32.obj $(TABORDER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\taborder_sample.res | $(OBJS)\taborder_sample.res: .\..\..\samples\sample.rc diff --git a/samples/taborder/makefile.gcc b/samples/taborder/makefile.gcc index 20dee394ad..14df6dbab7 100644 --- a/samples/taborder/makefile.gcc +++ b/samples/taborder/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\taborder.exe del $(OBJS)\taborder.exe $(OBJS)\taborder.exe: $(TABORDER_OBJECTS) $(OBJS)\taborder_sample_rc.o - $(CXX) -o $@ $(TABORDER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TABORDER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\taborder_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/taskbar/makefile.bcc b/samples/taskbar/makefile.bcc index 92c5d070d5..1d8663e6cc 100644 --- a/samples/taskbar/makefile.bcc +++ b/samples/taskbar/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\taskbar.exe: $(TASKBAR_OBJECTS) $(OBJS)\taskbar_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TASKBAR_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\taskbar_sample.res + c0w32.obj $(TASKBAR_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\taskbar_sample.res | $(OBJS)\taskbar_sample.res: .\..\..\samples\sample.rc diff --git a/samples/taskbar/makefile.gcc b/samples/taskbar/makefile.gcc index 26ff3a160b..7c31714436 100644 --- a/samples/taskbar/makefile.gcc +++ b/samples/taskbar/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\taskbar.exe del $(OBJS)\taskbar.exe $(OBJS)\taskbar.exe: $(TASKBAR_OBJECTS) $(OBJS)\taskbar_sample_rc.o - $(CXX) -o $@ $(TASKBAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TASKBAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\taskbar_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/taskbarbutton/makefile.bcc b/samples/taskbarbutton/makefile.bcc index 9530d7d3cb..46af1b1614 100644 --- a/samples/taskbarbutton/makefile.bcc +++ b/samples/taskbarbutton/makefile.bcc @@ -233,7 +233,7 @@ clean: $(OBJS)\taskbarbutton.exe: $(TASKBARBUTTON_OBJECTS) $(OBJS)\taskbarbutton_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TASKBARBUTTON_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\taskbarbutton_sample.res + c0w32.obj $(TASKBARBUTTON_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\taskbarbutton_sample.res | $(OBJS)\taskbarbutton_sample.res: .\..\..\samples\sample.rc diff --git a/samples/taskbarbutton/makefile.gcc b/samples/taskbarbutton/makefile.gcc index a1a1aec807..270d932eb7 100644 --- a/samples/taskbarbutton/makefile.gcc +++ b/samples/taskbarbutton/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\taskbarbutton.exe del $(OBJS)\taskbarbutton.exe $(OBJS)\taskbarbutton.exe: $(TASKBARBUTTON_OBJECTS) $(OBJS)\taskbarbutton_sample_rc.o - $(CXX) -o $@ $(TASKBARBUTTON_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TASKBARBUTTON_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\taskbarbutton_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/text/makefile.bcc b/samples/text/makefile.bcc index 4b5068058f..61fafca75e 100644 --- a/samples/text/makefile.bcc +++ b/samples/text/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\text.exe: $(TEXT_OBJECTS) $(OBJS)\text_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TEXT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\text_sample.res + c0w32.obj $(TEXT_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\text_sample.res | $(OBJS)\text_sample.res: .\..\..\samples\sample.rc diff --git a/samples/text/makefile.gcc b/samples/text/makefile.gcc index b4c631ce3d..88bd779632 100644 --- a/samples/text/makefile.gcc +++ b/samples/text/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\text.exe del $(OBJS)\text.exe $(OBJS)\text.exe: $(TEXT_OBJECTS) $(OBJS)\text_sample_rc.o - $(CXX) -o $@ $(TEXT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TEXT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\text_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/thread/makefile.bcc b/samples/thread/makefile.bcc index 9e2777c994..0e68b1245b 100644 --- a/samples/thread/makefile.bcc +++ b/samples/thread/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\thread.exe: $(THREAD_OBJECTS) $(OBJS)\thread_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(THREAD_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\thread_sample.res + c0w32.obj $(THREAD_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\thread_sample.res | $(OBJS)\thread_sample.res: .\..\..\samples\sample.rc diff --git a/samples/thread/makefile.gcc b/samples/thread/makefile.gcc index c54db207d9..9496885ffe 100644 --- a/samples/thread/makefile.gcc +++ b/samples/thread/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\thread.exe del $(OBJS)\thread.exe $(OBJS)\thread.exe: $(THREAD_OBJECTS) $(OBJS)\thread_sample_rc.o - $(CXX) -o $@ $(THREAD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(THREAD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\thread_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/toolbar/makefile.bcc b/samples/toolbar/makefile.bcc index ee4d43b3e2..1e9588082b 100644 --- a/samples/toolbar/makefile.bcc +++ b/samples/toolbar/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\toolbar.exe: $(TOOLBAR_OBJECTS) $(OBJS)\toolbar_toolbar.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TOOLBAR_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\toolbar_toolbar.res + c0w32.obj $(TOOLBAR_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\toolbar_toolbar.res | $(OBJS)\toolbar_toolbar.obj: .\toolbar.cpp diff --git a/samples/toolbar/makefile.gcc b/samples/toolbar/makefile.gcc index b24e9c9255..39cfc15da1 100644 --- a/samples/toolbar/makefile.gcc +++ b/samples/toolbar/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\toolbar.exe del $(OBJS)\toolbar.exe $(OBJS)\toolbar.exe: $(TOOLBAR_OBJECTS) $(OBJS)\toolbar_toolbar_rc.o - $(CXX) -o $@ $(TOOLBAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TOOLBAR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\toolbar_toolbar.o: ./toolbar.cpp $(CXX) -c -o $@ $(TOOLBAR_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/treectrl/makefile.bcc b/samples/treectrl/makefile.bcc index 3020dc0bce..36147d8ef9 100644 --- a/samples/treectrl/makefile.bcc +++ b/samples/treectrl/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\treectrl.exe: $(TREECTRL_OBJECTS) $(OBJS)\treectrl_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TREECTRL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\treectrl_sample.res + c0w32.obj $(TREECTRL_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\treectrl_sample.res | $(OBJS)\treectrl_treetest.obj: .\treetest.cpp diff --git a/samples/treectrl/makefile.gcc b/samples/treectrl/makefile.gcc index fcb94c13a7..2f2bd2f81e 100644 --- a/samples/treectrl/makefile.gcc +++ b/samples/treectrl/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\treectrl.exe del $(OBJS)\treectrl.exe $(OBJS)\treectrl.exe: $(TREECTRL_OBJECTS) $(OBJS)\treectrl_sample_rc.o - $(CXX) -o $@ $(TREECTRL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TREECTRL_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\treectrl_treetest.o: ./treetest.cpp $(CXX) -c -o $@ $(TREECTRL_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/treelist/makefile.bcc b/samples/treelist/makefile.bcc index 71c88403ae..56ae50b0de 100644 --- a/samples/treelist/makefile.bcc +++ b/samples/treelist/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\treelist.exe: $(TREELIST_OBJECTS) $(OBJS)\treelist_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TREELIST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\treelist_sample.res + c0w32.obj $(TREELIST_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\treelist_sample.res | $(OBJS)\treelist_sample.res: .\..\..\samples\sample.rc diff --git a/samples/treelist/makefile.gcc b/samples/treelist/makefile.gcc index a7532b5e63..5722408326 100644 --- a/samples/treelist/makefile.gcc +++ b/samples/treelist/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\treelist.exe del $(OBJS)\treelist.exe $(OBJS)\treelist.exe: $(TREELIST_OBJECTS) $(OBJS)\treelist_sample_rc.o - $(CXX) -o $@ $(TREELIST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TREELIST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\treelist_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/typetest/makefile.bcc b/samples/typetest/makefile.bcc index 55cb5a25f9..dc86ea88a3 100644 --- a/samples/typetest/makefile.bcc +++ b/samples/typetest/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\typetest.exe: $(TYPETEST_OBJECTS) $(OBJS)\typetest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(TYPETEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\typetest_sample.res + c0w32.obj $(TYPETEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\typetest_sample.res | $(OBJS)\typetest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/typetest/makefile.gcc b/samples/typetest/makefile.gcc index 4324575635..720a649100 100644 --- a/samples/typetest/makefile.gcc +++ b/samples/typetest/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\typetest.exe del $(OBJS)\typetest.exe $(OBJS)\typetest.exe: $(TYPETEST_OBJECTS) $(OBJS)\typetest_sample_rc.o - $(CXX) -o $@ $(TYPETEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TYPETEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\typetest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/uiaction/makefile.bcc b/samples/uiaction/makefile.bcc index 6d784b19ea..cdb748bae8 100644 --- a/samples/uiaction/makefile.bcc +++ b/samples/uiaction/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\uiaction.exe: $(UIACTION_OBJECTS) $(OBJS)\uiaction_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(UIACTION_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\uiaction_sample.res + c0w32.obj $(UIACTION_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\uiaction_sample.res | $(OBJS)\uiaction_sample.res: .\..\..\samples\sample.rc diff --git a/samples/uiaction/makefile.gcc b/samples/uiaction/makefile.gcc index 34c20d5f88..f8e48a86ee 100644 --- a/samples/uiaction/makefile.gcc +++ b/samples/uiaction/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\uiaction.exe del $(OBJS)\uiaction.exe $(OBJS)\uiaction.exe: $(UIACTION_OBJECTS) $(OBJS)\uiaction_sample_rc.o - $(CXX) -o $@ $(UIACTION_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(UIACTION_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\uiaction_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/validate/makefile.bcc b/samples/validate/makefile.bcc index 772e235411..71d29961f5 100644 --- a/samples/validate/makefile.bcc +++ b/samples/validate/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\validate.exe: $(VALIDATE_OBJECTS) $(OBJS)\validate_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(VALIDATE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\validate_sample.res + c0w32.obj $(VALIDATE_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\validate_sample.res | $(OBJS)\validate_validate.obj: .\validate.cpp diff --git a/samples/validate/makefile.gcc b/samples/validate/makefile.gcc index f399ef8643..f611f488da 100644 --- a/samples/validate/makefile.gcc +++ b/samples/validate/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\validate.exe del $(OBJS)\validate.exe $(OBJS)\validate.exe: $(VALIDATE_OBJECTS) $(OBJS)\validate_sample_rc.o - $(CXX) -o $@ $(VALIDATE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(VALIDATE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\validate_validate.o: ./validate.cpp $(CXX) -c -o $@ $(VALIDATE_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/vscroll/makefile.bcc b/samples/vscroll/makefile.bcc index 6789e6409f..73ccbd0f66 100644 --- a/samples/vscroll/makefile.bcc +++ b/samples/vscroll/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\vstest.exe: $(VSTEST_OBJECTS) $(OBJS)\vstest_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(VSTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\vstest_sample.res + c0w32.obj $(VSTEST_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\vstest_sample.res | $(OBJS)\vstest_sample.res: .\..\..\samples\sample.rc diff --git a/samples/vscroll/makefile.gcc b/samples/vscroll/makefile.gcc index bcab66cd7a..68a708193c 100644 --- a/samples/vscroll/makefile.gcc +++ b/samples/vscroll/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\vstest.exe del $(OBJS)\vstest.exe $(OBJS)\vstest.exe: $(VSTEST_OBJECTS) $(OBJS)\vstest_sample_rc.o - $(CXX) -o $@ $(VSTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(VSTEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\vstest_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/webview/makefile.bcc b/samples/webview/makefile.bcc index 8981245443..4ff6d6874c 100644 --- a/samples/webview/makefile.bcc +++ b/samples/webview/makefile.bcc @@ -240,7 +240,7 @@ clean: $(OBJS)\webview.exe: $(WEBVIEW_OBJECTS) $(OBJS)\webview_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WEBVIEW_OBJECTS),$@,, $(__WXLIB_WEBVIEW_p) $(__WXLIB_STC_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) wxscintilla$(WXDEBUGFLAG).lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\webview_sample.res + c0w32.obj $(WEBVIEW_OBJECTS),$@,, $(__WXLIB_WEBVIEW_p) $(__WXLIB_STC_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) wxscintilla$(WXDEBUGFLAG).lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\webview_sample.res | $(OBJS)\webview_webview.obj: .\webview.cpp diff --git a/samples/webview/makefile.gcc b/samples/webview/makefile.gcc index 57a7588fe2..d16887afac 100644 --- a/samples/webview/makefile.gcc +++ b/samples/webview/makefile.gcc @@ -232,7 +232,7 @@ clean: -if exist $(OBJS)\webview.exe del $(OBJS)\webview.exe $(OBJS)\webview.exe: $(WEBVIEW_OBJECTS) $(OBJS)\webview_sample_rc.o - $(CXX) -o $@ $(WEBVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_WEBVIEW_p) $(__WXLIB_STC_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) -lwxscintilla$(WXDEBUGFLAG) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WEBVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_WEBVIEW_p) $(__WXLIB_STC_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) -lwxscintilla$(WXDEBUGFLAG) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\webview_webview.o: ./webview.cpp $(CXX) -c -o $@ $(WEBVIEW_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/widgets/makefile.bcc b/samples/widgets/makefile.bcc index eed63ce521..e6f3e2220d 100644 --- a/samples/widgets/makefile.bcc +++ b/samples/widgets/makefile.bcc @@ -263,7 +263,7 @@ clean: $(OBJS)\widgets.exe: $(WIDGETS_OBJECTS) $(OBJS)\widgets_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WIDGETS_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\widgets_sample.res + c0w32.obj $(WIDGETS_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\widgets_sample.res | $(OBJS)\widgets_activityindicator.obj: .\activityindicator.cpp diff --git a/samples/widgets/makefile.gcc b/samples/widgets/makefile.gcc index 3976414ba5..a26d9361a4 100644 --- a/samples/widgets/makefile.gcc +++ b/samples/widgets/makefile.gcc @@ -253,7 +253,7 @@ clean: -if exist $(OBJS)\widgets.exe del $(OBJS)\widgets.exe $(OBJS)\widgets.exe: $(WIDGETS_OBJECTS) $(OBJS)\widgets_sample_rc.o - $(CXX) -o $@ $(WIDGETS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WIDGETS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\widgets_activityindicator.o: ./activityindicator.cpp $(CXX) -c -o $@ $(WIDGETS_CXXFLAGS) $(CPPDEPS) $< diff --git a/samples/wizard/makefile.bcc b/samples/wizard/makefile.bcc index 525e01c33a..8869710699 100644 --- a/samples/wizard/makefile.bcc +++ b/samples/wizard/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\wizard.exe: $(WIZARD_OBJECTS) $(OBJS)\wizard_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WIZARD_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wizard_sample.res + c0w32.obj $(WIZARD_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wizard_sample.res | $(OBJS)\wizard_sample.res: .\..\..\samples\sample.rc diff --git a/samples/wizard/makefile.gcc b/samples/wizard/makefile.gcc index 8af250f323..9ae7bbd11e 100644 --- a/samples/wizard/makefile.gcc +++ b/samples/wizard/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\wizard.exe del $(OBJS)\wizard.exe $(OBJS)\wizard.exe: $(WIZARD_OBJECTS) $(OBJS)\wizard_sample_rc.o - $(CXX) -o $@ $(WIZARD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WIZARD_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\wizard_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/wrapsizer/makefile.bcc b/samples/wrapsizer/makefile.bcc index b96d7e2c41..3191bf1c1c 100644 --- a/samples/wrapsizer/makefile.bcc +++ b/samples/wrapsizer/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\wrapsizer.exe: $(WRAPSIZER_OBJECTS) $(OBJS)\wrapsizer_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WRAPSIZER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wrapsizer_sample.res + c0w32.obj $(WRAPSIZER_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wrapsizer_sample.res | $(OBJS)\wrapsizer_sample.res: .\..\..\samples\sample.rc diff --git a/samples/wrapsizer/makefile.gcc b/samples/wrapsizer/makefile.gcc index 23a2e4452d..c2a4c55f4b 100644 --- a/samples/wrapsizer/makefile.gcc +++ b/samples/wrapsizer/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\wrapsizer.exe del $(OBJS)\wrapsizer.exe $(OBJS)\wrapsizer.exe: $(WRAPSIZER_OBJECTS) $(OBJS)\wrapsizer_sample_rc.o - $(CXX) -o $@ $(WRAPSIZER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WRAPSIZER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\wrapsizer_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/samples/xrc/makefile.bcc b/samples/xrc/makefile.bcc index f4303d6c86..a1f179be54 100644 --- a/samples/xrc/makefile.bcc +++ b/samples/xrc/makefile.bcc @@ -256,7 +256,7 @@ clean: $(OBJS)\xrcdemo.exe: $(XRCDEMO_OBJECTS) $(OBJS)\xrcdemo_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(XRCDEMO_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_RIBBON_p) $(__WXLIB_XRC_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\xrcdemo_sample.res + c0w32.obj $(XRCDEMO_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_RIBBON_p) $(__WXLIB_XRC_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\xrcdemo_sample.res | data: diff --git a/samples/xrc/makefile.gcc b/samples/xrc/makefile.gcc index 90f58ce2dc..1ed99d8d18 100644 --- a/samples/xrc/makefile.gcc +++ b/samples/xrc/makefile.gcc @@ -246,7 +246,7 @@ clean: -if exist $(OBJS)\xrcdemo.exe del $(OBJS)\xrcdemo.exe $(OBJS)\xrcdemo.exe: $(XRCDEMO_OBJECTS) $(OBJS)\xrcdemo_sample_rc.o - $(CXX) -o $@ $(XRCDEMO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_RIBBON_p) $(__WXLIB_XRC_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(XRCDEMO_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_RIBBON_p) $(__WXLIB_XRC_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS)\rc mkdir $(OBJS)\rc diff --git a/samples/xti/makefile.bcc b/samples/xti/makefile.bcc index 179381e49c..0fc3917322 100644 --- a/samples/xti/makefile.bcc +++ b/samples/xti/makefile.bcc @@ -234,7 +234,7 @@ clean: $(OBJS)\xti.exe: $(XTI_OBJECTS) $(OBJS)\xti_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(XTI_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\xti_sample.res + c0w32.obj $(XTI_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\xti_sample.res | $(OBJS)\xti_sample.res: .\..\..\samples\sample.rc diff --git a/samples/xti/makefile.gcc b/samples/xti/makefile.gcc index 5afbb6a398..bda6ab0420 100644 --- a/samples/xti/makefile.gcc +++ b/samples/xti/makefile.gcc @@ -224,7 +224,7 @@ clean: -if exist $(OBJS)\xti.exe del $(OBJS)\xti.exe $(OBJS)\xti.exe: $(XTI_OBJECTS) $(OBJS)\xti_sample_rc.o - $(CXX) -o $@ $(XTI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(XTI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\xti_sample_rc.o: ./../../samples/sample.rc $(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH diff --git a/src/aui/barartmsw.cpp b/src/aui/barartmsw.cpp index 68700ca832..b01f5dcdeb 100644 --- a/src/aui/barartmsw.cpp +++ b/src/aui/barartmsw.cpp @@ -60,8 +60,7 @@ wxAuiMSWToolBarArt::wxAuiMSWToolBarArt() { - wxUxThemeEngine* te = wxUxThemeEngine::GetIfActive(); - if ( te && te->IsAppThemed() ) + if ( wxUxThemeIsActive() ) { m_themed = true; @@ -70,24 +69,24 @@ wxAuiMSWToolBarArt::wxAuiMSWToolBarArt() wxUxThemeHandle hTheme(window, L"Rebar"); SIZE overflowSize; - te->GetThemePartSize(hTheme, NULL, RP_CHEVRON, 0, + ::GetThemePartSize(hTheme, NULL, RP_CHEVRON, 0, NULL, TS_TRUE, &overflowSize); m_overflowSize = overflowSize.cx; SIZE gripperSize; - te->GetThemePartSize(hTheme, NULL, RP_GRIPPER, 0, + ::GetThemePartSize(hTheme, NULL, RP_GRIPPER, 0, NULL, TS_TRUE, &gripperSize); m_gripperSize = gripperSize.cx; wxUxThemeHandle hThemeToolbar(window, L"Toolbar"); SIZE seperatorSize; - te->GetThemePartSize(hThemeToolbar, NULL, TP_SEPARATOR, 0, + ::GetThemePartSize(hThemeToolbar, NULL, TP_SEPARATOR, 0, NULL, TS_TRUE, &seperatorSize); m_separatorSize = seperatorSize.cx; SIZE buttonSize; - te->GetThemePartSize(hThemeToolbar, NULL, TP_BUTTON, 0, + ::GetThemePartSize(hThemeToolbar, NULL, TP_BUTTON, 0, NULL, TS_TRUE, &buttonSize); m_buttonSize.Set(buttonSize.cx, buttonSize.cy); } @@ -112,7 +111,7 @@ void wxAuiMSWToolBarArt::DrawBackground( wxUxThemeHandle hTheme(wnd, L"Rebar"); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), RP_BACKGROUND, @@ -152,8 +151,6 @@ void wxAuiMSWToolBarArt::DrawButton( wxUxThemeHandle hTheme(wnd, L"Toolbar"); - wxUxThemeEngine* te = wxUxThemeEngine::Get(); - int btnState; if ( item.GetState() & wxAUI_BUTTON_STATE_DISABLED ) btnState = TS_DISABLED; @@ -169,7 +166,7 @@ void wxAuiMSWToolBarArt::DrawButton( else btnState = TS_NORMAL; - te->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), TP_BUTTON, @@ -252,7 +249,6 @@ void wxAuiMSWToolBarArt::DrawDropDownButton( if ( m_themed ) { wxUxThemeHandle hTheme(wnd, L"Toolbar"); - wxUxThemeEngine* const te = wxUxThemeEngine::Get(); int dropDownWidth = 14; @@ -297,7 +293,7 @@ void wxAuiMSWToolBarArt::DrawDropDownButton( else btnState = TS_NORMAL; - te->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), TP_SPLITBUTTON, @@ -305,7 +301,7 @@ void wxAuiMSWToolBarArt::DrawDropDownButton( &btnR, NULL); - te->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), TP_SPLITBUTTONDROPDOWN, @@ -390,7 +386,7 @@ void wxAuiMSWToolBarArt::DrawSeparator( wxUxThemeHandle hTheme(wnd, L"Toolbar"); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), (m_flags & wxAUI_TB_VERTICAL) ? TP_SEPARATORVERT : TP_SEPARATOR, @@ -414,7 +410,7 @@ void wxAuiMSWToolBarArt::DrawGripper( wxUxThemeHandle hTheme(wnd, L"Rebar"); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), (m_flags & wxAUI_TB_VERTICAL) ? RP_GRIPPERVERT : RP_GRIPPER, @@ -447,7 +443,7 @@ void wxAuiMSWToolBarArt::DrawOverflowButton( else chevState = CHEVS_NORMAL; - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), (m_flags & wxAUI_TB_VERTICAL) ? RP_CHEVRONVERT : RP_CHEVRON, diff --git a/src/aui/tabartmsw.cpp b/src/aui/tabartmsw.cpp index df91b303a0..477fd1341a 100644 --- a/src/aui/tabartmsw.cpp +++ b/src/aui/tabartmsw.cpp @@ -64,13 +64,7 @@ wxAuiMSWTabArt::wxAuiMSWTabArt() m_closeBtnSize = wxDefaultSize; m_maxTabHeight = 0; - wxUxThemeEngine* te = wxUxThemeEngine::GetIfActive(); - if ( te && te->IsAppThemed() ) - { - m_themed = true; - } - else - m_themed = false; + m_themed = wxUxThemeIsActive(); } wxAuiMSWTabArt::~wxAuiMSWTabArt() @@ -113,7 +107,7 @@ void wxAuiMSWTabArt::DrawBorder(wxDC& dc, wxWindow* wnd, const wxRect& rect) wxUxThemeHandle hTheme(wnd, L"TAB"); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), TABP_PANE, @@ -153,7 +147,7 @@ void wxAuiMSWTabArt::DrawBackground(wxDC& dc, wxUxThemeHandle hTheme(wnd, L"TAB"); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), TABP_PANE, @@ -223,12 +217,10 @@ void wxAuiMSWTabArt::DrawTab(wxDC& dc, else tabState = TIS_NORMAL; - wxUxThemeEngine* te = wxUxThemeEngine::Get(); - wxUxThemeHandle hTabTheme(wnd, L"Tab"); RECT tabR; wxCopyRectToRECT(tabRect, tabR); - te->DrawThemeBackground(hTabTheme, GetHdcOf(dc.GetTempHDC()), TABP_TABITEM, + ::DrawThemeBackground(hTabTheme, GetHdcOf(dc.GetTempHDC()), TABP_TABITEM, tabState, &tabR, NULL); @@ -237,7 +229,7 @@ void wxAuiMSWTabArt::DrawTab(wxDC& dc, // separately, or it wouldn't be drawn at all. if ( tabX == GetIndentSize() ) { - te->DrawThemeBackground + ::DrawThemeBackground ( hTabTheme, GetHdcOf(dc.GetTempHDC()), @@ -290,7 +282,7 @@ void wxAuiMSWTabArt::DrawTab(wxDC& dc, RECT btnR; wxCopyRectToRECT(rect, btnR); - te->DrawThemeBackground(hToolTipTheme, GetHdcOf(dc.GetTempHDC()), TTP_CLOSE, btnState, &btnR, NULL); + ::DrawThemeBackground(hToolTipTheme, GetHdcOf(dc.GetTempHDC()), TTP_CLOSE, btnState, &btnR, NULL); if ( out_button_rect ) *out_button_rect = rect; @@ -399,8 +391,6 @@ void wxAuiMSWTabArt::DrawButton(wxDC& dc, return; } - wxUxThemeEngine* te = wxUxThemeEngine::Get(); - const wchar_t* themeId = NULL; int part = 0; @@ -468,7 +458,7 @@ void wxAuiMSWTabArt::DrawButton(wxDC& dc, RECT btnR; wxCopyRectToRECT(btnRect, btnR); - te->DrawThemeBackground(hTheme, GetHdcOf(dc.GetTempHDC()), part, btnState, &btnR, NULL); + ::DrawThemeBackground(hTheme, GetHdcOf(dc.GetTempHDC()), part, btnState, &btnR, NULL); if ( out_rect ) *out_rect = rect; @@ -490,18 +480,17 @@ int wxAuiMSWTabArt::GetBestTabCtrlSize(wxWindow* wnd, void wxAuiMSWTabArt::InitSizes(wxWindow* wnd, wxDC& dc) { - wxUxThemeEngine* te = wxUxThemeEngine::Get(); SIZE uxSize; // Borrow close button from tooltip (best fit on various backgrounds) wxUxThemeHandle hTooltipTheme(wnd, L"Tooltip"); - te->GetThemePartSize(hTooltipTheme, GetHdcOf(dc.GetTempHDC()), + ::GetThemePartSize(hTooltipTheme, GetHdcOf(dc.GetTempHDC()), TTP_CLOSE, 0, NULL, TS_TRUE, &uxSize); m_closeBtnSize.Set(uxSize.cx, uxSize.cy); wxUxThemeHandle hTabTheme(wnd, L"Tab"); - te->GetThemePartSize(hTabTheme, GetHdcOf(dc.GetTempHDC()), + ::GetThemePartSize(hTabTheme, GetHdcOf(dc.GetTempHDC()), TABP_TABITEM, 0, NULL, TS_TRUE, &uxSize); m_tabSize.Set(uxSize.cx, uxSize.cy); } diff --git a/src/generic/combog.cpp b/src/generic/combog.cpp index 0e79b2cdf7..1bac5e630e 100644 --- a/src/generic/combog.cpp +++ b/src/generic/combog.cpp @@ -125,14 +125,7 @@ bool wxGenericComboCtrl::Create(wxWindow *parent, border = wxBORDER_SIMPLE; #elif defined(__WXMSW__) if ( !border ) - // For XP, have 1-width custom border, for older version use sunken - /*if ( wxUxThemeEngine::GetIfActive() ) - { - border = wxBORDER_NONE; - m_widthCustomBorder = 1; - } - else*/ - border = wxBORDER_SUNKEN; + border = wxBORDER_SUNKEN; #else // diff --git a/src/generic/richtooltipg.cpp b/src/generic/richtooltipg.cpp index 0b3ed6a4bf..49b393a14d 100644 --- a/src/generic/richtooltipg.cpp +++ b/src/generic/richtooltipg.cpp @@ -95,13 +95,12 @@ public: #ifdef __WXMSW__ // When using themes MSW tooltips use larger bluish version of the // normal font. - wxUxThemeEngine* const theme = GetTooltipTheme(); - if ( theme ) + if ( UseTooltipTheme() ) { titleFont.MakeLarger(); COLORREF c; - if ( FAILED(theme->GetThemeColor + if ( FAILED(::GetThemeColor ( wxUxThemeHandle(parent, L"TOOLTIP"), TTP_BALLOONTITLE, @@ -140,7 +139,7 @@ public: wxSizer* sizerText = wrapper.CreateSizer(message, -1 /* No wrapping */); #ifdef __WXMSW__ - if ( icon.IsOk() && GetTooltipTheme() ) + if ( icon.IsOk() && UseTooltipTheme() ) { // Themed tooltips under MSW align the text with the title, not // with the icon, so use a helper horizontal sizer in this case. @@ -175,13 +174,12 @@ public: { // Determine the best colour(s) to use on our own. #ifdef __WXMSW__ - wxUxThemeEngine* const theme = GetTooltipTheme(); - if ( theme ) + if ( UseTooltipTheme() ) { wxUxThemeHandle hTheme(GetParent(), L"TOOLTIP"); COLORREF c1, c2; - if ( FAILED(theme->GetThemeColor + if ( FAILED(::GetThemeColor ( hTheme, TTP_BALLOONTITLE, @@ -189,7 +187,7 @@ public: TMT_GRADIENTCOLOR1, &c1 )) || - FAILED(theme->GetThemeColor + FAILED(::GetThemeColor ( hTheme, TTP_BALLOONTITLE, @@ -280,13 +278,13 @@ protected: private: #ifdef __WXMSW__ // Returns non-NULL theme only if we're using Win7-style tooltips. - static wxUxThemeEngine* GetTooltipTheme() + static bool UseTooltipTheme() { // Even themed applications under XP still use "classic" tooltips. if ( wxGetWinVersion() <= wxWinVersion_XP ) - return NULL; - - return wxUxThemeEngine::GetIfActive(); + return false; + else + return wxUxThemeIsActive(); } #endif // __WXMSW__ @@ -295,7 +293,7 @@ private: static int GetTipHeight() { #ifdef __WXMSW__ - if ( GetTooltipTheme() ) + if ( UseTooltipTheme() ) return 20; #endif // __WXMSW__ diff --git a/src/msw/anybutton.cpp b/src/msw/anybutton.cpp index 2ffe67860f..f8ef711d76 100644 --- a/src/msw/anybutton.cpp +++ b/src/msw/anybutton.cpp @@ -533,12 +533,12 @@ void wxAnyButton::AdjustForBitmapSize(wxSize &size) const int marginH = 0, marginV = 0; #if wxUSE_UXTHEME - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) { wxUxThemeHandle theme(const_cast(this), L"BUTTON"); MARGINS margins; - wxUxThemeEngine::Get()->GetThemeMargins(theme, NULL, + ::GetThemeMargins(theme, NULL, BP_PUSHBUTTON, PBS_NORMAL, TMT_CONTENTMARGINS, @@ -632,10 +632,7 @@ WXLRESULT wxAnyButton::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lPar { if ( IsEnabled() && - ( -#if wxUSE_UXTHEME - wxUxThemeEngine::GetIfActive() || -#endif // wxUSE_UXTHEME + ( wxUxThemeIsActive() || (m_imageData && m_imageData->GetBitmap(State_Current).IsOk()) ) ) @@ -696,7 +693,7 @@ void wxAnyButton::DoSetBitmap(const wxBitmap& bitmap, State which) "Must set normal bitmap with the new size first" ); #if wxUSE_UXTHEME - if ( ShowsLabel() && wxUxThemeEngine::GetIfActive() ) + if ( ShowsLabel() && wxUxThemeIsActive() ) { // We can't change the size of the images stored in wxImageList // in wxXPButtonImageData::m_iml so force recreating it below but @@ -716,7 +713,7 @@ void wxAnyButton::DoSetBitmap(const wxBitmap& bitmap, State which) // (even if we use BUTTON_IMAGELIST_ALIGN_CENTER alignment and // BS_BITMAP style), at least under Windows 2003 so use owner drawn // strategy for bitmap-only buttons - if ( ShowsLabel() && wxUxThemeEngine::GetIfActive() ) + if ( ShowsLabel() && wxUxThemeIsActive() ) { m_imageData = new wxXPButtonImageData(this, bitmap); @@ -858,7 +855,7 @@ void DrawButtonText(HDC hdc, // To get a native look for owner-drawn button in disabled state (without // theming) we must use DrawState() to draw the text label. - if ( !wxUxThemeEngine::GetIfActive() && !btn->IsEnabled() ) + if ( !wxUxThemeIsActive() && !btn->IsEnabled() ) { // However using DrawState() has some drawbacks: // 1. It generally doesn't support alignment flags (except right @@ -1100,10 +1097,8 @@ void DrawXPBackground(wxAnyButton *button, HDC hdc, RECT& rectBtn, UINT state) int iState = uxStates[GetButtonState(button, state)]; - wxUxThemeEngine * const engine = wxUxThemeEngine::Get(); - // draw parent background if needed - if ( engine->IsThemeBackgroundPartiallyTransparent + if ( ::IsThemeBackgroundPartiallyTransparent ( theme, BP_PUSHBUTTON, @@ -1121,18 +1116,18 @@ void DrawXPBackground(wxAnyButton *button, HDC hdc, RECT& rectBtn, UINT state) // being the perfect solution. wxWindowBeingErased = button; - engine->DrawThemeParentBackground(GetHwndOf(button), hdc, &rectBtn); + ::DrawThemeParentBackground(GetHwndOf(button), hdc, &rectBtn); wxWindowBeingErased = NULL; } // draw background - engine->DrawThemeBackground(theme, hdc, BP_PUSHBUTTON, iState, + ::DrawThemeBackground(theme, hdc, BP_PUSHBUTTON, iState, &rectBtn, NULL); // calculate content area margins MARGINS margins; - engine->GetThemeMargins(theme, hdc, BP_PUSHBUTTON, iState, + ::GetThemeMargins(theme, hdc, BP_PUSHBUTTON, iState, TMT_CONTENTMARGINS, &rectBtn, &margins); ::InflateRect(&rectBtn, -margins.cxLeftWidth, -margins.cyTopHeight); ::InflateRect(&rectBtn, -XP_BUTTON_EXTRA_MARGIN, -XP_BUTTON_EXTRA_MARGIN); @@ -1249,7 +1244,7 @@ bool wxAnyButton::MSWOnDraw(WXDRAWITEMSTRUCT *wxdis) if ( !HasFlag(wxBORDER_NONE) ) { #if wxUSE_UXTHEME - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) { DrawXPBackground(this, hdc, rectBtn, state); } @@ -1283,7 +1278,7 @@ bool wxAnyButton::MSWOnDraw(WXDRAWITEMSTRUCT *wxdis) DrawFocusRect(hdc, &rectBtn); #if wxUSE_UXTHEME - if ( !wxUxThemeEngine::GetIfActive() ) + if ( !wxUxThemeIsActive() ) #endif // wxUSE_UXTHEME { if ( pushed ) diff --git a/src/msw/combo.cpp b/src/msw/combo.cpp index 34ef696042..f8a7098da6 100644 --- a/src/msw/combo.cpp +++ b/src/msw/combo.cpp @@ -156,14 +156,10 @@ bool wxComboCtrl::Create(wxWindow *parent, // Set border long border = style & wxBORDER_MASK; -#if wxUSE_UXTHEME - wxUxThemeEngine* theme = wxUxThemeEngine::GetIfActive(); -#endif - if ( !border ) { #if wxUSE_UXTHEME - if ( theme ) + if ( wxUxThemeIsActive() ) { // For XP, have 1-width custom border, for older version use sunken border = wxBORDER_NONE; @@ -188,11 +184,8 @@ bool wxComboCtrl::Create(wxWindow *parent, return false; #if wxUSE_UXTHEME - if ( theme ) - { - if ( ::wxGetWinVersion() >= wxWinVersion_Vista ) + if ( wxUxThemeIsActive() && ::wxGetWinVersion() >= wxWinVersion_Vista ) m_iFlags |= wxCC_BUTTON_STAYS_DOWN |wxCC_BUTTON_COVERS_BORDER; - } #endif if ( style & wxCC_STD_BUTTON ) @@ -332,10 +325,6 @@ wxComboCtrl::PrepareBackground( wxDC& dc, const wxRect& rect, int flags ) const selRect.x += wcp + focusSpacingX; selRect.width -= wcp + (focusSpacingX*2); - //wxUxThemeEngine* theme = NULL; - //if ( hTheme ) - // theme = wxUxThemeEngine::GetIfActive(); - wxColour fgCol; wxColour bgCol; bool doDrawDottedEdge = false; @@ -430,11 +419,7 @@ void wxComboCtrl::OnPaintEvent( wxPaintEvent& WXUNUSED(event) ) HDC hDc = GetHdcOf(*impl); HWND hWnd = GetHwndOf(this); - wxUxThemeEngine* theme = NULL; wxUxThemeHandle hTheme(this, L"COMBOBOX"); - - if ( hTheme ) - theme = wxUxThemeEngine::GetIfActive(); #endif // wxUSE_UXTHEME wxRect borderRect(0,0,sz.x,sz.y); @@ -528,19 +513,19 @@ void wxComboCtrl::OnPaintEvent( wxPaintEvent& WXUNUSED(event) ) // Draw parent's background, if necessary RECT* rUseForTb = NULL; - if ( theme->IsThemeBackgroundPartiallyTransparent( hTheme, comboBoxPart, bgState ) ) + if ( ::IsThemeBackgroundPartiallyTransparent( hTheme, comboBoxPart, bgState ) ) rUseForTb = &rFull; else if ( m_iFlags & wxCC_IFLAG_BUTTON_OUTSIDE ) rUseForTb = &rButton; if ( rUseForTb ) - theme->DrawThemeParentBackground( hWnd, hDc, rUseForTb ); + ::DrawThemeParentBackground( hWnd, hDc, rUseForTb ); // // Draw the control background (including the border) if ( m_widthCustomBorder > 0 ) { - theme->DrawThemeBackground( hTheme, hDc, comboBoxPart, bgState, rUseForBg, NULL ); + ::DrawThemeBackground( hTheme, hDc, comboBoxPart, bgState, rUseForBg, NULL ); } else { @@ -576,7 +561,7 @@ void wxComboCtrl::OnPaintEvent( wxPaintEvent& WXUNUSED(event) ) butPart = CP_DROPDOWNBUTTONLEFT; } - theme->DrawThemeBackground( hTheme, hDc, butPart, butState, &rButton, NULL ); + ::DrawThemeBackground( hTheme, hDc, butPart, butState, &rButton, NULL ); } else if ( useVistaComboBox && (m_iFlags & wxCC_IFLAG_BUTTON_OUTSIDE) ) @@ -795,10 +780,8 @@ bool wxComboCtrl::AnimateShow( const wxRect& rect, int flags ) wxCoord wxComboCtrl::GetNativeTextIndent() const { -#if wxUSE_UXTHEME - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) return NATIVE_TEXT_INDENT_XP; -#endif return NATIVE_TEXT_INDENT_CLASSIC; } diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index 999cac1717..87dcc61b3e 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -668,7 +668,7 @@ void wxComboBox::DoSetToolTip(wxToolTip *tip) bool wxComboBox::SetHint(const wxString& hintOrig) { wxString hint(hintOrig); - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) { // under XP (but not Vista) there is a bug in cue banners // implementation for combobox edit control: the first character is diff --git a/src/msw/control.cpp b/src/msw/control.cpp index 9622386229..e253935c23 100644 --- a/src/msw/control.cpp +++ b/src/msw/control.cpp @@ -410,7 +410,7 @@ wxMSWOwnerDrawnButtonBase::MSWMakeOwnerDrawnIfNecessary(const wxColour& colFg) { // The only way to change the checkbox foreground colour when using // themes is to owner draw it. - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) MSWMakeOwnerDrawn(colFg.IsOk()); } diff --git a/src/msw/menuitem.cpp b/src/msw/menuitem.cpp index b294c795f3..8fbbc9f0c2 100644 --- a/src/msw/menuitem.cpp +++ b/src/msw/menuitem.cpp @@ -300,13 +300,13 @@ public: // get the theme engine or NULL if themes // are not available or not supported on menu - static wxUxThemeEngine *GetUxThemeEngine() + static bool IsUxThemeActive() { #if wxUSE_UXTHEME if ( MenuLayout() == FullTheme ) - return wxUxThemeEngine::GetIfActive(); + return true; #endif // wxUSE_UXTHEME - return NULL; + return false; } @@ -321,7 +321,7 @@ public: { MenuLayoutType menu = Classic; #if wxUSE_UXTHEME - if ( wxUxThemeEngine::GetIfActive() != NULL ) + if ( wxUxThemeIsActive() ) { static wxWinVersion ver = wxGetWinVersion(); if ( ver >= wxWinVersion_Vista ) @@ -344,41 +344,40 @@ MenuDrawData* MenuDrawData::ms_instance = NULL; void MenuDrawData::Init() { #if wxUSE_UXTHEME - wxUxThemeEngine* theme = GetUxThemeEngine(); - if ( theme ) + if ( IsUxThemeActive() ) { wxWindow* window = static_cast(wxApp::GetInstance())->GetTopWindow(); wxUxThemeHandle hTheme(window, L"MENU"); - theme->GetThemeMargins(hTheme, NULL, MENU_POPUPITEM, 0, + ::GetThemeMargins(hTheme, NULL, MENU_POPUPITEM, 0, TMT_CONTENTMARGINS, NULL, &ItemMargin); - theme->GetThemeMargins(hTheme, NULL, MENU_POPUPCHECK, 0, + ::GetThemeMargins(hTheme, NULL, MENU_POPUPCHECK, 0, TMT_CONTENTMARGINS, NULL, &CheckMargin); - theme->GetThemeMargins(hTheme, NULL, MENU_POPUPCHECKBACKGROUND, 0, + ::GetThemeMargins(hTheme, NULL, MENU_POPUPCHECKBACKGROUND, 0, TMT_CONTENTMARGINS, NULL, &CheckBgMargin); - theme->GetThemeMargins(hTheme, NULL, MENU_POPUPSUBMENU, 0, + ::GetThemeMargins(hTheme, NULL, MENU_POPUPSUBMENU, 0, TMT_CONTENTMARGINS, NULL, &ArrowMargin); - theme->GetThemeMargins(hTheme, NULL, MENU_POPUPSEPARATOR, 0, + ::GetThemeMargins(hTheme, NULL, MENU_POPUPSEPARATOR, 0, TMT_SIZINGMARGINS, NULL, &SeparatorMargin); - theme->GetThemePartSize(hTheme, NULL, MENU_POPUPCHECK, 0, + ::GetThemePartSize(hTheme, NULL, MENU_POPUPCHECK, 0, NULL, TS_TRUE, &CheckSize); - theme->GetThemePartSize(hTheme, NULL, MENU_POPUPSUBMENU, 0, + ::GetThemePartSize(hTheme, NULL, MENU_POPUPSUBMENU, 0, NULL, TS_TRUE, &ArrowSize); - theme->GetThemePartSize(hTheme, NULL, MENU_POPUPSEPARATOR, 0, + ::GetThemePartSize(hTheme, NULL, MENU_POPUPSEPARATOR, 0, NULL, TS_TRUE, &SeparatorSize); - theme->GetThemeInt(hTheme, MENU_POPUPBACKGROUND, 0, TMT_BORDERSIZE, &TextBorder); + ::GetThemeInt(hTheme, MENU_POPUPBACKGROUND, 0, TMT_BORDERSIZE, &TextBorder); AccelBorder = 34; ArrowBorder = 0; @@ -386,7 +385,7 @@ void MenuDrawData::Init() Offset = -14; wxUxThemeFont themeFont; - theme->GetThemeSysFont(hTheme, TMT_MENUFONT, themeFont.GetPtr()); + ::GetThemeSysFont(hTheme, TMT_MENUFONT, themeFont.GetPtr()); Font = wxFont(themeFont.GetLOGFONT()); Theme = true; @@ -960,10 +959,7 @@ bool wxMenuItem::OnDrawItem(wxDC& dc, const wxRect& rc, #if wxUSE_UXTHEME // If a custom background colour is explicitly specified, we should use // it instead of the default theme background. - wxUxThemeEngine* const theme = GetBackgroundColour().IsOk() - ? NULL - : MenuDrawData::GetUxThemeEngine(); - if ( theme ) + if ( !GetBackgroundColour().IsOk() && MenuDrawData::IsUxThemeActive() ) { POPUPITEMSTATES state; if ( stat & wxODDisabled ) @@ -982,26 +978,26 @@ bool wxMenuItem::OnDrawItem(wxDC& dc, const wxRect& rc, wxUxThemeHandle hTheme(GetMenu()->GetWindow(), L"MENU"); - if ( theme->IsThemeBackgroundPartiallyTransparent(hTheme, + if ( ::IsThemeBackgroundPartiallyTransparent(hTheme, MENU_POPUPITEM, state) ) { - theme->DrawThemeBackground(hTheme, hdc, + ::DrawThemeBackground(hTheme, hdc, MENU_POPUPBACKGROUND, 0, &rect, NULL); } - theme->DrawThemeBackground(hTheme, hdc, MENU_POPUPGUTTER, + ::DrawThemeBackground(hTheme, hdc, MENU_POPUPGUTTER, 0, &rcGutter, NULL); if ( IsSeparator() ) { rcSeparator.left = rcGutter.right; - theme->DrawThemeBackground(hTheme, hdc, MENU_POPUPSEPARATOR, + ::DrawThemeBackground(hTheme, hdc, MENU_POPUPSEPARATOR, 0, &rcSeparator, NULL); return true; } - theme->DrawThemeBackground(hTheme, hdc, MENU_POPUPITEM, + ::DrawThemeBackground(hTheme, hdc, MENU_POPUPITEM, state, &rcSelection, NULL); } @@ -1205,8 +1201,7 @@ void wxMenuItem::DrawStdCheckMark(WXHDC hdc_, const RECT* rc, wxODStatus stat) HDC hdc = (HDC)hdc_; #if wxUSE_UXTHEME - wxUxThemeEngine* theme = MenuDrawData::GetUxThemeEngine(); - if ( theme ) + if ( MenuDrawData::IsUxThemeActive() ) { wxUxThemeHandle hTheme(GetMenu()->GetWindow(), L"MENU"); @@ -1220,7 +1215,7 @@ void wxMenuItem::DrawStdCheckMark(WXHDC hdc_, const RECT* rc, wxODStatus stat) ? MCB_DISABLED : MCB_NORMAL; - theme->DrawThemeBackground(hTheme, hdc, MENU_POPUPCHECKBACKGROUND, + ::DrawThemeBackground(hTheme, hdc, MENU_POPUPCHECKBACKGROUND, stateCheckBg, &rcBg, NULL); POPUPCHECKSTATES stateCheck; @@ -1235,7 +1230,7 @@ void wxMenuItem::DrawStdCheckMark(WXHDC hdc_, const RECT* rc, wxODStatus stat) : MC_BULLETNORMAL; } - theme->DrawThemeBackground(hTheme, hdc, MENU_POPUPCHECK, + ::DrawThemeBackground(hTheme, hdc, MENU_POPUPCHECK, stateCheck, rc, NULL); } else @@ -1283,31 +1278,30 @@ void wxMenuItem::GetFontToUse(wxFont& font) const void wxMenuItem::GetColourToUse(wxODStatus stat, wxColour& colText, wxColour& colBack) const { #if wxUSE_UXTHEME - wxUxThemeEngine* theme = MenuDrawData::GetUxThemeEngine(); - if ( theme ) + if ( MenuDrawData::IsUxThemeActive() ) { wxUxThemeHandle hTheme(GetMenu()->GetWindow(), L"MENU"); if ( stat & wxODDisabled) { - wxRGBToColour(colText, theme->GetThemeSysColor(hTheme, COLOR_GRAYTEXT)); + wxRGBToColour(colText, ::GetThemeSysColor(hTheme, COLOR_GRAYTEXT)); } else { colText = GetTextColour(); if ( !colText.IsOk() ) - wxRGBToColour(colText, theme->GetThemeSysColor(hTheme, COLOR_MENUTEXT)); + wxRGBToColour(colText, ::GetThemeSysColor(hTheme, COLOR_MENUTEXT)); } if ( stat & wxODSelected ) { - wxRGBToColour(colBack, theme->GetThemeSysColor(hTheme, COLOR_HIGHLIGHT)); + wxRGBToColour(colBack, ::GetThemeSysColor(hTheme, COLOR_HIGHLIGHT)); } else { colBack = GetBackgroundColour(); if ( !colBack.IsOk() ) - wxRGBToColour(colBack, theme->GetThemeSysColor(hTheme, COLOR_MENU)); + wxRGBToColour(colBack, ::GetThemeSysColor(hTheme, COLOR_MENU)); } } else diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index ce5c20016c..4ba23c88a7 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -260,9 +260,9 @@ bool wxNotebook::Create(wxWindow *parent, (style & (wxBK_BOTTOM | wxBK_LEFT | wxBK_RIGHT)) ) { // check if we use themes at all -- if we don't, we're still okay - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) { - wxUxThemeEngine::GetIfActive()->SetWindowTheme(GetHwnd(), L"", L""); + ::SetWindowTheme(GetHwnd(), L"", L""); // correct the background color for the new non-themed control SetBackgroundColour(GetThemeBackgroundColour()); @@ -1116,7 +1116,7 @@ WXHBRUSH wxNotebook::QueryBgBitmap() wxCopyRectToRECT(r, rc); WindowHDC hDC(GetHwnd()); - wxUxThemeEngine::Get()->GetThemeBackgroundExtent + ::GetThemeBackgroundExtent ( theme, (HDC) hDC, @@ -1131,7 +1131,7 @@ WXHBRUSH wxNotebook::QueryBgBitmap() { SelectInHDC selectBmp(hDCMem, hBmp); - wxUxThemeEngine::Get()->DrawThemeBackground + ::DrawThemeBackground ( theme, hDCMem, @@ -1150,7 +1150,7 @@ void wxNotebook::UpdateBgBrush() if ( m_hbrBackground ) ::DeleteObject((HBRUSH)m_hbrBackground); - if ( !m_hasBgCol && wxUxThemeEngine::GetIfActive() ) + if ( !m_hasBgCol && wxUxThemeIsActive() ) { m_hbrBackground = QueryBgBitmap(); } @@ -1191,7 +1191,7 @@ bool wxNotebook::MSWPrintChild(WXHDC hDC, wxWindow *child) { // we have the content area (page size), but we need to draw all of the // background for it to be aligned correctly - wxUxThemeEngine::Get()->GetThemeBackgroundExtent + ::GetThemeBackgroundExtent ( theme, (HDC) hDC, @@ -1200,7 +1200,7 @@ bool wxNotebook::MSWPrintChild(WXHDC hDC, wxWindow *child) &rc, &rc ); - wxUxThemeEngine::Get()->DrawThemeBackground + ::DrawThemeBackground ( theme, (HDC) hDC, @@ -1222,7 +1222,7 @@ bool wxNotebook::MSWPrintChild(WXHDC hDC, wxWindow *child) wxColour wxNotebook::GetThemeBackgroundColour() const { #if wxUSE_UXTHEME - if (wxUxThemeEngine::Get()) + if (wxUxThemeIsActive()) { wxUxThemeHandle hTheme((wxNotebook*) this, L"TAB"); if (hTheme) @@ -1231,7 +1231,7 @@ wxColour wxNotebook::GetThemeBackgroundColour() const // See PlatformSDK\Include\Tmschema.h for values. // JACS: can also use 9 (TABP_PANE) COLORREF themeColor; - bool success = (S_OK == wxUxThemeEngine::Get()->GetThemeColor( + bool success = (S_OK == ::GetThemeColor( hTheme, 10 /* TABP_BODY */, 1 /* NORMAL */, @@ -1251,7 +1251,7 @@ wxColour wxNotebook::GetThemeBackgroundColour() const */ if (themeColor == 1) { - wxUxThemeEngine::Get()->GetThemeColor( + ::GetThemeColor( hTheme, 10 /* TABP_BODY */, 1 /* NORMAL */, @@ -1270,7 +1270,7 @@ wxColour wxNotebook::GetThemeBackgroundColour() const { WCHAR szwThemeFile[1024]; WCHAR szwThemeColor[256]; - if (S_OK == wxUxThemeEngine::Get()->GetCurrentThemeName(szwThemeFile, 1024, szwThemeColor, 256, NULL, 0)) + if (S_OK == ::GetCurrentThemeName(szwThemeFile, 1024, szwThemeColor, 256, NULL, 0)) { wxString themeFile(szwThemeFile); if (themeFile.Find(wxT("Aero")) != -1 && wxString(szwThemeColor) == wxT("NormalColor")) diff --git a/src/msw/renderer.cpp b/src/msw/renderer.cpp index 64eaff0ed9..6a3a650997 100644 --- a/src/msw/renderer.cpp +++ b/src/msw/renderer.cpp @@ -38,6 +38,7 @@ #include "wx/renderer.h" #include "wx/msw/private.h" #include "wx/msw/uxtheme.h" +#include "wx/dynlib.h" // tmschema.h is in Win32 Platform SDK and might not be available with earlier // compilers @@ -126,6 +127,30 @@ #define TDLGEBS_EXPANDEDPRESSED 6 #endif +// These Vista+ only types used by DrawThemeTextEx may not be available in older SDK headers +typedef int(__stdcall *WXDTT_CALLBACK_PROC)(HDC hdc, const wchar_t * pszText, + int cchText, RECT * prc, unsigned int dwFlags, WXLPARAM lParam); + +typedef struct _WXDTTOPTS +{ + DWORD dwSize; + DWORD dwFlags; + COLORREF crText; + COLORREF crBorder; + COLORREF crShadow; + int iTextShadowType; + POINT ptShadowOffset; + int iBorderSize; + int iFontPropId; + int iColorPropId; + int iStateId; + BOOL fApplyOverlay; + int iGlowSize; + WXDTT_CALLBACK_PROC pfnDrawTextCallback; + WXLPARAM lParam; +} WXDTTOPTS, *WXPDTTOPTS; + + // ---------------------------------------------------------------------------- // methods common to wxRendererMSW and wxRendererXP // ---------------------------------------------------------------------------- @@ -450,8 +475,7 @@ void wxRendererMSWBase::DrawComboBox(wxWindow* win, wxRendererNative& wxRendererNative::GetDefault() { #if wxUSE_UXTHEME - wxUxThemeEngine *themeEngine = wxUxThemeEngine::Get(); - if ( themeEngine && themeEngine->IsAppThemed() ) + if ( wxUxThemeIsActive() ) return wxRendererXP::Get(); #endif // wxUSE_UXTHEME @@ -691,7 +715,7 @@ wxRendererXP::DrawComboBoxDropButton(wxWindow * win, else state = CBXS_NORMAL; - wxUxThemeEngine::Get()->DrawThemeBackground + ::DrawThemeBackground ( hTheme, GetHdcOf(dc.GetTempHDC()), @@ -731,7 +755,7 @@ wxRendererXP::DrawHeaderButton(wxWindow *win, state = HIS_HOT; else state = HIS_NORMAL; - wxUxThemeEngine::Get()->DrawThemeBackground + ::DrawThemeBackground ( hTheme, GetHdcOf(dc.GetTempHDC()), @@ -771,7 +795,7 @@ wxRendererXP::DrawTreeItemButton(wxWindow *win, wxCopyRectToRECT(adjustedRect, r); int state = flags & wxCONTROL_EXPANDED ? GLPS_OPENED : GLPS_CLOSED; - wxUxThemeEngine::Get()->DrawThemeBackground + ::DrawThemeBackground ( hTheme, GetHdcOf(dc.GetTempHDC()), @@ -844,7 +868,7 @@ wxRendererXP::DoDrawButtonLike(HTHEME htheme, else if ( part == BP_PUSHBUTTON && (flags & wxCONTROL_ISDEFAULT) ) state = PBS_DEFAULTED; - wxUxThemeEngine::Get()->DrawThemeBackground + ::DrawThemeBackground ( htheme, GetHdcOf(dc.GetTempHDC()), @@ -905,12 +929,10 @@ wxSize wxRendererXP::GetCheckBoxSize(wxWindow* win) wxUxThemeHandle hTheme(win, L"BUTTON"); if (hTheme) { - wxUxThemeEngine* const te = wxUxThemeEngine::Get(); - - if (te && te->IsThemePartDefined(hTheme, BP_CHECKBOX, 0)) + if (::IsThemePartDefined(hTheme, BP_CHECKBOX, 0)) { SIZE checkSize; - if (te->GetThemePartSize(hTheme, NULL, BP_CHECKBOX, CBS_UNCHECKEDNORMAL, NULL, TS_DRAW, &checkSize) == S_OK) + if (::GetThemePartSize(hTheme, NULL, BP_CHECKBOX, CBS_UNCHECKEDNORMAL, NULL, TS_DRAW, &checkSize) == S_OK) return wxSize(checkSize.cx, checkSize.cy); } } @@ -924,7 +946,6 @@ wxRendererXP::DrawCollapseButton(wxWindow *win, int flags) { wxUxThemeHandle hTheme(win, L"TASKDIALOG"); - wxUxThemeEngine* const te = wxUxThemeEngine::Get(); int state; if (flags & wxCONTROL_PRESSED) @@ -937,7 +958,7 @@ wxRendererXP::DrawCollapseButton(wxWindow *win, if ( flags & wxCONTROL_EXPANDED ) state += 3; - if ( te->IsThemePartDefined(hTheme, TDLG_EXPANDOBUTTON, 0) ) + if ( ::IsThemePartDefined(hTheme, TDLG_EXPANDOBUTTON, 0) ) { if (flags & wxCONTROL_EXPANDED) flags |= wxCONTROL_CHECKED; @@ -947,7 +968,7 @@ wxRendererXP::DrawCollapseButton(wxWindow *win, RECT r; wxCopyRectToRECT(adjustedRect, r); - te->DrawThemeBackground + ::DrawThemeBackground ( hTheme, GetHdcOf(dc.GetTempHDC()), @@ -964,14 +985,13 @@ wxRendererXP::DrawCollapseButton(wxWindow *win, wxSize wxRendererXP::GetCollapseButtonSize(wxWindow *win, wxDC& dc) { wxUxThemeHandle hTheme(win, L"TASKDIALOG"); - wxUxThemeEngine* const te = wxUxThemeEngine::Get(); // EXPANDOBUTTON scales ugly if not using the correct size, get size from theme - if ( te->IsThemePartDefined(hTheme, TDLG_EXPANDOBUTTON, 0) ) + if ( ::IsThemePartDefined(hTheme, TDLG_EXPANDOBUTTON, 0) ) { SIZE s; - te->GetThemePartSize(hTheme, + ::GetThemePartSize(hTheme, GetHdcOf(dc.GetTempHDC()), TDLG_EXPANDOBUTTON, TDLGEBS_NORMAL, @@ -995,15 +1015,14 @@ wxRendererXP::DrawItemSelectionRect(wxWindow *win, const int itemState = GetListItemState(flags); - wxUxThemeEngine* const te = wxUxThemeEngine::Get(); - if ( te->IsThemePartDefined(hTheme, LVP_LISTITEM, 0) ) + if ( ::IsThemePartDefined(hTheme, LVP_LISTITEM, 0) ) { RECT rc; wxCopyRectToRECT(rect, rc); - if ( te->IsThemeBackgroundPartiallyTransparent(hTheme, LVP_LISTITEM, itemState) ) - te->DrawThemeParentBackground(GetHwndOf(win), GetHdcOf(dc.GetTempHDC()), &rc); + if ( ::IsThemeBackgroundPartiallyTransparent(hTheme, LVP_LISTITEM, itemState) ) + ::DrawThemeParentBackground(GetHwndOf(win), GetHdcOf(dc.GetTempHDC()), &rc); - te->DrawThemeBackground(hTheme, GetHdcOf(dc.GetTempHDC()), LVP_LISTITEM, itemState, &rc, 0); + ::DrawThemeBackground(hTheme, GetHdcOf(dc.GetTempHDC()), LVP_LISTITEM, itemState, &rc, 0); } else { @@ -1023,14 +1042,22 @@ void wxRendererXP::DrawItemText(wxWindow* win, const int itemState = GetListItemState(flags); - wxUxThemeEngine* te = wxUxThemeEngine::Get(); - if ( te->DrawThemeTextEx && // Might be not available if we're under XP - te->IsThemePartDefined(hTheme, LVP_LISTITEM, 0) ) + typedef HRESULT(__stdcall *DrawThemeTextEx_t)(HTHEME, HDC, int, int, const wchar_t *, int, DWORD, RECT *, const WXDTTOPTS *); + static DrawThemeTextEx_t s_DrawThemeTextEx = NULL; + + if (wxGetWinVersion() >= wxWinVersion_Vista) + { + wxLoadedDLL dllUxTheme(wxS("uxtheme.dll")); + wxDL_INIT_FUNC(s_, DrawThemeTextEx, dllUxTheme); + } + + if ( s_DrawThemeTextEx && // Might be not available if we're under XP + ::IsThemePartDefined(hTheme, LVP_LISTITEM, 0) ) { RECT rc; wxCopyRectToRECT(rect, rc); - DTTOPTS textOpts; + WXDTTOPTS textOpts; textOpts.dwSize = sizeof(textOpts); textOpts.dwFlags = DTT_STATEID; textOpts.iStateId = itemState; @@ -1093,7 +1120,7 @@ void wxRendererXP::DrawItemText(wxWindow* win, break; } - te->DrawThemeTextEx(hTheme, dc.GetHDC(), LVP_LISTITEM, itemState, + s_DrawThemeTextEx(hTheme, dc.GetHDC(), LVP_LISTITEM, itemState, drawText->wchar_str(), -1, textFlags, &rc, &textOpts); } else @@ -1119,7 +1146,7 @@ void wxRendererXP::DrawTextCtrl(wxWindow* win, wxColour bdr; COLORREF cref; - wxUxThemeEngine::Get()->GetThemeColor(hTheme, EP_EDITTEXT, + ::GetThemeColor(hTheme, EP_EDITTEXT, ETS_NORMAL, TMT_FILLCOLOR, &cref); fill = wxRGBToColour(cref); @@ -1129,7 +1156,7 @@ void wxRendererXP::DrawTextCtrl(wxWindow* win, else etsState = ETS_NORMAL; - wxUxThemeEngine::Get()->GetThemeColor(hTheme, EP_EDITTEXT, + ::GetThemeColor(hTheme, EP_EDITTEXT, etsState, TMT_BORDERCOLOR, &cref); bdr = wxRGBToColour(cref); @@ -1155,7 +1182,7 @@ void wxRendererXP::DrawGauge(wxWindow* win, RECT r; wxCopyRectToRECT(rect, r); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), PP_BAR, @@ -1164,7 +1191,7 @@ void wxRendererXP::DrawGauge(wxWindow* win, NULL); RECT contentRect; - wxUxThemeEngine::Get()->GetThemeBackgroundContentRect( + ::GetThemeBackgroundContentRect( hTheme, GetHdcOf(dc.GetTempHDC()), PP_BAR, @@ -1177,7 +1204,7 @@ void wxRendererXP::DrawGauge(wxWindow* win, value, max); - wxUxThemeEngine::Get()->DrawThemeBackground( + ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), PP_CHUNK, diff --git a/src/msw/richtooltip.cpp b/src/msw/richtooltip.cpp index 0e75794889..2dacd70e84 100644 --- a/src/msw/richtooltip.cpp +++ b/src/msw/richtooltip.cpp @@ -192,7 +192,7 @@ wxRichToolTipImpl::Create(const wxString& title, const wxString& message) { // EM_SHOWBALLOONTIP is only implemented by comctl32.dll v6 so don't even // bother using the native implementation if we're not using themes. - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) return new wxRichToolTipMSWImpl(title, message); return new wxRichToolTipGenericImpl(title, message); diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index 9ae5c230df..d028b60f30 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -399,7 +399,7 @@ void wxStaticBox::PaintForeground(wxDC& dc, const RECT&) // background mode doesn't change anything: the static box def window proc // still draws the label in its own colours, so we need to redraw the text // ourselves if we have a non default fg colour - if ( m_hasFgCol && wxUxThemeEngine::GetIfActive() ) + if ( m_hasFgCol && wxUxThemeIsActive() ) { // draw over the text in default colour in our colour HDC hdc = GetHdcOf(*impl); @@ -421,7 +421,7 @@ void wxStaticBox::PaintForeground(wxDC& dc, const RECT&) if ( hTheme ) { wxUxThemeFont themeFont; - if ( wxUxThemeEngine::Get()->GetThemeFont + if ( ::GetThemeFont ( hTheme, hdc, diff --git a/src/msw/statusbar.cpp b/src/msw/statusbar.cpp index dac53ece3b..52ed30fa79 100644 --- a/src/msw/statusbar.cpp +++ b/src/msw/statusbar.cpp @@ -393,7 +393,7 @@ const wxStatusBar::MSWMetrics& wxStatusBar::MSWGetMetrics() // pane. Notice that it's not the value returned by SB_GETBORDERS // which, at least on this Windows 2003 system, returns {0, 2, 2} #if wxUSE_UXTHEME - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) { s_metrics.gripWidth = 20; s_metrics.textMargin = 8; @@ -450,7 +450,7 @@ bool wxStatusBar::GetFieldRect(int i, wxRect& rect) const r.left -= 2; } - wxUxThemeEngine::Get()->GetThemeBackgroundContentRect(theme, NULL, + ::GetThemeBackgroundContentRect(theme, NULL, 1 /* SP_PANE */, 0, &r, &r); } diff --git a/src/msw/systhemectrl.cpp b/src/msw/systhemectrl.cpp index c705b05e00..8634368514 100644 --- a/src/msw/systhemectrl.cpp +++ b/src/msw/systhemectrl.cpp @@ -22,13 +22,10 @@ void wxSystemThemedControlBase::DoEnableSystemTheme(bool enable, wxWindow* window) { - if ( wxGetWinVersion() >= wxWinVersion_Vista ) + if ( wxGetWinVersion() >= wxWinVersion_Vista && wxUxThemeIsActive() ) { - if ( wxUxThemeEngine *te = wxUxThemeEngine::GetIfActive() ) - { - const wchar_t* const sysThemeId = enable ? L"EXPLORER" : NULL; - te->SetWindowTheme(GetHwndOf(window), sysThemeId, NULL); - } + const wchar_t* const sysThemeId = enable ? L"EXPLORER" : NULL; + ::SetWindowTheme(GetHwndOf(window), sysThemeId, NULL); } } diff --git a/src/msw/textentry.cpp b/src/msw/textentry.cpp index 3acd21fff1..ba2c901848 100644 --- a/src/msw/textentry.cpp +++ b/src/msw/textentry.cpp @@ -970,7 +970,7 @@ void wxTextEntry::ForceUpper() bool wxTextEntry::SetHint(const wxString& hint) { - if ( wxGetWinVersion() >= wxWinVersion_Vista && wxUxThemeEngine::GetIfActive() ) + if ( wxGetWinVersion() >= wxWinVersion_Vista && wxUxThemeIsActive() ) { // notice that this message always works with Unicode strings // @@ -987,7 +987,7 @@ bool wxTextEntry::SetHint(const wxString& hint) wxString wxTextEntry::GetHint() const { - if ( wxUxThemeEngine::GetIfActive() ) + if ( wxUxThemeIsActive() ) { wchar_t buf[256]; if ( ::SendMessage(GetEditHwnd(), EM_GETCUEBANNER, diff --git a/src/msw/uxtheme.cpp b/src/msw/uxtheme.cpp index d488aeba4d..b117f18598 100644 --- a/src/msw/uxtheme.cpp +++ b/src/msw/uxtheme.cpp @@ -35,149 +35,13 @@ #include "wx/msw/uxtheme.h" -// ============================================================================ -// wxUxThemeModule -// ============================================================================ - -// this module is responsable for deleting the theme engine -class wxUxThemeModule : public wxModule +bool wxUxThemeIsActive() { -public: - virtual bool OnInit() wxOVERRIDE { return true; } - virtual void OnExit() wxOVERRIDE - { - if ( wxUxThemeEngine::ms_themeEngine ) - { - // this is probably not necessary right now but try to be careful - // and avoid the problems which we might have if someone ever - // decides to show a message box using the theme engine from - // wxUxThemeEngine dtor (e.g. from wxDynamicLibrary dtor...) or - // something like this - wxUxThemeEngine *themeEngine = wxUxThemeEngine::ms_themeEngine; - wxUxThemeEngine::ms_themeEngine = NULL; - wxUxThemeEngine::ms_isThemeEngineAvailable = -1; - - delete themeEngine; - } - } - - - wxDECLARE_DYNAMIC_CLASS(wxUxThemeModule); -}; - -wxIMPLEMENT_DYNAMIC_CLASS(wxUxThemeModule, wxModule); - -// ============================================================================ -// wxUxThemeEngine implementation -// ============================================================================ - -wxUxThemeEngine *wxUxThemeEngine::ms_themeEngine = NULL; -int wxUxThemeEngine::ms_isThemeEngineAvailable = -1; // unknown - -wxUxThemeEngine* wxUxThemeEngine::Get() -{ - // we assume that themes are only used in the main thread hence no need for - // critical section here - if ( ms_isThemeEngineAvailable == -1 ) - { - // we're called or the first time, check if the themes are available - ms_themeEngine = new wxUxThemeEngine; - if ( !ms_themeEngine->Initialize() ) - { - // can't use themes, probably because the system doesn't support - // them, don't do it again - delete ms_themeEngine; - ms_themeEngine = NULL; - - ms_isThemeEngineAvailable = false; - } - else // initialized ok - { - ms_isThemeEngineAvailable = true; - } - } - - return ms_themeEngine; + return ::IsAppThemed() && ::IsThemeActive(); } - -bool wxUxThemeEngine::Initialize() +#else +bool wxUxThemeIsActive() { - if ( wxApp::GetComCtl32Version() < 600 ) - { - // not using theme-aware comctl32.dll anyhow, don't even try to use - // themes - return false; - } - - // we're prepared to handle the errors - wxLogNull noLog; - - if ( !m_dllUxTheme.Load(wxT("uxtheme.dll")) ) - return false; - -#define RESOLVE_OPTIONAL_UXTHEME_FUNCTION(type, funcname) \ - funcname = (type)m_dllUxTheme.GetSymbol(wxT(#funcname)) - -#define RESOLVE_UXTHEME_FUNCTION(type, funcname) \ - RESOLVE_OPTIONAL_UXTHEME_FUNCTION(type, funcname); \ - if ( !funcname ) \ - return false - - RESOLVE_UXTHEME_FUNCTION(PFNWXUOPENTHEMEDATA, OpenThemeData); - RESOLVE_UXTHEME_FUNCTION(PFNWXUCLOSETHEMEDATA, CloseThemeData); - RESOLVE_UXTHEME_FUNCTION(PFNWXUDRAWTHEMEBACKGROUND, DrawThemeBackground); - RESOLVE_UXTHEME_FUNCTION(PFNWXUDRAWTHEMEBACKGROUNDEX, DrawThemeBackgroundEx); - RESOLVE_UXTHEME_FUNCTION(PFNWXUDRAWTHEMETEXT, DrawThemeText); - // This function is not available under XP, so don't fail if it can't be - // resolved, we'll check before using it. - RESOLVE_OPTIONAL_UXTHEME_FUNCTION(PFNWXUDRAWTHEMETEXTEX, DrawThemeTextEx); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEBACKGROUNDCONTENTRECT, GetThemeBackgroundContentRect); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEBACKGROUNDEXTENT, GetThemeBackgroundExtent); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEPARTSIZE, GetThemePartSize); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMETEXTEXTENT, GetThemeTextExtent); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMETEXTMETRICS, GetThemeTextMetrics); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEBACKGROUNDREGION, GetThemeBackgroundRegion); - RESOLVE_UXTHEME_FUNCTION(PFNWXUHITTESTTHEMEBACKGROUND, HitTestThemeBackground); - RESOLVE_UXTHEME_FUNCTION(PFNWXUDRAWTHEMEEDGE, DrawThemeEdge); - RESOLVE_UXTHEME_FUNCTION(PFNWXUDRAWTHEMEICON, DrawThemeIcon); - RESOLVE_UXTHEME_FUNCTION(PFNWXUISTHEMEPARTDEFINED, IsThemePartDefined); - RESOLVE_UXTHEME_FUNCTION(PFNWXUISTHEMEBACKGROUNDPARTIALLYTRANSPARENT, IsThemeBackgroundPartiallyTransparent); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMECOLOR, GetThemeColor); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEMETRIC, GetThemeMetric); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESTRING, GetThemeString); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEBOOL, GetThemeBool); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEINT, GetThemeInt); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEENUMVALUE, GetThemeEnumValue); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEPOSITION, GetThemePosition); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEFONT, GetThemeFont); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMERECT, GetThemeRect); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEMARGINS, GetThemeMargins); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEINTLIST, GetThemeIntList); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEPROPERTYORIGIN, GetThemePropertyOrigin); - RESOLVE_UXTHEME_FUNCTION(PFNWXUSETWINDOWTHEME, SetWindowTheme); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEFILENAME, GetThemeFilename); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSCOLOR, GetThemeSysColor); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSCOLORBRUSH, GetThemeSysColorBrush); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSBOOL, GetThemeSysBool); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSSIZE, GetThemeSysSize); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSFONT, GetThemeSysFont); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSSTRING, GetThemeSysString); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMESYSINT, GetThemeSysInt); - RESOLVE_UXTHEME_FUNCTION(PFNWXUISTHEMEACTIVE, IsThemeActive); - RESOLVE_UXTHEME_FUNCTION(PFNWXUISAPPTHEMED, IsAppThemed); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETWINDOWTHEME, GetWindowTheme); - RESOLVE_UXTHEME_FUNCTION(PFNWXUENABLETHEMEDIALOGTEXTURE, EnableThemeDialogTexture); - RESOLVE_UXTHEME_FUNCTION(PFNWXUISTHEMEDIALOGTEXTUREENABLED, IsThemeDialogTextureEnabled); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEAPPPROPERTIES, GetThemeAppProperties); - RESOLVE_UXTHEME_FUNCTION(PFNWXUSETTHEMEAPPPROPERTIES, SetThemeAppProperties); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETCURRENTTHEMENAME, GetCurrentThemeName); - RESOLVE_UXTHEME_FUNCTION(PFNWXUGETTHEMEDOCUMENTATIONPROPERTY, GetThemeDocumentationProperty); - RESOLVE_UXTHEME_FUNCTION(PFNWXUDRAWTHEMEPARENTBACKGROUND, DrawThemeParentBackground); - RESOLVE_UXTHEME_FUNCTION(PFNWXUENABLETHEMING, EnableTheming); - -#undef RESOLVE_UXTHEME_FUNCTION - - return true; + return false; } - #endif // wxUSE_UXTHEME diff --git a/src/msw/window.cpp b/src/msw/window.cpp index 41e84b5559..a63333f0f8 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -1461,8 +1461,7 @@ wxBorder wxWindowMSW::TranslateBorder(wxBorder border) const { if (CanApplyThemeBorder()) { - wxUxThemeEngine* theme = wxUxThemeEngine::GetIfActive(); - if (theme) + if ( wxUxThemeIsActive() ) return wxBORDER_THEME; } return wxBORDER_SUNKEN; @@ -3647,9 +3646,8 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, // If we want the default themed border then we need to draw it ourselves case WM_NCCALCSIZE: { - wxUxThemeEngine* theme = wxUxThemeEngine::GetIfActive(); const wxBorder border = TranslateBorder(GetBorder()); - if (theme && border == wxBORDER_THEME) + if (wxUxThemeIsActive() && border == wxBORDER_THEME) { // first ask the widget to calculate the border size rc.result = MSWDefWindowProc(message, wParam, lParam); @@ -3674,7 +3672,7 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, wxClientDC dc((wxWindow *)this); wxMSWDCImpl *impl = (wxMSWDCImpl*) dc.GetImpl(); - if ( theme->GetThemeBackgroundContentRect + if ( ::GetThemeBackgroundContentRect ( hTheme, GetHdcOf(*impl), @@ -3699,9 +3697,8 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, case WM_NCPAINT: { - wxUxThemeEngine* theme = wxUxThemeEngine::GetIfActive(); const wxBorder border = TranslateBorder(GetBorder()); - if (theme && border == wxBORDER_THEME) + if (wxUxThemeIsActive() && border == wxBORDER_THEME) { // first ask the widget to paint its non-client area, such as scrollbars, etc. rc.result = MSWDefWindowProc(message, wParam, lParam); @@ -3716,7 +3713,7 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, wxCopyRectToRECT(GetSize(), rcBorder); RECT rcClient; - theme->GetThemeBackgroundContentRect( + ::GetThemeBackgroundContentRect( hTheme, GetHdcOf(*impl), EP_EDITTEXT, ETS_NORMAL, &rcBorder, &rcClient); InflateRect(&rcClient, -1, -1); @@ -3724,9 +3721,9 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, rcClient.right, rcClient.bottom); // Make sure the background is in a proper state - if (theme->IsThemeBackgroundPartiallyTransparent(hTheme, EP_EDITTEXT, ETS_NORMAL)) + if (::IsThemeBackgroundPartiallyTransparent(hTheme, EP_EDITTEXT, ETS_NORMAL)) { - theme->DrawThemeParentBackground(GetHwnd(), GetHdcOf(*impl), &rcBorder); + ::DrawThemeParentBackground(GetHwnd(), GetHdcOf(*impl), &rcBorder); } // Draw the border @@ -3738,7 +3735,7 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, // nState = ETS_READONLY; else nState = ETS_NORMAL; - theme->DrawThemeBackground(hTheme, GetHdcOf(*impl), EP_EDITTEXT, nState, &rcBorder, NULL); + ::DrawThemeBackground(hTheme, GetHdcOf(*impl), EP_EDITTEXT, nState, &rcBorder, NULL); } } break; @@ -4846,8 +4843,7 @@ wxColour wxWindowMSW::MSWGetThemeColour(const wchar_t *themeName, wxSystemColour fallback) const { #if wxUSE_UXTHEME - const wxUxThemeEngine* theme = wxUxThemeEngine::GetIfActive(); - if ( theme ) + if ( wxUxThemeIsActive() ) { int themeProperty = 0; @@ -4869,7 +4865,7 @@ wxColour wxWindowMSW::MSWGetThemeColour(const wchar_t *themeName, wxUxThemeHandle hTheme((const wxWindow *)this, themeName); COLORREF col; - HRESULT hr = theme->GetThemeColor + HRESULT hr = ::GetThemeColor ( hTheme, themePart, diff --git a/tests/benchmarks/makefile.bcc b/tests/benchmarks/makefile.bcc index 5924b9092a..b34d95adee 100644 --- a/tests/benchmarks/makefile.bcc +++ b/tests/benchmarks/makefile.bcc @@ -279,7 +279,7 @@ clean: $(OBJS)\bench.exe: $(BENCH_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BENCH_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, + c0x32.obj $(BENCH_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, | data: @@ -289,14 +289,14 @@ data: !if "$(USE_GUI)" == "1" $(OBJS)\bench_gui.exe: $(BENCH_GUI_OBJECTS) $(OBJS)\bench_gui_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BENCH_GUI_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, $(OBJS)\bench_gui_sample.res + c0x32.obj $(BENCH_GUI_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, $(OBJS)\bench_gui_sample.res | !endif !if "$(USE_GUI)" == "1" $(OBJS)\bench_graphics.exe: $(BENCH_GRAPHICS_OBJECTS) $(OBJS)\bench_graphics_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(BENCH_GRAPHICS_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, $(OBJS)\bench_graphics_sample.res + c0x32.obj $(BENCH_GRAPHICS_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_1).lib,, $(OBJS)\bench_graphics_sample.res | !endif diff --git a/tests/benchmarks/makefile.gcc b/tests/benchmarks/makefile.gcc index 661f02003a..54948a8494 100644 --- a/tests/benchmarks/makefile.gcc +++ b/tests/benchmarks/makefile.gcc @@ -262,7 +262,7 @@ clean: -if exist $(OBJS)\bench_graphics.exe del $(OBJS)\bench_graphics.exe $(OBJS)\bench.exe: $(BENCH_OBJECTS) - $(CXX) -o $@ $(BENCH_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BENCH_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) @@ -270,12 +270,12 @@ data: ifeq ($(USE_GUI),1) $(OBJS)\bench_gui.exe: $(BENCH_GUI_OBJECTS) $(OBJS)\bench_gui_sample_rc.o - $(CXX) -o $@ $(BENCH_GUI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BENCH_GUI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif ifeq ($(USE_GUI),1) $(OBJS)\bench_graphics.exe: $(BENCH_GRAPHICS_OBJECTS) $(OBJS)\bench_graphics_sample_rc.o - $(CXX) -o $@ $(BENCH_GRAPHICS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(BENCH_GRAPHICS_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl -lopengl32 -lglu32 $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif data-image: diff --git a/tests/makefile.bcc b/tests/makefile.bcc index 2466423dad..25f9fc68d1 100644 --- a/tests/makefile.bcc +++ b/tests/makefile.bcc @@ -499,27 +499,27 @@ clean: $(OBJS)\test.exe: $(OBJS)\test_dummy.obj $(TEST_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(TEST_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0x32.obj $(TEST_OBJECTS),$@,, $(__WXLIB_NET_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | !if "$(USE_GUI)" == "1" $(OBJS)\test_drawing.exe: $(OBJS)\test_drawing_dummy.obj $(TEST_DRAWING_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(TEST_DRAWING_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0x32.obj $(TEST_DRAWING_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | !endif !if "$(SHARED)" == "1" && "$(USE_GUI)" == "1" $(OBJS)\test_drawingplugin.dll: $(TEST_DRAWINGPLUGIN_OBJECTS) ilink32 -Tpd -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0d32.obj $(TEST_DRAWINGPLUGIN_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, + c0d32.obj $(TEST_DRAWINGPLUGIN_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, | !endif !if "$(USE_GUI)" == "1" $(OBJS)\test_gui.exe: $(OBJS)\test_gui_dummy.obj $(TEST_GUI_OBJECTS) $(OBJS)\test_gui_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) @&&| - c0x32.obj $(TEST_GUI_OBJECTS),$@,, $(__WXLIB_WEBVIEW_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_MEDIA_p) $(__WXLIB_XRC_p) $(__WXLIB_XML_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\test_gui_sample.res + c0x32.obj $(TEST_GUI_OBJECTS),$@,, $(__WXLIB_WEBVIEW_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_MEDIA_p) $(__WXLIB_XRC_p) $(__WXLIB_XML_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG)$(__RUNTIME_LIBS_2).lib,, $(OBJS)\test_gui_sample.res | !endif diff --git a/tests/makefile.gcc b/tests/makefile.gcc index 6ff71503e1..c6971bac0b 100644 --- a/tests/makefile.gcc +++ b/tests/makefile.gcc @@ -481,23 +481,23 @@ clean: -if exist $(OBJS)\test_gui.exe del $(OBJS)\test_gui.exe $(OBJS)\test.exe: $(TEST_OBJECTS) - $(CXX) -o $@ $(TEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TEST_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme ifeq ($(USE_GUI),1) $(OBJS)\test_drawing.exe: $(TEST_DRAWING_OBJECTS) - $(CXX) -o $@ $(TEST_DRAWING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TEST_DRAWING_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif ifeq ($(SHARED),1) ifeq ($(USE_GUI),1) $(OBJS)\test_drawingplugin.dll: $(TEST_DRAWINGPLUGIN_OBJECTS) - $(CXX) $(LINK_MODULE_FLAGS) -fPIC -o $@ $(TEST_DRAWINGPLUGIN_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) $(LINK_MODULE_FLAGS) -fPIC -o $@ $(TEST_DRAWINGPLUGIN_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif endif ifeq ($(USE_GUI),1) $(OBJS)\test_gui.exe: $(TEST_GUI_OBJECTS) $(OBJS)\test_gui_sample_rc.o - $(CXX) -o $@ $(TEST_GUI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_WEBVIEW_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_MEDIA_p) $(__WXLIB_XRC_p) $(__WXLIB_XML_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(TEST_GUI_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_WEBVIEW_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_MEDIA_p) $(__WXLIB_XRC_p) $(__WXLIB_XML_p) $(__WXLIB_ADV_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif data: diff --git a/utils/emulator/src/makefile.bcc b/utils/emulator/src/makefile.bcc index 2c94394082..78fc8b8bb4 100644 --- a/utils/emulator/src/makefile.bcc +++ b/utils/emulator/src/makefile.bcc @@ -228,7 +228,7 @@ clean: $(OBJS)\wxemulator.exe: $(WXEMULATOR_OBJECTS) $(OBJS)\wxemulator_sample.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(WXEMULATOR_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wxemulator_sample.res + c0w32.obj $(WXEMULATOR_OBJECTS),$@,, $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\wxemulator_sample.res | data: diff --git a/utils/emulator/src/makefile.gcc b/utils/emulator/src/makefile.gcc index 0caef3596f..57131c98c3 100644 --- a/utils/emulator/src/makefile.gcc +++ b/utils/emulator/src/makefile.gcc @@ -218,7 +218,7 @@ clean: -if exist $(OBJS)\wxemulator.exe del $(OBJS)\wxemulator.exe $(OBJS)\wxemulator.exe: $(WXEMULATOR_OBJECTS) $(OBJS)\wxemulator_sample_rc.o - $(CXX) -o $@ $(WXEMULATOR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WXEMULATOR_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/utils/execmon/makefile.bcc b/utils/execmon/makefile.bcc index 2574f751d1..49d128dd8e 100644 --- a/utils/execmon/makefile.bcc +++ b/utils/execmon/makefile.bcc @@ -192,7 +192,7 @@ clean: !if "$(USE_XRC)" == "1" $(OBJS)\execmon.exe: $(EXECMON_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0x32.obj $(EXECMON_OBJECTS),$@,, $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, + c0x32.obj $(EXECMON_OBJECTS),$@,, $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, | !endif diff --git a/utils/execmon/makefile.gcc b/utils/execmon/makefile.gcc index 6a478494f8..26a7f1325c 100644 --- a/utils/execmon/makefile.gcc +++ b/utils/execmon/makefile.gcc @@ -179,7 +179,7 @@ clean: ifeq ($(USE_XRC),1) $(OBJS)\execmon.exe: $(EXECMON_OBJECTS) - $(CXX) -o $@ $(EXECMON_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(EXECMON_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\execmon_execmon.o: ./execmon.cpp diff --git a/utils/helpview/src/makefile.bcc b/utils/helpview/src/makefile.bcc index 5ae7fc971e..d33ee6cebe 100644 --- a/utils/helpview/src/makefile.bcc +++ b/utils/helpview/src/makefile.bcc @@ -236,7 +236,7 @@ clean: $(OBJS)\helpview.exe: $(HELPVIEW_OBJECTS) $(OBJS)\helpview_helpview.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HELPVIEW_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\helpview_helpview.res + c0w32.obj $(HELPVIEW_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\helpview_helpview.res | data: diff --git a/utils/helpview/src/makefile.gcc b/utils/helpview/src/makefile.gcc index 22bafa48f7..74e88de902 100644 --- a/utils/helpview/src/makefile.gcc +++ b/utils/helpview/src/makefile.gcc @@ -226,7 +226,7 @@ clean: -if exist $(OBJS)\helpview.exe del $(OBJS)\helpview.exe $(OBJS)\helpview.exe: $(HELPVIEW_OBJECTS) $(OBJS)\helpview_helpview_rc.o - $(CXX) -o $@ $(HELPVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HELPVIEW_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme data: if not exist $(OBJS) mkdir $(OBJS) diff --git a/utils/hhp2cached/makefile.bcc b/utils/hhp2cached/makefile.bcc index 48fddafef1..016d3a8808 100644 --- a/utils/hhp2cached/makefile.bcc +++ b/utils/hhp2cached/makefile.bcc @@ -232,7 +232,7 @@ clean: $(OBJS)\hhp2cached.exe: $(HHP2CACHED_OBJECTS) $(OBJS)\hhp2cached_hhp2cached.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(HHP2CACHED_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\hhp2cached_hhp2cached.res + c0w32.obj $(HHP2CACHED_OBJECTS),$@,, $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\hhp2cached_hhp2cached.res | $(OBJS)\hhp2cached_hhp2cached.obj: .\hhp2cached.cpp diff --git a/utils/hhp2cached/makefile.gcc b/utils/hhp2cached/makefile.gcc index 627964f550..2b4c392b34 100644 --- a/utils/hhp2cached/makefile.gcc +++ b/utils/hhp2cached/makefile.gcc @@ -222,7 +222,7 @@ clean: -if exist $(OBJS)\hhp2cached.exe del $(OBJS)\hhp2cached.exe $(OBJS)\hhp2cached.exe: $(HHP2CACHED_OBJECTS) $(OBJS)\hhp2cached_hhp2cached_rc.o - $(CXX) -o $@ $(HHP2CACHED_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(HHP2CACHED_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\hhp2cached_hhp2cached.o: ./hhp2cached.cpp $(CXX) -c -o $@ $(HHP2CACHED_CXXFLAGS) $(CPPDEPS) $< diff --git a/utils/ifacecheck/src/makefile.bcc b/utils/ifacecheck/src/makefile.bcc index a68e7d71e6..06689c3ff8 100644 --- a/utils/ifacecheck/src/makefile.bcc +++ b/utils/ifacecheck/src/makefile.bcc @@ -193,7 +193,7 @@ clean: $(OBJS)\ifacecheck.exe: $(IFACECHECK_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0x32.obj $(IFACECHECK_OBJECTS),$@,, $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, + c0x32.obj $(IFACECHECK_OBJECTS),$@,, $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, | $(OBJS)\ifacecheck_ifacecheck.obj: .\ifacecheck.cpp diff --git a/utils/ifacecheck/src/makefile.gcc b/utils/ifacecheck/src/makefile.gcc index 20e01304a6..60cdcb016c 100644 --- a/utils/ifacecheck/src/makefile.gcc +++ b/utils/ifacecheck/src/makefile.gcc @@ -180,7 +180,7 @@ clean: -if exist $(OBJS)\ifacecheck.exe del $(OBJS)\ifacecheck.exe $(OBJS)\ifacecheck.exe: $(IFACECHECK_OBJECTS) - $(CXX) -o $@ $(IFACECHECK_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(IFACECHECK_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme $(OBJS)\ifacecheck_ifacecheck.o: ./ifacecheck.cpp $(CXX) -c -o $@ $(IFACECHECK_CXXFLAGS) $(CPPDEPS) $< diff --git a/utils/screenshotgen/src/makefile.bcc b/utils/screenshotgen/src/makefile.bcc index d8e7165904..86bf5c8436 100644 --- a/utils/screenshotgen/src/makefile.bcc +++ b/utils/screenshotgen/src/makefile.bcc @@ -253,7 +253,7 @@ clean: $(OBJS)\screenshotgen.exe: $(SCREENSHOTGEN_OBJECTS) $(OBJS)\screenshotgen_screenshotgen.res ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0w32.obj $(SCREENSHOTGEN_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\screenshotgen_screenshotgen.res + c0w32.obj $(SCREENSHOTGEN_OBJECTS),$@,, $(__WXLIB_AUI_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\screenshotgen_screenshotgen.res | bitmaps: diff --git a/utils/screenshotgen/src/makefile.gcc b/utils/screenshotgen/src/makefile.gcc index bd76ffc614..3c759d1139 100644 --- a/utils/screenshotgen/src/makefile.gcc +++ b/utils/screenshotgen/src/makefile.gcc @@ -242,7 +242,7 @@ clean: -if exist $(OBJS)\screenshotgen.exe del $(OBJS)\screenshotgen.exe $(OBJS)\screenshotgen.exe: $(SCREENSHOTGEN_OBJECTS) $(OBJS)\screenshotgen_screenshotgen_rc.o - $(CXX) -o $@ $(SCREENSHOTGEN_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(SCREENSHOTGEN_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_AUI_p) $(__WXLIB_RICHTEXT_p) $(__WXLIB_HTML_p) $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme bitmaps: if not exist $(OBJS)\bitmaps mkdir $(OBJS)\bitmaps diff --git a/utils/wxrc/makefile.bcc b/utils/wxrc/makefile.bcc index 54e69ddced..2a709cd248 100644 --- a/utils/wxrc/makefile.bcc +++ b/utils/wxrc/makefile.bcc @@ -196,7 +196,7 @@ clean: !if "$(USE_XRC)" == "1" $(OBJS)\wxrc.exe: $(WXRC_OBJECTS) ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| - c0x32.obj $(WXRC_OBJECTS),$@,, $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, + c0x32.obj $(WXRC_OBJECTS),$@,, $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, | !endif diff --git a/utils/wxrc/makefile.gcc b/utils/wxrc/makefile.gcc index e16e5df9ab..4ee929cc02 100644 --- a/utils/wxrc/makefile.gcc +++ b/utils/wxrc/makefile.gcc @@ -183,7 +183,7 @@ clean: ifeq ($(USE_XRC),1) $(OBJS)\wxrc.exe: $(WXRC_OBJECTS) - $(CXX) -o $@ $(WXRC_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc + $(CXX) -o $@ $(WXRC_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_XML_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme endif $(OBJS)\wxrc_wxrc.o: ./wxrc.cpp From d9306f127a9968a86a5fa3ca720fe05b48bccf40 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Sun, 21 Jan 2018 15:45:01 +0100 Subject: [PATCH 180/916] Remove unused definitions in msw/checkbox.cpp --- src/msw/checkbox.cpp | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/src/msw/checkbox.cpp b/src/msw/checkbox.cpp index 8fa7609571..fa8ca811ce 100644 --- a/src/msw/checkbox.cpp +++ b/src/msw/checkbox.cpp @@ -39,40 +39,6 @@ #include "wx/msw/private/button.h" #include "wx/msw/missing.h" -// ---------------------------------------------------------------------------- -// constants -// ---------------------------------------------------------------------------- - -#ifndef BP_CHECKBOX - #define BP_CHECKBOX 3 -#endif - -// these values are defined in tmschema.h (except the first one) -enum -{ - CBS_INVALID, - CBS_UNCHECKEDNORMAL, - CBS_UNCHECKEDHOT, - CBS_UNCHECKEDPRESSED, - CBS_UNCHECKEDDISABLED, - CBS_CHECKEDNORMAL, - CBS_CHECKEDHOT, - CBS_CHECKEDPRESSED, - CBS_CHECKEDDISABLED, - CBS_MIXEDNORMAL, - CBS_MIXEDHOT, - CBS_MIXEDPRESSED, - CBS_MIXEDDISABLED -}; - -// these are our own -enum -{ - CBS_HOT_OFFSET = 1, - CBS_PRESSED_OFFSET = 2, - CBS_DISABLED_OFFSET = 3 -}; - // ============================================================================ // implementation // ============================================================================ From 2d064ea3b9cfc48cf0f4b4584a7c3052a7b19951 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Sun, 21 Jan 2018 17:04:09 +0100 Subject: [PATCH 181/916] Move UXTheme symbol definitions for Vista+ to msw/uxtheme.h Remove various definitions and symbol declarations from numerous files using msw/uxtheme.h to a single file. When possible vssym32.h is included from the Windows SDK. For older SDKs tmschema.h is included and missing symbols are defined in msw/uxtheme.h. --- include/wx/msw/uxtheme.h | 139 +++++++++++++++++++++++++++++++++++ src/aui/barartmsw.cpp | 31 -------- src/aui/tabartmsw.cpp | 36 +-------- src/generic/richtooltipg.cpp | 6 -- src/msw/anybutton.cpp | 13 ---- src/msw/bmpbuttn.cpp | 15 ---- src/msw/combo.cpp | 71 ------------------ src/msw/menuitem.cpp | 47 ------------ src/msw/renderer.cpp | 87 ---------------------- src/msw/statbox.cpp | 7 -- src/msw/window.cpp | 8 -- 11 files changed, 140 insertions(+), 320 deletions(-) diff --git a/include/wx/msw/uxtheme.h b/include/wx/msw/uxtheme.h index b081ed2fc5..876744975a 100644 --- a/include/wx/msw/uxtheme.h +++ b/include/wx/msw/uxtheme.h @@ -16,6 +16,145 @@ #include "wx/msw/private.h" // we use GetHwndOf() #include +#if defined(DTPB_WINDOWDC) +// DTPB_WINDOWDC has been added for Vista so it's save to assume that an SDK +// including it has vssym32.h available +#define HAVE_VSSYM32 +#endif + +#if defined(HAVE_VSSYM32) +#include +#else +#include +#endif + +// ---------------------------------------------------------------------------- +// Definitions for legacy Windows SDKs +// ---------------------------------------------------------------------------- +// Some defintions introduced with Windows Vista might be missing in older SDKs +// Missing defintions are added here for compatiblity + +#ifndef VSCLASS_LISTVIEW +#define LISS_NORMAL 1 +#define LISS_HOT 2 +#define LISS_SELECTED 3 +#define LISS_DISABLED 4 +#define LISS_SELECTEDNOTFOCUS 5 +#define LISS_HOTSELECTED 6 +#endif + +#ifndef DTT_TEXTCOLOR +#define DTT_TEXTCOLOR (1UL << 0) // crText has been specified +#define DTT_STATEID (1UL << 8) // IStateId has been specified +#endif + +#ifndef DSS_HIDEPREFIX +#define DSS_HIDEPREFIX 0x0200 +#define DSS_PREFIXONLY 0x0400 +#endif + +#ifndef TMT_FONT +#define TMT_FONT 210 +#endif + +#ifndef HAVE_VSSYM32 +enum EXPANDOBUTTONSTATES { + TDLGEBS_NORMAL = 1, + TDLGEBS_HOVER = 2, + TDLGEBS_PRESSED = 3, + TDLGEBS_EXPANDEDNORMAL = 4, + TDLGEBS_EXPANDEDHOVER = 5, + TDLGEBS_EXPANDEDPRESSED = 6, + TDLGEBS_NORMALDISABLED = 7, + TDLGEBS_EXPANDEDDISABLED = 8, +}; + +enum TASKDIALOGPARTS { + TDLG_PRIMARYPANEL = 1, + TDLG_MAININSTRUCTIONPANE = 2, + TDLG_MAINICON = 3, + TDLG_CONTENTPANE = 4, + TDLG_CONTENTICON = 5, + TDLG_EXPANDEDCONTENT = 6, + TDLG_COMMANDLINKPANE = 7, + TDLG_SECONDARYPANEL = 8, + TDLG_CONTROLPANE = 9, + TDLG_BUTTONSECTION = 10, + TDLG_BUTTONWRAPPER = 11, + TDLG_EXPANDOTEXT = 12, + TDLG_EXPANDOBUTTON = 13, + TDLG_VERIFICATIONTEXT = 14, + TDLG_FOOTNOTEPANE = 15, + TDLG_FOOTNOTEAREA = 16, + TDLG_FOOTNOTESEPARATOR = 17, + TDLG_EXPANDEDFOOTERAREA = 18, + TDLG_PROGRESSBAR = 19, + TDLG_IMAGEALIGNMENT = 20, + TDLG_RADIOBUTTONPANE = 21, +}; + +#define CP_BACKGROUND 2 +#define CP_TRANSPARENTBACKGROUND 3 +#define CP_BORDER 4 +#define CP_READONLY 5 +#define CP_DROPDOWNBUTTONRIGHT 6 +#define CP_DROPDOWNBUTTONLEFT 7 +#define CP_CUEBANNER 8 + +#define RP_BACKGROUND 6 +#define RP_SPLITTER 7 +#define RP_SPLITTERVERT 8 + +enum BORDERSTATES { + CBB_NORMAL = 1, + CBB_HOT = 2, + CBB_FOCUSED = 3, + CBB_DISABLED = 4, +}; + +enum MENUPARTS +{ + MENU_MENUITEM_TMSCHEMA = 1, + MENU_SEPARATOR_TMSCHEMA = 6, + MENU_POPUPBACKGROUND = 9, + MENU_POPUPBORDERS = 10, + MENU_POPUPCHECK = 11, + MENU_POPUPCHECKBACKGROUND = 12, + MENU_POPUPGUTTER = 13, + MENU_POPUPITEM = 14, + MENU_POPUPSEPARATOR = 15, + MENU_POPUPSUBMENU = 16, +}; + +enum POPUPITEMSTATES +{ + MPI_NORMAL = 1, + MPI_HOT = 2, + MPI_DISABLED = 3, + MPI_DISABLEDHOT = 4, +}; + +enum POPUPCHECKBACKGROUNDSTATES +{ + MCB_DISABLED = 1, + MCB_NORMAL = 2, + MCB_BITMAP = 3, +}; + +enum POPUPCHECKSTATES +{ + MC_CHECKMARKNORMAL = 1, + MC_CHECKMARKDISABLED = 2, + MC_BULLETNORMAL = 3, + MC_BULLETDISABLED = 4, +}; + +#endif + +// ---------------------------------------------------------------------------- +// End definitions for legacy Windows SDKs +// ---------------------------------------------------------------------------- + // Amazingly, GetThemeFont() and GetThemeSysFont() functions use LOGFONTA under // XP but LOGFONTW (even in non-Unicode build) under later versions of Windows. // If we declare them as taking LOGFONT below, the code would be able to diff --git a/src/aui/barartmsw.cpp b/src/aui/barartmsw.cpp index b01f5dcdeb..87eb536ce7 100644 --- a/src/aui/barartmsw.cpp +++ b/src/aui/barartmsw.cpp @@ -27,37 +27,6 @@ #if wxUSE_AUI -#define RP_GRIPPER 1 -#define RP_GRIPPERVERT 2 -#define RP_BAND 3 -#define RP_CHEVRON 4 -#define RP_CHEVRONVERT 5 -#define RP_BACKGROUND 6 -#define RP_SPLITTER 7 -#define RP_SPLITTERVERT 8 - -#define CHEVS_NORMAL 1 -#define CHEVS_HOT 2 -#define CHEVS_PRESSED 3 - -#define TP_BUTTON 1 -#define TP_DROPDOWNBUTTON 2 -#define TP_SPLITBUTTON 3 -#define TP_SPLITBUTTONDROPDOWN 4 -#define TP_SEPARATOR 5 -#define TP_SEPARATORVERT 6 -#define TP_DROPDOWNBUTTONGLYPH 7 - -#define TS_NORMAL 1 -#define TS_HOT 2 -#define TS_PRESSED 3 -#define TS_DISABLED 4 -#define TS_CHECKED 5 -#define TS_HOTCHECKED 6 -#define TS_NEARHOT 7 -#define TS_OTHERSIDEHOT 8 - - wxAuiMSWToolBarArt::wxAuiMSWToolBarArt() { if ( wxUxThemeIsActive() ) diff --git a/src/aui/tabartmsw.cpp b/src/aui/tabartmsw.cpp index 477fd1341a..9276070124 100644 --- a/src/aui/tabartmsw.cpp +++ b/src/aui/tabartmsw.cpp @@ -25,40 +25,6 @@ #if wxUSE_AUI -#ifndef CP_DROPDOWNBUTTON - - #define TABP_TABITEM 1 - #define TABP_TABITEMLEFTEDGE 2 - #define TABP_TABITEMRIGHTEDGE 3 - #define TABP_TABITEMBOTHEDGE 4 - #define TABP_TOPTABITEM 5 - #define TABP_TOPTABITEMLEFTEDGE 6 - #define TABP_TOPTABITEMRIGHTEDGE 7 - #define TABP_TOPTABITEMBOTHEDGE 8 - #define TABP_PANE 9 - #define TABP_BODY 10 - #define TABP_AEROWIZARDBODY 11 - - #define TIS_NORMAL 1 - #define TIS_HOT 2 - #define TIS_SELECTED 3 - #define TIS_DISABLED 4 - #define TIS_FOCUSED 5 - - #define TTP_CLOSE 5 - - #define TTCS_NORMAL 1 - #define TTCS_HOT 2 - #define TTCS_PRESSED 3 - - #define SPNP_UPHORZ 3 - #define SPNP_DOWNHORZ 4 - - #define CP_DROPDOWNBUTTON1 1 - - #define WP_CLOSEBUTTON 18 -#endif - wxAuiMSWTabArt::wxAuiMSWTabArt() { m_closeBtnSize = wxDefaultSize; @@ -410,7 +376,7 @@ void wxAuiMSWTabArt::DrawButton(wxDC& dc, break; case wxAUI_BUTTON_WINDOWLIST: themeId = L"Combobox"; - part = CP_DROPDOWNBUTTON1; + part = CP_DROPDOWNBUTTON; break; } diff --git a/src/generic/richtooltipg.cpp b/src/generic/richtooltipg.cpp index 49b393a14d..5ebc1603ef 100644 --- a/src/generic/richtooltipg.cpp +++ b/src/generic/richtooltipg.cpp @@ -48,12 +48,6 @@ #ifdef __WXMSW__ #include "wx/msw/uxtheme.h" - - static const int TTP_BALLOONTITLE = 4; - - static const int TMT_TEXTCOLOR = 3803; - static const int TMT_GRADIENTCOLOR1 = 3810; - static const int TMT_GRADIENTCOLOR2 = 3811; #endif // ---------------------------------------------------------------------------- diff --git a/src/msw/anybutton.cpp b/src/msw/anybutton.cpp index f8ef711d76..d896566b6f 100644 --- a/src/msw/anybutton.cpp +++ b/src/msw/anybutton.cpp @@ -55,19 +55,6 @@ using namespace wxMSWImpl; #if wxUSE_UXTHEME - // no need to include tmschema.h - #ifndef BP_PUSHBUTTON - #define BP_PUSHBUTTON 1 - - #define PBS_NORMAL 1 - #define PBS_HOT 2 - #define PBS_PRESSED 3 - #define PBS_DISABLED 4 - #define PBS_DEFAULTED 5 - - #define TMT_CONTENTMARGINS 3602 - #endif - // provide the necessary declarations ourselves if they're missing from // headers #ifndef BCM_SETIMAGELIST diff --git a/src/msw/bmpbuttn.cpp b/src/msw/bmpbuttn.cpp index cf16308670..3f23f6b1d8 100644 --- a/src/msw/bmpbuttn.cpp +++ b/src/msw/bmpbuttn.cpp @@ -30,21 +30,6 @@ #include "wx/msw/uxtheme.h" -#if wxUSE_UXTHEME - // no need to include tmschema.h - #ifndef BP_PUSHBUTTON - #define BP_PUSHBUTTON 1 - - #define PBS_NORMAL 1 - #define PBS_HOT 2 - #define PBS_PRESSED 3 - #define PBS_DISABLED 4 - #define PBS_DEFAULTED 5 - - #define TMT_CONTENTMARGINS 3602 - #endif -#endif // wxUSE_UXTHEME - #ifndef ODS_NOFOCUSRECT #define ODS_NOFOCUSRECT 0x0200 #endif diff --git a/src/msw/combo.cpp b/src/msw/combo.cpp index f8a7098da6..2923f575c7 100644 --- a/src/msw/combo.cpp +++ b/src/msw/combo.cpp @@ -42,77 +42,6 @@ #endif #include "wx/msw/dc.h" -// Change to #if 1 to include tmschema.h for easier testing of theme -// parameters. -#if 0 - #include - #include -#else - //---------------------------------- - #define EP_EDITTEXT 1 - #define ETS_NORMAL 1 - #define ETS_HOT 2 - #define ETS_SELECTED 3 - #define ETS_DISABLED 4 - #define ETS_FOCUSED 5 - #define ETS_READONLY 6 - #define ETS_ASSIST 7 - #define TMT_FILLCOLOR 3802 - #define TMT_TEXTCOLOR 3803 - #define TMT_BORDERCOLOR 3801 - #define TMT_EDGEFILLCOLOR 3808 - #define TMT_BGTYPE 4001 - - #define BT_IMAGEFILE 0 - #define BT_BORDERFILL 1 - - #define CP_DROPDOWNBUTTON 1 - #define CP_BACKGROUND 2 // This and above are Vista and later only - #define CP_TRANSPARENTBACKGROUND 3 - #define CP_BORDER 4 - #define CP_READONLY 5 - #define CP_DROPDOWNBUTTONRIGHT 6 - #define CP_DROPDOWNBUTTONLEFT 7 - #define CP_CUEBANNER 8 - - #define CBXS_NORMAL 1 - #define CBXS_HOT 2 - #define CBXS_PRESSED 3 - #define CBXS_DISABLED 4 - - #define CBXSR_NORMAL 1 - #define CBXSR_HOT 2 - #define CBXSR_PRESSED 3 - #define CBXSR_DISABLED 4 - - #define CBXSL_NORMAL 1 - #define CBXSL_HOT 2 - #define CBXSL_PRESSED 3 - #define CBXSL_DISABLED 4 - - #define CBTBS_NORMAL 1 - #define CBTBS_HOT 2 - #define CBTBS_DISABLED 3 - #define CBTBS_FOCUSED 4 - - #define CBB_NORMAL 1 - #define CBB_HOT 2 - #define CBB_FOCUSED 3 - #define CBB_DISABLED 4 - - #define CBRO_NORMAL 1 - #define CBRO_HOT 2 - #define CBRO_PRESSED 3 - #define CBRO_DISABLED 4 - - #define CBCB_NORMAL 1 - #define CBCB_HOT 2 - #define CBCB_PRESSED 3 - #define CBCB_DISABLED 4 - -#endif - - #define NATIVE_TEXT_INDENT_XP 4 #define NATIVE_TEXT_INDENT_CLASSIC 2 diff --git a/src/msw/menuitem.cpp b/src/msw/menuitem.cpp index 8fbbc9f0c2..f39af0763f 100644 --- a/src/msw/menuitem.cpp +++ b/src/msw/menuitem.cpp @@ -143,53 +143,6 @@ inline bool IsGreaterThanStdSize(const wxBitmap& bmp) #include "wx/fontutil.h" #include "wx/msw/private/metrics.h" -#if wxUSE_UXTHEME - -enum MENUPARTS -{ - MENU_MENUITEM_TMSCHEMA = 1, - MENU_SEPARATOR_TMSCHEMA = 6, - MENU_POPUPBACKGROUND = 9, - MENU_POPUPBORDERS = 10, - MENU_POPUPCHECK = 11, - MENU_POPUPCHECKBACKGROUND = 12, - MENU_POPUPGUTTER = 13, - MENU_POPUPITEM = 14, - MENU_POPUPSEPARATOR = 15, - MENU_POPUPSUBMENU = 16, -}; - - -enum POPUPITEMSTATES -{ - MPI_NORMAL = 1, - MPI_HOT = 2, - MPI_DISABLED = 3, - MPI_DISABLEDHOT = 4, -}; - -enum POPUPCHECKBACKGROUNDSTATES -{ - MCB_DISABLED = 1, - MCB_NORMAL = 2, - MCB_BITMAP = 3, -}; - -enum POPUPCHECKSTATES -{ - MC_CHECKMARKNORMAL = 1, - MC_CHECKMARKDISABLED = 2, - MC_BULLETNORMAL = 3, - MC_BULLETDISABLED = 4, -}; - -const int TMT_MENUFONT = 803; -const int TMT_BORDERSIZE = 2403; -const int TMT_CONTENTMARGINS = 3602; -const int TMT_SIZINGMARGINS = 3601; - -#endif // wxUSE_UXTHEME - #endif // wxUSE_OWNER_DRAWN // ---------------------------------------------------------------------------- diff --git a/src/msw/renderer.cpp b/src/msw/renderer.cpp index 6a3a650997..fff5432e6d 100644 --- a/src/msw/renderer.cpp +++ b/src/msw/renderer.cpp @@ -40,93 +40,6 @@ #include "wx/msw/uxtheme.h" #include "wx/dynlib.h" -// tmschema.h is in Win32 Platform SDK and might not be available with earlier -// compilers -#ifndef CP_DROPDOWNBUTTON - #define BP_PUSHBUTTON 1 - #define BP_RADIOBUTTON 2 - #define BP_CHECKBOX 3 - #define RBS_UNCHECKEDNORMAL 1 - #define RBS_CHECKEDNORMAL (RBS_UNCHECKEDNORMAL + 4) - #define RBS_MIXEDNORMAL (RBS_CHECKEDNORMAL + 4) - #define CBS_UNCHECKEDNORMAL 1 - #define CBS_CHECKEDNORMAL (CBS_UNCHECKEDNORMAL + 4) - #define CBS_MIXEDNORMAL (CBS_CHECKEDNORMAL + 4) - - #define PBS_NORMAL 1 - #define PBS_HOT 2 - #define PBS_PRESSED 3 - #define PBS_DISABLED 4 - #define PBS_DEFAULTED 5 - - #define CP_DROPDOWNBUTTON 1 - - #define CBXS_NORMAL 1 - #define CBXS_HOT 2 - #define CBXS_PRESSED 3 - #define CBXS_DISABLED 4 - - #define TVP_GLYPH 2 - - #define GLPS_CLOSED 1 - #define GLPS_OPENED 2 - - #define HP_HEADERITEM 1 - - #define HIS_NORMAL 1 - #define HIS_HOT 2 - #define HIS_PRESSED 3 - - #define TMT_HEIGHT 2417 - - #define HP_HEADERSORTARROW 4 - #define HSAS_SORTEDUP 1 - #define HSAS_SORTEDDOWN 2 - - #define EP_EDITTEXT 1 - #define ETS_NORMAL 1 - #define ETS_HOT 2 - #define ETS_SELECTED 3 - #define ETS_DISABLED 4 - #define ETS_FOCUSED 5 - #define ETS_READONLY 6 - #define ETS_ASSIST 7 - #define TMT_FILLCOLOR 3802 - #define TMT_TEXTCOLOR 3803 - #define TMT_BORDERCOLOR 3801 - #define TMT_EDGEFILLCOLOR 3808 - - #define WP_MINBUTTON 15 - #define WP_MAXBUTTON 17 - #define WP_CLOSEBUTTON 18 - #define WP_RESTOREBUTTON 21 - #define WP_HELPBUTTON 23 - - #define PP_BAR 1 - #define PP_CHUNK 3 - - #define LISS_NORMAL 1 - #define LISS_HOT 2 - #define LISS_SELECTED 3 - #define LISS_DISABLED 4 - #define LISS_SELECTEDNOTFOCUS 5 - #define LISS_HOTSELECTED 6 - - #define LVP_LISTITEM 1 - - #define DTT_TEXTCOLOR (1UL << 0) // crText has been specified - #define DTT_STATEID (1UL << 8) // IStateId has been specified - - #define TDLG_EXPANDOBUTTON 13 - - #define TDLGEBS_NORMAL 1 - #define TDLGEBS_HOVER 2 - #define TDLGEBS_PRESSED 3 - #define TDLGEBS_EXPANDEDNORMAL 4 - #define TDLGEBS_EXPANDEDHOVER 5 - #define TDLGEBS_EXPANDEDPRESSED 6 -#endif - // These Vista+ only types used by DrawThemeTextEx may not be available in older SDK headers typedef int(__stdcall *WXDTT_CALLBACK_PROC)(HDC hdc, const wchar_t * pszText, int cchText, RECT * prc, unsigned int dwFlags, WXLPARAM lParam); diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index d028b60f30..1dc7228864 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -47,13 +47,6 @@ #include "wx/msw/dc.h" #include "wx/msw/private/winstyle.h" -// the values coincide with those in tmschema.h -#define BP_GROUPBOX 4 - -#define GBS_NORMAL 1 - -#define TMT_FONT 210 - // ---------------------------------------------------------------------------- // wxWin macros // ---------------------------------------------------------------------------- diff --git a/src/msw/window.cpp b/src/msw/window.cpp index a63333f0f8..ead90f0321 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -113,14 +113,6 @@ #if wxUSE_UXTHEME #include "wx/msw/uxtheme.h" - #define EP_EDITTEXT 1 - #define ETS_NORMAL 1 - #define ETS_HOT 2 - #define ETS_SELECTED 3 - #define ETS_DISABLED 4 - #define ETS_FOCUSED 5 - #define ETS_READONLY 6 - #define ETS_ASSIST 7 #endif #if wxUSE_DYNLIB_CLASS From 95595d660b771c96ca5f56ebe0d256294abd7fd4 Mon Sep 17 00:00:00 2001 From: Jouk Date: Mon, 22 Jan 2018 10:44:27 +0100 Subject: [PATCH 182/916] Add #undef HAVE_XLOCALE_H --- setup.h_vms | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/setup.h_vms b/setup.h_vms index 5e4e41afc7..363134616a 100644 --- a/setup.h_vms +++ b/setup.h_vms @@ -3,7 +3,7 @@ * Template for the set.h file for VMS * * Created from setup.h_in * * Author : J.Jansen (joukj@hrem.nano.tudelft.nl) * - * Date : 12 December 2017 * + * Date : 22 January 2018 * * * *****************************************************************************/ @@ -1387,6 +1387,9 @@ typedef pid_t GPid; /* Define if setpriority() is available. */ #undef HAVE_SETPRIORITY +/* Define if xlocale.h header file exists. */ +#undef HAVE_XLOCALE_H + /* Define if locale_t is available */ #undef HAVE_LOCALE_T From 9981a0216f841d02d306afaa01990c5ae749cf51 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 19:54:36 +0100 Subject: [PATCH 183/916] Add "windowlabel" element of wxStaticBoxSizer to the schema This was forgotten in the commit updating the sizer XRC handler. --- misc/schema/xrc_schema.rnc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/misc/schema/xrc_schema.rnc b/misc/schema/xrc_schema.rnc index b298088e45..ba9a688340 100644 --- a/misc/schema/xrc_schema.rnc +++ b/misc/schema/xrc_schema.rnc @@ -1864,6 +1864,7 @@ wxStaticBoxSizer_horz = stdObjectNodeAttributes & stdSizerProperties & [xrc:p="important"] element label {_, t_text }* & + element windowlabel {windowNode}* & [xrc:p="o"] element orient {_, "wxHORIZONTAL" }* & (wxBoxSizer_horz_item | objectRef)* } @@ -1874,6 +1875,7 @@ wxStaticBoxSizer_vert = stdObjectNodeAttributes & stdSizerProperties & [xrc:p="important"] element label {_, t_text }* & + element windowlabel {windowNode}* & element orient {_, "wxVERTICAL" } & (wxBoxSizer_vert_item | objectRef)* } From 9364690c0e2b589c5ea30793fe19884563c348bb Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 23 Jan 2018 17:53:18 +0100 Subject: [PATCH 184/916] Correct check for inclusion to fix MinGW build MinGW compiler predefines WIN32, meaning that wx/msw/winundef.h was always included from wx/defs.h, even when it was completely unnecessary. This was just inefficient, but harmless, until the changes of 042d922e88da988875d043b837dc548eb4b930b0 which broke MinGW compilation as wxUSE_UNICODE_WINDOWS_H was incorrectly defined during the very first inclusion of wx/msw/winundef.h, before _UNICODE could be defined correctly by windows.h. Fix this by checking whether windows.h was really already included. --- include/wx/defs.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/wx/defs.h b/include/wx/defs.h index b1d11474a0..98bb7244bf 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -26,10 +26,10 @@ */ #ifdef __cplusplus /* - Test for WIN32, defined by windows.h itself, not our own __WINDOWS__, - which is not defined yet. + Test for _WINDOWS_, used as header guard by windows.h itself, not our + own __WINDOWS__, which is not defined yet. */ -# ifdef WIN32 +# ifdef _WINDOWS_ # include "wx/msw/winundef.h" # endif /* WIN32 */ #endif /* __cplusplus */ From 76617ddb1e2236202a922c43caf1b22f1477b806 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 20 Jan 2018 00:27:02 +0100 Subject: [PATCH 185/916] CMake: Add missing OpenGL files in GTK build --- build/cmake/files.cmake | 10 ++++++++++ build/cmake/lib/gl/CMakeLists.txt | 2 ++ build/files | 8 ++++++++ 3 files changed, 20 insertions(+) diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index 1253477e0b..f48332ddc7 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -3099,6 +3099,16 @@ set(OPENGL_MSW_HDR wx/msw/glcanvas.h ) +set(OPENGL_GTK_SRC + src/gtk/glcanvas.cpp + src/unix/glx11.cpp +) + +set(OPENGL_GTK_HDR + wx/gtk/glcanvas.h + wx/unix/glx11.h +) + set(OPENGL_OSX_SHARED_SRC src/osx/cocoa/glcanvas.mm src/osx/glcanvas_osx.cpp diff --git a/build/cmake/lib/gl/CMakeLists.txt b/build/cmake/lib/gl/CMakeLists.txt index 4b656a8217..18ac4ac855 100644 --- a/build/cmake/lib/gl/CMakeLists.txt +++ b/build/cmake/lib/gl/CMakeLists.txt @@ -13,6 +13,8 @@ wx_append_sources(GL_FILES OPENGL_CMN) if(WIN32) wx_append_sources(GL_FILES OPENGL_MSW) +elseif(WXGTK) + wx_append_sources(GL_FILES OPENGL_GTK) elseif(APPLE) wx_append_sources(GL_FILES OPENGL_OSX_SHARED) endif() diff --git a/build/files b/build/files index e38e8fd584..91dc2c0db9 100644 --- a/build/files +++ b/build/files @@ -3005,6 +3005,14 @@ OPENGL_CMN_HDR = OPENGL_MSW_SRC = src/msw/glcanvas.cpp +OPENGL_GTK_HDR = + wx/gtk/glcanvas.h + wx/unix/glx11.h + +OPENGL_GTK_SRC = + src/gtk/glcanvas.cpp + src/unix/glx11.cpp + OPENGL_MSW_HDR = wx/msw/glcanvas.h From fb8403a06400bce6aeb85978a3d473dadd47aaca Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 20 Jan 2018 00:55:43 +0100 Subject: [PATCH 186/916] CMake: Only link executables to enabled libraries --- build/cmake/functions.cmake | 2 +- build/cmake/tests/base/CMakeLists.txt | 3 +++ build/cmake/tests/drawing/CMakeLists.txt | 3 +++ build/cmake/tests/gui/CMakeLists.txt | 24 +++++++++++++++++++++++- build/cmake/utils/CMakeLists.txt | 5 ++++- 5 files changed, 34 insertions(+), 3 deletions(-) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index 75e0f1f2ba..c92abdd9e4 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -701,7 +701,7 @@ function(wx_add_test name) endif() add_executable(${name} ${test_src}) target_include_directories(${name} PRIVATE "${wxSOURCE_DIR}/tests" "${wxSOURCE_DIR}/3rdparty/catch/include") - wx_exe_link_libraries(${name} base net) + wx_exe_link_libraries(${name} base) if(wxBUILD_SHARED) target_compile_definitions(${name} PRIVATE WXUSINGDLL) endif() diff --git a/build/cmake/tests/base/CMakeLists.txt b/build/cmake/tests/base/CMakeLists.txt index 2dc9f50c97..25f614e885 100644 --- a/build/cmake/tests/base/CMakeLists.txt +++ b/build/cmake/tests/base/CMakeLists.txt @@ -99,6 +99,9 @@ endif() wx_add_test(test_base ${TEST_SRC}) target_compile_definitions(test_base PRIVATE wxUSE_GUI=0 wxUSE_BASE=1) +if(wxUSE_SOCKETS) + wx_exe_link_libraries(test_base net) +endif() if(wxUSE_XML) wx_exe_link_libraries(test_base xml) endif() diff --git a/build/cmake/tests/drawing/CMakeLists.txt b/build/cmake/tests/drawing/CMakeLists.txt index 599bbfa91e..f9dbc7c0cf 100644 --- a/build/cmake/tests/drawing/CMakeLists.txt +++ b/build/cmake/tests/drawing/CMakeLists.txt @@ -22,6 +22,9 @@ set(TEST_DRAWING_SRC drawing/fonttest.cpp ) wx_add_test(test_drawing ${TEST_DRAWING_SRC}) +if(wxUSE_SOCKETS) + wx_exe_link_libraries(test_drawing net) +endif() wx_exe_link_libraries(test_drawing core) wx_test_enable_precomp(test_drawing) diff --git a/build/cmake/tests/gui/CMakeLists.txt b/build/cmake/tests/gui/CMakeLists.txt index fe32199597..9394ce3710 100644 --- a/build/cmake/tests/gui/CMakeLists.txt +++ b/build/cmake/tests/gui/CMakeLists.txt @@ -107,5 +107,27 @@ set(TEST_GUI_SRC xml/xrctest.cpp ) wx_add_test(test_gui ${TEST_GUI_SRC}) -wx_exe_link_libraries(test_gui core richtext media xrc xml adv html net webview) +wx_exe_link_libraries(test_gui core) +if(wxUSE_RICHTEXT) + wx_exe_link_libraries(test_gui richtext) +endif() +if(wxUSE_MEDIACTRL) + wx_exe_link_libraries(test_gui media) +endif() +if(wxUSE_XRC) + wx_exe_link_libraries(test_gui xrc) +endif() +if(wxUSE_XML) + wx_exe_link_libraries(test_gui xml) +endif() +wx_exe_link_libraries(test_gui adv) +if(wxUSE_HTML) + wx_exe_link_libraries(test_gui html) +endif() +if(wxUSE_SOCKETS) + wx_exe_link_libraries(test_gui net) +endif() +if(wxUSE_WEBVIEW) + wx_exe_link_libraries(test_gui webview) +endif() wx_test_enable_precomp(test_gui) diff --git a/build/cmake/utils/CMakeLists.txt b/build/cmake/utils/CMakeLists.txt index bbb604e60e..bf29f72156 100644 --- a/build/cmake/utils/CMakeLists.txt +++ b/build/cmake/utils/CMakeLists.txt @@ -13,7 +13,10 @@ if(wxUSE_XRC) if(wxBUILD_SHARED) target_compile_definitions(wxrc PRIVATE WXUSINGDLL) endif() - wx_exe_link_libraries(wxrc xml base) + if(wxUSE_XML) + wx_exe_link_libraries(wxrc xml) + endif() + wx_exe_link_libraries(wxrc base) # TODO: install set_target_properties(wxrc PROPERTIES FOLDER "Utilities") endif() From dc0d93ccccab893099769c2ac6ad6ee81a284f8d Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 20 Jan 2018 15:15:57 +0100 Subject: [PATCH 187/916] CMake: Fix library order in wxMSW build uuid should be linked before oleacc, otherwise it causes multiple definition of `IID_IAccessible' (with MinGW64 gcc). To simplify even more, specify all required libraries in wxTOOLKIT_LIBRARIES, in the same order as in the makefiles. Add uxtheme library, it is required since wxUxThemeEngine wrapper has been removed. --- build/cmake/lib/base/CMakeLists.txt | 16 +--------------- build/cmake/toolkit.cmake | 14 +++++++++++++- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/build/cmake/lib/base/CMakeLists.txt b/build/cmake/lib/base/CMakeLists.txt index 1871c54bde..28377c4772 100644 --- a/build/cmake/lib/base/CMakeLists.txt +++ b/build/cmake/lib/base/CMakeLists.txt @@ -58,21 +58,7 @@ endif() if(wxUSE_THREADS AND CMAKE_THREAD_LIBS_INIT) wx_lib_link_libraries(base PRIVATE ${CMAKE_THREAD_LIBS_INIT}) endif() -if(WIN32) - wx_lib_link_libraries(base PUBLIC - kernel32 - user32 - shell32 - ole32 - oleaut32 - uuid - rpcrt4 - advapi32 - Shlwapi - version - uuid - ) -elseif(APPLE) +if(APPLE) wx_lib_link_libraries(base PRIVATE "-framework Security" diff --git a/build/cmake/toolkit.cmake b/build/cmake/toolkit.cmake index 6dfbe4e7f3..49b798451d 100644 --- a/build/cmake/toolkit.cmake +++ b/build/cmake/toolkit.cmake @@ -68,13 +68,25 @@ endif() if(WXMSW) set(wxTOOLKIT_LIBRARIES + kernel32 + user32 gdi32 comdlg32 winspool + winmm shell32 + shlwapi comctl32 + ole32 + oleaut32 + uuid rpcrt4 - Oleacc + advapi32 + version + wsock32 + wininet + oleacc + uxtheme ) elseif(WXGTK) if(WXGTK3) From 6d12732f52f1f4c3b63748493cf860174b6514a2 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 20 Jan 2018 17:26:46 +0100 Subject: [PATCH 188/916] CMake: Remove Unix-only from OnFatalException description --- build/cmake/options.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/cmake/options.cmake b/build/cmake/options.cmake index 1b0427f088..fd0dab3cbe 100644 --- a/build/cmake/options.cmake +++ b/build/cmake/options.cmake @@ -93,7 +93,7 @@ wx_option(wxUSE_APPLE_IEEE "use the Apple IEEE codec") wx_option(wxUSE_ARCHIVE_STREAMS "use wxArchive streams") wx_option(wxUSE_BASE64 "use base64 encoding/decoding functions") wx_option(wxUSE_STACKWALKER "use wxStackWalker class for getting backtraces") -wx_option(wxUSE_ON_FATAL_EXCEPTION "catch signals in wxApp::OnFatalException (Unix only)") +wx_option(wxUSE_ON_FATAL_EXCEPTION "catch signals in wxApp::OnFatalException") wx_option(wxUSE_CMDLINE_PARSER "use wxCmdLineParser class") wx_option(wxUSE_DATETIME "use wxDateTime class") wx_option(wxUSE_DEBUGREPORT "use wxDebugReport class") From 5ca19288f6396a4761f1b54f991b08e9cdec8ceb Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 20 Jan 2018 17:30:25 +0100 Subject: [PATCH 189/916] CMake: Fix building samples with MinGW64 Do not enable debugrpt and flash examples. Define UNICODE when building on Windows. This allows the sdk_exe example to build, because it includes the windows headers directly. --- build/cmake/functions.cmake | 3 +++ build/cmake/samples/CMakeLists.txt | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index c92abdd9e4..87cd46ef36 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -166,6 +166,9 @@ function(wx_set_target_properties target_name is_base) endif() if(wxUSE_UNICODE) + if(WIN32) + target_compile_definitions(${target_name} PUBLIC UNICODE) + endif() target_compile_definitions(${target_name} PUBLIC _UNICODE) endif() diff --git a/build/cmake/samples/CMakeLists.txt b/build/cmake/samples/CMakeLists.txt index f8b7ac28fa..51eae43b51 100644 --- a/build/cmake/samples/CMakeLists.txt +++ b/build/cmake/samples/CMakeLists.txt @@ -19,7 +19,9 @@ wx_add_sample(combo LIBRARIES adv DATA dropbuth.png dropbutn.png dropbutp.png) wx_add_sample(config conftest.cpp) wx_add_sample(console CONSOLE IMPORTANT) wx_add_sample(dataview IMPORTANT dataview.cpp mymodels.cpp mymodels.h LIBRARIES adv) -wx_add_sample(debugrpt LIBRARIES qa) +if(wxUSE_ON_FATAL_EXCEPTION AND (NOT WIN32 OR MSVC)) + wx_add_sample(debugrpt LIBRARIES qa) +endif() wx_add_sample(dialogs dialogs.cpp dialogs.h LIBRARIES adv DATA tips.txt) wx_add_sample(dialup nettest.cpp) wx_add_sample(display) @@ -229,7 +231,9 @@ if(WIN32) endif() wx_add_sample(dll sdk_exe.cpp my_dll.h NAME sdk_exe FOLDER dll LIBRARIES my_dll) - wx_add_sample(flash) + if(MSVC) + wx_add_sample(flash) + endif() #TODO: renable when sample is fixed #wx_add_sample(mfc mfctest.cpp mfctest.h resource.h stdafx.h RES mfctest.rc) wx_add_sample(nativdlg nativdlg.cpp nativdlg.h resource.h RES nativdlg.rc) From 9f917561082765d096b195cb19d2026633baad84 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 16:23:45 +0100 Subject: [PATCH 190/916] Remove hard TABs from CMake policies file No real changes, just use spaces for indentation as everywhere else. --- build/cmake/policies.cmake | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/build/cmake/policies.cmake b/build/cmake/policies.cmake index 9c4fd224c2..668988c7c5 100644 --- a/build/cmake/policies.cmake +++ b/build/cmake/policies.cmake @@ -8,41 +8,41 @@ ############################################################################# if(POLICY CMP0025) - # Compiler id for Apple Clang is now AppleClang - cmake_policy(SET CMP0025 NEW) + # Compiler id for Apple Clang is now AppleClang + cmake_policy(SET CMP0025 NEW) endif() if(POLICY CMP0038) - # targets may not link directly to themselves - cmake_policy(SET CMP0038 NEW) + # targets may not link directly to themselves + cmake_policy(SET CMP0038 NEW) endif() if(POLICY CMP0045) - # error on non-existent target in get_target_property - cmake_policy(SET CMP0045 NEW) + # error on non-existent target in get_target_property + cmake_policy(SET CMP0045 NEW) endif() if(POLICY CMP0046) - # error on non-existent dependency in add_dependencies - cmake_policy(SET CMP0046 NEW) + # error on non-existent dependency in add_dependencies + cmake_policy(SET CMP0046 NEW) endif() if(POLICY CMP0049) - # do not expand variables in target source entries - cmake_policy(SET CMP0049 NEW) + # do not expand variables in target source entries + cmake_policy(SET CMP0049 NEW) endif() if(POLICY CMP0053) - # simplify variable reference and escape sequence evaluation - cmake_policy(SET CMP0053 NEW) + # simplify variable reference and escape sequence evaluation + cmake_policy(SET CMP0053 NEW) endif() if(POLICY CMP0054) - # only interpret if() arguments as variables or keywords when unquoted - cmake_policy(SET CMP0054 NEW) + # only interpret if() arguments as variables or keywords when unquoted + cmake_policy(SET CMP0054 NEW) endif() if(POLICY CMP0042) - # MACOSX_RPATH is enabled by default. - cmake_policy(SET CMP0042 NEW) + # MACOSX_RPATH is enabled by default. + cmake_policy(SET CMP0042 NEW) endif() From 9567adb8cc5e478766c89f9b9c3fe810ebb14dba Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 16:24:28 +0100 Subject: [PATCH 191/916] Order policies by their numbers in CMake policies file Just make it easier to maintain this file by enabling all policies in order of their numbers. No real changes. --- build/cmake/policies.cmake | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/build/cmake/policies.cmake b/build/cmake/policies.cmake index 668988c7c5..843b593aef 100644 --- a/build/cmake/policies.cmake +++ b/build/cmake/policies.cmake @@ -7,6 +7,8 @@ # Licence: wxWindows licence ############################################################################# +# Please keep the policies in the order of their numbers. + if(POLICY CMP0025) # Compiler id for Apple Clang is now AppleClang cmake_policy(SET CMP0025 NEW) @@ -17,6 +19,11 @@ if(POLICY CMP0038) cmake_policy(SET CMP0038 NEW) endif() +if(POLICY CMP0042) + # MACOSX_RPATH is enabled by default. + cmake_policy(SET CMP0042 NEW) +endif() + if(POLICY CMP0045) # error on non-existent target in get_target_property cmake_policy(SET CMP0045 NEW) @@ -41,8 +48,3 @@ if(POLICY CMP0054) # only interpret if() arguments as variables or keywords when unquoted cmake_policy(SET CMP0054 NEW) endif() - -if(POLICY CMP0042) - # MACOSX_RPATH is enabled by default. - cmake_policy(SET CMP0042 NEW) -endif() From 746bbd08cc3e3945596b52d60d34bfb0f4c0cdb2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 16:25:28 +0100 Subject: [PATCH 192/916] Use C++11 for tests during CMake configuration if necessary Enable CMake policy CMP0067 to ensure that the tests are done using the same C++ dialect that is actually used for compiling the library. --- build/cmake/policies.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/build/cmake/policies.cmake b/build/cmake/policies.cmake index 843b593aef..46c35011a4 100644 --- a/build/cmake/policies.cmake +++ b/build/cmake/policies.cmake @@ -48,3 +48,8 @@ if(POLICY CMP0054) # only interpret if() arguments as variables or keywords when unquoted cmake_policy(SET CMP0054 NEW) endif() + +if(POLICY CMP0067) + # Honor language standard in try_compile() source-file signature. + cmake_policy(SET CMP0067 NEW) +endif() From 7d300183a22c3c4c27810a9593c2b069053462bf Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 16:27:05 +0100 Subject: [PATCH 193/916] Revert "Check for HAVE_TYPE_TRAITS in CMake build not only for MSVC" This reverts commit acdd0ef09ec4bf8518a5b0fe6640cddc5d7b662a as it shouldn't be necessary according to this comment: https://github.com/wxWidgets/wxWidgets/pull/658#issuecomment-358759875 --- build/cmake/setup.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/cmake/setup.cmake b/build/cmake/setup.cmake index 1bc1a10fd8..9e0e4d24d4 100644 --- a/build/cmake/setup.cmake +++ b/build/cmake/setup.cmake @@ -580,7 +580,7 @@ endif() check_cxx_symbol_exists(round math.h HAVE_ROUND) # Check includes -if(NOT MSVC_VERSION OR NOT MSVC_VERSION LESS 1600) +if(NOT MSVC_VERSION LESS 1600) check_include_file_cxx(tr1/type_traits HAVE_TR1_TYPE_TRAITS) check_include_file_cxx(type_traits HAVE_TYPE_TRAITS) endif() From f0d5e9541254f5e0ae81dc55fb667d101cf55a6a Mon Sep 17 00:00:00 2001 From: John Roberts Date: Wed, 24 Jan 2018 16:40:26 +0100 Subject: [PATCH 194/916] Fix crash when clearing read-only wxOwnerDrawnComboBox Check that we have an associated text entry before clearing it. Fixes a crash introduced by 72fe57ec182ba0bc9a51ad27adc883a945d39b81 without reverting it as it still seems reasonable to use Clear() here. Closes #18013. --- src/generic/odcombo.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/generic/odcombo.cpp b/src/generic/odcombo.cpp index 89ec54016b..d77833bb16 100644 --- a/src/generic/odcombo.cpp +++ b/src/generic/odcombo.cpp @@ -991,7 +991,9 @@ void wxOwnerDrawnComboBox::DoClear() GetVListBoxComboPopup()->Clear(); - wxTextEntry::Clear(); + // There is no text entry when using wxCB_READONLY style, so test for it. + if ( GetTextCtrl() ) + wxTextEntry::Clear(); } void wxOwnerDrawnComboBox::Clear() From 9b51ef82afac0982223387afa42fc081bbfb66e2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 17:43:58 +0100 Subject: [PATCH 195/916] Install wx/osx/appprogress as part of "make install" Add the file to the files list, this should have been part of 11a5b83e2c503850980d15ce369f41def60b5e7a (see #16638). Closes #18059. --- Makefile.in | 2 ++ build/bakefiles/files.bkl | 1 + build/cmake/files.cmake | 1 + build/files | 1 + 4 files changed, 5 insertions(+) diff --git a/Makefile.in b/Makefile.in index 9c8279c3ef..cbca768f71 100644 --- a/Makefile.in +++ b/Makefile.in @@ -3299,6 +3299,7 @@ COND_TOOLKIT_OSX_COCOA_GUI_HDR = \ wx/generic/listctrl.h \ wx/generic/prntdlgg.h \ wx/generic/statusbr.h \ + wx/osx/appprogress.h \ wx/osx/cocoa/chkconf.h \ wx/osx/cocoa/evtloop.h \ wx/osx/cocoa/private.h \ @@ -3395,6 +3396,7 @@ COND_TOOLKIT_OSX_IPHONE_GUI_HDR = \ wx/generic/listctrl.h \ wx/generic/prntdlgg.h \ wx/generic/statusbr.h \ + wx/osx/appprogress.h \ wx/osx/iphone/chkconf.h \ wx/osx/iphone/evtloop.h \ wx/osx/iphone/private.h \ diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl index 429136f79a..0f38e0952f 100644 --- a/build/bakefiles/files.bkl +++ b/build/bakefiles/files.bkl @@ -2417,6 +2417,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/generic/listctrl.h wx/generic/prntdlgg.h wx/generic/statusbr.h + wx/osx/appprogress.h diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index f48332ddc7..d6d9c6becb 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -2280,6 +2280,7 @@ set(OSX_SHARED_HDR wx/generic/listctrl.h wx/generic/prntdlgg.h wx/generic/statusbr.h + wx/osx/appprogress.h ) set(OSX_COCOA_SRC diff --git a/build/files b/build/files index 91dc2c0db9..e81c72ebdc 100644 --- a/build/files +++ b/build/files @@ -2174,6 +2174,7 @@ OSX_SHARED_HDR = wx/osx/accel.h wx/osx/anybutton.h wx/osx/app.h + wx/osx/appprogress.h wx/osx/bitmap.h wx/osx/bmpbuttn.h wx/osx/brush.h From 3b22d9a56bd5b3f3365fda346bb8486ad79fb428 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Wed, 24 Jan 2018 17:59:25 +0100 Subject: [PATCH 196/916] Test wxTreeListCtrl::DeleteAllItems() in the sample Add a menu command to invoke this method for testing. --- samples/treelist/treelist.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/samples/treelist/treelist.cpp b/samples/treelist/treelist.cpp index 2bdc74507a..0614f0ef84 100644 --- a/samples/treelist/treelist.cpp +++ b/samples/treelist/treelist.cpp @@ -65,6 +65,8 @@ enum Id_CheckboxesUser3State, Id_Checkboxes_End, + Id_DeleteAllItems, + Id_DumpSelection, Id_Check_HTMLDocs, Id_Uncheck_HTMLDocs, @@ -187,6 +189,8 @@ private: void OnAbout(wxCommandEvent& event); void OnExit(wxCommandEvent& event); + void OnDeleteAllItems(wxCommandEvent& event); + void OnSelectionChanged(wxTreeListEvent& event); void OnItemExpanding(wxTreeListEvent& event); void OnItemExpanded(wxTreeListEvent& event); @@ -272,6 +276,8 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU(wxID_ABOUT, MyFrame::OnAbout) EVT_MENU(wxID_EXIT, MyFrame::OnExit) + EVT_MENU(Id_DeleteAllItems, MyFrame::OnDeleteAllItems) + EVT_TREELIST_SELECTION_CHANGED(wxID_ANY, MyFrame::OnSelectionChanged) EVT_TREELIST_ITEM_EXPANDING(wxID_ANY, MyFrame::OnItemExpanding) EVT_TREELIST_ITEM_EXPANDED(wxID_ANY, MyFrame::OnItemExpanded) @@ -314,6 +320,8 @@ MyFrame::MyFrame() treeOper->Append(Id_Indet_HTMLDocs, "Make Doc/HTML &indeterminate\tCtrl-I"); treeOper->Append(Id_Select_HTMLDocs, "&Select Doc/HTML item\tCtrl-S"); + treeOper->Append(Id_DeleteAllItems, "DeleteAllItems"); + wxMenu* helpMenu = new wxMenu; helpMenu->Append(wxID_ABOUT); @@ -577,6 +585,11 @@ void MyFrame::OnExit(wxCommandEvent& WXUNUSED(event)) Close(true); } +void MyFrame::OnDeleteAllItems(wxCommandEvent& WXUNUSED(event)) +{ + m_treelist->DeleteAllItems(); +} + wxString MyFrame::DumpItem(wxTreeListItem item) const { return item.IsOk() ? m_treelist->GetItemText(item) : wxString("NONE"); From 0cea0a67f1c8d66a4abd916b9ffb9a11bd0feb30 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 18:18:22 +0100 Subject: [PATCH 197/916] Use RAII SelectionEventsSuppressor in wxGTK wxDataViewCtrl code This is simpler and safer than always remembering to call GtkDisableSelectionEvents() and GtkEnableSelectionEvents() in pairs. No real changes. --- include/wx/gtk/dataview.h | 19 +++++++++++++++++++ src/gtk/dataview.cpp | 20 +++++--------------- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/include/wx/gtk/dataview.h b/include/wx/gtk/dataview.h index a6d1d45c3b..059f1dc367 100644 --- a/include/wx/gtk/dataview.h +++ b/include/wx/gtk/dataview.h @@ -188,6 +188,25 @@ public: int GTKGetUniformRowHeight() const { return m_uniformRowHeight; } + // Simple RAII helper for disabling selection events during its lifetime. + class SelectionEventsSuppressor + { + public: + explicit SelectionEventsSuppressor(wxDataViewCtrl* ctrl) + : m_ctrl(ctrl) + { + m_ctrl->GtkDisableSelectionEvents(); + } + + ~SelectionEventsSuppressor() + { + m_ctrl->GtkEnableSelectionEvents(); + } + + private: + wxDataViewCtrl* const m_ctrl; + }; + protected: virtual void DoSetExpanderColumn() wxOVERRIDE; virtual void DoSetIndent() wxOVERRIDE; diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index d78d075559..3ca8b55e60 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -5068,7 +5068,7 @@ void wxDataViewCtrl::SetSelections( const wxDataViewItemArray & sel ) { wxCHECK_RET( m_internal, "model must be associated before calling SetSelections" ); - GtkDisableSelectionEvents(); + SelectionEventsSuppressor noSelection(this); GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); @@ -5093,8 +5093,6 @@ void wxDataViewCtrl::SetSelections( const wxDataViewItemArray & sel ) iter.user_data = (gpointer) item.GetID(); gtk_tree_selection_select_iter( selection, &iter ); } - - GtkEnableSelectionEvents(); } void wxDataViewCtrl::Select( const wxDataViewItem & item ) @@ -5103,7 +5101,7 @@ void wxDataViewCtrl::Select( const wxDataViewItem & item ) ExpandAncestors(item); - GtkDisableSelectionEvents(); + SelectionEventsSuppressor noSelection(this); GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); @@ -5111,15 +5109,13 @@ void wxDataViewCtrl::Select( const wxDataViewItem & item ) iter.stamp = m_internal->GetGtkModel()->stamp; iter.user_data = (gpointer) item.GetID(); gtk_tree_selection_select_iter( selection, &iter ); - - GtkEnableSelectionEvents(); } void wxDataViewCtrl::Unselect( const wxDataViewItem & item ) { wxCHECK_RET( m_internal, "model must be associated before calling Unselect" ); - GtkDisableSelectionEvents(); + SelectionEventsSuppressor noSelection(this); GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); @@ -5127,8 +5123,6 @@ void wxDataViewCtrl::Unselect( const wxDataViewItem & item ) iter.stamp = m_internal->GetGtkModel()->stamp; iter.user_data = (gpointer) item.GetID(); gtk_tree_selection_unselect_iter( selection, &iter ); - - GtkEnableSelectionEvents(); } bool wxDataViewCtrl::IsSelected( const wxDataViewItem & item ) const @@ -5146,24 +5140,20 @@ bool wxDataViewCtrl::IsSelected( const wxDataViewItem & item ) const void wxDataViewCtrl::SelectAll() { - GtkDisableSelectionEvents(); + SelectionEventsSuppressor noSelection(this); GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); gtk_tree_selection_select_all( selection ); - - GtkEnableSelectionEvents(); } void wxDataViewCtrl::UnselectAll() { - GtkDisableSelectionEvents(); + SelectionEventsSuppressor noSelection(this); GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); gtk_tree_selection_unselect_all( selection ); - - GtkEnableSelectionEvents(); } void wxDataViewCtrl::EnsureVisible(const wxDataViewItem& item, From 27f705686de5dd83c8cd2df68e3ff070d13021da Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 22:05:14 +0100 Subject: [PATCH 198/916] Avoid using the already deleted model items when clearing it There is an impedance mismatch between wxDataViewCtrl API, which allows deleting all items of the model at once, and GtkTreeView, which only allows deleting them one by one, so bad things happen when we start deleting the items from the GTK+ model after already having deleted them from the wxDataViewModel, due to dereferencing the already freed pointers. Work around this by explicitly marking the model as being "temporarily unsafe to use" by setting the stamp, uniquely identifying it, to 0 (and ensuring that it's never 0 during the normal operation), and checking for it in all functions that are called by GTK+ from inside gtk_tree_model_row_deleted() that we call from Cleared(). The fix is not ideal, as the list of these functions was determined empirically and could change in the future GTK+ versions, and also ugly, but there doesn't seem to be any other way around this and at least now Valgrind doesn't report invalid memory reads after calling wxTreeListCtrl::DeleteAllItems() as it did before. --- src/gtk/dataview.cpp | 43 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 4 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index 3ca8b55e60..ee482cd68c 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -680,7 +680,13 @@ wxgtk_tree_model_init(GTypeInstance* instance, void*) { GtkWxTreeModel* tree_model = GTK_WX_TREE_MODEL(instance); tree_model->internal = NULL; - tree_model->stamp = g_random_int(); + + // 0 is handled specially in wxGtkTreeCellDataFunc, so don't use it as the + // stamp. + do + { + tree_model->stamp = g_random_int(); + } while ( tree_model->stamp == 0 ); } } // extern "C" @@ -746,9 +752,18 @@ static GtkTreePath * wxgtk_tree_model_get_path (GtkTreeModel *tree_model, GtkTreeIter *iter) { - GtkWxTreeModel *wxtree_model = (GtkWxTreeModel *) tree_model; - g_return_val_if_fail (GTK_IS_WX_TREE_MODEL (wxtree_model), NULL); - g_return_val_if_fail (iter->stamp == GTK_WX_TREE_MODEL (wxtree_model)->stamp, NULL); + g_return_val_if_fail (GTK_IS_WX_TREE_MODEL (tree_model), NULL); + + GtkWxTreeModel *wxtree_model = GTK_WX_TREE_MODEL (tree_model); + if ( wxtree_model->stamp == 0 ) + { + // The model is temporarily invalid and can't be used, see Cleared(), + // but we need to return some valid path from here -- just return an + // empty one. + return gtk_tree_path_new(); + } + + g_return_val_if_fail (iter->stamp == wxtree_model->stamp, NULL); return wxtree_model->internal->get_path( iter ); } @@ -1891,12 +1906,25 @@ bool wxGtkDataViewModelNotifier::Cleared() GtkTreePath *path = gtk_tree_path_new_first(); // points to root + // It is important to avoid selection changed events being generated from + // here as they would reference the already deleted model items, which + // would result in crashes in any code attempting to handle these events. + wxDataViewCtrl::SelectionEventsSuppressor noSelection(m_internal->GetOwner()); + + // We also need to prevent wxGtkTreeCellDataFunc from using the model items + // not existing any longer, so change the model stamp to indicate that it + // temporarily can't be used. + const gint stampOrig = wxgtk_model->stamp; + wxgtk_model->stamp = 0; + int i; for (i = 0; i < count; i++) gtk_tree_model_row_deleted( GTK_TREE_MODEL(wxgtk_model), path ); gtk_tree_path_free( path ); + wxgtk_model->stamp = stampOrig; + m_internal->Cleared(); return true; @@ -3059,6 +3087,13 @@ static void wxGtkTreeCellDataFunc( GtkTreeViewColumn *WXUNUSED(column), g_return_if_fail (GTK_IS_WX_TREE_MODEL (model)); GtkWxTreeModel *tree_model = (GtkWxTreeModel *) model; + if ( !tree_model->stamp ) + { + // The model is temporarily invalid and can't be used, see the code in + // wxGtkDataViewModelNotifier::Cleared(). + return; + } + wxDataViewRenderer *cell = (wxDataViewRenderer*) data; wxDataViewItem item( (void*) iter->user_data ); From e1d8137e70ab7697a27b9439476e83ebd9cad1d0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 23:08:15 +0100 Subject: [PATCH 199/916] Use wxGtkTreePath instead of calling gtk_tree_path_free() Use RAII helper class instead of freeing the object manually. Also add a couple of "const"s and other minor style fixes. No real changes. --- src/gtk/dataview.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index ee482cd68c..91b7621fde 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1902,10 +1902,6 @@ bool wxGtkDataViewModelNotifier::Cleared() // has been deleted so call row_deleted() for every // child of root... - int count = m_internal->iter_n_children( NULL ); // number of children of root - - GtkTreePath *path = gtk_tree_path_new_first(); // points to root - // It is important to avoid selection changed events being generated from // here as they would reference the already deleted model items, which // would result in crashes in any code attempting to handle these events. @@ -1917,11 +1913,12 @@ bool wxGtkDataViewModelNotifier::Cleared() const gint stampOrig = wxgtk_model->stamp; wxgtk_model->stamp = 0; - int i; - for (i = 0; i < count; i++) - gtk_tree_model_row_deleted( GTK_TREE_MODEL(wxgtk_model), path ); - - gtk_tree_path_free( path ); + { + wxGtkTreePath path(gtk_tree_path_new_first()); // points to root + const int count = m_internal->iter_n_children( NULL ); // number of children of root + for (int i = 0; i < count; i++) + gtk_tree_model_row_deleted( GTK_TREE_MODEL(wxgtk_model), path ); + } wxgtk_model->stamp = stampOrig; From ad03c8475d05f7f63a1a9082658100f78b93bb8f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 24 Jan 2018 18:00:29 +0100 Subject: [PATCH 200/916] Revert "Fix crash when deleting all wxTreeListCtrl items with wxGTK3" This reverts commit 1dd102d741dc9858df2b7e933761ed7cc7a51093 as it introduced a crash in the same method when using generic wxDataViewCtrl implementation, e.g. under MSW, and is not necessary to avoid the crash with wxGTK3 any longer after the few previous commits. --- src/generic/treelist.cpp | 8 ++------ tests/controls/treelistctrltest.cpp | 9 --------- 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/src/generic/treelist.cpp b/src/generic/treelist.cpp index 3c6f26d955..6c599100ae 100644 --- a/src/generic/treelist.cpp +++ b/src/generic/treelist.cpp @@ -572,16 +572,12 @@ void wxTreeListModel::DeleteItem(Node* item) void wxTreeListModel::DeleteAllItems() { - // Note that this must be called before actually deleting the items as - // clearing GTK+ wxDataViewCtrl results in SELECTION_CHANGED events being - // sent and these events contain pointers to the model items, so they must - // still be valid. - Cleared(); - while ( m_root->GetChild() ) { m_root->DeleteChild(); } + + Cleared(); } const wxString& wxTreeListModel::GetItemText(Node* item, unsigned col) const diff --git a/tests/controls/treelistctrltest.cpp b/tests/controls/treelistctrltest.cpp index 02164ab3a1..d4a3ac96d6 100644 --- a/tests/controls/treelistctrltest.cpp +++ b/tests/controls/treelistctrltest.cpp @@ -39,7 +39,6 @@ private: CPPUNIT_TEST( Traversal ); CPPUNIT_TEST( ItemText ); CPPUNIT_TEST( ItemCheck ); - CPPUNIT_TEST( DeleteAll ); CPPUNIT_TEST_SUITE_END(); // Create the control with the given style. @@ -56,7 +55,6 @@ private: void Traversal(); void ItemText(); void ItemCheck(); - void DeleteAll(); // The control itself. @@ -233,11 +231,4 @@ void TreeListCtrlTestCase::ItemCheck() m_treelist->GetCheckedState(m_code) ); } -void TreeListCtrlTestCase::DeleteAll() -{ - m_treelist->DeleteAllItems(); - - CHECK( !m_treelist->GetFirstChild(m_treelist->GetRootItem()).IsOk() ); -} - #endif // wxUSE_TREELISTCTRL From d8b3fc84c2239effb1824e7094c7bf24db45a7ba Mon Sep 17 00:00:00 2001 From: Daniel Kulp Date: Wed, 24 Jan 2018 23:40:36 +0100 Subject: [PATCH 201/916] Fix sorting in generic wxDataViewCtrl broken by recent changes The comparator used with std::sort() must return true only if the first item is strictly less than the second one, this is a requirement of the sorting algorithm and not respecting it results in wrong final order. See https://github.com/wxWidgets/wxWidgets/pull/642 --- src/generic/datavgen.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index ad336e3067..c06e72fc11 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -1666,12 +1666,11 @@ public: m_sortOrder.IsAscending()); } - // Return true if the items are in order, i.e. the first item is less than - // or equal (because it's useless to exchange them in this case) than the - // second one. This is used by std::sort(). + // Return true if the items are (strictly) in order, i.e. the first item is + // less than the second one. This is used by std::sort(). bool operator()(wxDataViewTreeNode* first, wxDataViewTreeNode* second) const { - return Compare(first, second) <= 0; + return Compare(first, second) < 0; } private: From bdcf21a5bdae38ed58ae21819dcd6f07d475c188 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 12:22:34 +0100 Subject: [PATCH 202/916] Explicitly use libc++ in C++11 CMake macOS builds on Travis CI Just using -DCMAKE_CXX_STANDARD=11 isn't enough, as it doesn't seem to use C++11 for configuration checks, so set CMAKE_CXX_FLAGS explicitly too. --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 36f7e40fa4..afc314c983 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,7 +27,7 @@ matrix: env: wxCONFIGURE_FLAGS="--enable-cxx11" wxMAKEFILE_FLAGS="CXXFLAGS=-std=c++11" wxSKIP_SAMPLES=1 - os: osx compiler: clang - env: wxTOOLSET=cmake wxCMAKE_GENERATOR=Xcode wxCMAKE_DEFINES="-DCMAKE_CXX_STANDARD=11" + env: wxTOOLSET=cmake wxCMAKE_GENERATOR=Xcode wxCMAKE_DEFINES="-DCMAKE_CXX_STANDARD=11 -DCMAKE_CXX_FLAGS=-stdlib=libc++" branches: only: From a9b44af251b8e58cd598335cde85cdb90477a414 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 13:02:14 +0100 Subject: [PATCH 203/916] Fix crash with wxDataViewVirtualListModel in generic wxDataViewCtrl Recent sorting-related changes resulted in calling FindNode(), which can only be used with the non-"virtual list" models, unconditionally, after the items values was changed by user, resulting in a crash. Add the missing IsVirtualList() check and also add a comment explicitly stating that all code involving wxDataViewTreeNode can only be used after checking that IsVirtualList() returns false. Closes #18057. --- src/generic/datavgen.cpp | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index c06e72fc11..9a4f08276e 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -458,6 +458,11 @@ class wxDataViewTreeNode; typedef wxVector wxDataViewTreeNodes; +// Note: this class is not used at all for virtual list models, so all code +// using it, i.e. any functions taking or returning objects of this type, +// including wxDataViewMainWindow::m_root, can only be called after checking +// that we're using a non-"virtual list" model. + class wxDataViewTreeNode { public: @@ -2942,17 +2947,20 @@ bool wxDataViewMainWindow::ItemDeleted(const wxDataViewItem& parent, bool wxDataViewMainWindow::DoItemChanged(const wxDataViewItem & item, int view_column) { - // Move this node to its new correct place after it was updated. - // - // In principle, we could skip the call to PutInSortOrder() if the modified - // column is not the sort column, but in real-world applications it's fully - // possible and likely that custom compare uses not only the selected model - // column but also falls back to other values for comparison. To ensure - // consistency it is better to treat a value change as if it was an item - // change. - wxDataViewTreeNode* const node = FindNode(item); - wxCHECK_MSG( node, false, "invalid item" ); - node->PutInSortOrder(this); + if ( !IsVirtualList() ) + { + // Move this node to its new correct place after it was updated. + // + // In principle, we could skip the call to PutInSortOrder() if the modified + // column is not the sort column, but in real-world applications it's fully + // possible and likely that custom compare uses not only the selected model + // column but also falls back to other values for comparison. To ensure + // consistency it is better to treat a value change as if it was an item + // change. + wxDataViewTreeNode* const node = FindNode(item); + wxCHECK_MSG( node, false, "invalid item" ); + node->PutInSortOrder(this); + } wxDataViewColumn* column; if ( view_column == wxNOT_FOUND ) From 8bad0d4d587802b47f587fd8e9cc59b50460006d Mon Sep 17 00:00:00 2001 From: Lauri Nurmi Date: Thu, 25 Jan 2018 15:27:07 +0200 Subject: [PATCH 204/916] Fix attribution in docs/changes.txt Fix wrong attribution for the changes of https://github.com/wxWidgets/wxWidgets/pull/552 A fix for 56323b5aba82017f86d62695ef4e37eb99adcc5e See https://github.com/wxWidgets/wxWidgets/pull/684 --- docs/changes.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changes.txt b/docs/changes.txt index a4a6a53749..c8e851886d 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -93,7 +93,7 @@ All: wxLog::SetVerbose() which now only affects wxLogVerbose(). - Add wxFileType::GetExpandedCommand() (troelsk). - Make it easier to convert to/from UTF-8-encoded std::string (ARATA Mizuki). -- Support custom conversions in wxLogStream and wxLogStderr (Catalin Raceanu). +- Support custom conversions in wxLogStream and wxLogStderr (Lauri Nurmi). - Add support for loading dynamic lexer in wxStyledTextCtrl (New Pagodi). - Handle strings with embedded NULs in wxDataStream (Nitch). - Don't crash in wxTextFile::GetLastLine() if the file is empty (crohr). From afe0e776b94eb1544da706c5166a246578d80ab8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 14:14:05 +0100 Subject: [PATCH 205/916] Remove confusing "base_type" typedef from wxGTK3 wxDC code This typedef isn't really useful in base class initializer lists and it wasn't really used anywhere else. --- include/wx/gtk/dc.h | 7 ------- src/gtk/dc.cpp | 25 +++++++++++++------------ 2 files changed, 13 insertions(+), 19 deletions(-) diff --git a/include/wx/gtk/dc.h b/include/wx/gtk/dc.h index 2c08c1f200..6c8fb391e3 100644 --- a/include/wx/gtk/dc.h +++ b/include/wx/gtk/dc.h @@ -15,7 +15,6 @@ class wxGTKCairoDCImpl: public wxGCDCImpl { - typedef wxGCDCImpl base_type; public: wxGTKCairoDCImpl(wxDC* owner); wxGTKCairoDCImpl(wxDC* owner, int); @@ -42,7 +41,6 @@ protected: class wxWindowDCImpl: public wxGTKCairoDCImpl { - typedef wxGTKCairoDCImpl base_type; public: wxWindowDCImpl(wxWindowDC* owner, wxWindow* window); @@ -52,7 +50,6 @@ public: class wxClientDCImpl: public wxGTKCairoDCImpl { - typedef wxGTKCairoDCImpl base_type; public: wxClientDCImpl(wxClientDC* owner, wxWindow* window); @@ -62,7 +59,6 @@ public: class wxPaintDCImpl: public wxGTKCairoDCImpl { - typedef wxGTKCairoDCImpl base_type; public: wxPaintDCImpl(wxPaintDC* owner, wxWindow* window); @@ -72,7 +68,6 @@ public: class wxScreenDCImpl: public wxGTKCairoDCImpl { - typedef wxGTKCairoDCImpl base_type; public: wxScreenDCImpl(wxScreenDC* owner); @@ -82,7 +77,6 @@ public: class wxMemoryDCImpl: public wxGTKCairoDCImpl { - typedef wxGTKCairoDCImpl base_type; public: wxMemoryDCImpl(wxMemoryDC* owner); wxMemoryDCImpl(wxMemoryDC* owner, wxBitmap& bitmap); @@ -102,7 +96,6 @@ private: class WXDLLIMPEXP_CORE wxGTKCairoDC: public wxDC { - typedef wxDC base_type; public: wxGTKCairoDC(cairo_t* cr, wxWindow* window); diff --git a/src/gtk/dc.cpp b/src/gtk/dc.cpp index 401551b7f7..711b96d517 100644 --- a/src/gtk/dc.cpp +++ b/src/gtk/dc.cpp @@ -21,21 +21,21 @@ #include wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner) - : base_type(owner) + : wxGCDCImpl(owner) { m_width = 0; m_height = 0; } wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, int) - : base_type(owner, 0) + : wxGCDCImpl(owner, 0) { m_width = 0; m_height = 0; } wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, double scaleFactor) - : base_type(owner, 0) + : wxGCDCImpl(owner, 0) { m_width = 0; m_height = 0; @@ -43,7 +43,7 @@ wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, double scaleFactor) } wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, wxWindow* window) - : base_type(owner, 0) + : wxGCDCImpl(owner, 0) { m_window = window; m_font = window->GetFont(); @@ -236,10 +236,11 @@ void* wxGTKCairoDCImpl::GetCairoContext() const cr = static_cast(m_graphicContext->GetNativeContext()); return cr; } + //----------------------------------------------------------------------------- wxWindowDCImpl::wxWindowDCImpl(wxWindowDC* owner, wxWindow* window) - : base_type(owner, window) + : wxGTKCairoDCImpl(owner, window) { GtkWidget* widget = window->m_wxwindow; if (widget == NULL) @@ -285,7 +286,7 @@ wxWindowDCImpl::wxWindowDCImpl(wxWindowDC* owner, wxWindow* window) //----------------------------------------------------------------------------- wxClientDCImpl::wxClientDCImpl(wxClientDC* owner, wxWindow* window) - : base_type(owner, window) + : wxGTKCairoDCImpl(owner, window) { GtkWidget* widget = window->m_wxwindow; if (widget == NULL) @@ -325,7 +326,7 @@ wxClientDCImpl::wxClientDCImpl(wxClientDC* owner, wxWindow* window) //----------------------------------------------------------------------------- wxPaintDCImpl::wxPaintDCImpl(wxPaintDC* owner, wxWindow* window) - : base_type(owner, window) + : wxGTKCairoDCImpl(owner, window) { cairo_t* cr = window->GTKPaintContext(); wxCHECK_RET(cr, "using wxPaintDC without being in a native paint event"); @@ -339,7 +340,7 @@ wxPaintDCImpl::wxPaintDCImpl(wxPaintDC* owner, wxWindow* window) //----------------------------------------------------------------------------- wxScreenDCImpl::wxScreenDCImpl(wxScreenDC* owner) - : base_type(owner, 0) + : wxGTKCairoDCImpl(owner, 0) { GdkWindow* window = gdk_get_default_root_window(); m_width = gdk_window_get_width(window); @@ -353,20 +354,20 @@ wxScreenDCImpl::wxScreenDCImpl(wxScreenDC* owner) //----------------------------------------------------------------------------- wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC* owner) - : base_type(owner) + : wxGTKCairoDCImpl(owner) { m_ok = false; } wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC* owner, wxBitmap& bitmap) - : base_type(owner, 0) + : wxGTKCairoDCImpl(owner, 0) , m_bitmap(bitmap) { Setup(); } wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC* owner, wxDC*) - : base_type(owner) + : wxGTKCairoDCImpl(owner) { m_ok = false; } @@ -411,7 +412,7 @@ void wxMemoryDCImpl::Setup() //----------------------------------------------------------------------------- wxGTKCairoDC::wxGTKCairoDC(cairo_t* cr, wxWindow* window) - : base_type(new wxGTKCairoDCImpl(this, window->GetContentScaleFactor())) + : wxDC(new wxGTKCairoDCImpl(this, window->GetContentScaleFactor())) { wxGraphicsContext* gc = wxGraphicsContext::CreateFromNative(cr); gc->EnableOffset(window->GetContentScaleFactor() <= 1); From 4ad1a3d9695c118ac85c3ea9f6fba519122f5ab4 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 20 Jan 2018 14:58:08 +0100 Subject: [PATCH 206/916] Return display PPI from wxDC::GetPPI() in wxGTK3 For wxDC associated with a window, such as wx{Window,Client,Paint}DC, this method should return the window PPI, not the hard coded 72 DPI of Cairo graphics context. This still doesn't work correctly when using multiple monitors with different DPI settings, but is still a (modest) improvement. --- include/wx/gtk/dc.h | 5 +++++ src/gtk/dc.cpp | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/include/wx/gtk/dc.h b/include/wx/gtk/dc.h index 6c8fb391e3..de09ee2494 100644 --- a/include/wx/gtk/dc.h +++ b/include/wx/gtk/dc.h @@ -32,9 +32,14 @@ public: virtual bool DoStretchBlit(int xdest, int ydest, int dstWidth, int dstHeight, wxDC* source, int xsrc, int ysrc, int srcWidth, int srcHeight, wxRasterOperationMode rop, bool useMask, int xsrcMask, int ysrcMask) wxOVERRIDE; virtual void* GetCairoContext() const wxOVERRIDE; + virtual wxSize GetPPI() const wxOVERRIDE; + protected: int m_width, m_height; +private: + bool TryGetWindowSize(wxSize& size, wxSize& sizeMM) const; + wxDECLARE_NO_COPY_CLASS(wxGTKCairoDCImpl); }; //----------------------------------------------------------------------------- diff --git a/src/gtk/dc.cpp b/src/gtk/dc.cpp index 711b96d517..ed846c0899 100644 --- a/src/gtk/dc.cpp +++ b/src/gtk/dc.cpp @@ -15,6 +15,7 @@ #include "wx/dcclient.h" #include "wx/dcmemory.h" #include "wx/dcscreen.h" +#include "wx/gdicmn.h" #include "wx/icon.h" #include "wx/gtk/dc.h" @@ -237,6 +238,18 @@ void* wxGTKCairoDCImpl::GetCairoContext() const return cr; } +wxSize wxGTKCairoDCImpl::GetPPI() const +{ + if ( m_window ) + { + return wxGetDisplayPPI(); + } + + // For a non-window-based DC the concept of PPI doesn't make much sense + // anyhow, so just return the hardcoded value used by the base class. + return wxGCDCImpl::GetPPI(); +} + //----------------------------------------------------------------------------- wxWindowDCImpl::wxWindowDCImpl(wxWindowDC* owner, wxWindow* window) From a1cb2eb12a0ea295deb1d13afcba5ce566849ed6 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 14:55:31 +0100 Subject: [PATCH 207/916] Also return display DPI from wxScreenDC in wxGTK3 This is similar to the previous commit and is done for the same reasons: screen DC needs to use the same DPI as the screen itself, instead of the default Cairo 72 DPI. --- include/wx/gtk/dc.h | 2 ++ src/gtk/dc.cpp | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/include/wx/gtk/dc.h b/include/wx/gtk/dc.h index de09ee2494..3e3b600f68 100644 --- a/include/wx/gtk/dc.h +++ b/include/wx/gtk/dc.h @@ -76,6 +76,8 @@ class wxScreenDCImpl: public wxGTKCairoDCImpl public: wxScreenDCImpl(wxScreenDC* owner); + virtual wxSize GetPPI() const wxOVERRIDE; + wxDECLARE_NO_COPY_CLASS(wxScreenDCImpl); }; //----------------------------------------------------------------------------- diff --git a/src/gtk/dc.cpp b/src/gtk/dc.cpp index ed846c0899..ccd61f9b02 100644 --- a/src/gtk/dc.cpp +++ b/src/gtk/dc.cpp @@ -364,6 +364,12 @@ wxScreenDCImpl::wxScreenDCImpl(wxScreenDC* owner) gc->EnableOffset(m_contentScaleFactor <= 1); SetGraphicsContext(gc); } + +wxSize wxScreenDCImpl::GetPPI() const +{ + return wxGetDisplayPPI(); +} + //----------------------------------------------------------------------------- wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC* owner) From 0be81cb34be50597593fe422b1e3cd72c0e0395a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 14:40:10 +0100 Subject: [PATCH 208/916] Add wxGTKCairoDCImpl::SetSize() helper Avoid repeating gdk_window_get_{width,height}() calls in several places. --- include/wx/gtk/dc.h | 6 +++--- src/gtk/dc.cpp | 14 +++++++++----- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/include/wx/gtk/dc.h b/include/wx/gtk/dc.h index 3e3b600f68..3c8619cb8a 100644 --- a/include/wx/gtk/dc.h +++ b/include/wx/gtk/dc.h @@ -35,10 +35,10 @@ public: virtual wxSize GetPPI() const wxOVERRIDE; protected: - int m_width, m_height; + // Set m_width and m_height from the given (valid) GdkWindow. + void InitSize(GdkWindow* window); -private: - bool TryGetWindowSize(wxSize& size, wxSize& sizeMM) const; + int m_width, m_height; wxDECLARE_NO_COPY_CLASS(wxGTKCairoDCImpl); }; diff --git a/src/gtk/dc.cpp b/src/gtk/dc.cpp index ccd61f9b02..79c90e20d2 100644 --- a/src/gtk/dc.cpp +++ b/src/gtk/dc.cpp @@ -55,6 +55,12 @@ wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, wxWindow* window) m_contentScaleFactor = window->GetContentScaleFactor(); } +void wxGTKCairoDCImpl::InitSize(GdkWindow* window) +{ + m_width = gdk_window_get_width(window); + m_height = gdk_window_get_height(window); +} + void wxGTKCairoDCImpl::DoDrawBitmap(const wxBitmap& bitmap, int x, int y, bool useMask) { wxCHECK_RET(IsOk(), "invalid DC"); @@ -343,9 +349,7 @@ wxPaintDCImpl::wxPaintDCImpl(wxPaintDC* owner, wxWindow* window) { cairo_t* cr = window->GTKPaintContext(); wxCHECK_RET(cr, "using wxPaintDC without being in a native paint event"); - GdkWindow* gdkWindow = gtk_widget_get_window(window->m_wxwindow); - m_width = gdk_window_get_width(gdkWindow); - m_height = gdk_window_get_height(gdkWindow); + InitSize(gtk_widget_get_window(window->m_wxwindow)); wxGraphicsContext* gc = wxGraphicsContext::CreateFromNative(cr); gc->EnableOffset(m_contentScaleFactor <= 1); SetGraphicsContext(gc); @@ -356,8 +360,8 @@ wxScreenDCImpl::wxScreenDCImpl(wxScreenDC* owner) : wxGTKCairoDCImpl(owner, 0) { GdkWindow* window = gdk_get_default_root_window(); - m_width = gdk_window_get_width(window); - m_height = gdk_window_get_height(window); + InitSize(window); + cairo_t* cr = gdk_cairo_create(window); wxGraphicsContext* gc = wxGraphicsContext::CreateFromNative(cr); cairo_destroy(cr); From 4c8e701d84dbaf8d20ee7a1d22721ad34ca36fcb Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 14:48:14 +0100 Subject: [PATCH 209/916] Remove wxGTKCairoDCImpl ctor taking dummy int We can reuse another ctor taking wxWindow* instead. Although this does require an ugly cast, it's more explicit than just passing 0 which could, in principle, match both the ctor taking wxWindow* and another one taking double, and so is still preferable. --- include/wx/gtk/dc.h | 1 - src/gtk/dc.cpp | 25 +++++++++++-------------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/include/wx/gtk/dc.h b/include/wx/gtk/dc.h index 3c8619cb8a..f0807e3d12 100644 --- a/include/wx/gtk/dc.h +++ b/include/wx/gtk/dc.h @@ -17,7 +17,6 @@ class wxGTKCairoDCImpl: public wxGCDCImpl { public: wxGTKCairoDCImpl(wxDC* owner); - wxGTKCairoDCImpl(wxDC* owner, int); wxGTKCairoDCImpl(wxDC* owner, double scaleFactor); wxGTKCairoDCImpl(wxDC* owner, wxWindow* window); diff --git a/src/gtk/dc.cpp b/src/gtk/dc.cpp index 79c90e20d2..61f3951724 100644 --- a/src/gtk/dc.cpp +++ b/src/gtk/dc.cpp @@ -28,13 +28,6 @@ wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner) m_height = 0; } -wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, int) - : wxGCDCImpl(owner, 0) -{ - m_width = 0; - m_height = 0; -} - wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, double scaleFactor) : wxGCDCImpl(owner, 0) { @@ -46,13 +39,17 @@ wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, double scaleFactor) wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, wxWindow* window) : wxGCDCImpl(owner, 0) { - m_window = window; - m_font = window->GetFont(); - m_textForegroundColour = window->GetForegroundColour(); - m_textBackgroundColour = window->GetBackgroundColour(); m_width = 0; m_height = 0; - m_contentScaleFactor = window->GetContentScaleFactor(); + + if ( window ) + { + m_window = window; + m_font = window->GetFont(); + m_textForegroundColour = window->GetForegroundColour(); + m_textBackgroundColour = window->GetBackgroundColour(); + m_contentScaleFactor = window->GetContentScaleFactor(); + } } void wxGTKCairoDCImpl::InitSize(GdkWindow* window) @@ -357,7 +354,7 @@ wxPaintDCImpl::wxPaintDCImpl(wxPaintDC* owner, wxWindow* window) //----------------------------------------------------------------------------- wxScreenDCImpl::wxScreenDCImpl(wxScreenDC* owner) - : wxGTKCairoDCImpl(owner, 0) + : wxGTKCairoDCImpl(owner, static_cast(NULL)) { GdkWindow* window = gdk_get_default_root_window(); InitSize(window); @@ -383,7 +380,7 @@ wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC* owner) } wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC* owner, wxBitmap& bitmap) - : wxGTKCairoDCImpl(owner, 0) + : wxGTKCairoDCImpl(owner, static_cast(NULL)) , m_bitmap(bitmap) { Setup(); From ee0dd4edb1445c91dcfdb61d903a26ac23745e79 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 14:52:29 +0100 Subject: [PATCH 210/916] Replace wxGTKCairoDCImpl::m_{width,height} with m_size This allows to avoid initializing the variables to 0 in all the overloaded ctors: wxSize default ctor already does it. It's also more convenient to use GetScaledSize() rather than assigning m_width and m_height separately, even if the rest of the code is broadly unchanged. --- include/wx/gtk/dc.h | 4 ++-- src/gtk/dc.cpp | 38 +++++++++++++++----------------------- 2 files changed, 17 insertions(+), 25 deletions(-) diff --git a/include/wx/gtk/dc.h b/include/wx/gtk/dc.h index f0807e3d12..88e46392f6 100644 --- a/include/wx/gtk/dc.h +++ b/include/wx/gtk/dc.h @@ -34,10 +34,10 @@ public: virtual wxSize GetPPI() const wxOVERRIDE; protected: - // Set m_width and m_height from the given (valid) GdkWindow. + // Set m_size from the given (valid) GdkWindow. void InitSize(GdkWindow* window); - int m_width, m_height; + wxSize m_size; wxDECLARE_NO_COPY_CLASS(wxGTKCairoDCImpl); }; diff --git a/src/gtk/dc.cpp b/src/gtk/dc.cpp index 61f3951724..4a6603f5ee 100644 --- a/src/gtk/dc.cpp +++ b/src/gtk/dc.cpp @@ -24,24 +24,17 @@ wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner) : wxGCDCImpl(owner) { - m_width = 0; - m_height = 0; } wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, double scaleFactor) : wxGCDCImpl(owner, 0) { - m_width = 0; - m_height = 0; m_contentScaleFactor = scaleFactor; } wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, wxWindow* window) : wxGCDCImpl(owner, 0) { - m_width = 0; - m_height = 0; - if ( window ) { m_window = window; @@ -54,8 +47,8 @@ wxGTKCairoDCImpl::wxGTKCairoDCImpl(wxDC* owner, wxWindow* window) void wxGTKCairoDCImpl::InitSize(GdkWindow* window) { - m_width = gdk_window_get_width(window); - m_height = gdk_window_get_height(window); + m_size.x = gdk_window_get_width(window); + m_size.y = gdk_window_get_height(window); } void wxGTKCairoDCImpl::DoDrawBitmap(const wxBitmap& bitmap, int x, int y, bool useMask) @@ -122,9 +115,9 @@ bool wxGTKCairoDCImpl::DoGetPixel(int x, int y, wxColour* col) const void wxGTKCairoDCImpl::DoGetSize(int* width, int* height) const { if (width) - *width = m_width; + *width = m_size.x; if (height) - *height = m_height; + *height = m_size.y; } bool wxGTKCairoDCImpl::DoStretchBlit(int xdest, int ydest, int dstWidth, int dstHeight, wxDC* source, int xsrc, int ysrc, int srcWidth, int srcHeight, wxRasterOperationMode rop, bool useMask, int xsrcMask, int ysrcMask) @@ -279,15 +272,15 @@ wxWindowDCImpl::wxWindowDCImpl(wxWindowDC* owner, wxWindow* window) int x, y; if (gtk_widget_get_has_window(widget)) { - m_width = gdk_window_get_width(gdkWindow); - m_height = gdk_window_get_height(gdkWindow); - x = m_width - a.width; - y = m_height - a.height; + m_size.x = gdk_window_get_width(gdkWindow); + m_size.y = gdk_window_get_height(gdkWindow); + x = m_size.x - a.width; + y = m_size.y - a.height; } else { - m_width = a.width; - m_height = a.height; + m_size.x = a.width; + m_size.y = a.height; x = a.x; y = a.y; cairo_rectangle(cr, a.x, a.y, a.width, a.height); @@ -322,15 +315,15 @@ wxClientDCImpl::wxClientDCImpl(wxClientDC* owner, wxWindow* window) SetGraphicsContext(gc); if (gtk_widget_get_has_window(widget)) { - m_width = gdk_window_get_width(gdkWindow); - m_height = gdk_window_get_height(gdkWindow); + m_size.x = gdk_window_get_width(gdkWindow); + m_size.y = gdk_window_get_height(gdkWindow); } else { GtkAllocation a; gtk_widget_get_allocation(widget, &a); - m_width = a.width; - m_height = a.height; + m_size.x = a.width; + m_size.y = a.height; cairo_rectangle(cr, a.x, a.y, a.width, a.height); cairo_clip(cr); SetDeviceLocalOrigin(a.x, a.y); @@ -419,8 +412,7 @@ void wxMemoryDCImpl::Setup() m_ok = m_bitmap.IsOk(); if (m_ok) { - m_width = int(m_bitmap.GetScaledWidth()); - m_height = int(m_bitmap.GetScaledHeight()); + m_size = m_bitmap.GetScaledSize(); m_contentScaleFactor = m_bitmap.GetScaleFactor(); cairo_t* cr = m_bitmap.CairoCreate(); gc = wxGraphicsContext::CreateFromNative(cr); From b936bfe85efaf0e179ec6ce071853934aecdf43a Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Thu, 25 Jan 2018 16:07:54 -0600 Subject: [PATCH 211/916] Add Direct2D support to wxSTC --- include/wx/msw/private/graphicsd2d.h | 28 + include/wx/stc/stc.h | 6 + interface/wx/stc/stc.h | 27 +- src/msw/graphicsd2d.cpp | 51 +- src/stc/PlatWX.cpp | 1196 +++++++++++++++++++++++++- src/stc/PlatWX.h | 66 ++ src/stc/ScintillaWX.cpp | 40 +- src/stc/ScintillaWX.h | 4 + src/stc/gen_docs.py | 26 +- src/stc/gen_iface.py | 2 - src/stc/stc.cpp | 16 + src/stc/stc.cpp.in | 4 + 12 files changed, 1449 insertions(+), 17 deletions(-) create mode 100644 include/wx/msw/private/graphicsd2d.h diff --git a/include/wx/msw/private/graphicsd2d.h b/include/wx/msw/private/graphicsd2d.h new file mode 100644 index 0000000000..993f61a960 --- /dev/null +++ b/include/wx/msw/private/graphicsd2d.h @@ -0,0 +1,28 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: wx/msw/private/graphicsd2d.h +// Purpose: Allow functions from graphicsd2d.cpp to be used in othe files +// Author: New Pagodi +// Created: 2017-10-31 +// Copyright: (c) 2017 wxWidgets development team +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + +#ifndef WX_MSW_PRIVATE_GRAPHICSD2D_H_ +#define WX_MSW_PRIVATE_GRAPHICSD2D_H_ + +#if wxUSE_GRAPHICS_DIRECT2D + +// Ensure no previous defines interfere with the Direct2D API headers +#undef GetHwnd + +#include +#include +#include + +WXDLLIMPEXP_CORE IWICImagingFactory* wxWICImagingFactory(); +WXDLLIMPEXP_CORE ID2D1Factory* wxD2D1Factory(); +WXDLLIMPEXP_CORE IDWriteFactory* wxDWriteFactory(); + +#endif // wxUSE_GRAPHICS_DIRECT2D + +#endif // WX_MSW_PRIVATE_GRAPHICSD2D_H_ diff --git a/include/wx/stc/stc.h b/include/wx/stc/stc.h index 36c7c1d900..43b4e97b6f 100644 --- a/include/wx/stc/stc.h +++ b/include/wx/stc/stc.h @@ -3963,6 +3963,12 @@ public: // to overlap from one line to the next. void SetPhasesDraw(int phases); + // Choose the quality level for text. + void SetFontQuality(int fontQuality); + + // Retrieve the quality level for text. + int GetFontQuality() const; + // Scroll so that a display line is at the top of the display. void SetFirstVisibleLine(int displayLine); diff --git a/interface/wx/stc/stc.h b/interface/wx/stc/stc.h index e65f64c40e..49ef8ff5ad 100644 --- a/interface/wx/stc/stc.h +++ b/interface/wx/stc/stc.h @@ -5153,6 +5153,27 @@ public: */ void SetPhasesDraw(int phases); + /** + Choose the quality level for text. + + The input should be one of the + @link wxStyledTextCtrl::wxSTC_EFF_QUALITY_DEFAULT wxSTC_EFF_QUALITY_* @endlink constants. + @remarks + This method only has any effect with the wxMSW port and when + technology has been set to wxSTC_TECHNOLOGY_DIRECTWRITE. + @since 3.1.1 + */ + void SetFontQuality(int fontQuality); + + /** + Retrieve the quality level for text. + + The return value will be one of the + @link wxStyledTextCtrl::wxSTC_EFF_QUALITY_DEFAULT wxSTC_EFF_QUALITY_* @endlink constants. + @since 3.1.1 + */ + int GetFontQuality() const; + /** Change internal focus flag. */ @@ -5166,8 +5187,10 @@ public: /** Set the technology used. - The input should be one of the - @link wxStyledTextCtrl::wxSTC_TECHNOLOGY_DEFAULT wxSTC_TECHNOLOGY_* @endlink constants. + @remarks + For the wxMSW port, the input can be either wxSTC_TECHNOLOGY_DEFAULT + or wxSTC_TECHNOLOGY_DIRECTWRITE. With other ports, this method has + no effect. */ void SetTechnology(int technology); diff --git a/src/msw/graphicsd2d.cpp b/src/msw/graphicsd2d.cpp index 22306f9169..ad502cc43e 100644 --- a/src/msw/graphicsd2d.cpp +++ b/src/msw/graphicsd2d.cpp @@ -72,6 +72,7 @@ #include "wx/private/graphics.h" #include "wx/stack.h" #include "wx/sharedptr.h" +#include "wx/msw/private/graphicsd2d.h" // This must be the last header included to only affect the DEFINE_GUID() // occurrences below but not any GUIDs declared in the standard files included @@ -219,6 +220,9 @@ wxDirect2D::DWriteCreateFactory_t wxDirect2D::DWriteCreateFactory = NULL; DEFINE_GUID(wxIID_IWICImagingFactory, 0xec5ec8a9, 0xc395, 0x4314, 0x9c, 0x77, 0x54, 0xd7, 0xa9, 0x35, 0xff, 0x70); +DEFINE_GUID(wxIID_ID2D1Factory, + 0x06152247, 0x6f50, 0x465a, 0x92, 0x45, 0x11, 0x8b, 0xfd, 0x3b, 0x60, 0x07); + DEFINE_GUID(wxIID_IDWriteFactory, 0xb859ee5a, 0xd838, 0x4b5b, 0xa2, 0xe8, 0x1a, 0xdc, 0x7d, 0x93, 0xdb, 0x48); @@ -299,6 +303,39 @@ IWICImagingFactory* wxWICImagingFactory() return gs_WICImagingFactory; } +static ID2D1Factory* gs_ID2D1Factory = NULL; + +ID2D1Factory* wxD2D1Factory() +{ + if (!wxDirect2D::Initialize()) + return NULL; + + if (gs_ID2D1Factory == NULL) + { + D2D1_FACTORY_OPTIONS factoryOptions = {D2D1_DEBUG_LEVEL_NONE}; + + // According to + // https://msdn.microsoft.com/en-us/library/windows/desktop/ee794287(v=vs.85).aspx + // the Direct2D Debug Layer is only available starting with Windows 8 + // and Visual Studio 2012. +#if defined(__WXDEBUG__) && defined(__VISUALC__) && wxCHECK_VISUALC_VERSION(11) + if ( wxGetWinVersion() >= wxWinVersion_8 ) + { + factoryOptions.debugLevel = D2D1_DEBUG_LEVEL_INFORMATION; + } +#endif //__WXDEBUG__ + + HRESULT hr = wxDirect2D::D2D1CreateFactory( + D2D1_FACTORY_TYPE_SINGLE_THREADED, + wxIID_ID2D1Factory, + &factoryOptions, + reinterpret_cast(&gs_ID2D1Factory) + ); + wxCHECK_HRESULT_RET_PTR(hr); + } + return gs_ID2D1Factory; +} + static IDWriteFactory* gs_IDWriteFactory = NULL; IDWriteFactory* wxDWriteFactory() @@ -4457,13 +4494,9 @@ wxGraphicsRenderer* wxGraphicsRenderer::GetDirect2DRenderer() return gs_D2DRenderer; } -wxD2DRenderer::wxD2DRenderer() +wxD2DRenderer::wxD2DRenderer():m_direct2dFactory(wxD2D1Factory()) { - - HRESULT result; - result = D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, &m_direct2dFactory); - - if (FAILED(result)) + if ( m_direct2dFactory.get() == NULL ) { wxFAIL_MSG("Could not create Direct2D Factory."); } @@ -4770,6 +4803,12 @@ public: gs_D2DRenderer = NULL; } + if ( gs_ID2D1Factory ) + { + gs_ID2D1Factory->Release(); + gs_ID2D1Factory = NULL; + } + ::CoUninitialize(); } diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index 7d3ca2e426..0aa5a0f2a0 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -46,6 +46,9 @@ #include "wx/stc/stc.h" #include "wx/stc/private.h" +#if wxUSE_GRAPHICS_DIRECT2D +#include "ScintillaWX.h" +#endif Point Point::FromLong(long lpoint) { return Point(lpoint & 0xFFFF, lpoint >> 16); @@ -86,10 +89,18 @@ class wxFontWithAscent : public wxFont public: explicit wxFontWithAscent(const wxFont &font) : wxFont(font), - m_ascent(0) + m_ascent(0),m_surfaceFontData(NULL) { } + ~wxFontWithAscent() + { + if ( m_surfaceFontData ) + { + delete m_surfaceFontData; + } + } + static wxFontWithAscent* FromFID(FontID fid) { return static_cast(fid); @@ -98,8 +109,12 @@ public: void SetAscent(int ascent) { m_ascent = ascent; } int GetAscent() const { return m_ascent; } + SurfaceData* GetSurfaceFontData() const {return m_surfaceFontData;} + void SetSurfaceFontData(SurfaceData* data){m_surfaceFontData=data;} + private: int m_ascent; + SurfaceData* m_surfaceFontData; }; void SetAscent(Font& f, int ascent) @@ -149,7 +164,14 @@ void Font::Create(const FontParameters &fp) { false, stc2wx(fp.faceName), encoding); - fid = new wxFontWithAscent(font); + wxFontWithAscent* newFont = new wxFontWithAscent(font); + fid = newFont; + +#if wxUSE_GRAPHICS_DIRECT2D + if ( fp.technology == wxSTC_TECHNOLOGY_DIRECTWRITE ) { + newFont->SetSurfaceFontData(new SurfaceFontDataD2D(fp)); + } +#endif // wxUSE_GRAPHICS_DIRECT2D } @@ -674,8 +696,1176 @@ void SurfaceImpl::SetDBCSMode(int WXUNUSED(codePage)) { // dbcsMode = codePage == SC_CP_DBCS; } +#if wxUSE_GRAPHICS_DIRECT2D -Surface *Surface::Allocate(int WXUNUSED(technology)) { +//---------------------------------------------------------------------- +// SurfaceFontDataD2D + +SurfaceFontDataD2D::SurfaceFontDataD2D(const FontParameters& fp) +{ + wxCOMPtr pDWriteFactory(::wxDWriteFactory()); + + if ( pDWriteFactory.get() ) + { + wxCOMPtr pTextLayout; + wxString faceName = fp.faceName; + wxString extentTest(EXTENT_TEST); + int weight = fp.weight; + DWRITE_FONT_WEIGHT fontWeight; + DWRITE_FONT_STYLE fontStyle; + DWRITE_TEXT_METRICS textmetrics = {0,0,0,0,0,0,0,0,0}; + const int maxLines = 2; + DWRITE_LINE_METRICS lineMetrics[maxLines]; + UINT32 lineCount = 0; + FLOAT emHeight = 0; + HRESULT hr; + + if ( weight <= 100 ) + { + fontWeight = DWRITE_FONT_WEIGHT_THIN; + } + else if ( weight <= 200 ) + { + fontWeight = DWRITE_FONT_WEIGHT_EXTRA_LIGHT; + } + else if ( weight <= 300 ) + { + fontWeight = DWRITE_FONT_WEIGHT_LIGHT; + } + else if ( weight <= 350 ) + { + fontWeight = DWRITE_FONT_WEIGHT_SEMI_LIGHT; + } + else if ( weight <= 400 ) + { + fontWeight = DWRITE_FONT_WEIGHT_NORMAL; + } + else if ( weight <= 500 ) + { + fontWeight = DWRITE_FONT_WEIGHT_MEDIUM; + } + else if ( weight <= 600 ) + { + fontWeight = DWRITE_FONT_WEIGHT_SEMI_BOLD; + } + else if ( weight <= 700 ) + { + fontWeight = DWRITE_FONT_WEIGHT_BOLD; + } + else if ( weight <= 800 ) + { + fontWeight = DWRITE_FONT_WEIGHT_EXTRA_BOLD; + } + else if ( weight <= 900 ) + { + fontWeight = DWRITE_FONT_WEIGHT_HEAVY; + } + else + { + fontWeight = DWRITE_FONT_WEIGHT_EXTRA_BLACK; + } + + fontStyle = fp.italic?DWRITE_FONT_STYLE_ITALIC:DWRITE_FONT_STYLE_NORMAL; + + hr = pDWriteFactory->CreateTextFormat( + faceName.wc_str(), + NULL, + fontWeight, + fontStyle, + DWRITE_FONT_STRETCH_NORMAL, + fp.size, + L"en-us", //locale + &m_pTextFormat + ); + + if ( SUCCEEDED(hr) ) + { + m_pTextFormat->SetWordWrapping(DWRITE_WORD_WRAPPING_NO_WRAP); + + hr = pDWriteFactory->CreateTextLayout(extentTest.wc_str(), + extentTest.Length(), m_pTextFormat, FLT_MAX, FLT_MAX, + &pTextLayout); + } + + if ( SUCCEEDED(hr) ) + { + hr = pTextLayout->GetMetrics(&textmetrics); + } + + if ( SUCCEEDED(hr) ) + { + hr = pTextLayout->GetLineMetrics(lineMetrics, maxLines, &lineCount); + } + + if ( SUCCEEDED(hr) ) + { + hr = pTextLayout->GetFontSize(0, &emHeight); + } + + if ( SUCCEEDED(hr) ) + { + m_ascent = lineMetrics[0].baseline; + m_descent = lineMetrics[0].height - lineMetrics[0].baseline; + m_internalLeading = lineMetrics[0].height - emHeight; + m_averageCharWidth = textmetrics.width/extentTest.Length(); + + switch ( fp.extraFontFlag & wxSTC_EFF_QUALITY_MASK ) + { + case wxSTC_EFF_QUALITY_NON_ANTIALIASED: + m_aaMode = D2D1_TEXT_ANTIALIAS_MODE_ALIASED; + break; + case wxSTC_EFF_QUALITY_ANTIALIASED: + m_aaMode = D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE; + break; + case wxSTC_EFF_QUALITY_LCD_OPTIMIZED: + m_aaMode = D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE; + break; + default: + m_aaMode = D2D1_TEXT_ANTIALIAS_MODE_DEFAULT; + break; + } + + m_pTextFormat->SetLineSpacing(DWRITE_LINE_SPACING_METHOD_UNIFORM, + lineMetrics[0].height, m_ascent); + } + else + { + m_pTextFormat.reset(); + } + } +} + +bool SurfaceFontDataD2D::Initialised() const +{ + return (m_pTextFormat.get() != NULL); +} + +//---------------------------------------------------------------------- +// SurfaceDataD2D + +SurfaceDataD2D::SurfaceDataD2D(ScintillaWX* editor):m_editor(editor), + m_pD2DFactory(::wxD2D1Factory()), m_pDWriteFactory(::wxDWriteFactory()) +{ + if( Initialised() ) + { + HRESULT hr = + m_pDWriteFactory->CreateRenderingParams(&m_defaultRenderingParams); + + if ( SUCCEEDED(hr) ) + { + unsigned int clearTypeContrast; + if ( ::SystemParametersInfo(SPI_GETFONTSMOOTHINGCONTRAST, 0, + &clearTypeContrast, 0) ) + { + FLOAT gamma; + if (clearTypeContrast >= 1000 && clearTypeContrast <= 2200) + gamma = static_cast(clearTypeContrast) / 1000.0f; + else + gamma = m_defaultRenderingParams->GetGamma(); + + m_pDWriteFactory->CreateCustomRenderingParams( + gamma, + m_defaultRenderingParams->GetEnhancedContrast(), + m_defaultRenderingParams->GetClearTypeLevel(), + m_defaultRenderingParams->GetPixelGeometry(), + m_defaultRenderingParams->GetRenderingMode(), + &m_customClearTypeRenderingParams); + } + } + } +} + +bool SurfaceDataD2D::Initialised() const +{ + return (m_pD2DFactory.get() != NULL && m_pDWriteFactory.get() != NULL); +} + +void SurfaceDataD2D::DiscardGraphicsResources() +{ + m_pRenderTarget.reset(); + m_pSolidBrush.reset(); + m_pPatternBrush.reset(); +} + +HRESULT SurfaceDataD2D::CreateGraphicsResources() +{ + HRESULT hr = S_OK; + if ( m_pRenderTarget.get() == NULL ) + { + D2D1_RENDER_TARGET_PROPERTIES renderTargetProperties = + D2D1::RenderTargetProperties( + D2D1_RENDER_TARGET_TYPE_DEFAULT, + D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM, + D2D1_ALPHA_MODE_PREMULTIPLIED)); + + hr = m_pD2DFactory->CreateDCRenderTarget( + &renderTargetProperties, + &m_pRenderTarget); + + if ( SUCCEEDED(hr) ) + { + const D2D1_COLOR_F color = D2D1::ColorF(0, 0, 0); + hr = m_pRenderTarget->CreateSolidColorBrush(color, &m_pSolidBrush); + } + + if ( SUCCEEDED(hr) ) + { + D2D1_BITMAP_BRUSH_PROPERTIES brushProperties = + D2D1::BitmapBrushProperties(D2D1_EXTEND_MODE_WRAP, + D2D1_EXTEND_MODE_WRAP, + D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR); + + wxCOMPtr bitmap; + + D2D1_PIXEL_FORMAT pixel_format = + D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM, + D2D1_ALPHA_MODE_PREMULTIPLIED); + + + m_pRenderTarget->CreateBitmap(D2D1::SizeU(1,1), + D2D1::BitmapProperties(pixel_format), + &bitmap); + + hr = m_pRenderTarget->CreateBitmapBrush(bitmap, brushProperties, + &m_pPatternBrush); + } + } + return hr; +} + +void SurfaceDataD2D::SetEditorPaintAbandoned() +{ + m_editor->SetPaintAbandoned(); +} + +//---------------------------------------------------------------------- +// SurfaceD2D - This is basically SurfaceD2D from the Scintilla source +// code adapted to draw in the wxMSW environment. + +class SurfaceD2D : public Surface +{ +public: + SurfaceD2D(); + virtual ~SurfaceD2D(); + + // base class virtuals + virtual void Init(WindowID wid) wxOVERRIDE; + virtual void Init(SurfaceID sid, WindowID wid) wxOVERRIDE; + virtual void InitPixMap(int width, int height, Surface *surface_, + WindowID wid) wxOVERRIDE; + + virtual void Release() wxOVERRIDE; + virtual bool Initialised() wxOVERRIDE; + virtual void PenColour(ColourDesired fore) wxOVERRIDE; + virtual int LogPixelsY() wxOVERRIDE; + virtual int DeviceHeightFont(int points) wxOVERRIDE; + virtual void MoveTo(int x_, int y_) wxOVERRIDE; + virtual void LineTo(int x_, int y_) wxOVERRIDE; + virtual void Polygon(Point *pts, int npts, ColourDesired fore, + ColourDesired back) wxOVERRIDE; + virtual void RectangleDraw(PRectangle rc, ColourDesired fore, + ColourDesired back) wxOVERRIDE; + virtual void FillRectangle(PRectangle rc, ColourDesired back) wxOVERRIDE; + virtual void FillRectangle(PRectangle rc, Surface &surfacePattern) wxOVERRIDE; + virtual void RoundedRectangle(PRectangle rc, ColourDesired fore, + ColourDesired back) wxOVERRIDE; + virtual void AlphaRectangle(PRectangle rc, int cornerSize, + ColourDesired fill, int alphaFill, + ColourDesired outline, int alphaOutline, + int flags) wxOVERRIDE; + virtual void DrawRGBAImage(PRectangle rc, int width, int height, + const unsigned char *pixelsImage) wxOVERRIDE; + virtual void Ellipse(PRectangle rc, ColourDesired fore, + ColourDesired back) wxOVERRIDE; + virtual void Copy(PRectangle rc, Point from, Surface &surfaceSource) wxOVERRIDE; + + virtual void DrawTextNoClip(PRectangle rc, Font &font_, XYPOSITION ybase, + const char *s, int len, ColourDesired fore, + ColourDesired back) wxOVERRIDE; + virtual void DrawTextClipped(PRectangle rc, Font &font_, XYPOSITION ybase, + const char *s, int len, ColourDesired fore, + ColourDesired back) wxOVERRIDE; + virtual void DrawTextTransparent(PRectangle rc, Font &font_, + XYPOSITION ybase, const char *s, int len, + ColourDesired fore) wxOVERRIDE; + virtual void MeasureWidths(Font &font_, const char *s, int len, + XYPOSITION *positions) wxOVERRIDE; + virtual XYPOSITION WidthText(Font &font_, const char *s, int len) wxOVERRIDE; + virtual XYPOSITION WidthChar(Font &font_, char ch) wxOVERRIDE; + virtual XYPOSITION Ascent(Font &font_) wxOVERRIDE; + virtual XYPOSITION Descent(Font &font_) wxOVERRIDE; + virtual XYPOSITION InternalLeading(Font &font_) wxOVERRIDE; + virtual XYPOSITION ExternalLeading(Font &font_) wxOVERRIDE; + virtual XYPOSITION Height(Font &font_) wxOVERRIDE; + virtual XYPOSITION AverageCharWidth(Font &font_) wxOVERRIDE; + + virtual void SetClip(PRectangle rc) wxOVERRIDE; + virtual void FlushCachedState() wxOVERRIDE; + + virtual void SetUnicodeMode(bool unicodeMode_) wxOVERRIDE; + virtual void SetDBCSMode(int codePage) wxOVERRIDE; + + // helpers + void SetFont(Font &font_); + void SetScale(wxDC* dc); + HRESULT FlushDrawing(); + void D2DPenColour(ColourDesired fore, int alpha=255); + void DrawTextCommon(PRectangle rc, Font &font_, XYPOSITION ybase, + const char *s, int len, UINT fuOptions); + +private: + // Private so SurfaceD2D objects can not be copied + SurfaceD2D(const SurfaceD2D &); + SurfaceD2D &operator=(const SurfaceD2D &); + + bool m_unicodeMode; + int m_x, m_y; + int m_logPixelsY; + + bool m_ownRenderTarget; + int m_clipsActive; + + XYPOSITION m_yAscent; + XYPOSITION m_yDescent; + XYPOSITION m_yInternalLeading; + XYPOSITION m_averageCharWidth; + + wxCOMPtr m_pDWriteFactory; + wxCOMPtr m_pRenderTarget; + wxCOMPtr m_pSolidBrush; + wxCOMPtr m_pPatternBrush; + wxCOMPtr m_pTextFormat; + + SurfaceDataD2D* m_surfaceData; + FontID m_curFontID; +}; + +SurfaceD2D::SurfaceD2D():m_pDWriteFactory(::wxDWriteFactory()) +{ + m_unicodeMode = false; + m_x = 0; + m_y = 0; + m_logPixelsY = 72; + + m_ownRenderTarget = false; + m_clipsActive = 0; + + m_yAscent = 2; + m_yDescent = 1; + m_yInternalLeading = 0; + m_averageCharWidth = 1; + + m_surfaceData = NULL; + m_curFontID = NULL; +} + +SurfaceD2D::~SurfaceD2D() +{ + Release(); +} + +void SurfaceD2D::Init(WindowID WXUNUSED(wid) ) +{ + Release(); + + wxScreenDC sdc; + SetScale(&sdc); +} + +void SurfaceD2D::Init(SurfaceID sid, WindowID wid) +{ + Release(); + + wxDC* dc = static_cast(sid); + wxStyledTextCtrl* stc(NULL); + ScintillaWX* sciwx(NULL); + wxWindow* win = wxDynamicCast(wid,wxWindow); + wxSize sz = dc->GetSize(); + RECT rc; + HRESULT hr; + + if ( win && win->GetName() == "wxSTCCallTip" ) + { + stc = wxDynamicCast(win->GetParent(),wxStyledTextCtrl); + } + else + { + stc = wxDynamicCast(wid,wxStyledTextCtrl); + } + + if ( stc ) + { + SetScale(dc); + sciwx = reinterpret_cast(stc->GetDirectPointer()); + m_surfaceData = static_cast(sciwx->GetSurfaceData()); + hr = m_surfaceData->CreateGraphicsResources(); + + if ( SUCCEEDED(hr) ) + { + ::SetRect(&rc,0,0,sz.GetWidth(),sz.GetHeight()); + hr = m_surfaceData->GetRenderTarget() + ->BindDC(reinterpret_cast(dc->GetHandle()),&rc); + } + + if ( SUCCEEDED(hr) ) + { + m_pRenderTarget.reset(m_surfaceData->GetRenderTarget()); + m_pSolidBrush.reset(m_surfaceData->GetSolidBrush()); + m_pPatternBrush.reset(m_surfaceData->GetPatternBrush()); + m_pRenderTarget->BeginDraw(); + } + } +} + +void SurfaceD2D::InitPixMap(int width, int height, Surface *surface_, WindowID) +{ + Release(); + + SurfaceD2D *psurfOther = static_cast(surface_); + wxCOMPtr pCompatibleRenderTarget; + D2D1_SIZE_F desiredSize = D2D1::SizeF(static_cast(width), + static_cast(height)); + D2D1_PIXEL_FORMAT desiredFormat; + +#ifdef __MINGW32__ + desiredFormat.format = DXGI_FORMAT_UNKNOWN; +#else + desiredFormat = psurfOther->m_pRenderTarget->GetPixelFormat(); +#endif + + desiredFormat.alphaMode = D2D1_ALPHA_MODE_IGNORE; + HRESULT hr = psurfOther->m_pRenderTarget->CreateCompatibleRenderTarget( + &desiredSize, NULL, &desiredFormat, + D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE, &pCompatibleRenderTarget); + if ( SUCCEEDED(hr) ) + { + m_pRenderTarget = pCompatibleRenderTarget; + m_pRenderTarget->BeginDraw(); + m_ownRenderTarget = true; + } + SetUnicodeMode(psurfOther->m_unicodeMode); + m_logPixelsY = psurfOther->LogPixelsY(); + m_surfaceData = psurfOther->m_surfaceData; +} + +void SurfaceD2D::Release() +{ + if ( m_pRenderTarget.get() ) + { + HRESULT hr; + while ( m_clipsActive ) + { + m_pRenderTarget->PopAxisAlignedClip(); + m_clipsActive--; + } + hr = m_pRenderTarget->EndDraw(); + if ( hr == D2DERR_RECREATE_TARGET && m_surfaceData && !m_ownRenderTarget ) + { + m_surfaceData->DiscardGraphicsResources(); + m_surfaceData->SetEditorPaintAbandoned(); + } + } + + m_pRenderTarget.reset(); + m_pSolidBrush.reset(); + m_pPatternBrush.reset(); + m_pTextFormat.reset(); + m_curFontID = NULL; +} + +bool SurfaceD2D::Initialised() +{ + return m_pRenderTarget.get() != NULL; +} + +void SurfaceD2D::PenColour(ColourDesired fore) +{ + D2DPenColour(fore); +} + +int SurfaceD2D::LogPixelsY() +{ + return m_logPixelsY; +} + +int SurfaceD2D::DeviceHeightFont(int points) +{ + return ::MulDiv(points, LogPixelsY(), 72); +} + +void SurfaceD2D::MoveTo(int x_, int y_) +{ + m_x = x_; + m_y = y_; +} + +static int Delta(int difference) +{ + if ( difference < 0 ) + return -1; + else if ( difference > 0 ) + return 1; + else + return 0; +} + +static float RoundFloat(float f) +{ + return float(int(f+0.5f)); +} + +void SurfaceD2D::LineTo(int x_, int y_) +{ + if ( m_pRenderTarget.get() ) + { + int xDiff = x_ - m_x; + int xDelta = Delta(xDiff); + int yDiff = y_ - m_y; + int yDelta = Delta(yDiff); + if ( (xDiff == 0) || (yDiff == 0) ) + { + // Horizontal or vertical lines can be more precisely drawn as a + // filled rectangle + int xEnd = x_ - xDelta; + int left = Platform::Minimum(m_x, xEnd); + int width = abs(m_x - xEnd) + 1; + int yEnd = y_ - yDelta; + int top = Platform::Minimum(m_y, yEnd); + int height = abs(m_y - yEnd) + 1; + D2D1_RECT_F rectangle1 = D2D1::RectF(static_cast(left), + static_cast(top), static_cast(left+width), + static_cast(top+height)); + m_pRenderTarget->FillRectangle(&rectangle1, m_pSolidBrush); + } + else if ( (abs(xDiff) == abs(yDiff)) ) + { + // 45 degree slope + m_pRenderTarget->DrawLine(D2D1::Point2F(m_x + 0.5f, m_y + 0.5f), + D2D1::Point2F(x_ + 0.5f - xDelta, y_ + 0.5f - yDelta), + m_pSolidBrush); + } + else + { + // Line has a different slope so difficult to avoid last pixel + m_pRenderTarget->DrawLine(D2D1::Point2F(m_x + 0.5f, m_y + 0.5f), + D2D1::Point2F(x_ + 0.5f, y_ + 0.5f), m_pSolidBrush); + } + m_x = x_; + m_y = y_; + } +} + +void SurfaceD2D::Polygon(Point *pts, int npts, ColourDesired fore, + ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + wxCOMPtr pFactory; + wxCOMPtr geometry; + wxCOMPtr sink; + + m_pRenderTarget->GetFactory(&pFactory); + + HRESULT hr = pFactory->CreatePathGeometry(&geometry); + if ( SUCCEEDED(hr) ) + { + hr = geometry->Open(&sink); + } + + if ( SUCCEEDED(hr) ) + { + sink->BeginFigure(D2D1::Point2F(pts[0].x + 0.5f, pts[0].y + 0.5f), + D2D1_FIGURE_BEGIN_FILLED); + for ( size_t i=1; i(npts); i++ ) + { + sink->AddLine(D2D1::Point2F(pts[i].x + 0.5f, pts[i].y + 0.5f)); + } + sink->EndFigure(D2D1_FIGURE_END_CLOSED); + sink->Close(); + + D2DPenColour(back); + m_pRenderTarget->FillGeometry(geometry,m_pSolidBrush); + D2DPenColour(fore); + m_pRenderTarget->DrawGeometry(geometry,m_pSolidBrush); + } + } +} + +void SurfaceD2D::RectangleDraw(PRectangle rc, ColourDesired fore, + ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + D2D1_RECT_F rectangle1 = D2D1::RectF(RoundFloat(rc.left) + 0.5f, + rc.top+0.5f, RoundFloat(rc.right) - 0.5f, rc.bottom-0.5f); + D2DPenColour(back); + m_pRenderTarget->FillRectangle(&rectangle1, m_pSolidBrush); + D2DPenColour(fore); + m_pRenderTarget->DrawRectangle(&rectangle1, m_pSolidBrush); + } +} + +void SurfaceD2D::FillRectangle(PRectangle rc, ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + D2DPenColour(back); + D2D1_RECT_F rectangle1 = D2D1::RectF(RoundFloat(rc.left), rc.top, + RoundFloat(rc.right), rc.bottom); + m_pRenderTarget->FillRectangle(&rectangle1, m_pSolidBrush); + } +} + +void SurfaceD2D::FillRectangle(PRectangle rc, Surface &surfacePattern) +{ + SurfaceD2D &surfOther = static_cast(surfacePattern); + surfOther.FlushDrawing(); + + wxCOMPtr pBitmap; + wxCOMPtr pCompatibleRenderTarget( + reinterpret_cast( + surfOther.m_pRenderTarget.get())); + + HRESULT hr = pCompatibleRenderTarget->GetBitmap(&pBitmap); + + if ( SUCCEEDED(hr) ) + { + if ( m_pPatternBrush.get() ) + { + m_pPatternBrush->SetBitmap(pBitmap); + } + else + { + D2D1_BITMAP_BRUSH_PROPERTIES brushProperties = + D2D1::BitmapBrushProperties(D2D1_EXTEND_MODE_WRAP, + D2D1_EXTEND_MODE_WRAP, + D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR); + + hr = m_pRenderTarget->CreateBitmapBrush(pBitmap, brushProperties, + &m_pPatternBrush); + } + } + + if ( SUCCEEDED(hr) ) + { + m_pRenderTarget->FillRectangle( + D2D1::RectF(rc.left, rc.top, rc.right, rc.bottom), + m_pPatternBrush); + } +} + +void SurfaceD2D::RoundedRectangle(PRectangle rc, ColourDesired fore, + ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + D2D1_ROUNDED_RECT roundedRectFill = { + D2D1::RectF(rc.left+1.0f, rc.top+1.0f, rc.right-1.0f, rc.bottom-1.0f), + 4, 4}; + D2DPenColour(back); + m_pRenderTarget->FillRoundedRectangle(roundedRectFill, m_pSolidBrush); + + D2D1_ROUNDED_RECT roundedRect = { + D2D1::RectF(rc.left + 0.5f, rc.top+0.5f, rc.right - 0.5f, rc.bottom-0.5f), + 4, 4}; + D2DPenColour(fore); + m_pRenderTarget->DrawRoundedRectangle(roundedRect, m_pSolidBrush); + } +} + +void SurfaceD2D::AlphaRectangle(PRectangle rc, int cornerSize, + ColourDesired fill, int alphaFill, + ColourDesired outline, int alphaOutline, + int /* flags*/ ) +{ + if ( m_pRenderTarget.get() ) + { + if (cornerSize == 0) + { + // When corner size is zero, draw square rectangle to prevent + // blurry pixels at corners + D2D1_RECT_F rectFill = D2D1::RectF(RoundFloat(rc.left) + 1.0f, + rc.top + 1.0f, RoundFloat(rc.right) - 1.0f, rc.bottom - 1.0f); + D2DPenColour(fill, alphaFill); + m_pRenderTarget->FillRectangle(rectFill, m_pSolidBrush); + + D2D1_RECT_F rectOutline = D2D1::RectF(RoundFloat(rc.left) + 0.5f, + rc.top + 0.5f, RoundFloat(rc.right) - 0.5f, rc.bottom - 0.5f); + D2DPenColour(outline, alphaOutline); + m_pRenderTarget->DrawRectangle(rectOutline, m_pSolidBrush); + } + else + { + const float cornerSizeF = static_cast(cornerSize); + D2D1_ROUNDED_RECT roundedRectFill = { + D2D1::RectF(RoundFloat(rc.left) + 1.0f, rc.top + 1.0f, + RoundFloat(rc.right) - 1.0f, rc.bottom - 1.0f), + cornerSizeF, cornerSizeF}; + D2DPenColour(fill, alphaFill); + m_pRenderTarget->FillRoundedRectangle(roundedRectFill, m_pSolidBrush); + + D2D1_ROUNDED_RECT roundedRect = { + D2D1::RectF(RoundFloat(rc.left) + 0.5f, rc.top + 0.5f, + RoundFloat(rc.right) - 0.5f, rc.bottom - 0.5f), + cornerSizeF, cornerSizeF}; + D2DPenColour(outline, alphaOutline); + m_pRenderTarget->DrawRoundedRectangle(roundedRect, m_pSolidBrush); + } + } +} + +void SurfaceD2D::DrawRGBAImage(PRectangle rc, int width, int height, + const unsigned char *pixelsImage) +{ + if ( m_pRenderTarget.get() ) + { + if (rc.Width() > width) + rc.left += static_cast((rc.Width() - width) / 2); + rc.right = rc.left + width; + if (rc.Height() > height) + rc.top += static_cast((rc.Height() - height) / 2); + rc.bottom = rc.top + height; + + wxVector image(height * width * 4); + for ( int yPixel=0; yPixel bitmap; + D2D1_SIZE_U size = D2D1::SizeU(width, height); + D2D1_BITMAP_PROPERTIES props = {{DXGI_FORMAT_B8G8R8A8_UNORM, + D2D1_ALPHA_MODE_PREMULTIPLIED}, 72.0, 72.0}; + HRESULT hr = m_pRenderTarget->CreateBitmap(size, &image[0], + width * 4, &props, &bitmap); + + if ( SUCCEEDED(hr) ) + { + D2D1_RECT_F rcDestination = {rc.left, rc.top, rc.right, rc.bottom}; + m_pRenderTarget->DrawBitmap(bitmap, rcDestination); + } + } +} + +void SurfaceD2D::Ellipse(PRectangle rc, ColourDesired fore, ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + FLOAT radius = rc.Width() / 2.0f; + D2D1_ELLIPSE ellipse = { + D2D1::Point2F((rc.left + rc.right) / 2.0f, + (rc.top + rc.bottom) / 2.0f), + radius, radius}; + + PenColour(back); + m_pRenderTarget->FillEllipse(ellipse, m_pSolidBrush); + PenColour(fore); + m_pRenderTarget->DrawEllipse(ellipse, m_pSolidBrush); + } +} + +void SurfaceD2D::Copy(PRectangle rc, Point from, Surface &surfaceSource) { + SurfaceD2D &surfOther = static_cast(surfaceSource); + surfOther.FlushDrawing(); + + wxCOMPtr pBitmap; + wxCOMPtr pCompatibleRenderTarget( + reinterpret_cast(surfOther.m_pRenderTarget.get())); + + HRESULT hr = pCompatibleRenderTarget->GetBitmap(&pBitmap); + + if ( SUCCEEDED(hr) ) + { + D2D1_RECT_F rcDestination = {rc.left, rc.top, rc.right, rc.bottom}; + D2D1_RECT_F rcSource = + {from.x, from.y, from.x + rc.Width(), from.y + rc.Height()}; + m_pRenderTarget->DrawBitmap(pBitmap, rcDestination, 1.0f, + D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR, rcSource); + + hr = m_pRenderTarget->Flush(); + if ( FAILED(hr) ) + { + Platform::DebugPrintf("Failed Flush 0x%x\n", hr); + } + } +} + +void SurfaceD2D::DrawTextNoClip(PRectangle rc, Font &font_, XYPOSITION ybase, + const char *s, int len, ColourDesired fore, + ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + FillRectangle(rc, back); + D2DPenColour(fore); + DrawTextCommon(rc, font_, ybase, s, len, ETO_OPAQUE); + } +} + +void SurfaceD2D::DrawTextClipped(PRectangle rc, Font &font_, XYPOSITION ybase, + const char *s, int len, ColourDesired fore, + ColourDesired back) +{ + if ( m_pRenderTarget.get() ) + { + FillRectangle(rc, back); + D2DPenColour(fore); + DrawTextCommon(rc, font_, ybase, s, len, ETO_OPAQUE | ETO_CLIPPED); + } +} + +void SurfaceD2D::DrawTextTransparent(PRectangle rc, Font &font_, + XYPOSITION ybase, const char *s, int len, + ColourDesired fore) +{ + // Avoid drawing spaces in transparent mode + for ( int i=0; i pTextLayout; + DWRITE_TEXT_METRICS textMetrics = {0,0,0,0,0,0,0,0,0}; + + HRESULT hr = m_pDWriteFactory->CreateTextLayout(tbuf.wc_str(), + tbuf.Length(), m_pTextFormat, FLT_MAX, FLT_MAX, &pTextLayout); + + if ( SUCCEEDED(hr) ) + { + hr = pTextLayout->GetMetrics(&textMetrics); + } + + if ( SUCCEEDED(hr) ) + { + width = textMetrics.widthIncludingTrailingWhitespace; + } + } + return width; +} + +void SurfaceD2D::MeasureWidths(Font &font_, const char *s, int len, + XYPOSITION *positions) +{ + int fit = 0; + wxString tbuf = stc2wx(s,len); + wxVector poses; + poses.reserve(tbuf.Length()); + poses.resize(tbuf.Length()); + + fit = tbuf.Length(); + const int clusters = 1000; + DWRITE_CLUSTER_METRICS clusterMetrics[clusters]; + UINT32 count = 0; + SetFont(font_); + + if ( m_pDWriteFactory.get() && m_pTextFormat.get() ) + { + wxCOMPtr pTextLayout; + + HRESULT hr = m_pDWriteFactory->CreateTextLayout(tbuf.wc_str(), + tbuf.Length(), m_pTextFormat, FLT_MAX, FLT_MAX, &pTextLayout); + if ( !SUCCEEDED(hr) ) + return; + + hr = pTextLayout->GetClusterMetrics(clusterMetrics, clusters, &count); + if ( !SUCCEEDED(hr) ) + return; + + // A cluster may be more than one WCHAR, such as for "ffi" which is a + // ligature in the Candara font + FLOAT position = 0.0f; + size_t ti=0; + for ( size_t ci=0; ci(s); + int i=0; + while ( ui= (0x80 + 0x40 + 0x20 + 0x10)) + { + lenChar = 4; + ui++; + } + else if (uch >= (0x80 + 0x40 + 0x20)) + { + lenChar = 3; + } + else if (uch >= (0x80)) + { + lenChar = 2; + } + + for ( unsigned int bytePos=0; (bytePos 0 ) + lastPos = positions[i-1]; + while ( i(len); kk++ ) + { + positions[kk] = poses[kk]; + } + } +} + +XYPOSITION SurfaceD2D::WidthChar(Font &font_, char ch) +{ + FLOAT width = 1.0; + SetFont(font_); + if ( m_pDWriteFactory.get() && m_pTextFormat.get() ) + { + wxCOMPtr pTextLayout; + const WCHAR wch = ch; + HRESULT hr = m_pDWriteFactory->CreateTextLayout(&wch, 1, m_pTextFormat, + 1000.0, 1000.0, &pTextLayout); + + if ( SUCCEEDED(hr) ) + { + DWRITE_TEXT_METRICS textMetrics; + if (SUCCEEDED(pTextLayout->GetMetrics(&textMetrics))) + width = textMetrics.widthIncludingTrailingWhitespace; + } + } + return width; +} + +XYPOSITION SurfaceD2D::Ascent(Font &font_) +{ + SetFont(font_); + return ceil(m_yAscent); +} + +XYPOSITION SurfaceD2D::Descent(Font &font_) +{ + SetFont(font_); + return ceil(m_yDescent); +} + +XYPOSITION SurfaceD2D::InternalLeading(Font &font_) +{ + SetFont(font_); + return floor(m_yInternalLeading); +} + +XYPOSITION SurfaceD2D::ExternalLeading(Font &) +{ + // Not implemented, always return one + return 1; +} + +XYPOSITION SurfaceD2D::Height(Font &font_) +{ + return Ascent(font_) + Descent(font_); +} + +XYPOSITION SurfaceD2D::AverageCharWidth(Font &font_) +{ + SetFont(font_); + return m_averageCharWidth; +} + +void SurfaceD2D::SetClip(PRectangle rc) +{ + if ( m_pRenderTarget.get() ) + { + D2D1_RECT_F rcClip = {rc.left, rc.top, rc.right, rc.bottom}; + m_pRenderTarget->PushAxisAlignedClip(rcClip, D2D1_ANTIALIAS_MODE_ALIASED); + m_clipsActive++; + } +} + +void SurfaceD2D::FlushCachedState() +{ +} + +void SurfaceD2D::SetUnicodeMode(bool unicodeMode_) +{ + m_unicodeMode=unicodeMode_; +} + +void SurfaceD2D::SetDBCSMode(int WXUNUSED(codePage_)) +{ +} + +void SurfaceD2D::SetFont(Font &font_) +{ + FontID id = font_.GetID(); + + if (m_curFontID != id) + { + wxFontWithAscent *pfm = static_cast(id); + SurfaceFontDataD2D* sfd = + static_cast(pfm->GetSurfaceFontData()); + + if ( sfd->Initialised() ) + { + m_pTextFormat.reset(sfd->GetFormat()); + m_yAscent = sfd->GetAscent(); + m_yDescent = sfd->GetDescent(); + m_yInternalLeading = sfd->GetInternalLeading(); + m_averageCharWidth = sfd->GetAverageCharWidth(); + + if ( m_pRenderTarget.get() ) + { + D2D1_TEXT_ANTIALIAS_MODE aaMode = sfd->GetFontQuality(); + + if ( m_surfaceData && m_surfaceData->Initialised() ) + { + if ( aaMode == D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE ) + { + m_pRenderTarget->SetTextRenderingParams( + m_surfaceData->GetCustomClearTypeRenderingParams()); + } + else + { + m_pRenderTarget->SetTextRenderingParams( + m_surfaceData->GetDefaultRenderingParams()); + } + } + + m_pRenderTarget->SetTextAntialiasMode(aaMode); + } + + m_curFontID = id; + } + } +} + +void SurfaceD2D::SetScale(wxDC* dc) +{ + wxSize sz = dc->GetPPI(); + m_logPixelsY = sz.GetY(); +} + +HRESULT SurfaceD2D::FlushDrawing() +{ + return m_pRenderTarget->Flush(); +} + +void SurfaceD2D::D2DPenColour(ColourDesired fore, int alpha) +{ + if ( m_pRenderTarget.get() ) + { + D2D_COLOR_F col; + col.r = (fore.AsLong() & 0xff) / 255.0f; + col.g = ((fore.AsLong() & 0xff00) >> 8) / 255.0f; + col.b = (fore.AsLong() >> 16) / 255.0f; + col.a = alpha / 255.0f; + if ( m_pSolidBrush.get() ) + { + m_pSolidBrush->SetColor(col); + } + else + { + HRESULT hr = m_pRenderTarget->CreateSolidColorBrush(col, &m_pSolidBrush); + if ( !SUCCEEDED(hr) ) + { + m_pSolidBrush.reset(); + } + } + } +} + +void SurfaceD2D::DrawTextCommon(PRectangle rc, Font &font_, XYPOSITION ybase, + const char *s, int len, UINT fuOptions) +{ + SetFont(font_); + + if ( m_pRenderTarget.get() && m_pSolidBrush.get() && m_pTextFormat.get() ) + { + // Explicitly creating a text layout appears a little faster + wxCOMPtr pTextLayout; + wxString tbuf = stc2wx(s, len); + HRESULT hr; + + if ( fuOptions & ETO_CLIPPED ) + { + D2D1_RECT_F rcClip = {rc.left, rc.top, rc.right, rc.bottom}; + m_pRenderTarget->PushAxisAlignedClip(rcClip, + D2D1_ANTIALIAS_MODE_ALIASED); + } + + hr = m_pDWriteFactory->CreateTextLayout(tbuf.wc_str(), tbuf.Length(), + m_pTextFormat, rc.Width(), rc.Height(), &pTextLayout); + + if ( SUCCEEDED(hr) ) + { + D2D1_POINT_2F origin = {rc.left, ybase-m_yAscent}; + m_pRenderTarget->DrawTextLayout(origin, pTextLayout, m_pSolidBrush, + D2D1_DRAW_TEXT_OPTIONS_NONE); + } + + if ( fuOptions & ETO_CLIPPED ) + { + m_pRenderTarget->PopAxisAlignedClip(); + } + } +} + +#endif // wxUSE_GRAPHICS_DIRECT2D + +Surface *Surface::Allocate(int technology) { +#if wxUSE_GRAPHICS_DIRECT2D + if ( technology == wxSTC_TECHNOLOGY_DIRECTWRITE ) { + return new SurfaceD2D; + } +#endif // wxUSE_GRAPHICS_DIRECT2D return new SurfaceImpl; } diff --git a/src/stc/PlatWX.h b/src/stc/PlatWX.h index ac762ddf8e..a2a86da45b 100644 --- a/src/stc/PlatWX.h +++ b/src/stc/PlatWX.h @@ -6,3 +6,69 @@ wxRect wxRectFromPRectangle(PRectangle prc); PRectangle PRectangleFromwxRect(wxRect rc); wxColour wxColourFromCD(const ColourDesired& ca); +class SurfaceData +{ + public: + virtual ~SurfaceData(){} +}; + +#if wxUSE_GRAPHICS_DIRECT2D + +#include +#include + +class ScintillaWX; + +class SurfaceDataD2D: public SurfaceData +{ + public: + SurfaceDataD2D(ScintillaWX*); + bool Initialised() const; + void DiscardGraphicsResources(); + HRESULT CreateGraphicsResources(); + void SetEditorPaintAbandoned(); + + ID2D1DCRenderTarget* GetRenderTarget() const {return m_pRenderTarget.get();} + ID2D1SolidColorBrush* GetSolidBrush() const {return m_pSolidBrush.get();} + ID2D1BitmapBrush* GetPatternBrush() const {return m_pPatternBrush.get();} + IDWriteRenderingParams* GetDefaultRenderingParams() const + {return m_defaultRenderingParams;} + IDWriteRenderingParams* GetCustomClearTypeRenderingParams() const + {return m_customClearTypeRenderingParams;} + + private: + wxCOMPtr m_pD2DFactory; + wxCOMPtr m_pDWriteFactory; + wxCOMPtr m_pRenderTarget; + wxCOMPtr m_pSolidBrush; + wxCOMPtr m_pPatternBrush; + wxCOMPtr m_defaultRenderingParams; + wxCOMPtr m_customClearTypeRenderingParams; + + ScintillaWX* m_editor; +}; + +class SurfaceFontDataD2D: public SurfaceData +{ + public: + SurfaceFontDataD2D(const FontParameters& fp); + bool Initialised() const; + + XYPOSITION GetAscent() const {return m_ascent;} + XYPOSITION GetDescent() const {return m_descent;} + XYPOSITION GetInternalLeading() const {return m_internalLeading;} + XYPOSITION GetAverageCharWidth() const {return m_averageCharWidth;} + + D2D1_TEXT_ANTIALIAS_MODE GetFontQuality() const {return m_aaMode;} + IDWriteTextFormat* GetFormat() const {return m_pTextFormat.get();} + + private: + XYPOSITION m_ascent; + XYPOSITION m_descent; + XYPOSITION m_internalLeading; + XYPOSITION m_averageCharWidth; + D2D1_TEXT_ANTIALIAS_MODE m_aaMode; + wxCOMPtr m_pTextFormat; +}; + +#endif // wxUSE_GRAPHICS_DIRECT2D diff --git a/src/stc/ScintillaWX.cpp b/src/stc/ScintillaWX.cpp index deaacadbfe..ba6b2641e5 100644 --- a/src/stc/ScintillaWX.cpp +++ b/src/stc/ScintillaWX.cpp @@ -118,6 +118,7 @@ public: m_ct(ct), m_swx(swx), m_cx(wxDefaultCoord), m_cy(wxDefaultCoord) { SetBackgroundStyle(wxBG_STYLE_CUSTOM); + SetName("wxSTCCallTip"); } ~wxSTCCallTip() { @@ -134,7 +135,7 @@ public: void OnPaint(wxPaintEvent& WXUNUSED(evt)) { wxAutoBufferedPaintDC dc(this); - Surface* surfaceWindow = Surface::Allocate(0); + Surface* surfaceWindow = Surface::Allocate(m_swx->technology); surfaceWindow->Init(&dc, m_ct->wDraw.GetID()); m_ct->PaintCT(surfaceWindow); surfaceWindow->Release(); @@ -270,6 +271,8 @@ ScintillaWX::ScintillaWX(wxStyledTextCtrl* win) { timers[tickScroll] = new wxSTCTimer(this,tickScroll); timers[tickWiden] = new wxSTCTimer(this,tickWiden); timers[tickDwell] = new wxSTCTimer(this,tickDwell); + + m_surfaceData = NULL; } @@ -278,6 +281,11 @@ ScintillaWX::~ScintillaWX() { delete i->second; } timers.clear(); + + if ( m_surfaceData != NULL ) { + delete m_surfaceData; + } + Finalise(); } @@ -817,6 +825,36 @@ sptr_t ScintillaWX::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) } #endif +#if wxUSE_GRAPHICS_DIRECT2D + case SCI_SETTECHNOLOGY: + if ((wParam == SC_TECHNOLOGY_DEFAULT) || (wParam == SC_TECHNOLOGY_DIRECTWRITE)) { + if (technology != static_cast(wParam)) { + SurfaceDataD2D* newSurfaceData(NULL); + + if (static_cast(wParam) > SC_TECHNOLOGY_DEFAULT) { + newSurfaceData = new SurfaceDataD2D(this); + + if (!newSurfaceData->Initialised()) { + // Failed to load Direct2D or DirectWrite so no effect + delete newSurfaceData; + return 0; + } + } + + technology = static_cast(wParam); + if ( m_surfaceData ) { + delete m_surfaceData; + } + m_surfaceData = newSurfaceData; + + // Invalidate all cached information including layout. + DropGraphics(true); + InvalidateStyleRedraw(); + } + } + break; +#endif + #ifdef SCI_LEXER case SCI_LOADLEXERLIBRARY: LexerManager::GetInstance()->Load((const char*)lParam); diff --git a/src/stc/ScintillaWX.h b/src/stc/ScintillaWX.h index 6ab764c5f3..d4d03f9c0e 100644 --- a/src/stc/ScintillaWX.h +++ b/src/stc/ScintillaWX.h @@ -87,6 +87,7 @@ class WXDLLIMPEXP_FWD_CORE wxDC; class WXDLLIMPEXP_FWD_STC wxStyledTextCtrl; // forward class ScintillaWX; class wxSTCTimer; +class SurfaceData; //---------------------------------------------------------------------- // Helper classes @@ -196,6 +197,8 @@ public: void ClipChildren(wxDC& dc, PRectangle rect); void SetUseAntiAliasing(bool useAA); bool GetUseAntiAliasing(); + SurfaceData* GetSurfaceData() const {return m_surfaceData;} + void SetPaintAbandoned(){paintState = paintAbandoned;} private: bool capturedMouse; @@ -212,6 +215,7 @@ private: int wheelVRotation; int wheelHRotation; + SurfaceData* m_surfaceData; // For use in creating a system caret bool HasCaretSizeChanged(); diff --git a/src/stc/gen_docs.py b/src/stc/gen_docs.py index 949040e8e3..c66ff27f77 100644 --- a/src/stc/gen_docs.py +++ b/src/stc/gen_docs.py @@ -517,6 +517,7 @@ docsMap = { 'SetMouseDwellTime':'Notifications', 'GetBufferedDraw':'OtherSettings', 'GetCodePage':'OtherSettings', + 'GetFontQuality':'OtherSettings', 'GetFocus':'OtherSettings', 'GetIMEInteraction':'OtherSettings', 'GetPhasesDraw':'OtherSettings', @@ -525,6 +526,7 @@ docsMap = { 'SetBufferedDraw':'OtherSettings', 'SetCodePage':'OtherSettings', 'SetFocus':'OtherSettings', + 'SetFontQuality':'OtherSettings', 'SetIMEInteraction':'OtherSettings', 'SetLayoutCache':'OtherSettings', 'SetPhasesDraw':'OtherSettings', @@ -840,7 +842,9 @@ docSubstitutions = { 'SetSelectionMode':{'SC_SEL_STREAM':'wxSTC_SEL_STREAM', 'SC_SEL_RECTANGLE':'wxSTC_SEL_RECTANGLE','SC_SEL_THIN':'wxSTC_SEL_THIN', - 'SC_SEL_LINES':'wxSTC_SEL_LINES'} + 'SC_SEL_LINES':'wxSTC_SEL_LINES'}, + + 'SetFontQuality':{' from the FontQuality enumeration':''} } @@ -1033,10 +1037,24 @@ extendedDocs = { '@endlink constants.',), 'SetTechnology': - ('The input should be one of the', - '@link wxStyledTextCtrl::wxSTC_TECHNOLOGY_DEFAULT wxSTC_TECHNOLOGY_* ' + ('@remarks', + 'For the wxMSW port, the input can be either wxSTC_TECHNOLOGY_DEFAULT', + 'or wxSTC_TECHNOLOGY_DIRECTWRITE. With other ports, this method has', + 'no effect.',), + + 'GetFontQuality': + ('The return value will be one of the', + '@link wxStyledTextCtrl::wxSTC_EFF_QUALITY_DEFAULT wxSTC_EFF_QUALITY_* ' '@endlink constants.',), + 'SetFontQuality': + ('The input should be one of the', + '@link wxStyledTextCtrl::wxSTC_EFF_QUALITY_DEFAULT wxSTC_EFF_QUALITY_* ' + '@endlink constants.', + '@remarks', + 'This method only has any effect with the wxMSW port and when', + 'technology has been set to wxSTC_TECHNOLOGY_DIRECTWRITE.',), + 'GetIMEInteraction': ('The return value will be one of the', '@link wxStyledTextCtrl::wxSTC_IME_WINDOWED wxSTC_IME_* @endlink constants.',), @@ -1362,6 +1380,7 @@ sinceAnnotations= { 'FoldDisplayTextSetStyle':'3.1.1', 'GetDirectFunction':'3.1.1', 'GetDirectPointer':'3.1.1', + 'GetFontQuality':'3.1.1', 'GetIdleStyling':'3.1.1', 'GetLexerLanguage':'3.1.1', 'GetMarginBackN':'3.1.1', @@ -1374,6 +1393,7 @@ sinceAnnotations= { 'MultiEdgeClearAll':'3.1.1', 'MultipleSelectAddEach':'3.1.1', 'MultipleSelectAddNext':'3.1.1', + 'SetFontQuality':'3.1.1', 'SetIdleStyling':'3.1.1', 'SetMarginBackN':'3.1.1', 'SetMargins':'3.1.1', diff --git a/src/stc/gen_iface.py b/src/stc/gen_iface.py index cbba253924..deabf2962b 100755 --- a/src/stc/gen_iface.py +++ b/src/stc/gen_iface.py @@ -895,8 +895,6 @@ methodOverrideMap = { return stc2wx(buf);''' ), - 'SetFontQuality' : (None, 0, 0), - 'GetFontQuality' : (None, 0, 0), 'SetSelection' : (None, 0, 0), 'GetCharacterPointer' : (0, diff --git a/src/stc/stc.cpp b/src/stc/stc.cpp index 79b83ca1f5..b4602db8da 100644 --- a/src/stc/stc.cpp +++ b/src/stc/stc.cpp @@ -231,6 +231,10 @@ bool wxStyledTextCtrl::Create(wxWindow *parent, SetBufferedDraw(true); #endif +#if wxUSE_GRAPHICS_DIRECT2D + SetFontQuality(wxSTC_EFF_QUALITY_DEFAULT); +#endif + return true; } @@ -2533,6 +2537,18 @@ void wxStyledTextCtrl::SetPhasesDraw(int phases) SendMsg(SCI_SETPHASESDRAW, phases, 0); } +// Choose the quality level for text. +void wxStyledTextCtrl::SetFontQuality(int fontQuality) +{ + SendMsg(SCI_SETFONTQUALITY, fontQuality, 0); +} + +// Retrieve the quality level for text. +int wxStyledTextCtrl::GetFontQuality() const +{ + return SendMsg(SCI_GETFONTQUALITY, 0, 0); +} + // Scroll so that a display line is at the top of the display. void wxStyledTextCtrl::SetFirstVisibleLine(int displayLine) { diff --git a/src/stc/stc.cpp.in b/src/stc/stc.cpp.in index fc3c80485f..d4af95790c 100644 --- a/src/stc/stc.cpp.in +++ b/src/stc/stc.cpp.in @@ -231,6 +231,10 @@ bool wxStyledTextCtrl::Create(wxWindow *parent, SetBufferedDraw(true); #endif +#if wxUSE_GRAPHICS_DIRECT2D + SetFontQuality(wxSTC_EFF_QUALITY_DEFAULT); +#endif + return true; } From df1456e4e2c2ac029ebcad17db5f5eb3478d1bc6 Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Thu, 25 Jan 2018 16:08:33 -0600 Subject: [PATCH 212/916] Apply erans patch to allow building with MinGW --- src/msw/graphicsd2d.cpp | 6 ++++++ src/stc/PlatWX.cpp | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/src/msw/graphicsd2d.cpp b/src/msw/graphicsd2d.cpp index ad502cc43e..b953deee2f 100644 --- a/src/msw/graphicsd2d.cpp +++ b/src/msw/graphicsd2d.cpp @@ -40,6 +40,12 @@ #include #include +#ifdef __MINGW64_TOOLCHAIN__ +#ifndef DRWITE_E_NOFONT +#define DWRITE_E_NOFONT _HRESULT_TYPEDEF_(0x88985002) +#endif +#endif + #if wxD2D_DEVICE_CONTEXT_SUPPORTED #include #include diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index 0aa5a0f2a0..cf25b6dd96 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -48,6 +48,8 @@ #if wxUSE_GRAPHICS_DIRECT2D #include "ScintillaWX.h" +#include +#include "wx/dcscreen.h" #endif Point Point::FromLong(long lpoint) { @@ -732,10 +734,12 @@ SurfaceFontDataD2D::SurfaceFontDataD2D(const FontParameters& fp) { fontWeight = DWRITE_FONT_WEIGHT_LIGHT; } +#ifndef __MINGW64_TOOLCHAIN__ else if ( weight <= 350 ) { fontWeight = DWRITE_FONT_WEIGHT_SEMI_LIGHT; } +#endif else if ( weight <= 400 ) { fontWeight = DWRITE_FONT_WEIGHT_NORMAL; From 8d75368a301fe03d9c132c82b4596bbe637fdbca Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 18:36:14 +0100 Subject: [PATCH 213/916] Minor formatting and style fixes to the previous commit Fix indentation and spacing. Also declare some variables when initializing them and make them const if they don't change later. --- src/msw/graphicsd2d.cpp | 3 +- src/stc/PlatWX.cpp | 51 +++++++++++-------------- src/stc/PlatWX.h | 84 ++++++++++++++++++++--------------------- 3 files changed, 66 insertions(+), 72 deletions(-) diff --git a/src/msw/graphicsd2d.cpp b/src/msw/graphicsd2d.cpp index b953deee2f..243a4ad6ba 100644 --- a/src/msw/graphicsd2d.cpp +++ b/src/msw/graphicsd2d.cpp @@ -4500,7 +4500,8 @@ wxGraphicsRenderer* wxGraphicsRenderer::GetDirect2DRenderer() return gs_D2DRenderer; } -wxD2DRenderer::wxD2DRenderer():m_direct2dFactory(wxD2D1Factory()) +wxD2DRenderer::wxD2DRenderer() + : m_direct2dFactory(wxD2D1Factory()) { if ( m_direct2dFactory.get() == NULL ) { diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index cf25b6dd96..4dbe0e42f0 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -91,16 +91,14 @@ class wxFontWithAscent : public wxFont public: explicit wxFontWithAscent(const wxFont &font) : wxFont(font), - m_ascent(0),m_surfaceFontData(NULL) + m_ascent(0), + m_surfaceFontData(NULL) { } - ~wxFontWithAscent() + virtual ~wxFontWithAscent() { - if ( m_surfaceFontData ) - { - delete m_surfaceFontData; - } + delete m_surfaceFontData; } static wxFontWithAscent* FromFID(FontID fid) @@ -111,8 +109,8 @@ public: void SetAscent(int ascent) { m_ascent = ascent; } int GetAscent() const { return m_ascent; } - SurfaceData* GetSurfaceFontData() const {return m_surfaceFontData;} - void SetSurfaceFontData(SurfaceData* data){m_surfaceFontData=data;} + SurfaceData* GetSurfaceFontData() const { return m_surfaceFontData; } + void SetSurfaceFontData(SurfaceData* data) { m_surfaceFontData=data; } private: int m_ascent; @@ -847,10 +845,12 @@ bool SurfaceFontDataD2D::Initialised() const //---------------------------------------------------------------------- // SurfaceDataD2D -SurfaceDataD2D::SurfaceDataD2D(ScintillaWX* editor):m_editor(editor), - m_pD2DFactory(::wxD2D1Factory()), m_pDWriteFactory(::wxDWriteFactory()) +SurfaceDataD2D::SurfaceDataD2D(ScintillaWX* editor) + : m_editor(editor), + m_pD2DFactory(::wxD2D1Factory()), + m_pDWriteFactory(::wxDWriteFactory()) { - if( Initialised() ) + if ( Initialised() ) { HRESULT hr = m_pDWriteFactory->CreateRenderingParams(&m_defaultRenderingParams); @@ -1044,7 +1044,8 @@ private: FontID m_curFontID; }; -SurfaceD2D::SurfaceD2D():m_pDWriteFactory(::wxDWriteFactory()) +SurfaceD2D::SurfaceD2D() + : m_pDWriteFactory(::wxDWriteFactory()) { m_unicodeMode = false; m_x = 0; @@ -1068,7 +1069,7 @@ SurfaceD2D::~SurfaceD2D() Release(); } -void SurfaceD2D::Init(WindowID WXUNUSED(wid) ) +void SurfaceD2D::Init(WindowID WXUNUSED(wid)) { Release(); @@ -1080,32 +1081,24 @@ void SurfaceD2D::Init(SurfaceID sid, WindowID wid) { Release(); - wxDC* dc = static_cast(sid); - wxStyledTextCtrl* stc(NULL); - ScintillaWX* sciwx(NULL); wxWindow* win = wxDynamicCast(wid,wxWindow); - wxSize sz = dc->GetSize(); - RECT rc; - HRESULT hr; - if ( win && win->GetName() == "wxSTCCallTip" ) - { - stc = wxDynamicCast(win->GetParent(),wxStyledTextCtrl); - } - else - { - stc = wxDynamicCast(wid,wxStyledTextCtrl); - } + win = win->GetParent(); + wxStyledTextCtrl* const stc = wxDynamicCast(wid, wxStyledTextCtrl); if ( stc ) { + wxDC* const dc = static_cast(sid); + const wxSize sz = dc->GetSize(); SetScale(dc); - sciwx = reinterpret_cast(stc->GetDirectPointer()); + ScintillaWX* const + sciwx = reinterpret_cast(stc->GetDirectPointer()); m_surfaceData = static_cast(sciwx->GetSurfaceData()); - hr = m_surfaceData->CreateGraphicsResources(); + HRESULT hr = m_surfaceData->CreateGraphicsResources(); if ( SUCCEEDED(hr) ) { + RECT rc; ::SetRect(&rc,0,0,sz.GetWidth(),sz.GetHeight()); hr = m_surfaceData->GetRenderTarget() ->BindDC(reinterpret_cast(dc->GetHandle()),&rc); diff --git a/src/stc/PlatWX.h b/src/stc/PlatWX.h index a2a86da45b..3b051198c6 100644 --- a/src/stc/PlatWX.h +++ b/src/stc/PlatWX.h @@ -8,67 +8,67 @@ wxColour wxColourFromCD(const ColourDesired& ca); class SurfaceData { - public: - virtual ~SurfaceData(){} +public: + virtual ~SurfaceData(){} }; #if wxUSE_GRAPHICS_DIRECT2D -#include -#include +#include "wx/msw/private/graphicsd2d.h" +#include "wx/msw/private/comptr.h" class ScintillaWX; class SurfaceDataD2D: public SurfaceData { - public: - SurfaceDataD2D(ScintillaWX*); - bool Initialised() const; - void DiscardGraphicsResources(); - HRESULT CreateGraphicsResources(); - void SetEditorPaintAbandoned(); +public: + SurfaceDataD2D(ScintillaWX*); + bool Initialised() const; + void DiscardGraphicsResources(); + HRESULT CreateGraphicsResources(); + void SetEditorPaintAbandoned(); - ID2D1DCRenderTarget* GetRenderTarget() const {return m_pRenderTarget.get();} - ID2D1SolidColorBrush* GetSolidBrush() const {return m_pSolidBrush.get();} - ID2D1BitmapBrush* GetPatternBrush() const {return m_pPatternBrush.get();} - IDWriteRenderingParams* GetDefaultRenderingParams() const - {return m_defaultRenderingParams;} - IDWriteRenderingParams* GetCustomClearTypeRenderingParams() const - {return m_customClearTypeRenderingParams;} + ID2D1DCRenderTarget* GetRenderTarget() const { return m_pRenderTarget.get(); } + ID2D1SolidColorBrush* GetSolidBrush() const { return m_pSolidBrush.get(); } + ID2D1BitmapBrush* GetPatternBrush() const { return m_pPatternBrush.get(); } + IDWriteRenderingParams* GetDefaultRenderingParams() const + { return m_defaultRenderingParams; } + IDWriteRenderingParams* GetCustomClearTypeRenderingParams() const + { return m_customClearTypeRenderingParams; } - private: - wxCOMPtr m_pD2DFactory; - wxCOMPtr m_pDWriteFactory; - wxCOMPtr m_pRenderTarget; - wxCOMPtr m_pSolidBrush; - wxCOMPtr m_pPatternBrush; - wxCOMPtr m_defaultRenderingParams; - wxCOMPtr m_customClearTypeRenderingParams; +private: + wxCOMPtr m_pD2DFactory; + wxCOMPtr m_pDWriteFactory; + wxCOMPtr m_pRenderTarget; + wxCOMPtr m_pSolidBrush; + wxCOMPtr m_pPatternBrush; + wxCOMPtr m_defaultRenderingParams; + wxCOMPtr m_customClearTypeRenderingParams; - ScintillaWX* m_editor; + ScintillaWX* m_editor; }; class SurfaceFontDataD2D: public SurfaceData { - public: - SurfaceFontDataD2D(const FontParameters& fp); - bool Initialised() const; +public: + SurfaceFontDataD2D(const FontParameters& fp); + bool Initialised() const; - XYPOSITION GetAscent() const {return m_ascent;} - XYPOSITION GetDescent() const {return m_descent;} - XYPOSITION GetInternalLeading() const {return m_internalLeading;} - XYPOSITION GetAverageCharWidth() const {return m_averageCharWidth;} + XYPOSITION GetAscent() const { return m_ascent; } + XYPOSITION GetDescent() const { return m_descent; } + XYPOSITION GetInternalLeading() const { return m_internalLeading; } + XYPOSITION GetAverageCharWidth() const { return m_averageCharWidth; } - D2D1_TEXT_ANTIALIAS_MODE GetFontQuality() const {return m_aaMode;} - IDWriteTextFormat* GetFormat() const {return m_pTextFormat.get();} + D2D1_TEXT_ANTIALIAS_MODE GetFontQuality() const { return m_aaMode; } + IDWriteTextFormat* GetFormat() const { return m_pTextFormat.get(); } - private: - XYPOSITION m_ascent; - XYPOSITION m_descent; - XYPOSITION m_internalLeading; - XYPOSITION m_averageCharWidth; - D2D1_TEXT_ANTIALIAS_MODE m_aaMode; - wxCOMPtr m_pTextFormat; +private: + XYPOSITION m_ascent; + XYPOSITION m_descent; + XYPOSITION m_internalLeading; + XYPOSITION m_averageCharWidth; + D2D1_TEXT_ANTIALIAS_MODE m_aaMode; + wxCOMPtr m_pTextFormat; }; #endif // wxUSE_GRAPHICS_DIRECT2D From 4e6763ccc2fdfbd81d6e9d069e904bb250c95a97 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 18:38:01 +0100 Subject: [PATCH 214/916] Fix harmless unused parameter warning in wxSTC code The recently added "technology" parameter is unused when Direct2D is not used, avoid compiler complains about this. --- src/stc/PlatWX.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index 4dbe0e42f0..05002340fc 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -1858,6 +1858,8 @@ void SurfaceD2D::DrawTextCommon(PRectangle rc, Font &font_, XYPOSITION ybase, #endif // wxUSE_GRAPHICS_DIRECT2D Surface *Surface::Allocate(int technology) { + wxUnusedVar(technology); + #if wxUSE_GRAPHICS_DIRECT2D if ( technology == wxSTC_TECHNOLOGY_DIRECTWRITE ) { return new SurfaceD2D; From b1e59a6d60cc7ccd0f15445cfc00dcde3b0cb884 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 19:30:39 +0100 Subject: [PATCH 215/916] Add wxFloatingPointValidator::SetFactor() This allows displaying values in percents (or also currency units and subunits, for example) without changing the actually stored value. --- docs/changes.txt | 1 + include/wx/valnum.h | 12 +++++++++- interface/wx/valnum.h | 13 ++++++++++ samples/validate/validate.cpp | 45 +++++++++++++++++++++++++++++------ samples/validate/validate.h | 2 ++ src/common/valnum.cpp | 13 +++++++--- 6 files changed, 75 insertions(+), 11 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index c8e851886d..27f23deb7e 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -175,6 +175,7 @@ All (GUI): - Add Scintilla FineTicker methods to wxSTC (NewPagodi). - Add wxFontPickerCtrl::SetMinPointSize() (Andreas Falkenhahn). - Add Set/GetFooter/Text/Icon() to wxRichMessageDialog (Tobias Taschner) +- Add wxFloatingPointValidator::SetFactor(). wxGTK: diff --git a/include/wx/valnum.h b/include/wx/valnum.h index 42f7675a76..3f9be1d99c 100644 --- a/include/wx/valnum.h +++ b/include/wx/valnum.h @@ -352,6 +352,11 @@ public: // supported by the type handled by the validator. void SetPrecision(unsigned precision) { m_precision = precision; } + // Set multiplier applied for displaying the value, e.g. 100 if the value + // should be displayed in percents, so that the variable containing 0.5 + // would be displayed as 50. + void SetFactor(double factor) { m_factor = factor; } + protected: // Notice that we can't use "long double" here because it's not supported // by wxNumberFormatter yet, so restrict ourselves to just double (and @@ -361,12 +366,14 @@ protected: wxFloatingPointValidatorBase(int style) : wxNumValidatorBase(style) { + m_factor = 1.0; } wxFloatingPointValidatorBase(const wxFloatingPointValidatorBase& other) : wxNumValidatorBase(other) { m_precision = other.m_precision; + m_factor = other.m_factor; m_min = other.m_min; m_max = other.m_max; @@ -374,7 +381,7 @@ protected: // Provide methods for wxNumValidator use. wxString ToString(LongestValueType value) const; - static bool FromString(const wxString& s, LongestValueType *value); + bool FromString(const wxString& s, LongestValueType *value) const; void DoSetMin(LongestValueType min) { m_min = min; } void DoSetMax(LongestValueType max) { m_max = max; } @@ -391,6 +398,9 @@ private: // Maximum number of decimals digits after the decimal separator. unsigned m_precision; + // Factor applied for the displayed the value. + double m_factor; + // Minimal and maximal values accepted (inclusive). LongestValueType m_min, m_max; diff --git a/interface/wx/valnum.h b/interface/wx/valnum.h index 7f65786821..8bb6d6346d 100644 --- a/interface/wx/valnum.h +++ b/interface/wx/valnum.h @@ -346,6 +346,19 @@ public: constructor. */ void SetPrecision(unsigned precision); + + /** + Set factor used for displaying the value. + + The value associated with the validator is multiplied by the factor + before displaying it and divided by it when retrieving its value from + the control. By default, the @a factor is 1, so the actual value is not + affected by it, but it can be set to, for example, 100, to display the + value in percents while still storing it as absolute value. + + @since 3.1.1 + */ + void SetFactor(double factor); }; /** diff --git a/samples/validate/validate.cpp b/samples/validate/validate.cpp index 5ffc7f1af2..b5594fcf34 100644 --- a/samples/validate/validate.cpp +++ b/samples/validate/validate.cpp @@ -64,7 +64,9 @@ MyData::MyData() m_string2 = "Valid text"; m_listbox_choices.Add(0); m_intValue = 0; + m_smallIntValue = 3; m_doubleValue = 12354.31; + m_percentValue = 0.25; } // ---------------------------------------------------------------------------- @@ -219,7 +221,9 @@ void MyFrame::OnTestDialog(wxCommandEvent& WXUNUSED(event)) m_listbox->Append(wxString(wxT("radiobox: ")) + g_radiobox_choices[g_data.m_radiobox_choice]); m_listbox->Append(wxString::Format("integer value: %d", g_data.m_intValue)); + m_listbox->Append(wxString::Format("small int value: %u", g_data.m_smallIntValue)); m_listbox->Append(wxString::Format("double value: %.3f", g_data.m_doubleValue)); + m_listbox->Append(wxString::Format("percent value: %.4f", g_data.m_percentValue)); } } @@ -304,6 +308,11 @@ MyDialog::MyDialog( wxWindow *parent, const wxString& title, // setup a sizer with the controls for numeric validators // ------------------------------------------------------ + wxFlexGridSizer* const + numSizer = new wxFlexGridSizer(5, FromDIP(wxSize(5, 5))); + + const wxSizerFlags center = wxSizerFlags().CenterVertical(); + wxIntegerValidator valInt(&g_data.m_intValue, wxNUM_VAL_THOUSANDS_SEPARATOR | wxNUM_VAL_ZERO_AS_BLANK); @@ -319,8 +328,11 @@ MyDialog::MyDialog( wxWindow *parent, const wxString& title, wxTE_RIGHT, valInt ); - m_numericTextInt->SetToolTip("uses wxIntegerValidator to accept positive " - "integers only"); + numSizer->Add(new wxStaticText(this, wxID_ANY, "Positive integer:"), + center); + numSizer->Add(m_numericTextInt, wxSizerFlags(center).Expand()); + + numSizer->AddSpacer(FromDIP(10)); m_numericTextDouble = new wxTextCtrl ( @@ -338,12 +350,31 @@ MyDialog::MyDialog( wxWindow *parent, const wxString& title, wxNUM_VAL_NO_TRAILING_ZEROES ) ); - m_numericTextDouble->SetToolTip("uses wxFloatingPointValidator with 3 decimals"); - wxBoxSizer *numSizer = new wxBoxSizer( wxHORIZONTAL ); - numSizer->Add( m_numericTextInt, 1, wxALL, 10 ); - numSizer->Add( m_numericTextDouble, 1, wxALL, 10 ); + numSizer->Add(new wxStaticText(this, wxID_ANY, "Up to 3 decimals:"), + center); + numSizer->Add(m_numericTextDouble, wxSizerFlags(center).Expand()); + wxIntegerValidator smallIntVal(&g_data.m_smallIntValue); + smallIntVal.SetRange(1, 5); + numSizer->Add(new wxStaticText(this, wxID_ANY, "Int between 1 and 5:"), + center); + numSizer->Add(new wxTextCtrl(this, wxID_ANY, "", + wxDefaultPosition, wxDefaultSize, wxTE_RIGHT, + smallIntVal), + wxSizerFlags(center).Expand()); + numSizer->AddSpacer(FromDIP(10)); + + wxFloatingPointValidator percentVal(&g_data.m_percentValue); + percentVal.SetPrecision(2); + percentVal.SetFactor(100.0); + + numSizer->Add(new wxStaticText(this, wxID_ANY, "Value displayed in %:"), + center); + numSizer->Add(new wxTextCtrl(this, wxID_ANY, "", + wxDefaultPosition, wxDefaultSize, wxTE_RIGHT, + percentVal), + wxSizerFlags(center).Expand()); // setup the main sizer // -------------------- @@ -358,7 +389,7 @@ MyDialog::MyDialog( wxWindow *parent, const wxString& title, wxGenericValidator(&g_data.m_radiobox_choice)), 0, wxGROW | wxLEFT|wxBOTTOM|wxRIGHT, 10); - mainsizer->Add( numSizer, 0, wxGROW | wxALL ); + mainsizer->Add( numSizer, wxSizerFlags().Expand().DoubleBorder() ); mainsizer->Add(btn, 0, wxGROW | wxALL, 10); diff --git a/samples/validate/validate.h b/samples/validate/validate.h index 48a4ca5cf6..226f703ba3 100644 --- a/samples/validate/validate.h +++ b/samples/validate/validate.h @@ -76,7 +76,9 @@ public: // variables handled by wxNumericTextValidator int m_intValue; + unsigned short m_smallIntValue; double m_doubleValue; + float m_percentValue; bool m_checkbox_state; int m_radiobox_choice; diff --git a/src/common/valnum.cpp b/src/common/valnum.cpp index 4f11072b1c..c2522d1075 100644 --- a/src/common/valnum.cpp +++ b/src/common/valnum.cpp @@ -251,14 +251,21 @@ wxIntegerValidatorBase::IsCharOk(const wxString& val, int pos, wxChar ch) const wxString wxFloatingPointValidatorBase::ToString(LongestValueType value) const { - return wxNumberFormatter::ToString(value, m_precision, GetFormatFlags()); + return wxNumberFormatter::ToString(value*m_factor, + m_precision, + GetFormatFlags()); } bool wxFloatingPointValidatorBase::FromString(const wxString& s, - LongestValueType *value) + LongestValueType *value) const { - return wxNumberFormatter::FromString(s, value); + if ( !wxNumberFormatter::FromString(s, value) ) + return false; + + *value /= m_factor; + + return true; } bool From aaabe1cb1710f265e497019d52acaa7569bc76cc Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 25 Jan 2018 19:36:28 +0100 Subject: [PATCH 216/916] Improve validate sample UI a bit Provide an accelerator for the menu command which contains all of the test functionality to make it simpler to test it. Also use CreateButtonSizer() instead of creating wxStdDialogButtonSizer manually to make the code shorter and to also ensure that the "OK" button is correctly set up as the default one, allowing to press "Enter" in this dialog to accept the entry on any control, which didn't work before. --- samples/validate/validate.cpp | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/samples/validate/validate.cpp b/samples/validate/validate.cpp index b5594fcf34..36c8900440 100644 --- a/samples/validate/validate.cpp +++ b/samples/validate/validate.cpp @@ -166,7 +166,7 @@ MyFrame::MyFrame(wxFrame *frame, const wxString&title, int x, int y, int w, int wxMenu *file_menu = new wxMenu; - file_menu->Append(VALIDATE_TEST_DIALOG, wxT("&Test dialog..."), wxT("Demonstrate validators")); + file_menu->Append(VALIDATE_TEST_DIALOG, wxT("&Test dialog...\tCtrl-T"), wxT("Demonstrate validators")); file_menu->AppendCheckItem(VALIDATE_TOGGLE_BELL, wxT("&Bell on error"), wxT("Toggle bell on error")); file_menu->AppendSeparator(); file_menu->Append(wxID_EXIT, wxT("E&xit")); @@ -297,14 +297,6 @@ MyDialog::MyDialog( wxWindow *parent, const wxString& title, flexgridsizer->AddGrowableRow(1); - // setup the button sizer - // ---------------------- - - wxStdDialogButtonSizer *btn = new wxStdDialogButtonSizer(); - btn->AddButton(new wxButton(this, wxID_OK)); - btn->AddButton(new wxButton(this, wxID_CANCEL)); - btn->Realize(); - // setup a sizer with the controls for numeric validators // ------------------------------------------------------ @@ -391,7 +383,8 @@ MyDialog::MyDialog( wxWindow *parent, const wxString& title, mainsizer->Add( numSizer, wxSizerFlags().Expand().DoubleBorder() ); - mainsizer->Add(btn, 0, wxGROW | wxALL, 10); + mainsizer->Add(CreateButtonSizer(wxOK | wxCANCEL), + wxSizerFlags().Expand().DoubleBorder()); SetSizer(mainsizer); mainsizer->SetSizeHints(this); From 7d6b44687f1511ef119c5a6e73d00ceb38faae41 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 26 Jan 2018 23:38:01 +0100 Subject: [PATCH 217/916] Fix monolithic build with USE_STC=0 Don't add STC-related sources to MONOLIB_GUI_SRC unconditionally, as this broke linking when specifying USE_STC=0 on make command line. Closes #17895. --- Makefile.in | 12 ++++++------ build/bakefiles/monolithic.bkl | 8 +++++++- build/msw/makefile.bcc | 20 ++++++++++++++------ build/msw/makefile.gcc | 20 ++++++++++++++------ build/msw/makefile.vc | 20 ++++++++++++++------ 5 files changed, 55 insertions(+), 25 deletions(-) diff --git a/Makefile.in b/Makefile.in index cbca768f71..6d29b0e0eb 100644 --- a/Makefile.in +++ b/Makefile.in @@ -4456,9 +4456,7 @@ COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS = \ monodll_richtextsymboldlg.o \ monodll_richtextxml.o \ monodll_xh_richtext.o \ - monodll_stc.o \ - monodll_PlatWX.o \ - monodll_ScintillaWX.o + $(__MONOLIB_STC_SRC_OBJECTS) @COND_USE_GUI_1@__MONOLIB_GUI_SRC_OBJECTS = $(COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS) COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS = \ $(__LOWLEVEL_SRC_OBJECTS) \ @@ -6296,6 +6294,8 @@ COND_TOOLKIT_X11___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ = monodll_tabartgtk.o @COND_TOOLKIT_MSW@__AUI_PLATFORM_SRC_OBJECTS = \ @COND_TOOLKIT_MSW@ monodll_tabartmsw.o monodll_barartmsw.o +@COND_USE_STC_1@__MONOLIB_STC_SRC_OBJECTS = monodll_stc.o \ +@COND_USE_STC_1@ monodll_PlatWX.o monodll_ScintillaWX.o @COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS \ @COND_PLATFORM_UNIX_1_USE_PLUGINS_0@ = monodll_sound_sdl.o @COND_PLATFORM_WIN32_1@__monodll___win32rc = monodll_version_rc.o @@ -6539,9 +6539,7 @@ COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS_1 = \ monolib_richtextsymboldlg.o \ monolib_richtextxml.o \ monolib_xh_richtext.o \ - monolib_stc.o \ - monolib_PlatWX.o \ - monolib_ScintillaWX.o + $(__MONOLIB_STC_SRC_OBJECTS_1) @COND_USE_GUI_1@__MONOLIB_GUI_SRC_OBJECTS_1 = $(COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS_1) COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_1 = \ $(__LOWLEVEL_SRC_OBJECTS_2) \ @@ -8379,6 +8377,8 @@ COND_TOOLKIT_X11___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ = monolib_tabartgtk.o @COND_TOOLKIT_MSW@__AUI_PLATFORM_SRC_OBJECTS_1 = \ @COND_TOOLKIT_MSW@ monolib_tabartmsw.o monolib_barartmsw.o +@COND_USE_STC_1@__MONOLIB_STC_SRC_OBJECTS_1 = monolib_stc.o \ +@COND_USE_STC_1@ monolib_PlatWX.o monolib_ScintillaWX.o @COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_1 \ @COND_PLATFORM_UNIX_1_USE_PLUGINS_0@ = monolib_sound_sdl.o COND_MONOLITHIC_0_SHARED_1___basedll___depname = \ diff --git a/build/bakefiles/monolithic.bkl b/build/bakefiles/monolithic.bkl index 22c14f6ce1..720e4f3f8f 100644 --- a/build/bakefiles/monolithic.bkl +++ b/build/bakefiles/monolithic.bkl @@ -1,11 +1,17 @@ + + + $(STC_SRC) + + + $(CORE_SRC) $(ADVANCED_SRC) $(MEDIA_SRC) $(HTML_SRC) $(WEBVIEW_SRC) $(QA_SRC) $(XRC_SRC) $(AUI_SRC) $(PROPGRID_SRC) $(RIBBON_SRC) - $(RICHTEXT_SRC) $(STC_SRC) + $(RICHTEXT_SRC) $(MONOLIB_STC_SRC) diff --git a/build/msw/makefile.bcc b/build/msw/makefile.bcc index 6cccbb80d7..786e7b5711 100644 --- a/build/msw/makefile.bcc +++ b/build/msw/makefile.bcc @@ -1786,9 +1786,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_richtextsymboldlg.obj \ $(OBJS)\monodll_richtextxml.obj \ $(OBJS)\monodll_xh_richtext.obj \ - $(OBJS)\monodll_stc.obj \ - $(OBJS)\monodll_PlatWX.obj \ - $(OBJS)\monodll_ScintillaWX.obj + $(____MONOLIB_STC_SRC_FILENAMES_OBJECTS) !endif !if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "0" ____CORE_SRC_FILENAMES_OBJECTS = \ @@ -2464,6 +2462,12 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_animateg.obj !endif !if "$(USE_STC)" == "1" +____MONOLIB_STC_SRC_FILENAMES_OBJECTS = \ + $(OBJS)\monodll_stc.obj \ + $(OBJS)\monodll_PlatWX.obj \ + $(OBJS)\monodll_ScintillaWX.obj +!endif +!if "$(USE_STC)" == "1" __wxscintilla_library_link_DEP = $(__wxscintilla) !endif !if "$(MONOLITHIC)" == "1" && "$(SHARED)" == "0" @@ -2619,9 +2623,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_richtextsymboldlg.obj \ $(OBJS)\monolib_richtextxml.obj \ $(OBJS)\monolib_xh_richtext.obj \ - $(OBJS)\monolib_stc.obj \ - $(OBJS)\monolib_PlatWX.obj \ - $(OBJS)\monolib_ScintillaWX.obj + $(____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS) !endif !if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "0" ____CORE_SRC_FILENAMES_1_OBJECTS = \ @@ -3296,6 +3298,12 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_joystick.obj \ $(OBJS)\monolib_animateg.obj !endif +!if "$(USE_STC)" == "1" +____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS = \ + $(OBJS)\monolib_stc.obj \ + $(OBJS)\monolib_PlatWX.obj \ + $(OBJS)\monolib_ScintillaWX.obj +!endif !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" __basedll___depname = \ $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG).dll diff --git a/build/msw/makefile.gcc b/build/msw/makefile.gcc index 2f6f1f2f0e..c7b3f16d74 100644 --- a/build/msw/makefile.gcc +++ b/build/msw/makefile.gcc @@ -1811,9 +1811,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_richtextsymboldlg.o \ $(OBJS)\monodll_richtextxml.o \ $(OBJS)\monodll_xh_richtext.o \ - $(OBJS)\monodll_stc.o \ - $(OBJS)\monodll_PlatWX.o \ - $(OBJS)\monodll_ScintillaWX.o + $(____MONOLIB_STC_SRC_FILENAMES_OBJECTS) endif ifeq ($(USE_GUI),1) ifeq ($(WXUNIV),0) @@ -2493,6 +2491,12 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_animateg.o endif ifeq ($(USE_STC),1) +____MONOLIB_STC_SRC_FILENAMES_OBJECTS = \ + $(OBJS)\monodll_stc.o \ + $(OBJS)\monodll_PlatWX.o \ + $(OBJS)\monodll_ScintillaWX.o +endif +ifeq ($(USE_STC),1) __wxscintilla_library_link_DEP = $(__wxscintilla) endif ifeq ($(MONOLITHIC),1) @@ -2650,9 +2654,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_richtextsymboldlg.o \ $(OBJS)\monolib_richtextxml.o \ $(OBJS)\monolib_xh_richtext.o \ - $(OBJS)\monolib_stc.o \ - $(OBJS)\monolib_PlatWX.o \ - $(OBJS)\monolib_ScintillaWX.o + $(____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS) endif ifeq ($(USE_GUI),1) ifeq ($(WXUNIV),0) @@ -3331,6 +3333,12 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_joystick.o \ $(OBJS)\monolib_animateg.o endif +ifeq ($(USE_STC),1) +____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS = \ + $(OBJS)\monolib_stc.o \ + $(OBJS)\monolib_PlatWX.o \ + $(OBJS)\monolib_ScintillaWX.o +endif ifeq ($(MONOLITHIC),0) ifeq ($(SHARED),1) __basedll___depname = \ diff --git a/build/msw/makefile.vc b/build/msw/makefile.vc index 1e1acc8089..0f266fd231 100644 --- a/build/msw/makefile.vc +++ b/build/msw/makefile.vc @@ -2091,9 +2091,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_richtextsymboldlg.obj \ $(OBJS)\monodll_richtextxml.obj \ $(OBJS)\monodll_xh_richtext.obj \ - $(OBJS)\monodll_stc.obj \ - $(OBJS)\monodll_PlatWX.obj \ - $(OBJS)\monodll_ScintillaWX.obj + $(____MONOLIB_STC_SRC_FILENAMES_OBJECTS) !endif !if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "0" ____CORE_SRC_FILENAMES_OBJECTS = \ @@ -2769,6 +2767,12 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_animateg.obj !endif !if "$(USE_STC)" == "1" +____MONOLIB_STC_SRC_FILENAMES_OBJECTS = \ + $(OBJS)\monodll_stc.obj \ + $(OBJS)\monodll_PlatWX.obj \ + $(OBJS)\monodll_ScintillaWX.obj +!endif +!if "$(USE_STC)" == "1" __wxscintilla_library_link_DEP = $(__wxscintilla) !endif !if "$(MONOLITHIC)" == "1" && "$(SHARED)" == "0" @@ -2930,9 +2934,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_richtextsymboldlg.obj \ $(OBJS)\monolib_richtextxml.obj \ $(OBJS)\monolib_xh_richtext.obj \ - $(OBJS)\monolib_stc.obj \ - $(OBJS)\monolib_PlatWX.obj \ - $(OBJS)\monolib_ScintillaWX.obj + $(____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS) !endif !if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "0" ____CORE_SRC_FILENAMES_1_OBJECTS = \ @@ -3607,6 +3609,12 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_joystick.obj \ $(OBJS)\monolib_animateg.obj !endif +!if "$(USE_STC)" == "1" +____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS = \ + $(OBJS)\monolib_stc.obj \ + $(OBJS)\monolib_PlatWX.obj \ + $(OBJS)\monolib_ScintillaWX.obj +!endif !if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "1" __basedll___depname = \ $(LIBDIRNAME)\wxbase$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG).dll From 18983cf538275077b3e918b1a9a67a8ff0e7731b Mon Sep 17 00:00:00 2001 From: AliKet Date: Fri, 26 Jan 2018 23:43:33 +0100 Subject: [PATCH 218/916] Implement dynamic auto-completion for wxGTK Make completion using custom wxTextCompleter work in wxGTK too. Closes #18061. --- include/wx/gtk/textentry.h | 15 +- samples/widgets/widgets.cpp | 38 ++++- src/gtk/textentry.cpp | 326 +++++++++++++++++++++++++++++++++--- 3 files changed, 356 insertions(+), 23 deletions(-) diff --git a/include/wx/gtk/textentry.h b/include/wx/gtk/textentry.h index 9f573d0bb4..674eab2ebd 100644 --- a/include/wx/gtk/textentry.h +++ b/include/wx/gtk/textentry.h @@ -14,6 +14,8 @@ typedef struct _GdkEventKey GdkEventKey; typedef struct _GtkEditable GtkEditable; typedef struct _GtkEntry GtkEntry; +class wxTextAutoCompleteData; // private class used only by wxTextEntry itself + // ---------------------------------------------------------------------------- // wxTextEntry: roughly corresponds to GtkEditable // ---------------------------------------------------------------------------- @@ -21,7 +23,8 @@ typedef struct _GtkEntry GtkEntry; class WXDLLIMPEXP_CORE wxTextEntry : public wxTextEntryBase { public: - wxTextEntry() { m_isUpperCase = false; } + wxTextEntry(); + virtual ~wxTextEntry(); // implement wxTextEntryBase pure virtual methods virtual void WriteText(const wxString& text) wxOVERRIDE; @@ -76,6 +79,7 @@ protected: virtual wxPoint DoGetMargins() const wxOVERRIDE; virtual bool DoAutoCompleteStrings(const wxArrayString& choices) wxOVERRIDE; + virtual bool DoAutoCompleteCustom(wxTextCompleter *completer) wxOVERRIDE; // Override the base class method to use GtkEntry IM context. virtual int GTKIMFilterKeypress(GdkEventKey* event) const; @@ -90,6 +94,15 @@ private: // implement this to return the associated GtkEntry virtual GtkEntry *GetEntry() const = 0; + wxTextAutoCompleteData *GetOrCreateCompleter(); + + // Various auto-completion-related stuff, only used if any of AutoComplete() + // methods are called. Use the function above to access it. + wxTextAutoCompleteData *m_autoCompleteData; + + // It needs to call our GetEditable() method. + friend class wxTextAutoCompleteData; + bool m_isUpperCase; }; diff --git a/samples/widgets/widgets.cpp b/samples/widgets/widgets.cpp index 9cc7de5cec..ef66b725a6 100644 --- a/samples/widgets/widgets.cpp +++ b/samples/widgets/widgets.cpp @@ -46,6 +46,7 @@ #include "wx/sizer.h" #include "wx/colordlg.h" #include "wx/fontdlg.h" +#include "wx/numdlg.h" #include "wx/textdlg.h" #include "wx/imaglist.h" #include "wx/wupdlock.h" @@ -108,6 +109,7 @@ enum TextEntry_AutoCompleteFilenames, TextEntry_AutoCompleteDirectories, TextEntry_AutoCompleteCustom, + TextEntry_AutoCompleteKeyLength, TextEntry_SetHint, TextEntry_End @@ -188,6 +190,7 @@ protected: void OnAutoCompleteFilenames(wxCommandEvent& event); void OnAutoCompleteDirectories(wxCommandEvent& event); void OnAutoCompleteCustom(wxCommandEvent& event); + void OnAutoCompleteKeyLength(wxCommandEvent& event); void OnSetHint(wxCommandEvent& event); @@ -218,6 +221,9 @@ private: // the book containing the test pages WidgetsBookCtrl *m_book; + // + int m_prefixMinLength; + // any class wishing to process wxWidgets events must use this macro wxDECLARE_EVENT_TABLE(); }; @@ -317,6 +323,7 @@ wxBEGIN_EVENT_TABLE(WidgetsFrame, wxFrame) EVT_MENU(TextEntry_AutoCompleteFilenames, WidgetsFrame::OnAutoCompleteFilenames) EVT_MENU(TextEntry_AutoCompleteDirectories, WidgetsFrame::OnAutoCompleteDirectories) EVT_MENU(TextEntry_AutoCompleteCustom, WidgetsFrame::OnAutoCompleteCustom) + EVT_MENU(TextEntry_AutoCompleteKeyLength, WidgetsFrame::OnAutoCompleteKeyLength) EVT_MENU(TextEntry_SetHint, WidgetsFrame::OnSetHint) @@ -386,6 +393,8 @@ WidgetsFrame::WidgetsFrame(const wxString& title) #endif // USE_LOG m_book = NULL; + m_prefixMinLength = 1; + #if wxUSE_MENUS // create the menubar wxMenuBar *mbar = new wxMenuBar; @@ -444,6 +453,8 @@ WidgetsFrame::WidgetsFrame(const wxString& title) menuTextEntry->AppendRadioItem(TextEntry_AutoCompleteCustom, wxT("&Custom auto-completion")); menuTextEntry->AppendSeparator(); + menuTextEntry->Append(TextEntry_AutoCompleteKeyLength, + wxT("&Minimum key length for auto-completion")); menuTextEntry->Append(TextEntry_SetHint, "Set help &hint"); mbar->Append(menuTextEntry, wxT("&Text")); @@ -1038,6 +1049,8 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) class CustomTextCompleter : public wxTextCompleterSimple { public: + CustomTextCompleter( int length ) : m_minLength( length ) {} + virtual void GetCompletions(const wxString& prefix, wxArrayString& res) wxOVERRIDE { // This is used for illustrative purposes only and shows how many @@ -1066,7 +1079,10 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) // Normally it doesn't make sense to complete empty control, there // are too many choices and listing them all wouldn't be helpful. - if ( prefix.empty() ) + // Or if we know in advance that a prefix with one or two characters + // would still results in too many choices too. + if ( prefix.empty() || + prefix.length() < static_cast(m_minLength) ) return; // The only valid strings start with 3 digits so check for their @@ -1117,9 +1133,11 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) res.push_back(prefix + c); } } + + int m_minLength; }; - if ( entry->AutoComplete(new CustomTextCompleter) ) + if ( entry->AutoComplete( new CustomTextCompleter( m_prefixMinLength ) ) ) { wxLogMessage("Enabled custom auto completer for \"NNN XX\" items " "(where N is a digit and X is a letter)."); @@ -1130,6 +1148,22 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) } } +void WidgetsFrame::OnAutoCompleteKeyLength(wxCommandEvent& WXUNUSED(event)) +{ + const wxString message = "The auto-completion is triggered if and only if\n" + "the length of the search key (prefix) is at least [LENGTH].\n" + "Hint: negative values disable auto-completion."; + const wxString prompt = "Enter the minimum key length:"; + const wxString caption = "Minimum key length"; + + m_prefixMinLength = wxGetNumberFromUser(message, prompt, caption, 1, -1, 100, this); + + wxCommandEvent theEvent(wxEVT_MENU, TextEntry_AutoCompleteCustom); + ProcessEventLocally(theEvent); + + wxLogMessage("The minimum key length for autocomplete is : %d.", m_prefixMinLength); +} + void WidgetsFrame::OnSetHint(wxCommandEvent& WXUNUSED(event)) { wxTextEntryBase *entry = CurrentPage()->GetTextEntry(); diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 966d9b9153..a25c312529 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -25,9 +25,11 @@ #if wxUSE_TEXTCTRL || wxUSE_COMBOBOX #ifndef WX_PRECOMP + #include "wx/event.h" #include "wx/textentry.h" - #include "wx/window.h" #include "wx/textctrl.h" + #include "wx/textcompleter.h" + #include "wx/window.h" #endif //WX_PRECOMP #include @@ -193,10 +195,268 @@ wx_gtk_paste_clipboard_callback( GtkWidget *widget, wxWindow *win ) } // extern "C" +// This class gathers the all auto-complete-related stuff we use. It is +// allocated on demand by wxTextEntry when AutoComplete() is called. +// +// GTK already has completion functionality support for a GtkEntry via +// GtkEntryCompletion. This class simply forwards to GtkListStore +// in case we used ChangeStrings() overload. or to wxTextCompleter +// associated with it otherwise. +class wxTextAutoCompleteData +{ +public: + // The constructor associates us with the given text entry. + wxEXPLICIT wxTextAutoCompleteData(wxTextEntry *entry) + : m_entry(entry) + { + m_completer = NULL; + + m_isDynamicCompleter = false; + + m_newCompletionsNeeded = m_entry->IsEmpty(); + + // this asserts if entry is multiline. + // because multiline is actually a GtkTextView not a GtkEntry. + // even GetEditable() will return NULL if entry is multiline. + + wxCHECK_RET( GTK_IS_ENTRY(GetGtkEntry()), + "auto completion doesn't work with this control" ); + } + + ~wxTextAutoCompleteData() + { + delete m_completer; + } + + // Must be called after creating this object to verify if initializing it + // succeeded. + bool IsOk() const + { + return GTK_IS_ENTRY( GetGtkEntry() ); + } + + void ChangeStrings(const wxArrayString& strings) + { + wxDELETE( m_completer ); + + DoUpdateCompleterType(); + + DoEnableCompletion(); + + GtkListStore * const store = gtk_list_store_new (1, G_TYPE_STRING); + GtkTreeIter iter; + + for ( wxArrayString::const_iterator i = strings.begin(); + i != strings.end(); + ++i ) + { + gtk_list_store_append (store, &iter); + gtk_list_store_set (store, &iter, 0, (const gchar *)i->utf8_str(), -1); + } + + gtk_entry_completion_set_model (GetEntryCompletion(), GTK_TREE_MODEL(store)); + g_object_unref (store); + + DoRefresh(); + } + + // Takes ownership of the pointer if it is non-NULL. + bool ChangeCustomCompleter(wxTextCompleter *completer) + { + delete m_completer; + m_completer = completer; + + if ( m_completer ) + { + wxTextCompleterFixed* fixedCompl = + dynamic_cast(m_completer); + + if ( fixedCompl ) + { + wxArrayString completions; + fixedCompl->GetCompletions(wxEmptyString, completions); + + ChangeStrings(completions); + + wxDELETE(m_completer); + return true; + } + + DoEnableCompletion(); + + DoUpdateCompletionModel(); + } + else + { + DisableCompletion(); + } + + DoUpdateCompleterType(); + + return true; + } + + void DisableCompletion() + { + gtk_entry_set_completion (GetGtkEntry(), NULL); + + wxDELETE(m_completer); + DoUpdateCompleterType(); + } + +private: + + void DoEnableCompletion() + { + if ( !GetEntryCompletion() ) + { + GtkEntryCompletion * const completion = gtk_entry_completion_new(); + + gtk_entry_completion_set_text_column (completion, 0); + gtk_entry_set_completion (GetGtkEntry(), completion); + } + } + + // for a given prefix, if DoUpdateCompletionModel() succeeds, + // we won't do any further update of the model as long as we + // do not clear the textentry. but then we have to start over again. + + void OnEntryChanged( wxCommandEvent& event ) + { + if ( event.GetString().empty() ) + { + m_newCompletionsNeeded = true; + } + else + { + if ( m_newCompletionsNeeded ) + DoUpdateCompletionModel(); + } + + event.Skip(); + } + + void DoUpdateCompleterType() + { + const bool isDynamic = (m_completer != NULL); + + if ( m_isDynamicCompleter == isDynamic ) + // we already connected/disconnected to/from + // the event handler. + return; + + m_isDynamicCompleter = isDynamic; + + wxWindow * const win = m_entry->GetEditableWindow(); + + // Disconnect from the event handler if we request + // a non-dynamic behaviour of our completion methode + // (e.g. completions are supplied via + // ChangeStrings() or wxTextCompleterFixed ) + // Connect otherwise. + // + // The event handler role is to request from the m_completer + // to generate dynamically new completions (e.g from database) + // if a certain condition is met (e.g. textentry is cleared + // and/or typed in text length >= *MIN_PREFIX_LENGTH* ) + // + + if ( !m_completer ) + { + win->Unbind(wxEVT_TEXT, &wxTextAutoCompleteData::OnEntryChanged, this); + } + else + { + win->Bind(wxEVT_TEXT, &wxTextAutoCompleteData::OnEntryChanged, this); + } + } + + void DoRefresh() + { + gtk_entry_completion_complete (GetEntryCompletion()); + } + + void DoUpdateCompletionModel() + { + wxASSERT_MSG( m_completer, "m_completer should not be null." ); + + const wxString prefix = m_entry->GetValue(); + + if ( m_completer->Start(prefix) ) + { + GtkListStore * const store = gtk_list_store_new (1, G_TYPE_STRING); + GtkTreeIter iter; + + for (;;) + { + const wxString s = m_completer->GetNext(); + if ( s.empty() ) + break; + + gtk_list_store_append (store, &iter); + gtk_list_store_set (store, &iter, 0, (const gchar *)s.utf8_str(), -1); + } + + gtk_entry_completion_set_model (GetEntryCompletion(), GTK_TREE_MODEL(store)); + g_object_unref (store); + + m_newCompletionsNeeded = false; + } + else + { + gtk_entry_completion_set_model (GetEntryCompletion(), NULL); + } + + DoRefresh(); + } + + + GtkEntry* GetGtkEntry() const { return m_entry->GetEntry(); } + + GtkEntryCompletion* GetEntryCompletion() const + { + return gtk_entry_get_completion (GetGtkEntry()); + } + + // The text entry we're associated with. + wxTextEntry * const m_entry; + + // Custom completer or NULL if none. + wxTextCompleter *m_completer; + + // helps to decide if we should connect/disconnect + // to/from the event handler. + bool m_isDynamicCompleter; + + // Each time we entered a new prefix, GtkEntryCompletion needs to be fed + // with new completions. And this flag lets as try to DoUpdateCompletionModel() + // and if it succeeds, it'll set the flag to false and OnEntryChanged() + // will not try to call it again unless we entered a new prefix. + bool m_newCompletionsNeeded; + + wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteData); +}; + + // ============================================================================ // wxTextEntry implementation // ============================================================================ +// ---------------------------------------------------------------------------- +// initialization and destruction +// ---------------------------------------------------------------------------- + +wxTextEntry::wxTextEntry() +{ + m_autoCompleteData = NULL; + m_isUpperCase = false; +} + +wxTextEntry::~wxTextEntry() +{ + delete m_autoCompleteData; +} + // ---------------------------------------------------------------------------- // text operations // ---------------------------------------------------------------------------- @@ -409,32 +669,58 @@ void wxTextEntry::GetSelection(long *from, long *to) const // auto completion // ---------------------------------------------------------------------------- -bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices) +wxTextAutoCompleteData *wxTextEntry::GetOrCreateCompleter() { - GtkEntry* const entry = (GtkEntry*)GetEditable(); - wxCHECK_MSG(GTK_IS_ENTRY(entry), false, "auto completion doesn't work with this control"); - - GtkListStore * const store = gtk_list_store_new(1, G_TYPE_STRING); - GtkTreeIter iter; - - for ( wxArrayString::const_iterator i = choices.begin(); - i != choices.end(); - ++i ) + if ( !m_autoCompleteData ) { - gtk_list_store_append(store, &iter); - gtk_list_store_set(store, &iter, - 0, (const gchar *)i->utf8_str(), - -1); + wxTextAutoCompleteData * const ac = new wxTextAutoCompleteData(this); + if ( ac->IsOk() ) + m_autoCompleteData = ac; + else + delete ac; } - GtkEntryCompletion * const completion = gtk_entry_completion_new(); - gtk_entry_completion_set_model(completion, GTK_TREE_MODEL(store)); - gtk_entry_completion_set_text_column(completion, 0); - gtk_entry_set_completion(entry, completion); - g_object_unref(completion); + return m_autoCompleteData; +} + +bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices) +{ + wxTextAutoCompleteData * const ac = GetOrCreateCompleter(); + if ( !ac ) + return false; + + ac->ChangeStrings(choices); + return true; } +bool wxTextEntry::DoAutoCompleteCustom(wxTextCompleter *completer) +{ + // First deal with the case when we just want to disable auto-completion. + if ( !completer ) + { + if ( m_autoCompleteData ) + m_autoCompleteData->DisableCompletion(); + //else: Nothing to do, we hadn't used auto-completion even before. + } + else // Have a valid completer. + { + wxTextAutoCompleteData * const ac = GetOrCreateCompleter(); + if ( !ac ) + { + // Delete the custom completer for consistency with the case when + // we succeed to avoid memory leaks in user code. + delete completer; + return false; + } + + // This gives ownership of the custom completer to m_autoCompleteData. + if ( !ac->ChangeCustomCompleter(completer) ) + return false; + } + + return true; +} // ---------------------------------------------------------------------------- // editable status // ---------------------------------------------------------------------------- From a8c19c7bd24db7939fbe6ea3409b62be67f84a99 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:15:24 +0100 Subject: [PATCH 219/916] Just improve some comments Fix typos/wording in GTK autocompletion code comments. No real changes. --- src/gtk/textentry.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index a25c312529..91b47840b6 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -200,8 +200,8 @@ wx_gtk_paste_clipboard_callback( GtkWidget *widget, wxWindow *win ) // // GTK already has completion functionality support for a GtkEntry via // GtkEntryCompletion. This class simply forwards to GtkListStore -// in case we used ChangeStrings() overload. or to wxTextCompleter -// associated with it otherwise. +// in case we used ChangeStrings() overload, or to wxTextCompleter +// associated with it if ChangeCustomCompleter() was called. class wxTextAutoCompleteData { public: @@ -350,7 +350,7 @@ private: wxWindow * const win = m_entry->GetEditableWindow(); // Disconnect from the event handler if we request - // a non-dynamic behaviour of our completion methode + // a non-dynamic behaviour of our completion methods // (e.g. completions are supplied via // ChangeStrings() or wxTextCompleterFixed ) // Connect otherwise. @@ -376,6 +376,9 @@ private: gtk_entry_completion_complete (GetEntryCompletion()); } + // Recreate the model to contain all completions for the current prefix. + // + // This should only be called when using a custom completer. void DoUpdateCompletionModel() { wxASSERT_MSG( m_completer, "m_completer should not be null." ); @@ -428,8 +431,8 @@ private: // to/from the event handler. bool m_isDynamicCompleter; - // Each time we entered a new prefix, GtkEntryCompletion needs to be fed - // with new completions. And this flag lets as try to DoUpdateCompletionModel() + // Each time we enter a new prefix, GtkEntryCompletion needs to be fed with + // new completions. And this flag lets us try to DoUpdateCompletionModel() // and if it succeeds, it'll set the flag to false and OnEntryChanged() // will not try to call it again unless we entered a new prefix. bool m_newCompletionsNeeded; From 8030bd727a79d0493e7a2870c661522a217ecb2d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:16:53 +0100 Subject: [PATCH 220/916] Refactor wxTextAutoCompleteData creation Use factory function instead of ctor and IsOk() check, as this simplifies the code using this class: if factory function fails, it can just return NULL, which is what the caller used to do explicitly after freeing the new object before. Also don't assert if there is no associated GtkEntry, AutoComplete() is supposed to just return false if using it with the given control is not implemented under the current platform. --- src/gtk/textentry.cpp | 46 +++++++++++++++++++------------------------ 1 file changed, 20 insertions(+), 26 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 91b47840b6..c6e80cccc6 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -205,22 +205,17 @@ wx_gtk_paste_clipboard_callback( GtkWidget *widget, wxWindow *win ) class wxTextAutoCompleteData { public: - // The constructor associates us with the given text entry. - wxEXPLICIT wxTextAutoCompleteData(wxTextEntry *entry) - : m_entry(entry) + // Factory function, may return NULL if entry is invalid. + static wxTextAutoCompleteData* New(wxTextEntry *entry) { - m_completer = NULL; + if ( !GTK_IS_ENTRY(entry->GetEntry()) ) + { + // This is probably a multiline wxTextCtrl which doesn't have any + // associated GtkEntry. + return NULL; + } - m_isDynamicCompleter = false; - - m_newCompletionsNeeded = m_entry->IsEmpty(); - - // this asserts if entry is multiline. - // because multiline is actually a GtkTextView not a GtkEntry. - // even GetEditable() will return NULL if entry is multiline. - - wxCHECK_RET( GTK_IS_ENTRY(GetGtkEntry()), - "auto completion doesn't work with this control" ); + return new wxTextAutoCompleteData(entry); } ~wxTextAutoCompleteData() @@ -228,13 +223,6 @@ public: delete m_completer; } - // Must be called after creating this object to verify if initializing it - // succeeded. - bool IsOk() const - { - return GTK_IS_ENTRY( GetGtkEntry() ); - } - void ChangeStrings(const wxArrayString& strings) { wxDELETE( m_completer ); @@ -305,6 +293,16 @@ public: } private: + // Ctor is private, use New() to create objects of this type. + explicit wxTextAutoCompleteData(wxTextEntry *entry) + : m_entry(entry) + { + m_completer = NULL; + + m_isDynamicCompleter = false; + + m_newCompletionsNeeded = m_entry->IsEmpty(); + } void DoEnableCompletion() { @@ -676,11 +674,7 @@ wxTextAutoCompleteData *wxTextEntry::GetOrCreateCompleter() { if ( !m_autoCompleteData ) { - wxTextAutoCompleteData * const ac = new wxTextAutoCompleteData(this); - if ( ac->IsOk() ) - m_autoCompleteData = ac; - else - delete ac; + m_autoCompleteData = wxTextAutoCompleteData::New(this); } return m_autoCompleteData; From 9b9d13807707cf87dca76b2fddecb446d83d7e99 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:20:33 +0100 Subject: [PATCH 221/916] Factor out helper AppendToStore() function Simple refactoring to avoid repeating the same not quite obvious code for appending an item to GtkListStore twice. --- src/gtk/textentry.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index c6e80cccc6..8757540204 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -232,14 +232,12 @@ public: DoEnableCompletion(); GtkListStore * const store = gtk_list_store_new (1, G_TYPE_STRING); - GtkTreeIter iter; for ( wxArrayString::const_iterator i = strings.begin(); i != strings.end(); ++i ) { - gtk_list_store_append (store, &iter); - gtk_list_store_set (store, &iter, 0, (const gchar *)i->utf8_str(), -1); + AppendToStore(store, *i); } gtk_entry_completion_set_model (GetEntryCompletion(), GTK_TREE_MODEL(store)); @@ -304,6 +302,14 @@ private: m_newCompletionsNeeded = m_entry->IsEmpty(); } + // Helper function for appending a string to GtkListStore. + void AppendToStore(GtkListStore* store, const wxString& s) + { + GtkTreeIter iter; + gtk_list_store_append (store, &iter); + gtk_list_store_set (store, &iter, 0, (const gchar *)s.utf8_str(), -1); + } + void DoEnableCompletion() { if ( !GetEntryCompletion() ) @@ -386,7 +392,6 @@ private: if ( m_completer->Start(prefix) ) { GtkListStore * const store = gtk_list_store_new (1, G_TYPE_STRING); - GtkTreeIter iter; for (;;) { @@ -394,8 +399,7 @@ private: if ( s.empty() ) break; - gtk_list_store_append (store, &iter); - gtk_list_store_set (store, &iter, 0, (const gchar *)s.utf8_str(), -1); + AppendToStore(store, s); } gtk_entry_completion_set_model (GetEntryCompletion(), GTK_TREE_MODEL(store)); From 6f229cdcdeed53d48128fded12d61461a4e00702 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:22:25 +0100 Subject: [PATCH 222/916] Replace DoRefresh() with UseModel() helper function The new function both sets the new model and calls gtk_entry_completion_complete() instead of always doing first the one and then the other: if both calls needs to always be done together, it makes sense to have a function doing both of them. --- src/gtk/textentry.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 8757540204..137fbde9fc 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -240,10 +240,8 @@ public: AppendToStore(store, *i); } - gtk_entry_completion_set_model (GetEntryCompletion(), GTK_TREE_MODEL(store)); + UseModel(store); g_object_unref (store); - - DoRefresh(); } // Takes ownership of the pointer if it is non-NULL. @@ -375,9 +373,12 @@ private: } } - void DoRefresh() + // Really change the completion model (which may be NULL). + void UseModel(GtkListStore* store) { - gtk_entry_completion_complete (GetEntryCompletion()); + GtkEntryCompletion* const c = gtk_entry_get_completion (GetGtkEntry()); + gtk_entry_completion_set_model (c, GTK_TREE_MODEL(store)); + gtk_entry_completion_complete (c); } // Recreate the model to contain all completions for the current prefix. @@ -402,17 +403,15 @@ private: AppendToStore(store, s); } - gtk_entry_completion_set_model (GetEntryCompletion(), GTK_TREE_MODEL(store)); + UseModel(store); g_object_unref (store); m_newCompletionsNeeded = false; } else { - gtk_entry_completion_set_model (GetEntryCompletion(), NULL); + UseModel(NULL); } - - DoRefresh(); } From f354b0a1b5db7d6ab76990b54ce9baf19c701a49 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:23:59 +0100 Subject: [PATCH 223/916] Remove almost unused GetEntryCompletion() function This function was now used only once and it's not really useful to have a trivial wrapper around the corresponding GTK+ function, just use it directly. --- src/gtk/textentry.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 137fbde9fc..1b7b003deb 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -310,7 +310,7 @@ private: void DoEnableCompletion() { - if ( !GetEntryCompletion() ) + if ( !gtk_entry_get_completion (GetGtkEntry()) ) { GtkEntryCompletion * const completion = gtk_entry_completion_new(); @@ -417,10 +417,6 @@ private: GtkEntry* GetGtkEntry() const { return m_entry->GetEntry(); } - GtkEntryCompletion* GetEntryCompletion() const - { - return gtk_entry_get_completion (GetGtkEntry()); - } // The text entry we're associated with. wxTextEntry * const m_entry; From 96308f0534294faeaad8fe915f743ca188f7714f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:24:58 +0100 Subject: [PATCH 224/916] Use wxGtkObject RAII wrapper for GtkListStore Prefer RAII wrapper class to manual g_object_unref() calls. --- src/gtk/textentry.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 1b7b003deb..66c9c99516 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -35,6 +35,7 @@ #include #include "wx/gtk/private.h" #include "wx/gtk/private/gtk2-compat.h" +#include "wx/gtk/private/object.h" #include "wx/gtk/private/string.h" //----------------------------------------------------------------------------- @@ -231,7 +232,7 @@ public: DoEnableCompletion(); - GtkListStore * const store = gtk_list_store_new (1, G_TYPE_STRING); + wxGtkObject store(gtk_list_store_new (1, G_TYPE_STRING)); for ( wxArrayString::const_iterator i = strings.begin(); i != strings.end(); @@ -241,7 +242,6 @@ public: } UseModel(store); - g_object_unref (store); } // Takes ownership of the pointer if it is non-NULL. @@ -392,7 +392,7 @@ private: if ( m_completer->Start(prefix) ) { - GtkListStore * const store = gtk_list_store_new (1, G_TYPE_STRING); + wxGtkObject store(gtk_list_store_new (1, G_TYPE_STRING)); for (;;) { @@ -404,7 +404,6 @@ private: } UseModel(store); - g_object_unref (store); m_newCompletionsNeeded = false; } From d4c84ce7453217268f9dd325523fc9c90d649f2b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 00:27:21 +0100 Subject: [PATCH 225/916] Remove special check for wxTextCompleterFixed There should be no need to handle this class specially and it's supposed to be just an implementation detail, so don't add any dependencies on it (if it's really important to optimize for this case, the check should be done for wxTextCompleterSimple and use wxRTTI as wxWidgets still supports being built without standard C++ RTTI). --- src/gtk/textentry.cpp | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 66c9c99516..efffa656d1 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -252,20 +252,6 @@ public: if ( m_completer ) { - wxTextCompleterFixed* fixedCompl = - dynamic_cast(m_completer); - - if ( fixedCompl ) - { - wxArrayString completions; - fixedCompl->GetCompletions(wxEmptyString, completions); - - ChangeStrings(completions); - - wxDELETE(m_completer); - return true; - } - DoEnableCompletion(); DoUpdateCompletionModel(); From 02f2159aeade4eccd9d7dfecb0854e030d19ea83 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 01:07:18 +0100 Subject: [PATCH 226/916] Split wxTextAutoCompleteData in two subclasses Doing two different things in the same class, using m_isDynamicCompleter to determine which kind of completion is used, was not very clear, so create two simple classes each of which does one and one thing only and create the one we need in wxTextEntry methods. Note that wxTextAutoCompleteDynamic can assume to always have a valid wxTextCompleter as otherwise no wxTextAutoCompleteData is needed at all, which results in more simplifications. There should be no changes in behaviour. --- include/wx/gtk/textentry.h | 6 +- src/gtk/textentry.cpp | 331 ++++++++++++++++++++----------------- 2 files changed, 177 insertions(+), 160 deletions(-) diff --git a/include/wx/gtk/textentry.h b/include/wx/gtk/textentry.h index 674eab2ebd..e55fad8d4c 100644 --- a/include/wx/gtk/textentry.h +++ b/include/wx/gtk/textentry.h @@ -94,13 +94,11 @@ private: // implement this to return the associated GtkEntry virtual GtkEntry *GetEntry() const = 0; - wxTextAutoCompleteData *GetOrCreateCompleter(); - // Various auto-completion-related stuff, only used if any of AutoComplete() - // methods are called. Use the function above to access it. + // methods are called. wxTextAutoCompleteData *m_autoCompleteData; - // It needs to call our GetEditable() method. + // It needs to call our GetEntry() method. friend class wxTextAutoCompleteData; bool m_isUpperCase; diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index efffa656d1..9f17072503 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -196,42 +196,97 @@ wx_gtk_paste_clipboard_callback( GtkWidget *widget, wxWindow *win ) } // extern "C" -// This class gathers the all auto-complete-related stuff we use. It is -// allocated on demand by wxTextEntry when AutoComplete() is called. -// -// GTK already has completion functionality support for a GtkEntry via -// GtkEntryCompletion. This class simply forwards to GtkListStore -// in case we used ChangeStrings() overload, or to wxTextCompleter -// associated with it if ChangeCustomCompleter() was called. +// Base class for wxTextAutoCompleteFixed and wxTextAutoCompleteDynamic below. class wxTextAutoCompleteData { +public: + // This method is only implemented by wxTextAutoCompleteFixed and will just + // return false for wxTextAutoCompleteDynamic. + virtual bool ChangeStrings(const wxArrayString& strings) = 0; + + // Conversely, this one is only implemented for wxTextAutoCompleteDynamic + // and will just return false (without taking ownership of the argument!) + // for wxTextAutoCompleteFixed. + virtual bool ChangeCompleter(wxTextCompleter* completer) = 0; + + void DisableCompletion() + { + gtk_entry_set_completion (GetGtkEntry(), NULL); + } + + virtual ~wxTextAutoCompleteData() + { + // Do not call DisableCompletion() here, it would result in problems + // when this object is destroyed from wxTextEntry dtor as the real + // control (e.g. wxTextCtrl) is already destroyed by then. + } + +protected: + // Check if completion can be used with this entry. + static bool CanComplete(wxTextEntry* entry) + { + // If this check fails, this is probably a multiline wxTextCtrl which + // doesn't have any associated GtkEntry. + return GTK_IS_ENTRY(entry->GetEntry()); + } + + explicit wxTextAutoCompleteData(wxTextEntry* entry) + : m_entry(entry) + { + GtkEntryCompletion* const completion = gtk_entry_completion_new(); + + gtk_entry_completion_set_text_column (completion, 0); + gtk_entry_set_completion (GetGtkEntry(), completion); + } + + // Provide access to wxTextEntry::GetEditableWindow() to the derived + // classes: we can call it because this class is a friend of wxTextEntry, + // but the derived classes can't do it directly. + static wxWindow* GetEditableWindow(wxTextEntry* entry) + { + return entry->GetEditableWindow(); + } + + GtkEntry* GetGtkEntry() const { return m_entry->GetEntry(); } + + // Helper function for appending a string to GtkListStore. + void AppendToStore(GtkListStore* store, const wxString& s) + { + GtkTreeIter iter; + gtk_list_store_append (store, &iter); + gtk_list_store_set (store, &iter, 0, (const gchar *)s.utf8_str(), -1); + } + + // Really change the completion model (which may be NULL). + void UseModel(GtkListStore* store) + { + GtkEntryCompletion* const c = gtk_entry_get_completion (GetGtkEntry()); + gtk_entry_completion_set_model (c, GTK_TREE_MODEL(store)); + gtk_entry_completion_complete (c); + } + + + // The text entry we're associated with. + wxTextEntry * const m_entry; + + wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteData); +}; + +// This class simply forwards to GtkListStore. +class wxTextAutoCompleteFixed : public wxTextAutoCompleteData +{ public: // Factory function, may return NULL if entry is invalid. - static wxTextAutoCompleteData* New(wxTextEntry *entry) + static wxTextAutoCompleteFixed* New(wxTextEntry *entry) { - if ( !GTK_IS_ENTRY(entry->GetEntry()) ) - { - // This is probably a multiline wxTextCtrl which doesn't have any - // associated GtkEntry. + if ( !CanComplete(entry) ) return NULL; - } - return new wxTextAutoCompleteData(entry); + return new wxTextAutoCompleteFixed(entry); } - ~wxTextAutoCompleteData() + virtual bool ChangeStrings(const wxArrayString& strings) wxOVERRIDE { - delete m_completer; - } - - void ChangeStrings(const wxArrayString& strings) - { - wxDELETE( m_completer ); - - DoUpdateCompleterType(); - - DoEnableCompletion(); - wxGtkObject store(gtk_list_store_new (1, G_TYPE_STRING)); for ( wxArrayString::const_iterator i = strings.begin(); @@ -242,67 +297,75 @@ public: } UseModel(store); - } - - // Takes ownership of the pointer if it is non-NULL. - bool ChangeCustomCompleter(wxTextCompleter *completer) - { - delete m_completer; - m_completer = completer; - - if ( m_completer ) - { - DoEnableCompletion(); - - DoUpdateCompletionModel(); - } - else - { - DisableCompletion(); - } - - DoUpdateCompleterType(); return true; } - void DisableCompletion() + virtual bool ChangeCompleter(wxTextCompleter*) wxOVERRIDE { - gtk_entry_set_completion (GetGtkEntry(), NULL); - - wxDELETE(m_completer); - DoUpdateCompleterType(); + return false; } private: // Ctor is private, use New() to create objects of this type. - explicit wxTextAutoCompleteData(wxTextEntry *entry) - : m_entry(entry) + explicit wxTextAutoCompleteFixed(wxTextEntry *entry) + : wxTextAutoCompleteData(entry) + { + } + + wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteFixed); +}; + +// Dynamic completion using the provided custom wxTextCompleter. +class wxTextAutoCompleteDynamic : public wxTextAutoCompleteData +{ +public: + static wxTextAutoCompleteDynamic* New(wxTextEntry *entry) + { + if ( !CanComplete(entry) ) + return NULL; + + wxWindow * const win = GetEditableWindow(entry); + if ( !win ) + return NULL; + + return new wxTextAutoCompleteDynamic(entry, win); + } + + virtual ~wxTextAutoCompleteDynamic() + { + delete m_completer; + + m_win->Unbind(wxEVT_TEXT, &wxTextAutoCompleteDynamic::OnEntryChanged, this); + } + + virtual bool ChangeStrings(const wxArrayString&) wxOVERRIDE + { + return false; + } + + // Takes ownership of the pointer which must be non-NULL. + virtual bool ChangeCompleter(wxTextCompleter *completer) wxOVERRIDE + { + delete m_completer; + m_completer = completer; + + DoUpdateCompletionModel(); + + return true; + } + +private: + // Ctor is private, use New() to create objects of this type. + explicit wxTextAutoCompleteDynamic(wxTextEntry *entry, wxWindow *win) + : wxTextAutoCompleteData(entry), + m_win(win) { m_completer = NULL; - m_isDynamicCompleter = false; - m_newCompletionsNeeded = m_entry->IsEmpty(); - } - // Helper function for appending a string to GtkListStore. - void AppendToStore(GtkListStore* store, const wxString& s) - { - GtkTreeIter iter; - gtk_list_store_append (store, &iter); - gtk_list_store_set (store, &iter, 0, (const gchar *)s.utf8_str(), -1); - } - - void DoEnableCompletion() - { - if ( !gtk_entry_get_completion (GetGtkEntry()) ) - { - GtkEntryCompletion * const completion = gtk_entry_completion_new(); - - gtk_entry_completion_set_text_column (completion, 0); - gtk_entry_set_completion (GetGtkEntry(), completion); - } + win->Bind(wxEVT_TEXT, &wxTextAutoCompleteDynamic::OnEntryChanged, this); } // for a given prefix, if DoUpdateCompletionModel() succeeds, @@ -324,57 +387,10 @@ private: event.Skip(); } - void DoUpdateCompleterType() - { - const bool isDynamic = (m_completer != NULL); - - if ( m_isDynamicCompleter == isDynamic ) - // we already connected/disconnected to/from - // the event handler. - return; - - m_isDynamicCompleter = isDynamic; - - wxWindow * const win = m_entry->GetEditableWindow(); - - // Disconnect from the event handler if we request - // a non-dynamic behaviour of our completion methods - // (e.g. completions are supplied via - // ChangeStrings() or wxTextCompleterFixed ) - // Connect otherwise. - // - // The event handler role is to request from the m_completer - // to generate dynamically new completions (e.g from database) - // if a certain condition is met (e.g. textentry is cleared - // and/or typed in text length >= *MIN_PREFIX_LENGTH* ) - // - - if ( !m_completer ) - { - win->Unbind(wxEVT_TEXT, &wxTextAutoCompleteData::OnEntryChanged, this); - } - else - { - win->Bind(wxEVT_TEXT, &wxTextAutoCompleteData::OnEntryChanged, this); - } - } - - // Really change the completion model (which may be NULL). - void UseModel(GtkListStore* store) - { - GtkEntryCompletion* const c = gtk_entry_get_completion (GetGtkEntry()); - gtk_entry_completion_set_model (c, GTK_TREE_MODEL(store)); - gtk_entry_completion_complete (c); - } - // Recreate the model to contain all completions for the current prefix. - // - // This should only be called when using a custom completer. void DoUpdateCompletionModel() { - wxASSERT_MSG( m_completer, "m_completer should not be null." ); - - const wxString prefix = m_entry->GetValue(); + const wxString& prefix = m_entry->GetValue(); if ( m_completer->Start(prefix) ) { @@ -400,18 +416,11 @@ private: } - GtkEntry* GetGtkEntry() const { return m_entry->GetEntry(); } - - - // The text entry we're associated with. - wxTextEntry * const m_entry; - - // Custom completer or NULL if none. + // Custom completer. wxTextCompleter *m_completer; - // helps to decide if we should connect/disconnect - // to/from the event handler. - bool m_isDynamicCompleter; + // The associated window, we need to store it to unbind our event handler. + wxWindow* const m_win; // Each time we enter a new prefix, GtkEntryCompletion needs to be fed with // new completions. And this flag lets us try to DoUpdateCompletionModel() @@ -419,7 +428,7 @@ private: // will not try to call it again unless we entered a new prefix. bool m_newCompletionsNeeded; - wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteData); + wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteDynamic); }; @@ -654,23 +663,21 @@ void wxTextEntry::GetSelection(long *from, long *to) const // auto completion // ---------------------------------------------------------------------------- -wxTextAutoCompleteData *wxTextEntry::GetOrCreateCompleter() -{ - if ( !m_autoCompleteData ) - { - m_autoCompleteData = wxTextAutoCompleteData::New(this); - } - - return m_autoCompleteData; -} - bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices) { - wxTextAutoCompleteData * const ac = GetOrCreateCompleter(); - if ( !ac ) - return false; + // Try to update the existing data first. + if ( !m_autoCompleteData || !m_autoCompleteData->ChangeStrings(choices) ) + { + // If it failed, try creating a new object for fixed completion. + wxTextAutoCompleteFixed* const ac = wxTextAutoCompleteFixed::New(this); + if ( !ac ) + return false; - ac->ChangeStrings(choices); + ac->ChangeStrings(choices); + + delete m_autoCompleteData; + m_autoCompleteData = ac; + } return true; } @@ -681,23 +688,35 @@ bool wxTextEntry::DoAutoCompleteCustom(wxTextCompleter *completer) if ( !completer ) { if ( m_autoCompleteData ) + { + // This is not done in dtor because it's unnecessary when replacing + // one completer with another one, and even dangerous, when the + // control is being destroyed anyhow, so we need to call it + // explicitly here to really disable completion. m_autoCompleteData->DisableCompletion(); + + delete m_autoCompleteData; + m_autoCompleteData = NULL; + } //else: Nothing to do, we hadn't used auto-completion even before. } else // Have a valid completer. { - wxTextAutoCompleteData * const ac = GetOrCreateCompleter(); - if ( !ac ) + // As above, try to update the completer of the existing object first + // and fall back on creating a new one. + if ( !m_autoCompleteData || + !m_autoCompleteData->ChangeCompleter(completer) ) { - // Delete the custom completer for consistency with the case when - // we succeed to avoid memory leaks in user code. - delete completer; - return false; - } + wxTextAutoCompleteDynamic* const + ac = wxTextAutoCompleteDynamic::New(this); + if ( !ac ) + return false; - // This gives ownership of the custom completer to m_autoCompleteData. - if ( !ac->ChangeCustomCompleter(completer) ) - return false; + ac->ChangeCompleter(completer); + + delete m_autoCompleteData; + m_autoCompleteData = ac; + } } return true; From 456fdd8f932dfa4e3bb61ab24678ae229d457eec Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 01:18:21 +0100 Subject: [PATCH 227/916] Always update dynamic completions when the text changes Don't do it only when the text entry is (or becomes again) empty, this breaks dynamic completers such as the one used in the widgets sample, which determines its completions depending on the already entered text (of course, the sample example is not particularly useful, as the completions are always the same, but it's supposed to show that they could dynamically depend on the already entered part of the string). --- src/gtk/textentry.cpp | 26 ++------------------------ 1 file changed, 2 insertions(+), 24 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 9f17072503..a65822ffea 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -363,26 +363,12 @@ private: { m_completer = NULL; - m_newCompletionsNeeded = m_entry->IsEmpty(); - win->Bind(wxEVT_TEXT, &wxTextAutoCompleteDynamic::OnEntryChanged, this); } - // for a given prefix, if DoUpdateCompletionModel() succeeds, - // we won't do any further update of the model as long as we - // do not clear the textentry. but then we have to start over again. - - void OnEntryChanged( wxCommandEvent& event ) + void OnEntryChanged(wxCommandEvent& event) { - if ( event.GetString().empty() ) - { - m_newCompletionsNeeded = true; - } - else - { - if ( m_newCompletionsNeeded ) - DoUpdateCompletionModel(); - } + DoUpdateCompletionModel(); event.Skip(); } @@ -406,8 +392,6 @@ private: } UseModel(store); - - m_newCompletionsNeeded = false; } else { @@ -422,12 +406,6 @@ private: // The associated window, we need to store it to unbind our event handler. wxWindow* const m_win; - // Each time we enter a new prefix, GtkEntryCompletion needs to be fed with - // new completions. And this flag lets us try to DoUpdateCompletionModel() - // and if it succeeds, it'll set the flag to false and OnEntryChanged() - // will not try to call it again unless we entered a new prefix. - bool m_newCompletionsNeeded; - wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteDynamic); }; From ec2bb385ef2dbaf311c309abe8fdc41f04ce5bc3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 01:20:30 +0100 Subject: [PATCH 228/916] Remove platform limitations from AutoComplete() documentation This method is now implemented for all major platforms. --- interface/wx/textentry.h | 7 ------- 1 file changed, 7 deletions(-) diff --git a/interface/wx/textentry.h b/interface/wx/textentry.h index 618fde61d9..f580f86f1e 100644 --- a/interface/wx/textentry.h +++ b/interface/wx/textentry.h @@ -52,10 +52,6 @@ public: Call this function to enable auto-completion of the text typed in a single-line text control using the given @a choices. - Notice that currently this function is only implemented in wxGTK2, - wxMSW and wxOSX/Cocoa (for wxTextCtrl only, but not for wxComboBox) - ports and does nothing under the other platforms. - @since 2.9.0 @return @@ -82,9 +78,6 @@ public: Notice that you need to include @c wx/textcompleter.h in order to define your class inheriting from wxTextCompleter. - Currently this method is only implemented in wxMSW and wxOSX/Cocoa (for - wxTextCtrl only, but not for wxComboBox). - @since 2.9.2 @param completer From a14a3de5cebb07a52cc8ab3cd341826af630df47 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 01:35:47 +0100 Subject: [PATCH 229/916] Refactor min autocomplete length handling in widgets sample Call DoUseCustomAutoComplete() function instead of using an artificial event. Also move the menu item in the radio group with the other autocomplete-related commands as it's exclusive with them. --- samples/widgets/widgets.cpp | 46 ++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 21 deletions(-) diff --git a/samples/widgets/widgets.cpp b/samples/widgets/widgets.cpp index ef66b725a6..8fa5ebb5fb 100644 --- a/samples/widgets/widgets.cpp +++ b/samples/widgets/widgets.cpp @@ -192,6 +192,8 @@ protected: void OnAutoCompleteCustom(wxCommandEvent& event); void OnAutoCompleteKeyLength(wxCommandEvent& event); + void DoUseCustomAutoComplete(size_t minLength = 1); + void OnSetHint(wxCommandEvent& event); void OnUpdateTextUI(wxUpdateUIEvent& event) @@ -221,9 +223,6 @@ private: // the book containing the test pages WidgetsBookCtrl *m_book; - // - int m_prefixMinLength; - // any class wishing to process wxWidgets events must use this macro wxDECLARE_EVENT_TABLE(); }; @@ -393,8 +392,6 @@ WidgetsFrame::WidgetsFrame(const wxString& title) #endif // USE_LOG m_book = NULL; - m_prefixMinLength = 1; - #if wxUSE_MENUS // create the menubar wxMenuBar *mbar = new wxMenuBar; @@ -452,9 +449,9 @@ WidgetsFrame::WidgetsFrame(const wxString& title) wxT("&Directories names auto-completion")); menuTextEntry->AppendRadioItem(TextEntry_AutoCompleteCustom, wxT("&Custom auto-completion")); + menuTextEntry->AppendRadioItem(TextEntry_AutoCompleteKeyLength, + wxT("Custom with &min length")); menuTextEntry->AppendSeparator(); - menuTextEntry->Append(TextEntry_AutoCompleteKeyLength, - wxT("&Minimum key length for auto-completion")); menuTextEntry->Append(TextEntry_SetHint, "Set help &hint"); mbar->Append(menuTextEntry, wxT("&Text")); @@ -1036,6 +1033,11 @@ void WidgetsFrame::OnAutoCompleteDirectories(wxCommandEvent& WXUNUSED(event)) } void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) +{ + DoUseCustomAutoComplete(); +} + +void WidgetsFrame::DoUseCustomAutoComplete(size_t minLength) { wxTextEntryBase *entry = CurrentPage()->GetTextEntry(); wxCHECK_RET( entry, "menu item should be disabled" ); @@ -1049,7 +1051,10 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) class CustomTextCompleter : public wxTextCompleterSimple { public: - CustomTextCompleter( int length ) : m_minLength( length ) {} + explicit CustomTextCompleter(size_t minLength) + : m_minLength(minLength) + { + } virtual void GetCompletions(const wxString& prefix, wxArrayString& res) wxOVERRIDE { @@ -1077,12 +1082,10 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) } logCompletions(prefix, res); - // Normally it doesn't make sense to complete empty control, there - // are too many choices and listing them all wouldn't be helpful. - // Or if we know in advance that a prefix with one or two characters - // would still results in too many choices too. - if ( prefix.empty() || - prefix.length() < static_cast(m_minLength) ) + // Wait for enough text to be entered before proposing completions: + // this is done to avoid proposing too many of them when the + // control is empty, for example. + if ( prefix.length() < m_minLength ) return; // The only valid strings start with 3 digits so check for their @@ -1134,10 +1137,10 @@ void WidgetsFrame::OnAutoCompleteCustom(wxCommandEvent& WXUNUSED(event)) } } - int m_minLength; + size_t m_minLength; }; - if ( entry->AutoComplete( new CustomTextCompleter( m_prefixMinLength ) ) ) + if ( entry->AutoComplete(new CustomTextCompleter(minLength))) { wxLogMessage("Enabled custom auto completer for \"NNN XX\" items " "(where N is a digit and X is a letter)."); @@ -1152,16 +1155,17 @@ void WidgetsFrame::OnAutoCompleteKeyLength(wxCommandEvent& WXUNUSED(event)) { const wxString message = "The auto-completion is triggered if and only if\n" "the length of the search key (prefix) is at least [LENGTH].\n" - "Hint: negative values disable auto-completion."; + "Hint: 0 disables the length check completely."; const wxString prompt = "Enter the minimum key length:"; const wxString caption = "Minimum key length"; - m_prefixMinLength = wxGetNumberFromUser(message, prompt, caption, 1, -1, 100, this); + int res = wxGetNumberFromUser(message, prompt, caption, 1, 0, 100, this); + if ( res == -1 ) + return; - wxCommandEvent theEvent(wxEVT_MENU, TextEntry_AutoCompleteCustom); - ProcessEventLocally(theEvent); + wxLogMessage("The minimum key length for autocomplete is %d.", res); - wxLogMessage("The minimum key length for autocomplete is : %d.", m_prefixMinLength); + DoUseCustomAutoComplete(static_cast(res)); } void WidgetsFrame::OnSetHint(wxCommandEvent& WXUNUSED(event)) From a6eb4c8e646697fa6ff5c5445d2d45bb335f8983 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 11:55:37 +0100 Subject: [PATCH 230/916] Fix Unix build when using precompiled headers In a twist on the usual theme, the previous commits broke the Unix build when _using_ PCH because wx/textcompleter.h was only included from inside "#ifndef WX_PRECOMP" check, but it needs to be always included as wx/wx.h doesn't include it. --- src/gtk/textentry.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index a65822ffea..84144d2289 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -28,10 +28,11 @@ #include "wx/event.h" #include "wx/textentry.h" #include "wx/textctrl.h" - #include "wx/textcompleter.h" #include "wx/window.h" #endif //WX_PRECOMP +#include "wx/textcompleter.h" + #include #include "wx/gtk/private.h" #include "wx/gtk/private/gtk2-compat.h" From 264f93aad99664d5b022189e7b0a7aa2c68f16e1 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 13:37:53 +0100 Subject: [PATCH 231/916] Fix harmless signed/unsigned comparison warning in wxSTC code Cast int to size_t before comparing it with the wxString length. --- src/stc/PlatWX.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index 05002340fc..22339fb672 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -1652,9 +1652,10 @@ void SurfaceD2D::MeasureWidths(Font &font_, const char *s, int len, } else { + const size_t buflen = static_cast(len); // One character per position - PLATFORM_ASSERT(len == tbuf.Length()); - for ( size_t kk=0; kk(len); kk++ ) + PLATFORM_ASSERT(buflen == tbuf.Length()); + for ( size_t kk=0; kk Date: Sat, 27 Jan 2018 13:38:47 +0100 Subject: [PATCH 232/916] Declare wxSearchCtrl::{Set,Get}DescriptiveText() in the base class Fix a trivial "TODO" remaining from 2.8 days and declare the functions that are part of the public control API as pure virtuals in the base class. No real changes. --- include/wx/generic/srchctlg.h | 5 ++--- include/wx/osx/srchctrl.h | 5 ++--- include/wx/srchctrl.h | 3 +++ 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/include/wx/generic/srchctlg.h b/include/wx/generic/srchctlg.h index a3d0ce86fe..ebcae90e78 100644 --- a/include/wx/generic/srchctlg.h +++ b/include/wx/generic/srchctlg.h @@ -61,9 +61,8 @@ public: virtual void ShowCancelButton( bool show ) wxOVERRIDE; virtual bool IsCancelButtonVisible() const wxOVERRIDE; - // TODO: In 2.9 these should probably be virtual, and declared in the base class... - void SetDescriptiveText(const wxString& text); - wxString GetDescriptiveText() const; + virtual void SetDescriptiveText(const wxString& text) wxOVERRIDE; + virtual wxString GetDescriptiveText() const wxOVERRIDE; // accessors // --------- diff --git a/include/wx/osx/srchctrl.h b/include/wx/osx/srchctrl.h index 4a4d88af47..2bef62b75e 100644 --- a/include/wx/osx/srchctrl.h +++ b/include/wx/osx/srchctrl.h @@ -54,9 +54,8 @@ public: virtual void ShowCancelButton( bool show ) wxOVERRIDE; virtual bool IsCancelButtonVisible() const wxOVERRIDE; - // TODO: In 2.9 these should probably be virtual, and declared in the base class... - void SetDescriptiveText(const wxString& text); - wxString GetDescriptiveText() const; + virtual void SetDescriptiveText(const wxString& text) wxOVERRIDE; + virtual wxString GetDescriptiveText() const wxOVERRIDE; virtual bool HandleSearchFieldSearchHit() ; virtual bool HandleSearchFieldCancelHit() ; diff --git a/include/wx/srchctrl.h b/include/wx/srchctrl.h index b28d3912d1..791fcb8092 100644 --- a/include/wx/srchctrl.h +++ b/include/wx/srchctrl.h @@ -68,6 +68,9 @@ public: virtual void ShowCancelButton( bool show ) = 0; virtual bool IsCancelButtonVisible() const = 0; + virtual void SetDescriptiveText(const wxString& text) = 0; + virtual wxString GetDescriptiveText() const = 0; + private: // implement wxTextEntry pure virtual method virtual wxWindow *GetEditableWindow() wxOVERRIDE { return this; } From 652b4eb8ed940f1a57e38d4b9d949b34e886d53d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 13:46:54 +0100 Subject: [PATCH 233/916] Add "hint" property to wxSearchCtrl XRC handler This is similar to wxTextCtrl property of the same name and maps naturally to wxSearchCtrl descriptive text attribute. --- docs/changes.txt | 1 + docs/doxygen/overviews/xrc_format.h | 3 +++ src/xrc/xh_srchctrl.cpp | 4 ++++ 3 files changed, 8 insertions(+) diff --git a/docs/changes.txt b/docs/changes.txt index 27f23deb7e..421f13d163 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -176,6 +176,7 @@ All (GUI): - Add wxFontPickerCtrl::SetMinPointSize() (Andreas Falkenhahn). - Add Set/GetFooter/Text/Icon() to wxRichMessageDialog (Tobias Taschner) - Add wxFloatingPointValidator::SetFactor(). +- Add "hint" property to wxSearchCtrl XRC handler. wxGTK: diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index 75a9f54815..92cea1ff7c 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -1950,6 +1950,9 @@ child and the second one for right/bottom child window. @hdr3col{property, type, description} @row3col{value, @ref overview_xrcformat_type_text, Initial value of the control (default: empty).} +@row3col{hint, @ref overview_xrcformat_type_text, + Descriptive text shown in the empty control (default: "Search"). This + property is new since wxWidgets 3.1.1.} @endTable diff --git a/src/xrc/xh_srchctrl.cpp b/src/xrc/xh_srchctrl.cpp index dbaafdedde..122d38cfbc 100644 --- a/src/xrc/xh_srchctrl.cpp +++ b/src/xrc/xh_srchctrl.cpp @@ -49,6 +49,10 @@ wxObject *wxSearchCtrlXmlHandler::DoCreateResource() SetupWindow(ctrl); + const wxString& hint = GetText(wxS("hint")); + if ( !hint.empty() ) + ctrl->SetDescriptiveText(hint); + return ctrl; } From 981697079739c4a920dc2d2cb261ca57dc2169f6 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 14:01:58 +0100 Subject: [PATCH 234/916] Fix getting wxEVT_TEXT_ENTER from wxSearchCtrl wxSearchCtrl never generated this event, at least under MSW, even though the code to forward it from wxSearchTextCtrl was present in it, because it was never generated in the first place without wxTE_PROCESS_ENTER. Fix this by simply always using this style in wxSearchTextCtrl. --- src/generic/srchctlg.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index 9264d8def9..5ad5654fe4 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -49,7 +49,7 @@ class wxSearchTextCtrl : public wxTextCtrl public: wxSearchTextCtrl(wxSearchCtrl *search, const wxString& value, int style) : wxTextCtrl(search, wxID_ANY, value, wxDefaultPosition, wxDefaultSize, - (style & ~wxBORDER_MASK) | wxNO_BORDER) + (style & ~wxBORDER_MASK) | wxNO_BORDER | wxTE_PROCESS_ENTER) { m_search = search; From 44a089b295c557c1ffbbae6fd3c36504140e92b0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 15:49:46 +0100 Subject: [PATCH 235/916] Fix handling TAB in wxSearchCtrl in wxMSW Check whether wxTextCtrl has focus using Win32 ::GetFocus() instead of by comparing FindFocus() with "this" pointer, as the latter fails when wxTextCtrl is part of a composite control, such as wxSearchCtrl. This is enough to make pressing TAB in wxSearchCtrl correctly go to the next control instead of just beeping. Note that we could also use DoFindFocus() here, but this would be needlessly less efficient as we don't really need to find wxWindow corresponding to the focused HWND, as that function does. But we can't use HasFocus() here as it wouldn't work correctly here when the focus is on another sub-window of a composite control also containing this wxTextCtrl. --- src/msw/textctrl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/msw/textctrl.cpp b/src/msw/textctrl.cpp index 2f7bc4d21a..686435b620 100644 --- a/src/msw/textctrl.cpp +++ b/src/msw/textctrl.cpp @@ -2078,7 +2078,7 @@ void wxTextCtrl::OnChar(wxKeyEvent& event) // forces at the moment unfortunately if ( !(m_windowStyle & wxTE_PROCESS_TAB)) { - if ( FindFocus() == this ) + if ( ::GetFocus() == GetHwnd() ) { int flags = 0; if (!event.ShiftDown()) From 160647aaf24f0d0e4d3605aaacbe4db476baf835 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 27 Jan 2018 18:58:13 +0100 Subject: [PATCH 236/916] Fix processing of pending events in mixed MFC/wx applications ProcessPendingEvents() was never called when using MFC event loop, meaning that queued events were never processed, so that using CallAfter() didn't work. Fix this and also ensure that these events are processed soon enough by also implementing WakeUpIdle() for such applications, as wxWakeUpIdle() didn't do anything neither for them. --- include/wx/msw/mfc.h | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/include/wx/msw/mfc.h b/include/wx/msw/mfc.h index 830db351ac..f670b1b843 100644 --- a/include/wx/msw/mfc.h +++ b/include/wx/msw/mfc.h @@ -113,8 +113,13 @@ public: { BOOL moreIdle = BaseApp::OnIdle(lCount); - if ( wxTheApp && wxTheApp->ProcessIdle() ) - moreIdle = TRUE; + if ( wxTheApp ) + { + wxTheApp->ProcessPendingEvents(); + + if ( wxTheApp->ProcessIdle() ) + moreIdle = TRUE; + } return moreIdle; } @@ -172,6 +177,17 @@ public: // instead. ::PostQuitMessage(0); } + + void WakeUpIdle() wxOVERRIDE + { + // As above, we can't wake up any wx event loop, so try to wake up the + // MFC one instead. + CWinApp* const mfcApp = AfxGetApp(); + if ( mfcApp && mfcApp->m_pMainWnd ) + { + ::PostMessage(mfcApp->m_pMainWnd->m_hWnd, WM_NULL, 0, 0); + } + } }; #endif // _WX_MSW_MFC_H_ From 5017c6c8c236544b0ffa4aded6768a8b7d2e0959 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 27 Jan 2018 13:33:31 +0100 Subject: [PATCH 237/916] CMake: expat code in separate file Consistent with other external libraries. --- build/cmake/lib/CMakeLists.txt | 2 +- build/cmake/lib/expat.cmake | 22 ++++++++++++++++++++++ build/cmake/lib/xml/CMakeLists.txt | 12 ------------ build/cmake/options.cmake | 2 -- 4 files changed, 23 insertions(+), 15 deletions(-) create mode 100644 build/cmake/lib/expat.cmake diff --git a/build/cmake/lib/CMakeLists.txt b/build/cmake/lib/CMakeLists.txt index a676510ad7..45a7696d01 100644 --- a/build/cmake/lib/CMakeLists.txt +++ b/build/cmake/lib/CMakeLists.txt @@ -20,7 +20,7 @@ if(wxBUILD_MONOLITHIC) endif() # Define third party libraries -set(LIBS_THIRDPARTY regex zlib) +set(LIBS_THIRDPARTY regex zlib expat) if(wxUSE_GUI) list(APPEND LIBS_THIRDPARTY jpeg png tiff) endif() diff --git a/build/cmake/lib/expat.cmake b/build/cmake/lib/expat.cmake new file mode 100644 index 0000000000..630ce175d3 --- /dev/null +++ b/build/cmake/lib/expat.cmake @@ -0,0 +1,22 @@ +############################################################################# +# Name: build/cmake/lib/expat.cmake +# Purpose: Use external or internal expat lib +# Author: Tobias Taschner +# Created: 2016-09-21 +# Copyright: (c) 2016 wxWidgets development team +# Licence: wxWindows licence +############################################################################# + +wx_add_thirdparty_library(wxUSE_EXPAT EXPAT "use expat for XML parsing" DEFAULT_APPLE sys) + +if(wxUSE_EXPAT STREQUAL "builtin") + wx_add_builtin_library(wxexpat + src/expat/expat/lib/xmlparse.c + src/expat/expat/lib/xmlrole.c + src/expat/expat/lib/xmltok.c + ) + set(EXPAT_LIBRARIES wxexpat) + set(EXPAT_INCLUDE_DIRS ${wxSOURCE_DIR}/src/expat/expat/lib) +elseif(wxUSE_EXPAT) + find_package(EXPAT REQUIRED) +endif() diff --git a/build/cmake/lib/xml/CMakeLists.txt b/build/cmake/lib/xml/CMakeLists.txt index 4dfc9e4cc2..21173c5ad1 100644 --- a/build/cmake/lib/xml/CMakeLists.txt +++ b/build/cmake/lib/xml/CMakeLists.txt @@ -9,18 +9,6 @@ include(../../source_groups.cmake) -if(wxUSE_EXPAT STREQUAL "builtin") - wx_add_builtin_library(wxexpat - src/expat/expat/lib/xmlparse.c - src/expat/expat/lib/xmlrole.c - src/expat/expat/lib/xmltok.c - ) - set(EXPAT_LIBRARIES wxexpat) - set(EXPAT_INCLUDE_DIRS ${wxSOURCE_DIR}/src/expat/expat/lib) -elseif(wxUSE_EXPAT) - find_package(EXPAT) -endif() - wx_append_sources(XML_FILES XML) wx_add_library(xml IS_BASE ${XML_FILES}) wx_lib_link_libraries(xml diff --git a/build/cmake/options.cmake b/build/cmake/options.cmake index fd0dab3cbe..10797d80cc 100644 --- a/build/cmake/options.cmake +++ b/build/cmake/options.cmake @@ -56,8 +56,6 @@ wx_option(wxUSE_VISIBILITY "use of ELF symbols visibility") # --------------------------------------------------------------------------- # external libraries # --------------------------------------------------------------------------- -wx_add_thirdparty_library(wxUSE_EXPAT EXPAT "use expat for XML parsing" - DEFAULT_APPLE sys) wx_option(wxUSE_OPENGL "use OpenGL (or Mesa)") From 90369e9632435e63c7f029e9022d3ca6b8dc929f Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 27 Jan 2018 13:39:45 +0100 Subject: [PATCH 238/916] CMake: fix building library with wxUSE_GUI 0 Actual toolkit should still be defined (e.g. WXMSW), before settings WXBASE. Move Windows libraries outide toolkit so they are always linked to. --- build/cmake/functions.cmake | 27 +++++++++++++++++++++++++++ build/cmake/toolkit.cmake | 35 ++++++++--------------------------- 2 files changed, 35 insertions(+), 27 deletions(-) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index 87cd46ef36..a3809a6259 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -193,6 +193,33 @@ function(wx_set_target_properties target_name is_base) target_include_directories(${target_name} PUBLIC ${wxTOOLKIT_INCLUDE_DIRS}) endif() + + if (WXMSW) + set(WXMSW_LIBRARIES + kernel32 + user32 + gdi32 + comdlg32 + winspool + winmm + shell32 + shlwapi + comctl32 + ole32 + oleaut32 + uuid + rpcrt4 + advapi32 + version + wsock32 + wininet + oleacc + uxtheme + ) + target_link_libraries(${target_name} + PUBLIC ${WXMSW_LIBRARIES}) + endif() + if(wxTOOLKIT_LIBRARIES) target_link_libraries(${target_name} PUBLIC ${wxTOOLKIT_LIBRARIES}) diff --git a/build/cmake/toolkit.cmake b/build/cmake/toolkit.cmake index 49b798451d..edcf0ebe69 100644 --- a/build/cmake/toolkit.cmake +++ b/build/cmake/toolkit.cmake @@ -39,10 +39,6 @@ wx_option(wxBUILD_TOOLKIT "Toolkit used by wxWidgets" ${wxDEFAULT_TOOLKIT} # TODO: set to univ for universal build set(wxBUILD_WIDGETSET "") -if(NOT wxUSE_GUI) - set(wxBUILD_TOOLKIT "base") -endif() - # Create shortcut variable for easy toolkit tests string(TOUPPER ${wxBUILD_TOOLKIT} toolkit_upper) set(WX${toolkit_upper} ON) @@ -54,6 +50,13 @@ endif() set(wxTOOLKIT_DEFINITIONS __WX${toolkit_upper}__) +if(NOT wxUSE_GUI) + set(wxBUILD_TOOLKIT "base") + string(TOUPPER ${wxBUILD_TOOLKIT} toolkit_upper) + set(WX${toolkit_upper} ON) + set(wxTOOLKIT_DEFINITIONS __WX${toolkit_upper}__) +endif() + # Initialize toolkit variables if(wxUSE_GUI) set(wxTOOLKIT_INCLUDE_DIRS) @@ -66,29 +69,7 @@ if(UNIX AND NOT APPLE AND NOT WIN32) list(APPEND wxTOOLKIT_LIBRARIES ${X11_LIBRARIES}) endif() -if(WXMSW) - set(wxTOOLKIT_LIBRARIES - kernel32 - user32 - gdi32 - comdlg32 - winspool - winmm - shell32 - shlwapi - comctl32 - ole32 - oleaut32 - uuid - rpcrt4 - advapi32 - version - wsock32 - wininet - oleacc - uxtheme - ) -elseif(WXGTK) +if(WXGTK) if(WXGTK3) set(gtk_lib GTK3) elseif(WXGTK2) From 4171f9b8080e28bde15036e21b28aebd13685a77 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Thu, 25 Jan 2018 19:21:42 +0100 Subject: [PATCH 239/916] Use parallel builds in Travis CI Don't use it when building samples. It randomly results in build errors with 'file not recognized: File truncated'. --- build/tools/travis-ci.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/build/tools/travis-ci.sh b/build/tools/travis-ci.sh index 3dfcc673a6..228e6d653b 100755 --- a/build/tools/travis-ci.sh +++ b/build/tools/travis-ci.sh @@ -4,6 +4,14 @@ set -e +wxPROC_COUNT=`getconf _NPROCESSORS_ONLN` +((wxPROC_COUNT++)) +if [ "$wxTOOLSET" == "cmake" ] && [ "$wxCMAKE_GENERATOR" == "Xcode" ]; then + wxJOBS="-jobs $wxPROC_COUNT" +else + wxJOBS="-j$wxPROC_COUNT" +fi + case $wxTOOLSET in cmake) if [ `uname -s` = "Linux" ] && [ `lsb_release -cs` = "precise" ]; then @@ -22,7 +30,7 @@ case $wxTOOLSET in echo 'travis_fold:end:configure' echo 'travis_fold:start:building' echo 'Building...' - cmake --build . + cmake --build . -- $wxJOBS echo 'travis_fold:end:building' if [ "$wxCMAKE_TESTS" != "OFF" ]; then echo 'travis_fold:start:testing' @@ -36,10 +44,10 @@ case $wxTOOLSET in ./configure --disable-optimise $wxCONFIGURE_FLAGS echo -en 'travis_fold:end:script.configure\\r' echo 'Building...' && echo -en 'travis_fold:start:script.build\\r' - make + make $wxJOBS echo -en 'travis_fold:end:script.build\\r' echo 'Building tests...' && echo -en 'travis_fold:start:script.tests\\r' - make -C tests + make -C tests $wxJOBS echo -en 'travis_fold:end:script.tests\\r' echo 'Testing...' && echo -en 'travis_fold:start:script.testing\\r' pushd tests && ./test && popd From c341d72a92ffb512de56a8867bc72ba9fe10b0e0 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Thu, 25 Jan 2018 19:23:53 +0100 Subject: [PATCH 240/916] Remove downloading CppUnit and CMake in Travis CI CppUnit has been replaced by Catch. The Precise build environment is not used, so no need to download CMake for it. --- build/tools/before_install.sh | 2 -- build/tools/travis-ci.sh | 6 ------ 2 files changed, 8 deletions(-) diff --git a/build/tools/before_install.sh b/build/tools/before_install.sh index 444683b503..83a8fed7b3 100755 --- a/build/tools/before_install.sh +++ b/build/tools/before_install.sh @@ -19,7 +19,5 @@ case $(uname -s) in ;; Darwin) - brew update - brew install cppunit --universal ;; esac diff --git a/build/tools/travis-ci.sh b/build/tools/travis-ci.sh index 228e6d653b..be740109bc 100755 --- a/build/tools/travis-ci.sh +++ b/build/tools/travis-ci.sh @@ -14,12 +14,6 @@ fi case $wxTOOLSET in cmake) - if [ `uname -s` = "Linux" ] && [ `lsb_release -cs` = "precise" ]; then - echo Updating CMake... - wget -O - https://cmake.org/files/v3.6/cmake-3.6.2-Linux-x86_64.tar.gz | tar xzf - - export PATH=`pwd`/cmake-3.6.2-Linux-x86_64/bin:$PATH - fi - if [ -z $wxCMAKE_TESTS ]; then wxCMAKE_TESTS=CONSOLE_ONLY; fi cmake --version echo 'travis_fold:start:configure' From 4fcc6e15b07b78f54d9783b6d940d12ec4640627 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 28 Jan 2018 16:35:10 +0100 Subject: [PATCH 241/916] Use all available size for the video in mediaplayer sample wxMediaCtrl doesn't compute its best size correctly until a video is available and this resulted in using the best size of (0, 0) for it and nothing being shown at all on the screen, even after starting to play a video. This is almost certainly a problem on its own, as there is some existing code for updating the best size and redoing the layout of the parent sizer when a new video is loaded, but for now just make the control visible in the sample again by always expanding it to fill up all the available size, as this is the smallest possible fix and this is how it used to behave before, until 9aaa38c7c8f2c1cdd672e5b7fa757e591495c4cc, which allowed to meaningfully use wxALIGN_CENTER_HORIZONTAL and wxEXPAND together: until then, this didn't work at all, but the sample still used wxALIGN_CENTER_HORIZONTAL by mistake, so just remove it now to restore the original behaviour. Closes #17917. --- samples/mediaplayer/mediaplayer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/mediaplayer/mediaplayer.cpp b/samples/mediaplayer/mediaplayer.cpp index bdcb095f81..6293bde936 100644 --- a/samples/mediaplayer/mediaplayer.cpp +++ b/samples/mediaplayer/mediaplayer.cpp @@ -1588,7 +1588,7 @@ wxMediaPlayerNotebookPage::wxMediaPlayerNotebookPage(wxMediaPlayerFrame* parentF wxASSERT_MSG(bOK, wxT("Could not create media control!")); wxUnusedVar(bOK); - sizer->Add(m_mediactrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALL|wxEXPAND, 5); + sizer->Add(m_mediactrl, wxSizerFlags().Expand().Border()); // // Create the playlist/listctrl From 26997607b64d9eb138c401870ab41632d99f784b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 28 Jan 2018 19:04:42 +0100 Subject: [PATCH 242/916] Improve SetSizerAndFit() and Fit() documentation Mention the difference between these two functions in Fit() description, it could be expected to behave as SetSizerAndFit() but doesn't. See #18003. --- interface/wx/window.h | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/interface/wx/window.h b/interface/wx/window.h index 672a6f94e9..1ddd6c345e 100644 --- a/interface/wx/window.h +++ b/interface/wx/window.h @@ -948,20 +948,13 @@ public: virtual wxSize WindowToClientSize(const wxSize& size) const; /** - Sizes the window so that it fits around its subwindows. + Sizes the window to fit its best size. - This function won't do anything if there are no subwindows and will only really - work correctly if sizers are used for the subwindows layout. + Using this function is equivalent to setting window size to the return + value of GetBestSize(). - Also, if the window has exactly one subwindow it is better (faster and the result - is more precise as Fit() adds some margin to account for fuzziness of its calculations) - to call: - - @code - window->SetClientSize(child->GetSize()); - @endcode - - instead of calling Fit(). + Note that, unlike SetSizerAndFit(), this function only changes the + current window size and doesn't change its minimal size. @see @ref overview_windowsizing */ @@ -3336,10 +3329,15 @@ public: void SetSizer(wxSizer* sizer, bool deleteOld = true); /** - This method calls SetSizer() and then wxSizer::SetSizeHints which sets the initial - window size to the size needed to accommodate all sizer elements and sets the - size hints which, if this window is a top level one, prevent the user from - resizing it to be less than this minimal size. + Associate the sizer with the window and set the window size and minimal + size accordingly. + + This method calls SetSizer() and then wxSizer::SetSizeHints() which + sets the initial window size to the size needed to accommodate all + sizer elements and sets the minimal size to the same size, this + preventing the user from resizing this window to be less than this + minimal size (if it's a top-level window which can be directly resized + by the user). */ void SetSizerAndFit(wxSizer* sizer, bool deleteOld = true); From e6b9b571ab59cb1d273d551f3ab6db8f82b47757 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 27 Jan 2018 14:28:23 +0100 Subject: [PATCH 243/916] CMake: fix and add more options Don't overwrite options in setup.cmake. Align text in summary message. Always set wxUSE_XRC to values of wxUSE_XRC, same as in setup.h. Disable wxUSE_XRC when expat is disabled. --- build/cmake/init.cmake | 27 ++++++++----------- build/cmake/main.cmake | 4 +-- build/cmake/options.cmake | 55 ++++++++++++++++++++++++++++++--------- build/cmake/setup.cmake | 18 ------------- 4 files changed, 56 insertions(+), 48 deletions(-) diff --git a/build/cmake/init.cmake b/build/cmake/init.cmake index 689cc2c291..bb17e3fd85 100644 --- a/build/cmake/init.cmake +++ b/build/cmake/init.cmake @@ -119,18 +119,24 @@ set(wxUSE_STD_DEFAULT ON) if(wxUSE_UNICODE) set(wxUSE_WCHAR_T ON) endif() -if(wxUSE_EXPAT) - set(wxUSE_XML ON) -else() - set(wxUSE_XML OFF) +if(NOT wxUSE_EXPAT) + set(wxUSE_XRC OFF) endif() +set(wxUSE_XML ${wxUSE_XRC}) if(wxUSE_CONFIG) set(wxUSE_CONFIG_NATIVE ON) endif() if(DEFINED wxUSE_OLE AND wxUSE_OLE) set(wxUSE_OLE_AUTOMATION ON) - set(wxUSE_ACTIVEX ON) +endif() + +if(DEFINED wxUSE_GRAPHICS_DIRECT2D AND NOT wxUSE_GRAPHICS_CONTEXT) + set(wxUSE_GRAPHICS_DIRECT2D OFF) +endif() + +if(wxUSE_OPENGL) + set(wxUSE_GLCANVAS ON) endif() if(wxUSE_THREADS) @@ -138,22 +144,11 @@ if(wxUSE_THREADS) endif() if(wxUSE_GUI) - # Constants for GUI - set(wxUSE_COMMON_DIALOGS ON) - - if(wxUSE_TASKBARICON) - set(wxUSE_TASKBARICON_BALLOONS ON) - endif() - if(WIN32 AND wxUSE_METAFILE) # this one should probably be made separately configurable set(wxUSE_ENH_METAFILE ON) endif() - if(wxUSE_IMAGE) - set(wxUSE_WXDIB ON) - endif() - if(wxUSE_OPENGL) find_package(OpenGL) if(NOT OPENGL_FOUND) diff --git a/build/cmake/main.cmake b/build/cmake/main.cmake index c9620bb051..79b633185f 100644 --- a/build/cmake/main.cmake +++ b/build/cmake/main.cmake @@ -67,9 +67,9 @@ wx_print_thirdparty_library_summary() message(STATUS "Configured wxWidgets ${wxVERSION} for ${CMAKE_SYSTEM} Min OS Version required at runtime: ${wxREQUIRED_OS_DESC} - Which GUI toolkit should wxWidgets use?: ${wxBUILD_TOOLKIT} ${wxTOOLKIT_VERSION} + Which GUI toolkit should wxWidgets use? ${wxBUILD_TOOLKIT} ${wxTOOLKIT_VERSION} Should wxWidgets be compiled into single library? ${wxBUILD_MONOLITHIC} Should wxWidgets be linked as a shared library? ${wxBUILD_SHARED} Should wxWidgets support Unicode? ${wxUSE_UNICODE} - What level of wxWidgets compatibility should be enabled? ${wxBUILD_COMPATIBILITY}" + What wxWidgets compatibility level should be used? ${wxBUILD_COMPATIBILITY}" ) diff --git a/build/cmake/options.cmake b/build/cmake/options.cmake index 10797d80cc..59dd8b4692 100644 --- a/build/cmake/options.cmake +++ b/build/cmake/options.cmake @@ -47,11 +47,13 @@ wx_dependent_option(wxUSE_STD_CONTAINERS "use standard C++ container classes" OF wx_option(wxUSE_UNICODE "compile with Unicode support (NOT RECOMMENDED to be turned off)") if(NOT WIN32) wx_option(wxUSE_UNICODE_UTF8 "use UTF-8 representation for strings (Unix only)" OFF) - wx_dependent_option(wxUSE_UNICODE_UTF8_LOCALE "only support UTF-8 locales in UTF-8 build (Unix only)" ON "wxUSE_UNICODE_UTF8" OFF) + wx_dependent_option(wxUSE_UTF8_LOCALE_ONLY "only support UTF-8 locales in UTF-8 build (Unix only)" ON "wxUSE_UNICODE_UTF8" OFF) endif() wx_option(wxUSE_COMPILER_TLS "enable use of compiler TLS support") wx_option(wxUSE_VISIBILITY "use of ELF symbols visibility") +wx_option(wxUSE_UNSAFE_WXSTRING_CONV "provide unsafe implicit conversions in wxString to const char* or std::string") +wx_option(wxUSE_REPRODUCIBLE_BUILD "enable reproducable build" OFF) # --------------------------------------------------------------------------- # external libraries @@ -70,10 +72,6 @@ wx_option(wxUSE_INTL "use internationalization system") wx_option(wxUSE_XLOCALE "use x-locale support (requires wxLocale)") wx_option(wxUSE_CONFIG "use wxConfig (and derived) classes") -wx_option(wxUSE_PROTOCOL "use wxProtocol and derived classes") -wx_option(wxUSE_PROTOCOL_FTP "use wxFTP (requires wxProtocol") -wx_option(wxUSE_PROTOCOL_HTTP "use wxHTTP (requires wxProtocol") -wx_option(wxUSE_PROTOCOL_FILE "use wxFileProto class (requires wxProtocol") wx_option(wxUSE_SOCKETS "use socket/network classes") wx_option(wxUSE_IPV6 "enable IPv6 support in wxSocket") if(WIN32) @@ -163,6 +161,7 @@ wx_option(wxUSE_MS_HTML_HELP "use MS HTML Help (win32)") wx_option(wxUSE_HTML "use wxHTML sub-library") wx_option(wxUSE_WXHTML_HELP "use wxHTML-based help") wx_option(wxUSE_XRC "use XRC resources sub-library") +wx_option(wxUSE_XML "use the xml library (overruled by wxUSE_XRC)") wx_option(wxUSE_AUI "use AUI docking library") wx_option(wxUSE_PROPGRID "use wxPropertyGrid library") wx_option(wxUSE_RIBBON "use wxRibbon library") @@ -170,16 +169,19 @@ wx_option(wxUSE_STC "use wxStyledTextCtrl library") wx_option(wxUSE_CONSTRAINTS "use layout-constraints system") wx_option(wxUSE_LOGGUI "use standard GUI logger") wx_option(wxUSE_LOGWINDOW "use wxLogWindow") -wx_option(wxUSE_LOGDIALOG "use wxLogDialog") +wx_option(wxUSE_LOG_DIALOG "use wxLogDialog") wx_option(wxUSE_MDI "use multiple document interface architecture") wx_option(wxUSE_MDI_ARCHITECTURE "use docview architecture with MDI") wx_option(wxUSE_MEDIACTRL "use wxMediaCtrl class") wx_option(wxUSE_RICHTEXT "use wxRichTextCtrl") wx_option(wxUSE_POSTSCRIPT "use wxPostscriptDC device context (default for gtk+)") +wx_option(wxUSE_AFM_FOR_POSTSCRIPT "in wxPostScriptDC class use AFM (adobe font metrics) file for character widths") wx_option(wxUSE_PRINTING_ARCHITECTURE "use printing architecture") wx_option(wxUSE_SVG "use wxSVGFileDC device context") -wx_option(wxUSE_WEBKIT "use wxWebKitCtrl (Mac-only, use wxWebView instead)") wx_option(wxUSE_WEBVIEW "use wxWebView library") +if(APPLE) + wx_option(wxUSE_WEBKIT "use wxWebKitCtrl (Mac-only, use wxWebView instead)") +endif() # wxDC is implemented in terms of wxGraphicsContext in wxOSX so the latter # can't be disabled, don't even provide an option to do it @@ -187,8 +189,18 @@ if(APPLE) set(wxUSE_GRAPHICS_CONTEXT ON) else() wx_option(wxUSE_GRAPHICS_CONTEXT "use graphics context 2D drawing API") + if (WIN32 AND (NOT MSVC OR MSVC_VERSION LESS 1600)) + wx_option(wxUSE_GRAPHICS_DIRECT2D "enable Direct2D graphics context" OFF) + endif() endif() +if(WXGTK) + set(wxUSE_CAIRO_DEFAULT ON) +else() + set(wxUSE_CAIRO_DEFAULT OFF) +endif() +wx_option(wxUSE_CAIRO "enable Cairo graphics context" ${wxUSE_CAIRO_DEFAULT}) + # --------------------------------------------------------------------------- # IPC &c # --------------------------------------------------------------------------- @@ -291,7 +303,7 @@ wx_option(wxUSE_TREELISTCTRL "use wxTreeListCtrl class") # common dialogs # --------------------------------------------------------------------------- -wx_option(wxUSE_COMMONDLGS "use all common dialogs") +wx_option(wxUSE_COMMON_DIALOGS "use all common dialogs") wx_option(wxUSE_ABOUTDLG "use wxAboutBox") wx_option(wxUSE_CHOICEDLG "use wxChoiceDialog") wx_option(wxUSE_COLOURDLG "use wxColourDialog") @@ -323,11 +335,18 @@ wx_option(wxUSE_JOYSTICK "use wxJoystick") wx_option(wxUSE_METAFILE "use wxMetaFile") wx_option(wxUSE_DRAGIMAGE "use wxDragImage") if(WIN32) - wx_option(wxUSE_ACCESSIBILITY "enable accessibility support" ON) + wx_option(wxUSE_ACCESSIBILITY "enable accessibility support") endif() wx_option(wxUSE_UIACTIONSIMULATOR "use wxUIActionSimulator (experimental)") wx_option(wxUSE_DC_TRANSFORM_MATRIX "use wxDC::SetTransformMatrix and related") wx_option(wxUSE_WEBVIEW_WEBKIT "use wxWebView WebKit backend") +# TODO: wxUSE_WEBVIEW_WEBKIT2 +if(WIN32 OR APPLE) + set(wxUSE_PRIVATE_FONTS_DEFAULT ON) +else() + set(wxUSE_PRIVATE_FONTS_DEFAULT OFF) +endif() +wx_option(wxUSE_PRIVATE_FONTS "use fonts not installed on the system" ${wxUSE_PRIVATE_FONTS_DEFAULT}) # --------------------------------------------------------------------------- # support for image formats that do not rely on external library @@ -341,19 +360,31 @@ wx_option(wxUSE_TGA "use tga images (TGA file format)") wx_option(wxUSE_IFF "use iff images (IFF file format)") wx_option(wxUSE_PNM "use pnm images (PNM file format)") wx_option(wxUSE_XPM "use xpm images (XPM file format)") -wx_option(wxUSE_ICO_CUR "_cur use Windows ICO and CUR formats") +wx_option(wxUSE_ICO_CUR "use Windows ICO and CUR formats") # --------------------------------------------------------------------------- # wxMSW-only options # --------------------------------------------------------------------------- if(WIN32) + wx_option(wxUSE_ACTIVEX " enable wxActiveXContainer class (Win32 only)") + wx_option(wxUSE_CRASHREPORT "enable wxCrashReport::Generate() to create mini dumps (Win32 only)") wx_option(wxUSE_DC_CACHEING "cache temporary wxDC objects (Win32 only)") - wx_option(wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW "use PS printing in wxMSW (Win32 only)") + wx_option(wxUSE_NATIVE_PROGRESSDLG "use native progress dialog implementation") + wx_option(wxUSE_NATIVE_STATUSBAR "use native statusbar implementation)") wx_option(wxUSE_OWNER_DRAWN "use owner drawn controls (Win32)") + wx_option(wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW "use PS printing in wxMSW (Win32 only)") + wx_option(wxUSE_TASKBARICON_BALLOONS "enable wxTaskBarIcon::ShowBalloon() method (Win32 only)") wx_option(wxUSE_UXTHEME "enable support for Windows XP themed look (Win32 only)") - wx_option(wxUSE_DIB "use wxDIB class (Win32 only)") wx_option(wxUSE_WEBVIEW_IE "use wxWebView IE backend (Win32 only)") + wx_option(wxUSE_WXDIB "use wxDIB class (Win32 only)") + if(MSVC_VERSION GREATER 1600 AND NOT CMAKE_VS_PLATFORM_TOOLSET MATCHES "_xp$") + set(wxUSE_WINRT_DEFAULT ON) + else() + set(wxUSE_WINRT_DEFAULT OFF) + endif() + wx_option(wxUSE_WINRT "enable WinRT support" ${wxUSE_WINRT_DEFAULT}) + endif() # this one is not really MSW-specific but it exists mainly to be turned off diff --git a/build/cmake/setup.cmake b/build/cmake/setup.cmake index a21a2449a8..2dd2de9262 100644 --- a/build/cmake/setup.cmake +++ b/build/cmake/setup.cmake @@ -471,24 +471,6 @@ endif() # CMAKE_USE_PTHREADS_INIT check_symbol_exists(localtime_r time.h HAVE_LOCALTIME_R) check_symbol_exists(gmtime_r time.h HAVE_GMTIME_R) -if(WXMSW) - set(wxUSE_WEBVIEW_IE ON) -elseif(WXGTK OR APPLE) - set(wxUSE_WEBVIEW_WEBKIT ON) -endif() - -if(MSVC) - set(wxUSE_GRAPHICS_CONTEXT ON) -endif() - -if(MSVC_VERSION GREATER 1600 AND NOT CMAKE_VS_PLATFORM_TOOLSET MATCHES "_xp$") - set(wxUSE_WINRT ON) -endif() - -if(wxUSE_OPENGL) - set(wxUSE_GLCANVAS ON) -endif() - # --------------------------------------------------------------------------- # Checks for typedefs # --------------------------------------------------------------------------- From 04b79788fc6f8b17134cf31dae47dd3a056e11aa Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Mon, 29 Jan 2018 00:12:27 +0100 Subject: [PATCH 244/916] CMake: declare third-party libraries in options So the wxUSE_[lib] variables can be used in init.cmake. --- build/cmake/lib/expat.cmake | 2 -- build/cmake/lib/jpeg.cmake | 2 -- build/cmake/lib/png.cmake | 2 -- build/cmake/lib/regex.cmake | 2 -- build/cmake/lib/tiff.cmake | 2 -- build/cmake/lib/zlib.cmake | 3 --- build/cmake/options.cmake | 7 +++++++ 7 files changed, 7 insertions(+), 13 deletions(-) diff --git a/build/cmake/lib/expat.cmake b/build/cmake/lib/expat.cmake index 630ce175d3..1d2b79b1fa 100644 --- a/build/cmake/lib/expat.cmake +++ b/build/cmake/lib/expat.cmake @@ -7,8 +7,6 @@ # Licence: wxWindows licence ############################################################################# -wx_add_thirdparty_library(wxUSE_EXPAT EXPAT "use expat for XML parsing" DEFAULT_APPLE sys) - if(wxUSE_EXPAT STREQUAL "builtin") wx_add_builtin_library(wxexpat src/expat/expat/lib/xmlparse.c diff --git a/build/cmake/lib/jpeg.cmake b/build/cmake/lib/jpeg.cmake index d46c7fb6e9..77014944a7 100644 --- a/build/cmake/lib/jpeg.cmake +++ b/build/cmake/lib/jpeg.cmake @@ -7,8 +7,6 @@ # Licence: wxWindows licence ############################################################################# -wx_add_thirdparty_library(wxUSE_LIBJPEG JPEG "use libjpeg (JPEG file format)") - if(wxUSE_LIBJPEG STREQUAL "builtin") wx_add_builtin_library(wxjpeg src/jpeg/jaricom.c diff --git a/build/cmake/lib/png.cmake b/build/cmake/lib/png.cmake index d0fe5b854a..9dd9fdcf3b 100644 --- a/build/cmake/lib/png.cmake +++ b/build/cmake/lib/png.cmake @@ -7,8 +7,6 @@ # Licence: wxWindows licence ############################################################################# -wx_add_thirdparty_library(wxUSE_LIBPNG PNG "use libpng (PNG image format)") - if(wxUSE_LIBPNG STREQUAL "builtin") wx_add_builtin_library(wxpng src/png/png.c diff --git a/build/cmake/lib/regex.cmake b/build/cmake/lib/regex.cmake index e2bc97c546..0478f5d42e 100644 --- a/build/cmake/lib/regex.cmake +++ b/build/cmake/lib/regex.cmake @@ -7,8 +7,6 @@ # Licence: wxWindows licence ############################################################################# -wx_add_thirdparty_library(wxUSE_REGEX REGEX "enable support for wxRegEx class" DEFAULT builtin) - if(wxUSE_REGEX) # TODO: Forcing builtin until sys is implemented set(wxUSE_REGEX builtin) diff --git a/build/cmake/lib/tiff.cmake b/build/cmake/lib/tiff.cmake index 3cd5a664ac..d1ef8d51f6 100644 --- a/build/cmake/lib/tiff.cmake +++ b/build/cmake/lib/tiff.cmake @@ -7,8 +7,6 @@ # Licence: wxWindows licence ############################################################################# -wx_add_thirdparty_library(wxUSE_LIBTIFF TIFF "use libtiff (TIFF file format)") - if(wxUSE_LIBTIFF STREQUAL "builtin") # TODO: implement building libtiff via ExternalProject_Add() if(UNIX AND NOT APPLE) diff --git a/build/cmake/lib/zlib.cmake b/build/cmake/lib/zlib.cmake index c5687f2deb..0666e010ec 100644 --- a/build/cmake/lib/zlib.cmake +++ b/build/cmake/lib/zlib.cmake @@ -7,9 +7,6 @@ # Licence: wxWindows licence ############################################################################# -wx_add_thirdparty_library(wxUSE_ZLIB ZLIB "use zlib for LZW compression" - DEFAULT_APPLE sys) - if(wxUSE_ZLIB STREQUAL "builtin") wx_add_builtin_library(wxzlib src/zlib/adler32.c diff --git a/build/cmake/options.cmake b/build/cmake/options.cmake index 59dd8b4692..5d1d9a606e 100644 --- a/build/cmake/options.cmake +++ b/build/cmake/options.cmake @@ -59,6 +59,13 @@ wx_option(wxUSE_REPRODUCIBLE_BUILD "enable reproducable build" OFF) # external libraries # --------------------------------------------------------------------------- +wx_add_thirdparty_library(wxUSE_REGEX REGEX "enable support for wxRegEx class" DEFAULT builtin) +wx_add_thirdparty_library(wxUSE_ZLIB ZLIB "use zlib for LZW compression" DEFAULT_APPLE sys) +wx_add_thirdparty_library(wxUSE_EXPAT EXPAT "use expat for XML parsing" DEFAULT_APPLE sys) +wx_add_thirdparty_library(wxUSE_LIBJPEG JPEG "use libjpeg (JPEG file format)") +wx_add_thirdparty_library(wxUSE_LIBPNG PNG "use libpng (PNG image format)") +wx_add_thirdparty_library(wxUSE_LIBTIFF TIFF "use libtiff (TIFF file format)") + wx_option(wxUSE_OPENGL "use OpenGL (or Mesa)") if(NOT WIN32) From 6a2c4abcc111d67282388a2a0686ea82f47d4b21 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sun, 28 Jan 2018 20:32:39 +0100 Subject: [PATCH 245/916] Define missing GUIDs for Direct2D in MinGW The GUIDs are copied from wincodec.h in Windows SDK 10.0.16299.0. Fixed another build error in code that is normally disabled. --- src/msw/graphicsd2d.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/msw/graphicsd2d.cpp b/src/msw/graphicsd2d.cpp index 22306f9169..e7e41f6830 100644 --- a/src/msw/graphicsd2d.cpp +++ b/src/msw/graphicsd2d.cpp @@ -225,6 +225,17 @@ DEFINE_GUID(wxIID_IDWriteFactory, DEFINE_GUID(wxIID_IWICBitmapSource, 0x00000120, 0xa8f2, 0x4877, 0xba, 0x0a, 0xfd, 0x2b, 0x66, 0x45, 0xfb, 0x94); +DEFINE_GUID(GUID_WICPixelFormat32bppPBGRA, + 0x6fddc324, 0x4e03, 0x4bfe, 0xb1, 0x85, 0x3d, 0x77, 0x76, 0x8d, 0xc9, 0x10); + +DEFINE_GUID(GUID_WICPixelFormat32bppBGR, + 0x6fddc324, 0x4e03, 0x4bfe, 0xb1, 0x85, 0x3d, 0x77, 0x76, 0x8d, 0xc9, 0x0e); + +#ifndef CLSID_WICImagingFactory +DEFINE_GUID(CLSID_WICImagingFactory, + 0xcacaf262, 0x9370, 0x4615, 0xa1, 0x3b, 0x9f, 0x55, 0x39, 0xda, 0x4c, 0xa); +#endif + // Implementation of the Direct2D functions HRESULT WINAPI wxD2D1CreateFactory( D2D1_FACTORY_TYPE factoryType, @@ -3028,7 +3039,7 @@ public: wxCHECK_HRESULT_RET(hr); } - void DrawBitmap(ID2D1Image* image, D2D1_POINT_2F offset, + void DrawBitmap(ID2D1Bitmap* image, D2D1_POINT_2F offset, D2D1_RECT_F imageRectangle, wxInterpolationQuality interpolationQuality, wxCompositionMode compositionMode) wxOVERRIDE { From 5bc208df3ce9124419cb12a05cd7c5bba6a88db2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 28 Jan 2018 17:50:51 +0100 Subject: [PATCH 246/916] Correct UTF-8 encoding of U+FFFF Overlong (and hence invalid) 4-byte encoding was used for this character instead of the correct 3-byte 0xEF 0xBF 0xBF sequence. Fix this by using 3 bytes for the code points up to 0xFFFF included, instead of excluding it as was done before. Closes #17920. --- docs/changes.txt | 1 + src/common/strconv.cpp | 2 +- src/common/ustring.cpp | 2 +- tests/mbconv/mbconvtest.cpp | 14 ++++++++++++++ 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 42f60e8942..c6f30d83bc 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -108,6 +108,7 @@ All: - Update all bundled 3rd party libraries to their latest versions. - Use unique prefix for all zlib symbols to avoid link conflicts. - Make wxFile::ReadAll() work for unseekable files too. +- Correct UTF-8 encoding of U+FFFF (axiom). All (GUI): diff --git a/src/common/strconv.cpp b/src/common/strconv.cpp index dcdf7ba76d..88f22fe95d 100644 --- a/src/common/strconv.cpp +++ b/src/common/strconv.cpp @@ -1135,7 +1135,7 @@ wxMBConvStrictUTF8::FromWChar(char *dst, size_t dstLen, out[0] = 0xC0 | code; } } - else if ( code < 0xFFFF ) + else if ( code <= 0xFFFF ) { len = 3; if ( out ) diff --git a/src/common/ustring.cpp b/src/common/ustring.cpp index 87d5158234..6e1768064b 100644 --- a/src/common/ustring.cpp +++ b/src/common/ustring.cpp @@ -431,7 +431,7 @@ wxScopedCharBuffer wxUString::utf8_str() const { utf8_length += 2; } - else if ( code < 0xFFFF ) + else if ( code <= 0xFFFF ) { utf8_length += 3; } diff --git a/tests/mbconv/mbconvtest.cpp b/tests/mbconv/mbconvtest.cpp index 7edee7bdd6..ae192bf0a4 100644 --- a/tests/mbconv/mbconvtest.cpp +++ b/tests/mbconv/mbconvtest.cpp @@ -474,6 +474,20 @@ void MBConvTestCase::UTF8Tests() const wchar_t wc = 0xd800; CPPUNIT_ASSERT_EQUAL(wxCONV_FAILED, wxConvUTF8.FromWChar(NULL, 0, &wc, 1)); #endif // SIZEOF_WCHAR_T == 2 + + SECTION("UTF-8-FFFF") + { + const wchar_t wcFFFF = 0xFFFF; + REQUIRE(wxConvUTF8.FromWChar(NULL, 0, &wcFFFF, 1) == 3); + + char buf[4]; + buf[3] = '\0'; + REQUIRE(wxConvUTF8.FromWChar(buf, 3, &wcFFFF, 1) == 3); + + CHECK(static_cast(buf[0]) == 0xef); + CHECK(static_cast(buf[1]) == 0xbf); + CHECK(static_cast(buf[2]) == 0xbf); + } } void MBConvTestCase::UTF16LETests() From a3f56e186909291558ebb81fe45d4ef09b1d6c9f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 28 Jan 2018 17:35:31 +0100 Subject: [PATCH 247/916] Update libtiff to the latest version This is more of a test as the security vulnerability (CVE-2017-9935) fixed in the upstream doesn't affect our use of the library, but still update it to check if we can do this as easily as by just merging the new upstream version into our submodule. --- src/tiff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tiff b/src/tiff index 3c7e58ef64..aa65abe076 160000 --- a/src/tiff +++ b/src/tiff @@ -1 +1 @@ -Subproject commit 3c7e58ef646090569de1a35cdc93abce2c547172 +Subproject commit aa65abe0762209d40ec5d4343ec426a4d67caf2d From 84c3bc123ed30d5dde210e0463f605a7f08e89ad Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sun, 28 Jan 2018 22:19:46 -0800 Subject: [PATCH 248/916] Prevent widgets from drawing outside their allocation with GTK+3 See #18043 --- src/gtk/window.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 50973fcf02..9abbfbf99c 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -41,6 +41,7 @@ #include #include "wx/gtk/private.h" #include "wx/gtk/private/gtk2-compat.h" +#include "wx/gtk/private/gtk3-compat.h" #include "wx/gtk/private/event.h" #include "wx/gtk/private/win_gtk.h" #include "wx/private/textmeasure.h" @@ -2191,10 +2192,19 @@ gtk_window_realized_callback(GtkWidget* WXUNUSED(widget), wxWindowGTK* win) //----------------------------------------------------------------------------- static void -size_allocate(GtkWidget*, GtkAllocation* alloc, wxWindow* win) +size_allocate(GtkWidget* WXUNUSED_IN_GTK2(widget), GtkAllocation* alloc, wxWindow* win) { int w = alloc->width; int h = alloc->height; +#if GTK_CHECK_VERSION(3,14,0) + if (wx_is_at_least_gtk3(14)) + { + GtkAllocation clip; + gtk_widget_get_clip(widget, &clip); + if (clip.width > w || clip.height > h) + gtk_widget_set_clip(widget, alloc); + } +#endif if (win->m_wxwindow) { GtkBorder border; From 72790218cb10e402a5774e87889cb6763c087c73 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 15:36:21 +0100 Subject: [PATCH 249/916] Fix wrongly restoring clipping region in wxDCClipper The change of 2a8c290e0de5e657f22a0c13817df65688b01345 was wrong as it unconditionally restored m_oldClipRect in dtor, even when it was empty, indicating that no clipping had been in effect when wxDCClipper was constructed. This totally broke all the code using wxDCClipper, notably generic wxListCtrl which wasn't repainted correctly at all. Fix this by checking if the clipping rectangle is not empty before restoring it, this should work as well as we can make it without having GetClippingRegion() that could return an invalid region if no clipping is in effect. See #13834. Closes #18066. --- include/wx/dc.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/wx/dc.h b/include/wx/dc.h index dadbe793a3..38edf9da5f 100644 --- a/include/wx/dc.h +++ b/include/wx/dc.h @@ -1454,7 +1454,8 @@ public: ~wxDCClipper() { m_dc.DestroyClippingRegion(); - m_dc.SetClippingRegion(m_oldClipRect); + if ( !m_oldClipRect.IsEmpty() ) + m_dc.SetClippingRegion(m_oldClipRect); } private: From 21823bd37a02f601f879039b3971ca2e7fc99516 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 18:29:34 +0100 Subject: [PATCH 250/916] Log focus messages for the search control in the widgets sample This makes it easier to test various issues related to focus events for composite controls, such as wxSearchCtrl. --- samples/widgets/searchctrl.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/samples/widgets/searchctrl.cpp b/samples/widgets/searchctrl.cpp index 23750f7a46..7586ffef10 100644 --- a/samples/widgets/searchctrl.cpp +++ b/samples/widgets/searchctrl.cpp @@ -86,6 +86,9 @@ protected: void OnSearch(wxCommandEvent& event); void OnSearchCancel(wxCommandEvent& event); + void OnSetFocus(wxFocusEvent& event); + void OnKillFocus(wxFocusEvent& event); + wxMenu* CreateTestMenu(); // (re)create the control @@ -171,6 +174,9 @@ void SearchCtrlWidgetsPage::CreateControl() m_srchCtrl = new wxSearchCtrl(this, -1, wxEmptyString, wxDefaultPosition, wxSize(150, -1), style); + + m_srchCtrl->Bind(wxEVT_SET_FOCUS, &SearchCtrlWidgetsPage::OnSetFocus, this); + m_srchCtrl->Bind(wxEVT_KILL_FOCUS, &SearchCtrlWidgetsPage::OnKillFocus, this); } void SearchCtrlWidgetsPage::RecreateWidget() @@ -239,4 +245,18 @@ void SearchCtrlWidgetsPage::OnSearchCancel(wxCommandEvent& event) event.Skip(); } +void SearchCtrlWidgetsPage::OnSetFocus(wxFocusEvent& event) +{ + wxLogMessage("Search control got focus"); + + event.Skip(); +} + +void SearchCtrlWidgetsPage::OnKillFocus(wxFocusEvent& event) +{ + wxLogMessage("Search control lost focus"); + + event.Skip(); +} + #endif // wxUSE_SEARCHCTRL From 3b40ff0d4135076ef7811a98687e14c7b21cd1a4 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 18:32:54 +0100 Subject: [PATCH 251/916] Send wxEVT_SET_FOCUS for composite window when a child gets focus wxCompositeWindow already connected to child wxEVT_KILL_FOCUS events and generated the same event for the composite window itself, but didn't do it for wxEVT_SET_FOCUS, resulting in not getting these events for the main window as expected. E.g. this resulted in never getting any wxEVT_SET_FOCUS events for wxSearchCtrl when using its generic version (i.e. not under Mac). Fix this by connecting to wxEVT_SET_FOCUS events for the children too. Note that this relies on having a correct "previously focused window" in these events, if this doesn't work reliably for some ports, we might need to maintain a "bool m_hasFocus" field in wxCompositeWindow itself instead. Also note that we might avoid having all this code in wxCompositeWindow if we translated the underlying native focus event to wxFocusEvents for both the real window and its GetMainWindowOfCompositeControl() if it's different. This could potentially be simpler and would definitely be more efficient, but would require more changes. Closes #15569. --- include/wx/compositewin.h | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/include/wx/compositewin.h b/include/wx/compositewin.h index 567d0e8999..c9a339ac44 100644 --- a/include/wx/compositewin.h +++ b/include/wx/compositewin.h @@ -193,7 +193,10 @@ private: if ( child == this ) return; // not a child, we don't want to Connect() to ourselves - // Always capture wxEVT_KILL_FOCUS: + child->Connect(wxEVT_SET_FOCUS, + wxFocusEventHandler(wxCompositeWindow::OnSetFocus), + NULL, this); + child->Connect(wxEVT_KILL_FOCUS, wxFocusEventHandler(wxCompositeWindow::OnKillFocus), NULL, this); @@ -221,6 +224,27 @@ private: event.Skip(); } + void OnSetFocus(wxFocusEvent& event) + { + event.Skip(); + + // When a child of a composite window gains focus, the entire composite + // focus gains focus as well -- unless it had it already. + // + // We suppose that we hadn't had focus if the event doesn't carry the + // previously focused window as it normally means that it comes from + // outside of this program. + wxWindow* const oldFocus = event.GetWindow(); + if ( !oldFocus || oldFocus->GetMainWindowOfCompositeControl() != this ) + { + wxFocusEvent eventThis(wxEVT_SET_FOCUS, this->GetId()); + eventThis.SetEventObject(this); + eventThis.SetWindow(event.GetWindow()); + + this->ProcessWindowEvent(eventThis); + } + } + void OnKillFocus(wxFocusEvent& event) { // Ignore focus changes within the composite control: From 99dea2e2e06d6ccab88f7766cbf9d4dd89523458 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 18:45:45 +0100 Subject: [PATCH 252/916] Remove unnecessary wxSearchCtrl::OnSetFocus() This was useless as wxCompositeWindow, from which the generic wxSearchCtrl derives, already sets focus to its first child and, since the last commit, even harmful as it now resulted in calls to SetFocus() from inside wxEVT_SET_FOCUS handler which is forbidden at least under MSW. See #15569. --- include/wx/generic/srchctlg.h | 1 - src/generic/srchctlg.cpp | 9 --------- 2 files changed, 10 deletions(-) diff --git a/include/wx/generic/srchctlg.h b/include/wx/generic/srchctlg.h index ebcae90e78..67d0c99ca2 100644 --- a/include/wx/generic/srchctlg.h +++ b/include/wx/generic/srchctlg.h @@ -223,7 +223,6 @@ protected: void OnCancelButton( wxCommandEvent& event ); - void OnSetFocus( wxFocusEvent& event ); void OnSize( wxSizeEvent& event ); bool HasMenu() const diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index 5ad5654fe4..01acd68ea9 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -241,7 +241,6 @@ wxEND_EVENT_TABLE() wxBEGIN_EVENT_TABLE(wxSearchCtrl, wxSearchCtrlBase) EVT_SEARCHCTRL_CANCEL_BTN(wxID_ANY, wxSearchCtrl::OnCancelButton) - EVT_SET_FOCUS(wxSearchCtrl::OnSetFocus) EVT_SIZE(wxSearchCtrl::OnSize) wxEND_EVENT_TABLE() @@ -1235,14 +1234,6 @@ void wxSearchCtrl::OnCancelButton( wxCommandEvent& event ) event.Skip(); } -void wxSearchCtrl::OnSetFocus( wxFocusEvent& /*event*/ ) -{ - if ( m_text ) - { - m_text->SetFocus(); - } -} - void wxSearchCtrl::OnSize( wxSizeEvent& WXUNUSED(event) ) { LayoutControls(); From e1481385c506c084ecfa09c48e67be1b998b2b41 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Mon, 29 Jan 2018 09:49:51 -0800 Subject: [PATCH 253/916] Avoid use of uninitialized point size in wxFontInfo See #18070 --- include/wx/font.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/include/wx/font.h b/include/wx/font.h index 27935bac55..e1a07a2e01 100644 --- a/include/wx/font.h +++ b/include/wx/font.h @@ -209,10 +209,9 @@ public: // Default copy ctor, assignment operator and dtor are OK. private: - // Common part of all ctor, initializing everything except the size (which - // is initialized by the ctors themselves). void Init() { + m_pointSize = -1; m_family = wxFONTFAMILY_DEFAULT; m_flags = wxFONTFLAG_DEFAULT; m_encoding = wxFONTENCODING_DEFAULT; From 05ebeb6bac8df809cc65f7de1e6960b04c22676d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 19:04:47 +0100 Subject: [PATCH 254/916] Get rid of CppUnit compatibility macros in wxSearchCtrl unit test No real changes, just remove all the CppUnit machinery not needed any longer and replace it with a simple test function. --- tests/controls/searchctrltest.cpp | 53 +++++++++++-------------------- 1 file changed, 18 insertions(+), 35 deletions(-) diff --git a/tests/controls/searchctrltest.cpp b/tests/controls/searchctrltest.cpp index a9bfb68103..2c8e5b821b 100644 --- a/tests/controls/searchctrltest.cpp +++ b/tests/controls/searchctrltest.cpp @@ -20,50 +20,33 @@ #include "wx/srchctrl.h" -class SearchCtrlTestCase : public CppUnit::TestCase +class SearchCtrlTestCase { public: - SearchCtrlTestCase() { } + SearchCtrlTestCase() + : m_search(new wxSearchCtrl(wxTheApp->GetTopWindow(), wxID_ANY)) + { + } - virtual void setUp(); - virtual void tearDown(); + ~SearchCtrlTestCase() + { + delete m_search; + } -private: - CPPUNIT_TEST_SUITE( SearchCtrlTestCase ); - CPPUNIT_TEST( Focus ); - CPPUNIT_TEST_SUITE_END(); - - void Focus(); - - wxSearchCtrl* m_search; - - wxDECLARE_NO_COPY_CLASS(SearchCtrlTestCase); +protected: + wxSearchCtrl* const m_search; }; -// register in the unnamed registry so that these tests are run by default -CPPUNIT_TEST_SUITE_REGISTRATION( SearchCtrlTestCase ); +#define SEARCH_CTRL_TEST_CASE(name, tags) \ + TEST_CASE_METHOD(SearchCtrlTestCase, name, tags) -// also include in its own registry so that these tests can be run alone -CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( SearchCtrlTestCase, "SearchCtrlTestCase" ); - -void SearchCtrlTestCase::setUp() -{ - m_search = new wxSearchCtrl(wxTheApp->GetTopWindow(), wxID_ANY); -} - -void SearchCtrlTestCase::tearDown() -{ - delete m_search; - m_search = NULL; -} - -void SearchCtrlTestCase::Focus() -{ - // TODO OS X test only passes when run solo ... +// TODO OS X test only passes when run solo ... #ifndef __WXOSX__ +SEARCH_CTRL_TEST_CASE("wxSearchCtrl::Focus", "[wxSearchCtrl][focus]") +{ m_search->SetFocus(); - CPPUNIT_ASSERT( m_search->HasFocus() ); -#endif + CHECK( m_search->HasFocus() ); } +#endif // !__WXOSX__ #endif // wxUSE_SEARCHCTRL From 58ac3d3690f05c98c2a377a7fe92c14ed11e9ca8 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 19:33:29 +0100 Subject: [PATCH 255/916] Fix wxSearchCtrl::ChangeValue() to actually change value This was broken because wxSearchCtrl inherited the base class version of ChangeValue() which didn't really work for it due to the poor way in which wxTextEntry is designed (see #18071). Closes #16998. --- include/wx/generic/srchctlg.h | 2 ++ src/generic/srchctlg.cpp | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/include/wx/generic/srchctlg.h b/include/wx/generic/srchctlg.h index 67d0c99ca2..188a92aa2e 100644 --- a/include/wx/generic/srchctlg.h +++ b/include/wx/generic/srchctlg.h @@ -88,6 +88,8 @@ public: // operations // ---------- + virtual void ChangeValue(const wxString& value) wxOVERRIDE; + // editing virtual void Clear() wxOVERRIDE; virtual void Replace(long from, long to, const wxString& value) wxOVERRIDE; diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index 01acd68ea9..93b2321b05 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -915,6 +915,14 @@ wxTextCtrl& operator<<(double d); wxTextCtrl& operator<<(const wxChar c); #endif +// Note that overriding DoSetValue() is currently insufficient because the base +// class ChangeValue() only updates m_hintData of this object (which is null +// anyhow), instead of updating m_text->m_hintData, see #16998. +void wxSearchCtrl::ChangeValue(const wxString& value) +{ + m_text->ChangeValue(value); +} + void wxSearchCtrl::DoSetValue(const wxString& value, int flags) { m_text->DoSetValue(value, flags); From f24872f6f419db6567bc514e7f9755dd0529dfd1 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 19:08:16 +0100 Subject: [PATCH 256/916] Add unit test for wxSearchCtrl::ChangeValue() Verify that it actually does change the value. See #16998. --- tests/controls/searchctrltest.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/controls/searchctrltest.cpp b/tests/controls/searchctrltest.cpp index 2c8e5b821b..31dc748322 100644 --- a/tests/controls/searchctrltest.cpp +++ b/tests/controls/searchctrltest.cpp @@ -49,4 +49,12 @@ SEARCH_CTRL_TEST_CASE("wxSearchCtrl::Focus", "[wxSearchCtrl][focus]") } #endif // !__WXOSX__ +SEARCH_CTRL_TEST_CASE("wxSearchCtrl::ChangeValue", "[wxSearchCtrl][text]") +{ + CHECK( m_search->GetValue() == wxString() ); + + m_search->ChangeValue("foo"); + CHECK( m_search->GetValue() == "foo" ); +} + #endif // wxUSE_SEARCHCTRL From f079f11736a1e9d7a08d38b046fe06ee8ccf62bf Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 19:40:03 +0100 Subject: [PATCH 257/916] Log EVT_TEXT_ENTER events for wxSearchCtrl in the widgets sample This is convenient for checking that the behaviour is consistent among different platforms. See #17911. --- samples/widgets/searchctrl.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/samples/widgets/searchctrl.cpp b/samples/widgets/searchctrl.cpp index 7586ffef10..77cf9238ea 100644 --- a/samples/widgets/searchctrl.cpp +++ b/samples/widgets/searchctrl.cpp @@ -83,6 +83,8 @@ protected: void OnToggleCancelButton(wxCommandEvent&); void OnToggleSearchMenu(wxCommandEvent&); + void OnTextEnter(wxCommandEvent& event); + void OnSearch(wxCommandEvent& event); void OnSearchCancel(wxCommandEvent& event); @@ -114,6 +116,8 @@ wxBEGIN_EVENT_TABLE(SearchCtrlWidgetsPage, WidgetsPage) EVT_CHECKBOX(ID_CANCEL_CB, SearchCtrlWidgetsPage::OnToggleCancelButton) EVT_CHECKBOX(ID_MENU_CB, SearchCtrlWidgetsPage::OnToggleSearchMenu) + EVT_TEXT_ENTER(wxID_ANY, SearchCtrlWidgetsPage::OnTextEnter) + EVT_SEARCHCTRL_SEARCH_BTN(wxID_ANY, SearchCtrlWidgetsPage::OnSearch) EVT_SEARCHCTRL_CANCEL_BTN(wxID_ANY, SearchCtrlWidgetsPage::OnSearchCancel) wxEND_EVENT_TABLE() @@ -233,6 +237,12 @@ void SearchCtrlWidgetsPage::OnToggleSearchMenu(wxCommandEvent&) m_srchCtrl->SetMenu(NULL); } +void SearchCtrlWidgetsPage::OnTextEnter(wxCommandEvent& event) +{ + wxLogMessage("Search control: enter pressed, contents is \"%s\".", + event.GetString()); +} + void SearchCtrlWidgetsPage::OnSearch(wxCommandEvent& event) { wxLogMessage("Search button: search for \"%s\".", event.GetString()); From e5a1931b64d2272b24c8fcbef41efa3c9de91d84 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 29 Jan 2018 23:14:44 +0100 Subject: [PATCH 258/916] Log wxEVT_TEXT events for wxSearchCtrl in widgets sample This is useful to check that these events are generated under all platforms. --- samples/widgets/searchctrl.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/samples/widgets/searchctrl.cpp b/samples/widgets/searchctrl.cpp index 77cf9238ea..a647835ed8 100644 --- a/samples/widgets/searchctrl.cpp +++ b/samples/widgets/searchctrl.cpp @@ -83,6 +83,7 @@ protected: void OnToggleCancelButton(wxCommandEvent&); void OnToggleSearchMenu(wxCommandEvent&); + void OnText(wxCommandEvent& event); void OnTextEnter(wxCommandEvent& event); void OnSearch(wxCommandEvent& event); @@ -116,6 +117,7 @@ wxBEGIN_EVENT_TABLE(SearchCtrlWidgetsPage, WidgetsPage) EVT_CHECKBOX(ID_CANCEL_CB, SearchCtrlWidgetsPage::OnToggleCancelButton) EVT_CHECKBOX(ID_MENU_CB, SearchCtrlWidgetsPage::OnToggleSearchMenu) + EVT_TEXT(wxID_ANY, SearchCtrlWidgetsPage::OnText) EVT_TEXT_ENTER(wxID_ANY, SearchCtrlWidgetsPage::OnTextEnter) EVT_SEARCHCTRL_SEARCH_BTN(wxID_ANY, SearchCtrlWidgetsPage::OnSearch) @@ -237,6 +239,12 @@ void SearchCtrlWidgetsPage::OnToggleSearchMenu(wxCommandEvent&) m_srchCtrl->SetMenu(NULL); } +void SearchCtrlWidgetsPage::OnText(wxCommandEvent& event) +{ + wxLogMessage("Search control: text changes, contents is \"%s\".", + event.GetString()); +} + void SearchCtrlWidgetsPage::OnTextEnter(wxCommandEvent& event) { wxLogMessage("Search control: enter pressed, contents is \"%s\".", From 1119a44cdd5f5710d14a4d6bb9b67f55ba496258 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 01:21:24 +0100 Subject: [PATCH 259/916] Simplify and make more portable DWrite font weight translation There doesn't seem to be any need for painstakingly translating STC font weight to DWRITE_FONT_WEIGHT when they seem to use exactly the same numeric values anyhow. This also fixes compilation when using older SDK versions that don't define DWRITE_FONT_WEIGHT_SEMI_LIGHT constant, which is relatively recent (and presence of which can't be easily checked, as it's an enum element and not a preprocessor constant). --- src/stc/PlatWX.cpp | 51 +--------------------------------------------- 1 file changed, 1 insertion(+), 50 deletions(-) diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index 22339fb672..431d7a7361 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -710,8 +710,6 @@ SurfaceFontDataD2D::SurfaceFontDataD2D(const FontParameters& fp) wxCOMPtr pTextLayout; wxString faceName = fp.faceName; wxString extentTest(EXTENT_TEST); - int weight = fp.weight; - DWRITE_FONT_WEIGHT fontWeight; DWRITE_FONT_STYLE fontStyle; DWRITE_TEXT_METRICS textmetrics = {0,0,0,0,0,0,0,0,0}; const int maxLines = 2; @@ -720,59 +718,12 @@ SurfaceFontDataD2D::SurfaceFontDataD2D(const FontParameters& fp) FLOAT emHeight = 0; HRESULT hr; - if ( weight <= 100 ) - { - fontWeight = DWRITE_FONT_WEIGHT_THIN; - } - else if ( weight <= 200 ) - { - fontWeight = DWRITE_FONT_WEIGHT_EXTRA_LIGHT; - } - else if ( weight <= 300 ) - { - fontWeight = DWRITE_FONT_WEIGHT_LIGHT; - } -#ifndef __MINGW64_TOOLCHAIN__ - else if ( weight <= 350 ) - { - fontWeight = DWRITE_FONT_WEIGHT_SEMI_LIGHT; - } -#endif - else if ( weight <= 400 ) - { - fontWeight = DWRITE_FONT_WEIGHT_NORMAL; - } - else if ( weight <= 500 ) - { - fontWeight = DWRITE_FONT_WEIGHT_MEDIUM; - } - else if ( weight <= 600 ) - { - fontWeight = DWRITE_FONT_WEIGHT_SEMI_BOLD; - } - else if ( weight <= 700 ) - { - fontWeight = DWRITE_FONT_WEIGHT_BOLD; - } - else if ( weight <= 800 ) - { - fontWeight = DWRITE_FONT_WEIGHT_EXTRA_BOLD; - } - else if ( weight <= 900 ) - { - fontWeight = DWRITE_FONT_WEIGHT_HEAVY; - } - else - { - fontWeight = DWRITE_FONT_WEIGHT_EXTRA_BLACK; - } - fontStyle = fp.italic?DWRITE_FONT_STYLE_ITALIC:DWRITE_FONT_STYLE_NORMAL; hr = pDWriteFactory->CreateTextFormat( faceName.wc_str(), NULL, - fontWeight, + static_cast(fp.weight), fontStyle, DWRITE_FONT_STRETCH_NORMAL, fp.size, From ea08b8539adcf1b9d6f9c8f5e283c80f00123202 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 01:42:06 +0100 Subject: [PATCH 260/916] Generate wxEVT_SEARCHCTRL_SEARCH_BTN when Enter is pressed Make it possible to bind to just wxEVT_SEARCHCTRL_SEARCH_BTN under all platforms: previously, it was also necessary to bind to wxEVT_TEXT_ENTER when using the generic implementation, as pressing Enter in the text control didn't generate the dedicated SEARCH event. It does now, and, to avoid any confusion, the control does not generate wxEVT_TEXT_ENTER events at all any more. This is not really incompatible, as wxOSX never generated these events anyhow and the generic version only did for a couple of days, since the changes of 981697079739c4a920dc2d2cb261ca57dc2169f6 which were, finally, misguided and so are undone by this commit. Closes #17911. --- docs/changes.txt | 1 + interface/wx/srchctrl.h | 13 ++++++------- src/generic/srchctlg.cpp | 14 +++++++++++++- src/tiff | 2 +- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 42f60e8942..d6ae9203dc 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -177,6 +177,7 @@ All (GUI): - Add Set/GetFooter/Text/Icon() to wxRichMessageDialog (Tobias Taschner) - Add wxFloatingPointValidator::SetFactor(). - Add "hint" property to wxSearchCtrl XRC handler. +- Generate wxEVT_SEARCHCTRL_SEARCH_BTN on Enter under all platforms. wxGTK: diff --git a/interface/wx/srchctrl.h b/interface/wx/srchctrl.h index 51410de7bb..d888d581fa 100644 --- a/interface/wx/srchctrl.h +++ b/interface/wx/srchctrl.h @@ -12,10 +12,6 @@ control, and a cancel button. @beginStyleTable - @style{wxTE_PROCESS_ENTER} - The control will generate the event @c wxEVT_TEXT_ENTER - (otherwise pressing Enter key is either processed internally by the - control or used for navigation between dialog controls). @style{wxTE_PROCESS_TAB} The control will receive @c wxEVT_CHAR events for TAB pressed - normally, TAB is used for passing to the next control in a dialog @@ -39,8 +35,11 @@ @endStyleTable @beginEventEmissionTable{wxCommandEvent} - To retrieve actual search queries, use EVT_TEXT and EVT_TEXT_ENTER events, - just as you would with wxTextCtrl. + To react to the changes in the control contents, use EVT_TEXT event, just + as you would do with wxTextCtrl. However it is recommended to use + EVT_SEARCHCTRL_SEARCH_BTN to actually start searching to avoid doing it too + soon, while the user is still typing (note that EVT_SEARCHCTRL_SEARCH_BTN + is also triggered by pressing Enter in the control). @event{EVT_SEARCHCTRL_SEARCH_BTN(id, func)} Respond to a @c wxEVT_SEARCHCTRL_SEARCH_BTN event, generated when the search button is clicked. Note that this does not initiate a search on @@ -56,7 +55,7 @@ @category{ctrl} @appearance{searchctrl} - @see wxTextCtrl::Create, wxValidator + @see wxTextCtrl */ class wxSearchCtrl : public wxTextCtrl { diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index 93b2321b05..ce82d7875d 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -92,6 +92,18 @@ protected: m_search->GetEventHandler()->ProcessEvent(event); } + void OnTextEnter(wxCommandEvent& WXUNUSED(event)) + { + if ( !IsEmpty() ) + { + wxCommandEvent event(wxEVT_SEARCHCTRL_SEARCH_BTN, m_search->GetId()); + event.SetEventObject(m_search); + event.SetString(m_search->GetValue()); + + m_search->ProcessWindowEvent(event); + } + } + void OnTextUrl(wxTextUrlEvent& eventText) { // copy constructor is disabled for some reason? @@ -149,7 +161,7 @@ private: wxBEGIN_EVENT_TABLE(wxSearchTextCtrl, wxTextCtrl) EVT_TEXT(wxID_ANY, wxSearchTextCtrl::OnText) - EVT_TEXT_ENTER(wxID_ANY, wxSearchTextCtrl::OnText) + EVT_TEXT_ENTER(wxID_ANY, wxSearchTextCtrl::OnTextEnter) EVT_TEXT_URL(wxID_ANY, wxSearchTextCtrl::OnTextUrl) EVT_TEXT_MAXLEN(wxID_ANY, wxSearchTextCtrl::OnText) wxEND_EVENT_TABLE() diff --git a/src/tiff b/src/tiff index 3c7e58ef64..aa65abe076 160000 --- a/src/tiff +++ b/src/tiff @@ -1 +1 @@ -Subproject commit 3c7e58ef646090569de1a35cdc93abce2c547172 +Subproject commit aa65abe0762209d40ec5d4343ec426a4d67caf2d From 784a397348da3289117324a88fad4f345f3ca702 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 01:45:28 +0100 Subject: [PATCH 261/916] Remove wxEVT_TEXT_URL generation from wxSearchCtrl This event doesn't make any sense for this control, was never generated by the native macOS version and couldn't be generated under MSW neither as it's only supported by the multiline control and not the single-line version used here, so having this code in wxSearchCtrl just made no sense at all. --- src/generic/srchctlg.cpp | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index ce82d7875d..a0bcf165fa 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -104,21 +104,6 @@ protected: } } - void OnTextUrl(wxTextUrlEvent& eventText) - { - // copy constructor is disabled for some reason? - //wxTextUrlEvent event(eventText); - wxTextUrlEvent event( - m_search->GetId(), - eventText.GetMouseEvent(), - eventText.GetURLStart(), - eventText.GetURLEnd() - ); - event.SetEventObject(m_search); - - m_search->GetEventHandler()->ProcessEvent(event); - } - #ifdef __WXMSW__ // We increase the text control height to be the same as for the controls // with border as this is what we actually need here because even though @@ -162,7 +147,6 @@ private: wxBEGIN_EVENT_TABLE(wxSearchTextCtrl, wxTextCtrl) EVT_TEXT(wxID_ANY, wxSearchTextCtrl::OnText) EVT_TEXT_ENTER(wxID_ANY, wxSearchTextCtrl::OnTextEnter) - EVT_TEXT_URL(wxID_ANY, wxSearchTextCtrl::OnTextUrl) EVT_TEXT_MAXLEN(wxID_ANY, wxSearchTextCtrl::OnText) wxEND_EVENT_TABLE() From ce43f772a9833d458fb4deb053ece681e62eeed5 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 01:47:47 +0100 Subject: [PATCH 262/916] Don't erase background of wxSearchCtrl buttons twice Set background style to indicate that wxSearchButton is painted entirely by its wxEVT_PAINT handler. This should eliminate potential flicker under MSW. --- src/generic/srchctlg.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index a0bcf165fa..6775f9bcae 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -162,7 +162,9 @@ public: m_search(search), m_eventType(eventType), m_bmp(bmp) - { } + { + SetBackgroundStyle(wxBG_STYLE_PAINT); + } void SetBitmapLabel(const wxBitmap& label) { From 94620f6c5944fe5b953cbb36652406b959b55a40 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 02:01:40 +0100 Subject: [PATCH 263/916] Use simple wxEVT_SEARCH[_CANCEL] names for wxSearchCtrl events The old wxEVT_SEARCHCTRL_{SEARCH,CANCEL}_BTN event names were unwieldy and misleading because both of these events can be generated without using the buttons, but by pressing Enter or Esc (the latter currently works under macOS only, but this could change in the future). --- docs/changes.txt | 3 ++- include/wx/srchctrl.h | 21 ++++++++++++++------- interface/wx/srchctrl.h | 20 ++++++++++---------- samples/widgets/searchctrl.cpp | 4 ++-- src/common/srchcmn.cpp | 4 ++-- src/generic/srchctlg.cpp | 12 ++++++------ src/osx/srchctrl_osx.cpp | 4 ++-- 7 files changed, 38 insertions(+), 30 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index d6ae9203dc..03fbc91981 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -177,7 +177,8 @@ All (GUI): - Add Set/GetFooter/Text/Icon() to wxRichMessageDialog (Tobias Taschner) - Add wxFloatingPointValidator::SetFactor(). - Add "hint" property to wxSearchCtrl XRC handler. -- Generate wxEVT_SEARCHCTRL_SEARCH_BTN on Enter under all platforms. +- Add wxEVT_SEARCH[_CANCEL] synonyms for wxSearchCtrl events. +- Generate wxEVT_SEARCH on Enter under all platforms. wxGTK: diff --git a/include/wx/srchctrl.h b/include/wx/srchctrl.h index 791fcb8092..8a0fa4da73 100644 --- a/include/wx/srchctrl.h +++ b/include/wx/srchctrl.h @@ -41,8 +41,8 @@ extern WXDLLIMPEXP_DATA_CORE(const char) wxSearchCtrlNameStr[]; -wxDECLARE_EXPORTED_EVENT(WXDLLIMPEXP_CORE, wxEVT_SEARCHCTRL_CANCEL_BTN, wxCommandEvent); -wxDECLARE_EXPORTED_EVENT(WXDLLIMPEXP_CORE, wxEVT_SEARCHCTRL_SEARCH_BTN, wxCommandEvent); +wxDECLARE_EXPORTED_EVENT(WXDLLIMPEXP_CORE, wxEVT_SEARCH_CANCEL, wxCommandEvent); +wxDECLARE_EXPORTED_EVENT(WXDLLIMPEXP_CORE, wxEVT_SEARCH, wxCommandEvent); // ---------------------------------------------------------------------------- // a search ctrl is a text control with a search button and a cancel button @@ -90,13 +90,20 @@ private: // macros for handling search events // ---------------------------------------------------------------------------- -#define EVT_SEARCHCTRL_CANCEL_BTN(id, fn) \ - wx__DECLARE_EVT1(wxEVT_SEARCHCTRL_CANCEL_BTN, id, wxCommandEventHandler(fn)) +#define EVT_SEARCH_CANCEL(id, fn) \ + wx__DECLARE_EVT1(wxEVT_SEARCH_CANCEL, id, wxCommandEventHandler(fn)) -#define EVT_SEARCHCTRL_SEARCH_BTN(id, fn) \ - wx__DECLARE_EVT1(wxEVT_SEARCHCTRL_SEARCH_BTN, id, wxCommandEventHandler(fn)) +#define EVT_SEARCH(id, fn) \ + wx__DECLARE_EVT1(wxEVT_SEARCH, id, wxCommandEventHandler(fn)) -// old wxEVT_COMMAND_* constants +// old synonyms +#define wxEVT_SEARCHCTRL_CANCEL_BTN wxEVT_SEARCH_CANCEL +#define wxEVT_SEARCHCTRL_SEARCH_BTN wxEVT_SEARCH + +#define EVT_SEARCHCTRL_CANCEL_BTN(id, fn) EVT_SEARCH_CANCEL(id, fn) +#define EVT_SEARCHCTRL_SEARCH_BTN(id, fn) EVT_SEARCH(id, fn) + +// even older wxEVT_COMMAND_* constants #define wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN wxEVT_SEARCHCTRL_CANCEL_BTN #define wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN wxEVT_SEARCHCTRL_SEARCH_BTN diff --git a/interface/wx/srchctrl.h b/interface/wx/srchctrl.h index d888d581fa..975a137703 100644 --- a/interface/wx/srchctrl.h +++ b/interface/wx/srchctrl.h @@ -35,19 +35,19 @@ @endStyleTable @beginEventEmissionTable{wxCommandEvent} - To react to the changes in the control contents, use EVT_TEXT event, just + To react to the changes in the control contents, use wxEVT_TEXT event, just as you would do with wxTextCtrl. However it is recommended to use - EVT_SEARCHCTRL_SEARCH_BTN to actually start searching to avoid doing it too - soon, while the user is still typing (note that EVT_SEARCHCTRL_SEARCH_BTN - is also triggered by pressing Enter in the control). - @event{EVT_SEARCHCTRL_SEARCH_BTN(id, func)} - Respond to a @c wxEVT_SEARCHCTRL_SEARCH_BTN event, generated when the + wxEVT_SEARCH to actually start searching to avoid doing it too soon, while + the user is still typing (note that wxEVT_SEARCH is also triggered by + pressing Enter in the control). + @event{EVT_SEARCH(id, func)} + Respond to a @c wxEVT_SEARCH event, generated when the search button is clicked. Note that this does not initiate a search on its own, you need to perform the appropriate action in your event handler. You may use @code event.GetString() @endcode to retrieve the string to search for in the event handler code. - @event{EVT_SEARCHCTRL_CANCEL_BTN(id, func)} - Respond to a @c wxEVT_SEARCHCTRL_CANCEL_BTN event, generated when the + @event{EVT_SEARCH_CANCEL(id, func)} + Respond to a @c wxEVT_SEARCH_CANCEL event, generated when the cancel button is clicked. @endEventTable @@ -161,5 +161,5 @@ public: }; -wxEventType wxEVT_SEARCHCTRL_CANCEL_BTN; -wxEventType wxEVT_SEARCHCTRL_SEARCH_BTN; +wxEventType wxEVT_SEARCH_CANCEL; +wxEventType wxEVT_SEARCH; diff --git a/samples/widgets/searchctrl.cpp b/samples/widgets/searchctrl.cpp index a647835ed8..7252ab078d 100644 --- a/samples/widgets/searchctrl.cpp +++ b/samples/widgets/searchctrl.cpp @@ -120,8 +120,8 @@ wxBEGIN_EVENT_TABLE(SearchCtrlWidgetsPage, WidgetsPage) EVT_TEXT(wxID_ANY, SearchCtrlWidgetsPage::OnText) EVT_TEXT_ENTER(wxID_ANY, SearchCtrlWidgetsPage::OnTextEnter) - EVT_SEARCHCTRL_SEARCH_BTN(wxID_ANY, SearchCtrlWidgetsPage::OnSearch) - EVT_SEARCHCTRL_CANCEL_BTN(wxID_ANY, SearchCtrlWidgetsPage::OnSearchCancel) + EVT_SEARCH(wxID_ANY, SearchCtrlWidgetsPage::OnSearch) + EVT_SEARCH_CANCEL(wxID_ANY, SearchCtrlWidgetsPage::OnSearchCancel) wxEND_EVENT_TABLE() // ============================================================================ diff --git a/src/common/srchcmn.cpp b/src/common/srchcmn.cpp index 1e524b5394..788b466937 100644 --- a/src/common/srchcmn.cpp +++ b/src/common/srchcmn.cpp @@ -34,8 +34,8 @@ const char wxSearchCtrlNameStr[] = "searchCtrl"; -wxDEFINE_EVENT(wxEVT_SEARCHCTRL_CANCEL_BTN, wxCommandEvent); -wxDEFINE_EVENT(wxEVT_SEARCHCTRL_SEARCH_BTN, wxCommandEvent); +wxDEFINE_EVENT(wxEVT_SEARCH_CANCEL, wxCommandEvent); +wxDEFINE_EVENT(wxEVT_SEARCH, wxCommandEvent); #endif // wxUSE_SEARCHCTRL diff --git a/src/generic/srchctlg.cpp b/src/generic/srchctlg.cpp index 6775f9bcae..074bee8722 100644 --- a/src/generic/srchctlg.cpp +++ b/src/generic/srchctlg.cpp @@ -96,7 +96,7 @@ protected: { if ( !IsEmpty() ) { - wxCommandEvent event(wxEVT_SEARCHCTRL_SEARCH_BTN, m_search->GetId()); + wxCommandEvent event(wxEVT_SEARCH, m_search->GetId()); event.SetEventObject(m_search); event.SetString(m_search->GetValue()); @@ -196,7 +196,7 @@ protected: wxCommandEvent event(m_eventType, m_search->GetId()); event.SetEventObject(m_search); - if ( m_eventType == wxEVT_SEARCHCTRL_SEARCH_BTN ) + if ( m_eventType == wxEVT_SEARCH ) { // it's convenient to have the string to search for directly in the // event instead of having to retrieve it from the control in the @@ -209,7 +209,7 @@ protected: m_search->SetFocus(); #if wxUSE_MENUS - if ( m_eventType == wxEVT_SEARCHCTRL_SEARCH_BTN ) + if ( m_eventType == wxEVT_SEARCH ) { // this happens automatically, just like on Mac OS X m_search->PopupSearchMenu(); @@ -238,7 +238,7 @@ wxBEGIN_EVENT_TABLE(wxSearchButton, wxControl) wxEND_EVENT_TABLE() wxBEGIN_EVENT_TABLE(wxSearchCtrl, wxSearchCtrlBase) - EVT_SEARCHCTRL_CANCEL_BTN(wxID_ANY, wxSearchCtrl::OnCancelButton) + EVT_SEARCH_CANCEL(wxID_ANY, wxSearchCtrl::OnCancelButton) EVT_SIZE(wxSearchCtrl::OnSize) wxEND_EVENT_TABLE() @@ -322,10 +322,10 @@ bool wxSearchCtrl::Create(wxWindow *parent, wxWindowID id, m_text = new wxSearchTextCtrl(this, value, style); m_searchButton = new wxSearchButton(this, - wxEVT_SEARCHCTRL_SEARCH_BTN, + wxEVT_SEARCH, m_searchBitmap); m_cancelButton = new wxSearchButton(this, - wxEVT_SEARCHCTRL_CANCEL_BTN, + wxEVT_SEARCH_CANCEL, m_cancelBitmap); SetBackgroundColour( m_text->GetBackgroundColour() ); diff --git a/src/osx/srchctrl_osx.cpp b/src/osx/srchctrl_osx.cpp index 928bb9340e..fa3101f42e 100644 --- a/src/osx/srchctrl_osx.cpp +++ b/src/osx/srchctrl_osx.cpp @@ -209,7 +209,7 @@ bool wxSearchCtrl::Create(wxWindow *parent, wxWindowID id, bool wxSearchCtrl::HandleSearchFieldSearchHit() { - wxCommandEvent event(wxEVT_SEARCHCTRL_SEARCH_BTN, m_windowId ); + wxCommandEvent event(wxEVT_SEARCH, m_windowId ); event.SetEventObject(this); // provide the string to search for directly in the event, this is more @@ -221,7 +221,7 @@ bool wxSearchCtrl::HandleSearchFieldSearchHit() bool wxSearchCtrl::HandleSearchFieldCancelHit() { - wxCommandEvent event(wxEVT_SEARCHCTRL_CANCEL_BTN, m_windowId ); + wxCommandEvent event(wxEVT_SEARCH_CANCEL, m_windowId ); event.SetEventObject(this); return ProcessCommand(event); } From 8565d8f2fcf1f27194283df29c5b055f092a9079 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 02:21:45 +0100 Subject: [PATCH 264/916] Set window field of wxEVT_SET_FOCUS events in wxGTK It is often useful to know where is the focus coming from, for example to determine if was in another window of the same composite control. Remember the last focus in yet another global variable in wxGTK code to allow setting wxFocusEvent::m_window correctly when generating wxEVT_SET_FOCUS events. --- src/gtk/window.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 9abbfbf99c..a75c861f2e 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -213,6 +213,8 @@ static wxWindowGTK *gs_currentFocus = NULL; // The window that is scheduled to get focus in the next event loop iteration // or NULL if there's no pending focus change: static wxWindowGTK *gs_pendingFocus = NULL; +// The window that had focus before we lost it last time: +static wxWindowGTK *gs_lastFocus = NULL; // the window that has deferred focus-out event pending, if any (see // GTKAddDeferredFocusOut() for details) @@ -2685,6 +2687,8 @@ wxWindowGTK::~wxWindowGTK() gs_currentFocus = NULL; if (gs_pendingFocus == this) gs_pendingFocus = NULL; + if (gs_lastFocus == this) + gs_lastFocus = NULL; if ( gs_deferredFocusOut == this ) gs_deferredFocusOut = NULL; @@ -4374,6 +4378,9 @@ bool wxWindowGTK::GTKHandleFocusIn() wxFocusEvent eventFocus(wxEVT_SET_FOCUS, GetId()); eventFocus.SetEventObject(this); + eventFocus.SetWindow(gs_lastFocus); + gs_lastFocus = this; + GTKProcessEvent(eventFocus); return retval; @@ -4415,6 +4422,8 @@ void wxWindowGTK::GTKHandleFocusOutNoDeferring() "handling focus_out event for %s(%p, %s)", GetClassInfo()->GetClassName(), this, GetLabel()); + gs_lastFocus = this; + if (m_imContext) gtk_im_context_focus_out(m_imContext); From 5f21280130b154ea517a0f283c7c554aa41d69e8 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Tue, 30 Jan 2018 17:17:47 +0100 Subject: [PATCH 265/916] Avoid duplicate wxEVT_SEARCHCTRL_CANCEL_BTN event under macOS see https://github.com/wxWidgets/wxWidgets/pull/698 , along the idea by commit 1776f136f7d673c8e772c9ca6e1607089a071651, implemented a little bit more defensively --- src/osx/cocoa/srchctrl.mm | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/src/osx/cocoa/srchctrl.mm b/src/osx/cocoa/srchctrl.mm index 162408426b..7cf1695285 100644 --- a/src/osx/cocoa/srchctrl.mm +++ b/src/osx/cocoa/srchctrl.mm @@ -30,6 +30,7 @@ @interface wxNSSearchField : NSSearchField { + BOOL m_withinTextDidChange; } @end @@ -48,10 +49,20 @@ - (id)initWithFrame:(NSRect)frame { - self = [super initWithFrame:frame]; + if ( self = [super initWithFrame:frame] ) + { + m_withinTextDidChange = NO; + } return self; } - + +- (void)textDidChange:(NSNotification *)aNotification +{ + m_withinTextDidChange = YES; + [super textDidChange:aNotification]; + m_withinTextDidChange = NO; +} + - (void)controlTextDidChange:(NSNotification *)aNotification { wxUnusedVar(aNotification); @@ -84,6 +95,11 @@ return matches; } +- (BOOL) isWithinTextDidChange +{ + return m_withinTextDidChange; +} + @end // ============================================================================ @@ -157,7 +173,8 @@ public : NSString *searchString = [m_searchField stringValue]; if ( searchString == nil || !searchString.length ) { - wxpeer->HandleSearchFieldCancelHit(); + if ( ![m_searchField isWithinTextDidChange]) + wxpeer->HandleSearchFieldCancelHit(); } else { From 9f57b6ed20f1e3937da66134b9c46576ac3dae90 Mon Sep 17 00:00:00 2001 From: Stephen Smith Date: Tue, 30 Jan 2018 12:03:36 -0500 Subject: [PATCH 266/916] Explicitly mention "cd" in install.txt configure instructions Adds one extra shell command instruction (was missing but implied) to assist newcomers with configure. Closes https://github.com/wxWidgets/wxWidgets/pull/701 --- docs/msw/install.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/msw/install.txt b/docs/msw/install.txt index d63d1db455..f5093ee160 100644 --- a/docs/msw/install.txt +++ b/docs/msw/install.txt @@ -200,6 +200,7 @@ either MSYS or Cygwin. $ cd $WXWIN $ mkdir build-debug + $ cd build-debug 2. Run configure passing it any of the options shown by "configure --help". Notice that configure builds shared libraries by default, From f775501ba0a3b514cd0417e947c307c850d1dfec Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 19:40:59 +0100 Subject: [PATCH 267/916] Don't eat TAB unconditionally in wxComboCtrl This prevented TAB navigation from doing anything at all when the focus was on wxComboCtrl in wxGTK and, probably, all the other non-MSW ports (in wxMSW TAB navigation happens before normal key processing, so this check was irrelevant there). --- src/common/combocmn.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp index 33342b6952..3dc6901f82 100644 --- a/src/common/combocmn.cpp +++ b/src/common/combocmn.cpp @@ -751,9 +751,7 @@ void wxComboBoxExtraInputHandler::OnKey(wxKeyEvent& event) if ( !combo->GetEventHandler()->ProcessEvent(redirectedEvent) ) { - // Don't let TAB through to the text ctrl - looks ugly - if ( event.GetKeyCode() != WXK_TAB ) - event.Skip(); + event.Skip(); } } From 3825baf708dc1a7f41290fabad55d83b25a22637 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 19:45:32 +0100 Subject: [PATCH 268/916] Remove wx/dcbuffer.h dependency from wx/generic/combo.h This header doesn't really need to be included from here and it was done solely in order to get the value of wxALWAYS_NATIVE_DOUBLE_BUFFER from it. Move the code using this macro in the .cpp file instead. --- include/wx/generic/combo.h | 16 +--------------- src/generic/combog.cpp | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/include/wx/generic/combo.h b/include/wx/generic/combo.h index 92b3ff624e..dc9155394f 100644 --- a/include/wx/generic/combo.h +++ b/include/wx/generic/combo.h @@ -30,8 +30,6 @@ #endif -#include "wx/dcbuffer.h" - extern WXDLLIMPEXP_DATA_CORE(const char) wxComboBoxNameStr[]; class WXDLLIMPEXP_CORE wxGenericComboCtrl : public wxComboCtrlBase @@ -96,19 +94,7 @@ protected: #endif // For better transparent background rendering - virtual bool HasTransparentBackground() wxOVERRIDE - { - #if wxALWAYS_NATIVE_DOUBLE_BUFFER - #ifdef __WXGTK__ - // Sanity check for GTK+ - return IsDoubleBuffered(); - #else - return true; - #endif - #else - return false; - #endif - } + virtual bool HasTransparentBackground() wxOVERRIDE; // Mandatory virtuals virtual void OnResize() wxOVERRIDE; diff --git a/src/generic/combog.cpp b/src/generic/combog.cpp index 1bac5e630e..411dc2e782 100644 --- a/src/generic/combog.cpp +++ b/src/generic/combog.cpp @@ -198,6 +198,20 @@ wxGenericComboCtrl::~wxGenericComboCtrl() { } +bool wxGenericComboCtrl::HasTransparentBackground() +{ +#if wxALWAYS_NATIVE_DOUBLE_BUFFER + #ifdef __WXGTK__ + // Sanity check for GTK+ + return IsDoubleBuffered(); + #else + return true; + #endif +#else + return false; +#endif +} + void wxGenericComboCtrl::OnResize() { From 27cad5e04d4de436c1ebf0aa167e1502040fb502 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 19:50:09 +0100 Subject: [PATCH 269/916] Fix TAB navigation with wxComboCtrl in non-MSW ports Derive wxGenericComboCtrl from wxNavigationEnabled<> to make TAB work correctly when the focus was on it, otherwise it didn't move it correctly to the next control. This notably allows TAB to cycle through all the controls in the "combo" sample whereas previously it stopped on reaching the combo control with the list popup with wxGTK. --- include/wx/generic/combo.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/include/wx/generic/combo.h b/include/wx/generic/combo.h index dc9155394f..9c5da101d0 100644 --- a/include/wx/generic/combo.h +++ b/include/wx/generic/combo.h @@ -16,6 +16,8 @@ // Only define generic if native doesn't have all the features #if !defined(wxCOMBOCONTROL_FULLY_FEATURED) +#include "wx/containr.h" + // ---------------------------------------------------------------------------- // Generic wxComboCtrl // ---------------------------------------------------------------------------- @@ -32,11 +34,12 @@ extern WXDLLIMPEXP_DATA_CORE(const char) wxComboBoxNameStr[]; -class WXDLLIMPEXP_CORE wxGenericComboCtrl : public wxComboCtrlBase +class WXDLLIMPEXP_CORE wxGenericComboCtrl + : public wxNavigationEnabled { public: // ctors and such - wxGenericComboCtrl() : wxComboCtrlBase() { Init(); } + wxGenericComboCtrl() { Init(); } wxGenericComboCtrl(wxWindow *parent, wxWindowID id = wxID_ANY, @@ -46,7 +49,6 @@ public: long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxComboBoxNameStr) - : wxComboCtrlBase() { Init(); From 1de107c03706de5e1864f7e167d29eea93df066f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 19:49:03 +0100 Subject: [PATCH 270/916] Derive wxDatePickerCtrlGeneric from wxCompositeWindowSettersOnly This class doesn't need the extra focus-related features of wxCompositeWindow. --- include/wx/generic/datectrl.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/wx/generic/datectrl.h b/include/wx/generic/datectrl.h index 61a4ad18c9..9c273a6e40 100644 --- a/include/wx/generic/datectrl.h +++ b/include/wx/generic/datectrl.h @@ -19,7 +19,7 @@ class WXDLLIMPEXP_FWD_ADV wxCalendarCtrl; class WXDLLIMPEXP_FWD_ADV wxCalendarComboPopup; class WXDLLIMPEXP_ADV wxDatePickerCtrlGeneric - : public wxCompositeWindow + : public wxCompositeWindowSettersOnly { public: // creating the control From 648cfe074305512952132c40b03758be577bda93 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 21:35:20 +0100 Subject: [PATCH 271/916] Fix TAB navigation for wxDatePickerCtrl in wxGTK Inherit from wxNavigationEnabled<> to make navigation work correctly in wxGTK. --- include/wx/generic/datectrl.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/wx/generic/datectrl.h b/include/wx/generic/datectrl.h index 9c273a6e40..09d340739d 100644 --- a/include/wx/generic/datectrl.h +++ b/include/wx/generic/datectrl.h @@ -12,6 +12,7 @@ #define _WX_GENERIC_DATECTRL_H_ #include "wx/compositewin.h" +#include "wx/containr.h" class WXDLLIMPEXP_FWD_CORE wxComboCtrl; @@ -19,7 +20,7 @@ class WXDLLIMPEXP_FWD_ADV wxCalendarCtrl; class WXDLLIMPEXP_FWD_ADV wxCalendarComboPopup; class WXDLLIMPEXP_ADV wxDatePickerCtrlGeneric - : public wxCompositeWindowSettersOnly + : public wxCompositeWindowSettersOnly< wxNavigationEnabled > { public: // creating the control From a0cc098ef0883d1893c4412e4dbde8155314732f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 22:58:08 +0100 Subject: [PATCH 272/916] Use only existing directories in Unix wxMimeTypesManager Avoid using directories under /opt if they don't exist anyhow. This also makes the code easier to modify in the future, see #16704. --- src/unix/mimetype.cpp | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/unix/mimetype.cpp b/src/unix/mimetype.cpp index fef68d3abf..50a555f45e 100644 --- a/src/unix/mimetype.cpp +++ b/src/unix/mimetype.cpp @@ -520,6 +520,11 @@ void wxMimeTypesManagerImpl::InitIfNeeded() } +static void AppendToPathIfExists(wxString& pathvar, const wxString& dir) +{ + if ( wxFileName::DirExists(dir) ) + pathvar << ":" << dir; +} // read system and user mailcaps and other files void wxMimeTypesManagerImpl::Initialize(int mailcapStyles, @@ -546,10 +551,18 @@ void wxMimeTypesManagerImpl::Initialize(int mailcapStyles, if ( xdgDataDirs.empty() ) { xdgDataDirs = "/usr/local/share:/usr/share"; - if (mailcapStyles & wxMAILCAP_GNOME) - xdgDataDirs += ":/usr/share/gnome:/opt/gnome/share"; - if (mailcapStyles & wxMAILCAP_KDE) - xdgDataDirs += ":/usr/share/kde3:/opt/kde3/share"; + + if ( mailcapStyles & wxMAILCAP_GNOME ) + { + AppendToPathIfExists(xdgDataDirs, "/usr/share/gnome"); + AppendToPathIfExists(xdgDataDirs, "/opt/gnome/share"); + } + + if ( mailcapStyles & wxMAILCAP_KDE ) + { + AppendToPathIfExists(xdgDataDirs, "/usr/share/kde3"); + AppendToPathIfExists(xdgDataDirs, "/opt/kde3/share"); + } } if ( !sExtraDir.empty() ) { From 2ff1e633e9e157e824e9a5aa0e069fe15e1cef77 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 23:01:39 +0100 Subject: [PATCH 273/916] Use KDE 4 and 5 directories in Unix wxMimeTypesManager too KDE 3 is throughly outdated, but keep support for it too because it doesn't cost much. Closes #16704. --- src/unix/mimetype.cpp | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/unix/mimetype.cpp b/src/unix/mimetype.cpp index 50a555f45e..d09a814873 100644 --- a/src/unix/mimetype.cpp +++ b/src/unix/mimetype.cpp @@ -520,10 +520,13 @@ void wxMimeTypesManagerImpl::InitIfNeeded() } -static void AppendToPathIfExists(wxString& pathvar, const wxString& dir) +static bool AppendToPathIfExists(wxString& pathvar, const wxString& dir) { - if ( wxFileName::DirExists(dir) ) - pathvar << ":" << dir; + if ( !wxFileName::DirExists(dir) ) + return false; + + pathvar << ":" << dir; + return true; } // read system and user mailcaps and other files @@ -560,8 +563,17 @@ void wxMimeTypesManagerImpl::Initialize(int mailcapStyles, if ( mailcapStyles & wxMAILCAP_KDE ) { - AppendToPathIfExists(xdgDataDirs, "/usr/share/kde3"); - AppendToPathIfExists(xdgDataDirs, "/opt/kde3/share"); + for ( int kdeVer = 5; kdeVer >= 3; kdeVer-- ) + { + const wxString& kdeDir = wxString::Format("kde%d", kdeVer); + if ( AppendToPathIfExists(xdgDataDirs, "/usr/share/" + kdeDir) + || AppendToPathIfExists(xdgDataDirs, "/opt/" + kdeDir + "/share") ) + { + // We don't need to use earlier versions if we found a + // later one. + break; + } + } } } if ( !sExtraDir.empty() ) From 96d9f7361b8e756d6445478c101a1746932a6bbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gunter=20K=C3=B6nigsmann?= Date: Sat, 25 Jun 2016 08:37:23 +0200 Subject: [PATCH 274/916] Document listbox item activation on Enter in wxGTK Mention that EVT_LISTBOX_DCLICK event can also be generated from keyboard. Closes #17577. --- interface/wx/listbox.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/interface/wx/listbox.h b/interface/wx/listbox.h index a736e943f0..00b4c53338 100644 --- a/interface/wx/listbox.h +++ b/interface/wx/listbox.h @@ -61,7 +61,9 @@ list is selected or the selection changes. @event{EVT_LISTBOX_DCLICK(id, func)} Process a @c wxEVT_LISTBOX_DCLICK event, when the listbox - is double-clicked. + is double-clicked. On some platforms (notably wxGTK2) + pressing the enter key is handled as an equivalent of a + double-click. @endEventTable @library{wxcore} From caea08e6b2b9e4843e84c61abc879880a08634b0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 23:34:33 +0100 Subject: [PATCH 275/916] Generate wxEVT_CONTEXT_MENU everywhere in generic wxTreeCtrl Clicking outside of the items area didn't generate wxEVT_CONTEXT_MENU in the generic version, unlike the native MSW one and contrary to expectations. Also update the documentation to make it clear when exactly are wxEVT_TREE_ITEM_MENU and wxEVT_CONTEXT_MENU events generated. Closes #17361. --- src/generic/treectlg.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/generic/treectlg.cpp b/src/generic/treectlg.cpp index f45fca5e24..ad360ca93d 100644 --- a/src/generic/treectlg.cpp +++ b/src/generic/treectlg.cpp @@ -3743,7 +3743,11 @@ void wxGenericTreeCtrl::OnMouse( wxMouseEvent &event ) m_dragCount = 0; - if (item == NULL) return; /* we hit the blank area */ + if ( item == NULL ) + { + event.Skip(); + return; + } if ( event.RightDown() ) { From 06c29a7f2072395daf4b7416cf76297a00470e43 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 31 Jan 2018 00:02:54 +0100 Subject: [PATCH 276/916] Document missing ActivateCell() calls in macOS version Native macOS version of wxDataViewCtrl doesn't support cell activation currently. See #17746. --- interface/wx/dataview.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index bfc8fa8d1b..8d087a9367 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -2427,6 +2427,10 @@ public: corresponding event. Is @NULL otherwise (for keyboard activation). Mouse coordinates are adjusted to be relative to the cell. + @note Currently support for this method is not implemented in the + native macOS version of the control, i.e. it will be never called + there. + @since 2.9.3 @note Do not confuse this method with item activation in wxDataViewCtrl From 193939453e4fdb11d74ac700ce959d21050b6e61 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 31 Jan 2018 03:00:51 +0100 Subject: [PATCH 277/916] Fix assert due to wrong sizer flags in wxGenericRichMessageDialog This assert was especially annoying because it could be shown when showing a previous assert message on the platforms without the native rich message dialog (i.e. anything but MSW), resulting in reentering the assert handler and killing the application. --- src/generic/richmsgdlgg.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/generic/richmsgdlgg.cpp b/src/generic/richmsgdlgg.cpp index ed9a5d9717..eb83cb099d 100644 --- a/src/generic/richmsgdlgg.cpp +++ b/src/generic/richmsgdlgg.cpp @@ -77,7 +77,7 @@ void wxGenericRichMessageDialog::AddMessageDialogDetails(wxSizer *sizer) sizerPane->Add( new wxStaticText( windowPane, -1, m_detailedText ) ); windowPane->SetSizer( sizerPane ); - sizerDetails->Add( m_detailsPane, wxSizerFlags().Right().Expand() ); + sizerDetails->Add( m_detailsPane, wxSizerFlags().Expand() ); sizer->Add( sizerDetails, 0, wxTOP|wxLEFT|wxRIGHT | wxALIGN_LEFT, 10 ); } From ad71bbb9ad2e3f97c24b77f7a5311c81c1156bc3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 30 Jan 2018 22:12:22 +0100 Subject: [PATCH 278/916] Fix behaviour of wxTextCtrl without wxTE_PROCESS_TAB in wxGTK TAB should be used for navigation by default and only should be inserted into the control as a literal character if wxTE_PROCESS_TAB is specified for consistency with wxMSW and because this behaviour is much more useful by default. Fix this by calling gtk_text_view_set_accepts_tab() as appropriate for multiline text controls. For single line ones, the behaviour is unchanged but it's more reasonable as TAB is always handled as if wxTE_PROCESS_TAB were not specified and it doesn't seem really useful to try to support wxTE_PROCESS_TAB for them anyhow, so just document this limitation. Also remove the outdated/misleading documentation of this style, notably don't say that it is required to get char events for TAB presses as these events are generated both with and without this style in both wxGTK and wxMSW. Closes https://github.com/wxWidgets/wxWidgets/pull/704 --- docs/changes.txt | 1 + interface/wx/textctrl.h | 10 ++++++---- src/gtk/textctrl.cpp | 19 +++++++++++++++++++ 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 140530df3b..41b4baba6d 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -185,6 +185,7 @@ wxGTK: - Make wxUIActionSimulator work with GTK+ 3 (Scott Talbert). - Make wxBORDER_NONE work for wxTextCtrl with GTK+ 3 (Adrien Tétar). +- Handle wxTE_PROCESS_TAB, and its absence, correctly in multiline wxTextCtrl. - Apply wxTextCtrl::SetDefaultStyle() to user-entered text (Andreas Falkenhahn). - Implement dynamic auto-completion in wxTextEntry (AliKet). - Fix wxTextCtrl::GetStyle() with GTK+ 3. diff --git a/interface/wx/textctrl.h b/interface/wx/textctrl.h index a2c9615d4a..70b296c5b0 100644 --- a/interface/wx/textctrl.h +++ b/interface/wx/textctrl.h @@ -945,10 +945,12 @@ public: (otherwise pressing Enter key is either processed internally by the control or used to activate the default button of the dialog, if any). @style{wxTE_PROCESS_TAB} - The control will receive @c wxEVT_CHAR events for TAB pressed - - normally, TAB is used for passing to the next control in a dialog - instead. For the control created with this style, you can still use - Ctrl-Enter to pass to the next control from the keyboard. + Normally, TAB key is used for keyboard navigation and pressing it in + a control switches focus to the next one. With this style, this + won't happen and if the TAB is not otherwise processed (e.g. by @c + wxEVT_CHAR event handler), a literal TAB character is inserted into + the control. Notice that this style has no effect for single-line + text controls when using wxGTK. @style{wxTE_MULTILINE} The text control allows multiple lines. If this style is not specified, line break characters should not be used in the controls diff --git a/src/gtk/textctrl.cpp b/src/gtk/textctrl.cpp index dd02a570ba..16a73318a3 100644 --- a/src/gtk/textctrl.cpp +++ b/src/gtk/textctrl.cpp @@ -323,6 +323,14 @@ au_apply_tag_callback(GtkTextBuffer *buffer, } } +// Check if the style contains wxTE_PROCESS_TAB and update the given +// GtkTextView accordingly. +static void wxGtkSetAcceptsTab(GtkWidget* text, long style) +{ + gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(text), + (style & wxTE_PROCESS_TAB) != 0); +} + //----------------------------------------------------------------------------- // GtkTextCharPredicates for gtk_text_iter_*_find_char //----------------------------------------------------------------------------- @@ -800,6 +808,8 @@ bool wxTextCtrl::Create( wxWindow *parent, if (multi_line) { + wxGtkSetAcceptsTab(m_text, style); + // Handle URLs on multi-line controls with wxTE_AUTO_URL style if (style & wxTE_AUTO_URL) { @@ -984,6 +994,15 @@ void wxTextCtrl::SetWindowStyleFlag(long style) if ( (style & wxTE_PROCESS_ENTER) != (styleOld & wxTE_PROCESS_ENTER) ) GTKSetActivatesDefault(); + if ( IsMultiLine() ) + { + wxGtkSetAcceptsTab(m_text, style); + } + //else: there doesn't seem to be any way to do it for entries and while we + // could emulate wxTE_PROCESS_TAB for them by handling Tab key events + // explicitly, it doesn't seem to be worth doing it, this style is + // pretty useless with single-line controls. + static const long flagsWrap = wxTE_WORDWRAP | wxTE_CHARWRAP | wxTE_DONTWRAP; if ( (style & flagsWrap) != (styleOld & flagsWrap) ) GTKSetWrapMode(); From 5bfe0fdcc48718a4b16d20f6faf5c1ee5e6cb792 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 1 Feb 2018 17:35:02 +0100 Subject: [PATCH 279/916] Add helper wxRendererMSWBase::ConvertToRECT() Combine MSWApplyGDIPlusTransform() and wxCopyRectToRECT() into a single helper function to simplify the code and, importantly, to make it more difficult to forget call the former function. No real changes, this is a pure refactoring. --- src/msw/renderer.cpp | 45 +++++++++++++++++--------------------------- 1 file changed, 17 insertions(+), 28 deletions(-) diff --git a/src/msw/renderer.cpp b/src/msw/renderer.cpp index fff5432e6d..e08ceb2a09 100644 --- a/src/msw/renderer.cpp +++ b/src/msw/renderer.cpp @@ -99,6 +99,16 @@ public: wxDC& dc, const wxRect& rect, int flags = 0) wxOVERRIDE = 0; + +protected: + // Helper function returning the MSW RECT corresponding to the wxRect + // adjusted for the given wxDC. + static RECT ConvertToRECT(wxDC& dc, const wxRect& rect) + { + RECT rc; + wxCopyRectToRECT(dc.GetImpl()->MSWApplyGDIPlusTransform(rect), rc); + return rc; + } }; // ---------------------------------------------------------------------------- @@ -411,10 +421,7 @@ wxRendererMSW::DrawComboBoxDropButton(wxWindow * WXUNUSED(win), { wxCHECK_RET( dc.GetImpl(), wxT("Invalid wxDC") ); - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); int style = DFCS_SCROLLCOMBOBOX; if ( flags & wxCONTROL_DISABLED ) @@ -435,10 +442,7 @@ wxRendererMSW::DoDrawFrameControl(UINT type, { wxCHECK_RET( dc.GetImpl(), wxT("Invalid wxDC") ); - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); int style = kind; if ( flags & wxCONTROL_CHECKED ) @@ -613,10 +617,7 @@ wxRendererXP::DrawComboBoxDropButton(wxWindow * win, wxCHECK_RET( dc.GetImpl(), wxT("Invalid wxDC") ); - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); int state; if ( flags & wxCONTROL_PRESSED ) @@ -656,10 +657,7 @@ wxRendererXP::DrawHeaderButton(wxWindow *win, wxCHECK_MSG( dc.GetImpl(), -1, wxT("Invalid wxDC") ); - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); int state; if ( flags & wxCONTROL_PRESSED ) @@ -702,10 +700,7 @@ wxRendererXP::DrawTreeItemButton(wxWindow *win, wxCHECK_RET( dc.GetImpl(), wxT("Invalid wxDC") ); - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); int state = flags & wxCONTROL_EXPANDED ? GLPS_OPENED : GLPS_CLOSED; ::DrawThemeBackground @@ -744,10 +739,7 @@ wxRendererXP::DoDrawButtonLike(HTHEME htheme, { wxCHECK_RET( dc.GetImpl(), wxT("Invalid wxDC") ); - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); // the base state is always 1, whether it is PBS_NORMAL, // {CBS,RBS}_UNCHECKEDNORMAL or CBS_NORMAL @@ -876,10 +868,7 @@ wxRendererXP::DrawCollapseButton(wxWindow *win, if (flags & wxCONTROL_EXPANDED) flags |= wxCONTROL_CHECKED; - wxRect adjustedRect = dc.GetImpl()->MSWApplyGDIPlusTransform(rect); - - RECT r; - wxCopyRectToRECT(adjustedRect, r); + RECT r = ConvertToRECT(dc, rect); ::DrawThemeBackground ( From 92891cee476b2bd1a7d8848227bdb42cd37f2488 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 1 Feb 2018 17:38:23 +0100 Subject: [PATCH 280/916] Add missing GDI+ adjustments to wxRendererXP A few methods, notably including DrawFocusRect() and DrawItemText(), were missing MSWApplyGDIPlusTransform() calls that need to be done before drawing on an HDC corresponding to a wxGCDC object. Add them by replacing calls to wxCopyRectToRECT() with the just added ConvertToRECT() function, which adjusts the coordinates and copies wxRect to RECT at once. --- src/msw/renderer.cpp | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/msw/renderer.cpp b/src/msw/renderer.cpp index e08ceb2a09..1886d68516 100644 --- a/src/msw/renderer.cpp +++ b/src/msw/renderer.cpp @@ -322,8 +322,7 @@ void wxRendererMSWBase::DrawFocusRect(wxWindow * WXUNUSED(win), const wxRect& rect, int WXUNUSED(flags)) { - RECT rc; - wxCopyRectToRECT(rect, rc); + RECT rc = ConvertToRECT(dc, rect); ::DrawFocusRect(GetHdcOf(dc.GetTempHDC()), &rc); } @@ -919,8 +918,8 @@ wxRendererXP::DrawItemSelectionRect(wxWindow *win, if ( ::IsThemePartDefined(hTheme, LVP_LISTITEM, 0) ) { - RECT rc; - wxCopyRectToRECT(rect, rc); + RECT rc = ConvertToRECT(dc, rect); + if ( ::IsThemeBackgroundPartiallyTransparent(hTheme, LVP_LISTITEM, itemState) ) ::DrawThemeParentBackground(GetHwndOf(win), GetHdcOf(dc.GetTempHDC()), &rc); @@ -956,8 +955,7 @@ void wxRendererXP::DrawItemText(wxWindow* win, if ( s_DrawThemeTextEx && // Might be not available if we're under XP ::IsThemePartDefined(hTheme, LVP_LISTITEM, 0) ) { - RECT rc; - wxCopyRectToRECT(rect, rc); + RECT rc = ConvertToRECT(dc, rect); WXDTTOPTS textOpts; textOpts.dwSize = sizeof(textOpts); @@ -1081,8 +1079,7 @@ void wxRendererXP::DrawGauge(wxWindow* win, return; } - RECT r; - wxCopyRectToRECT(rect, r); + RECT r = ConvertToRECT(dc, rect); ::DrawThemeBackground( hTheme, From 94e201df78dc742988ddeb228009ba6ee037df24 Mon Sep 17 00:00:00 2001 From: Danny Scott Date: Fri, 2 Feb 2018 10:05:04 -0400 Subject: [PATCH 281/916] Update batch file for MSW binaries for MSVS 2017 VS2017 environment bat files change the working directory so the build directory is returned to after calling them. A warning has been added that the VS150COMNTOOLS environment variable needs to be set or a VS2017 command prompt needs to be used for VS2017 builds. MS no longer sets this variable on install. For vc110 and vc120 builds the x64 switch has been changed to x86_amd64. Closes #18075. --- build/tools/msvs/officialbuild.bat | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/build/tools/msvs/officialbuild.bat b/build/tools/msvs/officialbuild.bat index d622d2d495..af1e4f2d62 100755 --- a/build/tools/msvs/officialbuild.bat +++ b/build/tools/msvs/officialbuild.bat @@ -6,6 +6,13 @@ set curr_dir=%cd% cd ..\..\msw +rem VS2017 changes the build directory when environment batch files +rem are called, so remember where we are building from. + +set build_dir=%cd% + +del ..\..\include\wx\msw\setup.h + rem ================ wxWidgets Official Build =============== rem rem Open a command prompt and run this from the build\tools\msvs folder. @@ -17,9 +24,12 @@ set compvers="Unknown" if "%1" == "vc141" ( @echo Building for vc141 / vs2017 + @echo This will only work if the environment varialbe VS150COMNTOOLS is set + @echo or a VS2017 command prompt is used. set comp=141 set compvers=vc141 call "%VS150COMNTOOLS%VsDevCmd.bat" + cd %build_dir% ) if "%1" == "vc140" ( @echo Building for vc140 / vs2015 @@ -80,11 +90,13 @@ del %compvers%x64_Release.txt if "%compvers%" == "vc141" call "%VS150COMNTOOLS%..\..\VC\Auxiliary\Build\vcvarsall.bat" x64 if "%compvers%" == "vc140" call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" x64 -if "%compvers%" == "vc120" call "%VS120COMNTOOLS%..\..\VC\vcvarsall.bat" x64 -if "%compvers%" == "vc110" call "%VS110COMNTOOLS%..\..\VC\vcvarsall.bat" x64 +if "%compvers%" == "vc120" call "%VS120COMNTOOLS%..\..\VC\vcvarsall.bat" x86_amd64 +if "%compvers%" == "vc110" call "%VS110COMNTOOLS%..\..\VC\vcvarsall.bat" x86_amd64 if "%compvers%" == "vc100" call "%WINDOWS71SDK%SetEnv.Cmd" /X64 /Release if "%compvers%" == "vc90" call "%WINDOWS61SDK%SetEnv.Cmd" /X64 /Release +cd %build_dir% + @echo 64 bit release build nmake -f makefile.vc BUILD=release SHARED=1 COMPILER_VERSION=%comp% OFFICIAL_BUILD=1 TARGET_CPU=AMD64 >> %compvers%x64_Release.txt @@ -107,6 +119,8 @@ if "%compvers%" == "vc110" call "%VS110COMNTOOLS%..\..\VC\vcvarsall.bat" x86 if "%compvers%" == "vc100" call "%WINDOWS71SDK%SetEnv.Cmd" /X86 /Release if "%compvers%" == "vc90" call "%WINDOWS61SDK%SetEnv.Cmd" /X86 /Release +cd %build_dir% + @echo 32 bit release build nmake -f makefile.vc BUILD=release SHARED=1 COMPILER_VERSION=%comp% OFFICIAL_BUILD=1 CPPFLAGS=/arch:SSE CFLAGS=/arch:SSE >> %compvers%x86_Release.txt From cf588d7a647aa30a83ad8ebff35649f5b80fde15 Mon Sep 17 00:00:00 2001 From: Danny Scott Date: Fri, 2 Feb 2018 18:17:41 +0100 Subject: [PATCH 282/916] Handle current directory with MSVS 2017 in a better way Set VSCMD_START_DIR to "%CD%" to prevent MSVS 2017 build scripts from changing the directory. See #18075. --- build/tools/msvs/officialbuild.bat | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/build/tools/msvs/officialbuild.bat b/build/tools/msvs/officialbuild.bat index af1e4f2d62..4771bf9664 100755 --- a/build/tools/msvs/officialbuild.bat +++ b/build/tools/msvs/officialbuild.bat @@ -9,9 +9,7 @@ cd ..\..\msw rem VS2017 changes the build directory when environment batch files rem are called, so remember where we are building from. -set build_dir=%cd% - -del ..\..\include\wx\msw\setup.h +set "VSCMD_START_DIR=%CD%" rem ================ wxWidgets Official Build =============== rem @@ -29,7 +27,6 @@ if "%1" == "vc141" ( set comp=141 set compvers=vc141 call "%VS150COMNTOOLS%VsDevCmd.bat" - cd %build_dir% ) if "%1" == "vc140" ( @echo Building for vc140 / vs2015 @@ -95,8 +92,6 @@ if "%compvers%" == "vc110" call "%VS110COMNTOOLS%..\..\VC\vcvarsall.bat" x86_amd if "%compvers%" == "vc100" call "%WINDOWS71SDK%SetEnv.Cmd" /X64 /Release if "%compvers%" == "vc90" call "%WINDOWS61SDK%SetEnv.Cmd" /X64 /Release -cd %build_dir% - @echo 64 bit release build nmake -f makefile.vc BUILD=release SHARED=1 COMPILER_VERSION=%comp% OFFICIAL_BUILD=1 TARGET_CPU=AMD64 >> %compvers%x64_Release.txt @@ -119,8 +114,6 @@ if "%compvers%" == "vc110" call "%VS110COMNTOOLS%..\..\VC\vcvarsall.bat" x86 if "%compvers%" == "vc100" call "%WINDOWS71SDK%SetEnv.Cmd" /X86 /Release if "%compvers%" == "vc90" call "%WINDOWS61SDK%SetEnv.Cmd" /X86 /Release -cd %build_dir% - @echo 32 bit release build nmake -f makefile.vc BUILD=release SHARED=1 COMPILER_VERSION=%comp% OFFICIAL_BUILD=1 CPPFLAGS=/arch:SSE CFLAGS=/arch:SSE >> %compvers%x86_Release.txt From d3d8778542f6662843a69c59068aa64e6b99ba70 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Fri, 2 Feb 2018 23:58:24 +0100 Subject: [PATCH 283/916] Reduce debug warnings of Direct2D Debug Layer --- src/msw/graphicsd2d.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/msw/graphicsd2d.cpp b/src/msw/graphicsd2d.cpp index 69a20f5730..5d562102b0 100644 --- a/src/msw/graphicsd2d.cpp +++ b/src/msw/graphicsd2d.cpp @@ -338,7 +338,7 @@ ID2D1Factory* wxD2D1Factory() #if defined(__WXDEBUG__) && defined(__VISUALC__) && wxCHECK_VISUALC_VERSION(11) if ( wxGetWinVersion() >= wxWinVersion_8 ) { - factoryOptions.debugLevel = D2D1_DEBUG_LEVEL_INFORMATION; + factoryOptions.debugLevel = D2D1_DEBUG_LEVEL_WARNING; } #endif //__WXDEBUG__ From 879b81aacff3aebf05be78c0a73ff215ef6dc783 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 15:29:26 +0100 Subject: [PATCH 284/916] Avoid bogus warning when running Expat configure Skip docbook checks in Expat configure to speed it up a bit and, mainly, to avoid the harmless but confusing $wx/src/expat/expat/configure: line 16683: program: command not found which was given when running it. --- src/expat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/expat b/src/expat index a0c3149026..6b2e0e6802 160000 --- a/src/expat +++ b/src/expat @@ -1 +1 @@ -Subproject commit a0c31490268c5178c8b2273b19c44e64fb6c7dc7 +Subproject commit 6b2e0e680289cdf92839b2a3f8b0735c84dc9326 From 65589e8c68201e1e0bdb973f568acf4aaa1f6ffa Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 17:59:50 +0100 Subject: [PATCH 285/916] Remove unneeded wxRendererNative::GetDefault() in render sample This method is used to illustrate the difference between the default and the overridden GetHeaderButton() implementations, but doesn't need to be used for any other methods, that are not overridden in MyRenderer. No real changes, but just make the code shorter and less confusing. --- samples/render/render.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/samples/render/render.cpp b/samples/render/render.cpp index d626b301de..e1f68fe077 100644 --- a/samples/render/render.cpp +++ b/samples/render/render.cpp @@ -223,6 +223,8 @@ private: wxART_LIST); } + // Note that we need to use GetDefault() explicitly to show the default + // implementation. dc.DrawText("DrawHeaderButton() (default)", x1, y); wxRendererNative::GetDefault().DrawHeaderButton(this, dc, wxRect(x2, y, widthHdr, heightHdr), m_flags, @@ -282,7 +284,7 @@ private: const wxCoord widthGauge = 180; dc.DrawText("DrawGauge()", x1, y); - wxRendererNative::GetDefault().DrawGauge(this, dc, + renderer.DrawGauge(this, dc, wxRect(x2, y, widthGauge, heightGauge), 25, 100, m_flags); y += lineHeight + heightGauge; @@ -291,10 +293,10 @@ private: const wxCoord widthListItem = 260; dc.DrawText("DrawItemSelectionRect()", x1, y); - wxRendererNative::GetDefault().DrawItemSelectionRect(this, dc, + renderer.DrawItemSelectionRect(this, dc, wxRect(x2, y, widthListItem, heightListItem), m_flags | wxCONTROL_SELECTED); - wxRendererNative::GetDefault().DrawItemText(this, dc, "DrawItemText()", + renderer.DrawItemText(this, dc, "DrawItemText()", wxRect(x2, y, widthListItem, heightListItem).Inflate(-2, -2), m_align, m_flags | wxCONTROL_SELECTED); y += lineHeight + heightListItem; From 359eda1359521725fdb428ea8cb3c3e01f2e7e17 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 18:02:31 +0100 Subject: [PATCH 286/916] Make render sample window bigger initially It wasn't big enough to show all of its contents. --- samples/render/render.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/render/render.cpp b/samples/render/render.cpp index e1f68fe077..46a527e128 100644 --- a/samples/render/render.cpp +++ b/samples/render/render.cpp @@ -424,9 +424,7 @@ bool MyApp::OnInit() MyFrame::MyFrame() : wxFrame(NULL, wxID_ANY, - wxT("Render wxWidgets Sample"), - wxPoint(50, 50), - wxSize(450, 340)) + wxT("Render wxWidgets Sample")) { // set the frame icon SetIcon(wxICON(sample)); @@ -481,6 +479,8 @@ MyFrame::MyFrame() m_panel = new MyPanel(this); + SetClientSize(600, 600); + #if wxUSE_STATUSBAR // create a status bar just for fun (by default with 1 pane only) CreateStatusBar(2); From 3284420b09754006d2f6cb45d85e950b0896c71b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 18:08:13 +0100 Subject: [PATCH 287/916] Add a menu option to use generic renderer in the sample This makes it easier to compare the native and generic implementations of the functions shown. --- samples/render/render.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/samples/render/render.cpp b/samples/render/render.cpp index 46a527e128..2d899c58b6 100644 --- a/samples/render/render.cpp +++ b/samples/render/render.cpp @@ -138,6 +138,7 @@ private: void OnUseIcon(wxCommandEvent& event); void OnUseBitmap(wxCommandEvent& event); + void OnUseGeneric(wxCommandEvent& event); #if wxUSE_DYNLIB_CLASS void OnLoad(wxCommandEvent& event); void OnUnload(wxCommandEvent& event); @@ -163,7 +164,8 @@ public: m_flags = 0; m_align = wxALIGN_LEFT; m_useIcon = - m_useBitmap = false; + m_useBitmap = + m_useGeneric = false; } int GetFlags() const { return m_flags; } @@ -172,13 +174,15 @@ public: void SetAlignment(int align) { m_align = align; } void SetUseIcon(bool useIcon) { m_useIcon = useIcon; } void SetUseBitmap(bool useBitmap) { m_useBitmap = useBitmap; } + void SetUseGeneric(bool useGeneric) { m_useGeneric = useGeneric; } private: void OnPaint(wxPaintEvent&) { wxPaintDC dc(this); - wxRendererNative& renderer = wxRendererNative::Get(); + wxRendererNative& renderer = m_useGeneric ? wxRendererNative::GetGeneric() + : wxRendererNative::Get(); int x1 = 10, // text offset x2 = 300, // drawing offset @@ -305,7 +309,8 @@ private: int m_flags; int m_align; bool m_useIcon, - m_useBitmap; + m_useBitmap, + m_useGeneric; wxDECLARE_EVENT_TABLE(); }; @@ -337,6 +342,7 @@ enum Render_UseIcon, Render_UseBitmap, + Render_UseGeneric, #if wxUSE_DYNLIB_CLASS Render_Load, Render_Unload, @@ -373,6 +379,7 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU(Render_UseIcon, MyFrame::OnUseIcon) EVT_MENU(Render_UseBitmap, MyFrame::OnUseBitmap) + EVT_MENU(Render_UseGeneric, MyFrame::OnUseGeneric) #if wxUSE_DYNLIB_CLASS EVT_MENU(Render_Load, MyFrame::OnLoad) EVT_MENU(Render_Unload,MyFrame::OnUnload) @@ -457,6 +464,7 @@ MyFrame::MyFrame() menuFile->AppendCheckItem(Render_UseBitmap, "Draw &bitmap\tCtrl-B"); menuFile->AppendSeparator(); + menuFile->AppendCheckItem(Render_UseGeneric, "Use &generic renderer\tCtrl-G"); #if wxUSE_DYNLIB_CLASS menuFile->Append(Render_Load, wxT("&Load renderer...\tCtrl-L")); menuFile->Append(Render_Unload, wxT("&Unload renderer\tCtrl-U")); @@ -528,6 +536,12 @@ void MyFrame::OnUseBitmap(wxCommandEvent& event) m_panel->Refresh(); } +void MyFrame::OnUseGeneric(wxCommandEvent& event) +{ + m_panel->SetUseGeneric(event.IsChecked()); + m_panel->Refresh(); +} + #if wxUSE_DYNLIB_CLASS void MyFrame::OnLoad(wxCommandEvent& WXUNUSED(event)) From fa41d06ccef75666ba3dc59a3ce043f83b2343fc Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 18:21:36 +0100 Subject: [PATCH 288/916] Fix some harmless gcc 7 -Wimplicit-fallthrough warnings Add wxFALLTHROUGH to avoid the warnings where fall-through is actually desired. --- include/wx/private/wxprintf.h | 1 + src/common/list.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/include/wx/private/wxprintf.h b/include/wx/private/wxprintf.h index f34d68495e..5854d894d7 100644 --- a/include/wx/private/wxprintf.h +++ b/include/wx/private/wxprintf.h @@ -302,6 +302,7 @@ bool wxPrintfConvSpec::Parse(const CharType *format) break; } // else: fall-through, 'I' is MSVC equivalent of C99 'z' + wxFALLTHROUGH; #endif // __WINDOWS__ case wxT('z'): diff --git a/src/common/list.cpp b/src/common/list.cpp index efaf12a195..decaf8bb36 100644 --- a/src/common/list.cpp +++ b/src/common/list.cpp @@ -51,6 +51,7 @@ bool wxListKey::operator==(wxListKeyValue value) const wxFAIL_MSG(wxT("bad key type.")); // let compiler optimize the line above away in release build // by not putting return here... + wxFALLTHROUGH; case wxKEY_STRING: return *m_key.string == *value.string; From 5f8f60107ad942657759f5769175f9a0973becad Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 18:12:13 +0100 Subject: [PATCH 289/916] Allow using wxRendererNative::DrawGauge() for vertical gauges too It was unexpected that this method could only be used for horizontal gauges, so make it work for the vertical ones if wxCONTROL_SPECIAL flag is specified. Update MSW and generic implementations and the render sample to show a vertical gauge as well. --- docs/changes.txt | 1 + include/wx/renderer.h | 4 +++- interface/wx/renderer.h | 2 ++ samples/render/render.cpp | 5 +++++ src/generic/renderg.cpp | 13 +++++++++++-- src/msw/renderer.cpp | 19 +++++++++++++++---- 6 files changed, 37 insertions(+), 7 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 41b4baba6d..5f1698d1b7 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -180,6 +180,7 @@ All (GUI): - Add "hint" property to wxSearchCtrl XRC handler. - Add wxEVT_SEARCH[_CANCEL] synonyms for wxSearchCtrl events. - Generate wxEVT_SEARCH on Enter under all platforms. +- Extend wxRendererNative::DrawGauge() to work for vertical gauges too. wxGTK: diff --git a/include/wx/renderer.h b/include/wx/renderer.h index fd67b7a760..e816725bbf 100644 --- a/include/wx/renderer.h +++ b/include/wx/renderer.h @@ -333,7 +333,9 @@ public: int flags = 0) = 0; #endif // wxHAS_DRAW_TITLE_BAR_BITMAP - // Draw a gauge with native style like a wxGauge would display + // Draw a gauge with native style like a wxGauge would display. + // + // wxCONTROL_SPECIAL flag must be used for drawing vertical gauges. virtual void DrawGauge(wxWindow* win, wxDC& dc, const wxRect& rect, diff --git a/interface/wx/renderer.h b/interface/wx/renderer.h index 92be723034..2a3772b78a 100644 --- a/interface/wx/renderer.h +++ b/interface/wx/renderer.h @@ -359,6 +359,8 @@ public: bar that is drawn as being filled in, @a max must be strictly positive and @a value must be between 0 and @a max. + @c wxCONTROL_SPECIAL must be set in @a flags for the vertical gauges. + @since 3.1.0 */ virtual void DrawGauge(wxWindow* win, diff --git a/samples/render/render.cpp b/samples/render/render.cpp index 2d899c58b6..1e4b819dcf 100644 --- a/samples/render/render.cpp +++ b/samples/render/render.cpp @@ -284,12 +284,17 @@ private: y += lineHeight + rBtn.height; #endif // wxHAS_DRAW_TITLE_BAR_BITMAP + // The meanings of those are reversed for the vertical gauge below. const wxCoord heightGauge = 24; const wxCoord widthGauge = 180; dc.DrawText("DrawGauge()", x1, y); renderer.DrawGauge(this, dc, wxRect(x2, y, widthGauge, heightGauge), 25, 100, m_flags); + renderer.DrawGauge(this, dc, + wxRect(x2 + widthGauge + 30, y + heightGauge - widthGauge, + heightGauge, widthGauge), + 25, 100, m_flags | wxCONTROL_SPECIAL); y += lineHeight + heightGauge; diff --git a/src/generic/renderg.cpp b/src/generic/renderg.cpp index 1961141fc4..5cf2656cef 100644 --- a/src/generic/renderg.cpp +++ b/src/generic/renderg.cpp @@ -910,7 +910,7 @@ void wxRendererGeneric::DrawGauge(wxWindow* win, const wxRect& rect, int value, int max, - int WXUNUSED(flags)) + int flags) { // Use same background as text controls. DrawTextCtrl(win, dc, rect); @@ -918,7 +918,16 @@ void wxRendererGeneric::DrawGauge(wxWindow* win, // Calculate the progress bar size. wxRect progRect(rect); progRect.Deflate(2); - progRect.width = wxMulDivInt32(progRect.width, value, max); + if ( flags & wxCONTROL_SPECIAL ) + { + const int h = wxMulDivInt32(progRect.height, value, max); + progRect.y += progRect.height - h; + progRect.height = h; + } + else // Horizontal. + { + progRect.width = wxMulDivInt32(progRect.width, value, max); + } dc.SetBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHT)); dc.SetPen(*wxTRANSPARENT_PEN); diff --git a/src/msw/renderer.cpp b/src/msw/renderer.cpp index fff5432e6d..7935e05dcc 100644 --- a/src/msw/renderer.cpp +++ b/src/msw/renderer.cpp @@ -1098,7 +1098,7 @@ void wxRendererXP::DrawGauge(wxWindow* win, ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), - PP_BAR, + flags & wxCONTROL_SPECIAL ? PP_BARVERT : PP_BAR, 0, &r, NULL); @@ -1107,20 +1107,31 @@ void wxRendererXP::DrawGauge(wxWindow* win, ::GetThemeBackgroundContentRect( hTheme, GetHdcOf(dc.GetTempHDC()), - PP_BAR, + flags & wxCONTROL_SPECIAL ? PP_BARVERT : PP_BAR, 0, &r, &contentRect); - contentRect.right = contentRect.left + + if ( flags & wxCONTROL_SPECIAL ) + { + // For a vertical gauge, the value grows from the bottom to the top. + contentRect.top = contentRect.bottom - + wxMulDivInt32(contentRect.bottom - contentRect.top, + value, + max); + } + else // Horizontal. + { + contentRect.right = contentRect.left + wxMulDivInt32(contentRect.right - contentRect.left, value, max); + } ::DrawThemeBackground( hTheme, GetHdcOf(dc.GetTempHDC()), - PP_CHUNK, + flags & wxCONTROL_SPECIAL ? PP_CHUNKVERT : PP_CHUNK, 0, &contentRect, NULL); From f8674c7ff034e759a7edc68a5bbe274f15d74875 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 23:30:31 +0100 Subject: [PATCH 290/916] Remove unnecessary check for gs_deferredFocusOut GTKHandleDeferredFocusOut() is only ever called when gs_deferredFocusOut is non-null, so there is no need to check for it inside this function again. No real changes. --- src/gtk/window.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index a75c861f2e..b6182ede53 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -4465,17 +4465,14 @@ void wxWindowGTK::GTKHandleDeferredFocusOut() // NB: See GTKHandleFocusOut() for explanation. This function is called // from either GTKHandleFocusIn() or OnInternalIdle() to process // deferred event. - if ( gs_deferredFocusOut ) - { - wxWindowGTK *win = gs_deferredFocusOut; - gs_deferredFocusOut = NULL; + wxWindowGTK *win = gs_deferredFocusOut; + gs_deferredFocusOut = NULL; - wxLogTrace(TRACE_FOCUS, - "processing deferred focus_out event for %s(%p, %s)", - win->GetClassInfo()->GetClassName(), win, win->GetLabel()); + wxLogTrace(TRACE_FOCUS, + "processing deferred focus_out event for %s(%p, %s)", + win->GetClassInfo()->GetClassName(), win, win->GetLabel()); - win->GTKHandleFocusOutNoDeferring(); - } + win->GTKHandleFocusOutNoDeferring(); } void wxWindowGTK::SetFocus() From 1148b2e0fe99698293cd63f56646fc3ebd31e011 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 23:56:44 +0100 Subject: [PATCH 291/916] Make GTKHandleDeferredFocusOut() non-static Slightly simplify the code by making it a member function. No real changes. --- include/wx/gtk/window.h | 2 +- src/gtk/window.cpp | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/include/wx/gtk/window.h b/include/wx/gtk/window.h index d7b55ae685..2430773c43 100644 --- a/include/wx/gtk/window.h +++ b/include/wx/gtk/window.h @@ -199,7 +199,7 @@ public: bool GTKHandleFocusIn(); bool GTKHandleFocusOut(); void GTKHandleFocusOutNoDeferring(); - static void GTKHandleDeferredFocusOut(); + void GTKHandleDeferredFocusOut(); // Called when m_widget becomes realized. Derived classes must call the // base class method if they override it. diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index b6182ede53..1f1c6244ec 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -3828,7 +3828,7 @@ bool wxWindowGTK::GTKShowFromOnIdle() void wxWindowGTK::OnInternalIdle() { if ( gs_deferredFocusOut ) - GTKHandleDeferredFocusOut(); + gs_deferredFocusOut->GTKHandleDeferredFocusOut(); // Check if we have to show window now if (GTKShowFromOnIdle()) return; @@ -4348,7 +4348,7 @@ bool wxWindowGTK::GTKHandleFocusIn() // otherwise we need to send focus-out first wxASSERT_MSG ( gs_deferredFocusOut != this, "GTKHandleFocusIn(GTKFocus_Normal) called even though focus changed back to itself - derived class should handle this" ); - GTKHandleDeferredFocusOut(); + gs_deferredFocusOut->GTKHandleDeferredFocusOut(); } @@ -4459,20 +4459,18 @@ void wxWindowGTK::GTKHandleFocusOutNoDeferring() GTKProcessEvent( event ); } -/*static*/ void wxWindowGTK::GTKHandleDeferredFocusOut() { // NB: See GTKHandleFocusOut() for explanation. This function is called // from either GTKHandleFocusIn() or OnInternalIdle() to process - // deferred event. - wxWindowGTK *win = gs_deferredFocusOut; + // deferred event for this window. gs_deferredFocusOut = NULL; wxLogTrace(TRACE_FOCUS, "processing deferred focus_out event for %s(%p, %s)", - win->GetClassInfo()->GetClassName(), win, win->GetLabel()); + GetClassInfo()->GetClassName(), this, GetLabel()); - win->GTKHandleFocusOutNoDeferring(); + GTKHandleFocusOutNoDeferring(); } void wxWindowGTK::SetFocus() From bfd3f1b33fac8ca48656fb5a97719acdc6796e62 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 31 Jan 2018 23:47:15 +0100 Subject: [PATCH 292/916] Fix some typos in wxDataViewCtrl documentation No real changes. --- interface/wx/dataview.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 8d087a9367..e98ab8a387 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -155,7 +155,8 @@ public: @param column The column holding the items to be compared. @param ascending - The sort is being peformed in ascending or descending order. + Indicates whether the sort is being performed in ascending or + descending order. @return For an ascending comparison: a negative value if the item1 is less than (i.e. should appear above) item2, zero if the two items are @@ -163,11 +164,12 @@ public: appear below) the second one. The reverse for a descending comparison. @note If there can be multiple rows with the same value, consider - differentiating them form each other by their ID's rather than + differentiating them form each other by their IDs rather than returning zero. This to prevent rows with the same value jumping positions when items are added etc. For example: @code - // Differentiate items with the same value. + // Note that we need to distinguish between items with the same + // value. wxUIntPtr id1 = wxPtrToUInt(item1.GetID()), id2 = wxPtrToUInt(item2.GetID()); @@ -1956,7 +1958,7 @@ public: /** Sets the alignment of the renderer's content. - The default value of @c wxDVR_DEFAULT_ALIGMENT indicates that the content + The default value of @c wxDVR_DEFAULT_ALIGNMENT indicates that the content should have the same alignment as the column header. The method is not implemented under OS X and the renderer always aligns From 945cec4be14af13fd073dfc06d659ca1d2aaf1cd Mon Sep 17 00:00:00 2001 From: mikek Date: Thu, 1 Feb 2018 01:02:56 +0100 Subject: [PATCH 293/916] Refresh generic wxDataViewCtrl after disabling it Grey the control out immediately, instead of waiting until the next refresh to do it. Closes #17887. --- include/wx/generic/dataview.h | 2 +- src/generic/datavgen.cpp | 25 ++++++++++++++----------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/include/wx/generic/dataview.h b/include/wx/generic/dataview.h index f4ebc64cae..5efc0e1eec 100644 --- a/include/wx/generic/dataview.h +++ b/include/wx/generic/dataview.h @@ -257,10 +257,10 @@ public: #if wxUSE_ACCESSIBILITY virtual bool Show(bool show = true) wxOVERRIDE; - virtual bool Enable(bool enable = true) wxOVERRIDE; virtual void SetName(const wxString &name) wxOVERRIDE; virtual bool Reparent(wxWindowBase *newParent) wxOVERRIDE; #endif // wxUSE_ACCESSIBILITY + virtual bool Enable(bool enable = true) wxOVERRIDE; virtual bool AllowMultiColumnSort(bool allow) wxOVERRIDE; virtual bool IsMultiColumnSortAllowed() const wxOVERRIDE { return m_allowMultiColumnSort; } diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 9a4f08276e..34fdcc7409 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -5228,17 +5228,6 @@ bool wxDataViewCtrl::Show(bool show) return changed; } -bool wxDataViewCtrl::Enable(bool enable) -{ - bool changed = wxControl::Enable(enable); - if ( changed ) - { - wxAccessible::NotifyEvent(wxACC_EVENT_OBJECT_STATECHANGE, this, wxOBJID_CLIENT, wxACC_SELF); - } - - return changed; -} - void wxDataViewCtrl::SetName(const wxString &name) { wxControl::SetName(name); @@ -5257,6 +5246,20 @@ bool wxDataViewCtrl::Reparent(wxWindowBase *newParent) } #endif // wxUSE_ACCESIBILITY +bool wxDataViewCtrl::Enable(bool enable) +{ + bool changed = wxControl::Enable(enable); + if ( changed ) + { +#if wxUSE_ACCESSIBILITY + wxAccessible::NotifyEvent(wxACC_EVENT_OBJECT_STATECHANGE, this, wxOBJID_CLIENT, wxACC_SELF); +#endif // wxUSE_ACCESIBILITY + Refresh(); + } + + return changed; +} + bool wxDataViewCtrl::AssociateModel( wxDataViewModel *model ) { if (!wxDataViewCtrlBase::AssociateModel( model )) From 0d14dd8fe09e2a43eec043b798583e1f32fe3e16 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 1 Feb 2018 01:05:17 +0100 Subject: [PATCH 294/916] Test disabling wxDataViewCtrl in the dataview sample Just make it simple to verify whether disabling the control works as expected. See #14186. See #17887. --- samples/dataview/dataview.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index a53b1c7be3..77af616a00 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -84,6 +84,7 @@ private: void OnCustomHeaderHeight(wxCommandEvent& event); #endif // wxHAS_GENERIC_DATAVIEWCTRL void OnGetPageInfo(wxCommandEvent& event); + void OnDisable(wxCommandEvent& event); void OnSetForegroundColour(wxCommandEvent& event); void OnIncIndent(wxCommandEvent& event); void OnDecIndent(wxCommandEvent& event); @@ -307,6 +308,7 @@ enum { ID_CLEARLOG = wxID_HIGHEST+1, ID_GET_PAGE_INFO, + ID_DISABLE, ID_BACKGROUND_COLOUR, ID_FOREGROUND_COLOUR, ID_CUSTOM_HEADER_ATTR, @@ -367,6 +369,7 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU( ID_CLEARLOG, MyFrame::OnClearLog ) EVT_MENU( ID_GET_PAGE_INFO, MyFrame::OnGetPageInfo ) + EVT_MENU( ID_DISABLE, MyFrame::OnDisable ) EVT_MENU( ID_FOREGROUND_COLOUR, MyFrame::OnSetForegroundColour ) EVT_MENU( ID_BACKGROUND_COLOUR, MyFrame::OnSetBackgroundColour ) EVT_MENU( ID_CUSTOM_HEADER_ATTR, MyFrame::OnCustomHeaderAttr ) @@ -460,6 +463,7 @@ MyFrame::MyFrame(wxFrame *frame, const wxString &title, int x, int y, int w, int wxMenu *file_menu = new wxMenu; file_menu->Append(ID_CLEARLOG, "&Clear log\tCtrl-L"); file_menu->Append(ID_GET_PAGE_INFO, "Show current &page info"); + file_menu->AppendCheckItem(ID_DISABLE, "&Disable\tCtrl-D"); file_menu->Append(ID_FOREGROUND_COLOUR, "Set &foreground colour...\tCtrl-S"); file_menu->Append(ID_BACKGROUND_COLOUR, "Set &background colour...\tCtrl-B"); file_menu->AppendCheckItem(ID_CUSTOM_HEADER_ATTR, "C&ustom header attributes"); @@ -830,6 +834,11 @@ void MyFrame::OnGetPageInfo(wxCommandEvent& WXUNUSED(event)) dvc->GetCountPerPage()); } +void MyFrame::OnDisable(wxCommandEvent& event) +{ + m_ctrl[m_notebook->GetSelection()]->Enable(!event.IsChecked()); +} + void MyFrame::OnSetForegroundColour(wxCommandEvent& WXUNUSED(event)) { wxDataViewCtrl * const dvc = m_ctrl[m_notebook->GetSelection()]; @@ -934,6 +943,8 @@ void MyFrame::OnPageChanged( wxBookCtrlEvent& WXUNUSED(event) ) GetMenuBar()->FindItem(id)->Check( m_ctrl[nPanel]->HasFlag(style) ); } + + GetMenuBar()->FindItem(ID_DISABLE)->Check(!m_ctrl[nPanel]->IsEnabled()); } void MyFrame::OnStyleChange( wxCommandEvent& WXUNUSED(event) ) From f1087d7fd51a1238a484c7e2761f62a5f9e04776 Mon Sep 17 00:00:00 2001 From: mikek Date: Thu, 1 Feb 2018 01:14:18 +0100 Subject: [PATCH 295/916] Fix missing selection event in generic wxDataViewCtrl No event was sent if the selection was narrowed by clicking on an already selected item without any key modifiers pressed. Fix this by generating an event always on click and not only when selecting a new item. Closes #17881. --- docs/changes.txt | 1 + src/generic/datavgen.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 5f1698d1b7..1c82160ae2 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -248,6 +248,7 @@ wxMSW: - Fix focus-related problems when using native wxProgressDialog. - Fix crash when reparenting the currently focused window to another TLW. - Fix sending wxEVT_TEXT_ENTER when using auto-completion (Dubby). +- Fix missing selection event on click in multiselection wxDataViewCtrl (mikek). wxOSX: diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 34fdcc7409..79daf5517d 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -4728,9 +4728,9 @@ void wxDataViewMainWindow::OnMouse( wxMouseEvent &event ) if ( UnselectAllRows(m_lineSelectSingleOnUp) ) { SelectRow( m_lineSelectSingleOnUp, true ); - SendSelectionChangedEvent( GetItemByRow(m_lineSelectSingleOnUp) ); } - //else: it was already selected, nothing to do + + SendSelectionChangedEvent( GetItemByRow(m_lineSelectSingleOnUp) ); } // If the user click the expander, we do not do editing even if the column From 0b1acae0a76829cd736f57b9b27cb2ca9ff0b3ca Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 14:40:40 +0100 Subject: [PATCH 296/916] Fix drawing of expander buttons in wxDataViewCtrl under MSW The buttons were truncated, making them look ugly, because we didn't allocate enough space for them. Instead of complicating generic wxDataViewCtrl code even further with more MSW-specific code, just let DrawItemTreeButton() center the expander itself in the space allocated for it. This still involves guessing the width of the expander, but this doesn't need to be done as precisely, so it's still an advantage. Note that previously calculating expander size involved m_lineHeight, for some reason, but now we use GetCharWidth() for it, which is more appropriate. Closes #17863. --- src/generic/datavgen.cpp | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 79daf5517d..801f9dd2ed 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -75,15 +75,6 @@ static const int SCROLL_UNIT_X = 15; // the cell padding on the left/right static const int PADDING_RIGHTLEFT = 3; -// the expander space margin -static const int EXPANDER_MARGIN = 4; - -#ifdef __WXMSW__ -static const int EXPANDER_OFFSET = 4; -#else -static const int EXPANDER_OFFSET = 1; -#endif - namespace { @@ -2540,23 +2531,20 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) // Calculate the indent first indent = GetOwner()->GetIndent() * node->GetIndentLevel(); - // we reserve m_lineHeight of horizontal space for the expander - // but leave EXPANDER_MARGIN around the expander itself - int exp_x = cell_rect.x + indent + EXPANDER_MARGIN; + // We don't have any method to return the size of the expander + // button currently (TODO: add one to wxRendererNative), so + // just guesstimate it. + const int expWidth = 3*dc.GetCharWidth(); - indent += m_lineHeight; - - // draw expander if needed and visible - if ( node->HasChildren() && exp_x < cell_rect.GetRight() ) + // draw expander if needed + if ( node->HasChildren() ) { dc.SetPen( m_penExpander ); dc.SetBrush( wxNullBrush ); - int exp_size = m_lineHeight - 2*EXPANDER_MARGIN; - int exp_y = cell_rect.y + (cell_rect.height - exp_size)/2 - + EXPANDER_MARGIN - EXPANDER_OFFSET; - - const wxRect rect(exp_x, exp_y, exp_size, exp_size); + wxRect rect = cell_rect; + rect.x += indent; + rect.width = expWidth; int flag = 0; if ( m_underMouse == node ) @@ -2571,6 +2559,8 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) wxRendererNative::Get().DrawTreeItemButton( this, dc, rect, flag); } + indent += expWidth; + // force the expander column to left-center align cell->SetAlignment( wxALIGN_CENTER_VERTICAL ); } From fd73ae16237f0800fa15f32c93f7a94bf074850a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 15:05:46 +0100 Subject: [PATCH 297/916] Add wxHD_BITMAP_ON_RIGHT style to wxHeaderCtrl Implement this style for wxMSW to allow putting the column images on the right side, for consistency with wxMSW wxListCtrl. See #13350. --- docs/changes.txt | 1 + include/wx/headerctrl.h | 3 +++ interface/wx/headerctrl.h | 8 ++++++++ src/msw/headerctrl.cpp | 3 +++ 4 files changed, 15 insertions(+) diff --git a/docs/changes.txt b/docs/changes.txt index 1c82160ae2..99680a7aac 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -181,6 +181,7 @@ All (GUI): - Add wxEVT_SEARCH[_CANCEL] synonyms for wxSearchCtrl events. - Generate wxEVT_SEARCH on Enter under all platforms. - Extend wxRendererNative::DrawGauge() to work for vertical gauges too. +- Add wxHD_BITMAP_ON_RIGHT style to wxHeaderCtrl. wxGTK: diff --git a/include/wx/headerctrl.h b/include/wx/headerctrl.h index 928ed7aa5e..f491fcbc7a 100644 --- a/include/wx/headerctrl.h +++ b/include/wx/headerctrl.h @@ -37,6 +37,9 @@ enum // right clicking the header wxHD_ALLOW_HIDE = 0x0002, + // force putting column images on right + wxHD_BITMAP_ON_RIGHT = 0x0004, + // style used by default when creating the control wxHD_DEFAULT_STYLE = wxHD_ALLOW_REORDER }; diff --git a/interface/wx/headerctrl.h b/interface/wx/headerctrl.h index 662d20df0e..8a9907d546 100644 --- a/interface/wx/headerctrl.h +++ b/interface/wx/headerctrl.h @@ -17,6 +17,9 @@ enum // right clicking the header wxHD_ALLOW_HIDE = 0x0002, + // force putting column images on right + wxHD_BITMAP_ON_RIGHT = 0x0004, + // style used by default when creating the control wxHD_DEFAULT_STYLE = wxHD_ALLOW_REORDER }; @@ -76,6 +79,11 @@ enum user to change the columns visibility on right mouse click. Notice that the program can always hide or show the columns, this style only affects the users capability to do it. + @style{wxHD_BITMAP_ON_RIGHT} + The column image, if any, will be shown on the right side if this style + is used. Note that this style is only implemented in wxMSW currently + and doesn't do anything under the other platforms. It is available + since wxWidgets 3.1.1. @style{wxHD_DEFAULT_STYLE} Symbolic name for the default control style, currently equal to @c wxHD_ALLOW_REORDER. diff --git a/src/msw/headerctrl.cpp b/src/msw/headerctrl.cpp index 267775f582..1694a8e288 100644 --- a/src/msw/headerctrl.cpp +++ b/src/msw/headerctrl.cpp @@ -314,6 +314,9 @@ void wxHeaderCtrl::DoInsertItem(const wxHeaderColumn& col, unsigned int idx) { hdi.mask |= HDI_IMAGE; + if ( HasFlag(wxHD_BITMAP_ON_RIGHT) ) + hdi.fmt |= HDF_BITMAP_ON_RIGHT; + if ( bmp.IsOk() ) { const int bmpWidth = bmp.GetWidth(), From 2600bc34ffd0647d7450024df3b20d95e52f9836 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 15:08:29 +0100 Subject: [PATCH 298/916] Put column images on the right side in generic wxDataViewCtrl For consistency with wxListCtrl under MSW (which is the only platform where this change has any effect, as wxHD_BITMAP_ON_RIGHT is only supported there), put the column images on the right side in wxDataViewCtrl too. Closes #13350. --- samples/dataview/dataview.cpp | 2 ++ src/generic/datavgen.cpp | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index 77af616a00..26773c624d 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -23,6 +23,7 @@ #include "wx/wx.h" #endif +#include "wx/artprov.h" #include "wx/dataview.h" #include "wx/datetime.h" #include "wx/splitter.h" @@ -689,6 +690,7 @@ void MyFrame::BuildDataViewCtrl(wxPanel* parent, unsigned int nPanel, unsigned l wxDataViewColumn *column5 = new wxDataViewColumn( "custom", cr, 5, -1, wxALIGN_LEFT, wxDATAVIEW_COL_RESIZABLE ); + column5->SetBitmap(wxArtProvider::GetBitmap(wxART_INFORMATION, wxART_MENU)); m_ctrl[0]->AppendColumn( column5 ); diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 801f9dd2ed..2dff6c1e3d 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -264,7 +264,9 @@ class wxDataViewHeaderWindow : public wxHeaderCtrl { public: wxDataViewHeaderWindow(wxDataViewCtrl *parent) - : wxHeaderCtrl(parent) + : wxHeaderCtrl(parent, wxID_ANY, + wxDefaultPosition, wxDefaultSize, + wxHD_DEFAULT_STYLE | wxHD_BITMAP_ON_RIGHT) { } From 4b69c1a71899df6d8eb73a1d0899f38a1f3918e2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 15:35:20 +0100 Subject: [PATCH 299/916] Remove m_penExpander from generic wxDataViewCtrl code This pen was never used as wxRendererNative::DrawTreeItemButton() always uses its own colours, even in the generic version. --- src/generic/datavgen.cpp | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 2dff6c1e3d..95a056e350 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -932,9 +932,6 @@ private: // the pen used to draw horiz/vertical rules wxPen m_penRule; - // the pen used to draw the expander and the lines - wxPen m_penExpander; - // This is the tree structure of the model wxDataViewTreeNode * m_root; int m_count; @@ -1959,10 +1956,6 @@ wxDataViewMainWindow::wxDataViewMainWindow( wxDataViewCtrl *parent, wxWindowID i m_penRule = wxPen(GetRuleColour()); - // compose a pen whichcan draw black lines - // TODO: maybe there is something system colour to use - m_penExpander = wxPen(wxColour(0,0,0)); - m_root = wxDataViewTreeNode::CreateRootNode(); // Make m_count = -1 will cause the class recaculate the real displaying number of rows. @@ -2541,9 +2534,6 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) // draw expander if needed if ( node->HasChildren() ) { - dc.SetPen( m_penExpander ); - dc.SetBrush( wxNullBrush ); - wxRect rect = cell_rect; rect.x += indent; rect.width = expWidth; From 30f73aea6af19df18bfcf7ba394e357ced5ace62 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 19:21:46 +0100 Subject: [PATCH 300/916] Make using custom colour for wxDataViewProgressRenderer work again This used to work in 3.0, but got broken with the switch to using a native function for rendering the gauge in generic wxDataViewCtrl 86cf756ba95be9ac6988bc466b462e899edf5c4b (see #16406). Restore it now, even if it requires not one, but two hacks: one at wxRendererGeneric level to guess whether a custom colour is being used or not by examining wxDC::GetBackground(), and the other one in wxDataViewProgressRenderer itself to fall back to wxRendererGeneric if the colour is specified. But it is arguably worth doing this to fix the regression, even if it would be nice to provide a better API instead (see #18076). Closes #17885. --- src/generic/datavgen.cpp | 13 ++++++++++++- src/generic/renderg.cpp | 14 +++++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 95a056e350..d9840af8ab 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -1373,7 +1373,18 @@ wxString wxDataViewProgressRenderer::GetAccessibleDescription() const bool wxDataViewProgressRenderer::Render(wxRect rect, wxDC *dc, int WXUNUSED(state)) { - wxRendererNative::Get().DrawGauge( + const wxDataViewItemAttr& attr = GetAttr(); + if ( attr.HasColour() ) + dc->SetBackground(attr.GetColour()); + + // This is a hack, but native renderers don't support using custom colours, + // but typically gauge colour is important (e.g. it's commonly green/red to + // indicate some qualitative difference), so we fall back to the generic + // implementation which looks ugly but does support using custom colour. + wxRendererNative& renderer = attr.HasColour() + ? wxRendererNative::GetGeneric() + : wxRendererNative::Get(); + renderer.DrawGauge( GetOwner()->GetOwner(), *dc, rect, diff --git a/src/generic/renderg.cpp b/src/generic/renderg.cpp index 5cf2656cef..fc2f39645d 100644 --- a/src/generic/renderg.cpp +++ b/src/generic/renderg.cpp @@ -912,6 +912,18 @@ void wxRendererGeneric::DrawGauge(wxWindow* win, int max, int flags) { + // This is a hack, but we want to allow customizing the colour used for the + // gauge body, as this is important for the generic wxDataViewCtrl + // implementation which uses this method. So we assume that if the caller + // had set up a brush using background colour different from the default, + // it should be used. Otherwise we use the default one. + const wxBrush& bg = dc.GetBackground(); + wxColour colBar; + if ( bg.IsOk() && bg.GetColour() != win->GetBackgroundColour() ) + colBar = bg.GetColour(); + else + colBar = wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHT); + // Use same background as text controls. DrawTextCtrl(win, dc, rect); @@ -929,7 +941,7 @@ void wxRendererGeneric::DrawGauge(wxWindow* win, progRect.width = wxMulDivInt32(progRect.width, value, max); } - dc.SetBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHT)); + dc.SetBrush(colBar); dc.SetPen(*wxTRANSPARENT_PEN); dc.DrawRectangle(progRect); } From bb0a2952b19ff4b42a62c8ed8ed8ee36a5ab92f6 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 20:00:08 +0100 Subject: [PATCH 301/916] Replace macros with wxVector<> for wxDataViewModelNotifiers Don't use deprecated macro-based linked list class, use wxVector<> instead for m_notifiers. Also make it private, as it should have been from the beginning. --- include/wx/dataview.h | 11 ++++++----- src/common/datavcmn.cpp | 28 +++++++++++++++++++++++----- 2 files changed, 29 insertions(+), 10 deletions(-) diff --git a/include/wx/dataview.h b/include/wx/dataview.h index 304864aab1..a3547fb13c 100644 --- a/include/wx/dataview.h +++ b/include/wx/dataview.h @@ -27,6 +27,7 @@ #include "wx/dataobj.h" #include "wx/withimages.h" #include "wx/systhemectrl.h" +#include "wx/vector.h" class WXDLLIMPEXP_FWD_CORE wxImageList; class wxItemAttr; @@ -179,8 +180,7 @@ private: // wxDataViewModel // --------------------------------------------------------- -WX_DECLARE_LIST_WITH_DECL(wxDataViewModelNotifier, wxDataViewModelNotifiers, - class WXDLLIMPEXP_ADV); +typedef wxVector wxDataViewModelNotifiers; class WXDLLIMPEXP_ADV wxDataViewModel: public wxRefCounter { @@ -273,8 +273,9 @@ public: virtual bool IsVirtualListModel() const { return false; } protected: - // the user should not delete this class directly: he should use DecRef() instead! - virtual ~wxDataViewModel() { } + // Dtor is protected because the objects of this class must not be deleted, + // DecRef() must be used instead. + virtual ~wxDataViewModel(); // Helper function used by the default Compare() implementation to compare // values of types it is not aware about. Can be overridden in the derived @@ -285,7 +286,7 @@ protected: return 0; } - +private: wxDataViewModelNotifiers m_notifiers; }; diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index 0f2ccc24b8..117dec03e3 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -95,9 +95,6 @@ wxFont wxDataViewItemAttr::GetEffectiveFont(const wxFont& font) const // wxDataViewModelNotifier // --------------------------------------------------------- -#include "wx/listimpl.cpp" -WX_DEFINE_LIST(wxDataViewModelNotifiers) - bool wxDataViewModelNotifier::ItemsAdded( const wxDataViewItem &parent, const wxDataViewItemArray &items ) { size_t count = items.GetCount(); @@ -134,7 +131,15 @@ bool wxDataViewModelNotifier::ItemsChanged( const wxDataViewItemArray &items ) wxDataViewModel::wxDataViewModel() { - m_notifiers.DeleteContents( true ); +} + +wxDataViewModel::~wxDataViewModel() +{ + wxDataViewModelNotifiers::const_iterator iter; + for (iter = m_notifiers.begin(); iter != m_notifiers.end(); ++iter) + { + delete *iter; + } } bool wxDataViewModel::ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item ) @@ -305,7 +310,20 @@ void wxDataViewModel::AddNotifier( wxDataViewModelNotifier *notifier ) void wxDataViewModel::RemoveNotifier( wxDataViewModelNotifier *notifier ) { - m_notifiers.DeleteObject( notifier ); + wxDataViewModelNotifiers::iterator iter; + for (iter = m_notifiers.begin(); iter != m_notifiers.end(); ++iter) + { + if ( *iter == notifier ) + { + delete notifier; + m_notifiers.erase(iter); + + // Skip the assert below. + return; + } + } + + wxFAIL_MSG(wxS("Removing non-registered notifier")); } int wxDataViewModel::Compare( const wxDataViewItem &item1, const wxDataViewItem &item2, From 342388a456b22cc7c1a25ef68017b66f178ba3c9 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 20:19:14 +0100 Subject: [PATCH 302/916] Use wxCHECK_MSG() instead of wxLogError in wxDataViewTreeStore This is a check for a programming error and should never be shown to the user, so assert that the items being compared in wxDataViewTreeStore are under the same parent instead of using wxLogError. --- src/common/datavcmn.cpp | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index 117dec03e3..c8d82f4131 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -2770,16 +2770,11 @@ int wxDataViewTreeStore::Compare( const wxDataViewItem &item1, const wxDataViewI if (!node1 || !node2) return 0; - wxDataViewTreeStoreContainerNode* parent1 = + wxDataViewTreeStoreContainerNode* const parent = (wxDataViewTreeStoreContainerNode*) node1->GetParent(); - wxDataViewTreeStoreContainerNode* parent2 = - (wxDataViewTreeStoreContainerNode*) node2->GetParent(); - if (parent1 != parent2) - { - wxLogError( wxT("Comparing items with different parent.") ); - return 0; - } + wxCHECK_MSG( node2->GetParent() == parent, 0 + wxS("Comparing items with different parent.") ); if (node1->IsContainer() && !node2->IsContainer()) return -1; From f7e592b33506440dac18b7f61eb7b9d3c43c5c71 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 20:35:38 +0100 Subject: [PATCH 303/916] Use wxVector for storing wxDataViewTreeStoreNodes Replace the use of wxList macros with wxVector. Also make wxDataViewTreeStore::Compare() slightly more efficient by iterating over the children list only once instead of doing it twice. --- include/wx/dataview.h | 13 +++--- src/common/datavcmn.cpp | 90 ++++++++++++++++++++++++++++++----------- 2 files changed, 74 insertions(+), 29 deletions(-) diff --git a/include/wx/dataview.h b/include/wx/dataview.h index a3547fb13c..9162cd9d0d 100644 --- a/include/wx/dataview.h +++ b/include/wx/dataview.h @@ -1212,8 +1212,7 @@ private: wxClientData *m_data; }; -WX_DECLARE_LIST_WITH_DECL(wxDataViewTreeStoreNode, wxDataViewTreeStoreNodeList, - class WXDLLIMPEXP_ADV); +typedef wxVector wxDataViewTreeStoreNodes; class WXDLLIMPEXP_ADV wxDataViewTreeStoreContainerNode: public wxDataViewTreeStoreNode { @@ -1223,11 +1222,13 @@ public: wxClientData *data = NULL ); virtual ~wxDataViewTreeStoreContainerNode(); - const wxDataViewTreeStoreNodeList &GetChildren() const + const wxDataViewTreeStoreNodes &GetChildren() const { return m_children; } - wxDataViewTreeStoreNodeList &GetChildren() + wxDataViewTreeStoreNodes &GetChildren() { return m_children; } + wxDataViewTreeStoreNodes::iterator FindChild(wxDataViewTreeStoreNode* node); + void SetExpandedIcon( const wxIcon &icon ) { m_iconExpanded = icon; } const wxIcon &GetExpandedIcon() const @@ -1241,8 +1242,10 @@ public: virtual bool IsContainer() wxOVERRIDE { return true; } + void DestroyChildren(); + private: - wxDataViewTreeStoreNodeList m_children; + wxDataViewTreeStoreNodes m_children; wxIcon m_iconExpanded; bool m_isExpanded; }; diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index c8d82f4131..a0519fab0d 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -2439,9 +2439,6 @@ wxDataViewTreeStoreNode::~wxDataViewTreeStoreNode() delete m_data; } -#include "wx/listimpl.cpp" -WX_DEFINE_LIST(wxDataViewTreeStoreNodeList) - wxDataViewTreeStoreContainerNode::wxDataViewTreeStoreContainerNode( wxDataViewTreeStoreNode *parent, const wxString &text, const wxIcon &icon, const wxIcon &expanded, wxClientData *data ) @@ -2449,11 +2446,35 @@ wxDataViewTreeStoreContainerNode::wxDataViewTreeStoreContainerNode( , m_iconExpanded(expanded) { m_isExpanded = false; - m_children.DeleteContents(true); } wxDataViewTreeStoreContainerNode::~wxDataViewTreeStoreContainerNode() { + DestroyChildren(); +} + +wxDataViewTreeStoreNodes::iterator +wxDataViewTreeStoreContainerNode::FindChild(wxDataViewTreeStoreNode* node) +{ + wxDataViewTreeStoreNodes::iterator iter; + for (iter = m_children.begin(); iter != m_children.end(); ++iter) + { + if ( *iter == node ) + break; + } + + return iter; +} + +void wxDataViewTreeStoreContainerNode::DestroyChildren() +{ + wxDataViewTreeStoreNodes::const_iterator iter; + for (iter = m_children.begin(); iter != m_children.end(); ++iter) + { + delete *iter; + } + + m_children.clear(); } //----------------------------------------------------------------------------- @@ -2476,7 +2497,7 @@ wxDataViewItem wxDataViewTreeStore::AppendItem( const wxDataViewItem& parent, wxDataViewTreeStoreNode *node = new wxDataViewTreeStoreNode( parent_node, text, icon, data ); - parent_node->GetChildren().Append( node ); + parent_node->GetChildren().push_back( node ); return node->GetItem(); } @@ -2489,7 +2510,8 @@ wxDataViewItem wxDataViewTreeStore::PrependItem( const wxDataViewItem& parent, wxDataViewTreeStoreNode *node = new wxDataViewTreeStoreNode( parent_node, text, icon, data ); - parent_node->GetChildren().Insert( node ); + wxDataViewTreeStoreNodes& children = parent_node->GetChildren(); + children.insert(children.begin(), node); return node->GetItem(); } @@ -2505,12 +2527,13 @@ wxDataViewTreeStore::InsertItem(const wxDataViewItem& parent, if (!parent_node) return wxDataViewItem(0); wxDataViewTreeStoreNode *previous_node = FindNode( previous ); - int pos = parent_node->GetChildren().IndexOf( previous_node ); - if (pos == wxNOT_FOUND) return wxDataViewItem(0); + wxDataViewTreeStoreNodes& children = parent_node->GetChildren(); + const wxDataViewTreeStoreNodes::iterator iter = parent_node->FindChild( previous_node ); + if (iter == children.end()) return wxDataViewItem(0); wxDataViewTreeStoreNode *node = new wxDataViewTreeStoreNode( parent_node, text, icon, data ); - parent_node->GetChildren().Insert( (size_t) pos, node ); + children.insert(iter, node); return node->GetItem(); } @@ -2524,7 +2547,8 @@ wxDataViewItem wxDataViewTreeStore::PrependContainer( const wxDataViewItem& pare wxDataViewTreeStoreContainerNode *node = new wxDataViewTreeStoreContainerNode( parent_node, text, icon, expanded, data ); - parent_node->GetChildren().Insert( node ); + wxDataViewTreeStoreNodes& children = parent_node->GetChildren(); + children.insert(children.begin(), node); return node->GetItem(); } @@ -2541,7 +2565,7 @@ wxDataViewTreeStore::AppendContainer(const wxDataViewItem& parent, wxDataViewTreeStoreContainerNode *node = new wxDataViewTreeStoreContainerNode( parent_node, text, icon, expanded, data ); - parent_node->GetChildren().Append( node ); + parent_node->GetChildren().push_back( node ); return node->GetItem(); } @@ -2558,12 +2582,13 @@ wxDataViewTreeStore::InsertContainer(const wxDataViewItem& parent, if (!parent_node) return wxDataViewItem(0); wxDataViewTreeStoreNode *previous_node = FindNode( previous ); - int pos = parent_node->GetChildren().IndexOf( previous_node ); - if (pos == wxNOT_FOUND) return wxDataViewItem(0); + wxDataViewTreeStoreNodes& children = parent_node->GetChildren(); + const wxDataViewTreeStoreNodes::iterator iter = parent_node->FindChild( previous_node ); + if (iter == children.end()) return wxDataViewItem(0); wxDataViewTreeStoreContainerNode *node = new wxDataViewTreeStoreContainerNode( parent_node, text, icon, expanded, data ); - parent_node->GetChildren().Insert( (size_t) pos, node ); + children.insert(iter, node); return node->GetItem(); } @@ -2581,7 +2606,7 @@ wxDataViewItem wxDataViewTreeStore::GetNthChild( const wxDataViewItem& parent, u wxDataViewTreeStoreContainerNode *parent_node = FindContainerNode( parent ); if (!parent_node) return wxDataViewItem(0); - wxDataViewTreeStoreNodeList::compatibility_iterator node = parent_node->GetChildren().Item( pos ); + wxDataViewTreeStoreNode* const node = parent_node->GetChildren()[pos]; if (node) return wxDataViewItem(node->GetData()); @@ -2597,7 +2622,7 @@ int wxDataViewTreeStore::GetChildCount( const wxDataViewItem& parent ) const return 0; wxDataViewTreeStoreContainerNode *container_node = (wxDataViewTreeStoreContainerNode*) node; - return (int) container_node->GetChildren().GetCount(); + return (int) container_node->GetChildren().size(); } void wxDataViewTreeStore::SetItemText( const wxDataViewItem& item, const wxString &text ) @@ -2673,7 +2698,13 @@ void wxDataViewTreeStore::DeleteItem( const wxDataViewItem& item ) wxDataViewTreeStoreContainerNode *parent_node = FindContainerNode( parent_item ); if (!parent_node) return; - parent_node->GetChildren().DeleteObject( FindNode(item) ); + const wxDataViewTreeStoreNodes::iterator + iter = parent_node->FindChild(FindNode(item)); + if ( iter != parent_node->GetChildren().end() ) + { + delete *iter; + parent_node->GetChildren().erase(iter); + } } void wxDataViewTreeStore::DeleteChildren( const wxDataViewItem& item ) @@ -2681,7 +2712,7 @@ void wxDataViewTreeStore::DeleteChildren( const wxDataViewItem& item ) wxDataViewTreeStoreContainerNode *node = FindContainerNode( item ); if (!node) return; - node->GetChildren().clear(); + node->DestroyChildren(); } void wxDataViewTreeStore::DeleteAllItems() @@ -2751,14 +2782,14 @@ unsigned int wxDataViewTreeStore::GetChildren( const wxDataViewItem &item, wxDat wxDataViewTreeStoreContainerNode *node = FindContainerNode( item ); if (!node) return 0; - wxDataViewTreeStoreNodeList::iterator iter; + wxDataViewTreeStoreNodes::iterator iter; for (iter = node->GetChildren().begin(); iter != node->GetChildren().end(); ++iter) { wxDataViewTreeStoreNode* child = *iter; children.Add( child->GetItem() ); } - return node->GetChildren().GetCount(); + return node->GetChildren().size(); } int wxDataViewTreeStore::Compare( const wxDataViewItem &item1, const wxDataViewItem &item2, @@ -2767,13 +2798,13 @@ int wxDataViewTreeStore::Compare( const wxDataViewItem &item1, const wxDataViewI wxDataViewTreeStoreNode *node1 = FindNode( item1 ); wxDataViewTreeStoreNode *node2 = FindNode( item2 ); - if (!node1 || !node2) + if (!node1 || !node2 || (node1 == node2)) return 0; wxDataViewTreeStoreContainerNode* const parent = (wxDataViewTreeStoreContainerNode*) node1->GetParent(); - wxCHECK_MSG( node2->GetParent() == parent, 0 + wxCHECK_MSG( node2->GetParent() == parent, 0, wxS("Comparing items with different parent.") ); if (node1->IsContainer() && !node2->IsContainer()) @@ -2782,7 +2813,18 @@ int wxDataViewTreeStore::Compare( const wxDataViewItem &item1, const wxDataViewI if (node2->IsContainer() && !node1->IsContainer()) return 1; - return parent1->GetChildren().IndexOf( node1 ) - parent2->GetChildren().IndexOf( node2 ); + wxDataViewTreeStoreNodes::const_iterator iter; + for (iter = parent->GetChildren().begin(); iter != parent->GetChildren().end(); ++iter) + { + if ( *iter == node1 ) + return -1; + + if ( *iter == node2 ) + return 1; + } + + wxFAIL_MSG(wxS("Unreachable")); + return 0; } wxDataViewTreeStoreNode *wxDataViewTreeStore::FindNode( const wxDataViewItem &item ) const @@ -2951,7 +2993,7 @@ void wxDataViewTreeCtrl::DeleteChildren( const wxDataViewItem& item ) if (!node) return; wxDataViewItemArray array; - wxDataViewTreeStoreNodeList::iterator iter; + wxDataViewTreeStoreNodes::iterator iter; for (iter = node->GetChildren().begin(); iter != node->GetChildren().end(); ++iter) { wxDataViewTreeStoreNode* child = *iter; From 6c9ced9be238dee06edb573c7a9024d7ce380ec0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 20:42:03 +0100 Subject: [PATCH 304/916] Document wxDataViewListCtrl default sort order Also explain how to change it if the default behaviour of putting all the container items before all the leaves is undesirable. Closes #16105. --- interface/wx/dataview.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index e98ab8a387..ed3a535159 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3405,6 +3405,13 @@ public: without having to derive any class from it, but it is mostly used from within wxDataViewTreeCtrl. + Notice that by default this class sorts all items with children before the + leaf items. If this behaviour is inappropriate, you need to derive a custom + class from this one and override either its HasDefaultCompare() method to + return false, which would result in items being sorted just in the order in + which they were added, or its Compare() function to compare the items using + some other criterion, e.g. alphabetically. + @library{wxadv} @category{dvc} */ From 43c1baf1bd59ab36b53364a3aa5a28cb08578308 Mon Sep 17 00:00:00 2001 From: Hartwig Wiesmann Date: Sat, 3 Feb 2018 21:03:49 +0100 Subject: [PATCH 305/916] Fix wxDataViewColumn::SetSortOrder() under macOS Don't check if we already sort by the column in SetSortOrder() as this meant the sort order couldn't be changed programmatically at all. Closes #15405. --- docs/changes.txt | 1 + src/osx/cocoa/dataview.mm | 32 ++++++++++++++++++-------------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 99680a7aac..5fe6a0ba0b 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -282,6 +282,7 @@ wxOSX: - Fix selecting RGB bitmaps (with no alpha channel) into wxMemoryDC. - Fix updating radio groups when menu item is inserted/removed from wxMenu. - Allow changing alignment styles after wxTextCtrl creation (Andreas Falkenhahn). +- Fix wxDataViewColumn::SetSortOrder() (hartwigw). wxQt diff --git a/src/osx/cocoa/dataview.mm b/src/osx/cocoa/dataview.mm index c48c9c976e..e160b1ad92 100644 --- a/src/osx/cocoa/dataview.mm +++ b/src/osx/cocoa/dataview.mm @@ -3513,23 +3513,27 @@ void wxDataViewColumn::SetSortable(bool sortable) void wxDataViewColumn::SetSortOrder(bool ascending) { - if (m_ascending != ascending) + NSTableColumn* const tableColumn = m_NativeDataPtr->GetNativeColumnPtr(); + NSTableView* tableView = [tableColumn tableView]; + + wxCHECK_RET( tableView, wxS("Column has to be associated with a table view when the sorting order is set") ); + + if ( (m_ascending != ascending) || ([tableColumn sortDescriptorPrototype] == nil) ) { m_ascending = ascending; - if (IsSortKey()) - { - // change sorting order: - NSArray* sortDescriptors; - NSSortDescriptor* sortDescriptor; - NSTableColumn* tableColumn; - tableColumn = m_NativeDataPtr->GetNativeColumnPtr(); - sortDescriptor = [[NSSortDescriptor alloc] initWithKey:[[tableColumn sortDescriptorPrototype] key] ascending:m_ascending]; - sortDescriptors = [NSArray arrayWithObject:sortDescriptor]; - [tableColumn setSortDescriptorPrototype:sortDescriptor]; - [[tableColumn tableView] setSortDescriptors:sortDescriptors]; - [sortDescriptor release]; - } + // change sorting order for the native implementation (this will + // trigger a call to outlineView:sortDescriptorsDidChange: where the + // wxWidget's sort descriptors are going to be set): + NSSortDescriptor* const + sortDescriptor = [[NSSortDescriptor alloc] + initWithKey:[NSString stringWithFormat:@"%ld",(long)[tableView columnWithIdentifier:[tableColumn identifier]]] + ascending:m_ascending]; + + NSArray* sortDescriptors = [NSArray arrayWithObject:sortDescriptor]; + [tableColumn setSortDescriptorPrototype:sortDescriptor]; + [tableView setSortDescriptors:sortDescriptors]; + [sortDescriptor release]; } } From d7b88827b80bc5c0397ba0158ee18e65263e7f0f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 3 Feb 2018 22:32:37 +0100 Subject: [PATCH 306/916] Avoid spurious focus events for composite windows in wxMSW Composite windows, i.e. wxWindows composed of several HWNDs at MSW level, didn't handle focus events correctly and, for example, generated wxEVT_KILL_FOCUS event when the focus simply switched from wxComboBox itself to the EDIT control inside it, which broke using non-readonly wxComboBox as in-place editor inside wxDataViewCtrl. Check if the focus event notifies about the focus switching to, or from, another HWND belonging to the same window, and suppress wx event generation in this case as they don't make sense because the focus doesn't change at wx level. See #17034. --- src/msw/window.cpp | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/src/msw/window.cpp b/src/msw/window.cpp index ead90f0321..0082cef587 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -4169,6 +4169,14 @@ bool wxWindowMSW::HandleSetFocus(WXHWND hwnd) return false; } + if ( ContainsHWND(hwnd) ) + { + // If another subwindow of this window already had focus before, this + // window should already have focus at wx level, no need for another + // event. + return false; + } + // notify the parent keeping track of focus for the kbd navigation // purposes that we got it wxChildFocusEvent eventFocus((wxWindow *)this); @@ -4193,6 +4201,20 @@ bool wxWindowMSW::HandleSetFocus(WXHWND hwnd) bool wxWindowMSW::HandleKillFocus(WXHWND hwnd) { + // Don't send the event when in the process of being deleted. This can + // only cause problems if the event handler tries to access the object. + if ( m_isBeingDeleted ) + { + return false; + } + + if ( ContainsHWND(hwnd) ) + { + // If the focus switches to another HWND which is part of the same + // wxWindow, we must not generate a wxEVT_KILL_FOCUS. + return false; + } + #if wxUSE_CARET // Deal with caret if ( m_caret ) @@ -4201,13 +4223,6 @@ bool wxWindowMSW::HandleKillFocus(WXHWND hwnd) } #endif // wxUSE_CARET - // Don't send the event when in the process of being deleted. This can - // only cause problems if the event handler tries to access the object. - if ( m_isBeingDeleted ) - { - return false; - } - wxFocusEvent event(wxEVT_KILL_FOCUS, m_windowId); event.SetEventObject(this); From d44dd8caf4f7cee320a096d8d80f4e1e85347681 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 00:28:08 +0100 Subject: [PATCH 307/916] Document wxDataViewCtrl::GetMainWindow() This method can be useful, so make it part of the public API, similarly to e.g. wxGrid::GetGridWindow(). See #17786. --- interface/wx/dataview.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index ed3a535159..8c2b303bdc 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -1442,6 +1442,16 @@ public: virtual wxRect GetItemRect(const wxDataViewItem& item, const wxDataViewColumn* col = NULL) const; + /** + Returns the window corresponding to the main area of the control. + + This is the window that actually shows the control items and may be + different from wxDataViewCtrl window itself in some ports (currently + this is only the case for the generic implementation used by default + under MSW). + */ + wxWindow* GetMainWindow(); + /** Returns pointer to the data model associated with the control (if any). */ From 683185aee1460d4966acdf7343b6813b5853011e Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Thu, 1 Feb 2018 00:02:02 +0100 Subject: [PATCH 308/916] Explicitly mention build environments for Travis CI This removes a duplicate build on Travis, cause by a change of the default build environment. --- .travis.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index afc314c983..66d6216a07 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,11 +7,13 @@ sudo: required matrix: include: - - compiler: gcc - - compiler: gcc - env: wxCONFIGURE_FLAGS="--enable-utf8 --enable-utf8only --enable-monolithic" + - dist: precise + compiler: gcc - dist: trusty compiler: gcc + - dist: trusty + compiler: gcc + env: wxCONFIGURE_FLAGS="--enable-utf8 --enable-utf8only --enable-monolithic" - dist: trusty compiler: gcc env: wxGTK_VERSION=3 wxCONFIGURE_FLAGS="--enable-cxx11 --enable-stl" wxMAKEFILE_FLAGS="CXXFLAGS=-std=c++11" From 2fb4e1117491405adcf44d05c0ddecd1a6599f06 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sat, 3 Feb 2018 18:28:20 +0100 Subject: [PATCH 309/916] Remove "update = checkout" option for submodules This reverts af16d8ba5c9680febadeeed51a9be4bb5e9bf1d5. It caused problems with older git versions (e.g. 1.8.5) that do not recognize the checkout option: warning: unknown update mode 'checkout' suggested for submodule '3rdparty/catch' Skipping submodule '3rdparty/catch' Also specify the branch for the catch submodule, to be in line with the other submodules. --- .gitmodules | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.gitmodules b/.gitmodules index ec57ac48de..8373eef871 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,29 +1,24 @@ [submodule "3rdparty/catch"] path = 3rdparty/catch url = https://github.com/wxWidgets/Catch.git - update = checkout + branch = wx [submodule "src/zlib"] path = src/zlib url = https://github.com/wxWidgets/zlib.git branch = wx - update = checkout [submodule "src/png"] path = src/png url = https://github.com/wxWidgets/libpng.git branch = wx - update = checkout [submodule "src/expat"] path = src/expat url = https://github.com/wxWidgets/libexpat.git branch = wx - update = checkout [submodule "src/tiff"] path = src/tiff url = https://github.com/wxWidgets/libtiff.git branch = wx - update = checkout [submodule "src/jpeg"] path = src/jpeg url = https://github.com/wxWidgets/libjpeg-turbo.git branch = wx - update = checkout From 3a1625030314f501effb9620f5b39b470b2435c3 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 31 Jan 2018 03:11:07 +0100 Subject: [PATCH 310/916] Don't make inert toggle/choice wxDataViewCtrl cell editable in wxOSX Don't disable all inert renderers as this results in ugly "disabled" look for some of them (see 6e885992f52f73b7b0c636167c5e9717f0d9b293), but do disable the renderers that would be editable otherwise, such as wxDataViewChoiceRenderer and wxDataViewToggleRenderer, in wxOSX as it shouldn't be possible to change value of the inert cells. See https://github.com/wxWidgets/wxWidgets/pull/707 Closes #18056. --- include/wx/osx/dvrenderers.h | 29 +++++++++++++++++++++++++++-- src/common/datavcmn.cpp | 15 +-------------- src/osx/cocoa/dataview.mm | 10 ++-------- 3 files changed, 30 insertions(+), 24 deletions(-) diff --git a/include/wx/osx/dvrenderers.h b/include/wx/osx/dvrenderers.h index c62a19ffb5..0aa10473dc 100644 --- a/include/wx/osx/dvrenderers.h +++ b/include/wx/osx/dvrenderers.h @@ -42,6 +42,29 @@ private: wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxDataViewCustomRenderer); }; +// --------------------------------------------------------------------------- +// This is a Mac-specific class that should be used as the base class for the +// renderers that should be disabled when they're inert, to prevent the user +// from editing them. +// --------------------------------------------------------------------------- + +class wxOSXDataViewDisabledInertRenderer : public wxDataViewRenderer +{ +protected: + wxOSXDataViewDisabledInertRenderer(const wxString& varianttype, + wxDataViewCellMode mode, + int alignment) + : wxDataViewRenderer(varianttype, mode, alignment) + { + } + + virtual void SetEnabled(bool enabled) wxOVERRIDE + { + wxDataViewRenderer::SetEnabled(enabled && + GetMode() != wxDATAVIEW_CELL_INERT); + } +}; + // --------------------------------------------------------- // wxDataViewTextRenderer // --------------------------------------------------------- @@ -97,7 +120,8 @@ private: // wxDataViewChoiceRenderer // ------------------------------------- -class WXDLLIMPEXP_ADV wxDataViewChoiceRenderer: public wxDataViewRenderer +class WXDLLIMPEXP_ADV wxDataViewChoiceRenderer + : public wxOSXDataViewDisabledInertRenderer { public: wxDataViewChoiceRenderer(const wxArrayString& choices, @@ -164,7 +188,8 @@ private: // wxDataViewToggleRenderer // --------------------------------------------------------- -class WXDLLIMPEXP_ADV wxDataViewToggleRenderer: public wxDataViewRenderer +class WXDLLIMPEXP_ADV wxDataViewToggleRenderer + : public wxOSXDataViewDisabledInertRenderer { public: static wxString GetDefaultType() { return wxS("bool"); } diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index 0f2ccc24b8..008a61ad3d 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -862,20 +862,7 @@ wxDataViewRendererBase::PrepareForItem(const wxDataViewModel *model, // Finally determine the enabled/disabled state and apply it, even to the // empty cells. - bool enabled = true; - switch ( GetMode() ) - { - case wxDATAVIEW_CELL_INERT: - enabled = false; - break; - - case wxDATAVIEW_CELL_ACTIVATABLE: - case wxDATAVIEW_CELL_EDITABLE: - enabled = model->IsEnabled(item, column); - break; - } - - SetEnabled(enabled); + SetEnabled(model->IsEnabled(item, column)); } wxCATCH_ALL diff --git a/src/osx/cocoa/dataview.mm b/src/osx/cocoa/dataview.mm index c48c9c976e..eac9a0fbda 100644 --- a/src/osx/cocoa/dataview.mm +++ b/src/osx/cocoa/dataview.mm @@ -2897,12 +2897,6 @@ void wxDataViewRenderer::SetAttr(const wxDataViewItemAttr& attr) void wxDataViewRenderer::SetEnabled(bool enabled) { - // setting the appearance to disabled grey should only be done for - // the active cells which are disabled, not for the cells which can - // never be edited at all - if ( GetMode() == wxDATAVIEW_CELL_INERT ) - enabled = true; - [GetNativeData()->GetItemCell() setEnabled:enabled]; } @@ -3071,7 +3065,7 @@ wxIMPLEMENT_CLASS(wxDataViewBitmapRenderer, wxDataViewRenderer); wxDataViewChoiceRenderer::wxDataViewChoiceRenderer(const wxArrayString& choices, wxDataViewCellMode mode, int alignment) - : wxDataViewRenderer(wxT("string"), mode, alignment), + : wxOSXDataViewDisabledInertRenderer(wxT("string"), mode, alignment), m_choices(choices) { NSPopUpButtonCell* cell; @@ -3318,7 +3312,7 @@ wxIMPLEMENT_ABSTRACT_CLASS(wxDataViewIconTextRenderer,wxDataViewRenderer); wxDataViewToggleRenderer::wxDataViewToggleRenderer(const wxString& varianttype, wxDataViewCellMode mode, int align) - : wxDataViewRenderer(varianttype,mode) + : wxOSXDataViewDisabledInertRenderer(varianttype, mode, align) { NSButtonCell* cell; From c391cfd6171c79968b44f0ed2e794aebcab010d8 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 3 Feb 2018 22:28:35 -0800 Subject: [PATCH 311/916] Avoid using already-destroyed parts of wxChoice/wxComboBox during destruction When used as a wxDVC cell editor, GtkComboBox has already destroyed it's model and child GtkEntry by the time our dtor is called. See #17034 --- src/gtk/choice.cpp | 3 ++- src/gtk/combobox.cpp | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gtk/choice.cpp b/src/gtk/choice.cpp index db2240b11e..c65967ab1a 100644 --- a/src/gtk/choice.cpp +++ b/src/gtk/choice.cpp @@ -170,7 +170,8 @@ void wxChoice::DoClear() GtkComboBox* combobox = GTK_COMBO_BOX( m_widget ); GtkTreeModel* model = gtk_combo_box_get_model( combobox ); - gtk_list_store_clear(GTK_LIST_STORE(model)); + if (model) + gtk_list_store_clear(GTK_LIST_STORE(model)); m_clientData.Clear(); diff --git a/src/gtk/combobox.cpp b/src/gtk/combobox.cpp index e848edac65..4c0231dcf3 100644 --- a/src/gtk/combobox.cpp +++ b/src/gtk/combobox.cpp @@ -99,7 +99,10 @@ wxEND_EVENT_TABLE() wxComboBox::~wxComboBox() { if (m_entry) + { GTKDisconnect(m_entry); + g_object_remove_weak_pointer(G_OBJECT(m_entry), (void**)&m_entry); + } } void wxComboBox::Init() @@ -213,6 +216,7 @@ void wxComboBox::GTKCreateComboBoxWidget() g_object_ref(m_widget); m_entry = GTK_ENTRY(gtk_bin_get_child(GTK_BIN(m_widget))); + g_object_add_weak_pointer(G_OBJECT(m_entry), (void**)&m_entry); } GtkEditable *wxComboBox::GetEditable() const From e2a04e1fd77bb16562c84db89a26aced26b911c0 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 3 Feb 2018 22:30:36 -0800 Subject: [PATCH 312/916] Use signal blocking rather than disconnection to temporarily disable events --- src/gtk/dataview.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index 91b7621fde..b677de2b69 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -4681,7 +4681,8 @@ bool wxDataViewCtrl::Create(wxWindow *parent, PostCreation(size); - GtkEnableSelectionEvents(); + g_signal_connect_after(gtk_tree_view_get_selection(GTK_TREE_VIEW(m_treeview)), + "changed", G_CALLBACK(wxdataview_selection_changed_callback), this); g_signal_connect_after (m_treeview, "row-activated", G_CALLBACK (wxdataview_row_activated_callback), this); @@ -5287,15 +5288,15 @@ void wxDataViewCtrl::DoSetIndent() void wxDataViewCtrl::GtkDisableSelectionEvents() { GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); - g_signal_handlers_disconnect_by_func( selection, - (gpointer) (wxdataview_selection_changed_callback), this); + g_signal_handlers_block_by_func( + selection, (void*)wxdataview_selection_changed_callback, this); } void wxDataViewCtrl::GtkEnableSelectionEvents() { GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW(m_treeview) ); - g_signal_connect_after (selection, "changed", - G_CALLBACK (wxdataview_selection_changed_callback), this); + g_signal_handlers_unblock_by_func( + selection, (void*)wxdataview_selection_changed_callback, this); } // ---------------------------------------------------------------------------- From 52a30cde6f8a89cc3c8528c496e37f84cda65518 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 3 Feb 2018 22:36:44 -0800 Subject: [PATCH 313/916] Remove useless gtk_widget_set_size_request() It won't have any effect on the best size computation, and leaving the size set to (0,0) is really bad form --- src/gtk/choice.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/gtk/choice.cpp b/src/gtk/choice.cpp index c65967ab1a..c86e4eebb9 100644 --- a/src/gtk/choice.cpp +++ b/src/gtk/choice.cpp @@ -348,11 +348,6 @@ wxSize wxChoice::DoGetSizeFromTextSize(int xlen, int ylen) const // a GtkEntry for wxComboBox and a GtkCellView for wxChoice GtkWidget* childPart = gtk_bin_get_child(GTK_BIN(m_widget)); - // Set a as small as possible size for the control, so preferred sizes - // return "natural" sizes, not taking into account the previous ones (which - // seems to be GTK+3 behaviour) - gtk_widget_set_size_request(m_widget, 0, 0); - // We are interested in the difference of sizes between the whole contol // and its child part. I.e. arrow, separators, etc. GtkRequisition req; From fa000d254da264e9f6333d4fdb55b310d6cdd9aa Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 3 Feb 2018 22:38:23 -0800 Subject: [PATCH 314/916] Use wxFALLTHROUGH --- src/gtk/textctrl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gtk/textctrl.cpp b/src/gtk/textctrl.cpp index 16a73318a3..5febd63944 100644 --- a/src/gtk/textctrl.cpp +++ b/src/gtk/textctrl.cpp @@ -187,7 +187,7 @@ static void wxGtkTextApplyTagsFromAttr(GtkWidget *text, align = GTK_JUSTIFY_FILL; break; } - // fallthrough + wxFALLTHROUGH; #endif default: align = GTK_JUSTIFY_LEFT; From 508a409f7e53d790ab38f8f34c011e7a43c3044f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 00:05:48 +0100 Subject: [PATCH 315/916] Suppress focus loss on opening combobox popup in wxGTK Make GTKHandleFocusOut() virtual and override it in wxChoice in order to avoid generating wxEVT_KILL_FOCUS events when the combobox dropdown button is clicked. This is important because it allows fatal problems when using a combobox-based in-place editor in wxDataViewCtrl as getting these events totally broke the UI before. See #17034. --- docs/changes.txt | 1 + include/wx/gtk/choice.h | 1 + include/wx/gtk/window.h | 2 +- src/gtk/choice.cpp | 17 +++++++++++++++++ 4 files changed, 20 insertions(+), 1 deletion(-) diff --git a/docs/changes.txt b/docs/changes.txt index 41b4baba6d..bcf61cd909 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -206,6 +206,7 @@ wxGTK: - Implement XYToPosition() for single-line wxTextCtrl. - Implement ShowPosition() for single-line wxTextCtrl. - Improve wx{Client,Paint,Screen,Window}DC::GetPPI() (GTK+ 3). +- Suppress focus loss events for wxChoice and wxComboBox on opening popup. wxMSW: diff --git a/include/wx/gtk/choice.h b/include/wx/gtk/choice.h index ce43533dd3..c594624812 100644 --- a/include/wx/gtk/choice.h +++ b/include/wx/gtk/choice.h @@ -101,6 +101,7 @@ protected: virtual void DoClear() wxOVERRIDE; virtual void DoDeleteOneItem(unsigned int n) wxOVERRIDE; + virtual bool GTKHandleFocusOut() wxOVERRIDE; virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const wxOVERRIDE; virtual void DoApplyWidgetStyle(GtkRcStyle *style) wxOVERRIDE; diff --git a/include/wx/gtk/window.h b/include/wx/gtk/window.h index 2430773c43..16c755c413 100644 --- a/include/wx/gtk/window.h +++ b/include/wx/gtk/window.h @@ -197,7 +197,7 @@ public: GdkWindow* GTKGetDrawingWindow() const; bool GTKHandleFocusIn(); - bool GTKHandleFocusOut(); + virtual bool GTKHandleFocusOut(); void GTKHandleFocusOutNoDeferring(); void GTKHandleDeferredFocusOut(); diff --git a/src/gtk/choice.cpp b/src/gtk/choice.cpp index db2240b11e..41bece0eed 100644 --- a/src/gtk/choice.cpp +++ b/src/gtk/choice.cpp @@ -111,6 +111,23 @@ wxChoice::~wxChoice() #endif // __WXGTK3__ } +bool wxChoice::GTKHandleFocusOut() +{ + if ( wx_is_at_least_gtk2(10) ) + { + gboolean isShown; + g_object_get( m_widget, "popup-shown", &isShown, NULL ); + + // Don't send "focus lost" events if the focus is grabbed by our own + // popup, it counts as part of this window, even though wx doesn't know + // about it (and can't, because GtkComboBox doesn't expose it). + if ( isShown ) + return true; + } + + return wxChoiceBase::GTKHandleFocusOut(); +} + void wxChoice::GTKInsertComboBoxTextItem( unsigned int n, const wxString& text ) { #ifdef __WXGTK3__ From af78ad3b499e9258fc62b710db43cdcff4c4beea Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 15:27:02 +0100 Subject: [PATCH 316/916] Add wxDataViewCtrlBase::SetAlternateRowColour() Previously this method was only available in the generic wxDataViewCtrl, move it to the base class to make it possible calling it in portable code and document it. Closes #14617. --- include/wx/dataview.h | 6 ++++++ include/wx/generic/dataview.h | 5 +++-- interface/wx/dataview.h | 15 +++++++++++++++ src/generic/datavgen.cpp | 3 ++- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/include/wx/dataview.h b/include/wx/dataview.h index 9162cd9d0d..c94c8fe3c1 100644 --- a/include/wx/dataview.h +++ b/include/wx/dataview.h @@ -755,6 +755,12 @@ public: virtual bool SetHeaderAttr(const wxItemAttr& WXUNUSED(attr)) { return false; } + // Set the colour used for the "alternate" rows when wxDV_ROW_LINES is on. + // Also only supported in the generic version, which returns true to + // indicate it. + virtual bool SetAlternateRowColour(const wxColour& WXUNUSED(colour)) + { return false; } + virtual wxVisualAttributes GetDefaultAttributes() const wxOVERRIDE { return GetClassDefaultAttributes(GetWindowVariant()); diff --git a/include/wx/generic/dataview.h b/include/wx/generic/dataview.h index 5efc0e1eec..6fe74d55db 100644 --- a/include/wx/generic/dataview.h +++ b/include/wx/generic/dataview.h @@ -277,10 +277,11 @@ public: virtual bool SetHeaderAttr(const wxItemAttr& attr) wxOVERRIDE; - // These methods are specific to generic wxDataViewCtrl implementation and + virtual bool SetAlternateRowColour(const wxColour& colour) wxOVERRIDE; + + // This method is specific to generic wxDataViewCtrl implementation and // should not be used in portable code. wxColour GetAlternateRowColour() const { return m_alternateRowColour; } - void SetAlternateRowColour(const wxColour& colour); // The returned pointer is null if the control has wxDV_NO_HEADER style. // diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 8c2b303bdc..90c9f1b6d6 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -1566,6 +1566,21 @@ public: */ virtual void SelectAll(); + /** + Set custom colour for the alternate rows used with wxDV_ROW_LINES + style. + + Note that calling this method has no effect if wxDV_ROW_LINES is off. + + @param colour The colour to use for the alternate rows. + @return @true if customizing this colour is supported (currently only + in the generic version), @false if this method is not implemented + under this platform. + + @since 3.1.1 + */ + bool SetAlternateRowColour(const wxColour& colour); + /** Set which column shall contain the tree-like expanders. */ diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index d9840af8ab..298ff6bcb8 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -5781,9 +5781,10 @@ bool wxDataViewCtrl::SetHeaderAttr(const wxItemAttr& attr) return true; } -void wxDataViewCtrl::SetAlternateRowColour(const wxColour& colour) +bool wxDataViewCtrl::SetAlternateRowColour(const wxColour& colour) { m_alternateRowColour = colour; + return true; } void wxDataViewCtrl::SelectAll() From f33f1f2078ade742e8059d8be82829c8f68fda89 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 15:32:01 +0100 Subject: [PATCH 317/916] Fix a typo in EVT_DATAVIEW_COLUMN_REORDERED documentation See #14297. --- interface/wx/dataview.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 90c9f1b6d6..8e3312c126 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3648,7 +3648,7 @@ public: Process a @c wxEVT_DATAVIEW_COLUMN_SORTED event. @event{EVT_DATAVIEW_COLUMN_REORDERED(id, func)} Process a @c wxEVT_DATAVIEW_COLUMN_REORDERED event. - Currently this even is only generated when using the native OS X + Currently this event is only generated when using the native OS X version. @event{EVT_DATAVIEW_ITEM_BEGIN_DRAG(id, func)} Process a @c wxEVT_DATAVIEW_ITEM_BEGIN_DRAG event. From 48fb2b42b137b0bd0e4611a054fba5d734b788d7 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 15:45:23 +0100 Subject: [PATCH 318/916] Send wxEVT_DATAVIEW_COLUMN_REORDERED in generic wxDataViewCtrl Simply translate wxEVT_HEADER_END_REORDER into this event, which was previously only sent by the macOS version. GtkTreeView doesn't seem to support column drag-and-drop at all, so this event is still never generated by wxGTK. Closes #14297. --- include/wx/dataview.h | 4 ++-- interface/wx/dataview.h | 7 +++++-- samples/dataview/dataview.cpp | 15 +++++++++++++++ src/generic/datavgen.cpp | 7 +++++-- src/osx/cocoa/dataview.mm | 1 + 5 files changed, 28 insertions(+), 6 deletions(-) diff --git a/include/wx/dataview.h b/include/wx/dataview.h index c94c8fe3c1..79b200cc09 100644 --- a/include/wx/dataview.h +++ b/include/wx/dataview.h @@ -903,11 +903,11 @@ public: wxDEPRECATED_MSG("Pass the argument to the ctor instead") void SetDataViewColumn( wxDataViewColumn *col ) { m_column = col; } wxDEPRECATED_MSG("Pass the argument to the ctor instead") - void SetColumn( int col ) { m_col = col; } - wxDEPRECATED_MSG("Pass the argument to the ctor instead") void SetItem( const wxDataViewItem &item ) { m_item = item; } #endif // WXWIN_COMPATIBILITY_3_0 + void SetColumn( int col ) { m_col = col; } + protected: wxDataViewItem m_item; int m_col; diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 8e3312c126..cbb5ba2566 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3648,8 +3648,8 @@ public: Process a @c wxEVT_DATAVIEW_COLUMN_SORTED event. @event{EVT_DATAVIEW_COLUMN_REORDERED(id, func)} Process a @c wxEVT_DATAVIEW_COLUMN_REORDERED event. - Currently this event is only generated when using the native OS X - version. + Currently this event is not generated when using the native GTK+ + version of the control. @event{EVT_DATAVIEW_ITEM_BEGIN_DRAG(id, func)} Process a @c wxEVT_DATAVIEW_ITEM_BEGIN_DRAG event. @event{EVT_DATAVIEW_ITEM_DROP_POSSIBLE(id, func)} @@ -3675,6 +3675,9 @@ public: /** Returns the position of the column in the control or -1 if no column field was set by the event emitter. + + For wxEVT_DATAVIEW_COLUMN_REORDERED, this is the new position of the + column. */ int GetColumn() const; diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index 26773c624d..64e89e7b71 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -133,6 +133,7 @@ private: void OnHeaderClickList( wxDataViewEvent &event ); void OnSorted( wxDataViewEvent &event ); void OnSortedList( wxDataViewEvent &event ); + void OnColumnReordered( wxDataViewEvent &event); void OnContextMenu( wxDataViewEvent &event ); @@ -423,6 +424,7 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK(ID_MUSIC_CTRL, MyFrame::OnHeaderRightClick) EVT_DATAVIEW_COLUMN_SORTED(ID_MUSIC_CTRL, MyFrame::OnSorted) EVT_DATAVIEW_COLUMN_SORTED(ID_ATTR_CTRL, MyFrame::OnSortedList) + EVT_DATAVIEW_COLUMN_REORDERED(wxID_ANY, MyFrame::OnColumnReordered) EVT_DATAVIEW_COLUMN_HEADER_CLICK(ID_ATTR_CTRL, MyFrame::OnHeaderClickList) EVT_DATAVIEW_ITEM_CONTEXT_MENU(ID_MUSIC_CTRL, MyFrame::OnContextMenu) @@ -1290,6 +1292,19 @@ void MyFrame::OnHeaderRightClick( wxDataViewEvent &event ) wxLogMessage( "wxEVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK, Column position: %d", pos ); } +void MyFrame::OnColumnReordered(wxDataViewEvent& event) +{ + wxDataViewColumn* const col = event.GetDataViewColumn(); + if ( !col ) + { + wxLogError("Unknown column reordered?"); + return; + } + + wxLogMessage("wxEVT_DATAVIEW_COLUMN_REORDERED: \"%s\" is now at position %d", + col->GetTitle(), event.GetColumn()); +} + void MyFrame::OnSortedList( wxDataViewEvent &/*event*/) { wxVector const columns = m_ctrl[1]->GetSortingColumns(); diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 298ff6bcb8..54d745f6cf 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -5512,13 +5512,16 @@ unsigned int wxDataViewCtrl::GetBestColumnWidth(int idx) const return max_width; } -void wxDataViewCtrl::ColumnMoved(wxDataViewColumn * WXUNUSED(col), - unsigned int WXUNUSED(new_pos)) +void wxDataViewCtrl::ColumnMoved(wxDataViewColumn *col, unsigned int new_pos) { // do _not_ reorder m_cols elements here, they should always be in the // order in which columns were added, we only display the columns in // different order m_clientArea->UpdateDisplay(); + + wxDataViewEvent event(wxEVT_DATAVIEW_COLUMN_REORDERED, this, col); + event.SetColumn(new_pos); + ProcessWindowEvent(event); } bool wxDataViewCtrl::DeleteColumn( wxDataViewColumn *column ) diff --git a/src/osx/cocoa/dataview.mm b/src/osx/cocoa/dataview.mm index 0b1ee6b419..abaf02276d 100644 --- a/src/osx/cocoa/dataview.mm +++ b/src/osx/cocoa/dataview.mm @@ -1881,6 +1881,7 @@ outlineView:(NSOutlineView*)outlineView wxDataViewCtrl* const dvc = implementation->GetDataViewCtrl(); wxDataViewEvent event(wxEVT_DATAVIEW_COLUMN_REORDERED, dvc, col); + event.SetColumn(newColumnPosition); dvc->GetEventHandler()->ProcessEvent(event); } From a342582eb158ccb00b2f6c021863754c71f16bea Mon Sep 17 00:00:00 2001 From: PB Date: Sun, 4 Feb 2018 15:53:08 +0100 Subject: [PATCH 319/916] Don't build samples that cannot be built with CMake When using CMake to generate project files, do not create projects for samples that rely on a feature that is not available. For example, do not create a project for the AUI sample when wxUSE_AUI=0. Closes https://github.com/wxWidgets/wxWidgets/pull/713 --- build/cmake/samples/CMakeLists.txt | 148 +++++++++++++++-------------- build/cmake/samples/html.cmake | 9 +- 2 files changed, 84 insertions(+), 73 deletions(-) diff --git a/build/cmake/samples/CMakeLists.txt b/build/cmake/samples/CMakeLists.txt index 51eae43b51..40fbf44dd6 100644 --- a/build/cmake/samples/CMakeLists.txt +++ b/build/cmake/samples/CMakeLists.txt @@ -7,37 +7,38 @@ # Licence: wxWindows licence ############################################################################# -wx_add_sample(access accesstest.cpp) -wx_add_sample(animate anitest.cpp anitest.h LIBRARIES adv DATA throbber.gif hourglass.ani) +wx_add_sample(access accesstest.cpp DEPENDS wxUSE_ACCESSBILITY) +wx_add_sample(animate anitest.cpp anitest.h LIBRARIES adv DATA throbber.gif hourglass.ani DEPENDS wxUSE_ANIMATIONCTRL) wx_add_sample(artprov arttest.cpp artbrows.cpp artbrows.h) -wx_add_sample(aui auidemo.cpp LIBRARIES adv aui html NAME auidemo) -wx_add_sample(calendar RES calendar.rc LIBRARIES adv) -wx_add_sample(caret) -wx_add_sample(clipboard) -wx_add_sample(collpane LIBRARIES adv) -wx_add_sample(combo LIBRARIES adv DATA dropbuth.png dropbutn.png dropbutp.png) -wx_add_sample(config conftest.cpp) +wx_add_sample(aui auidemo.cpp LIBRARIES adv aui html NAME auidemo DEPENDS wxUSE_AUI) +wx_add_sample(calendar RES calendar.rc LIBRARIES adv DEPENDS wxUSE_CALENDARCTRL) +wx_add_sample(caret DEPENDS wxUSE_CARET) +wx_add_sample(clipboard DEPENDS wxUSE_CLIPBOARD) +wx_add_sample(collpane LIBRARIES adv DEPENDS wxUSE_COLLPANE) +wx_add_sample(combo LIBRARIES adv DATA dropbuth.png dropbutn.png dropbutp.png DEPENDS wxUSE_COMBOCTRL) +wx_add_sample(config conftest.cpp DEPENDS wxUSE_CONFIG) wx_add_sample(console CONSOLE IMPORTANT) -wx_add_sample(dataview IMPORTANT dataview.cpp mymodels.cpp mymodels.h LIBRARIES adv) +wx_add_sample(dataview IMPORTANT dataview.cpp mymodels.cpp mymodels.h LIBRARIES adv DEPENDS wxUSE_DATAVIEWCTRL) if(wxUSE_ON_FATAL_EXCEPTION AND (NOT WIN32 OR MSVC)) - wx_add_sample(debugrpt LIBRARIES qa) + wx_add_sample(debugrpt LIBRARIES qa DEPENDS wxUSE_DEBUGREPORT) endif() wx_add_sample(dialogs dialogs.cpp dialogs.h LIBRARIES adv DATA tips.txt) -wx_add_sample(dialup nettest.cpp) -wx_add_sample(display) -wx_add_sample(dnd dnd.cpp RES dnd.rc DATA wxwin.png) +wx_add_sample(dialup nettest.cpp DEPENDS wxUSE_DIALUP_MANAGER) +wx_add_sample(display DEPENDS wxUSE_DISPLAY) +wx_add_sample(dnd dnd.cpp RES dnd.rc DATA wxwin.png DEPENDS wxUSE_DRAG_AND_DROP) wx_add_sample(docview docview.cpp doc.cpp view.cpp docview.h doc.h view.h - RES docview.rc) + RES docview.rc DEPENDS wxUSE_DOC_VIEW_ARCHITECTURE) wx_add_sample(dragimag dragimag.cpp dragimag.h RES dragimag.rc - DATA backgrnd.png shape01.png shape02.png shape03.png) + DATA backgrnd.png shape01.png shape02.png shape03.png + DEPENDS wxUSE_DRAGIMAGE) wx_add_sample(drawing DATA pat4.bmp pat35.bmp pat36.bmp image.bmp mask.bmp) wx_add_sample(erase) wx_add_sample(event event.cpp gestures.cpp gestures.h) -wx_add_sample(except) +wx_add_sample(except DEPENDS wxUSE_EXCEPTIONS) wx_add_sample(exec) wx_add_sample(font DATA wxprivate.ttf) -wx_add_sample(fswatcher) -wx_add_sample(grid griddemo.cpp griddemo.h LIBRARIES adv) +wx_add_sample(fswatcher DEPENDS wxUSE_FSWATCHER) +wx_add_sample(grid griddemo.cpp griddemo.h LIBRARIES adv DEPENDS wxUSE_GRID) wx_list_add_prefix(HELP_DOC_FILES doc/ aindex.html down.gif dxxgifs.tex HIER.html icon1.gif icon2.gif index.html @@ -49,34 +50,38 @@ wx_add_sample(help demo.cpp LIBRARIES html adv doc.hhk doc.hhp doc.hlp doc.hpj doc.zip forward.gif up.gif ${HELP_DOC_FILES} NAME helpdemo + DEPENDS wxUSE_HELP ) -wx_add_sample(htlbox LIBRARIES html) -include(html.cmake) +wx_add_sample(htlbox LIBRARIES html DEPENDS wxUSE_HTML) +if(wxUSE_HTML) + include(html.cmake) +endif() wx_add_sample(image image.cpp canvas.cpp canvas.h cursor_png.c RES image.rc DATA horse.png horse.jpg horse.bmp horse.gif horse.pcx horse.pnm horse_ag.pnm horse_rg.pnm horse.tif horse.tga horse.xpm horse.cur - horse.ico horse3.ani smile.xbm toucan.png cmyk.jpg cursor.png) + horse.ico horse3.ani smile.xbm toucan.png cmyk.jpg cursor.png + DEPENDS wxUSE_IMAGE) foreach(lang ar bg cs de fr it ka pl ru sv ja ja_JP.EUC-JP) list(APPEND INTERNAT_DATA_FILES ${lang}/internat.po ${lang}/internat.mo) endforeach() -wx_add_sample(internat DATA ${INTERNAT_DATA_FILES}) +wx_add_sample(internat DATA ${INTERNAT_DATA_FILES} DEPENDS wxUSE_INTL) # IPC samples set(wxSAMPLE_FOLDER ipc) -wx_add_sample(ipc client.cpp client.h connection.h ipcsetup.h NAME ipcclient LIBRARIES net) -wx_add_sample(ipc server.cpp server.h connection.h ipcsetup.h NAME ipcserver LIBRARIES net) -wx_add_sample(ipc CONSOLE baseclient.cpp connection.h ipcsetup.h NAME baseipcclient LIBRARIES net) -wx_add_sample(ipc CONSOLE baseserver.cpp connection.h ipcsetup.h NAME baseipcserver LIBRARIES net) +wx_add_sample(ipc client.cpp client.h connection.h ipcsetup.h NAME ipcclient LIBRARIES net DEPENDS wxUSE_IPC) +wx_add_sample(ipc server.cpp server.h connection.h ipcsetup.h NAME ipcserver LIBRARIES net DEPENDS wxUSE_IPC) +wx_add_sample(ipc CONSOLE baseclient.cpp connection.h ipcsetup.h NAME baseipcclient LIBRARIES net DEPENDS wxUSE_IPC) +wx_add_sample(ipc CONSOLE baseserver.cpp connection.h ipcsetup.h NAME baseipcserver LIBRARIES net DEPENDS wxUSE_IPC) set(wxSAMPLE_FOLDER) -wx_add_sample(joytest joytest.cpp joytest.h DATA buttonpress.wav LIBRARIES adv) +wx_add_sample(joytest joytest.cpp joytest.h DATA buttonpress.wav LIBRARIES adv DEPENDS wxUSE_JOYSTICK) wx_add_sample(keyboard) wx_add_sample(layout layout.cpp layout.h) -wx_add_sample(listctrl listtest.cpp listtest.h RES listtest.rc) -wx_add_sample(mdi mdi.cpp mdi.h RES mdi.rc) +wx_add_sample(listctrl listtest.cpp listtest.h RES listtest.rc DEPENDS wxUSE_LISTCTRL) +wx_add_sample(mdi mdi.cpp mdi.h RES mdi.rc DEPENDS wxUSE_MDI wxUSE_DOC_VIEW_ARCHITECTURE wxUSE_MDI_ARCHITECTURE) wx_add_sample(mediaplayer LIBRARIES media DEPENDS wxUSE_MEDIACTRL) wx_add_sample(memcheck) -wx_add_sample(menu) +wx_add_sample(menu DEPENDS wxUSE_MENUS) wx_add_sample(minimal IMPORTANT) -wx_add_sample(notebook notebook.cpp notebook.h LIBRARIES aui adv) +wx_add_sample(notebook notebook.cpp notebook.h LIBRARIES aui adv DEPENDS wxUSE_NOTEBOOK) if(wxUSE_OPENGL) set(wxSAMPLE_SUBDIR opengl/) set(wxSAMPLE_FOLDER OpenGL) @@ -95,46 +100,48 @@ if(wxUSE_OPENGL) set(wxSAMPLE_FOLDER) endif() wx_add_sample(ownerdrw RES ownerdrw.rc DATA sound.png nosound.png DEPENDS wxUSE_OWNER_DRAWN) -wx_add_sample(popup) +wx_add_sample(popup DEPENDS wxUSE_POPUPWIN) wx_add_sample(power) -wx_add_sample(preferences) -wx_add_sample(printing printing.cpp printing.h) +wx_add_sample(preferences DEPENDS wxUSE_PREFERENCES_EDITOR) +wx_add_sample(printing printing.cpp printing.h DEPENDS wxUSE_PRINTING_ARCHITECTURE) wx_add_sample(propgrid propgrid.cpp propgrid_minimal.cpp sampleprops.cpp - tests.cpp sampleprops.h propgrid.h LIBRARIES adv propgrid NAME propgriddemo) + tests.cpp sampleprops.h propgrid.h LIBRARIES adv propgrid NAME propgriddemo DEPENDS wxUSE_PROPGRID) wx_add_sample(render FOLDER render) wx_add_sample(render DLL renddll.cpp NAME renddll FOLDER render) -wx_add_sample(ribbon ribbondemo.cpp LIBRARIES ribbon adv NAME ribbondemo) -wx_add_sample(richtext LIBRARIES richtext adv html xml NAME richtextdemo) -wx_add_sample(sashtest sashtest.cpp sashtest.h RES sashtest.rc LIBRARIES adv) +wx_add_sample(ribbon ribbondemo.cpp LIBRARIES ribbon adv NAME ribbondemo DEPENDS wxUSE_RIBBON) +wx_add_sample(richtext LIBRARIES richtext adv html xml NAME richtextdemo DEPENDS wxUSE_XML wxUSE_RICHTEXT) +wx_add_sample(sashtest sashtest.cpp sashtest.h RES sashtest.rc LIBRARIES adv DEPENDS wxUSE_SASH) wx_add_sample(scroll) wx_add_sample(secretstore CONSOLE DEPENDS wxUSE_SECRETSTORE) wx_add_sample(shaped DATA star.png) -wx_add_sample(sockets client.cpp NAME client LIBRARIES net FOLDER sockets) -wx_add_sample(sockets server.cpp NAME server LIBRARIES net FOLDER sockets) -wx_add_sample(sockets CONSOLE baseclient.cpp NAME baseclient LIBRARIES net FOLDER sockets) -wx_add_sample(sockets CONSOLE baseserver.cpp NAME baseserver LIBRARIES net FOLDER sockets) -wx_add_sample(sound RES sound.rc DATA 9000g.wav cuckoo.wav doggrowl.wav tinkalink2.wav LIBRARIES adv) -wx_add_sample(splash DATA splash.png press.mpg LIBRARIES adv) +if(wxUSE_SOCKETS) + wx_add_sample(sockets client.cpp NAME client LIBRARIES net FOLDER sockets) + wx_add_sample(sockets server.cpp NAME server LIBRARIES net FOLDER sockets) + wx_add_sample(sockets CONSOLE baseclient.cpp NAME baseclient LIBRARIES net FOLDER sockets) + wx_add_sample(sockets CONSOLE baseserver.cpp NAME baseserver LIBRARIES net FOLDER sockets) +endif() +wx_add_sample(sound RES sound.rc DATA 9000g.wav cuckoo.wav doggrowl.wav tinkalink2.wav LIBRARIES adv DEPENDS wxUSE_SOUND) +wx_add_sample(splash DATA splash.png press.mpg LIBRARIES adv DEPENDS wxUSE_SPLASH) if(TARGET splash AND wxUSE_MEDIACTRL) target_link_libraries(splash media) endif() -wx_add_sample(splitter) -wx_add_sample(statbar) +wx_add_sample(splitter DEPENDS wxUSE_SPLITTER) +wx_add_sample(statbar DEPENDS wxUSE_STATUSBAR) wx_add_sample(stc stctest.cpp edit.cpp prefs.cpp edit.h defsext.h prefs.h - DATA stctest.cpp NAME stctest LIBRARIES stc) -wx_add_sample(svg svgtest.cpp RES svgtest.rc) + DATA stctest.cpp NAME stctest LIBRARIES stc DEPENDS wxUSE_STC) +wx_add_sample(svg svgtest.cpp RES svgtest.rc DEPENDS wxUSE_SVG) wx_add_sample(taborder) wx_add_sample(taskbar tbtest.cpp tbtest.h LIBRARIES adv DEPENDS wxUSE_TASKBARICON) -wx_add_sample(text) -wx_add_sample(thread) -wx_add_sample(toolbar RES toolbar.rc) -wx_add_sample(treectrl treetest.cpp treetest.h) -wx_add_sample(treelist LIBRARIES adv) +wx_add_sample(text DEPENDS wxUSE_TEXTCTRL) +wx_add_sample(thread DEPENDS wxUSE_THREADS) +wx_add_sample(toolbar RES toolbar.rc DEPENDS wxUSE_TOOLBAR) +wx_add_sample(treectrl treetest.cpp treetest.h DEPENDS wxUSE_TREECTRL) +wx_add_sample(treelist LIBRARIES adv DEPENDS wxUSE_TREELISTCTRL) wx_add_sample(typetest typetest.cpp typetest.h) -wx_add_sample(uiaction) -wx_add_sample(validate validate.cpp validate.h) +wx_add_sample(uiaction DEPENDS wxUSE_UIACTIONSIMULATOR) +wx_add_sample(validate validate.cpp validate.h DEPENDS wxUSE_VALIDATORS) wx_add_sample(vscroll vstest.cpp) -wx_add_sample(webview LIBRARIES webview stc adv NAME webviewsample) +wx_add_sample(webview LIBRARIES webview stc adv NAME webviewsample DEPENDS wxUSE_WEBVIEW) # widgets Sample set(SAMPLE_WIDGETS_SRC activityindicator.cpp @@ -182,7 +189,7 @@ if(APPLE) list(APPEND SAMPLE_WIDGETS_SRC native_wrapper.mm) endif() wx_add_sample(widgets IMPORTANT ${SAMPLE_WIDGETS_SRC} LIBRARIES adv) -wx_add_sample(wizard LIBRARIES adv) +wx_add_sample(wizard LIBRARIES adv DEPENDS wxUSE_WIZARDDLG) wx_add_sample(wrapsizer) wx_list_add_prefix(XRC_RC_FILES rc/ @@ -213,31 +220,34 @@ wx_add_sample(xrc DATA ${XRC_RC_FILES} LIBRARIES aui ribbon xrc html adv NAME xrcdemo + DEPENDS wxUSE_XML wxUSE_XRC ) wx_add_sample(xti xti.cpp classlist.cpp codereadercallback.cpp classlist.h codereadercallback.h LIBRARIES xml - DEPENDS wxUSE_EXTENDED_RTTI) + DEPENDS wxUSE_XML wxUSE_EXTENDED_RTTI) if(WIN32) # Windows only samples # DLL Sample - wx_add_sample(dll DLL my_dll.cpp my_dll.h NAME my_dll FOLDER dll - DEFINITIONS MY_DLL_BUILDING) - if(NOT wxBUILD_SHARED) - # this test only makes sense with statically built wx, otherwise - # the same copy of wx would be used - wx_add_sample(dll wx_exe.cpp my_dll.h NAME wx_exe FOLDER dll LIBRARIES my_dll) - endif() + if(wxUSE_DYNLIBCLASS) + wx_add_sample(dll DLL my_dll.cpp my_dll.h NAME my_dll FOLDER dll + DEFINITIONS MY_DLL_BUILDING) + if(NOT wxBUILD_SHARED) + # this test only makes sense with statically built wx, otherwise + # the same copy of wx would be used + wx_add_sample(dll wx_exe.cpp my_dll.h NAME wx_exe FOLDER dll LIBRARIES my_dll) + endif() - wx_add_sample(dll sdk_exe.cpp my_dll.h NAME sdk_exe FOLDER dll LIBRARIES my_dll) + wx_add_sample(dll sdk_exe.cpp my_dll.h NAME sdk_exe FOLDER dll LIBRARIES my_dll) + endif() if(MSVC) wx_add_sample(flash) endif() #TODO: renable when sample is fixed #wx_add_sample(mfc mfctest.cpp mfctest.h resource.h stdafx.h RES mfctest.rc) wx_add_sample(nativdlg nativdlg.cpp nativdlg.h resource.h RES nativdlg.rc) - wx_add_sample(oleauto) - wx_add_sample(regtest RES regtest.rc) + wx_add_sample(oleauto DEPENDS wxUSE_OLE) + wx_add_sample(regtest RES regtest.rc DEPENDS wxUSE_REGKEY) wx_add_sample(taskbarbutton LIBRARIES adv DEPENDS wxUSE_TASKBARBUTTON) endif() diff --git a/build/cmake/samples/html.cmake b/build/cmake/samples/html.cmake index 23dbf91a03..402d0618d2 100644 --- a/build/cmake/samples/html.cmake +++ b/build/cmake/samples/html.cmake @@ -23,11 +23,12 @@ wx_list_add_prefix(HELP_DATA_FILES helpfiles/ page2-b.htm testing.hhp ) -wx_add_sample(help DATA ${HELP_DATA_FILES} LIBRARIES html NAME htmlhelp) -wx_add_sample(helpview DATA test.zip LIBRARIES html) +wx_add_sample(help DATA ${HELP_DATA_FILES} LIBRARIES html NAME htmlhelp DEPENDS wxUSE_HELP) +wx_add_sample(helpview DATA test.zip LIBRARIES html DEPENDS wxUSE_HELP) #TODO: htmlctrl sample uses outdated definitions #wx_add_sample(htmlctrl LIBRARIES html) -wx_add_sample(printing DATA logo6.gif test.htm LIBRARIES html NAME htmlprinting) +wx_add_sample(printing DATA logo6.gif test.htm LIBRARIES html NAME htmlprinting + DEPENDS wxUSE_PRINTING_ARCHITECTURE) wx_add_sample(test DATA imagemap.png pic.png pic2.bmp i18n.gif @@ -36,7 +37,7 @@ wx_add_sample(test LIBRARIES net html NAME htmltest) wx_add_sample(virtual DATA start.htm LIBRARIES html) wx_add_sample(widget DATA start.htm LIBRARIES html) -wx_add_sample(zip DATA pages.zip start.htm LIBRARIES html) +wx_add_sample(zip DATA pages.zip start.htm LIBRARIES html DEPENDS wxUSE_FSZIP) set(wxSAMPLE_SUBDIR) set(wxSAMPLE_FOLDER) From aaf58e2b495f1d4f8b6a207ec36e457e88a4beab Mon Sep 17 00:00:00 2001 From: Maarten Date: Sun, 4 Feb 2018 18:51:22 +0100 Subject: [PATCH 320/916] Set Unicode definitions for third party libraries in CMake build See https://github.com/wxWidgets/wxWidgets/pull/717 See #18077. --- build/cmake/functions.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index a3809a6259..23c68ee76d 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -407,6 +407,14 @@ function(wx_set_builtin_target_properties target_name) OUTPUT_NAME_DEBUG ${target_name}${lib_unicode}d ) endif() + + if(wxUSE_UNICODE) + if(WIN32) + target_compile_definitions(${target_name} PUBLIC UNICODE) + endif() + target_compile_definitions(${target_name} PUBLIC _UNICODE) + endif() + if(MSVC) # we're not interested in deprecation warnings about the use of # standard C functions in the 3rd party libraries (these warnings From 77231f59076486f396d6baff0fad066dadbe4675 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 22:20:22 +0100 Subject: [PATCH 321/916] Make wxDataViewRendererBase::DestroyEditControl() private This method is only supposed to be used by this class and not any derived classes, so prevent it from being used accidentally. No real changes. --- include/wx/dvrenderers.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/wx/dvrenderers.h b/include/wx/dvrenderers.h index b672b88f51..0d2615b659 100644 --- a/include/wx/dvrenderers.h +++ b/include/wx/dvrenderers.h @@ -241,9 +241,6 @@ protected: // (typically selection with dark background). For internal use only. virtual bool IsHighlighted() const = 0; - // Called from {Cancel,Finish}Editing() to cleanup m_editorCtrl - void DestroyEditControl(); - // Helper of PrepareForItem() also used in StartEditing(): returns the // value checking that its type matches our GetVariantType(). wxVariant CheckedGetValue(const wxDataViewModel* model, @@ -261,7 +258,10 @@ protected: // renderer is required wxDataViewCtrl* GetView() const; -protected: +private: + // Called from {Called,Finish}Editing() and dtor to cleanup m_editorCtrl + void DestroyEditControl(); + wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxDataViewRendererBase); }; From 7e3d28e79f1391b965330efb43a0f290b83f3a4a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 22:31:23 +0100 Subject: [PATCH 322/916] Rename wxDataViewEvent::SetEditCanceled() and remove its argument This method should be only used when the edit is really cancelled, so it doesn't need to take a boolean argument. It should also use the same spelling as IsEditCancelled() (and for consistency with the rest of wxWidgets API which uses British English). Also remove this method from the documentation, it is not part of the public API. --- include/wx/dataview.h | 2 +- interface/wx/dataview.h | 1 - src/common/datavcmn.cpp | 3 ++- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/wx/dataview.h b/include/wx/dataview.h index 79b200cc09..58b0fdafe4 100644 --- a/include/wx/dataview.h +++ b/include/wx/dataview.h @@ -859,7 +859,6 @@ public: // for wxEVT_DATAVIEW_ITEM_EDITING_DONE only bool IsEditCancelled() const { return m_editCancelled; } - void SetEditCanceled(bool editCancelled) { m_editCancelled = editCancelled; } // for wxEVT_DATAVIEW_COLUMN_HEADER_CLICKED only wxDataViewColumn *GetDataViewColumn() const { return m_column; } @@ -907,6 +906,7 @@ public: #endif // WXWIN_COMPATIBILITY_3_0 void SetColumn( int col ) { m_col = col; } + void SetEditCancelled() { m_editCancelled = true; } protected: wxDataViewItem m_item; diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index cbb5ba2566..81c493efa4 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3818,7 +3818,6 @@ public: */ wxDataViewItem GetItem() const; void SetItem( const wxDataViewItem &item ); - void SetEditCanceled(bool editCancelled); void SetPosition( int x, int y ); void SetCache(int from, int to); wxDataObject *GetDataObject() const; diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index df7ad9cd1f..a7d7597fff 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -798,7 +798,8 @@ bool wxDataViewRendererBase::FinishEditing() // Now we should send Editing Done event wxDataViewEvent event(wxEVT_DATAVIEW_ITEM_EDITING_DONE, dv_ctrl, column, m_item); event.SetValue( value ); - event.SetEditCanceled( !isValid ); + if ( !isValid ) + event.SetEditCancelled(); dv_ctrl->GetEventHandler()->ProcessEvent( event ); bool accepted = false; From 1e3e5b72530d51d2465c8ba876869cfbb8d74b50 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 22:40:51 +0100 Subject: [PATCH 323/916] Send wxEVT_DATAVIEW_ITEM_EDITING_DONE after cancelling too Previously this event was not sent at all if editing the item was cancelled, e.g. by pressing Esc. Do send it now from the generic implementation and update the sample to show this event. See #17835. --- docs/changes.txt | 1 + include/wx/dvrenderers.h | 3 +++ samples/dataview/dataview.cpp | 6 ++++- src/common/datavcmn.cpp | 51 +++++++++++++++++++++++++---------- 4 files changed, 46 insertions(+), 15 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 6ad30469d8..8520be4207 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -182,6 +182,7 @@ All (GUI): - Generate wxEVT_SEARCH on Enter under all platforms. - Extend wxRendererNative::DrawGauge() to work for vertical gauges too. - Add wxHD_BITMAP_ON_RIGHT style to wxHeaderCtrl. +- Send wxEVT_DATAVIEW_ITEM_EDITING_DONE when editing was cancelled too. wxGTK: diff --git a/include/wx/dvrenderers.h b/include/wx/dvrenderers.h index 0d2615b659..c1230cafcc 100644 --- a/include/wx/dvrenderers.h +++ b/include/wx/dvrenderers.h @@ -259,6 +259,9 @@ protected: wxDataViewCtrl* GetView() const; private: + // Common part of {Cancel,Finish}Editing(). + bool DoFinishOrCancelEditing(bool cancelled); + // Called from {Called,Finish}Editing() and dtor to cleanup m_editorCtrl void DestroyEditControl(); diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index 64e89e7b71..240fc74d40 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -1227,7 +1227,11 @@ void MyFrame::OnEditingStarted( wxDataViewEvent &event ) void MyFrame::OnEditingDone( wxDataViewEvent &event ) { wxString title = m_music_model->GetTitle( event.GetItem() ); - wxLogMessage( "wxEVT_DATAVIEW_ITEM_EDITING_DONE, Item: %s", title ); + wxLogMessage("wxEVT_DATAVIEW_ITEM_EDITING_DONE, Item: %s, new value %s", + title, + event.IsEditCancelled() + ? wxString("unavailable because editing was cancelled") + : event.GetValue().GetString()); } void MyFrame::OnExpanded( wxDataViewEvent &event ) diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index a7d7597fff..dcbc5cd101 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -766,44 +766,67 @@ void wxDataViewRendererBase::DestroyEditControl() void wxDataViewRendererBase::CancelEditing() { - if (!m_editorCtrl) - return; - - DestroyEditControl(); + DoFinishOrCancelEditing(true); } bool wxDataViewRendererBase::FinishEditing() +{ + return DoFinishOrCancelEditing(false); +} + +bool wxDataViewRendererBase::DoFinishOrCancelEditing(bool cancelled) { if (!m_editorCtrl) return true; - // Try to get the value, normally we should succeed but if we fail, don't - // return immediately, we still need to destroy the edit control. + bool gotValue = false; + wxVariant value; - const bool gotValue = GetValueFromEditorCtrl(m_editorCtrl, value); + if ( !cancelled ) + { + if ( GetValueFromEditorCtrl(m_editorCtrl, value) ) + { + // This is the normal case and we will use this value below (if it + // passes validation). + gotValue = true; + } + //else: Not really supposed to happen, but still proceed with + // destroying the edit control if it does. + } wxDataViewColumn* const column = GetOwner(); wxDataViewCtrl* const dv_ctrl = column->GetOwner(); DestroyEditControl(); - dv_ctrl->GetMainWindow()->SetFocus(); + // If we're cancelled, it can be because focus was switched elsewhere, + // don't bring it back here. + if ( !cancelled ) + dv_ctrl->GetMainWindow()->SetFocus(); - if ( !gotValue ) - return false; + if ( gotValue ) + { + if ( !Validate(value) ) + { + // Invalid value can't be used, so if it's the same as if we hadn't + // got it in the first place. + gotValue = false; + } + } - bool isValid = Validate(value); unsigned int col = GetOwner()->GetModelColumn(); // Now we should send Editing Done event wxDataViewEvent event(wxEVT_DATAVIEW_ITEM_EDITING_DONE, dv_ctrl, column, m_item); - event.SetValue( value ); - if ( !isValid ) + if ( gotValue ) + event.SetValue(value); + else event.SetEditCancelled(); + dv_ctrl->GetEventHandler()->ProcessEvent( event ); bool accepted = false; - if ( isValid && event.IsAllowed() ) + if ( gotValue && event.IsAllowed() ) { dv_ctrl->GetModel()->ChangeValue(value, m_item, col); accepted = true; From 0972dece2785442315570278d898d15e5619a19d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 4 Feb 2018 23:43:47 +0100 Subject: [PATCH 324/916] Catch EDITING_{STARTED,DONE} for all pages in dataview sample This is useful to allow checking that the expected events are sent for the custom editor in the second page of the sample too, in addition to the standard ones used in the first page. --- samples/dataview/dataview.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index 240fc74d40..1393a86fee 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -417,8 +417,8 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_DATAVIEW_SELECTION_CHANGED(ID_MUSIC_CTRL, MyFrame::OnSelectionChanged) EVT_DATAVIEW_ITEM_START_EDITING(ID_MUSIC_CTRL, MyFrame::OnStartEditing) - EVT_DATAVIEW_ITEM_EDITING_STARTED(ID_MUSIC_CTRL, MyFrame::OnEditingStarted) - EVT_DATAVIEW_ITEM_EDITING_DONE(ID_MUSIC_CTRL, MyFrame::OnEditingDone) + EVT_DATAVIEW_ITEM_EDITING_STARTED(wxID_ANY, MyFrame::OnEditingStarted) + EVT_DATAVIEW_ITEM_EDITING_DONE(wxID_ANY, MyFrame::OnEditingDone) EVT_DATAVIEW_COLUMN_HEADER_CLICK(ID_MUSIC_CTRL, MyFrame::OnHeaderClick) EVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK(ID_MUSIC_CTRL, MyFrame::OnHeaderRightClick) @@ -1220,15 +1220,17 @@ void MyFrame::OnStartEditing( wxDataViewEvent &event ) void MyFrame::OnEditingStarted( wxDataViewEvent &event ) { - wxString title = m_music_model->GetTitle( event.GetItem() ); - wxLogMessage( "wxEVT_DATAVIEW_ITEM_EDITING_STARTED, Item: %s", title ); + // This event doesn't, currently, carry the value, so get it ourselves. + wxDataViewModel* const model = event.GetModel(); + wxVariant value; + model->GetValue(value, event.GetItem(), event.GetColumn()); + wxLogMessage("wxEVT_DATAVIEW_ITEM_EDITING_STARTED, current value %s", + value.GetString()); } void MyFrame::OnEditingDone( wxDataViewEvent &event ) { - wxString title = m_music_model->GetTitle( event.GetItem() ); - wxLogMessage("wxEVT_DATAVIEW_ITEM_EDITING_DONE, Item: %s, new value %s", - title, + wxLogMessage("wxEVT_DATAVIEW_ITEM_EDITING_DONE, new value %s", event.IsEditCancelled() ? wxString("unavailable because editing was cancelled") : event.GetValue().GetString()); From a00b8dec8b2eac69eeb399846758bac7ff409421 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 00:01:52 +0100 Subject: [PATCH 325/916] Reduce code duplication in wxGTK wxDataViewRenderer classes The code was more complicated than necessary, with the base class providing both virtual GtkOnCellChanged() and GtkOnTextEdited() that were both overridden to achieve the same thing, namely customizing how the value entered by user is converted to wxVariant, in different derived classes. Make GtkOnTextEdited() non-virtual and remove GtkOnCellChanged() completely and add a new simple GtkGetValueFromString() which is called from GtkOnTextEdited() to do the conversion. This removes the existing code duplication and will make it simpler to modify this code in the future, without changing the behaviour. --- include/wx/gtk/dvrenderer.h | 17 +++++++++------ include/wx/gtk/dvrenderers.h | 6 ++---- src/gtk/dataview.cpp | 41 +++++++++++++----------------------- 3 files changed, 27 insertions(+), 37 deletions(-) diff --git a/include/wx/gtk/dvrenderer.h b/include/wx/gtk/dvrenderer.h index da5d540e2b..0704b89ff6 100644 --- a/include/wx/gtk/dvrenderer.h +++ b/include/wx/gtk/dvrenderer.h @@ -47,9 +47,10 @@ public: // called when the cell value was edited by user with the new value // - // it validates the new value and notifies the model about the change by - // calling GtkOnCellChanged() if it was accepted - virtual void GtkOnTextEdited(const char *itempath, const wxString& value); + // it uses GtkGetValueFromString() to parse the new value, then validates + // it by calling Validate() and notifies the model about the change if it + // passes validation + void GtkOnTextEdited(const char *itempath, const wxString& value); GtkCellRenderer* GetGtkHandle() { return m_renderer; } void GtkInitHandlers(); @@ -78,14 +79,16 @@ protected: virtual bool IsHighlighted() const wxOVERRIDE; - virtual void GtkOnCellChanged(const wxVariant& value, - const wxDataViewItem& item, - unsigned col); - // Apply our effective alignment (i.e. m_alignment if specified or the // associated column alignment by default) to the given renderer. void GtkApplyAlignment(GtkCellRenderer *renderer); + // This method is used to interpret the string entered by user and by + // default just uses it as is, but can be overridden for classes requiring + // special treatment. + virtual wxVariant GtkGetValueFromString(const wxString& str) const; + + GtkCellRenderer *m_renderer; int m_alignment; diff --git a/include/wx/gtk/dvrenderers.h b/include/wx/gtk/dvrenderers.h index 9169d09761..67d81df79e 100644 --- a/include/wx/gtk/dvrenderers.h +++ b/include/wx/gtk/dvrenderers.h @@ -228,9 +228,7 @@ public: virtual void GtkPackIntoColumn(GtkTreeViewColumn *column) wxOVERRIDE; protected: - virtual void GtkOnCellChanged(const wxVariant& value, - const wxDataViewItem& item, - unsigned col) wxOVERRIDE; + virtual wxVariant GtkGetValueFromString(const wxString& str) const wxOVERRIDE; private: wxDataViewIconText m_value; @@ -281,7 +279,7 @@ public: virtual bool GetValue( wxVariant &value ) const wxOVERRIDE; private: - virtual void GtkOnTextEdited(const char *itempath, const wxString& str) wxOVERRIDE; + virtual wxVariant GtkGetValueFromString(const wxString& str) const; }; diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index b677de2b69..d1f55061f6 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -2155,26 +2155,24 @@ bool wxDataViewRenderer::IsHighlighted() const GetOwner()->GetOwner()->IsSelected(m_itemBeingRendered); } +wxVariant +wxDataViewRenderer::GtkGetValueFromString(const wxString& str) const +{ + return str; +} + void wxDataViewRenderer::GtkOnTextEdited(const char *itempath, const wxString& str) { - wxVariant value(str); + wxVariant value(GtkGetValueFromString(str)); if (!Validate( value )) return; wxDataViewItem item(GetOwner()->GetOwner()->GTKPathToItem(wxGtkTreePath(itempath))); - GtkOnCellChanged(value, item, GetOwner()->GetModelColumn()); -} - -void -wxDataViewRenderer::GtkOnCellChanged(const wxVariant& value, - const wxDataViewItem& item, - unsigned col) -{ wxDataViewModel *model = GetOwner()->GetOwner()->GetModel(); - model->ChangeValue( value, item, col ); + model->ChangeValue( value, item, GetOwner()->GetModelColumn() ); } void wxDataViewRenderer::SetAttr(const wxDataViewItemAttr& WXUNUSED(attr)) @@ -2941,17 +2939,10 @@ wxDataViewChoiceByIndexRenderer::wxDataViewChoiceByIndexRenderer( const wxArrayS m_variantType = wxS("long"); } -void wxDataViewChoiceByIndexRenderer::GtkOnTextEdited(const char *itempath, const wxString& str) +wxVariant +wxDataViewChoiceByIndexRenderer::GtkGetValueFromString(const wxString& str) const { - wxVariant value( (long) GetChoices().Index( str ) ); - - if (!Validate( value )) - return; - - wxDataViewItem - item(GetOwner()->GetOwner()->GTKPathToItem(wxGtkTreePath(itempath))); - - GtkOnCellChanged(value, item, GetOwner()->GetModelColumn()); + return static_cast(GetChoices().Index(str)); } bool wxDataViewChoiceByIndexRenderer::SetValue( const wxVariant &value ) @@ -3024,17 +3015,15 @@ bool wxDataViewIconTextRenderer::GetValue(wxVariant& value) const return true; } -void -wxDataViewIconTextRenderer::GtkOnCellChanged(const wxVariant& value, - const wxDataViewItem& item, - unsigned col) +wxVariant +wxDataViewIconTextRenderer::GtkGetValueFromString(const wxString& str) const { // we receive just the text part of our value as it's the only one which // can be edited, but we need the full wxDataViewIconText value for the // model wxVariant valueIconText; - valueIconText << wxDataViewIconText(value.GetString(), m_value.GetIcon()); - wxDataViewTextRenderer::GtkOnCellChanged(valueIconText, item, col); + valueIconText << wxDataViewIconText(str, m_value.GetIcon()); + return valueIconText; } // --------------------------------------------------------- From 33cbefd7398ac5729c787c1a9fd21b0565a6241a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 01:05:16 +0100 Subject: [PATCH 326/916] Send wxEVT_DATAVIEW_ITEM_EDITING_DONE for all renderers in wxGTK Previously this event was not sent for the standard renderers, such as wxDataViewTextRenderer, at all in wxGTK because the base class FinishEditing() class didn't do anything if m_editorCtrl was null, as it was always the case for non-custom renderers. Fix this by refactoring the base class code in yet another way and extracting the part which can be reused by both the generic and GTK implementation in a new DoHandleEditingDone() function and call it from wxGTK code. Finally, check "editing-canceled" property to also correctly generate the event with IsEditCancelled() returning true when editing is canceled by e.g. pressing Esc in a standard renderer too. And, as a final bonus, this makes the (just introduced) slightly artificial DoFinishOrCancelEditing() unnecessary, so it can be removed, without reintroducing any code duplication. See #17835. --- include/wx/dvrenderers.h | 9 ++++-- src/common/datavcmn.cpp | 69 +++++++++++++++++++--------------------- src/gtk/dataview.cpp | 28 ++++++++++------ 3 files changed, 58 insertions(+), 48 deletions(-) diff --git a/include/wx/dvrenderers.h b/include/wx/dvrenderers.h index c1230cafcc..4cda6ba033 100644 --- a/include/wx/dvrenderers.h +++ b/include/wx/dvrenderers.h @@ -247,6 +247,12 @@ protected: const wxDataViewItem& item, unsigned column) const; + // Validates the given value (if it is non-null) and sends (in any case) + // ITEM_EDITING_DONE event and, finally, updates the model with the value + // (f it is valid, of course) if the event wasn't vetoed. + bool DoHandleEditingDone(wxVariant* value); + + wxString m_variantType; wxDataViewColumn *m_owner; wxWeakRef m_editorCtrl; @@ -259,9 +265,6 @@ protected: wxDataViewCtrl* GetView() const; private: - // Common part of {Cancel,Finish}Editing(). - bool DoFinishOrCancelEditing(bool cancelled); - // Called from {Called,Finish}Editing() and dtor to cleanup m_editorCtrl void DestroyEditControl(); diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index dcbc5cd101..9043cf3fd4 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -766,15 +766,13 @@ void wxDataViewRendererBase::DestroyEditControl() void wxDataViewRendererBase::CancelEditing() { - DoFinishOrCancelEditing(true); + if ( m_editorCtrl ) + DestroyEditControl(); + + DoHandleEditingDone(NULL); } bool wxDataViewRendererBase::FinishEditing() -{ - return DoFinishOrCancelEditing(false); -} - -bool wxDataViewRendererBase::DoFinishOrCancelEditing(bool cancelled) { if (!m_editorCtrl) return true; @@ -782,53 +780,52 @@ bool wxDataViewRendererBase::DoFinishOrCancelEditing(bool cancelled) bool gotValue = false; wxVariant value; - if ( !cancelled ) + if ( GetValueFromEditorCtrl(m_editorCtrl, value) ) { - if ( GetValueFromEditorCtrl(m_editorCtrl, value) ) + // This is the normal case and we will use this value below (if it + // passes validation). + gotValue = true; + } + //else: Not really supposed to happen, but still proceed with + // destroying the edit control if it does. + + DestroyEditControl(); + + GetView()->GetMainWindow()->SetFocus(); + + return DoHandleEditingDone(gotValue ? &value : NULL); +} + +bool +wxDataViewRendererBase::DoHandleEditingDone(wxVariant* value) +{ + if ( value ) + { + if ( !Validate(*value) ) { - // This is the normal case and we will use this value below (if it - // passes validation). - gotValue = true; + // Invalid value can't be used, so if it's the same as if we hadn't + // got it in the first place. + value = NULL; } - //else: Not really supposed to happen, but still proceed with - // destroying the edit control if it does. } wxDataViewColumn* const column = GetOwner(); wxDataViewCtrl* const dv_ctrl = column->GetOwner(); - - DestroyEditControl(); - - // If we're cancelled, it can be because focus was switched elsewhere, - // don't bring it back here. - if ( !cancelled ) - dv_ctrl->GetMainWindow()->SetFocus(); - - if ( gotValue ) - { - if ( !Validate(value) ) - { - // Invalid value can't be used, so if it's the same as if we hadn't - // got it in the first place. - gotValue = false; - } - } - - unsigned int col = GetOwner()->GetModelColumn(); + unsigned int col = column->GetModelColumn(); // Now we should send Editing Done event wxDataViewEvent event(wxEVT_DATAVIEW_ITEM_EDITING_DONE, dv_ctrl, column, m_item); - if ( gotValue ) - event.SetValue(value); + if ( value ) + event.SetValue(*value); else event.SetEditCancelled(); dv_ctrl->GetEventHandler()->ProcessEvent( event ); bool accepted = false; - if ( gotValue && event.IsAllowed() ) + if ( value && event.IsAllowed() ) { - dv_ctrl->GetModel()->ChangeValue(value, m_item, col); + dv_ctrl->GetModel()->ChangeValue(*value, m_item, col); accepted = true; } diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index d1f55061f6..6ed97b47b7 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1932,9 +1932,24 @@ bool wxGtkDataViewModelNotifier::Cleared() // --------------------------------------------------------- static void -wxgtk_cell_editable_editing_done( GtkCellEditable *WXUNUSED(editable), +wxgtk_cell_editable_editing_done( GtkCellEditable *editable, wxDataViewRenderer *wxrenderer ) { + // "editing-cancelled" property is documented as being new since 2.20 in + // GtkCellEditable, but seems to have existed basically forever (since GTK+ + // 1.3 days) in GtkCellRendererText, so try to use it in any case. + if ( g_object_class_find_property(G_OBJECT_GET_CLASS(editable), + "editing-canceled") ) + { + gboolean wasCancelled; + g_object_get(editable, "editing-canceled", &wasCancelled, NULL); + if ( wasCancelled ) + { + wxrenderer->CancelEditing(); + return; + } + } + wxrenderer->FinishEditing(); } @@ -2164,15 +2179,10 @@ wxDataViewRenderer::GtkGetValueFromString(const wxString& str) const void wxDataViewRenderer::GtkOnTextEdited(const char *itempath, const wxString& str) { + m_item = wxDataViewItem(GetView()->GTKPathToItem(wxGtkTreePath(itempath))); + wxVariant value(GtkGetValueFromString(str)); - if (!Validate( value )) - return; - - wxDataViewItem - item(GetOwner()->GetOwner()->GTKPathToItem(wxGtkTreePath(itempath))); - - wxDataViewModel *model = GetOwner()->GetOwner()->GetModel(); - model->ChangeValue( value, item, GetOwner()->GetModelColumn() ); + DoHandleEditingDone(&value); } void wxDataViewRenderer::SetAttr(const wxDataViewItemAttr& WXUNUSED(attr)) From 1f2173b9be49016f023a6de982c08542b10db7f3 Mon Sep 17 00:00:00 2001 From: Scott Talbert Date: Sun, 4 Feb 2018 16:32:03 -0500 Subject: [PATCH 327/916] Fix custom scheme handling in wxWebView WebKit2 implementation The custom scheme handling implementation had been inherited from the original WebKit1 implementation. It attempted to intercept navigation and resource load requests and then inject the resources. It seems that this method doesn't work in WebKit2, but fortunately, there is native support in WebKit2 for custom URI schemes through the webkit_web_context_register_uri_scheme() API. Also extend wxGtkError to allow creating it from an existing GError object as a side-effect of these changes. See https://github.com/wxWidgets/wxWidgets/pull/716 --- docs/changes.txt | 1 + include/wx/gtk/private/error.h | 6 ++ src/gtk/webview_webkit2.cpp | 137 +++++++++++++-------------------- 3 files changed, 60 insertions(+), 84 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 6ad30469d8..9eb241556d 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -209,6 +209,7 @@ wxGTK: - Implement ShowPosition() for single-line wxTextCtrl. - Improve wx{Client,Paint,Screen,Window}DC::GetPPI() (GTK+ 3). - Suppress focus loss events for wxChoice and wxComboBox on opening popup. +- Make custom URI schemes work WebKit2-based wxWebView (Scott Talbert). wxMSW: diff --git a/include/wx/gtk/private/error.h b/include/wx/gtk/private/error.h index e3b49475b7..25802dd6f3 100644 --- a/include/wx/gtk/private/error.h +++ b/include/wx/gtk/private/error.h @@ -21,6 +21,7 @@ class wxGtkError { public: wxGtkError() { m_error = NULL; } + explicit wxGtkError(GError* error) { m_error = error; } ~wxGtkError() { if ( m_error ) g_error_free(m_error); } GError** Out() @@ -37,6 +38,11 @@ public: return m_error != NULL; } + operator GError*() const + { + return m_error; + } + wxString GetMessage() const { return wxString::FromUTF8(m_error->message); diff --git a/src/gtk/webview_webkit2.cpp b/src/gtk/webview_webkit2.cpp index c65c41c3ad..cc495dea75 100644 --- a/src/gtk/webview_webkit2.cpp +++ b/src/gtk/webview_webkit2.cpp @@ -67,7 +67,7 @@ wxgtk_webview_webkit_load_changed(GtkWidget *, } static gboolean -wxgtk_webview_webkit_navigation(WebKitWebView *web_view, +wxgtk_webview_webkit_navigation(WebKitWebView *, WebKitPolicyDecision *decision, wxWebViewWebKit *webKitCtrl) { @@ -93,16 +93,6 @@ wxgtk_webview_webkit_navigation(WebKitWebView *web_view, return TRUE; } - if(webKitCtrl->m_guard) - { - webKitCtrl->m_guard = false; - //We set this to make sure that we don't try to load the page again from - //the resource request callback - webKitCtrl->m_vfsurl = webkit_web_view_get_uri(web_view); - webkit_policy_decision_use(decision); - return FALSE; - } - webKitCtrl->m_busy = true; wxWebViewEvent event(wxEVT_WEBVIEW_NAVIGATING, @@ -120,32 +110,6 @@ wxgtk_webview_webkit_navigation(WebKitWebView *web_view, } else { - wxString wxuri = uri; - wxSharedPtr handler; - wxVector > handlers = webKitCtrl->GetHandlers(); - //We are not vetoed so see if we match one of the additional handlers - for(wxVector >::iterator it = handlers.begin(); - it != handlers.end(); ++it) - { - if(wxuri.substr(0, (*it)->GetName().length()) == (*it)->GetName()) - { - handler = (*it); - } - } - //If we found a handler we can then use it to load the file directly - //ourselves - if(handler) - { - webKitCtrl->m_guard = true; - wxFSFile* file = handler->GetFile(wxuri); - if(file) - { - webKitCtrl->SetPage(*file->GetStream(), wxuri); - } - //We need to throw some sort of error here if file is NULL - webkit_policy_decision_ignore(decision); - return TRUE; - } return FALSE; } } @@ -325,49 +289,53 @@ wxgtk_webview_webkit_title_changed(GtkWidget* widget, } static void -wxgtk_webview_webkit_resource_req(WebKitWebView *, - WebKitWebResource *, - WebKitURIRequest *request, - wxWebViewWebKit *webKitCtrl) +wxgtk_webview_webkit_uri_scheme_request_cb(WebKitURISchemeRequest *request, + wxWebViewWebKit *webKitCtrl) { - wxString uri = webkit_uri_request_get_uri(request); + const wxString scheme = wxString::FromUTF8(webkit_uri_scheme_request_get_scheme(request)); wxSharedPtr handler; wxVector > handlers = webKitCtrl->GetHandlers(); - //We are not vetoed so see if we match one of the additional handlers for(wxVector >::iterator it = handlers.begin(); it != handlers.end(); ++it) { - if(uri.substr(0, (*it)->GetName().length()) == (*it)->GetName()) + if(scheme == (*it)->GetName()) { handler = (*it); } } - //If we found a handler we can then use it to load the file directly - //ourselves + if(handler) { - //If it is requsting the page itself then return as we have already - //loaded it from the archive - if(webKitCtrl->m_vfsurl == uri) - return; + const wxString uri = wxString::FromUTF8(webkit_uri_scheme_request_get_uri(request)); wxFSFile* file = handler->GetFile(uri); if(file) { - //We load the data into a data url to save it being written out again - size_t size = file->GetStream()->GetLength(); - char *buffer = new char[size]; - file->GetStream()->Read(buffer, size); - wxString data = wxBase64Encode(buffer, size); - delete[] buffer; + gint64 length = file->GetStream()->GetLength(); + guint8 *data = g_new(guint8, length); + file->GetStream()->Read(data, length); + GInputStream *stream = g_memory_input_stream_new_from_data(data, + length, + g_free); wxString mime = file->GetMimeType(); - wxString path = "data:" + mime + ";base64," + data; - //Then we can redirect the call - webkit_uri_request_set_uri(request, path.utf8_str()); + webkit_uri_scheme_request_finish(request, stream, length, mime.utf8_str()); } - + else + { + wxGtkError error(g_error_new(WEBKIT_NETWORK_ERROR, + WEBKIT_NETWORK_ERROR_FILE_DOES_NOT_EXIST, + "File not found: %s", uri.utf8_str().data())); + webkit_uri_scheme_request_finish_error(request, error); + } + } + else + { + wxGtkError error(g_error_new(WEBKIT_NETWORK_ERROR, + WEBKIT_NETWORK_ERROR_UNKNOWN_PROTOCOL, + "Unknown scheme: %s", scheme.utf8_str().data())); + webkit_uri_scheme_request_finish_error(request, error); } } @@ -569,38 +537,35 @@ bool wxWebViewWebKit::Create(wxWindow *parent, } SetupWebExtensionServer(); - g_signal_connect_after(webkit_web_context_get_default(), - "initialize-web-extensions", - G_CALLBACK(wxgtk_initialize_web_extensions), - m_dbusServer); + g_signal_connect(webkit_web_context_get_default(), + "initialize-web-extensions", + G_CALLBACK(wxgtk_initialize_web_extensions), + m_dbusServer); m_web_view = WEBKIT_WEB_VIEW(webkit_web_view_new()); GTKCreateScrolledWindowWith(GTK_WIDGET(m_web_view)); g_object_ref(m_widget); - g_signal_connect_after(m_web_view, "decide-policy", - G_CALLBACK(wxgtk_webview_webkit_decide_policy), - this); + g_signal_connect(m_web_view, "decide-policy", + G_CALLBACK(wxgtk_webview_webkit_decide_policy), + this); - g_signal_connect_after(m_web_view, "load-failed", - G_CALLBACK(wxgtk_webview_webkit_load_failed), this); + g_signal_connect(m_web_view, "load-failed", + G_CALLBACK(wxgtk_webview_webkit_load_failed), this); - g_signal_connect_after(m_web_view, "notify::title", - G_CALLBACK(wxgtk_webview_webkit_title_changed), this); + g_signal_connect(m_web_view, "notify::title", + G_CALLBACK(wxgtk_webview_webkit_title_changed), this); - g_signal_connect_after(m_web_view, "resource-load-started", - G_CALLBACK(wxgtk_webview_webkit_resource_req), this); + g_signal_connect(m_web_view, "context-menu", + G_CALLBACK(wxgtk_webview_webkit_context_menu), this); - g_signal_connect_after(m_web_view, "context-menu", - G_CALLBACK(wxgtk_webview_webkit_context_menu), this); - - g_signal_connect_after(m_web_view, "create", - G_CALLBACK(wxgtk_webview_webkit_create_webview), this); + g_signal_connect(m_web_view, "create", + G_CALLBACK(wxgtk_webview_webkit_create_webview), this); WebKitFindController* findctrl = webkit_web_view_get_find_controller(m_web_view); - g_signal_connect_after(findctrl, "counted-matches", - G_CALLBACK(wxgtk_webview_webkit_counted_matches), - &m_findCount); + g_signal_connect(findctrl, "counted-matches", + G_CALLBACK(wxgtk_webview_webkit_counted_matches), + &m_findCount); m_parent->DoAddChild( this ); @@ -610,9 +575,9 @@ bool wxWebViewWebKit::Create(wxWindow *parent, webkit_web_view_load_uri(m_web_view, url.utf8_str()); // last to avoid getting signal too early - g_signal_connect_after(m_web_view, "load-changed", - G_CALLBACK(wxgtk_webview_webkit_load_changed), - this); + g_signal_connect(m_web_view, "load-changed", + G_CALLBACK(wxgtk_webview_webkit_load_changed), + this); return true; } @@ -1279,6 +1244,10 @@ bool wxWebViewWebKit::RunScript(const wxString& javascript, wxString* output) void wxWebViewWebKit::RegisterHandler(wxSharedPtr handler) { m_handlerList.push_back(handler); + WebKitWebContext* context = webkit_web_context_get_default(); + webkit_web_context_register_uri_scheme(context, handler->GetName().utf8_str(), + (WebKitURISchemeRequestCallback)wxgtk_webview_webkit_uri_scheme_request_cb, + this, NULL); } void wxWebViewWebKit::EnableContextMenu(bool enable) From 1c14c2ce9e36412666c6bf8c5d39036c808a20dc Mon Sep 17 00:00:00 2001 From: Arrigo Marchiori Date: Mon, 5 Feb 2018 14:29:17 +0100 Subject: [PATCH 328/916] Fix disabled owner-drawn buttons look with classic MSW theme Don't grey out the buttons text when they're implicitly disabled because the parent TLW is disabled by MSW while showing a modal dialog, this looked bad. Only grey the buttons text when they're really disabled at wx level. Closes #18011. --- src/msw/anybutton.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/msw/anybutton.cpp b/src/msw/anybutton.cpp index d896566b6f..2202432834 100644 --- a/src/msw/anybutton.cpp +++ b/src/msw/anybutton.cpp @@ -842,7 +842,13 @@ void DrawButtonText(HDC hdc, // To get a native look for owner-drawn button in disabled state (without // theming) we must use DrawState() to draw the text label. - if ( !wxUxThemeIsActive() && !btn->IsEnabled() ) + // + // Notice that we use the enabled state at MSW, not wx, level because we + // don't want to grey it out when it's disabled just because its parent is + // disabled by MSW as it happens when showing a modal dialog, but we do + // want to grey it out if either it or its parent are explicitly disabled + // at wx level, see #18011. + if ( !wxUxThemeIsActive() && !::IsWindowEnabled(GetHwndOf(btn)) ) { // However using DrawState() has some drawbacks: // 1. It generally doesn't support alignment flags (except right From 08ea09c7fee69984c75e51ea8ee90ef075f06e90 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 15:10:35 +0100 Subject: [PATCH 329/916] Update various READMEs for 3.1.1 release Update the list of changes and the dates. --- docs/changes.txt | 2 +- docs/doxygen/mainpages/manual.h | 2 +- docs/publicity/announce.txt | 24 +++++++++++------- docs/readme.txt | 43 +++++++++++++++++++-------------- 4 files changed, 42 insertions(+), 29 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index d7b1fbbaa5..373590c364 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -64,7 +64,7 @@ Changes in behaviour which may result in build errors wxGraphicsContext::CreatePen() continues to compile and work as before. -3.1.1: (not released yet) +3.1.1: (released 2018-02-19) ---------------------------- INCOMPATIBLE CHANGES SINCE 3.1.0: diff --git a/docs/doxygen/mainpages/manual.h b/docs/doxygen/mainpages/manual.h index 2d53e72746..7f996c3d87 100644 --- a/docs/doxygen/mainpages/manual.h +++ b/docs/doxygen/mainpages/manual.h @@ -14,7 +14,7 @@ @author Julian Smart, Vadim Zeitlin, Robin Dunn, Stefan Csomor, Bryan Petty, Francesco Montorsi, Robert Roebling et al -@date February 29, 2016 +@date February 19, 2018 @n diff --git a/docs/publicity/announce.txt b/docs/publicity/announce.txt index 49741107e2..5434c56687 100644 --- a/docs/publicity/announce.txt +++ b/docs/publicity/announce.txt @@ -1,4 +1,4 @@ -February 29, 2016 -- The wxWidgets team is pleased to announce a new +February 19, 2018 -- The wxWidgets team is pleased to announce a new release of our open source framework for the development of native cross-platform applications in C++. @@ -13,22 +13,28 @@ improvements and even more bug fixes, please see the change log https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1/docs/changes.txt for the incomplete list of the most important ones. Here is the -maximally condensed summary: +maximally condensed summary of the changes compared to 3.0: +- New features: support for mouse gesture events (GSoC 2017 project); + fractional pen widths in wxGraphicsContext; arbitrary label windows in + wxStaticBox; markup in wxDataViewCtrl items text; better support for high DPI + monitors; support for ZIP 64 files; much improved accessibility support under + MSW. - New classes: wxActivityIndicator, wxAddRemoveCtrl, - wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker. + wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker, + wxSecretStore. - And methods: wxDateTime::GetWeekBasedYear(), wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), several ones in wxRendererNative, wxStandardPaths::GetUserDir(), wxUIActionSimulator - ::Select() and many others. Also new wxEVT_MAGNIFY event. + ::Select() and many others. - Significant improvements to: wxBusyInfo, wxNotificationMessage. -- All around better support for high DPI monitors. -- Much newer versions of bundled 3rd party libraries (notably libpng) - and support for GStreamer 1.0 under Unix. +- Latest versions of all bundled 3rd party libraries, including all the + security fixed and support for WebKit 2 and GStreamer 1.7 under Unix. - Revamped OpenGL support better suited to modern OpenGL (3.2+). - Further C++11 support improvements. -- Support for latest compilers: MSVS 2015, g++ 5.3, clang 3.8. -- A lot of bug fixes in wxGTK3 and wxOSX/Cocoa ports. +- New CMake-based alternative build system. +- Support for latest compilers: MSVS 2017, g++ 7, clang 6. +- A lot of bug fixes, especially in wxGTK3 and wxOSX/Cocoa ports. - New experimental wxQt port. diff --git a/docs/readme.txt b/docs/readme.txt index 14f086ab4e..a37fadc811 100644 --- a/docs/readme.txt +++ b/docs/readme.txt @@ -27,12 +27,13 @@ download from: Changes since 3.1.0 ------------------- -There have been more than 2000 commits from more than 130 contributors (70 with +There have been more than 2800 commits from more than 160 contributors (79 with multiple contributions) since 3.1.0 release. New features added since then include: -- wxWebView can now return JavaScript results to the C++ code. -- wxSecretStore allows to securely store user passwords. +- Support for gesture events has been added (GSoC 2017 project). +- wxWebView can now return JavaScript results to the C++ code (GSoC 2017). +- New wxSecretStore class for securely storing user passwords. Some of the other improvements: @@ -41,14 +42,18 @@ Some of the other improvements: - Converting between wxString and UTF-8 encoded std::string is now simpler and unsafe wxString can now be disabled on the opt-in basis (see http://wxwidgets.blogspot.com/2017/02/safer-s.html) +- It is possible to use any window (e.g. wxCheckBox) as wxStaticBox label now. - Many improvements to accessibility support under MSW. +- wxGraphicsContext now supports pens with fractional widths. - Support for XDG file layout under Unix. -- Many bug fixes to the appearances in both wxGTK3 and wxOSX, notably - related to borders (notable wxBORDER_NONE) and colours. +- Many bug fixes to the behaviour (including TAB navigation) and appearances, + especially in wxGTK3 and wxOSX ports. - wxDataViewCtrl items and headers can be formatted using simple markup - and it is simpler to combine to put items with checkboxes into it. + and it is simpler to combine to put items with checkboxes into it. Many bugs + and inconsistencies between platforms in this control have been fixed too. - Several enhancements to wxStyledTextCtrl including better support for custom lexers and auto-completion. +- Many improvements to the (still experimental) wxQt port. Additionally, the latest versions of compilers (e.g. MSVS 2017) and operating systems (macOS 10.12) are now supported and all the third @@ -66,24 +71,26 @@ Compared to the stable 3.0.x series, this version brings too many improvements and even more bug fixes to list them them all. Here is the maximally condensed summary: +- New features: support for mouse gesture events (GSoC 2017 project); + fractional pen widths in wxGraphicsContext; arbitrary label windows in + wxStaticBox; markup in wxDataViewCtrl items text; better support for high DPI + monitors; support for ZIP 64 files; much improved accessibility support under + MSW. - New classes: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker, wxSecretStore. -- And methods: wxDateTime::GetWeekBasedYear() and GetFirstWeekDay(), - GetTopItem() and GetCountPerPage() in wxListBox and wxDataViewCtrl, +- And methods: wxDateTime::GetWeekBasedYear(), wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), several ones in - wxRendererNative, wxStandardPaths::GetUserDir() and SetFileLayout(), - wxUIActionSimulator::Select(), wxFontPickerCtrl::SetMinPointSize() and - many others. -- New events: wxEVT_MAGNIFY, wxEVT_STC_AUTOCOMP_COMPLETED. + wxRendererNative, wxStandardPaths::GetUserDir(), wxUIActionSimulator + ::Select() and many others. - Significant improvements to: wxBusyInfo, wxNotificationMessage. -- All around better support for high DPI monitors. -- Much newer versions of bundled 3rd party libraries (notably libpng) - and support for GStreamer up to 1.7 under Unix. +- Latest versions of all bundled 3rd party libraries, including all the + security fixed and support for WebKit 2 and GStreamer 1.7 under Unix. - Revamped OpenGL support better suited to modern OpenGL (3.2+). - Further C++11 support improvements. -- Support for latest compilers: MSVS 2017, g++ 7.2, clang 5.0. -- A lot of bug fixes in wxGTK3 and wxOSX/Cocoa ports. +- New CMake-based alternative build system. +- Support for latest compilers: MSVS 2017, g++ 7, clang 6. +- A lot of bug fixes, especially in wxGTK3 and wxOSX/Cocoa ports. - New experimental wxQt port. @@ -203,4 +210,4 @@ If you are looking for support, you can get it from Have fun! -The wxWidgets Team, February 2016 +The wxWidgets Team, February 2018 From 35d2823601a62b35b40ce0a80397b4f02fc99332 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 15:42:04 +0100 Subject: [PATCH 330/916] Tweak post-release script and documentation For the release candidates, allow passing the version (e.g. "3.1.1-rc") to post-release.sh on the command line and document this. Also don't commit automatically, this is annoying, especially as the script doesn't check for errors. Finally, fix the problem with the CHM file name: it must be zipped, presumably to avoid problems with some firewalls blocking downloading CHM files (as there is really no advantage in compressing the already compressed CHM file otherwise). --- build/tools/post-release.sh | 11 +++++++---- docs/contributing/how-to-release.md | 17 ++++++++++------- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/build/tools/post-release.sh b/build/tools/post-release.sh index 6e7a3e6bc9..dc1ba31a8d 100755 --- a/build/tools/post-release.sh +++ b/build/tools/post-release.sh @@ -8,8 +8,12 @@ topdir=`dirname $0`/../.. # Build the file list for sha1sums, from `docs/release.md` declare -a files=(`sed -n '/^## Download Verification/,/^## Binaries/p' $topdir/docs/release.md | sed -n -E 's/^\s*0{40}\s{2}(wx.*)/\1/p'`) -# Get the release version -ver_string=`grep '#define wxVERSION_STRING ' $topdir/include/wx/version.h | sed 's/^.*"wxWidgets \(.*\)")/\1/'` +# Get the release version unless it's given explicitly on the command line. +if [ -z $1 ]; then + ver_string=`grep '#define wxVERSION_STRING ' $topdir/include/wx/version.h | sed 's/^.*"wxWidgets \(.*\)")/\1/'` +else + ver_string=$1 +fi for i in "${files[@]}" do @@ -20,5 +24,4 @@ do sed -i -E "/^\s*[0]{40}\s{2}wx/ s/(^\s*)[0]{40}(\s{2}$i)/\1$sha1sum\2/" $topdir/docs/release.md done -# Commit sha1sum related changes -git commit -m "Update released files sha1sums after $ver_string release" $topdir/docs/release.md +echo "File $topdir/docs/release.md updated after $ver_string release, don't forget to commit it." diff --git a/docs/contributing/how-to-release.md b/docs/contributing/how-to-release.md index 0285addaa9..ec9b392dbf 100644 --- a/docs/contributing/how-to-release.md +++ b/docs/contributing/how-to-release.md @@ -83,15 +83,18 @@ ensure you have the appropriate tag or commit checked out. contained in the copied release ZIP and not from the current working wx directory. -4. Copy these Windows packages back to your Linux or OSX `distrib/release/x.y.z` +4. Copy `wxMSW-x.y.z-Setup.exe` back to your Linux or OSX `distrib/release/x.y.z` directory so you can continue with the upload step with all packages - available: + available. Also create a ZIP file from the CHM one: - wxMSW-x.y.z-Setup.exe - wxWidgets-x.y.z.chm + zip wxWidgets-x.y.z-docs-chm.zip wxWidgets-x.y.z.chm -5. Run `./build/tools/post-release.sh` to update the sha1sums in - `docs/release.md` and commit the changes. + and copy/move it to the same directory. + +5. Update the version in `docs/release.md` (typically just a global search and + replace) and run `./build/tools/post-release.sh` to update the sha1sums in + it, then commit the changes. Notice that when making an RC, the version must + be explicitly specified on this script command line. ## Uploading @@ -105,7 +108,7 @@ Attach the following files to it: wxWidgets-x.y.z.7z wxWidgets-x.y.z.tar.bz2 wxWidgets-x.y.z.zip - wxWidgets-x.y.z.chm + wxWidgets-x.y.z-docs-chm.zip wxWidgets-x.y.z-docs-html.tar.bz2 wxWidgets-x.y.z-docs-html.zip wxWidgets-x.y.z-headers.7z From 05a29450487448feaf8534b2be226cee799374c5 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 15:37:35 +0100 Subject: [PATCH 331/916] Update sha1sums for 3.1.1-rc archives Done by running "./build/tools/post-release.sh 3.1.1-rc". --- docs/release.md | 92 ++++++++++++++++++++++++------------------------- 1 file changed, 46 insertions(+), 46 deletions(-) diff --git a/docs/release.md b/docs/release.md index 8c5a977f94..1f00f62f1a 100644 --- a/docs/release.md +++ b/docs/release.md @@ -14,14 +14,14 @@ Please report bugs to the [issue tracker](https://trac.wxwidgets.org/newticket) To verify your download please use the following SHA-1 checksums: - 0000000000000000000000000000000000000000 wxMSW-3.1.1-Setup.exe - 0000000000000000000000000000000000000000 wxWidgets-3.1.1-docs-chm.zip - 0000000000000000000000000000000000000000 wxWidgets-3.1.1-docs-html.tar.bz2 - 0000000000000000000000000000000000000000 wxWidgets-3.1.1-docs-html.zip - 0000000000000000000000000000000000000000 wxWidgets-3.1.1-headers.7z - 0000000000000000000000000000000000000000 wxWidgets-3.1.1.7z - 0000000000000000000000000000000000000000 wxWidgets-3.1.1.tar.bz2 - 0000000000000000000000000000000000000000 wxWidgets-3.1.1.zip + d3f8a8f5bd7b5dee2176a14fce93b3767d217f00 wxMSW-3.1.1-rc-Setup.exe + d8de5b7075ba7674e8c0e2cd722259d48e627dc7 wxWidgets-3.1.1-rc-docs-chm.zip + 000c818361eddd403557aacf8b63ac0210335919 wxWidgets-3.1.1-rc-docs-html.tar.bz2 + f5ec0051a4fe620dbeee5262ba1ce30922e5d85c wxWidgets-3.1.1-rc-docs-html.zip + f4d1bda81ef27fb232eb58f88730cfeafb35b477 wxWidgets-3.1.1-rc-headers.7z + 36efadd43d9994495d71a698922113a0d8d46b73 wxWidgets-3.1.1-rc.7z + 2968073dffa60c1ad5016d1b0d4eedb5b701efdf wxWidgets-3.1.1-rc.tar.bz2 + 84d7e7a8347fc727801a407302e2801ee7bfc608 wxWidgets-3.1.1-rc.zip ## Binaries @@ -57,41 +57,41 @@ End users may download one of `wxMSW-3.1.1_vcXXX_ReleaseDLL.7z` or `wxMSW-3.1.1_ To verify your download please use the following SHA-1 checksums: - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc492TDM_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc492TDM_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc492TDM_x64_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc492TDM_x64_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_x64_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_x64_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_Dev.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_ReleaseDLL.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_x64_Dev.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_x64_ReleaseDLL.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_Dev.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_ReleaseDLL.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_x64_Dev.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_x64_ReleaseDLL.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_ReleasePDB.7z From 562e7c4427d5c1233a65ba164d27b759ffe0d834 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 15:50:03 +0100 Subject: [PATCH 332/916] Update release notes for 3.1.1-rc Update MinGW versions used for the binaries and provide links to the working compilers. Add "-rc" to some links to make them work. Also update the binaries file names. --- docs/release.md | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/docs/release.md b/docs/release.md index 1f00f62f1a..4f3a74686b 100644 --- a/docs/release.md +++ b/docs/release.md @@ -1,10 +1,12 @@ +*WARNING* This is a release candidate and not the final 3.1.1 release yet. + Welcome to wxWidgets, a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls. wxWidgets 3.1.1 is the second release in the 3.1 development branch. This release is a "development" one as it makes (very few) incompatible API changes compared to 3.0 and does not guarantee the ABI stability, unlike the 3.0.x series. It is not inherently more buggy or less stable than the "stable" releases and you're encouraged to use it. If you're already using 3.0, upgrading shouldn't require any special effort, so please try it out. Please notice that we provide a single source distribution containing files for all platforms, so you only need to download either the archive with the `.zip` (or `.7z` for much smaller size) extension for Microsoft Windows systems or the one with `.tar.bz2` extenstion for Unix ones, including Mac OS X. -See [README](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1/docs/readme.txt) for more information about this release and the [change log](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1/docs/changes.txt) for details of the changes in it. +See [README](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/readme.txt) for more information about this release and the [change log](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/changes.txt) for details of the changes in it. ## Reporting Problems @@ -27,11 +29,8 @@ To verify your download please use the following SHA-1 checksums: We provide pre-built binary files for the following compilers: -* Microsoft Visual C++ compiler versions 9.0, 10.0, 11.0, 12.0, 14.0 and 14.1 - (corresponding to marketing product names of Microsoft Visual Studio 2008, - 2010, 2012, 2013, 2015 and 2017 respectively). -* MinGW-TDM versions 4.9 and 5.1 (with the default SJLJ exceptions propagation - method, using C++11). +* Microsoft Visual C++ compiler versions 9.0, 10.0, 11.0, 12.0, 14.0 and 14.1 (corresponding to marketing product names of Microsoft Visual Studio 2008, 2010, 2012, 2013, 2015 and 2017 respectively). +* MinGW-TDM versions 5.1 and 7.2 (with the default SJLJ exceptions propagation method, using C++11). Please note that you need to use the very latest MinGW 7.2 compiler release with this version of the compiler which can be downloaded from [here for 32 bits](https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/7.2.0/threads-win32/sjlj/i686-7.2.0-release-win32-sjlj-rt_v5-rev1.7z/download) and [here for 64 bits](https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/7.2.0/threads-win32/seh/x86_64-7.2.0-release-win32-seh-rt_v5-rev1.7z/download), the older "rev0" release has a known bug affecting building wxWidgets in some scenarios. ### For Developers @@ -45,26 +44,22 @@ End users may download one of `wxMSW-3.1.1_vcXXX_ReleaseDLL.7z` or `wxMSW-3.1.1_ ### For Debugging -* Microsoft Visual C++ users: Files `wxMSW-3.1.1_vcXXX_ReleasePDB.7z` contain - the debug symbols for the release build of the DLLs. Download them if you want - to debug your own applications in release build or if you want to get - meaningful information from mini-dumps retrieved from your users machines. -* MinGW-TDM users: Currently the debug symbols are not available for the release - build of the DLLs (only the debug versions of the DLLs contains the debug +* Microsoft Visual C++ users: Files `wxMSW-3.1.1_vcXXX_ReleasePDB.7z` contain the debug symbols for the release build of the DLLs. Download them if you want to debug your own applications in release build or if you want to get meaningful information from mini-dumps retrieved from your users machines. +* MinGW-TDM users: Currently the debug symbols are not available for the release build of the DLLs (only the debug versions of the DLLs contains the debug symbols). ### Binary File Download Verification To verify your download please use the following SHA-1 checksums: - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_x64_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc492TDM_x64_ReleaseDLL.7z* 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_Dev.7z* 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_ReleaseDLL.7z* 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_x64_Dev.7z* 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_x64_ReleaseDLL.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_Dev.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_ReleaseDLL.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_x64_Dev.7z* + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_x64_ReleaseDLL.7z* 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_Dev.7z 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_ReleaseDLL.7z 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_ReleasePDB.7z @@ -95,3 +90,9 @@ To verify your download please use the following SHA-1 checksums: 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_Dev.7z 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_ReleaseDLL.7z 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_x64_ReleasePDB.7z From 6961bcb43f6009057ec3b6ed53103a8d9b4afa67 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 23:21:25 +0100 Subject: [PATCH 333/916] Update 3.1.1-rc binaries SHA-1 checksums --- docs/release.md | 88 ++++++++++++++++++++++++------------------------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/docs/release.md b/docs/release.md index 4f3a74686b..dce9088767 100644 --- a/docs/release.md +++ b/docs/release.md @@ -52,47 +52,47 @@ End users may download one of `wxMSW-3.1.1_vcXXX_ReleaseDLL.7z` or `wxMSW-3.1.1_ To verify your download please use the following SHA-1 checksums: - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_x64_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc510TDM_x64_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_x64_Dev.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_gcc720TDM_x64_ReleaseDLL.7z* - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc90_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc100_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc110_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc120_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc140_x64_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_ReleasePDB.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_x64_Dev.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_x64_ReleaseDLL.7z - 0000000000000000000000000000000000000000 wxMSW-3.1.1-rc_vc141_x64_ReleasePDB.7z + 26836356a6e77091caad508d765b60899c30892e wxMSW-3.1.1-rc_gcc510TDM_Dev.7z + b7eb62bdb152e5539fd5e9ecc105d322fadba3ec wxMSW-3.1.1-rc_gcc510TDM_ReleaseDLL.7z + 77c84112ffcad3b2c649d9fd3adcd4e140945b61 wxMSW-3.1.1-rc_gcc510TDM_x64_Dev.7z + 24e775999ea19b641a11850af0547ac81fd1bc6b wxMSW-3.1.1-rc_gcc510TDM_x64_ReleaseDLL.7z + ead74e56b9d22e578addd52b8246eadfddbd93d1 wxMSW-3.1.1-rc_gcc720_Dev.7z + 7c43aa6937853d1113430ce1b31a0747e89a6b47 wxMSW-3.1.1-rc_gcc720_ReleaseDLL.7z + 298016eb7cb2a509b4dedc5a8c09eb2b98950698 wxMSW-3.1.1-rc_gcc720_x64_Dev.7z + 741087b3fcbe809ae60563e19cf0db21b571725a wxMSW-3.1.1-rc_gcc720_x64_ReleaseDLL.7z + 7537561f1a93ca06a37be730ca9f81506da665db wxMSW-3.1.1-rc_vc90_Dev.7z + 3df72df959b4ae8279cb27519ea5b114003d17f6 wxMSW-3.1.1-rc_vc90_ReleaseDLL.7z + 1c506db10f555f11ae17ba08430482d81be1c0db wxMSW-3.1.1-rc_vc90_ReleasePDB.7z + 3b45c2680499b3e397264f0ae8f6d2617a139b8a wxMSW-3.1.1-rc_vc90_x64_Dev.7z + 3ba14408edad9b325bc0dd0ba98197954ce2db5e wxMSW-3.1.1-rc_vc90_x64_ReleaseDLL.7z + e8c5f145a89a556069221886e7644c3b07d2799f wxMSW-3.1.1-rc_vc90_x64_ReleasePDB.7z + 936f454b547ec17e3cefdf4f43c9af8738f803ca wxMSW-3.1.1-rc_vc100_Dev.7z + 940c8c3923be2ad4a71e3de349657bb5443de918 wxMSW-3.1.1-rc_vc100_ReleaseDLL.7z + 8a4dedfc318272b182a83f5947b5224a7f17c532 wxMSW-3.1.1-rc_vc100_ReleasePDB.7z + c68ccae3a29096e7f78732c65cddabeee5e226b6 wxMSW-3.1.1-rc_vc100_x64_Dev.7z + ea540496a5875454ff90ba3f6ea65ddcacc9a4a5 wxMSW-3.1.1-rc_vc100_x64_ReleaseDLL.7z + 8100a2bfab8909de47fb483bb8bd78c03ddb4df5 wxMSW-3.1.1-rc_vc100_x64_ReleasePDB.7z + 1fa4c99e48cbf0f50289d07f6ceae8a71be62a19 wxMSW-3.1.1-rc_vc110_Dev.7z + 2e44afb8f7080fc673af2abb456cf176dad4b1a2 wxMSW-3.1.1-rc_vc110_ReleaseDLL.7z + 730e2e1db22e3bc308284562c8ecfbfc3f6a6e9e wxMSW-3.1.1-rc_vc110_ReleasePDB.7z + 5c2578deba24a1daf61ae08a7daa1a8662dbe8c9 wxMSW-3.1.1-rc_vc110_x64_Dev.7z + 57da37116c3b80d4f765b85fafcb30e2cb200dab wxMSW-3.1.1-rc_vc110_x64_ReleaseDLL.7z + 6700dbc853484d385753ad4361c16c48c4bd3e3a wxMSW-3.1.1-rc_vc110_x64_ReleasePDB.7z + b4dac305e230ae0c9bfcd07fee632a4aad835329 wxMSW-3.1.1-rc_vc120_Dev.7z + c986f27c6f88b9feb7706f4bff5f50b68b14cec2 wxMSW-3.1.1-rc_vc120_ReleaseDLL.7z + ca5ca15eadc0d1ca6b79824bb9704215c7945195 wxMSW-3.1.1-rc_vc120_ReleasePDB.7z + c9a4850228a1b42d1606d1043b9a3d0b334727a9 wxMSW-3.1.1-rc_vc120_x64_Dev.7z + 6a02c05ab72b06e30ef9f9e355956f3957c86eb1 wxMSW-3.1.1-rc_vc120_x64_ReleaseDLL.7z + 2c36680649bf3093536e20067d30e1242a6023d3 wxMSW-3.1.1-rc_vc120_x64_ReleasePDB.7z + aeede25c3de0f975c811fbce634c5aaf354195fa wxMSW-3.1.1-rc_vc140_Dev.7z + 900203c8f300214e038fbb1ae10ba3eb1a114740 wxMSW-3.1.1-rc_vc140_ReleaseDLL.7z + 788c9b39c0c298735313de425c4ca7986b163908 wxMSW-3.1.1-rc_vc140_ReleasePDB.7z + 68ae8e1c42ff0105ea186c0d32cee95861a1a5a4 wxMSW-3.1.1-rc_vc140_x64_Dev.7z + 550f3d0f52f4d21babf03b66e26145787eb9d922 wxMSW-3.1.1-rc_vc140_x64_ReleaseDLL.7z + 5b57a82a1799ae1a05a385685ce9f729e3fed056 wxMSW-3.1.1-rc_vc140_x64_ReleasePDB.7z + 5990f6bf1d157e2b7e8f254d2a60dfd682971790 wxMSW-3.1.1-rc_vc141_Dev.7z + fde6140a4348621a1b876ed6c289778d4312f2f1 wxMSW-3.1.1-rc_vc141_ReleaseDLL.7z + 824eef674529ca75e620dac6dce45cc6a0c2328b wxMSW-3.1.1-rc_vc141_ReleasePDB.7z + a4b4014c1a1289d798597ebc810a01e88edf53bc wxMSW-3.1.1-rc_vc141_x64_Dev.7z + 285afbcc27e18344654183d8b9e6beca9a9eab92 wxMSW-3.1.1-rc_vc141_x64_ReleaseDLL.7z + 82685386d8291dd5012ef00ced5fdc45cb0d8a04 wxMSW-3.1.1-rc_vc141_x64_ReleasePDB.7z From 76c75d87f5552d41ca67363913d1a2c598b8b141 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 5 Feb 2018 23:29:31 +0100 Subject: [PATCH 334/916] Describe the available files better in the release notes Also mention that GitHub-provided links to the source code should _not_ be used. --- docs/release.md | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/docs/release.md b/docs/release.md index dce9088767..2e7393c662 100644 --- a/docs/release.md +++ b/docs/release.md @@ -4,15 +4,16 @@ Welcome to wxWidgets, a free and open source cross-platform C++ framework for wr wxWidgets 3.1.1 is the second release in the 3.1 development branch. This release is a "development" one as it makes (very few) incompatible API changes compared to 3.0 and does not guarantee the ABI stability, unlike the 3.0.x series. It is not inherently more buggy or less stable than the "stable" releases and you're encouraged to use it. If you're already using 3.0, upgrading shouldn't require any special effort, so please try it out. -Please notice that we provide a single source distribution containing files for all platforms, so you only need to download either the archive with the `.zip` (or `.7z` for much smaller size) extension for Microsoft Windows systems or the one with `.tar.bz2` extenstion for Unix ones, including Mac OS X. +Please see [**README**](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/readme.txt) for more information about this release and the [change log](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/changes.txt) for details of the changes in it. -See [README](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/readme.txt) for more information about this release and the [change log](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/changes.txt) for details of the changes in it. -## Reporting Problems +## Source Files and Documentation -Please report bugs to the [issue tracker](https://trac.wxwidgets.org/newticket) or the [wx-users mailing list](http://groups.google.com/group/wx-users). +If you intend to build wxWidgets from sources (which is recommended), please download `wxWidgets-3.1.1-rc` archive in either [ZIP](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.zip) or [7z](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.7z), for much smaller size, format for Microsoft Windows systems or the [compressed tarball](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.tar.bz2) for Unix ones, including macOS. These archives have exactly the same contents, but use the line endings appropriate for the corresponding platform. Be sure to _not_ download the files available from the "Source code" links above, which are automatically generated by GitHub and don't contain the submodules sources which are necessary for building wxWidgets. -## Download Verification +In addition, we provide archives containing the documentation in either HTML or Microsoft CHM formats. Notice that the documentation is also [available online](http://docs.wxwidgets.org/3.1). + +Finally, Microsoft Windows users may download [Setup.exe file](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxMSW-3.1.1-rc-Setup.exe) containing both sources and documentation, however please note that this file does _not_ contain any binaries, please see below for those. To verify your download please use the following SHA-1 checksums: @@ -96,3 +97,8 @@ To verify your download please use the following SHA-1 checksums: a4b4014c1a1289d798597ebc810a01e88edf53bc wxMSW-3.1.1-rc_vc141_x64_Dev.7z 285afbcc27e18344654183d8b9e6beca9a9eab92 wxMSW-3.1.1-rc_vc141_x64_ReleaseDLL.7z 82685386d8291dd5012ef00ced5fdc45cb0d8a04 wxMSW-3.1.1-rc_vc141_x64_ReleasePDB.7z + + +## Reporting Problems + +Please report bugs to the [issue tracker](https://trac.wxwidgets.org/newticket) or the [wx-users mailing list](http://groups.google.com/group/wx-users). From 7887be861e8d9d90f6f7fb429ab9e98b6fb46d5e Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Mon, 5 Feb 2018 21:42:31 +0100 Subject: [PATCH 335/916] CMake: Set default configuration types Only use Debug and Release as default configuration types --- CMakeLists.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 42be0430e7..a067b00356 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,6 +9,14 @@ cmake_minimum_required(VERSION 2.8.12) +if(NOT CMAKE_CONFIGURATION_TYPES) + get_property(HAVE_MULTI_CONFIG_GENERATOR GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) + # Set default configuration types for multi-config generators + if(HAVE_MULTI_CONFIG_GENERATOR) + set(CMAKE_CONFIGURATION_TYPES "Debug;Release") + endif() +endif() + if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET) # If no deployment target has been set default to the minimum supported # OS X version (this has to be set before the first project() call) From 9fd43699317a35936b8d9a275ecf710e6ac12a49 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Mon, 5 Feb 2018 21:49:40 +0100 Subject: [PATCH 336/916] CMake: Update cmake/README.md Update minor stuff and mention upmake --- build/cmake/README.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/build/cmake/README.md b/build/cmake/README.md index eed238ef2d..708b78a434 100644 --- a/build/cmake/README.md +++ b/build/cmake/README.md @@ -7,7 +7,7 @@ documentation. CMake files organization ======================== -All CMake files are located in $(wx)/build/cmake additionally there is a +All CMake files are located in _$(wx)/build/cmake_ additionally there is a _CMakeLists.txt_ in the root directory. Files @@ -19,15 +19,16 @@ Files * Generates config files used to find wxWidgets by other build systems * Creates wx-config * files.cmake - * List of source files generated by _update_files.py_ from _$(wx)/build/files_ - * This file should **never** be edited manually + * List of source files generated by _$(wx)build/upmake_ from _$(wx)build/files_ + * This file should usually **never** be edited manually + * However if a new group of files is added it needs to be edited manually * functions.cmake * contains various wxWidgets specific functions and macros used throughout the CMake files * Every function should contain a short description of it's parameters as a comment before the function/macro * install.cmake - * Handles defintions for the ´install` and `uninstall` target + * Handles defintions for the `install` and `uninstall` target * init.cmake * Intializes various variables used during the build process and for generation of setup.h and configuration files @@ -49,8 +50,6 @@ Files * Define toolkit specific options and detection to this file * uninstall.cmake.in * Used by _install.cmake_ when creating the `uninstall` target -* update_files.py - * Creates _files.cmake_ from _$(wx)/build/files_ Sub directories --------------- From a957df3fc1ea6341b5bf6054aa90056f9f0c10ce Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 6 Feb 2018 13:29:32 +0100 Subject: [PATCH 337/916] Add missing wxOVERRIDE for overridden GtkGetValueFromString This fixes a (harmless) warning in clang wxGTK builds. --- include/wx/gtk/dvrenderers.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/wx/gtk/dvrenderers.h b/include/wx/gtk/dvrenderers.h index 67d81df79e..bd50a515b2 100644 --- a/include/wx/gtk/dvrenderers.h +++ b/include/wx/gtk/dvrenderers.h @@ -279,7 +279,7 @@ public: virtual bool GetValue( wxVariant &value ) const wxOVERRIDE; private: - virtual wxVariant GtkGetValueFromString(const wxString& str) const; + virtual wxVariant GtkGetValueFromString(const wxString& str) const wxOVERRIDE; }; From 89148ea72e52f1e20a3f39ed5fd65fd4fd85956c Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Mon, 5 Feb 2018 22:04:55 +0100 Subject: [PATCH 338/916] CMake: Improve documentation overview page --- docs/doxygen/overviews/cmake.md | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/docs/doxygen/overviews/cmake.md b/docs/doxygen/overviews/cmake.md index e1b11586bb..1257ed086b 100644 --- a/docs/doxygen/overviews/cmake.md +++ b/docs/doxygen/overviews/cmake.md @@ -62,13 +62,29 @@ Build options {#cmake_options} The following list of build options can either be configured in the CMake UI or specified via the -D command line option when running the cmake command. -Option Name | Type | Description ------------------------------ | ----- | ------------------------------------ -wxBUILD_SHARED | BOOL | Build shared libraries -wxBUILD_TESTS | STRING | CONSOLE_ONLY, ALL or OFF -wxBUILD_SAMPLES | STRING | SOME, ALL or OFF -wxUSE_GUI | BOOL | Build the UI libraries -wxBUILD_COMPATIBILITY | STRING | 2.8, 3.0 or 3.1 API compatibility +Option Name | Type | Default | Description +------------------------- | ----- | ------- | ---------------------------- +wxBUILD_SHARED | BOOL | ON | Build shared libraries +wxBUILD_TESTS | STRING | OFF | CONSOLE_ONLY, ALL or OFF +wxBUILD_SAMPLES | STRING | OFF | SOME, ALL or OFF +wxBUILD_DEMOS | BOOL | OFF | Build demo applications +wxUSE_GUI | BOOL | ON | Build the UI libraries +wxBUILD_COMPATIBILITY | STRING | 3.0 | 2.8, 3.0 or 3.1 API compatibility +wxBUILD_PRECOMP | BOOL | ON | Use precompiled headers +wxBUILD_MONOLITHIC | BOOL | OFF | Build a single library + +A complete list of options and advanced options can be found when using the +CMake GUI. + +Recommendations {#cmake_recommendations} +======================= +While CMake in wxWidgets aims to support most generators available +in CMake the following generators are recommended: +* Windows: Visual Studio (any supported version) +* macOS: Xcode +* Linux: Ninja or Makefiles + +CMake 3.10 or newer is recommended. The minimum version required is 2.8.12. Using CMake with your applications {#cmake_apps} ================================== From 0a94c1890f83532ce5b6801c019ff7d25b9f11ad Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Tue, 6 Feb 2018 10:24:48 +0100 Subject: [PATCH 339/916] CMake: Fixes/Tweaks for macOS building with C++ 11 Make sure the deployment target is set to 10.9 when using C++11 Also ensure building C++11 on macOS for non Xcode builds --- CMakeLists.txt | 7 ++++++- build/cmake/functions.cmake | 10 ++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a067b00356..21ae14c342 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,7 +20,12 @@ endif() if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET) # If no deployment target has been set default to the minimum supported # OS X version (this has to be set before the first project() call) - set(CMAKE_OSX_DEPLOYMENT_TARGET 10.7 CACHE STRING "OS X Deployment Target") + if(CMAKE_CXX_STANDARD EQUAL 11 OR CMAKE_CXX_STANDARD EQUAL 14) + set(OSX_DEFAULT_DEPLOYMENT_TARGET 10.9) + else() + set(OSX_DEFAULT_DEPLOYMENT_TARGET 10.7) + endif() + set(CMAKE_OSX_DEPLOYMENT_TARGET ${OSX_DEFAULT_DEPLOYMENT_TARGET} CACHE STRING "OS X Deployment Target") endif() project(wxWidgets) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index 23c68ee76d..6cf1faf00d 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -74,7 +74,13 @@ function(wx_set_common_target_properties target_name) # TODO: implement for older CMake versions ? set_target_properties(${target_name} PROPERTIES CXX_STANDARD ${wxBUILD_CXX_STANDARD}) if(wxBUILD_CXX_STANDARD EQUAL 11 OR wxBUILD_CXX_STANDARD EQUAL 14) - set_target_properties(${target_name} PROPERTIES XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY libc++) + if (APPLE) + if(CMAKE_GENERATOR EQUAL "Xcode") + set_target_properties(${target_name} PROPERTIES XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY libc++) + else() + target_compile_options(${target_name} PUBLIC "-stdlib=libc++") + endif() + endif() #TODO: define for other generators than Xcode endif() endif() @@ -304,7 +310,7 @@ endfunction() # Enable cotire for target if precompiled headers are enabled macro(wx_target_enable_precomp target_name) if(wxBUILD_PRECOMP) - if(CMAKE_GENERATOR STREQUAL "Xcode" AND ${target_name} STREQUAL "wxscintilla") + if(APPLE AND ${target_name} STREQUAL "wxscintilla") # TODO: workaround/fix cotire issue with wxscintilla when using Xcode else() set_target_properties(${target_name} PROPERTIES COTIRE_ADD_UNITY_BUILD FALSE) From 8881953bea199c4921d581e3ebccfd8fd02c144a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 6 Feb 2018 15:26:51 +0100 Subject: [PATCH 340/916] Add support for --with-cxx=17 configure option Use the latest version of ax_cxx_compile_stdcxx.m4 from the autoconf archive for C++17 support and handle "17" as the option value in our configure. See https://github.com/wxWidgets/wxWidgets/pull/721 --- build/aclocal/ax_cxx_compile_stdcxx.m4 | 500 ++++- configure | 2689 +++++++++++++++++++++++- configure.in | 10 +- 3 files changed, 3104 insertions(+), 95 deletions(-) diff --git a/build/aclocal/ax_cxx_compile_stdcxx.m4 b/build/aclocal/ax_cxx_compile_stdcxx.m4 index 079e17d2a6..5032bba809 100644 --- a/build/aclocal/ax_cxx_compile_stdcxx.m4 +++ b/build/aclocal/ax_cxx_compile_stdcxx.m4 @@ -1,5 +1,5 @@ # =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html +# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html # =========================================================================== # # SYNOPSIS @@ -9,9 +9,9 @@ # DESCRIPTION # # Check for baseline language coverage in the compiler for the specified -# version of the C++ standard. If necessary, add switches to CXXFLAGS to -# enable support. VERSION may be '11' (for the C++11 standard) or '14' -# (for the C++14 standard). +# version of the C++ standard. If necessary, add switches to CXX and +# CXXCPP to enable support. VERSION may be '11' (for the C++11 standard) +# or '14' (for the C++14 standard). # # The second argument, if specified, indicates whether you insist on an # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g. @@ -33,21 +33,23 @@ # Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov # Copyright (c) 2015 Paul Norman # Copyright (c) 2015 Moritz Klammler +# Copyright (c) 2016 Krzesimir Nowak # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. This file is offered as-is, without any # warranty. -#serial 1 +#serial 7 dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro dnl (serial version number 13). +AX_REQUIRE_DEFINED([AC_MSG_WARN]) AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl - m4_if([$1], [11], [], - [$1], [14], [], - [$1], [17], [m4_fatal([support for C++17 not yet implemented in AX_CXX_COMPILE_STDCXX])], + m4_if([$1], [11], [ax_cxx_compile_alternatives="11 0x"], + [$1], [14], [ax_cxx_compile_alternatives="14 1y"], + [$1], [17], [ax_cxx_compile_alternatives="17 1z"], [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl m4_if([$2], [], [], [$2], [ext], [], @@ -70,18 +72,22 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl m4_if([$2], [noext], [], [dnl if test x$ac_success = xno; then - for switch in -std=gnu++$1 -std=gnu++0x; do + for alternative in ${ax_cxx_compile_alternatives}; do + switch="-std=gnu++${alternative}" cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, $cachevar, - [ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" + [ac_save_CXX="$CXX" + CXX="$CXX $switch" AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], [eval $cachevar=yes], [eval $cachevar=no]) - CXXFLAGS="$ac_save_CXXFLAGS"]) + CXX="$ac_save_CXX"]) if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi ac_success=yes break fi @@ -93,19 +99,27 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl dnl HP's aCC needs +std=c++11 according to: dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf dnl Cray's crayCC needs "-h std=c++11" - for switch in -std=c++$1 -std=c++0x +std=c++$1 "-h std=c++$1"; do - cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) - AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, - $cachevar, - [ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" - AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], - [eval $cachevar=yes], - [eval $cachevar=no]) - CXXFLAGS="$ac_save_CXXFLAGS"]) - if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" - ac_success=yes + for alternative in ${ax_cxx_compile_alternatives}; do + for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do + cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) + AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, + $cachevar, + [ac_save_CXX="$CXX" + CXX="$CXX $switch" + AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], + [eval $cachevar=yes], + [eval $cachevar=no]) + CXX="$ac_save_CXX"]) + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + if test x$ac_success = xyes; then break fi done @@ -115,18 +129,17 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl if test x$ac_success = xno; then AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.]) fi - else - if test x$ac_success = xno; then - HAVE_CXX$1=0 - AC_MSG_NOTICE([No compiler with C++$1 support was found]) - else - HAVE_CXX$1=1 - AC_DEFINE(HAVE_CXX$1,1, - [define if the compiler supports basic C++$1 syntax]) - fi - - AC_SUBST(HAVE_CXX$1) fi + if test x$ac_success = xno; then + HAVE_CXX$1=0 + AC_MSG_NOTICE([No compiler with C++$1 support was found]) + else + HAVE_CXX$1=1 + AC_DEFINE(HAVE_CXX$1,1, + [define if the compiler supports basic C++$1 syntax]) + fi + AC_SUBST(HAVE_CXX$1) + m4_if([$1], [17], [AC_MSG_WARN([C++17 is not yet standardized, so the checks may change in incompatible ways anytime])]) ]) @@ -144,6 +157,11 @@ m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14], _AX_CXX_COMPILE_STDCXX_testbody_new_in_14 ) +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_17], + _AX_CXX_COMPILE_STDCXX_testbody_new_in_11 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_14 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_17 +) dnl Tests for new features in C++11 @@ -514,7 +532,7 @@ namespace cxx14 } - namespace test_digit_seperators + namespace test_digit_separators { constexpr auto ten_million = 100'000'000; @@ -556,3 +574,409 @@ namespace cxx14 #endif // __cplusplus >= 201402L ]]) + + +dnl Tests for new features in C++17 + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_17], [[ + +// If the compiler admits that it is not ready for C++17, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus <= 201402L + +#error "This is not a C++17 compiler" + +#else + +#if defined(__clang__) + #define REALLY_CLANG +#else + #if defined(__GNUC__) + #define REALLY_GCC + #endif +#endif + +#include +#include +#include + +namespace cxx17 +{ + +#if !defined(REALLY_CLANG) + namespace test_constexpr_lambdas + { + + // TODO: test it with clang++ from git + + constexpr int foo = [](){return 42;}(); + + } +#endif // !defined(REALLY_CLANG) + + namespace test::nested_namespace::definitions + { + + } + + namespace test_fold_expression + { + + template + int multiply(Args... args) + { + return (args * ... * 1); + } + + template + bool all(Args... args) + { + return (args && ...); + } + + } + + namespace test_extended_static_assert + { + + static_assert (true); + + } + + namespace test_auto_brace_init_list + { + + auto foo = {5}; + auto bar {5}; + + static_assert(std::is_same, decltype(foo)>::value); + static_assert(std::is_same::value); + } + + namespace test_typename_in_template_template_parameter + { + + template typename X> struct D; + + } + + namespace test_fallthrough_nodiscard_maybe_unused_attributes + { + + int f1() + { + return 42; + } + + [[nodiscard]] int f2() + { + [[maybe_unused]] auto unused = f1(); + + switch (f1()) + { + case 17: + f1(); + [[fallthrough]]; + case 42: + f1(); + } + return f1(); + } + + } + + namespace test_extended_aggregate_initialization + { + + struct base1 + { + int b1, b2 = 42; + }; + + struct base2 + { + base2() { + b3 = 42; + } + int b3; + }; + + struct derived : base1, base2 + { + int d; + }; + + derived d1 {{1, 2}, {}, 4}; // full initialization + derived d2 {{}, {}, 4}; // value-initialized bases + + } + + namespace test_general_range_based_for_loop + { + + struct iter + { + int i; + + int& operator* () + { + return i; + } + + const int& operator* () const + { + return i; + } + + iter& operator++() + { + ++i; + return *this; + } + }; + + struct sentinel + { + int i; + }; + + bool operator== (const iter& i, const sentinel& s) + { + return i.i == s.i; + } + + bool operator!= (const iter& i, const sentinel& s) + { + return !(i == s); + } + + struct range + { + iter begin() const + { + return {0}; + } + + sentinel end() const + { + return {5}; + } + }; + + void f() + { + range r {}; + + for (auto i : r) + { + [[maybe_unused]] auto v = i; + } + } + + } + + namespace test_lambda_capture_asterisk_this_by_value + { + + struct t + { + int i; + int foo() + { + return [*this]() + { + return i; + }(); + } + }; + + } + + namespace test_enum_class_construction + { + + enum class byte : unsigned char + {}; + + byte foo {42}; + + } + + namespace test_constexpr_if + { + + template + int f () + { + if constexpr(cond) + { + return 13; + } + else + { + return 42; + } + } + + } + + namespace test_selection_statement_with_initializer + { + + int f() + { + return 13; + } + + int f2() + { + if (auto i = f(); i > 0) + { + return 3; + } + + switch (auto i = f(); i + 4) + { + case 17: + return 2; + + default: + return 1; + } + } + + } + +#if !defined(REALLY_CLANG) + namespace test_template_argument_deduction_for_class_templates + { + + // TODO: test it with clang++ from git + + template + struct pair + { + pair (T1 p1, T2 p2) + : m1 {p1}, + m2 {p2} + {} + + T1 m1; + T2 m2; + }; + + void f() + { + [[maybe_unused]] auto p = pair{13, 42u}; + } + + } +#endif // !defined(REALLY_CLANG) + + namespace test_non_type_auto_template_parameters + { + + template + struct B + {}; + + B<5> b1; + B<'a'> b2; + + } + +#if !defined(REALLY_CLANG) + namespace test_structured_bindings + { + + // TODO: test it with clang++ from git + + int arr[2] = { 1, 2 }; + std::pair pr = { 1, 2 }; + + auto f1() -> int(&)[2] + { + return arr; + } + + auto f2() -> std::pair& + { + return pr; + } + + struct S + { + int x1 : 2; + volatile double y1; + }; + + S f3() + { + return {}; + } + + auto [ x1, y1 ] = f1(); + auto& [ xr1, yr1 ] = f1(); + auto [ x2, y2 ] = f2(); + auto& [ xr2, yr2 ] = f2(); + const auto [ x3, y3 ] = f3(); + + } +#endif // !defined(REALLY_CLANG) + +#if !defined(REALLY_CLANG) + namespace test_exception_spec_type_system + { + + // TODO: test it with clang++ from git + + struct Good {}; + struct Bad {}; + + void g1() noexcept; + void g2(); + + template + Bad + f(T*, T*); + + template + Good + f(T1*, T2*); + + static_assert (std::is_same_v); + + } +#endif // !defined(REALLY_CLANG) + + namespace test_inline_variables + { + + template void f(T) + {} + + template inline T g(T) + { + return T{}; + } + + template<> inline void f<>(int) + {} + + template<> int g<>(int) + { + return 5; + } + + } + +} // namespace cxx17 + +#endif // __cplusplus <= 201402L + +]]) diff --git a/configure b/configure index c6fca28adc..96aa141762 100755 --- a/configure +++ b/configure @@ -996,6 +996,7 @@ GTK_CFLAGS subdirs PKG_CONFIG AR +HAVE_CXX17 HAVE_CXX14 HAVE_CXX11 ac_ct_CXX @@ -2344,7 +2345,7 @@ Optional Packages: --with-expat enable XML support using expat parser --with-macosx-sdk=PATH use an OS X SDK at PATH --with-macosx-version-min=VER build binaries which require at least this OS X version - --with-cxx=11|14 use the given C++11 + --with-cxx=11|14|17 use the given C++ dialect --with-gtk-prefix=PFX Prefix where GTK is installed (optional) --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional) --with-x use the X Window System @@ -15078,7 +15079,7 @@ fi if test -n "$wxWITH_CXX"; then case "$wxWITH_CXX" in 11) - ax_cxx_compile_cxx11_required=false + ax_cxx_compile_alternatives="11 0x" ax_cxx_compile_cxx11_required=false ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -15393,15 +15394,16 @@ $as_echo "$ax_cv_cxx_compile_cxx11" >&6; } fi if test x$ac_success = xno; then - for switch in -std=gnu++11 -std=gnu++0x; do + for alternative in ${ax_cxx_compile_alternatives}; do + switch="-std=gnu++${alternative}" cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh` { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5 $as_echo_n "checking whether $CXX supports C++11 features with $switch... " >&6; } if eval \${$cachevar+:} false; then : $as_echo_n "(cached) " >&6 else - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" + ac_save_CXX="$CXX" + CXX="$CXX $switch" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15697,13 +15699,16 @@ else eval $cachevar=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CXXFLAGS="$ac_save_CXXFLAGS" + CXX="$ac_save_CXX" fi eval ac_res=\$$cachevar { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi ac_success=yes break fi @@ -15711,16 +15716,17 @@ $as_echo "$ac_res" >&6; } fi if test x$ac_success = xno; then - for switch in -std=c++11 -std=c++0x +std=c++11 "-h std=c++11"; do - cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5 + for alternative in ${ax_cxx_compile_alternatives}; do + for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do + cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5 $as_echo_n "checking whether $CXX supports C++11 features with $switch... " >&6; } if eval \${$cachevar+:} false; then : $as_echo_n "(cached) " >&6 else - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_save_CXX="$CXX" + CXX="$CXX $switch" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -16015,14 +16021,21 @@ else eval $cachevar=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CXXFLAGS="$ac_save_CXXFLAGS" + CXX="$ac_save_CXX" fi eval ac_res=\$$cachevar { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" - ac_success=yes + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + if test x$ac_success = xyes; then break fi done @@ -16037,21 +16050,20 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu if test x$ac_success = xno; then as_fn_error $? "*** A compiler with support for C++11 language features is required." "$LINENO" 5 fi - else - if test x$ac_success = xno; then - HAVE_CXX11=0 - { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++11 support was found" >&5 + fi + if test x$ac_success = xno; then + HAVE_CXX11=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++11 support was found" >&5 $as_echo "$as_me: No compiler with C++11 support was found" >&6;} - else - HAVE_CXX11=1 + else + HAVE_CXX11=1 $as_echo "#define HAVE_CXX11 1" >>confdefs.h - fi - - fi + + if test -n "$wxWITH_CXX_IS_OPTIONAL"; then if test "$HAVE_CXX11" != 1; then { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 @@ -16063,7 +16075,7 @@ See \`config.log' for more details" "$LINENO" 5; } ;; 14) - ax_cxx_compile_cxx14_required=true + ax_cxx_compile_alternatives="14 1y" ax_cxx_compile_cxx14_required=true ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -16440,7 +16452,7 @@ namespace cxx14 } - namespace test_digit_seperators + namespace test_digit_separators { constexpr auto ten_million = 100'000'000; @@ -16498,15 +16510,16 @@ $as_echo "$ax_cv_cxx_compile_cxx14" >&6; } fi if test x$ac_success = xno; then - for switch in -std=gnu++14 -std=gnu++0x; do + for alternative in ${ax_cxx_compile_alternatives}; do + switch="-std=gnu++${alternative}" cachevar=`$as_echo "ax_cv_cxx_compile_cxx14_$switch" | $as_tr_sh` { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++14 features with $switch" >&5 $as_echo_n "checking whether $CXX supports C++14 features with $switch... " >&6; } if eval \${$cachevar+:} false; then : $as_echo_n "(cached) " >&6 else - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" + ac_save_CXX="$CXX" + CXX="$CXX $switch" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -16872,7 +16885,7 @@ namespace cxx14 } - namespace test_digit_seperators + namespace test_digit_separators { constexpr auto ten_million = 100'000'000; @@ -16922,13 +16935,16 @@ else eval $cachevar=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CXXFLAGS="$ac_save_CXXFLAGS" + CXX="$ac_save_CXX" fi eval ac_res=\$$cachevar { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi ac_success=yes break fi @@ -16936,16 +16952,17 @@ $as_echo "$ac_res" >&6; } fi if test x$ac_success = xno; then - for switch in -std=c++14 -std=c++0x +std=c++14 "-h std=c++14"; do - cachevar=`$as_echo "ax_cv_cxx_compile_cxx14_$switch" | $as_tr_sh` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++14 features with $switch" >&5 + for alternative in ${ax_cxx_compile_alternatives}; do + for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do + cachevar=`$as_echo "ax_cv_cxx_compile_cxx14_$switch" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++14 features with $switch" >&5 $as_echo_n "checking whether $CXX supports C++14 features with $switch... " >&6; } if eval \${$cachevar+:} false; then : $as_echo_n "(cached) " >&6 else - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_save_CXX="$CXX" + CXX="$CXX $switch" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17310,7 +17327,7 @@ namespace cxx14 } - namespace test_digit_seperators + namespace test_digit_separators { constexpr auto ten_million = 100'000'000; @@ -17360,14 +17377,21 @@ else eval $cachevar=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CXXFLAGS="$ac_save_CXXFLAGS" + CXX="$ac_save_CXX" fi eval ac_res=\$$cachevar { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" - ac_success=yes + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + if test x$ac_success = xyes; then break fi done @@ -17382,28 +17406,2583 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu if test x$ac_success = xno; then as_fn_error $? "*** A compiler with support for C++14 language features is required." "$LINENO" 5 fi - else - if test x$ac_success = xno; then - HAVE_CXX14=0 - { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++14 support was found" >&5 + fi + if test x$ac_success = xno; then + HAVE_CXX14=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++14 support was found" >&5 $as_echo "$as_me: No compiler with C++14 support was found" >&6;} - else - HAVE_CXX14=1 + else + HAVE_CXX14=1 $as_echo "#define HAVE_CXX14 1" >>confdefs.h - fi - - fi + + HAVE_CXX11=1 ;; + 17) + ax_cxx_compile_alternatives="17 1z" ax_cxx_compile_cxx17_required=true + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + ac_success=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++17 features by default" >&5 +$as_echo_n "checking whether $CXX supports C++17 features by default... " >&6; } +if ${ax_cv_cxx_compile_cxx17+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +// If the compiler admits that it is not ready for C++11, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201103L + +#error "This is not a C++11 compiler" + +#else + +namespace cxx11 +{ + + namespace test_static_assert + { + + template + struct check + { + static_assert(sizeof(int) <= sizeof(T), "not big enough"); + }; + + } + + namespace test_final_override + { + + struct Base + { + virtual void f() {} + }; + + struct Derived : public Base + { + virtual void f() override {} + }; + + } + + namespace test_double_right_angle_brackets + { + + template < typename T > + struct check {}; + + typedef check single_type; + typedef check> double_type; + typedef check>> triple_type; + typedef check>>> quadruple_type; + + } + + namespace test_decltype + { + + int + f() + { + int a = 1; + decltype(a) b = 2; + return a + b; + } + + } + + namespace test_type_deduction + { + + template < typename T1, typename T2 > + struct is_same + { + static const bool value = false; + }; + + template < typename T > + struct is_same + { + static const bool value = true; + }; + + template < typename T1, typename T2 > + auto + add(T1 a1, T2 a2) -> decltype(a1 + a2) + { + return a1 + a2; + } + + int + test(const int c, volatile int v) + { + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == false, ""); + auto ac = c; + auto av = v; + auto sumi = ac + av + 'x'; + auto sumf = ac + av + 1.0; + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == true, ""); + return (sumf > 0.0) ? sumi : add(c, v); + } + + } + + namespace test_noexcept + { + + int f() { return 0; } + int g() noexcept { return 0; } + + static_assert(noexcept(f()) == false, ""); + static_assert(noexcept(g()) == true, ""); + + } + + namespace test_constexpr + { + + template < typename CharT > + unsigned long constexpr + strlen_c_r(const CharT *const s, const unsigned long acc) noexcept + { + return *s ? strlen_c_r(s + 1, acc + 1) : acc; + } + + template < typename CharT > + unsigned long constexpr + strlen_c(const CharT *const s) noexcept + { + return strlen_c_r(s, 0UL); + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("1") == 1UL, ""); + static_assert(strlen_c("example") == 7UL, ""); + static_assert(strlen_c("another\0example") == 7UL, ""); + + } + + namespace test_rvalue_references + { + + template < int N > + struct answer + { + static constexpr int value = N; + }; + + answer<1> f(int&) { return answer<1>(); } + answer<2> f(const int&) { return answer<2>(); } + answer<3> f(int&&) { return answer<3>(); } + + void + test() + { + int i = 0; + const int c = 0; + static_assert(decltype(f(i))::value == 1, ""); + static_assert(decltype(f(c))::value == 2, ""); + static_assert(decltype(f(0))::value == 3, ""); + } + + } + + namespace test_uniform_initialization + { + + struct test + { + static const int zero {}; + static const int one {1}; + }; + + static_assert(test::zero == 0, ""); + static_assert(test::one == 1, ""); + + } + + namespace test_lambdas + { + + void + test1() + { + auto lambda1 = [](){}; + auto lambda2 = lambda1; + lambda1(); + lambda2(); + } + + int + test2() + { + auto a = [](int i, int j){ return i + j; }(1, 2); + auto b = []() -> int { return '0'; }(); + auto c = [=](){ return a + b; }(); + auto d = [&](){ return c; }(); + auto e = [a, &b](int x) mutable { + const auto identity = [](int y){ return y; }; + for (auto i = 0; i < a; ++i) + a += b--; + return x + identity(a + b); + }(0); + return a + b + c + d + e; + } + + int + test3() + { + const auto nullary = [](){ return 0; }; + const auto unary = [](int x){ return x; }; + using nullary_t = decltype(nullary); + using unary_t = decltype(unary); + const auto higher1st = [](nullary_t f){ return f(); }; + const auto higher2nd = [unary](nullary_t f1){ + return [unary, f1](unary_t f2){ return f2(unary(f1())); }; + }; + return higher1st(nullary) + higher2nd(nullary)(unary); + } + + } + + namespace test_variadic_templates + { + + template + struct sum; + + template + struct sum + { + static constexpr auto value = N0 + sum::value; + }; + + template <> + struct sum<> + { + static constexpr auto value = 0; + }; + + static_assert(sum<>::value == 0, ""); + static_assert(sum<1>::value == 1, ""); + static_assert(sum<23>::value == 23, ""); + static_assert(sum<1, 2>::value == 3, ""); + static_assert(sum<5, 5, 11>::value == 21, ""); + static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); + + } + + // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae + // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function + // because of this. + namespace test_template_alias_sfinae + { + + struct foo {}; + + template + using member = typename T::member_type; + + template + void func(...) {} + + template + void func(member*) {} + + void test(); + + void test() { func(0); } + + } + +} // namespace cxx11 + +#endif // __cplusplus >= 201103L + + + + +// If the compiler admits that it is not ready for C++14, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201402L + +#error "This is not a C++14 compiler" + +#else + +namespace cxx14 +{ + + namespace test_polymorphic_lambdas + { + + int + test() + { + const auto lambda = [](auto&&... args){ + const auto istiny = [](auto x){ + return (sizeof(x) == 1UL) ? 1 : 0; + }; + const int aretiny[] = { istiny(args)... }; + return aretiny[0]; + }; + return lambda(1, 1L, 1.0f, '1'); + } + + } + + namespace test_binary_literals + { + + constexpr auto ivii = 0b0000000000101010; + static_assert(ivii == 42, "wrong value"); + + } + + namespace test_generalized_constexpr + { + + template < typename CharT > + constexpr unsigned long + strlen_c(const CharT *const s) noexcept + { + auto length = 0UL; + for (auto p = s; *p; ++p) + ++length; + return length; + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("x") == 1UL, ""); + static_assert(strlen_c("test") == 4UL, ""); + static_assert(strlen_c("another\0test") == 7UL, ""); + + } + + namespace test_lambda_init_capture + { + + int + test() + { + auto x = 0; + const auto lambda1 = [a = x](int b){ return a + b; }; + const auto lambda2 = [a = lambda1(x)](){ return a; }; + return lambda2(); + } + + } + + namespace test_digit_separators + { + + constexpr auto ten_million = 100'000'000; + static_assert(ten_million == 100000000, ""); + + } + + namespace test_return_type_deduction + { + + auto f(int& x) { return x; } + decltype(auto) g(int& x) { return x; } + + template < typename T1, typename T2 > + struct is_same + { + static constexpr auto value = false; + }; + + template < typename T > + struct is_same + { + static constexpr auto value = true; + }; + + int + test() + { + auto x = 0; + static_assert(is_same::value, ""); + static_assert(is_same::value, ""); + return x; + } + + } + +} // namespace cxx14 + +#endif // __cplusplus >= 201402L + + + + +// If the compiler admits that it is not ready for C++17, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus <= 201402L + +#error "This is not a C++17 compiler" + +#else + +#if defined(__clang__) + #define REALLY_CLANG +#else + #if defined(__GNUC__) + #define REALLY_GCC + #endif +#endif + +#include +#include +#include + +namespace cxx17 +{ + +#if !defined(REALLY_CLANG) + namespace test_constexpr_lambdas + { + + // TODO: test it with clang++ from git + + constexpr int foo = [](){return 42;}(); + + } +#endif // !defined(REALLY_CLANG) + + namespace test::nested_namespace::definitions + { + + } + + namespace test_fold_expression + { + + template + int multiply(Args... args) + { + return (args * ... * 1); + } + + template + bool all(Args... args) + { + return (args && ...); + } + + } + + namespace test_extended_static_assert + { + + static_assert (true); + + } + + namespace test_auto_brace_init_list + { + + auto foo = {5}; + auto bar {5}; + + static_assert(std::is_same, decltype(foo)>::value); + static_assert(std::is_same::value); + } + + namespace test_typename_in_template_template_parameter + { + + template typename X> struct D; + + } + + namespace test_fallthrough_nodiscard_maybe_unused_attributes + { + + int f1() + { + return 42; + } + + [[nodiscard]] int f2() + { + [[maybe_unused]] auto unused = f1(); + + switch (f1()) + { + case 17: + f1(); + [[fallthrough]]; + case 42: + f1(); + } + return f1(); + } + + } + + namespace test_extended_aggregate_initialization + { + + struct base1 + { + int b1, b2 = 42; + }; + + struct base2 + { + base2() { + b3 = 42; + } + int b3; + }; + + struct derived : base1, base2 + { + int d; + }; + + derived d1 {{1, 2}, {}, 4}; // full initialization + derived d2 {{}, {}, 4}; // value-initialized bases + + } + + namespace test_general_range_based_for_loop + { + + struct iter + { + int i; + + int& operator* () + { + return i; + } + + const int& operator* () const + { + return i; + } + + iter& operator++() + { + ++i; + return *this; + } + }; + + struct sentinel + { + int i; + }; + + bool operator== (const iter& i, const sentinel& s) + { + return i.i == s.i; + } + + bool operator!= (const iter& i, const sentinel& s) + { + return !(i == s); + } + + struct range + { + iter begin() const + { + return {0}; + } + + sentinel end() const + { + return {5}; + } + }; + + void f() + { + range r {}; + + for (auto i : r) + { + [[maybe_unused]] auto v = i; + } + } + + } + + namespace test_lambda_capture_asterisk_this_by_value + { + + struct t + { + int i; + int foo() + { + return [*this]() + { + return i; + }(); + } + }; + + } + + namespace test_enum_class_construction + { + + enum class byte : unsigned char + {}; + + byte foo {42}; + + } + + namespace test_constexpr_if + { + + template + int f () + { + if constexpr(cond) + { + return 13; + } + else + { + return 42; + } + } + + } + + namespace test_selection_statement_with_initializer + { + + int f() + { + return 13; + } + + int f2() + { + if (auto i = f(); i > 0) + { + return 3; + } + + switch (auto i = f(); i + 4) + { + case 17: + return 2; + + default: + return 1; + } + } + + } + +#if !defined(REALLY_CLANG) + namespace test_template_argument_deduction_for_class_templates + { + + // TODO: test it with clang++ from git + + template + struct pair + { + pair (T1 p1, T2 p2) + : m1 {p1}, + m2 {p2} + {} + + T1 m1; + T2 m2; + }; + + void f() + { + [[maybe_unused]] auto p = pair{13, 42u}; + } + + } +#endif // !defined(REALLY_CLANG) + + namespace test_non_type_auto_template_parameters + { + + template + struct B + {}; + + B<5> b1; + B<'a'> b2; + + } + +#if !defined(REALLY_CLANG) + namespace test_structured_bindings + { + + // TODO: test it with clang++ from git + + int arr[2] = { 1, 2 }; + std::pair pr = { 1, 2 }; + + auto f1() -> int(&)[2] + { + return arr; + } + + auto f2() -> std::pair& + { + return pr; + } + + struct S + { + int x1 : 2; + volatile double y1; + }; + + S f3() + { + return {}; + } + + auto [ x1, y1 ] = f1(); + auto& [ xr1, yr1 ] = f1(); + auto [ x2, y2 ] = f2(); + auto& [ xr2, yr2 ] = f2(); + const auto [ x3, y3 ] = f3(); + + } +#endif // !defined(REALLY_CLANG) + +#if !defined(REALLY_CLANG) + namespace test_exception_spec_type_system + { + + // TODO: test it with clang++ from git + + struct Good {}; + struct Bad {}; + + void g1() noexcept; + void g2(); + + template + Bad + f(T*, T*); + + template + Good + f(T1*, T2*); + + static_assert (std::is_same_v); + + } +#endif // !defined(REALLY_CLANG) + + namespace test_inline_variables + { + + template void f(T) + {} + + template inline T g(T) + { + return T{}; + } + + template<> inline void f<>(int) + {} + + template<> int g<>(int) + { + return 5; + } + + } + +} // namespace cxx17 + +#endif // __cplusplus <= 201402L + + + +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ax_cv_cxx_compile_cxx17=yes +else + ax_cv_cxx_compile_cxx17=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_cxx_compile_cxx17" >&5 +$as_echo "$ax_cv_cxx_compile_cxx17" >&6; } + if test x$ax_cv_cxx_compile_cxx17 = xyes; then + ac_success=yes + fi + + if test x$ac_success = xno; then + for alternative in ${ax_cxx_compile_alternatives}; do + switch="-std=gnu++${alternative}" + cachevar=`$as_echo "ax_cv_cxx_compile_cxx17_$switch" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++17 features with $switch" >&5 +$as_echo_n "checking whether $CXX supports C++17 features with $switch... " >&6; } +if eval \${$cachevar+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_CXX="$CXX" + CXX="$CXX $switch" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +// If the compiler admits that it is not ready for C++11, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201103L + +#error "This is not a C++11 compiler" + +#else + +namespace cxx11 +{ + + namespace test_static_assert + { + + template + struct check + { + static_assert(sizeof(int) <= sizeof(T), "not big enough"); + }; + + } + + namespace test_final_override + { + + struct Base + { + virtual void f() {} + }; + + struct Derived : public Base + { + virtual void f() override {} + }; + + } + + namespace test_double_right_angle_brackets + { + + template < typename T > + struct check {}; + + typedef check single_type; + typedef check> double_type; + typedef check>> triple_type; + typedef check>>> quadruple_type; + + } + + namespace test_decltype + { + + int + f() + { + int a = 1; + decltype(a) b = 2; + return a + b; + } + + } + + namespace test_type_deduction + { + + template < typename T1, typename T2 > + struct is_same + { + static const bool value = false; + }; + + template < typename T > + struct is_same + { + static const bool value = true; + }; + + template < typename T1, typename T2 > + auto + add(T1 a1, T2 a2) -> decltype(a1 + a2) + { + return a1 + a2; + } + + int + test(const int c, volatile int v) + { + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == false, ""); + auto ac = c; + auto av = v; + auto sumi = ac + av + 'x'; + auto sumf = ac + av + 1.0; + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == true, ""); + return (sumf > 0.0) ? sumi : add(c, v); + } + + } + + namespace test_noexcept + { + + int f() { return 0; } + int g() noexcept { return 0; } + + static_assert(noexcept(f()) == false, ""); + static_assert(noexcept(g()) == true, ""); + + } + + namespace test_constexpr + { + + template < typename CharT > + unsigned long constexpr + strlen_c_r(const CharT *const s, const unsigned long acc) noexcept + { + return *s ? strlen_c_r(s + 1, acc + 1) : acc; + } + + template < typename CharT > + unsigned long constexpr + strlen_c(const CharT *const s) noexcept + { + return strlen_c_r(s, 0UL); + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("1") == 1UL, ""); + static_assert(strlen_c("example") == 7UL, ""); + static_assert(strlen_c("another\0example") == 7UL, ""); + + } + + namespace test_rvalue_references + { + + template < int N > + struct answer + { + static constexpr int value = N; + }; + + answer<1> f(int&) { return answer<1>(); } + answer<2> f(const int&) { return answer<2>(); } + answer<3> f(int&&) { return answer<3>(); } + + void + test() + { + int i = 0; + const int c = 0; + static_assert(decltype(f(i))::value == 1, ""); + static_assert(decltype(f(c))::value == 2, ""); + static_assert(decltype(f(0))::value == 3, ""); + } + + } + + namespace test_uniform_initialization + { + + struct test + { + static const int zero {}; + static const int one {1}; + }; + + static_assert(test::zero == 0, ""); + static_assert(test::one == 1, ""); + + } + + namespace test_lambdas + { + + void + test1() + { + auto lambda1 = [](){}; + auto lambda2 = lambda1; + lambda1(); + lambda2(); + } + + int + test2() + { + auto a = [](int i, int j){ return i + j; }(1, 2); + auto b = []() -> int { return '0'; }(); + auto c = [=](){ return a + b; }(); + auto d = [&](){ return c; }(); + auto e = [a, &b](int x) mutable { + const auto identity = [](int y){ return y; }; + for (auto i = 0; i < a; ++i) + a += b--; + return x + identity(a + b); + }(0); + return a + b + c + d + e; + } + + int + test3() + { + const auto nullary = [](){ return 0; }; + const auto unary = [](int x){ return x; }; + using nullary_t = decltype(nullary); + using unary_t = decltype(unary); + const auto higher1st = [](nullary_t f){ return f(); }; + const auto higher2nd = [unary](nullary_t f1){ + return [unary, f1](unary_t f2){ return f2(unary(f1())); }; + }; + return higher1st(nullary) + higher2nd(nullary)(unary); + } + + } + + namespace test_variadic_templates + { + + template + struct sum; + + template + struct sum + { + static constexpr auto value = N0 + sum::value; + }; + + template <> + struct sum<> + { + static constexpr auto value = 0; + }; + + static_assert(sum<>::value == 0, ""); + static_assert(sum<1>::value == 1, ""); + static_assert(sum<23>::value == 23, ""); + static_assert(sum<1, 2>::value == 3, ""); + static_assert(sum<5, 5, 11>::value == 21, ""); + static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); + + } + + // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae + // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function + // because of this. + namespace test_template_alias_sfinae + { + + struct foo {}; + + template + using member = typename T::member_type; + + template + void func(...) {} + + template + void func(member*) {} + + void test(); + + void test() { func(0); } + + } + +} // namespace cxx11 + +#endif // __cplusplus >= 201103L + + + + +// If the compiler admits that it is not ready for C++14, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201402L + +#error "This is not a C++14 compiler" + +#else + +namespace cxx14 +{ + + namespace test_polymorphic_lambdas + { + + int + test() + { + const auto lambda = [](auto&&... args){ + const auto istiny = [](auto x){ + return (sizeof(x) == 1UL) ? 1 : 0; + }; + const int aretiny[] = { istiny(args)... }; + return aretiny[0]; + }; + return lambda(1, 1L, 1.0f, '1'); + } + + } + + namespace test_binary_literals + { + + constexpr auto ivii = 0b0000000000101010; + static_assert(ivii == 42, "wrong value"); + + } + + namespace test_generalized_constexpr + { + + template < typename CharT > + constexpr unsigned long + strlen_c(const CharT *const s) noexcept + { + auto length = 0UL; + for (auto p = s; *p; ++p) + ++length; + return length; + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("x") == 1UL, ""); + static_assert(strlen_c("test") == 4UL, ""); + static_assert(strlen_c("another\0test") == 7UL, ""); + + } + + namespace test_lambda_init_capture + { + + int + test() + { + auto x = 0; + const auto lambda1 = [a = x](int b){ return a + b; }; + const auto lambda2 = [a = lambda1(x)](){ return a; }; + return lambda2(); + } + + } + + namespace test_digit_separators + { + + constexpr auto ten_million = 100'000'000; + static_assert(ten_million == 100000000, ""); + + } + + namespace test_return_type_deduction + { + + auto f(int& x) { return x; } + decltype(auto) g(int& x) { return x; } + + template < typename T1, typename T2 > + struct is_same + { + static constexpr auto value = false; + }; + + template < typename T > + struct is_same + { + static constexpr auto value = true; + }; + + int + test() + { + auto x = 0; + static_assert(is_same::value, ""); + static_assert(is_same::value, ""); + return x; + } + + } + +} // namespace cxx14 + +#endif // __cplusplus >= 201402L + + + + +// If the compiler admits that it is not ready for C++17, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus <= 201402L + +#error "This is not a C++17 compiler" + +#else + +#if defined(__clang__) + #define REALLY_CLANG +#else + #if defined(__GNUC__) + #define REALLY_GCC + #endif +#endif + +#include +#include +#include + +namespace cxx17 +{ + +#if !defined(REALLY_CLANG) + namespace test_constexpr_lambdas + { + + // TODO: test it with clang++ from git + + constexpr int foo = [](){return 42;}(); + + } +#endif // !defined(REALLY_CLANG) + + namespace test::nested_namespace::definitions + { + + } + + namespace test_fold_expression + { + + template + int multiply(Args... args) + { + return (args * ... * 1); + } + + template + bool all(Args... args) + { + return (args && ...); + } + + } + + namespace test_extended_static_assert + { + + static_assert (true); + + } + + namespace test_auto_brace_init_list + { + + auto foo = {5}; + auto bar {5}; + + static_assert(std::is_same, decltype(foo)>::value); + static_assert(std::is_same::value); + } + + namespace test_typename_in_template_template_parameter + { + + template typename X> struct D; + + } + + namespace test_fallthrough_nodiscard_maybe_unused_attributes + { + + int f1() + { + return 42; + } + + [[nodiscard]] int f2() + { + [[maybe_unused]] auto unused = f1(); + + switch (f1()) + { + case 17: + f1(); + [[fallthrough]]; + case 42: + f1(); + } + return f1(); + } + + } + + namespace test_extended_aggregate_initialization + { + + struct base1 + { + int b1, b2 = 42; + }; + + struct base2 + { + base2() { + b3 = 42; + } + int b3; + }; + + struct derived : base1, base2 + { + int d; + }; + + derived d1 {{1, 2}, {}, 4}; // full initialization + derived d2 {{}, {}, 4}; // value-initialized bases + + } + + namespace test_general_range_based_for_loop + { + + struct iter + { + int i; + + int& operator* () + { + return i; + } + + const int& operator* () const + { + return i; + } + + iter& operator++() + { + ++i; + return *this; + } + }; + + struct sentinel + { + int i; + }; + + bool operator== (const iter& i, const sentinel& s) + { + return i.i == s.i; + } + + bool operator!= (const iter& i, const sentinel& s) + { + return !(i == s); + } + + struct range + { + iter begin() const + { + return {0}; + } + + sentinel end() const + { + return {5}; + } + }; + + void f() + { + range r {}; + + for (auto i : r) + { + [[maybe_unused]] auto v = i; + } + } + + } + + namespace test_lambda_capture_asterisk_this_by_value + { + + struct t + { + int i; + int foo() + { + return [*this]() + { + return i; + }(); + } + }; + + } + + namespace test_enum_class_construction + { + + enum class byte : unsigned char + {}; + + byte foo {42}; + + } + + namespace test_constexpr_if + { + + template + int f () + { + if constexpr(cond) + { + return 13; + } + else + { + return 42; + } + } + + } + + namespace test_selection_statement_with_initializer + { + + int f() + { + return 13; + } + + int f2() + { + if (auto i = f(); i > 0) + { + return 3; + } + + switch (auto i = f(); i + 4) + { + case 17: + return 2; + + default: + return 1; + } + } + + } + +#if !defined(REALLY_CLANG) + namespace test_template_argument_deduction_for_class_templates + { + + // TODO: test it with clang++ from git + + template + struct pair + { + pair (T1 p1, T2 p2) + : m1 {p1}, + m2 {p2} + {} + + T1 m1; + T2 m2; + }; + + void f() + { + [[maybe_unused]] auto p = pair{13, 42u}; + } + + } +#endif // !defined(REALLY_CLANG) + + namespace test_non_type_auto_template_parameters + { + + template + struct B + {}; + + B<5> b1; + B<'a'> b2; + + } + +#if !defined(REALLY_CLANG) + namespace test_structured_bindings + { + + // TODO: test it with clang++ from git + + int arr[2] = { 1, 2 }; + std::pair pr = { 1, 2 }; + + auto f1() -> int(&)[2] + { + return arr; + } + + auto f2() -> std::pair& + { + return pr; + } + + struct S + { + int x1 : 2; + volatile double y1; + }; + + S f3() + { + return {}; + } + + auto [ x1, y1 ] = f1(); + auto& [ xr1, yr1 ] = f1(); + auto [ x2, y2 ] = f2(); + auto& [ xr2, yr2 ] = f2(); + const auto [ x3, y3 ] = f3(); + + } +#endif // !defined(REALLY_CLANG) + +#if !defined(REALLY_CLANG) + namespace test_exception_spec_type_system + { + + // TODO: test it with clang++ from git + + struct Good {}; + struct Bad {}; + + void g1() noexcept; + void g2(); + + template + Bad + f(T*, T*); + + template + Good + f(T1*, T2*); + + static_assert (std::is_same_v); + + } +#endif // !defined(REALLY_CLANG) + + namespace test_inline_variables + { + + template void f(T) + {} + + template inline T g(T) + { + return T{}; + } + + template<> inline void f<>(int) + {} + + template<> int g<>(int) + { + return 5; + } + + } + +} // namespace cxx17 + +#endif // __cplusplus <= 201402L + + + +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + eval $cachevar=yes +else + eval $cachevar=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CXX="$ac_save_CXX" +fi +eval ac_res=\$$cachevar + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + fi + + if test x$ac_success = xno; then + for alternative in ${ax_cxx_compile_alternatives}; do + for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do + cachevar=`$as_echo "ax_cv_cxx_compile_cxx17_$switch" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++17 features with $switch" >&5 +$as_echo_n "checking whether $CXX supports C++17 features with $switch... " >&6; } +if eval \${$cachevar+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_CXX="$CXX" + CXX="$CXX $switch" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +// If the compiler admits that it is not ready for C++11, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201103L + +#error "This is not a C++11 compiler" + +#else + +namespace cxx11 +{ + + namespace test_static_assert + { + + template + struct check + { + static_assert(sizeof(int) <= sizeof(T), "not big enough"); + }; + + } + + namespace test_final_override + { + + struct Base + { + virtual void f() {} + }; + + struct Derived : public Base + { + virtual void f() override {} + }; + + } + + namespace test_double_right_angle_brackets + { + + template < typename T > + struct check {}; + + typedef check single_type; + typedef check> double_type; + typedef check>> triple_type; + typedef check>>> quadruple_type; + + } + + namespace test_decltype + { + + int + f() + { + int a = 1; + decltype(a) b = 2; + return a + b; + } + + } + + namespace test_type_deduction + { + + template < typename T1, typename T2 > + struct is_same + { + static const bool value = false; + }; + + template < typename T > + struct is_same + { + static const bool value = true; + }; + + template < typename T1, typename T2 > + auto + add(T1 a1, T2 a2) -> decltype(a1 + a2) + { + return a1 + a2; + } + + int + test(const int c, volatile int v) + { + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == false, ""); + auto ac = c; + auto av = v; + auto sumi = ac + av + 'x'; + auto sumf = ac + av + 1.0; + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == true, ""); + return (sumf > 0.0) ? sumi : add(c, v); + } + + } + + namespace test_noexcept + { + + int f() { return 0; } + int g() noexcept { return 0; } + + static_assert(noexcept(f()) == false, ""); + static_assert(noexcept(g()) == true, ""); + + } + + namespace test_constexpr + { + + template < typename CharT > + unsigned long constexpr + strlen_c_r(const CharT *const s, const unsigned long acc) noexcept + { + return *s ? strlen_c_r(s + 1, acc + 1) : acc; + } + + template < typename CharT > + unsigned long constexpr + strlen_c(const CharT *const s) noexcept + { + return strlen_c_r(s, 0UL); + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("1") == 1UL, ""); + static_assert(strlen_c("example") == 7UL, ""); + static_assert(strlen_c("another\0example") == 7UL, ""); + + } + + namespace test_rvalue_references + { + + template < int N > + struct answer + { + static constexpr int value = N; + }; + + answer<1> f(int&) { return answer<1>(); } + answer<2> f(const int&) { return answer<2>(); } + answer<3> f(int&&) { return answer<3>(); } + + void + test() + { + int i = 0; + const int c = 0; + static_assert(decltype(f(i))::value == 1, ""); + static_assert(decltype(f(c))::value == 2, ""); + static_assert(decltype(f(0))::value == 3, ""); + } + + } + + namespace test_uniform_initialization + { + + struct test + { + static const int zero {}; + static const int one {1}; + }; + + static_assert(test::zero == 0, ""); + static_assert(test::one == 1, ""); + + } + + namespace test_lambdas + { + + void + test1() + { + auto lambda1 = [](){}; + auto lambda2 = lambda1; + lambda1(); + lambda2(); + } + + int + test2() + { + auto a = [](int i, int j){ return i + j; }(1, 2); + auto b = []() -> int { return '0'; }(); + auto c = [=](){ return a + b; }(); + auto d = [&](){ return c; }(); + auto e = [a, &b](int x) mutable { + const auto identity = [](int y){ return y; }; + for (auto i = 0; i < a; ++i) + a += b--; + return x + identity(a + b); + }(0); + return a + b + c + d + e; + } + + int + test3() + { + const auto nullary = [](){ return 0; }; + const auto unary = [](int x){ return x; }; + using nullary_t = decltype(nullary); + using unary_t = decltype(unary); + const auto higher1st = [](nullary_t f){ return f(); }; + const auto higher2nd = [unary](nullary_t f1){ + return [unary, f1](unary_t f2){ return f2(unary(f1())); }; + }; + return higher1st(nullary) + higher2nd(nullary)(unary); + } + + } + + namespace test_variadic_templates + { + + template + struct sum; + + template + struct sum + { + static constexpr auto value = N0 + sum::value; + }; + + template <> + struct sum<> + { + static constexpr auto value = 0; + }; + + static_assert(sum<>::value == 0, ""); + static_assert(sum<1>::value == 1, ""); + static_assert(sum<23>::value == 23, ""); + static_assert(sum<1, 2>::value == 3, ""); + static_assert(sum<5, 5, 11>::value == 21, ""); + static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); + + } + + // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae + // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function + // because of this. + namespace test_template_alias_sfinae + { + + struct foo {}; + + template + using member = typename T::member_type; + + template + void func(...) {} + + template + void func(member*) {} + + void test(); + + void test() { func(0); } + + } + +} // namespace cxx11 + +#endif // __cplusplus >= 201103L + + + + +// If the compiler admits that it is not ready for C++14, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201402L + +#error "This is not a C++14 compiler" + +#else + +namespace cxx14 +{ + + namespace test_polymorphic_lambdas + { + + int + test() + { + const auto lambda = [](auto&&... args){ + const auto istiny = [](auto x){ + return (sizeof(x) == 1UL) ? 1 : 0; + }; + const int aretiny[] = { istiny(args)... }; + return aretiny[0]; + }; + return lambda(1, 1L, 1.0f, '1'); + } + + } + + namespace test_binary_literals + { + + constexpr auto ivii = 0b0000000000101010; + static_assert(ivii == 42, "wrong value"); + + } + + namespace test_generalized_constexpr + { + + template < typename CharT > + constexpr unsigned long + strlen_c(const CharT *const s) noexcept + { + auto length = 0UL; + for (auto p = s; *p; ++p) + ++length; + return length; + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("x") == 1UL, ""); + static_assert(strlen_c("test") == 4UL, ""); + static_assert(strlen_c("another\0test") == 7UL, ""); + + } + + namespace test_lambda_init_capture + { + + int + test() + { + auto x = 0; + const auto lambda1 = [a = x](int b){ return a + b; }; + const auto lambda2 = [a = lambda1(x)](){ return a; }; + return lambda2(); + } + + } + + namespace test_digit_separators + { + + constexpr auto ten_million = 100'000'000; + static_assert(ten_million == 100000000, ""); + + } + + namespace test_return_type_deduction + { + + auto f(int& x) { return x; } + decltype(auto) g(int& x) { return x; } + + template < typename T1, typename T2 > + struct is_same + { + static constexpr auto value = false; + }; + + template < typename T > + struct is_same + { + static constexpr auto value = true; + }; + + int + test() + { + auto x = 0; + static_assert(is_same::value, ""); + static_assert(is_same::value, ""); + return x; + } + + } + +} // namespace cxx14 + +#endif // __cplusplus >= 201402L + + + + +// If the compiler admits that it is not ready for C++17, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus <= 201402L + +#error "This is not a C++17 compiler" + +#else + +#if defined(__clang__) + #define REALLY_CLANG +#else + #if defined(__GNUC__) + #define REALLY_GCC + #endif +#endif + +#include +#include +#include + +namespace cxx17 +{ + +#if !defined(REALLY_CLANG) + namespace test_constexpr_lambdas + { + + // TODO: test it with clang++ from git + + constexpr int foo = [](){return 42;}(); + + } +#endif // !defined(REALLY_CLANG) + + namespace test::nested_namespace::definitions + { + + } + + namespace test_fold_expression + { + + template + int multiply(Args... args) + { + return (args * ... * 1); + } + + template + bool all(Args... args) + { + return (args && ...); + } + + } + + namespace test_extended_static_assert + { + + static_assert (true); + + } + + namespace test_auto_brace_init_list + { + + auto foo = {5}; + auto bar {5}; + + static_assert(std::is_same, decltype(foo)>::value); + static_assert(std::is_same::value); + } + + namespace test_typename_in_template_template_parameter + { + + template typename X> struct D; + + } + + namespace test_fallthrough_nodiscard_maybe_unused_attributes + { + + int f1() + { + return 42; + } + + [[nodiscard]] int f2() + { + [[maybe_unused]] auto unused = f1(); + + switch (f1()) + { + case 17: + f1(); + [[fallthrough]]; + case 42: + f1(); + } + return f1(); + } + + } + + namespace test_extended_aggregate_initialization + { + + struct base1 + { + int b1, b2 = 42; + }; + + struct base2 + { + base2() { + b3 = 42; + } + int b3; + }; + + struct derived : base1, base2 + { + int d; + }; + + derived d1 {{1, 2}, {}, 4}; // full initialization + derived d2 {{}, {}, 4}; // value-initialized bases + + } + + namespace test_general_range_based_for_loop + { + + struct iter + { + int i; + + int& operator* () + { + return i; + } + + const int& operator* () const + { + return i; + } + + iter& operator++() + { + ++i; + return *this; + } + }; + + struct sentinel + { + int i; + }; + + bool operator== (const iter& i, const sentinel& s) + { + return i.i == s.i; + } + + bool operator!= (const iter& i, const sentinel& s) + { + return !(i == s); + } + + struct range + { + iter begin() const + { + return {0}; + } + + sentinel end() const + { + return {5}; + } + }; + + void f() + { + range r {}; + + for (auto i : r) + { + [[maybe_unused]] auto v = i; + } + } + + } + + namespace test_lambda_capture_asterisk_this_by_value + { + + struct t + { + int i; + int foo() + { + return [*this]() + { + return i; + }(); + } + }; + + } + + namespace test_enum_class_construction + { + + enum class byte : unsigned char + {}; + + byte foo {42}; + + } + + namespace test_constexpr_if + { + + template + int f () + { + if constexpr(cond) + { + return 13; + } + else + { + return 42; + } + } + + } + + namespace test_selection_statement_with_initializer + { + + int f() + { + return 13; + } + + int f2() + { + if (auto i = f(); i > 0) + { + return 3; + } + + switch (auto i = f(); i + 4) + { + case 17: + return 2; + + default: + return 1; + } + } + + } + +#if !defined(REALLY_CLANG) + namespace test_template_argument_deduction_for_class_templates + { + + // TODO: test it with clang++ from git + + template + struct pair + { + pair (T1 p1, T2 p2) + : m1 {p1}, + m2 {p2} + {} + + T1 m1; + T2 m2; + }; + + void f() + { + [[maybe_unused]] auto p = pair{13, 42u}; + } + + } +#endif // !defined(REALLY_CLANG) + + namespace test_non_type_auto_template_parameters + { + + template + struct B + {}; + + B<5> b1; + B<'a'> b2; + + } + +#if !defined(REALLY_CLANG) + namespace test_structured_bindings + { + + // TODO: test it with clang++ from git + + int arr[2] = { 1, 2 }; + std::pair pr = { 1, 2 }; + + auto f1() -> int(&)[2] + { + return arr; + } + + auto f2() -> std::pair& + { + return pr; + } + + struct S + { + int x1 : 2; + volatile double y1; + }; + + S f3() + { + return {}; + } + + auto [ x1, y1 ] = f1(); + auto& [ xr1, yr1 ] = f1(); + auto [ x2, y2 ] = f2(); + auto& [ xr2, yr2 ] = f2(); + const auto [ x3, y3 ] = f3(); + + } +#endif // !defined(REALLY_CLANG) + +#if !defined(REALLY_CLANG) + namespace test_exception_spec_type_system + { + + // TODO: test it with clang++ from git + + struct Good {}; + struct Bad {}; + + void g1() noexcept; + void g2(); + + template + Bad + f(T*, T*); + + template + Good + f(T1*, T2*); + + static_assert (std::is_same_v); + + } +#endif // !defined(REALLY_CLANG) + + namespace test_inline_variables + { + + template void f(T) + {} + + template inline T g(T) + { + return T{}; + } + + template<> inline void f<>(int) + {} + + template<> int g<>(int) + { + return 5; + } + + } + +} // namespace cxx17 + +#endif // __cplusplus <= 201402L + + + +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + eval $cachevar=yes +else + eval $cachevar=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CXX="$ac_save_CXX" +fi +eval ac_res=\$$cachevar + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + if test x$ac_success = xyes; then + break + fi + done + fi + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + if test x$ax_cxx_compile_cxx17_required = xtrue; then + if test x$ac_success = xno; then + as_fn_error $? "*** A compiler with support for C++17 language features is required." "$LINENO" 5 + fi + fi + if test x$ac_success = xno; then + HAVE_CXX17=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++17 support was found" >&5 +$as_echo "$as_me: No compiler with C++17 support was found" >&6;} + else + HAVE_CXX17=1 + +$as_echo "#define HAVE_CXX17 1" >>confdefs.h + + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: C++17 is not yet standardized, so the checks may change in incompatible ways anytime" >&5 +$as_echo "$as_me: WARNING: C++17 is not yet standardized, so the checks may change in incompatible ways anytime" >&2;} + + HAVE_CXX11=1 + ;; + *) - as_fn_error $? "Invalid --with-cxx=\"$wxWITH_CXX\" option value, only 11 or 14 supported" "$LINENO" 5 + as_fn_error $? "Invalid --with-cxx=\"$wxWITH_CXX\" option value, only 11, 14 or 17 supported" "$LINENO" 5 esac if test "$HAVE_CXX11" = "1" ; then diff --git a/configure.in b/configure.in index 2cd338023b..340f2b30bb 100644 --- a/configure.in +++ b/configure.in @@ -633,7 +633,7 @@ dnl --------------------------------------------------------------------------- WX_ARG_DISABLE(shared, [ --disable-shared create static library instead of shared], wxUSE_SHARED) AC_ARG_ENABLE(cxx11, [ --enable-cxx11 use C++11 compiler if available], [wxWITH_CXX=11 wxWITH_CXX_IS_OPTIONAL=1]) -AC_ARG_WITH(cxx, [ --with-cxx=11|14 use the given C++11], [wxWITH_CXX="$withval"]) +AC_ARG_WITH(cxx, [ --with-cxx=11|14|17 use the given C++ dialect], [wxWITH_CXX="$withval"]) WX_ARG_ENABLE(stl, [ --enable-stl use standard C++ classes for everything], wxUSE_STL) if test "$wxUSE_STL" = "yes"; then DEFAULT_wxUSE_STD_CONTAINERS=yes @@ -1101,8 +1101,14 @@ if test -n "$wxWITH_CXX"; then HAVE_CXX11=1 ;; + 17) + dnl This is similar to 14 above. + AX_CXX_COMPILE_STDCXX(17) + HAVE_CXX11=1 + ;; + *) - AC_MSG_ERROR([Invalid --with-cxx="$wxWITH_CXX" option value, only 11 or 14 supported]) + AC_MSG_ERROR([Invalid --with-cxx="$wxWITH_CXX" option value, only 11, 14 or 17 supported]) esac if test "$HAVE_CXX11" = "1" ; then From 0fe9d7c3bbd5c10665d41719d59129110895fb06 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Mon, 5 Feb 2018 10:02:48 -0800 Subject: [PATCH 341/916] Revert e41a1b1cbb "Menubar accelerators are now preserved" It overwrites any existing accelerator table, and menubar accelerators seem to work fine without it. See #18053 --- src/gtk/frame.cpp | 67 ----------------------------------------------- 1 file changed, 67 deletions(-) diff --git a/src/gtk/frame.cpp b/src/gtk/frame.cpp index 862a424e41..f902f70fea 100644 --- a/src/gtk/frame.cpp +++ b/src/gtk/frame.cpp @@ -111,78 +111,11 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const *height = 0; } -#if wxUSE_MENUS && wxUSE_ACCEL -// Helper for wxCreateAcceleratorTableForMenuBar -static void wxAddAccelerators(wxList& accelEntries, wxMenu* menu) -{ - size_t i; - for (i = 0; i < menu->GetMenuItems().GetCount(); i++) - { - wxMenuItem* item = (wxMenuItem*) menu->GetMenuItems().Item(i)->GetData(); - if (item->GetSubMenu()) - { - wxAddAccelerators(accelEntries, item->GetSubMenu()); - } - else if (!item->GetItemLabel().IsEmpty()) - { - wxAcceleratorEntry* entry = wxAcceleratorEntry::Create(item->GetItemLabel()); - if (entry) - { - entry->Set(entry->GetFlags(), entry->GetKeyCode(), item->GetId()); - accelEntries.Append((wxObject*) entry); - } - } - } -} - -// Create an accelerator table consisting of all the accelerators -// from the menubar in the given menus -static wxAcceleratorTable wxCreateAcceleratorTableForMenuBar(wxMenuBar* menuBar) -{ - wxList accelEntries; - - size_t i; - for (i = 0; i < menuBar->GetMenuCount(); i++) - { - wxAddAccelerators(accelEntries, menuBar->GetMenu(i)); - } - - size_t n = accelEntries.GetCount(); - - if (n == 0) - return wxAcceleratorTable(); - - wxAcceleratorEntry* entries = new wxAcceleratorEntry[n]; - - for (i = 0; i < accelEntries.GetCount(); i++) - { - wxAcceleratorEntry* entry = (wxAcceleratorEntry*) accelEntries.Item(i)->GetData(); - entries[i] = (*entry); - delete entry; - - } - - wxAcceleratorTable table(n, entries); - delete[] entries; - - return table; -} -#endif // wxUSE_MENUS && wxUSE_ACCEL - bool wxFrame::ShowFullScreen(bool show, long style) { if (!wxFrameBase::ShowFullScreen(show, style)) return false; -#if wxUSE_MENUS && wxUSE_ACCEL - if (show && GetMenuBar()) - { - wxAcceleratorTable table(wxCreateAcceleratorTableForMenuBar(GetMenuBar())); - if (table.IsOk()) - SetAcceleratorTable(table); - } -#endif // wxUSE_MENUS && wxUSE_ACCEL - wxWindow* const bar[] = { #if wxUSE_MENUS m_frameMenuBar, From 9c29b6de48e7775ee88024d46949f4ea5d01ce6b Mon Sep 17 00:00:00 2001 From: pavel-t <36256989+pavel-t@users.noreply.github.com> Date: Thu, 8 Feb 2018 10:05:21 +0200 Subject: [PATCH 342/916] Fix building tests with wxUSE_STL=1 and wxUSE_UNSAFE_WXSTRING_CONV=0 --- tests/strings/stdstrings.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/strings/stdstrings.cpp b/tests/strings/stdstrings.cpp index 1446a8c040..e9682b5761 100644 --- a/tests/strings/stdstrings.cpp +++ b/tests/strings/stdstrings.cpp @@ -593,7 +593,7 @@ void StdStringTestCase::StdConversion() // notice that implicit wxString -> std::string conversion is only // available in wxUSE_STL case, because it conflicts with conversion to // const char*/wchar_t* -#if wxUSE_STL +#if wxUSE_STL && wxUSE_UNSAFE_WXSTRING_CONV std::string s5 = s4; #else std::string s5 = s4.ToStdString(); From 7ce0a0a774679d9745e8528da8449b31f9cde9ac Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Thu, 8 Feb 2018 10:59:39 +0100 Subject: [PATCH 343/916] CMake: Additional fixes/tweaks for C++11 on macOS The changes in 0a94c1890f83532ce5b6801c019ff7d25b9f11ad where an incomplete solution. The apple compiler automatically choses libc++ if the deployment target is >= 10.9. Lower deployment targets need explicit compiler options to use libc++. --- CMakeLists.txt | 7 +------ build/cmake/functions.cmake | 20 +++++++++++--------- build/cmake/setup.cmake | 8 ++++++++ 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 21ae14c342..a067b00356 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,12 +20,7 @@ endif() if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET) # If no deployment target has been set default to the minimum supported # OS X version (this has to be set before the first project() call) - if(CMAKE_CXX_STANDARD EQUAL 11 OR CMAKE_CXX_STANDARD EQUAL 14) - set(OSX_DEFAULT_DEPLOYMENT_TARGET 10.9) - else() - set(OSX_DEFAULT_DEPLOYMENT_TARGET 10.7) - endif() - set(CMAKE_OSX_DEPLOYMENT_TARGET ${OSX_DEFAULT_DEPLOYMENT_TARGET} CACHE STRING "OS X Deployment Target") + set(CMAKE_OSX_DEPLOYMENT_TARGET 10.7 CACHE STRING "OS X Deployment Target") endif() project(wxWidgets) diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index 6cf1faf00d..9af05bd939 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -73,15 +73,17 @@ function(wx_set_common_target_properties target_name) if(DEFINED wxBUILD_CXX_STANDARD AND NOT wxBUILD_CXX_STANDARD STREQUAL COMPILER_DEFAULT) # TODO: implement for older CMake versions ? set_target_properties(${target_name} PROPERTIES CXX_STANDARD ${wxBUILD_CXX_STANDARD}) - if(wxBUILD_CXX_STANDARD EQUAL 11 OR wxBUILD_CXX_STANDARD EQUAL 14) - if (APPLE) - if(CMAKE_GENERATOR EQUAL "Xcode") - set_target_properties(${target_name} PROPERTIES XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY libc++) - else() - target_compile_options(${target_name} PUBLIC "-stdlib=libc++") - endif() + if( + APPLE AND + CMAKE_OSX_DEPLOYMENT_TARGET VERSION_LESS 10.9 AND + (wxBUILD_CXX_STANDARD EQUAL 11 OR wxBUILD_CXX_STANDARD EQUAL 14) + ) + if(CMAKE_GENERATOR STREQUAL "Xcode") + set_target_properties(${target_name} PROPERTIES XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY libc++) + else() + target_compile_options(${target_name} PUBLIC "-stdlib=libc++") + target_link_libraries(${target_name} PRIVATE "-stdlib=libc++") endif() - #TODO: define for other generators than Xcode endif() endif() set_target_properties(${target_name} PROPERTIES @@ -363,7 +365,7 @@ macro(wx_exe_link_libraries name) if(wxBUILD_MONOLITHIC) target_link_libraries(${name} PUBLIC mono) else() - target_link_libraries(${name};${ARGN}) + target_link_libraries(${name};PRIVATE;${ARGN}) endif() endmacro() diff --git a/build/cmake/setup.cmake b/build/cmake/setup.cmake index 2dd2de9262..700d41e0f5 100644 --- a/build/cmake/setup.cmake +++ b/build/cmake/setup.cmake @@ -23,6 +23,14 @@ include(CheckTypeSize) include(CMakePushCheckState) include(TestBigEndian) +if( + APPLE AND + CMAKE_OSX_DEPLOYMENT_TARGET VERSION_LESS 10.9 AND + (CMAKE_CXX_STANDARD EQUAL 11 OR CMAKE_CXX_STANDARD EQUAL 14) + ) + set(CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS} "-stdlib=libc++") +endif() + # Add a definition to setup.h and append it to a list of defines for # for compile checks macro(wx_setup_definition def) From 4ec4a41b1ba78feb779259e1b71601cefd7f8cfc Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Thu, 8 Feb 2018 11:01:47 +0100 Subject: [PATCH 344/916] Remove additional macOS flags for cmake build in Travis CI These flags where added as a workaround in bdcf21a5bdae38ed58ae21819dcd6f07d475c188 and should no longer be required --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 66d6216a07..790f5aca76 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,7 +29,7 @@ matrix: env: wxCONFIGURE_FLAGS="--enable-cxx11" wxMAKEFILE_FLAGS="CXXFLAGS=-std=c++11" wxSKIP_SAMPLES=1 - os: osx compiler: clang - env: wxTOOLSET=cmake wxCMAKE_GENERATOR=Xcode wxCMAKE_DEFINES="-DCMAKE_CXX_STANDARD=11 -DCMAKE_CXX_FLAGS=-stdlib=libc++" + env: wxTOOLSET=cmake wxCMAKE_GENERATOR=Xcode wxCMAKE_DEFINES="-DCMAKE_CXX_STANDARD=11" branches: only: From 8f575f03982b3f9c7b536f178639328ad2e9a02d Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 7 Feb 2018 21:05:30 +0100 Subject: [PATCH 345/916] Make the warning about GitHub archives even more prominent The existing warning came too late to be effective, so put it in front to (hopefully) really ensure that people avoid getting the wrong files. --- docs/release.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/release.md b/docs/release.md index 2e7393c662..5f43994e41 100644 --- a/docs/release.md +++ b/docs/release.md @@ -9,7 +9,9 @@ Please see [**README**](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3 ## Source Files and Documentation -If you intend to build wxWidgets from sources (which is recommended), please download `wxWidgets-3.1.1-rc` archive in either [ZIP](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.zip) or [7z](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.7z), for much smaller size, format for Microsoft Windows systems or the [compressed tarball](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.tar.bz2) for Unix ones, including macOS. These archives have exactly the same contents, but use the line endings appropriate for the corresponding platform. Be sure to _not_ download the files available from the "Source code" links above, which are automatically generated by GitHub and don't contain the submodules sources which are necessary for building wxWidgets. +If you intend to build wxWidgets from sources (which is recommended), please do **NOT** download the files using the "Source code" links just above, which are automatically generated by GitHub and don't contain the submodules sources which are necessary for building wxWidgets. + +Instead, download one of [wxWidgets-3.1.1-rc.zip](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.zip) or [wxWidgets-3.1.1-rc.7z](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.7z), for much smaller size, for Microsoft Windows systems or [wxWidgets-3.1.1-rc.tar.bz2](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.tar.bz2) for Unix ones, including macOS. These archives have exactly the same contents, but use the line endings appropriate for the corresponding platform. In addition, we provide archives containing the documentation in either HTML or Microsoft CHM formats. Notice that the documentation is also [available online](http://docs.wxwidgets.org/3.1). From 9a3b1457317bdc82de819c8d6ec5b67958b5b3f6 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Thu, 8 Feb 2018 20:36:48 +0100 Subject: [PATCH 346/916] CMake: Use wx_exe_link_libraries() to link sample libs Fixes a recent regression and it should be used to enable monolithic build --- build/cmake/samples/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/cmake/samples/CMakeLists.txt b/build/cmake/samples/CMakeLists.txt index 40fbf44dd6..36032772fb 100644 --- a/build/cmake/samples/CMakeLists.txt +++ b/build/cmake/samples/CMakeLists.txt @@ -123,7 +123,7 @@ endif() wx_add_sample(sound RES sound.rc DATA 9000g.wav cuckoo.wav doggrowl.wav tinkalink2.wav LIBRARIES adv DEPENDS wxUSE_SOUND) wx_add_sample(splash DATA splash.png press.mpg LIBRARIES adv DEPENDS wxUSE_SPLASH) if(TARGET splash AND wxUSE_MEDIACTRL) - target_link_libraries(splash media) + wx_exe_link_libraries(splash media) endif() wx_add_sample(splitter DEPENDS wxUSE_SPLITTER) wx_add_sample(statbar DEPENDS wxUSE_STATUSBAR) From 623a9123a1deaae4865c53bd8598e8dc4590e9b6 Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Thu, 8 Feb 2018 21:13:44 +0100 Subject: [PATCH 347/916] CMake: Enable multi-processor compilation for MSVC Add option wxBUILD_MSVC_MULTIPROC which defaults to ON to add /MP the MSVC compiler options. --- build/cmake/init.cmake | 5 +++++ build/cmake/options.cmake | 1 + 2 files changed, 6 insertions(+) diff --git a/build/cmake/init.cmake b/build/cmake/init.cmake index bb17e3fd85..06256b1b1d 100644 --- a/build/cmake/init.cmake +++ b/build/cmake/init.cmake @@ -22,6 +22,11 @@ if(DEFINED wxBUILD_USE_STATIC_RUNTIME AND wxBUILD_USE_STATIC_RUNTIME) endforeach() endif() +if(wxBUILD_MSVC_MULTIPROC) + wx_string_append(CMAKE_C_FLAGS " /MP") + wx_string_append(CMAKE_CXX_FLAGS " /MP") +endif() + if(wxBUILD_COMPATIBILITY VERSION_LESS 3.0) set(WXWIN_COMPATIBILITY_2_8 ON) endif() diff --git a/build/cmake/options.cmake b/build/cmake/options.cmake index 5d1d9a606e..b01db3261f 100644 --- a/build/cmake/options.cmake +++ b/build/cmake/options.cmake @@ -25,6 +25,7 @@ mark_as_advanced(wxBUILD_CUSTOM_SETUP_HEADER_PATH) if(MSVC) wx_option(wxBUILD_USE_STATIC_RUNTIME "Link using the static runtime library" OFF) + wx_option(wxBUILD_MSVC_MULTIPROC "Enable multi-processor compilation for MSVC") else() # Other compilers support setting the C++ standard, present it an option to the user if(DEFINED CMAKE_CXX_STANDARD) From 32fe8b4b43ae4ae3531b4d6ebb371d262879d879 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 10 Feb 2018 08:49:25 -0800 Subject: [PATCH 348/916] build fixes for wxUSE_UNICODE==0 --- src/gtk/assertdlg_gtk.cpp | 4 ++-- src/gtk/button.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gtk/assertdlg_gtk.cpp b/src/gtk/assertdlg_gtk.cpp index 12cc36109f..f71bba371c 100644 --- a/src/gtk/assertdlg_gtk.cpp +++ b/src/gtk/assertdlg_gtk.cpp @@ -177,8 +177,8 @@ static void gtk_assert_dialog_save_backtrace_callback(GtkWidget*, GtkAssertDialo dialog = gtk_file_chooser_dialog_new ("Save assert info to file", GTK_WINDOW(dlg), GTK_FILE_CHOOSER_ACTION_SAVE, - static_cast(wxGTK_CONV(wxConvertMnemonicsToGTK(wxGetStockLabel(wxID_CANCEL)))), GTK_RESPONSE_CANCEL, - static_cast(wxGTK_CONV(wxConvertMnemonicsToGTK(wxGetStockLabel(wxID_SAVE)))), GTK_RESPONSE_ACCEPT, + static_cast(wxConvertMnemonicsToGTK(wxGetStockLabel(wxID_CANCEL)).utf8_str()), GTK_RESPONSE_CANCEL, + static_cast(wxConvertMnemonicsToGTK(wxGetStockLabel(wxID_SAVE)).utf8_str()), GTK_RESPONSE_ACCEPT, NULL); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) diff --git a/src/gtk/button.cpp b/src/gtk/button.cpp index 6121109932..96e1fb2605 100644 --- a/src/gtk/button.cpp +++ b/src/gtk/button.cpp @@ -183,7 +183,7 @@ wxSize wxButtonBase::GetDefaultSize() GtkWidget *box = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL); #if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,10,0) wxString labelGTK = GTKConvertMnemonics(wxGetStockLabel(wxID_CANCEL)); - GtkWidget *btn = gtk_button_new_with_mnemonic(wxGTK_CONV(labelGTK)); + GtkWidget *btn = gtk_button_new_with_mnemonic(labelGTK.utf8_str()); #else GtkWidget *btn = gtk_button_new_from_stock(GTK_STOCK_CANCEL); #endif // GTK >= 3.10 / < 3.10 From c6a750c7b832924820a10b4af242c50106d97ebf Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Tue, 31 Jan 2017 20:09:41 -0800 Subject: [PATCH 349/916] Add missing wxImageHandler::SetType --- interface/wx/image.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/interface/wx/image.h b/interface/wx/image.h index eb5fabb4da..0b3c85b315 100644 --- a/interface/wx/image.h +++ b/interface/wx/image.h @@ -321,6 +321,14 @@ public: */ void SetName(const wxString& name); + /** + Sets the bitmap type for the handler. + + @param mimetype + The bitmap type. + */ + void SetType(wxBitmapType type); + /** Retrieve the version information about the image library used by this handler. From ce9dc25b5ed66d1d1d7cd1b44f76a74a45734cc4 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Thu, 2 Feb 2017 09:54:12 -0800 Subject: [PATCH 350/916] SetSelection returns an int, not a size_t --- interface/wx/aui/auibook.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/wx/aui/auibook.h b/interface/wx/aui/auibook.h index 50db1b0d02..0f168ba8b8 100644 --- a/interface/wx/aui/auibook.h +++ b/interface/wx/aui/auibook.h @@ -361,7 +361,7 @@ public: /** Sets the page selection. Calling this method will generate a page change event. */ - size_t SetSelection(size_t new_page); + int SetSelection(size_t new_page); /** Sets the tab height. By default, the tab control height is calculated From a6c864ae7892bc8777b3e373ca43d1187135d78f Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Thu, 27 Apr 2017 09:28:22 -0700 Subject: [PATCH 351/916] Add a missing constant and enum --- interface/wx/grid.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/interface/wx/grid.h b/interface/wx/grid.h index 6df1a21d05..d4d38c9513 100644 --- a/interface/wx/grid.h +++ b/interface/wx/grid.h @@ -5,6 +5,21 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// + +/// Magic constant which tells (to some functions) to automatically calculate +/// the appropriate size +#define wxGRID_AUTOSIZE (-1) + +/// Many wxGrid methods work either with columns or rows, this enum is used for +/// the parameter indicating which one should it be +enum wxGridDirection +{ + wxGRID_COLUMN, + wxGRID_ROW +}; + + + /** @class wxGridCellRenderer From 6cdf29760d06134bb5a377d95d4ac8b4d90f80f3 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Fri, 9 Feb 2018 14:33:48 -0800 Subject: [PATCH 352/916] Fix conflict in macro and class name --- include/wx/event.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/wx/event.h b/include/wx/event.h index c9d95501d8..ae14ebb8a3 100644 --- a/include/wx/event.h +++ b/include/wx/event.h @@ -4204,7 +4204,7 @@ typedef void (wxEvtHandler::*wxPressAndTapEventFunction)(wxPressAndTapEvent&); wxEVENT_HANDLER_CAST(wxTwoFingerTapEventFunction, func) #define wxLongPressEventHandler(func) \ wxEVENT_HANDLER_CAST(wxLongPressEventFunction, func) -#define wxPressAndTapEvent(func) \ +#define wxPressAndTapEventHandler(func) \ wxEVENT_HANDLER_CAST(wxPressAndTapEventFunction, func) #endif // wxUSE_GUI From c27f1536ba48541f8950828e434f1b67f6db9856 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Fri, 9 Feb 2018 14:34:22 -0800 Subject: [PATCH 353/916] Fix InheritsForegroundColour method name --- include/wx/window.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/wx/window.h b/include/wx/window.h index 8046223a4a..b2375b2db5 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -1151,7 +1151,7 @@ public: { return m_hasFgCol; } - bool InheritsForgroundColour() const + bool InheritsForegroundColour() const { return m_inheritFgCol; } From 5e01658cdc4a57bc974dfe0c23fe3c082e5b6efc Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Fri, 9 Feb 2018 14:40:41 -0800 Subject: [PATCH 354/916] Lots more fixes for incorrect or missing interfaces items. --- interface/wx/aui/floatpane.h | 33 + interface/wx/dataview.h | 30 +- interface/wx/event.h | 11 +- interface/wx/graphics.h | 2 - interface/wx/grid.h | 8 +- interface/wx/pen.h | 2 - interface/wx/propgrid/advprops.h | 351 ++++++++++ interface/wx/propgrid/editors.h | 38 +- interface/wx/propgrid/property.h | 24 +- interface/wx/propgrid/propgridpagestate.h | 18 +- interface/wx/propgrid/props.h | 812 ++++++++++++++++++++++ interface/wx/richtext/richtextbuffer.h | 2 +- interface/wx/toolbar.h | 13 + interface/wx/window.h | 4 +- 14 files changed, 1275 insertions(+), 73 deletions(-) create mode 100644 interface/wx/aui/floatpane.h create mode 100644 interface/wx/propgrid/advprops.h create mode 100644 interface/wx/propgrid/props.h diff --git a/interface/wx/aui/floatpane.h b/interface/wx/aui/floatpane.h new file mode 100644 index 0000000000..6bad7019fa --- /dev/null +++ b/interface/wx/aui/floatpane.h @@ -0,0 +1,33 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/aui/floatpane.h +// Purpose: wxaui: wx advanced user interface - docking window manager +// Author: Benjamin I. Williams +// Modified by: +// Created: 2005-05-17 +// Copyright: (C) Copyright 2005, Kirix Corporation, All Rights Reserved. +// Licence: wxWindows Library Licence, Version 3.1 +/////////////////////////////////////////////////////////////////////////////// + + +class wxAuiFloatingFrame : public wxFrame +{ +public: + wxAuiFloatingFrame(wxWindow* parent, + wxAuiManager* ownerMgr, + const wxAuiPaneInfo& pane, + wxWindowID id = wxID_ANY, + long style = wxRESIZE_BORDER | wxSYSTEM_MENU | wxCAPTION | + wxFRAME_NO_TASKBAR | wxFRAME_FLOAT_ON_PARENT | + wxCLIP_CHILDREN + ); + virtual ~wxAuiFloatingFrame(); + void SetPaneWindow(const wxAuiPaneInfo& pane); + wxAuiManager* GetOwnerManager() const; + +protected: + virtual void OnMoveStart(); + virtual void OnMoving(const wxRect& windowRect, wxDirection dir); + virtual void OnMoveFinished(); +}; + + diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 81c493efa4..c2214852c7 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3667,11 +3667,32 @@ class wxDataViewEvent : public wxNotifyEvent { public: /** - Constructor. Typically used by wxWidgets internals only. + Default ctor, normally shouldn't be used and mostly exists only for + backwards compatibility. */ - wxDataViewEvent(wxEventType commandType = wxEVT_NULL, - int winid = 0); + wxDataViewEvent(); + /** + Constructor for the events affecting columns (and possibly also items). + */ + wxDataViewEvent(wxEventType evtType, + wxDataViewCtrl* dvc, + wxDataViewColumn* column, + const wxDataViewItem& item = wxDataViewItem()); + + /** + Constructor for the events affecting only the items. + */ + wxDataViewEvent(wxEventType evtType, + wxDataViewCtrl* dvc, + const wxDataViewItem& item); + + /** + Copy constructor. + */ + wxDataViewEvent(const wxDataViewEvent& event); + + /** Returns the position of the column in the control or -1 if no column field was set by the event emitter. @@ -3808,7 +3829,6 @@ public: int GetCacheTo() const; - /** Returns the item affected by the event. @@ -3817,6 +3837,7 @@ public: indicating that the drop is about to happen outside of the item area. */ wxDataViewItem GetItem() const; + void SetItem( const wxDataViewItem &item ); void SetPosition( int x, int y ); void SetCache(int from, int to); @@ -3826,6 +3847,7 @@ public: void SetDataBuffer( void* buf ); int GetDragFlags() const; void SetDropEffect( wxDragResult effect ); + void SetEditCancelled(); }; diff --git a/interface/wx/event.h b/interface/wx/event.h index 60e6f98475..7272ace498 100644 --- a/interface/wx/event.h +++ b/interface/wx/event.h @@ -3721,7 +3721,7 @@ public: @since 3.1.1 */ -class wxPanGestureEvent : class wxGestureEvent +class wxPanGestureEvent : public wxGestureEvent { public: /** @@ -3773,7 +3773,7 @@ public: /** Sets the zoom Factor. */ - double SetZoomFactor() const; + void SetZoomFactor(double zoomFactor); }; @@ -4930,6 +4930,7 @@ wxEventType wxEVT_SET_FOCUS; wxEventType wxEVT_KILL_FOCUS; wxEventType wxEVT_CHILD_FOCUS; wxEventType wxEVT_MOUSEWHEEL; +wxEventType wxEVT_MAGNIFY; wxEventType wxEVT_AUX1_DOWN; wxEventType wxEVT_AUX1_UP; wxEventType wxEVT_AUX1_DCLICK; @@ -4963,6 +4964,12 @@ wxEventType wxEVT_SCROLLWIN_PAGEUP; wxEventType wxEVT_SCROLLWIN_PAGEDOWN; wxEventType wxEVT_SCROLLWIN_THUMBTRACK; wxEventType wxEVT_SCROLLWIN_THUMBRELEASE; +wxEventType wxEVT_GESTURE_PAN; +wxEventType wxEVT_GESTURE_ZOOM; +wxEventType wxEVT_GESTURE_ROTATE; +wxEventType wxEVT_TWO_FINGER_TAP; +wxEventType wxEVT_LONG_PRESS; +wxEventType wxEVT_PRESS_AND_TAP; wxEventType wxEVT_SIZE; wxEventType wxEVT_MOVE; wxEventType wxEVT_CLOSE_WINDOW; diff --git a/interface/wx/graphics.h b/interface/wx/graphics.h index 84ab4dd929..792821e61d 100644 --- a/interface/wx/graphics.h +++ b/interface/wx/graphics.h @@ -1573,8 +1573,6 @@ public: wxGraphicsPenInfo& Style(wxPenStyle style); - wxGraphicsPenInfo& Style(wxPenStyle style); - wxGraphicsPenInfo& Stipple(const wxBitmap& stipple); wxGraphicsPenInfo& Dashes(int nb_dashes, const wxDash *dash); diff --git a/interface/wx/grid.h b/interface/wx/grid.h index d4d38c9513..2426c89714 100644 --- a/interface/wx/grid.h +++ b/interface/wx/grid.h @@ -84,8 +84,8 @@ public: @since 3.1.0 */ - virtual wxSize GetBestHeight(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, - int row, int col, int width); + virtual int GetBestHeight(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, + int row, int col, int width); /** Get the preferred width of the cell at the given height. @@ -94,8 +94,8 @@ public: @since 3.1.0 */ - virtual wxSize GetBestWidth(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, - int row, int col, int height); + virtual int GetBestWidth(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, + int row, int col, int height); protected: /** diff --git a/interface/wx/pen.h b/interface/wx/pen.h index 04000e478f..13f7e65ce6 100644 --- a/interface/wx/pen.h +++ b/interface/wx/pen.h @@ -130,8 +130,6 @@ public: wxPenInfo& Style(wxPenStyle style); - wxPenInfo& Style(wxPenStyle style); - wxPenInfo& Stipple(const wxBitmap& stipple); wxPenInfo& Dashes(int nb_dashes, const wxDash *dash); diff --git a/interface/wx/propgrid/advprops.h b/interface/wx/propgrid/advprops.h new file mode 100644 index 0000000000..0e6a9bcc25 --- /dev/null +++ b/interface/wx/propgrid/advprops.h @@ -0,0 +1,351 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: advprops.h +// Purpose: interfaces of wxPropertyGrid Advanced Properties (font, +// colour, etc.) +// Author: wxWidgets team +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + + + + +// Web colour is currently unsupported +#define wxPG_COLOUR_WEB_BASE 0x10000 + + +#define wxPG_COLOUR_CUSTOM 0xFFFFFF +#define wxPG_COLOUR_UNSPECIFIED (wxPG_COLOUR_CUSTOM+1) + +/** @class wxColourPropertyValue + + Because text, background and other colours tend to differ between + platforms, wxSystemColourProperty must be able to select between system + colour and, when necessary, to pick a custom one. wxSystemColourProperty + value makes this possible. +*/ +class wxColourPropertyValue : public wxObject +{ +public: + /** An integer value relating to the colour, and which exact + meaning depends on the property with which it is used. + + For wxSystemColourProperty: + + Any of wxSYS_COLOUR_XXX, or any web-colour ( use wxPG_TO_WEB_COLOUR + macro - (currently unsupported) ), or wxPG_COLOUR_CUSTOM. + + For custom colour properties without values array specified: + + index or wxPG_COLOUR_CUSTOM + + For custom colour properties with values array specified: + + m_arrValues[index] or wxPG_COLOUR_CUSTOM + */ + wxUint32 m_type; + + /** Resulting colour. Should be correct regardless of type. */ + wxColour m_colour; + + wxColourPropertyValue(); + wxColourPropertyValue( const wxColourPropertyValue& v ); + wxColourPropertyValue( const wxColour& colour ); + wxColourPropertyValue( wxUint32 type ); + wxColourPropertyValue( wxUint32 type, const wxColour& colour ); + + virtual ~wxColourPropertyValue(); + + void Init( wxUint32 type, const wxColour& colour ); + + void operator=(const wxColourPropertyValue& cpv); +}; + + + +/** @class wxFontProperty + @ingroup classes + Property representing wxFont. +*/ +class wxFontProperty : public wxPGProperty +{ +public: + + wxFontProperty(const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxFont& value = wxFont()); + virtual ~wxFontProperty(); + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool OnEvent( wxPropertyGrid* propgrid, + wxWindow* primary, wxEvent& event ); + virtual wxVariant ChildChanged( wxVariant& thisValue, + int childIndex, + wxVariant& childValue ) const; + virtual void RefreshChildren(); +}; + + + + +/** If set, then match from list is searched for a custom colour. */ +#define wxPG_PROP_TRANSLATE_CUSTOM wxPG_PROP_CLASS_SPECIFIC_1 + + +/** @class wxSystemColourProperty + @ingroup classes + Has dropdown list of wxWidgets system colours. Value used is + of wxColourPropertyValue type. +*/ +class wxSystemColourProperty : public wxEnumProperty +{ +public: + + wxSystemColourProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxColourPropertyValue& + value = wxColourPropertyValue() ); + virtual ~wxSystemColourProperty(); + + virtual void OnSetValue(); + virtual bool IntToValue(wxVariant& variant, + int number, + int argFlags = 0) const; + + /** + Override in derived class to customize how colours are printed as + strings. + */ + virtual wxString ColourToString( const wxColour& col, int index, + int argFlags = 0 ) const; + + /** Returns index of entry that triggers colour picker dialog + (default is last). + */ + virtual int GetCustomColourIndex() const; + + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool OnEvent( wxPropertyGrid* propgrid, + wxWindow* primary, wxEvent& event ); + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + virtual wxSize OnMeasureImage( int item ) const; + virtual void OnCustomPaint( wxDC& dc, + const wxRect& rect, wxPGPaintData& paintdata ); + + // Helper function to show the colour dialog + bool QueryColourFromUser( wxVariant& variant ) const; + + /** Default is to use wxSystemSettings::GetColour(index). Override to use + custom colour tables etc. + */ + virtual wxColour GetColour( int index ) const; + + wxColourPropertyValue GetVal( const wxVariant* pVariant = NULL ) const; + +protected: + + // Special constructors to be used by derived classes. + wxSystemColourProperty( const wxString& label, const wxString& name, + const wxChar* const* labels, const long* values, wxPGChoices* choicesCache, + const wxColourPropertyValue& value ); + + wxSystemColourProperty( const wxString& label, const wxString& name, + const wxChar* const* labels, const long* values, wxPGChoices* choicesCache, + const wxColour& value ); + + void Init( int type, const wxColour& colour ); + + // Utility functions for internal use + virtual wxVariant DoTranslateVal( wxColourPropertyValue& v ) const; + wxVariant TranslateVal( wxColourPropertyValue& v ) const; + wxVariant TranslateVal( int type, const wxColour& colour ) const; + + // Translates colour to a int value, return wxNOT_FOUND if no match. + int ColToInd( const wxColour& colour ) const; +}; + + + +class wxColourProperty : public wxSystemColourProperty +{ +public: + wxColourProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxColour& value = *wxWHITE ); + virtual ~wxColourProperty(); + + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual wxColour GetColour( int index ) const; + +protected: + virtual wxVariant DoTranslateVal( wxColourPropertyValue& v ) const; +}; + + + +/** @class wxCursorProperty + @ingroup classes + Property representing wxCursor. +*/ +class wxCursorProperty : public wxEnumProperty +{ +public: + wxCursorProperty( const wxString& label= wxPG_LABEL, + const wxString& name= wxPG_LABEL, + int value = 0 ); + virtual ~wxCursorProperty(); + + virtual wxSize OnMeasureImage( int item ) const; + virtual void OnCustomPaint( wxDC& dc, + const wxRect& rect, wxPGPaintData& paintdata ); +}; + + +const wxString& wxPGGetDefaultImageWildcard(); + +/** @class wxImageFileProperty + @ingroup classes + Property representing image file(name). +*/ +class wxImageFileProperty : public wxFileProperty +{ +public: + + wxImageFileProperty( const wxString& label= wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxString& value = wxEmptyString); + virtual ~wxImageFileProperty(); + + virtual void OnSetValue(); + + virtual wxSize OnMeasureImage( int item ) const; + virtual void OnCustomPaint( wxDC& dc, + const wxRect& rect, wxPGPaintData& paintdata ); + +protected: + wxBitmap* m_pBitmap; // final thumbnail area + wxImage* m_pImage; // intermediate thumbnail area +}; + + + +/** @class wxMultiChoiceProperty + @ingroup classes + Property that manages a value resulting from wxMultiChoiceDialog. Value is + array of strings. You can get value as array of choice values/indices by + calling wxMultiChoiceProperty::GetValueAsArrayInt(). + + Supported special attributes: + - "UserStringMode": If > 0, allow user to manually enter strings that are + not in the list of choices. If this value is 1, user strings are + preferably placed in front of valid choices. If value is 2, then those + strings will placed behind valid choices. +*/ +class wxMultiChoiceProperty : public wxPGProperty +{ +public: + + wxMultiChoiceProperty( const wxString& label, + const wxString& name, + const wxArrayString& strings, + const wxArrayString& value ); + wxMultiChoiceProperty( const wxString& label, + const wxString& name, + const wxPGChoices& choices, + const wxArrayString& value = wxArrayString() ); + + wxMultiChoiceProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxArrayString& value = wxArrayString() ); + + virtual ~wxMultiChoiceProperty(); + + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue(wxVariant& variant, + const wxString& text, + int argFlags = 0) const; + virtual bool OnEvent( wxPropertyGrid* propgrid, + wxWindow* primary, wxEvent& event ); + + wxArrayInt GetValueAsArrayInt() const; + +protected: + + void GenerateValueAsString( wxVariant& value, wxString* target ) const; + + // Returns translation of values into string indices. + wxArrayInt GetValueAsIndices() const; + + wxArrayString m_valueAsStrings; // Value as array of strings + + // Cache displayed text since generating it is relatively complicated. + wxString m_display; +}; + + + +/** @class wxDateProperty + @ingroup classes + Property representing wxDateTime. + + Supported special attributes: + - "DateFormat": Determines displayed date format. + - "PickerStyle": Determines window style used with wxDatePickerCtrl. + Default is wxDP_DEFAULT | wxDP_SHOWCENTURY. Using wxDP_ALLOWNONE + enables additional support for unspecified property value. +*/ +class wxDateProperty : public wxPGProperty +{ +public: + + wxDateProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxDateTime& value = wxDateTime() ); + virtual ~wxDateProperty(); + + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue(wxVariant& variant, + const wxString& text, + int argFlags = 0) const; + + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + + void SetFormat( const wxString& format ); + const wxString& GetFormat() const; + + void SetDateValue( const wxDateTime& dt ); + wxDateTime GetDateValue() const; + + long GetDatePickerStyle() const; + +protected: + wxString m_format; + long m_dpStyle; // DatePicker style + + static wxString ms_defaultDateFormat; + static wxString DetermineDefaultDateFormat( bool showCentury ); +}; + + + +class wxPGSpinCtrlEditor : public wxPGTextCtrlEditor +{ +public: + virtual ~wxPGSpinCtrlEditor(); + + wxString GetName() const; + virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid, + wxPGProperty* property, + const wxPoint& pos, + const wxSize& size) const; + virtual bool OnEvent( wxPropertyGrid* propgrid, wxPGProperty* property, + wxWindow* wnd, wxEvent& event ) const; +}; + + +extern wxPGEditor* wxPGEditor_SpinCtrl; +extern wxPGEditor* wxPGEditor_DatePickerCtrl; diff --git a/interface/wx/propgrid/editors.h b/interface/wx/propgrid/editors.h index 32d8f83748..6fe9c15544 100644 --- a/interface/wx/propgrid/editors.h +++ b/interface/wx/propgrid/editors.h @@ -578,35 +578,9 @@ public: wxSize GetPrimarySize() const; }; -/** @class wxPGEditorDialogAdapter - - Derive a class from this to adapt an existing editor dialog or function to - be used when editor button of a property is pushed. - - You only need to derive class and implement DoShowDialog() to create and - show the dialog, and finally submit the value returned by the dialog - via SetValue(). - - @library{wxpropgrid} - @category{propgrid} -*/ -class wxPGEditorDialogAdapter : public wxObject -{ -public: - wxPGEditorDialogAdapter(); - - virtual ~wxPGEditorDialogAdapter(); - - bool ShowDialog( wxPropertyGrid* propGrid, wxPGProperty* property ); - - virtual bool DoShowDialog( wxPropertyGrid* propGrid, - wxPGProperty* property ) = 0; - - void SetValue( wxVariant value ); - - /** - This method is typically only used if deriving class from existing - adapter with value conversion purposes. - */ - wxVariant& GetValue(); -}; +extern wxPGEditor* wxPGEditor_TextCtrl; +extern wxPGEditor* wxPGEditor_Choice; +extern wxPGEditor* wxPGEditor_ComboBox; +extern wxPGEditor* wxPGEditor_TextCtrlAndButton; +extern wxPGEditor* wxPGEditor_CheckBox; +extern wxPGEditor* wxPGEditor_ChoiceAndButton; diff --git a/interface/wx/propgrid/property.h b/interface/wx/propgrid/property.h index 8f56e84036..e12ad51e3f 100644 --- a/interface/wx/propgrid/property.h +++ b/interface/wx/propgrid/property.h @@ -2190,7 +2190,7 @@ public: /** Paints property category selection rectangle. */ - virtual void DrawCaptionSelectionRect(wxWindow *win, wxDC& dc, + virtual void DrawCaptionSelectionRect(wxDC& dc, int x, int y, int w, int h) const; /** Utility to draw vertically centered text. @@ -2706,28 +2706,6 @@ protected: // ----------------------------------------------------------------------- -/** @class wxPGChoiceEntry - - Data of a single wxPGChoices choice. -*/ -class wxPGChoiceEntry : public wxPGCell -{ -public: - wxPGChoiceEntry(); - wxPGChoiceEntry(const wxPGChoiceEntry& other); - wxPGChoiceEntry( const wxString& label, - int value = wxPG_INVALID_VALUE ); - - virtual ~wxPGChoiceEntry(); - - void SetValue( int value ); - int GetValue() const; - - wxPGChoiceEntry& operator=( const wxPGChoiceEntry& other ); -}; - -// ----------------------------------------------------------------------- - /** @class wxPGRootProperty Root parent property. diff --git a/interface/wx/propgrid/propgridpagestate.h b/interface/wx/propgrid/propgridpagestate.h index 328af6c0c6..1a392b7659 100644 --- a/interface/wx/propgrid/propgridpagestate.h +++ b/interface/wx/propgrid/propgridpagestate.h @@ -225,7 +225,14 @@ public: class wxPropertyGridIterator : public wxPropertyGridIteratorBase { public: -}; + wxPropertyGridIterator(); + wxPropertyGridIterator( wxPropertyGridPageState* state, + int flags = wxPG_ITERATE_DEFAULT, + wxPGProperty* property = NULL, int dir = 1 ); + wxPropertyGridIterator( wxPropertyGridPageState* state, + int flags, int startPos, int dir = 0 ); + wxPropertyGridIterator( const wxPropertyGridIterator& it ); + ~wxPropertyGridIterator();}; /** Const version of wxPropertyGridIterator. @@ -242,6 +249,15 @@ public: Additional assignment operator. */ const wxPropertyGridConstIterator& operator=( const wxPropertyGridIterator& it ); + + wxPropertyGridConstIterator(); + wxPropertyGridConstIterator( const wxPropertyGridPageState* state, + int flags = wxPG_ITERATE_DEFAULT, + const wxPGProperty* property = NULL, int dir = 1 ); + wxPropertyGridConstIterator( wxPropertyGridPageState* state, + int flags, int startPos, int dir = 0 ); + wxPropertyGridConstIterator( const wxPropertyGridConstIterator& it ); + ~wxPropertyGridConstIterator(); }; /** @} diff --git a/interface/wx/propgrid/props.h b/interface/wx/propgrid/props.h new file mode 100644 index 0000000000..564916c829 --- /dev/null +++ b/interface/wx/propgrid/props.h @@ -0,0 +1,812 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: props.h +// Purpose: interface of some wxPGProperty subclasses +// Author: wxWidgets team +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + + + +/** @class wxPGInDialogValidator + @ingroup classes + Creates and manages a temporary wxTextCtrl for validation purposes. + Uses wxPropertyGrid's current editor, if available. +*/ +class wxPGInDialogValidator +{ +public: + wxPGInDialogValidator(); + ~wxPGInDialogValidator(); + + bool DoValidate( wxPropertyGrid* propGrid, + wxValidator* validator, + const wxString& value ); +}; + + +// ----------------------------------------------------------------------- +// Property classes +// ----------------------------------------------------------------------- + +#define wxPG_PROP_PASSWORD wxPG_PROP_CLASS_SPECIFIC_2 + +/** @class wxStringProperty + @ingroup classes + Basic property with string value. + + Supported special attributes: + - "Password": set to 1 in order to enable wxTE_PASSWORD on the editor. + + @remarks + - If value "" is set, then actual value is formed (or composed) + from values of child properties. +*/ +class wxStringProperty : public wxPGProperty +{ +public: + wxStringProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxString& value = wxEmptyString ); + virtual ~wxStringProperty(); + + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + + /** This is updated so "" special value can be handled. + */ + virtual void OnSetValue(); +}; + + +/** Constants used with NumericValidation<>(). +*/ +enum wxPGNumericValidationConstants +{ + /** Instead of modifying the value, show an error message. + */ + wxPG_PROPERTY_VALIDATION_ERROR_MESSAGE = 0, + + /** Modify value, but stick with the limitations. + */ + wxPG_PROPERTY_VALIDATION_SATURATE = 1, + + /** Modify value, wrap around on overflow. + */ + wxPG_PROPERTY_VALIDATION_WRAP = 2 +}; + + + +/** + A more comprehensive numeric validator class. +*/ +class wxNumericPropertyValidator : public wxTextValidator +{ +public: + enum NumericType + { + Signed = 0, + Unsigned, + Float + }; + + wxNumericPropertyValidator( NumericType numericType, int base = 10 ); + virtual ~wxNumericPropertyValidator() { } + virtual bool Validate(wxWindow* parent); +}; + + + +/** @class wxIntProperty + @ingroup classes + Basic property with integer value. + + Seamlessly supports 64-bit integer (wxLongLong) on overflow. + + Example how to use seamless 64-bit integer support + + Getting value: + + @code + wxLongLong_t value = pg->GetPropertyValueAsLongLong(); + @endcode + + or + + @code + wxLongLong_t value; + wxVariant variant = property->GetValue(); + if ( variant.GetType() == "wxLongLong" ) + value = wxLongLongFromVariant(variant); + else + value = variant.GetLong(); + @endcode + + Setting value: + + @code + pg->SetPropertyValue(longLongVal); + @endcode + + or + + @code + property->SetValue(WXVARIANT(longLongVal)); + @endcode + + + Supported special attributes: + - "Min", "Max": Specify acceptable value range. +*/ +class wxIntProperty : public wxPGProperty +{ +public: + wxIntProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + long value = 0 ); + virtual ~wxIntProperty(); + + wxIntProperty( const wxString& label, + const wxString& name, + const wxLongLong& value ); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool ValidateValue( wxVariant& value, + wxPGValidationInfo& validationInfo ) const; + virtual bool IntToValue( wxVariant& variant, + int number, + int argFlags = 0 ) const; + static wxValidator* GetClassValidator(); + virtual wxValidator* DoGetValidator() const; + + /** Validation helper. + */ + static bool DoValidation( const wxPGProperty* property, + wxLongLong_t& value, + wxPGValidationInfo* pValidationInfo, + int mode = + wxPG_PROPERTY_VALIDATION_ERROR_MESSAGE ); +}; + + +/** @class wxUIntProperty + @ingroup classes + Basic property with unsigned integer value. + Seamlessly supports 64-bit integer (wxULongLong) on overflow. + + Supported special attributes: + - "Min", "Max": Specify acceptable value range. + - "Base": Define base. Valid constants are wxPG_BASE_OCT, wxPG_BASE_DEC, + wxPG_BASE_HEX and wxPG_BASE_HEXL (lowercase characters). Arbitrary bases + are not supported. + - "Prefix": Possible values are wxPG_PREFIX_NONE, wxPG_PREFIX_0x, and + wxPG_PREFIX_DOLLAR_SIGN. Only wxPG_PREFIX_NONE works with Decimal and Octal + numbers. + + @remarks + - For example how to use seamless 64-bit integer support, see wxIntProperty + documentation (just use wxULongLong instead of wxLongLong). +*/ +class wxUIntProperty : public wxPGProperty +{ +public: + wxUIntProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + unsigned long value = 0 ); + virtual ~wxUIntProperty(); + wxUIntProperty( const wxString& label, + const wxString& name, + const wxULongLong& value ); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + virtual bool ValidateValue( wxVariant& value, + wxPGValidationInfo& validationInfo ) const; + virtual wxValidator* DoGetValidator () const; + virtual bool IntToValue( wxVariant& variant, + int number, + int argFlags = 0 ) const; +protected: + wxByte m_base; + wxByte m_realBase; // translated to 8,16,etc. + wxByte m_prefix; +}; + + +/** @class wxFloatProperty + @ingroup classes + Basic property with double-precision floating point value. + + Supported special attributes: + - "Precision": Sets the (max) precision used when floating point value is + rendered as text. The default -1 means infinite precision. +*/ +class wxFloatProperty : public wxPGProperty +{ +public: + wxFloatProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + double value = 0.0 ); + virtual ~wxFloatProperty(); + + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + virtual wxVariant DoGetAttribute( const wxString& name ) const; + virtual bool ValidateValue( wxVariant& value, + wxPGValidationInfo& validationInfo ) const; + + /** Validation helper. + */ + static bool DoValidation( const wxPGProperty* property, + double& value, + wxPGValidationInfo* pValidationInfo, + int mode = + wxPG_PROPERTY_VALIDATION_ERROR_MESSAGE ); + static wxValidator* GetClassValidator(); + virtual wxValidator* DoGetValidator () const; + +protected: + int m_precision; +}; + + + +/** @class wxBoolProperty + @ingroup classes + Basic property with boolean value. + + Supported special attributes: + - "UseCheckbox": Set to 1 to use check box editor instead of combo box. + - "UseDClickCycling": Set to 1 to cycle combo box instead showing the list. +*/ +class wxBoolProperty : public wxPGProperty +{ +public: + wxBoolProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + bool value = false ); + virtual ~wxBoolProperty(); + + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool IntToValue( wxVariant& variant, + int number, int argFlags = 0 ) const; + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); +}; + + + +// If set, then selection of choices is static and should not be +// changed (i.e. returns NULL in GetPropertyChoices). +#define wxPG_PROP_STATIC_CHOICES wxPG_PROP_CLASS_SPECIFIC_1 + +/** @class wxEnumProperty + @ingroup classes + You can derive custom properties with choices from this class. See + wxBaseEnumProperty for remarks. + + @remarks + - Updating private index is important. You can do this either by calling + SetIndex() in IntToValue, and then letting wxBaseEnumProperty::OnSetValue + be called (by not implementing it, or by calling super class function in + it) -OR- you can just call SetIndex in OnSetValue. +*/ +class wxEnumProperty : public wxPGProperty +{ +public: + wxEnumProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxChar* const* labels = NULL, + const long* values = NULL, + int value = 0 ); + + wxEnumProperty( const wxString& label, + const wxString& name, + wxPGChoices& choices, + int value = 0 ); + + // Special constructor for caching choices (used by derived class) + wxEnumProperty( const wxString& label, + const wxString& name, + const wxChar* const* labels, + const long* values, + wxPGChoices* choicesCache, + int value = 0 ); + + wxEnumProperty( const wxString& label, + const wxString& name, + const wxArrayString& labels, + const wxArrayInt& values = wxArrayInt(), + int value = 0 ); + + virtual ~wxEnumProperty(); + + size_t GetItemCount() const; + + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool ValidateValue( wxVariant& value, + wxPGValidationInfo& validationInfo ) const; + + // If wxPG_FULL_VALUE is not set in flags, then the value is interpreted + // as index to choices list. Otherwise, it is actual value. + virtual bool IntToValue( wxVariant& variant, + int number, + int argFlags = 0 ) const; + + // + // Additional virtuals + + // This must be overridden to have non-index based value + virtual int GetIndexForValue( int value ) const; + + // GetChoiceSelection needs to overridden since m_index is + // the true index, and various property classes derived from + // this take advantage of it. + virtual int GetChoiceSelection() const; + + virtual void OnValidationFailure( wxVariant& pendingValue ); + +protected: + + int GetIndex() const; + void SetIndex( int index ); + + bool ValueFromString_( wxVariant& value, + const wxString& text, + int argFlags ) const; + bool ValueFromInt_( wxVariant& value, int intVal, int argFlags ) const; + + static void ResetNextIndex(); + +}; + + + +/** @class wxEditEnumProperty + @ingroup classes + wxEnumProperty with wxString value and writable combo box editor. + + @remarks + Uses int value, similar to wxEnumProperty, unless text entered by user is + is not in choices (in which case string value is used). +*/ +class wxEditEnumProperty : public wxEnumProperty +{ +public: + + wxEditEnumProperty( const wxString& label, + const wxString& name, + const wxChar* const* labels, + const long* values, + const wxString& value ); + + wxEditEnumProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxArrayString& labels = wxArrayString(), + const wxArrayInt& values = wxArrayInt(), + const wxString& value = wxEmptyString ); + + wxEditEnumProperty( const wxString& label, + const wxString& name, + wxPGChoices& choices, + const wxString& value = wxEmptyString ); + + // Special constructor for caching choices (used by derived class) + wxEditEnumProperty( const wxString& label, + const wxString& name, + const wxChar* const* labels, + const long* values, + wxPGChoices* choicesCache, + const wxString& value ); + + virtual ~wxEditEnumProperty(); + +}; + + + +/** @class wxFlagsProperty + @ingroup classes + Represents a bit set that fits in a long integer. wxBoolProperty + sub-properties are created for editing individual bits. Textctrl is created + to manually edit the flags as a text; a continuous sequence of spaces, + commas and semicolons is considered as a flag id separator. + Note: When changing "choices" (ie. flag labels) of wxFlagsProperty, + you will need to use SetPropertyChoices - otherwise they will not get + updated properly. +*/ +class wxFlagsProperty : public wxPGProperty +{ +public: + + wxFlagsProperty( const wxString& label, + const wxString& name, + const wxChar* const* labels, + const long* values = NULL, + long value = 0 ); + + wxFlagsProperty( const wxString& label, + const wxString& name, + wxPGChoices& choices, + long value = 0 ); + + wxFlagsProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxArrayString& labels = wxArrayString(), + const wxArrayInt& values = wxArrayInt(), + int value = 0 ); + + virtual ~wxFlagsProperty (); + + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int flags ) const; + virtual wxVariant ChildChanged( wxVariant& thisValue, + int childIndex, + wxVariant& childValue ) const; + virtual void RefreshChildren(); + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + + // GetChoiceSelection needs to overridden since m_choices is + // used and value is integer, but it is not index. + virtual int GetChoiceSelection() const; + + // helpers + size_t GetItemCount() const; + const wxString& GetLabel( size_t ind ) const; + +protected: + // Used to detect if choices have been changed + wxPGChoicesData* m_oldChoicesData; + + // Needed to properly mark changed sub-properties + long m_oldValue; + + // Converts string id to a relevant bit. + long IdToBit( const wxString& id ) const; + + // Creates children and sets value. + void Init(); +}; + + + +/** @class wxPGFileDialogAdapter + @ingroup classes +*/ +class wxPGFileDialogAdapter : public wxPGEditorDialogAdapter +{ +public: + virtual bool DoShowDialog( wxPropertyGrid* propGrid, + wxPGProperty* property ); +}; + + + +// Indicates first bit useable by derived properties. +#define wxPG_PROP_SHOW_FULL_FILENAME wxPG_PROP_CLASS_SPECIFIC_1 + +/** @class wxFileProperty + @ingroup classes + Like wxLongStringProperty, but the button triggers file selector instead. + + Supported special attributes: + - "Wildcard": Sets wildcard (see wxFileDialog for format details), "All + files..." is default. + - "ShowFullPath": Default 1. When 0, only the file name is shown (i.e. drive + and directory are hidden). + - "ShowRelativePath": If set, then the filename is shown relative to the + given path string. + - "InitialPath": Sets the initial path of where to look for files. + - "DialogTitle": Sets a specific title for the dir dialog. +*/ +class wxFileProperty : public wxPGProperty +{ +public: + + wxFileProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxString& value = wxEmptyString ); + virtual ~wxFileProperty (); + + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual wxPGEditorDialogAdapter* GetEditorDialog() const; + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + + static wxValidator* GetClassValidator(); + virtual wxValidator* DoGetValidator() const; + + /** + Returns filename to file represented by current value. + */ + wxFileName GetFileName() const; + +protected: + wxString m_wildcard; + wxString m_basePath; // If set, then show path relative to it + wxString m_initialPath; // If set, start the file dialog here + wxString m_dlgTitle; // If set, used as title for file dialog + int m_indFilter; // index to the selected filter +}; + + + +#define wxPG_PROP_NO_ESCAPE wxPG_PROP_CLASS_SPECIFIC_1 + +/** @class wxPGLongStringDialogAdapter + @ingroup classes +*/ +class wxPGLongStringDialogAdapter : public wxPGEditorDialogAdapter +{ +public: + virtual bool DoShowDialog( wxPropertyGrid* propGrid, + wxPGProperty* property ); +}; + + +/** @class wxLongStringProperty + @ingroup classes + Like wxStringProperty, but has a button that triggers a small text + editor dialog. +*/ +class wxLongStringProperty : public wxPGProperty +{ +public: + + wxLongStringProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxString& value = wxEmptyString ); + virtual ~wxLongStringProperty(); + + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool OnEvent( wxPropertyGrid* propgrid, + wxWindow* primary, wxEvent& event ); + + // Shows string editor dialog. Value to be edited should be read from + // value, and if dialog is not cancelled, it should be stored back and true + // should be returned if that was the case. + virtual bool OnButtonClick( wxPropertyGrid* propgrid, wxString& value ); + + static bool DisplayEditorDialog( wxPGProperty* prop, + wxPropertyGrid* propGrid, + wxString& value ); +}; + + + + +/** @class wxDirProperty + @ingroup classes + Like wxLongStringProperty, but the button triggers dir selector instead. + + Supported special attributes: + - "DialogMessage": Sets specific message in the dir selector. +*/ +class wxDirProperty : public wxLongStringProperty +{ +public: + wxDirProperty( const wxString& name = wxPG_LABEL, + const wxString& label = wxPG_LABEL, + const wxString& value = wxEmptyString ); + virtual ~wxDirProperty(); + + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + virtual wxValidator* DoGetValidator() const; + + virtual bool OnButtonClick ( wxPropertyGrid* propGrid, wxString& value ); + +protected: + wxString m_dlgMessage; +}; + + +// wxBoolProperty specific flags +#define wxPG_PROP_USE_CHECKBOX wxPG_PROP_CLASS_SPECIFIC_1 +// DCC = Double Click Cycles +#define wxPG_PROP_USE_DCC wxPG_PROP_CLASS_SPECIFIC_2 + + + +/** @class wxArrayStringProperty + @ingroup classes + Property that manages a list of strings. +*/ +class wxArrayStringProperty : public wxPGProperty +{ +public: + wxArrayStringProperty( const wxString& label = wxPG_LABEL, + const wxString& name = wxPG_LABEL, + const wxArrayString& value = wxArrayString() ); + virtual ~wxArrayStringProperty(); + + virtual void OnSetValue(); + virtual wxString ValueToString( wxVariant& value, int argFlags = 0 ) const; + virtual bool StringToValue( wxVariant& variant, + const wxString& text, + int argFlags = 0 ) const; + virtual bool OnEvent( wxPropertyGrid* propgrid, + wxWindow* primary, wxEvent& event ); + virtual bool DoSetAttribute( const wxString& name, wxVariant& value ); + + // Implement in derived class for custom array-to-string conversion. + virtual void ConvertArrayToString(const wxArrayString& arr, + wxString* pString, + const wxUniChar& delimiter) const; + + // Shows string editor dialog. Value to be edited should be read from + // value, and if dialog is not cancelled, it should be stored back and true + // should be returned if that was the case. + virtual bool OnCustomStringEdit( wxWindow* parent, wxString& value ); + + // Helper. + virtual bool OnButtonClick( wxPropertyGrid* propgrid, + wxWindow* primary, + const wxChar* cbt ); + + // Creates wxPGArrayEditorDialog for string editing. Called in OnButtonClick. + virtual wxPGArrayEditorDialog* CreateEditorDialog(); + + enum ConversionFlags + { + Escape = 0x01, + QuoteStrings = 0x02 + }; + + /** + Generates contents for string dst based on the contents of + wxArrayString src. + */ + static void ArrayStringToString( wxString& dst, const wxArrayString& src, + wxUniChar delimiter, int flags ); + +protected: + // Previously this was to be implemented in derived class for array-to- + // string conversion. Now you should implement ConvertValueToString() + // instead. + virtual void GenerateValueAsString(); + + wxString m_display; // Cache for displayed text. + wxUniChar m_delimiter; +}; + + +// ----------------------------------------------------------------------- +// wxPGArrayEditorDialog +// ----------------------------------------------------------------------- + +#define wxAEDIALOG_STYLE \ + (wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxOK | wxCANCEL | wxCENTRE) + +class wxPGArrayEditorDialog : public wxDialog +{ +public: + wxPGArrayEditorDialog(); + virtual ~wxPGArrayEditorDialog(); + + void Init(); + + wxPGArrayEditorDialog( wxWindow *parent, + const wxString& message, + const wxString& caption, + long style = wxAEDIALOG_STYLE, + const wxPoint& pos = wxDefaultPosition, + const wxSize& sz = wxDefaultSize ); + + bool Create( wxWindow *parent, + const wxString& message, + const wxString& caption, + long style = wxAEDIALOG_STYLE, + const wxPoint& pos = wxDefaultPosition, + const wxSize& sz = wxDefaultSize ); + + void EnableCustomNewAction(); + + /** Set value modified by dialog. + */ + virtual void SetDialogValue( const wxVariant& value ); + + /** Return value modified by dialog. + */ + virtual wxVariant GetDialogValue() const; + + /** Override to return wxValidator to be used with the wxTextCtrl + in dialog. Note that the validator is used in the standard + wx way, ie. it immediately prevents user from entering invalid + input. + + @remarks + Dialog frees the validator. + */ + virtual wxValidator* GetTextCtrlValidator() const; + + // Returns true if array was actually modified + bool IsModified() const; + + // wxEditableListBox utilities + int GetSelection() const; + +protected: + wxEditableListBox* m_elb; + + // These are used for focus repair + wxWindow* m_elbSubPanel; + wxWindow* m_lastFocused; + + // A new item, edited by user, is pending at this index. + // It will be committed once list ctrl item editing is done. + int m_itemPendingAtIndex; + + bool m_modified; + bool m_hasCustomNewAction; + + // These must be overridden - must return true on success. + virtual wxString ArrayGet( size_t index ) = 0; + virtual size_t ArrayGetCount() = 0; + virtual bool ArrayInsert( const wxString& str, int index ) = 0; + virtual bool ArraySet( size_t index, const wxString& str ) = 0; + virtual void ArrayRemoveAt( int index ) = 0; + virtual void ArraySwap( size_t first, size_t second ) = 0; + + virtual bool OnCustomNewAction(wxString* resString); +}; + + +// ----------------------------------------------------------------------- +// wxPGArrayStringEditorDialog +// ----------------------------------------------------------------------- + +class wxPGArrayStringEditorDialog : public wxPGArrayEditorDialog +{ +public: + wxPGArrayStringEditorDialog(); + virtual ~wxPGArrayStringEditorDialog() { } + + void Init(); + + virtual void SetDialogValue( const wxVariant& value ); + virtual wxVariant GetDialogValue() const; + + void SetCustomButton( const wxString& custBtText, + wxArrayStringProperty* pcc ); + + virtual bool OnCustomNewAction(wxString* resString); + +protected: + wxArrayString m_array; + + wxArrayStringProperty* m_pCallingClass; + + virtual wxString ArrayGet( size_t index ); + virtual size_t ArrayGetCount(); + virtual bool ArrayInsert( const wxString& str, int index ); + virtual bool ArraySet( size_t index, const wxString& str ); + virtual void ArrayRemoveAt( int index ); + virtual void ArraySwap( size_t first, size_t second ); +}; + diff --git a/interface/wx/richtext/richtextbuffer.h b/interface/wx/richtext/richtextbuffer.h index 833b8400f8..b86c9bd32f 100644 --- a/interface/wx/richtext/richtextbuffer.h +++ b/interface/wx/richtext/richtextbuffer.h @@ -4886,7 +4886,7 @@ public: /** Do the loading and scaling */ - virtual bool LoadAndScaleImageCache(wxImage& image, const wxSize& sz, bool delayLoading, bool& changed); + virtual bool LoadAndScaleImageCache(wxImage& image, const wxSize& sz, wxRichTextDrawingContext& context, bool& changed); /** Gets the image state. diff --git a/interface/wx/toolbar.h b/interface/wx/toolbar.h index da12c697a0..e3a58f53e8 100644 --- a/interface/wx/toolbar.h +++ b/interface/wx/toolbar.h @@ -106,6 +106,7 @@ public: bool IsStretchableSpace() const; int GetStyle() const; wxItemKind GetKind() const; + void MakeStretchable(); bool IsEnabled() const; bool IsToggled() const; @@ -122,9 +123,21 @@ public: wxObject *GetClientData() const; + virtual bool Enable(bool enable); + virtual bool Toggle(bool toggle); + virtual bool SetToggle(bool toggle); + virtual bool SetShortHelp(const wxString& help); + virtual bool SetLongHelp(const wxString& help); + void Toggle(); + virtual void SetNormalBitmap(const wxBitmap& bmp); + virtual void SetDisabledBitmap(const wxBitmap& bmp); + virtual void SetLabel(const wxString& label); + void SetClientData(wxObject *clientData); + virtual void Detach(); virtual void Attach(wxToolBarBase *tbar); + virtual void SetDropdownMenu(wxMenu *menu); wxMenu *GetDropdownMenu() const; }; diff --git a/interface/wx/window.h b/interface/wx/window.h index 1ddd6c345e..6cdd4974c8 100644 --- a/interface/wx/window.h +++ b/interface/wx/window.h @@ -1044,7 +1044,7 @@ public: static wxPoint FromDIP(const wxPoint& pt, const wxWindow* w); /// @overload - static wxSize FromDIP(int d, const wxWindow* w); + static int FromDIP(int d, const wxWindow* w); /** @@ -1111,7 +1111,7 @@ public: static wxPoint ToDIP(const wxPoint& pt, const wxWindow* w); /// @overload - static wxSize ToDIP(int d, const wxWindow* w); + static int ToDIP(int d, const wxWindow* w); /** This functions returns the best acceptable minimal size for the window. From bd1e13df4288911391f22c47a7ecb05cb5058877 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Sat, 10 Feb 2018 15:13:01 -0800 Subject: [PATCH 355/916] Minor cleanup and changes from Code Review comments. --- interface/wx/aui/floatpane.h | 3 --- interface/wx/dataview.h | 2 -- interface/wx/grid.h | 9 --------- interface/wx/toolbar.h | 24 ++++++++++++------------ 4 files changed, 12 insertions(+), 26 deletions(-) diff --git a/interface/wx/aui/floatpane.h b/interface/wx/aui/floatpane.h index 6bad7019fa..04a04a649b 100644 --- a/interface/wx/aui/floatpane.h +++ b/interface/wx/aui/floatpane.h @@ -2,7 +2,6 @@ // Name: wx/aui/floatpane.h // Purpose: wxaui: wx advanced user interface - docking window manager // Author: Benjamin I. Williams -// Modified by: // Created: 2005-05-17 // Copyright: (C) Copyright 2005, Kirix Corporation, All Rights Reserved. // Licence: wxWindows Library Licence, Version 3.1 @@ -29,5 +28,3 @@ protected: virtual void OnMoving(const wxRect& windowRect, wxDirection dir); virtual void OnMoveFinished(); }; - - diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index c2214852c7..9ef314b359 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3847,8 +3847,6 @@ public: void SetDataBuffer( void* buf ); int GetDragFlags() const; void SetDropEffect( wxDragResult effect ); - void SetEditCancelled(); - }; diff --git a/interface/wx/grid.h b/interface/wx/grid.h index 2426c89714..39820c5716 100644 --- a/interface/wx/grid.h +++ b/interface/wx/grid.h @@ -10,15 +10,6 @@ /// the appropriate size #define wxGRID_AUTOSIZE (-1) -/// Many wxGrid methods work either with columns or rows, this enum is used for -/// the parameter indicating which one should it be -enum wxGridDirection -{ - wxGRID_COLUMN, - wxGRID_ROW -}; - - /** @class wxGridCellRenderer diff --git a/interface/wx/toolbar.h b/interface/wx/toolbar.h index e3a58f53e8..783531ab65 100644 --- a/interface/wx/toolbar.h +++ b/interface/wx/toolbar.h @@ -123,21 +123,21 @@ public: wxObject *GetClientData() const; - virtual bool Enable(bool enable); - virtual bool Toggle(bool toggle); - virtual bool SetToggle(bool toggle); - virtual bool SetShortHelp(const wxString& help); - virtual bool SetLongHelp(const wxString& help); + bool Enable(bool enable); + bool Toggle(bool toggle); + bool SetToggle(bool toggle); + bool SetShortHelp(const wxString& help); + bool SetLongHelp(const wxString& help); void Toggle(); - virtual void SetNormalBitmap(const wxBitmap& bmp); - virtual void SetDisabledBitmap(const wxBitmap& bmp); - virtual void SetLabel(const wxString& label); + void SetNormalBitmap(const wxBitmap& bmp); + void SetDisabledBitmap(const wxBitmap& bmp); + void SetLabel(const wxString& label); void SetClientData(wxObject *clientData); - - virtual void Detach(); - virtual void Attach(wxToolBarBase *tbar); - virtual void SetDropdownMenu(wxMenu *menu); + void Detach(); + void Attach(wxToolBarBase *tbar); + + void SetDropdownMenu(wxMenu *menu); wxMenu *GetDropdownMenu() const; }; From a33ce89fec11b48cf4b9e10b8a1c4520bbcccbdc Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sun, 11 Feb 2018 22:16:48 -0800 Subject: [PATCH 356/916] Avoid always consuming mouse wheel event in wxComboCtrl. Allow further processing when key up/down is not handled. See #18073 --- src/common/combocmn.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp index 3dc6901f82..283b0f687c 100644 --- a/src/common/combocmn.cpp +++ b/src/common/combocmn.cpp @@ -1994,7 +1994,9 @@ void wxComboCtrlBase::HandleNormalMouseEvent( wxMouseEvent& event ) kevent.m_keyCode = event.GetWheelRotation() > 0 ? WXK_UP : WXK_DOWN; - GetEventHandler()->ProcessEvent(kevent); + + if (!GetEventHandler()->ProcessEvent(kevent)) + event.Skip(); } else { From bfa7035bdcefaae2a493958ba0bf4c2378c1215c Mon Sep 17 00:00:00 2001 From: Dimitri Schoolwerth Date: Tue, 13 Feb 2018 22:49:36 +0100 Subject: [PATCH 357/916] Fix Xcode compilation When using Xcode to compile wxCocoa a system's expat.h gets included instead of wx', and in the case of wxiOS libexpat is not present and thus expat.h is not found. Fix by correcting the path to expat.h . Regression since 824134d42751e08d2a1a01b67854db4707e62abe . --- build/osx/wx.xcconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/osx/wx.xcconfig b/build/osx/wx.xcconfig index 313f1b9669..42339d528b 100644 --- a/build/osx/wx.xcconfig +++ b/build/osx/wx.xcconfig @@ -11,7 +11,7 @@ OTHER_CPLUSPLUSFLAGS = $(OTHER_CFLAGS) -fvisibility-inlines-hidden GCC_PREFIX_HEADER = $(WXROOT)/include/wx/wxprec.h GCC_PRECOMPILE_PREFIX_HEADER = YES HEADER_SEARCH_PATHS = "$(WXROOT)/src/tiff/libtiff" "$(WXROOT)/src/regex" -USER_HEADER_SEARCH_PATHS = "$(WXROOT)/include" "$(WXROOT)/build/osx/setup/$(WXTOOLKIT)/include" "$(WXROOT)/src/zlib" "$(WXROOT)/src/jpeg" "$(WXROOT)/src/png" "$(WXROOT)/src/expat/lib" "$(WXROOT)/src/tiff/libtiff" "$(WXROOT)/src/stc/scintilla/src" "$(WXROOT)/src/stc/scintilla/include" "$(WXROOT)/src/stc/scintilla/lexlib" +USER_HEADER_SEARCH_PATHS = "$(WXROOT)/include" "$(WXROOT)/build/osx/setup/$(WXTOOLKIT)/include" "$(WXROOT)/src/zlib" "$(WXROOT)/src/jpeg" "$(WXROOT)/src/png" "$(WXROOT)/src/expat/expat/lib" "$(WXROOT)/src/tiff/libtiff" "$(WXROOT)/src/stc/scintilla/src" "$(WXROOT)/src/stc/scintilla/include" "$(WXROOT)/src/stc/scintilla/lexlib" ALWAYS_SEARCH_USER_PATHS = NO WX_PREPROCESSOR_DEFINITIONS = WXBUILDING $(WXPLATFORM) __WX__ _FILE_OFFSET_BITS=64 _LARGE_FILES MACOS_CLASSIC __WXMAC_XCODE__=1 SCI_LEXER NO_CXX11_REGEX WX_PRECOMP=1 wxUSE_UNICODE_UTF8=0 wxUSE_UNICODE_WCHAR=1 GCC_PREPROCESSOR_DEFINITIONS = $(WX_PREPROCESSOR_DEFINITIONS) From 2fb26ae296baf03c4c4488a6cb5e5851483bc23f Mon Sep 17 00:00:00 2001 From: Dimitri Schoolwerth Date: Tue, 13 Feb 2018 23:47:07 +0100 Subject: [PATCH 358/916] Regenerate Xcode projects Update the Xcode projects to use current libjpeg and libpng sources. Regression since a8e7d0ee12becacb2c8754f12069b9f005640fca (for libpng) and cc8657e4363a4670994f2907755d1f7b43d586e9 (libjpeg). --- build/osx/wxcocoa.xcodeproj/project.pbxproj | 296 +++++++++---------- build/osx/wxiphone.xcodeproj/project.pbxproj | 160 +++++----- 2 files changed, 222 insertions(+), 234 deletions(-) diff --git a/build/osx/wxcocoa.xcodeproj/project.pbxproj b/build/osx/wxcocoa.xcodeproj/project.pbxproj index 5d65812d93..2954b26491 100644 --- a/build/osx/wxcocoa.xcodeproj/project.pbxproj +++ b/build/osx/wxcocoa.xcodeproj/project.pbxproj @@ -379,9 +379,6 @@ 1A4F9F18BBEB3515AC7C7CC6 /* LexMetapost.cxx in Sources */ = {isa = PBXBuildFile; fileRef = F4C72C5C61A6335C8B418BA1 /* LexMetapost.cxx */; }; 1A4F9F18BBEB3515AC7C7CC7 /* LexMetapost.cxx in Sources */ = {isa = PBXBuildFile; fileRef = F4C72C5C61A6335C8B418BA1 /* LexMetapost.cxx */; }; 1A4F9F18BBEB3515AC7C7CC8 /* LexMetapost.cxx in Sources */ = {isa = PBXBuildFile; fileRef = F4C72C5C61A6335C8B418BA1 /* LexMetapost.cxx */; }; - 1A7FA35BDE4F35C685AB51A5 /* jidctred.c in Sources */ = {isa = PBXBuildFile; fileRef = 646743F6FDFE3ACFA1A79B40 /* jidctred.c */; }; - 1A7FA35BDE4F35C685AB51A6 /* jidctred.c in Sources */ = {isa = PBXBuildFile; fileRef = 646743F6FDFE3ACFA1A79B40 /* jidctred.c */; }; - 1A7FA35BDE4F35C685AB51A7 /* jidctred.c in Sources */ = {isa = PBXBuildFile; fileRef = 646743F6FDFE3ACFA1A79B40 /* jidctred.c */; }; 1AB50C98FF473B33A3CA4D39 /* xh_cmdlinkbn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0B70966E9423F198C8CBE65 /* xh_cmdlinkbn.cpp */; }; 1AB50C98FF473B33A3CA4D3A /* xh_cmdlinkbn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0B70966E9423F198C8CBE65 /* xh_cmdlinkbn.cpp */; }; 1AB50C98FF473B33A3CA4D3B /* xh_cmdlinkbn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0B70966E9423F198C8CBE65 /* xh_cmdlinkbn.cpp */; }; @@ -1118,6 +1115,9 @@ 5C5D0983160A36189A770742 /* webviewarchivehandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70112AB00E013A35BE974FF1 /* webviewarchivehandler.cpp */; }; 5C5D0983160A36189A770743 /* webviewarchivehandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70112AB00E013A35BE974FF1 /* webviewarchivehandler.cpp */; }; 5C5D0983160A36189A770744 /* webviewarchivehandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70112AB00E013A35BE974FF1 /* webviewarchivehandler.cpp */; }; + 5D3AD309AF39385EBF7D9DF8 /* jaricom.c in Sources */ = {isa = PBXBuildFile; fileRef = 573D0D15EE9E3E629D61EA65 /* jaricom.c */; }; + 5D3AD309AF39385EBF7D9DF9 /* jaricom.c in Sources */ = {isa = PBXBuildFile; fileRef = 573D0D15EE9E3E629D61EA65 /* jaricom.c */; }; + 5D3AD309AF39385EBF7D9DFA /* jaricom.c in Sources */ = {isa = PBXBuildFile; fileRef = 573D0D15EE9E3E629D61EA65 /* jaricom.c */; }; 5DA146A9F7653F53BF5299E8 /* spinbutt.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3C4A7A93CAFC3E22A2A5F7F3 /* spinbutt.mm */; }; 5DA146A9F7653F53BF5299E9 /* spinbutt.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3C4A7A93CAFC3E22A2A5F7F3 /* spinbutt.mm */; }; 5DA146A9F7653F53BF5299EA /* spinbutt.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3C4A7A93CAFC3E22A2A5F7F3 /* spinbutt.mm */; }; @@ -1480,6 +1480,9 @@ 7E6C627A325F32FFB2EF9B9E /* caret.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A82EDCFFBAC30098B238957 /* caret.cpp */; }; 7E6C627A325F32FFB2EF9B9F /* caret.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A82EDCFFBAC30098B238957 /* caret.cpp */; }; 7E6C627A325F32FFB2EF9BA0 /* caret.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A82EDCFFBAC30098B238957 /* caret.cpp */; }; + 7EB83F6375BF3E73ABE56C40 /* jcarith.c in Sources */ = {isa = PBXBuildFile; fileRef = AA234ACC79743DA797601AA6 /* jcarith.c */; }; + 7EB83F6375BF3E73ABE56C41 /* jcarith.c in Sources */ = {isa = PBXBuildFile; fileRef = AA234ACC79743DA797601AA6 /* jcarith.c */; }; + 7EB83F6375BF3E73ABE56C42 /* jcarith.c in Sources */ = {isa = PBXBuildFile; fileRef = AA234ACC79743DA797601AA6 /* jcarith.c */; }; 7ECC6EE6D5273F75BB6B7B74 /* tif_dirinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 032A38738B58394E8617617B /* tif_dirinfo.c */; }; 7ECC6EE6D5273F75BB6B7B75 /* tif_dirinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 032A38738B58394E8617617B /* tif_dirinfo.c */; }; 7ECC6EE6D5273F75BB6B7B76 /* tif_dirinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 032A38738B58394E8617617B /* tif_dirinfo.c */; }; @@ -1502,6 +1505,9 @@ 80665EEAE8613DF8A93A7985 /* utilscmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4188821BBA833CCAA678B234 /* utilscmn.cpp */; }; 80665EEAE8613DF8A93A7986 /* utilscmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4188821BBA833CCAA678B234 /* utilscmn.cpp */; }; 80665EEAE8613DF8A93A7987 /* utilscmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4188821BBA833CCAA678B234 /* utilscmn.cpp */; }; + 8093A858CA9E3E9EA2D2185F /* jdarith.c in Sources */ = {isa = PBXBuildFile; fileRef = FA9DD56E399533A5BE7AAD16 /* jdarith.c */; }; + 8093A858CA9E3E9EA2D21860 /* jdarith.c in Sources */ = {isa = PBXBuildFile; fileRef = FA9DD56E399533A5BE7AAD16 /* jdarith.c */; }; + 8093A858CA9E3E9EA2D21861 /* jdarith.c in Sources */ = {isa = PBXBuildFile; fileRef = FA9DD56E399533A5BE7AAD16 /* jdarith.c */; }; 815AE3FED68330F4933AA16F /* window.mm in Sources */ = {isa = PBXBuildFile; fileRef = C94DC3402FAE3C4FA776DEEA /* window.mm */; }; 815AE3FED68330F4933AA170 /* window.mm in Sources */ = {isa = PBXBuildFile; fileRef = C94DC3402FAE3C4FA776DEEA /* window.mm */; }; 815AE3FED68330F4933AA171 /* window.mm in Sources */ = {isa = PBXBuildFile; fileRef = C94DC3402FAE3C4FA776DEEA /* window.mm */; }; @@ -1818,9 +1824,6 @@ A1AF8FF873D6383996995ECF /* statusbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 071FEABEA61E3B559A47A7DB /* statusbr.cpp */; }; A1AF8FF873D6383996995ED0 /* statusbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 071FEABEA61E3B559A47A7DB /* statusbr.cpp */; }; A1AF8FF873D6383996995ED1 /* statusbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 071FEABEA61E3B559A47A7DB /* statusbr.cpp */; }; - A212431902B8343CA6D229D3 /* jcphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E38569D873B6394F9E5B821C /* jcphuff.c */; }; - A212431902B8343CA6D229D4 /* jcphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E38569D873B6394F9E5B821C /* jcphuff.c */; }; - A212431902B8343CA6D229D5 /* jcphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E38569D873B6394F9E5B821C /* jcphuff.c */; }; A2473402D8B83628B1F66749 /* wxprintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 607EF0043E723B7B9BE101EA /* wxprintf.cpp */; }; A2473402D8B83628B1F6674A /* wxprintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 607EF0043E723B7B9BE101EA /* wxprintf.cpp */; }; A2473402D8B83628B1F6674B /* wxprintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 607EF0043E723B7B9BE101EA /* wxprintf.cpp */; }; @@ -2304,9 +2307,6 @@ D088E7DDE38C31DC9C9B3417 /* dcclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B17772732159304AA7312D72 /* dcclient.cpp */; }; D088E7DDE38C31DC9C9B3418 /* dcclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B17772732159304AA7312D72 /* dcclient.cpp */; }; D088E7DDE38C31DC9C9B3419 /* dcclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B17772732159304AA7312D72 /* dcclient.cpp */; }; - D0DA11B814AF30A18585122F /* jdphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E85E680C62B63D4EBAB2E784 /* jdphuff.c */; }; - D0DA11B814AF30A185851230 /* jdphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E85E680C62B63D4EBAB2E784 /* jdphuff.c */; }; - D0DA11B814AF30A185851231 /* jdphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E85E680C62B63D4EBAB2E784 /* jdphuff.c */; }; D13596A4E3CD31DE810061A1 /* imagjpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6876262846EA3569B36D92E9 /* imagjpeg.cpp */; }; D13596A4E3CD31DE810061A2 /* imagjpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6876262846EA3569B36D92E9 /* imagjpeg.cpp */; }; D13596A4E3CD31DE810061A3 /* imagjpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6876262846EA3569B36D92E9 /* imagjpeg.cpp */; }; @@ -4162,6 +4162,7 @@ 5612DBC4125B379DA2B28825 /* buttonbar.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = buttonbar.cpp; path = ../../src/ribbon/buttonbar.cpp; sourceTree = ""; }; 56653FACC7D13804A70556AD /* sckfile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = sckfile.cpp; path = ../../src/common/sckfile.cpp; sourceTree = ""; }; 570D603125ED3A14848FA2E2 /* gaugecmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gaugecmn.cpp; path = ../../src/common/gaugecmn.cpp; sourceTree = ""; }; + 573D0D15EE9E3E629D61EA65 /* jaricom.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jaricom.c; path = ../../src/jpeg/jaricom.c; sourceTree = ""; }; 57C06D5DB5F733A4A235B206 /* combobox.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = combobox.mm; path = ../../src/osx/cocoa/combobox.mm; sourceTree = ""; }; 57E4784E521339BEB971D81D /* LexAVS.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexAVS.cxx; path = ../../src/stc/scintilla/lexers/LexAVS.cxx; sourceTree = ""; }; 57EB0085AFB93BFC88AC6FFC /* xh_listbk.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_listbk.cpp; path = ../../src/xrc/xh_listbk.cpp; sourceTree = ""; }; @@ -4225,7 +4226,6 @@ 63867276260C3F4A980E83D8 /* rgncmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = rgncmn.cpp; path = ../../src/common/rgncmn.cpp; sourceTree = ""; }; 63F15C5B895F38028FE5D0A5 /* debugrpt.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = debugrpt.cpp; path = ../../src/common/debugrpt.cpp; sourceTree = ""; }; 640783FBACA43206B782C77B /* evtloopcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = evtloopcmn.cpp; path = ../../src/common/evtloopcmn.cpp; sourceTree = ""; }; - 646743F6FDFE3ACFA1A79B40 /* jidctred.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jidctred.c; path = ../../src/jpeg/jidctred.c; sourceTree = ""; }; 64B25B87203E3464BCDD277D /* tif_read.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = tif_read.c; path = ../../src/tiff/libtiff/tif_read.c; sourceTree = ""; }; 64DA16CF41C834D7B7642024 /* prntdlgg.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = prntdlgg.cpp; path = ../../src/generic/prntdlgg.cpp; sourceTree = ""; }; 65C47DFD6E243724A83603F3 /* libwx_osx_cocoa.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libwx_osx_cocoa.dylib; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -4475,6 +4475,7 @@ A9C7F740A55E39FD890B3C7F /* editors.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = editors.cpp; path = ../../src/propgrid/editors.cpp; sourceTree = ""; }; A9D5CF9CC4553336916FB27B /* fontpickercmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fontpickercmn.cpp; path = ../../src/common/fontpickercmn.cpp; sourceTree = ""; }; A9E441D48CB73EF2BFD6C384 /* scrolbarcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = scrolbarcmn.cpp; path = ../../src/common/scrolbarcmn.cpp; sourceTree = ""; }; + AA234ACC79743DA797601AA6 /* jcarith.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jcarith.c; path = ../../src/jpeg/jcarith.c; sourceTree = ""; }; AA6C6739C3BD3EFA9CF71102 /* jcinit.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jcinit.c; path = ../../src/jpeg/jcinit.c; sourceTree = ""; }; AA90128E29A03CCCA30F4D35 /* vlbox.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = vlbox.cpp; path = ../../src/generic/vlbox.cpp; sourceTree = ""; }; AAB58DD0DEC13D68B8708085 /* fs_filter.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fs_filter.cpp; path = ../../src/common/fs_filter.cpp; sourceTree = ""; }; @@ -4695,7 +4696,6 @@ E145FC31ED523B4AA5080A61 /* RESearch.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RESearch.cxx; path = ../../src/stc/scintilla/src/RESearch.cxx; sourceTree = ""; }; E1B1FBB2BCC43BA7A45E9438 /* listctrlcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = listctrlcmn.cpp; path = ../../src/common/listctrlcmn.cpp; sourceTree = ""; }; E1F2E9C9052D3E53BBD17DE3 /* statbrma.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = statbrma.cpp; path = ../../src/osx/carbon/statbrma.cpp; sourceTree = ""; }; - E38569D873B6394F9E5B821C /* jcphuff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jcphuff.c; path = ../../src/jpeg/jcphuff.c; sourceTree = ""; }; E433B890264339BA8DB97B1D /* regcomp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = regcomp.c; path = ../../src/regex/regcomp.c; sourceTree = ""; }; E4E16323A43E36DC8024EDF1 /* textctrl.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = textctrl.mm; path = ../../src/osx/cocoa/textctrl.mm; sourceTree = ""; }; E5357E76650035639844D15B /* stringimpl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = stringimpl.cpp; path = ../../src/common/stringimpl.cpp; sourceTree = ""; }; @@ -4707,7 +4707,6 @@ E78CBF86AAE637CB982B2EC0 /* LexMarkdown.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexMarkdown.cxx; path = ../../src/stc/scintilla/lexers/LexMarkdown.cxx; sourceTree = ""; }; E79B2D1F630036129B9677A7 /* tif_dir.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = tif_dir.c; path = ../../src/tiff/libtiff/tif_dir.c; sourceTree = ""; }; E8072CA67D19346ABF4D465F /* slidercmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = slidercmn.cpp; path = ../../src/common/slidercmn.cpp; sourceTree = ""; }; - E85E680C62B63D4EBAB2E784 /* jdphuff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jdphuff.c; path = ../../src/jpeg/jdphuff.c; sourceTree = ""; }; E860DD54EEBF3119961B7BB1 /* CellBuffer.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CellBuffer.cxx; path = ../../src/stc/scintilla/src/CellBuffer.cxx; sourceTree = ""; }; E862A0A422483954B755053E /* wxcocoa_mlgui.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = wxcocoa_mlgui.xcconfig; sourceTree = ""; }; E89AC104BF4F33A083F8B382 /* jccoefct.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jccoefct.c; path = ../../src/jpeg/jccoefct.c; sourceTree = ""; }; @@ -4772,6 +4771,7 @@ F951601E73683F27AD8CA99D /* MarginView.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MarginView.cxx; path = ../../src/stc/scintilla/src/MarginView.cxx; sourceTree = ""; }; FA59091E3ED83FB781FB9659 /* glcanvas_osx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = glcanvas_osx.cpp; path = ../../src/osx/glcanvas_osx.cpp; sourceTree = ""; }; FA7029BB5751398AA02D8C24 /* imagtga.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = imagtga.cpp; path = ../../src/common/imagtga.cpp; sourceTree = ""; }; + FA9DD56E399533A5BE7AAD16 /* jdarith.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jdarith.c; path = ../../src/jpeg/jdarith.c; sourceTree = ""; }; FADE850169F7347F83FE1499 /* xh_statbar.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_statbar.cpp; path = ../../src/xrc/xh_statbar.cpp; sourceTree = ""; }; FB355C2107A835E5B8F15C29 /* libwxzlib.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwxzlib.a; sourceTree = BUILT_PRODUCTS_DIR; }; FB46BC22F6B23909A938C561 /* regex.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = regex.cpp; path = ../../src/common/regex.cpp; sourceTree = ""; }; @@ -5889,52 +5889,52 @@ 7650A73F7FC9305EA62DAE86 /* libjpeg */ = { isa = PBXGroup; children = ( - 8EB76F786D7F3FF286948D22 /* jcomapi.c */, - 5BEC6B3CAFB532CBB9F95D74 /* jutils.c */, - 108517BCD39230E7A89BC943 /* jerror.c */, - 14C2A7E01B4B3B168DB73B4F /* jmemmgr.c */, - 374E341C8703367686DEDE93 /* jmemnobs.c */, + 573D0D15EE9E3E629D61EA65 /* jaricom.c */, 6EDDEEEC981133E8BA6A3998 /* jcapimin.c */, F83172EE2DAE352FB969D4F2 /* jcapistd.c */, - 725574EF98C4301989181CBF /* jctrans.c */, - 2F41EDEB298538CC86FF6DC1 /* jcparam.c */, - 59B19927E27F39ACB1D2BDA3 /* jdatadst.c */, - AA6C6739C3BD3EFA9CF71102 /* jcinit.c */, - 3E3043D7BE9C33B59E900CCE /* jcmaster.c */, - 664736BDE465350C9C4750E9 /* jcmarker.c */, - 810EB7316DF3344197C78EC0 /* jcmainct.c */, - 7FE0455EBDC63D82B2D88587 /* jcprepct.c */, + AA234ACC79743DA797601AA6 /* jcarith.c */, E89AC104BF4F33A083F8B382 /* jccoefct.c */, 8EFF4707641D3F20AB602ED6 /* jccolor.c */, - 53D06E47477B3E32BB6B915E /* jcsample.c */, - DC0FFDC7A6163F2DA73B84EB /* jchuff.c */, - E38569D873B6394F9E5B821C /* jcphuff.c */, 6DBF3053414F3C448312165A /* jcdctmgr.c */, - 029486D6A2EC3DE0902A6A24 /* jfdctfst.c */, - 93D07403FCA530D7A9FD2917 /* jfdctflt.c */, - 90EC2A5B80EE3031BA4087B9 /* jfdctint.c */, + DC0FFDC7A6163F2DA73B84EB /* jchuff.c */, + AA6C6739C3BD3EFA9CF71102 /* jcinit.c */, + 810EB7316DF3344197C78EC0 /* jcmainct.c */, + 664736BDE465350C9C4750E9 /* jcmarker.c */, + 3E3043D7BE9C33B59E900CCE /* jcmaster.c */, + 8EB76F786D7F3FF286948D22 /* jcomapi.c */, + 2F41EDEB298538CC86FF6DC1 /* jcparam.c */, + 7FE0455EBDC63D82B2D88587 /* jcprepct.c */, + 53D06E47477B3E32BB6B915E /* jcsample.c */, + 725574EF98C4301989181CBF /* jctrans.c */, 86884BC843F6337EABF744BB /* jdapimin.c */, 1EF327CE8D7E3C11BFC6BD74 /* jdapistd.c */, - 4549845C0751356A907C23E0 /* jdtrans.c */, + FA9DD56E399533A5BE7AAD16 /* jdarith.c */, + 59B19927E27F39ACB1D2BDA3 /* jdatadst.c */, DECAF5DD80383A2CA76EB383 /* jdatasrc.c */, - ED19EF377E653F71B1876259 /* jdmaster.c */, - CCF7564A2B733F759AA8496B /* jdinput.c */, - 20E4A10BCD773C84AEC481A1 /* jdmarker.c */, - 72869747E68E37998CB0A07E /* jdhuff.c */, - E85E680C62B63D4EBAB2E784 /* jdphuff.c */, - B2D390E5D5BF32D4AAA1E15A /* jdmainct.c */, F1A6F3936A0D31CBB58082BA /* jdcoefct.c */, - 375FF97B202F3C359402D13E /* jdpostct.c */, - A5BBC1E494D33D028CA547FF /* jddctmgr.c */, - A0DCC5EF59143640BE13AD73 /* jidctfst.c */, - 3C131F7BF8A83960ACB26242 /* jidctflt.c */, - 1DAF0931E4AD3E6581D7FDBC /* jidctint.c */, - 646743F6FDFE3ACFA1A79B40 /* jidctred.c */, - 5FFCF47A161B3E08B19BFE14 /* jdsample.c */, 68B81FBDA49D3C1991B6356A /* jdcolor.c */, + A5BBC1E494D33D028CA547FF /* jddctmgr.c */, + 72869747E68E37998CB0A07E /* jdhuff.c */, + CCF7564A2B733F759AA8496B /* jdinput.c */, + B2D390E5D5BF32D4AAA1E15A /* jdmainct.c */, + 20E4A10BCD773C84AEC481A1 /* jdmarker.c */, + ED19EF377E653F71B1876259 /* jdmaster.c */, + 0890779C662C35889A8C6C2E /* jdmerge.c */, + 375FF97B202F3C359402D13E /* jdpostct.c */, + 5FFCF47A161B3E08B19BFE14 /* jdsample.c */, + 4549845C0751356A907C23E0 /* jdtrans.c */, + 108517BCD39230E7A89BC943 /* jerror.c */, + 93D07403FCA530D7A9FD2917 /* jfdctflt.c */, + 029486D6A2EC3DE0902A6A24 /* jfdctfst.c */, + 90EC2A5B80EE3031BA4087B9 /* jfdctint.c */, + 3C131F7BF8A83960ACB26242 /* jidctflt.c */, + A0DCC5EF59143640BE13AD73 /* jidctfst.c */, + 1DAF0931E4AD3E6581D7FDBC /* jidctint.c */, + 14C2A7E01B4B3B168DB73B4F /* jmemmgr.c */, + 374E341C8703367686DEDE93 /* jmemnobs.c */, 4BA14FFC0F4B3AE0B4D6B185 /* jquant1.c */, 02D9332D5C5632E981936E29 /* jquant2.c */, - 0890779C662C35889A8C6C2E /* jdmerge.c */, + 5BEC6B3CAFB532CBB9F95D74 /* jutils.c */, ); name = libjpeg; sourceTree = ""; @@ -8742,52 +8742,52 @@ 7A79D9AC608E3B8287229175 /* tif_warning.c in Sources */, F2F2963D8ECC32D39FDBF102 /* tif_write.c in Sources */, 6E2C2E8AA1713ADE9C33837A /* tif_zip.c in Sources */, - FCE5B139CBE73FCB804EF7DE /* jcomapi.c in Sources */, - 311840186794346AAAA42092 /* jutils.c in Sources */, - DE26572475EE336B8EEA5D93 /* jerror.c in Sources */, - 18A318847EAC37F2B915F082 /* jmemmgr.c in Sources */, - A7692B4D8658347BA16EEB84 /* jmemnobs.c in Sources */, + 5D3AD309AF39385EBF7D9DF9 /* jaricom.c in Sources */, 894D43C8F224394FB3171F27 /* jcapimin.c in Sources */, 743BB23211B336A6A0F26E58 /* jcapistd.c in Sources */, - CCE4ECA9CE883B008065C6FC /* jctrans.c in Sources */, - ACD644CFA85A3B70A3E3B119 /* jcparam.c in Sources */, - 76A83A293C9F33BCB7DFDE27 /* jdatadst.c in Sources */, - 86003C8EB906304F9025F789 /* jcinit.c in Sources */, - C6DF6F29407B34F29ED1B66E /* jcmaster.c in Sources */, - DB73248401573A5996D8E68E /* jcmarker.c in Sources */, - 98DF13E96160304EBB905E74 /* jcmainct.c in Sources */, - 32486A808EBC3E088598D51D /* jcprepct.c in Sources */, + 7EB83F6375BF3E73ABE56C41 /* jcarith.c in Sources */, CA5BD8ABDBA13641BBE7CD67 /* jccoefct.c in Sources */, 11DD420E32FB3EFB9DA0AB5C /* jccolor.c in Sources */, - 50D7E093424138C88BB50D28 /* jcsample.c in Sources */, - BDB7B2AD26CB356B8BEAAECE /* jchuff.c in Sources */, - A212431902B8343CA6D229D4 /* jcphuff.c in Sources */, BFA6983551B4310DA7C8A405 /* jcdctmgr.c in Sources */, - 9B3F9D04FB533D99B58BD51A /* jfdctfst.c in Sources */, - 0948599C4FD53611A09B52AC /* jfdctflt.c in Sources */, - CEC6430AEB6E3200BFA75D08 /* jfdctint.c in Sources */, + BDB7B2AD26CB356B8BEAAECE /* jchuff.c in Sources */, + 86003C8EB906304F9025F789 /* jcinit.c in Sources */, + 98DF13E96160304EBB905E74 /* jcmainct.c in Sources */, + DB73248401573A5996D8E68E /* jcmarker.c in Sources */, + C6DF6F29407B34F29ED1B66E /* jcmaster.c in Sources */, + FCE5B139CBE73FCB804EF7DE /* jcomapi.c in Sources */, + ACD644CFA85A3B70A3E3B119 /* jcparam.c in Sources */, + 32486A808EBC3E088598D51D /* jcprepct.c in Sources */, + 50D7E093424138C88BB50D28 /* jcsample.c in Sources */, + CCE4ECA9CE883B008065C6FC /* jctrans.c in Sources */, 8B9C9FCB954F3596A4CED9A6 /* jdapimin.c in Sources */, 67EBCE5FA5FF36349ADF0917 /* jdapistd.c in Sources */, - 11818B68C5263EB68D708846 /* jdtrans.c in Sources */, + 8093A858CA9E3E9EA2D21860 /* jdarith.c in Sources */, + 76A83A293C9F33BCB7DFDE27 /* jdatadst.c in Sources */, 4CB3626391CE34D4B1F71AA1 /* jdatasrc.c in Sources */, - CEBAAB0C77983358A601BFFF /* jdmaster.c in Sources */, - 14EF556997B0350F931EBE8F /* jdinput.c in Sources */, - 61C3F7D495FB3E8BA402E4F9 /* jdmarker.c in Sources */, - 28ADE8D385A53445A5451F24 /* jdhuff.c in Sources */, - D0DA11B814AF30A185851230 /* jdphuff.c in Sources */, - 9FD99E06F6613A1A958FAF6C /* jdmainct.c in Sources */, B5470121BB4B35DE9C4836DB /* jdcoefct.c in Sources */, - E7D02E64384F37BC8939A2C5 /* jdpostct.c in Sources */, - 13854E7822783719A2530793 /* jddctmgr.c in Sources */, - 48A1F28E04603A68A1E70319 /* jidctfst.c in Sources */, - B01C4EF49CF9390DA93A3503 /* jidctflt.c in Sources */, - C43A9650A9DC3372AB8F5F79 /* jidctint.c in Sources */, - 1A7FA35BDE4F35C685AB51A6 /* jidctred.c in Sources */, - D997FFC948B73FDA892DB532 /* jdsample.c in Sources */, D9F02AFDA07D3857A905527D /* jdcolor.c in Sources */, + 13854E7822783719A2530793 /* jddctmgr.c in Sources */, + 28ADE8D385A53445A5451F24 /* jdhuff.c in Sources */, + 14EF556997B0350F931EBE8F /* jdinput.c in Sources */, + 9FD99E06F6613A1A958FAF6C /* jdmainct.c in Sources */, + 61C3F7D495FB3E8BA402E4F9 /* jdmarker.c in Sources */, + CEBAAB0C77983358A601BFFF /* jdmaster.c in Sources */, + 1E4832B42B95308299B767BA /* jdmerge.c in Sources */, + E7D02E64384F37BC8939A2C5 /* jdpostct.c in Sources */, + D997FFC948B73FDA892DB532 /* jdsample.c in Sources */, + 11818B68C5263EB68D708846 /* jdtrans.c in Sources */, + DE26572475EE336B8EEA5D93 /* jerror.c in Sources */, + 0948599C4FD53611A09B52AC /* jfdctflt.c in Sources */, + 9B3F9D04FB533D99B58BD51A /* jfdctfst.c in Sources */, + CEC6430AEB6E3200BFA75D08 /* jfdctint.c in Sources */, + B01C4EF49CF9390DA93A3503 /* jidctflt.c in Sources */, + 48A1F28E04603A68A1E70319 /* jidctfst.c in Sources */, + C43A9650A9DC3372AB8F5F79 /* jidctint.c in Sources */, + 18A318847EAC37F2B915F082 /* jmemmgr.c in Sources */, + A7692B4D8658347BA16EEB84 /* jmemnobs.c in Sources */, 15D65A523EB23EC385C05E0C /* jquant1.c in Sources */, 3C0EB1DDA5243E31B2D92CE3 /* jquant2.c in Sources */, - 1E4832B42B95308299B767BA /* jdmerge.c in Sources */, + 311840186794346AAAA42092 /* jutils.c in Sources */, 94B1C88076793400810FAC31 /* png.c in Sources */, 1569BB4728693B6285623A24 /* pngerror.c in Sources */, D9496139621533328AE727B7 /* pngget.c in Sources */, @@ -8988,52 +8988,52 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - FCE5B139CBE73FCB804EF7DF /* jcomapi.c in Sources */, - 311840186794346AAAA42093 /* jutils.c in Sources */, - DE26572475EE336B8EEA5D94 /* jerror.c in Sources */, - 18A318847EAC37F2B915F083 /* jmemmgr.c in Sources */, - A7692B4D8658347BA16EEB85 /* jmemnobs.c in Sources */, + 5D3AD309AF39385EBF7D9DFA /* jaricom.c in Sources */, 894D43C8F224394FB3171F28 /* jcapimin.c in Sources */, 743BB23211B336A6A0F26E59 /* jcapistd.c in Sources */, - CCE4ECA9CE883B008065C6FD /* jctrans.c in Sources */, - ACD644CFA85A3B70A3E3B11A /* jcparam.c in Sources */, - 76A83A293C9F33BCB7DFDE28 /* jdatadst.c in Sources */, - 86003C8EB906304F9025F78A /* jcinit.c in Sources */, - C6DF6F29407B34F29ED1B66F /* jcmaster.c in Sources */, - DB73248401573A5996D8E68F /* jcmarker.c in Sources */, - 98DF13E96160304EBB905E75 /* jcmainct.c in Sources */, - 32486A808EBC3E088598D51E /* jcprepct.c in Sources */, + 7EB83F6375BF3E73ABE56C42 /* jcarith.c in Sources */, CA5BD8ABDBA13641BBE7CD68 /* jccoefct.c in Sources */, 11DD420E32FB3EFB9DA0AB5D /* jccolor.c in Sources */, - 50D7E093424138C88BB50D29 /* jcsample.c in Sources */, - BDB7B2AD26CB356B8BEAAECF /* jchuff.c in Sources */, - A212431902B8343CA6D229D5 /* jcphuff.c in Sources */, BFA6983551B4310DA7C8A406 /* jcdctmgr.c in Sources */, - 9B3F9D04FB533D99B58BD51B /* jfdctfst.c in Sources */, - 0948599C4FD53611A09B52AD /* jfdctflt.c in Sources */, - CEC6430AEB6E3200BFA75D09 /* jfdctint.c in Sources */, + BDB7B2AD26CB356B8BEAAECF /* jchuff.c in Sources */, + 86003C8EB906304F9025F78A /* jcinit.c in Sources */, + 98DF13E96160304EBB905E75 /* jcmainct.c in Sources */, + DB73248401573A5996D8E68F /* jcmarker.c in Sources */, + C6DF6F29407B34F29ED1B66F /* jcmaster.c in Sources */, + FCE5B139CBE73FCB804EF7DF /* jcomapi.c in Sources */, + ACD644CFA85A3B70A3E3B11A /* jcparam.c in Sources */, + 32486A808EBC3E088598D51E /* jcprepct.c in Sources */, + 50D7E093424138C88BB50D29 /* jcsample.c in Sources */, + CCE4ECA9CE883B008065C6FD /* jctrans.c in Sources */, 8B9C9FCB954F3596A4CED9A7 /* jdapimin.c in Sources */, 67EBCE5FA5FF36349ADF0918 /* jdapistd.c in Sources */, - 11818B68C5263EB68D708847 /* jdtrans.c in Sources */, + 8093A858CA9E3E9EA2D21861 /* jdarith.c in Sources */, + 76A83A293C9F33BCB7DFDE28 /* jdatadst.c in Sources */, 4CB3626391CE34D4B1F71AA2 /* jdatasrc.c in Sources */, - CEBAAB0C77983358A601C000 /* jdmaster.c in Sources */, - 14EF556997B0350F931EBE90 /* jdinput.c in Sources */, - 61C3F7D495FB3E8BA402E4FA /* jdmarker.c in Sources */, - 28ADE8D385A53445A5451F25 /* jdhuff.c in Sources */, - D0DA11B814AF30A185851231 /* jdphuff.c in Sources */, - 9FD99E06F6613A1A958FAF6D /* jdmainct.c in Sources */, B5470121BB4B35DE9C4836DC /* jdcoefct.c in Sources */, - E7D02E64384F37BC8939A2C6 /* jdpostct.c in Sources */, - 13854E7822783719A2530794 /* jddctmgr.c in Sources */, - 48A1F28E04603A68A1E7031A /* jidctfst.c in Sources */, - B01C4EF49CF9390DA93A3504 /* jidctflt.c in Sources */, - C43A9650A9DC3372AB8F5F7A /* jidctint.c in Sources */, - 1A7FA35BDE4F35C685AB51A7 /* jidctred.c in Sources */, - D997FFC948B73FDA892DB533 /* jdsample.c in Sources */, D9F02AFDA07D3857A905527E /* jdcolor.c in Sources */, + 13854E7822783719A2530794 /* jddctmgr.c in Sources */, + 28ADE8D385A53445A5451F25 /* jdhuff.c in Sources */, + 14EF556997B0350F931EBE90 /* jdinput.c in Sources */, + 9FD99E06F6613A1A958FAF6D /* jdmainct.c in Sources */, + 61C3F7D495FB3E8BA402E4FA /* jdmarker.c in Sources */, + CEBAAB0C77983358A601C000 /* jdmaster.c in Sources */, + 1E4832B42B95308299B767BB /* jdmerge.c in Sources */, + E7D02E64384F37BC8939A2C6 /* jdpostct.c in Sources */, + D997FFC948B73FDA892DB533 /* jdsample.c in Sources */, + 11818B68C5263EB68D708847 /* jdtrans.c in Sources */, + DE26572475EE336B8EEA5D94 /* jerror.c in Sources */, + 0948599C4FD53611A09B52AD /* jfdctflt.c in Sources */, + 9B3F9D04FB533D99B58BD51B /* jfdctfst.c in Sources */, + CEC6430AEB6E3200BFA75D09 /* jfdctint.c in Sources */, + B01C4EF49CF9390DA93A3504 /* jidctflt.c in Sources */, + 48A1F28E04603A68A1E7031A /* jidctfst.c in Sources */, + C43A9650A9DC3372AB8F5F7A /* jidctint.c in Sources */, + 18A318847EAC37F2B915F083 /* jmemmgr.c in Sources */, + A7692B4D8658347BA16EEB85 /* jmemnobs.c in Sources */, 15D65A523EB23EC385C05E0D /* jquant1.c in Sources */, 3C0EB1DDA5243E31B2D92CE4 /* jquant2.c in Sources */, - 1E4832B42B95308299B767BB /* jdmerge.c in Sources */, + 311840186794346AAAA42093 /* jutils.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -9966,52 +9966,52 @@ 7A79D9AC608E3B8287229174 /* tif_warning.c in Sources */, F2F2963D8ECC32D39FDBF101 /* tif_write.c in Sources */, 6E2C2E8AA1713ADE9C338379 /* tif_zip.c in Sources */, - FCE5B139CBE73FCB804EF7DD /* jcomapi.c in Sources */, - 311840186794346AAAA42091 /* jutils.c in Sources */, - DE26572475EE336B8EEA5D92 /* jerror.c in Sources */, - 18A318847EAC37F2B915F081 /* jmemmgr.c in Sources */, - A7692B4D8658347BA16EEB83 /* jmemnobs.c in Sources */, + 5D3AD309AF39385EBF7D9DF8 /* jaricom.c in Sources */, 894D43C8F224394FB3171F26 /* jcapimin.c in Sources */, 743BB23211B336A6A0F26E57 /* jcapistd.c in Sources */, - CCE4ECA9CE883B008065C6FB /* jctrans.c in Sources */, - ACD644CFA85A3B70A3E3B118 /* jcparam.c in Sources */, - 76A83A293C9F33BCB7DFDE26 /* jdatadst.c in Sources */, - 86003C8EB906304F9025F788 /* jcinit.c in Sources */, - C6DF6F29407B34F29ED1B66D /* jcmaster.c in Sources */, - DB73248401573A5996D8E68D /* jcmarker.c in Sources */, - 98DF13E96160304EBB905E73 /* jcmainct.c in Sources */, - 32486A808EBC3E088598D51C /* jcprepct.c in Sources */, + 7EB83F6375BF3E73ABE56C40 /* jcarith.c in Sources */, CA5BD8ABDBA13641BBE7CD66 /* jccoefct.c in Sources */, 11DD420E32FB3EFB9DA0AB5B /* jccolor.c in Sources */, - 50D7E093424138C88BB50D27 /* jcsample.c in Sources */, - BDB7B2AD26CB356B8BEAAECD /* jchuff.c in Sources */, - A212431902B8343CA6D229D3 /* jcphuff.c in Sources */, BFA6983551B4310DA7C8A404 /* jcdctmgr.c in Sources */, - 9B3F9D04FB533D99B58BD519 /* jfdctfst.c in Sources */, - 0948599C4FD53611A09B52AB /* jfdctflt.c in Sources */, - CEC6430AEB6E3200BFA75D07 /* jfdctint.c in Sources */, + BDB7B2AD26CB356B8BEAAECD /* jchuff.c in Sources */, + 86003C8EB906304F9025F788 /* jcinit.c in Sources */, + 98DF13E96160304EBB905E73 /* jcmainct.c in Sources */, + DB73248401573A5996D8E68D /* jcmarker.c in Sources */, + C6DF6F29407B34F29ED1B66D /* jcmaster.c in Sources */, + FCE5B139CBE73FCB804EF7DD /* jcomapi.c in Sources */, + ACD644CFA85A3B70A3E3B118 /* jcparam.c in Sources */, + 32486A808EBC3E088598D51C /* jcprepct.c in Sources */, + 50D7E093424138C88BB50D27 /* jcsample.c in Sources */, + CCE4ECA9CE883B008065C6FB /* jctrans.c in Sources */, 8B9C9FCB954F3596A4CED9A5 /* jdapimin.c in Sources */, 67EBCE5FA5FF36349ADF0916 /* jdapistd.c in Sources */, - 11818B68C5263EB68D708845 /* jdtrans.c in Sources */, + 8093A858CA9E3E9EA2D2185F /* jdarith.c in Sources */, + 76A83A293C9F33BCB7DFDE26 /* jdatadst.c in Sources */, 4CB3626391CE34D4B1F71AA0 /* jdatasrc.c in Sources */, - CEBAAB0C77983358A601BFFE /* jdmaster.c in Sources */, - 14EF556997B0350F931EBE8E /* jdinput.c in Sources */, - 61C3F7D495FB3E8BA402E4F8 /* jdmarker.c in Sources */, - 28ADE8D385A53445A5451F23 /* jdhuff.c in Sources */, - D0DA11B814AF30A18585122F /* jdphuff.c in Sources */, - 9FD99E06F6613A1A958FAF6B /* jdmainct.c in Sources */, B5470121BB4B35DE9C4836DA /* jdcoefct.c in Sources */, - E7D02E64384F37BC8939A2C4 /* jdpostct.c in Sources */, - 13854E7822783719A2530792 /* jddctmgr.c in Sources */, - 48A1F28E04603A68A1E70318 /* jidctfst.c in Sources */, - B01C4EF49CF9390DA93A3502 /* jidctflt.c in Sources */, - C43A9650A9DC3372AB8F5F78 /* jidctint.c in Sources */, - 1A7FA35BDE4F35C685AB51A5 /* jidctred.c in Sources */, - D997FFC948B73FDA892DB531 /* jdsample.c in Sources */, D9F02AFDA07D3857A905527C /* jdcolor.c in Sources */, + 13854E7822783719A2530792 /* jddctmgr.c in Sources */, + 28ADE8D385A53445A5451F23 /* jdhuff.c in Sources */, + 14EF556997B0350F931EBE8E /* jdinput.c in Sources */, + 9FD99E06F6613A1A958FAF6B /* jdmainct.c in Sources */, + 61C3F7D495FB3E8BA402E4F8 /* jdmarker.c in Sources */, + CEBAAB0C77983358A601BFFE /* jdmaster.c in Sources */, + 1E4832B42B95308299B767B9 /* jdmerge.c in Sources */, + E7D02E64384F37BC8939A2C4 /* jdpostct.c in Sources */, + D997FFC948B73FDA892DB531 /* jdsample.c in Sources */, + 11818B68C5263EB68D708845 /* jdtrans.c in Sources */, + DE26572475EE336B8EEA5D92 /* jerror.c in Sources */, + 0948599C4FD53611A09B52AB /* jfdctflt.c in Sources */, + 9B3F9D04FB533D99B58BD519 /* jfdctfst.c in Sources */, + CEC6430AEB6E3200BFA75D07 /* jfdctint.c in Sources */, + B01C4EF49CF9390DA93A3502 /* jidctflt.c in Sources */, + 48A1F28E04603A68A1E70318 /* jidctfst.c in Sources */, + C43A9650A9DC3372AB8F5F78 /* jidctint.c in Sources */, + 18A318847EAC37F2B915F081 /* jmemmgr.c in Sources */, + A7692B4D8658347BA16EEB83 /* jmemnobs.c in Sources */, 15D65A523EB23EC385C05E0B /* jquant1.c in Sources */, 3C0EB1DDA5243E31B2D92CE2 /* jquant2.c in Sources */, - 1E4832B42B95308299B767B9 /* jdmerge.c in Sources */, + 311840186794346AAAA42091 /* jutils.c in Sources */, 94B1C88076793400810FAC30 /* png.c in Sources */, 1569BB4728693B6285623A23 /* pngerror.c in Sources */, D9496139621533328AE727B6 /* pngget.c in Sources */, diff --git a/build/osx/wxiphone.xcodeproj/project.pbxproj b/build/osx/wxiphone.xcodeproj/project.pbxproj index 174027fabc..59850629b9 100644 --- a/build/osx/wxiphone.xcodeproj/project.pbxproj +++ b/build/osx/wxiphone.xcodeproj/project.pbxproj @@ -99,7 +99,6 @@ 1937FBA0A0DD32A8A743CFE1 /* valtext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DE8701E1CF2B352B945C17E5 /* valtext.cpp */; }; 19D823E564D932758EA6F8D1 /* UniConversion.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 1C4ABE16C5A13979827F4F7C /* UniConversion.cxx */; }; 1A4F9F18BBEB3515AC7C7CC6 /* LexMetapost.cxx in Sources */ = {isa = PBXBuildFile; fileRef = F4C72C5C61A6335C8B418BA1 /* LexMetapost.cxx */; }; - 1A7FA35BDE4F35C685AB51A5 /* jidctred.c in Sources */ = {isa = PBXBuildFile; fileRef = 646743F6FDFE3ACFA1A79B40 /* jidctred.c */; }; 1AB50C98FF473B33A3CA4D39 /* xh_cmdlinkbn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0B70966E9423F198C8CBE65 /* xh_cmdlinkbn.cpp */; }; 1AF2B2346C9639DAA4D15F30 /* numdlgg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69A7F3F58B1E3812A055C84F /* numdlgg.cpp */; }; 1B06622C8D8731FC832199E2 /* init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB82939EDC593F9CA95C3098 /* init.cpp */; }; @@ -229,9 +228,6 @@ 3E99016BDE043A08B4D6B3CE /* htmprint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 194ADD28300E329E80F7892E /* htmprint.cpp */; }; 3EB6B8528A0D3B6CADAE1256 /* archive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02D2E8B5C89939CE90B99E2B /* archive.cpp */; }; 3ED6F4B64C283232A79423CF /* dircmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC9B6DFBF2F73917A99361C5 /* dircmn.cpp */; }; - CC6752334EB93A6B9C0391B3 /* filter_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = D785BC35292138E0BB94EADC /* filter_neon.S */; }; - BB12132A86E2350AA47414CC /* arm_init.c in Sources */ = {isa = PBXBuildFile; fileRef = 933D7637CAA43F6C99814BC5 /* arm_init.c */; }; - 0F2FD12272023C869CE86008 /* filter_neon_intrinsics.c in Sources */ = {isa = PBXBuildFile; fileRef = 39507FA11D8838109A22B7DA /* filter_neon_intrinsics.c */; }; 403FBA20CEFE3EAFB4E6B905 /* dir.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F7332A03D93D3DABB050615D /* dir.cpp */; }; 4040AE89BF9F34668091064A /* dragimgg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2A67053D16D63C588E555C84 /* dragimgg.cpp */; }; 41943A8F82723027A151A468 /* fileconf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 61DA2A4C0D143CBE804BB8A1 /* fileconf.cpp */; }; @@ -319,6 +315,7 @@ 5C3B0ED2EA973DFDBFBCC692 /* richtextctrl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FDEC1C66E6E83C69AF2732DB /* richtextctrl.cpp */; }; 5C44446AB150378696CD6B3C /* bmpcboxcmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8CF560E06F2A3B6088203D09 /* bmpcboxcmn.cpp */; }; 5C5D0983160A36189A770742 /* webviewarchivehandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70112AB00E013A35BE974FF1 /* webviewarchivehandler.cpp */; }; + 5D3AD309AF39385EBF7D9DF8 /* jaricom.c in Sources */ = {isa = PBXBuildFile; fileRef = 573D0D15EE9E3E629D61EA65 /* jaricom.c */; }; 5EE94793DFCB3BA281A4864E /* infback.c in Sources */ = {isa = PBXBuildFile; fileRef = FDB0E2D0966C3E408C4A2D3D /* infback.c */; }; 5F2C2A46781739D897CF293D /* xh_chckl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EA3F8832890138E9AB6E65D8 /* xh_chckl.cpp */; }; 5F57C4908E5038D19D68ED7A /* gallery.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F1C1EB5C0B3302C86D91315 /* gallery.cpp */; }; @@ -431,6 +428,7 @@ 7DC4A542372437ECA0790F87 /* art_msw.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B540E18F9C91381CA175BABB /* art_msw.cpp */; }; 7DEC57D6CE8232A09EF74219 /* PropSetSimple.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 41D75DF4695B361DB700D51D /* PropSetSimple.cxx */; }; 7E6C627A325F32FFB2EF9B9E /* caret.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A82EDCFFBAC30098B238957 /* caret.cpp */; }; + 7EB83F6375BF3E73ABE56C40 /* jcarith.c in Sources */ = {isa = PBXBuildFile; fileRef = AA234ACC79743DA797601AA6 /* jcarith.c */; }; 7ECC6EE6D5273F75BB6B7B74 /* tif_dirinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 032A38738B58394E8617617B /* tif_dirinfo.c */; }; 7EF89F935314301381802FAB /* filectrlg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2334539088B036BEAB230D1C /* filectrlg.cpp */; }; 7F77E347E1243D77A666FB43 /* clipbrd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 12453E271F2A3AC9969E62A4 /* clipbrd.cpp */; }; @@ -438,6 +436,7 @@ 800CFCEDBB7938338C65EEAC /* notifmsgcmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B233180893DB3328AF4847DA /* notifmsgcmn.cpp */; }; 805CCAE64D023561AD334B53 /* popupwin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 530DC2E26BF2313E8702AD43 /* popupwin.cpp */; }; 80665EEAE8613DF8A93A7984 /* utilscmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4188821BBA833CCAA678B234 /* utilscmn.cpp */; }; + 8093A858CA9E3E9EA2D2185F /* jdarith.c in Sources */ = {isa = PBXBuildFile; fileRef = FA9DD56E399533A5BE7AAD16 /* jdarith.c */; }; 815AE3FED68330F4933AA16F /* window.mm in Sources */ = {isa = PBXBuildFile; fileRef = C94DC3402FAE3C4FA776DEEA /* window.mm */; }; 81B742D64BEB373DB705947A /* m_list.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4028ABB08C63AB59F5F240B /* m_list.cpp */; }; 825EAD51920B387DB4F8C426 /* LexAsn1.cxx in Sources */ = {isa = PBXBuildFile; fileRef = A46D50BEBF523B3F88831086 /* LexAsn1.cxx */; }; @@ -540,7 +539,6 @@ A1A7B833061C35B4AABD093C /* preferencesg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F06DEA1AA339ED819B3812 /* preferencesg.cpp */; }; A1A7D793B034398B8696EF33 /* utils.mm in Sources */ = {isa = PBXBuildFile; fileRef = 789F45D14FF23E248FCFB5FA /* utils.mm */; }; A1AF8FF873D6383996995ECF /* statusbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 071FEABEA61E3B559A47A7DB /* statusbr.cpp */; }; - A212431902B8343CA6D229D3 /* jcphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E38569D873B6394F9E5B821C /* jcphuff.c */; }; A2473402D8B83628B1F66749 /* wxprintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 607EF0043E723B7B9BE101EA /* wxprintf.cpp */; }; A2769D1659AE3CA3B58C2CAE /* wincmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AC5C60B3AF893BE98BCE6C1D /* wincmn.cpp */; }; A283187810EB32DAA173BD33 /* artstd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24E82A05E9A9323287CDB15B /* artstd.cpp */; }; @@ -697,7 +695,6 @@ CFF73578F04D357E83D1D830 /* lboxcmn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9660AE8FEB7B3EDB857B9238 /* lboxcmn.cpp */; }; D070C3BE95483FE38BABA1BE /* region.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00DA3D3EEF5E305CA73A1871 /* region.cpp */; }; D088E7DDE38C31DC9C9B3417 /* dcclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B17772732159304AA7312D72 /* dcclient.cpp */; }; - D0DA11B814AF30A18585122F /* jdphuff.c in Sources */ = {isa = PBXBuildFile; fileRef = E85E680C62B63D4EBAB2E784 /* jdphuff.c */; }; D13596A4E3CD31DE810061A1 /* imagjpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6876262846EA3569B36D92E9 /* imagjpeg.cpp */; }; D13AE659C3AC37B68D39B2C9 /* LexLout.cxx in Sources */ = {isa = PBXBuildFile; fileRef = B14D6E7E15FD3C869E341198 /* LexLout.cxx */; }; D17E3053DA0D3F7EA4D0951B /* helpdlg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 81821049E39B32C6ABCF6820 /* helpdlg.cpp */; }; @@ -1067,9 +1064,6 @@ 3FB6D34C3029357EB64AECAA /* scrlwing.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = scrlwing.cpp; path = ../../src/generic/scrlwing.cpp; sourceTree = ""; }; 3FEBA7AC7F743EE88352AEBC /* htmlwin.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = htmlwin.cpp; path = ../../src/html/htmlwin.cpp; sourceTree = ""; }; 400275BE019D3E5BA47988BE /* inffast.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = inffast.c; path = ../../src/zlib/inffast.c; sourceTree = ""; }; - D785BC35292138E0BB94EADC /* filter_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = filter_neon.S; path = ../../src/png/arm/filter_neon.S; sourceTree = ""; }; - 933D7637CAA43F6C99814BC5 /* arm_init.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = arm_init.c; path = ../../src/png/arm/arm_init.c; sourceTree = ""; }; - 39507FA11D8838109A22B7DA /* filter_neon_intrinsics.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = filter_neon_intrinsics.c; path = ../../src/png/arm/filter_neon_intrinsics.c; sourceTree = ""; }; 4048A3523EC03409BD899BEF /* xtixml.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xtixml.cpp; path = ../../src/common/xtixml.cpp; sourceTree = ""; }; 40586C8986443431A64EB066 /* LexLisp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexLisp.cxx; path = ../../src/stc/scintilla/lexers/LexLisp.cxx; sourceTree = ""; }; 4071FF90F1D4336C836B2AE4 /* tif_pixarlog.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = tif_pixarlog.c; path = ../../src/tiff/libtiff/tif_pixarlog.c; sourceTree = ""; }; @@ -1142,6 +1136,7 @@ 5612DBC4125B379DA2B28825 /* buttonbar.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = buttonbar.cpp; path = ../../src/ribbon/buttonbar.cpp; sourceTree = ""; }; 56653FACC7D13804A70556AD /* sckfile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = sckfile.cpp; path = ../../src/common/sckfile.cpp; sourceTree = ""; }; 570D603125ED3A14848FA2E2 /* gaugecmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gaugecmn.cpp; path = ../../src/common/gaugecmn.cpp; sourceTree = ""; }; + 573D0D15EE9E3E629D61EA65 /* jaricom.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jaricom.c; path = ../../src/jpeg/jaricom.c; sourceTree = ""; }; 57E4784E521339BEB971D81D /* LexAVS.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexAVS.cxx; path = ../../src/stc/scintilla/lexers/LexAVS.cxx; sourceTree = ""; }; 57EB0085AFB93BFC88AC6FFC /* xh_listbk.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_listbk.cpp; path = ../../src/xrc/xh_listbk.cpp; sourceTree = ""; }; 580AFC66F3003582B43043B1 /* animateg.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = animateg.cpp; path = ../../src/generic/animateg.cpp; sourceTree = ""; }; @@ -1198,7 +1193,6 @@ 63867276260C3F4A980E83D8 /* rgncmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = rgncmn.cpp; path = ../../src/common/rgncmn.cpp; sourceTree = ""; }; 63F15C5B895F38028FE5D0A5 /* debugrpt.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = debugrpt.cpp; path = ../../src/common/debugrpt.cpp; sourceTree = ""; }; 640783FBACA43206B782C77B /* evtloopcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = evtloopcmn.cpp; path = ../../src/common/evtloopcmn.cpp; sourceTree = ""; }; - 646743F6FDFE3ACFA1A79B40 /* jidctred.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jidctred.c; path = ../../src/jpeg/jidctred.c; sourceTree = ""; }; 64B25B87203E3464BCDD277D /* tif_read.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = tif_read.c; path = ../../src/tiff/libtiff/tif_read.c; sourceTree = ""; }; 64DA16CF41C834D7B7642024 /* prntdlgg.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = prntdlgg.cpp; path = ../../src/generic/prntdlgg.cpp; sourceTree = ""; }; 66411D54BAD338498AC59401 /* xh_scrol.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_scrol.cpp; path = ../../src/xrc/xh_scrol.cpp; sourceTree = ""; }; @@ -1429,6 +1423,7 @@ A9C7F740A55E39FD890B3C7F /* editors.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = editors.cpp; path = ../../src/propgrid/editors.cpp; sourceTree = ""; }; A9D5CF9CC4553336916FB27B /* fontpickercmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fontpickercmn.cpp; path = ../../src/common/fontpickercmn.cpp; sourceTree = ""; }; A9E441D48CB73EF2BFD6C384 /* scrolbarcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = scrolbarcmn.cpp; path = ../../src/common/scrolbarcmn.cpp; sourceTree = ""; }; + AA234ACC79743DA797601AA6 /* jcarith.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jcarith.c; path = ../../src/jpeg/jcarith.c; sourceTree = ""; }; AA6C6739C3BD3EFA9CF71102 /* jcinit.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jcinit.c; path = ../../src/jpeg/jcinit.c; sourceTree = ""; }; AA90128E29A03CCCA30F4D35 /* vlbox.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = vlbox.cpp; path = ../../src/generic/vlbox.cpp; sourceTree = ""; }; AAB58DD0DEC13D68B8708085 /* fs_filter.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = fs_filter.cpp; path = ../../src/common/fs_filter.cpp; sourceTree = ""; }; @@ -1633,7 +1628,6 @@ E145FC31ED523B4AA5080A61 /* RESearch.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RESearch.cxx; path = ../../src/stc/scintilla/src/RESearch.cxx; sourceTree = ""; }; E1B1FBB2BCC43BA7A45E9438 /* listctrlcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = listctrlcmn.cpp; path = ../../src/common/listctrlcmn.cpp; sourceTree = ""; }; E1F2E9C9052D3E53BBD17DE3 /* statbrma.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = statbrma.cpp; path = ../../src/osx/carbon/statbrma.cpp; sourceTree = ""; }; - E38569D873B6394F9E5B821C /* jcphuff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jcphuff.c; path = ../../src/jpeg/jcphuff.c; sourceTree = ""; }; E433B890264339BA8DB97B1D /* regcomp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = regcomp.c; path = ../../src/regex/regcomp.c; sourceTree = ""; }; E4E16323A43E36DC8024EDF1 /* textctrl.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = textctrl.mm; path = ../../src/osx/iphone/textctrl.mm; sourceTree = ""; }; E5357E76650035639844D15B /* stringimpl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = stringimpl.cpp; path = ../../src/common/stringimpl.cpp; sourceTree = ""; }; @@ -1645,7 +1639,6 @@ E78CBF86AAE637CB982B2EC0 /* LexMarkdown.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexMarkdown.cxx; path = ../../src/stc/scintilla/lexers/LexMarkdown.cxx; sourceTree = ""; }; E79B2D1F630036129B9677A7 /* tif_dir.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = tif_dir.c; path = ../../src/tiff/libtiff/tif_dir.c; sourceTree = ""; }; E8072CA67D19346ABF4D465F /* slidercmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = slidercmn.cpp; path = ../../src/common/slidercmn.cpp; sourceTree = ""; }; - E85E680C62B63D4EBAB2E784 /* jdphuff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jdphuff.c; path = ../../src/jpeg/jdphuff.c; sourceTree = ""; }; E860DD54EEBF3119961B7BB1 /* CellBuffer.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CellBuffer.cxx; path = ../../src/stc/scintilla/src/CellBuffer.cxx; sourceTree = ""; }; E89AC104BF4F33A083F8B382 /* jccoefct.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jccoefct.c; path = ../../src/jpeg/jccoefct.c; sourceTree = ""; }; E8BD1489D95E3FD78B200B1B /* commandlinkbuttong.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = commandlinkbuttong.cpp; path = ../../src/generic/commandlinkbuttong.cpp; sourceTree = ""; }; @@ -1708,6 +1701,7 @@ F951601E73683F27AD8CA99D /* MarginView.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MarginView.cxx; path = ../../src/stc/scintilla/src/MarginView.cxx; sourceTree = ""; }; FA59091E3ED83FB781FB9659 /* glcanvas_osx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = glcanvas_osx.cpp; path = ../../src/osx/glcanvas_osx.cpp; sourceTree = ""; }; FA7029BB5751398AA02D8C24 /* imagtga.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = imagtga.cpp; path = ../../src/common/imagtga.cpp; sourceTree = ""; }; + FA9DD56E399533A5BE7AAD16 /* jdarith.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = jdarith.c; path = ../../src/jpeg/jdarith.c; sourceTree = ""; }; FADE850169F7347F83FE1499 /* xh_statbar.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_statbar.cpp; path = ../../src/xrc/xh_statbar.cpp; sourceTree = ""; }; FB46BC22F6B23909A938C561 /* regex.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = regex.cpp; path = ../../src/common/regex.cpp; sourceTree = ""; }; FBC5A5797B0D369291A76D6E /* dcbufcmn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dcbufcmn.cpp; path = ../../src/common/dcbufcmn.cpp; sourceTree = ""; }; @@ -2477,9 +2471,6 @@ 6E2C8858F68E3FB0BEFFFCE5 /* libpng */ = { isa = PBXGroup; children = ( - 933D7637CAA43F6C99814BC5 /* arm_init.c */, - 39507FA11D8838109A22B7DA /* filter_neon_intrinsics.c */, - D785BC35292138E0BB94EADC /* filter_neon.S */, AF26BAB1F4733114926F1724 /* png.c */, 1A0650754DC2358CA5933B28 /* pngerror.c */, 91300EB871CC39ECBC430D48 /* pngget.c */, @@ -2502,52 +2493,52 @@ 7650A73F7FC9305EA62DAE86 /* libjpeg */ = { isa = PBXGroup; children = ( - 8EB76F786D7F3FF286948D22 /* jcomapi.c */, - 5BEC6B3CAFB532CBB9F95D74 /* jutils.c */, - 108517BCD39230E7A89BC943 /* jerror.c */, - 14C2A7E01B4B3B168DB73B4F /* jmemmgr.c */, - 374E341C8703367686DEDE93 /* jmemnobs.c */, + 573D0D15EE9E3E629D61EA65 /* jaricom.c */, 6EDDEEEC981133E8BA6A3998 /* jcapimin.c */, F83172EE2DAE352FB969D4F2 /* jcapistd.c */, - 725574EF98C4301989181CBF /* jctrans.c */, - 2F41EDEB298538CC86FF6DC1 /* jcparam.c */, - 59B19927E27F39ACB1D2BDA3 /* jdatadst.c */, - AA6C6739C3BD3EFA9CF71102 /* jcinit.c */, - 3E3043D7BE9C33B59E900CCE /* jcmaster.c */, - 664736BDE465350C9C4750E9 /* jcmarker.c */, - 810EB7316DF3344197C78EC0 /* jcmainct.c */, - 7FE0455EBDC63D82B2D88587 /* jcprepct.c */, + AA234ACC79743DA797601AA6 /* jcarith.c */, E89AC104BF4F33A083F8B382 /* jccoefct.c */, 8EFF4707641D3F20AB602ED6 /* jccolor.c */, - 53D06E47477B3E32BB6B915E /* jcsample.c */, - DC0FFDC7A6163F2DA73B84EB /* jchuff.c */, - E38569D873B6394F9E5B821C /* jcphuff.c */, 6DBF3053414F3C448312165A /* jcdctmgr.c */, - 029486D6A2EC3DE0902A6A24 /* jfdctfst.c */, - 93D07403FCA530D7A9FD2917 /* jfdctflt.c */, - 90EC2A5B80EE3031BA4087B9 /* jfdctint.c */, + DC0FFDC7A6163F2DA73B84EB /* jchuff.c */, + AA6C6739C3BD3EFA9CF71102 /* jcinit.c */, + 810EB7316DF3344197C78EC0 /* jcmainct.c */, + 664736BDE465350C9C4750E9 /* jcmarker.c */, + 3E3043D7BE9C33B59E900CCE /* jcmaster.c */, + 8EB76F786D7F3FF286948D22 /* jcomapi.c */, + 2F41EDEB298538CC86FF6DC1 /* jcparam.c */, + 7FE0455EBDC63D82B2D88587 /* jcprepct.c */, + 53D06E47477B3E32BB6B915E /* jcsample.c */, + 725574EF98C4301989181CBF /* jctrans.c */, 86884BC843F6337EABF744BB /* jdapimin.c */, 1EF327CE8D7E3C11BFC6BD74 /* jdapistd.c */, - 4549845C0751356A907C23E0 /* jdtrans.c */, + FA9DD56E399533A5BE7AAD16 /* jdarith.c */, + 59B19927E27F39ACB1D2BDA3 /* jdatadst.c */, DECAF5DD80383A2CA76EB383 /* jdatasrc.c */, - ED19EF377E653F71B1876259 /* jdmaster.c */, - CCF7564A2B733F759AA8496B /* jdinput.c */, - 20E4A10BCD773C84AEC481A1 /* jdmarker.c */, - 72869747E68E37998CB0A07E /* jdhuff.c */, - E85E680C62B63D4EBAB2E784 /* jdphuff.c */, - B2D390E5D5BF32D4AAA1E15A /* jdmainct.c */, F1A6F3936A0D31CBB58082BA /* jdcoefct.c */, - 375FF97B202F3C359402D13E /* jdpostct.c */, - A5BBC1E494D33D028CA547FF /* jddctmgr.c */, - A0DCC5EF59143640BE13AD73 /* jidctfst.c */, - 3C131F7BF8A83960ACB26242 /* jidctflt.c */, - 1DAF0931E4AD3E6581D7FDBC /* jidctint.c */, - 646743F6FDFE3ACFA1A79B40 /* jidctred.c */, - 5FFCF47A161B3E08B19BFE14 /* jdsample.c */, 68B81FBDA49D3C1991B6356A /* jdcolor.c */, + A5BBC1E494D33D028CA547FF /* jddctmgr.c */, + 72869747E68E37998CB0A07E /* jdhuff.c */, + CCF7564A2B733F759AA8496B /* jdinput.c */, + B2D390E5D5BF32D4AAA1E15A /* jdmainct.c */, + 20E4A10BCD773C84AEC481A1 /* jdmarker.c */, + ED19EF377E653F71B1876259 /* jdmaster.c */, + 0890779C662C35889A8C6C2E /* jdmerge.c */, + 375FF97B202F3C359402D13E /* jdpostct.c */, + 5FFCF47A161B3E08B19BFE14 /* jdsample.c */, + 4549845C0751356A907C23E0 /* jdtrans.c */, + 108517BCD39230E7A89BC943 /* jerror.c */, + 93D07403FCA530D7A9FD2917 /* jfdctflt.c */, + 029486D6A2EC3DE0902A6A24 /* jfdctfst.c */, + 90EC2A5B80EE3031BA4087B9 /* jfdctint.c */, + 3C131F7BF8A83960ACB26242 /* jidctflt.c */, + A0DCC5EF59143640BE13AD73 /* jidctfst.c */, + 1DAF0931E4AD3E6581D7FDBC /* jidctint.c */, + 14C2A7E01B4B3B168DB73B4F /* jmemmgr.c */, + 374E341C8703367686DEDE93 /* jmemnobs.c */, 4BA14FFC0F4B3AE0B4D6B185 /* jquant1.c */, 02D9332D5C5632E981936E29 /* jquant2.c */, - 0890779C662C35889A8C6C2E /* jdmerge.c */, + 5BEC6B3CAFB532CBB9F95D74 /* jutils.c */, ); name = libjpeg; sourceTree = ""; @@ -3148,7 +3139,6 @@ B839235BED6F3609BDB732B8 /* dndcmn.cpp in Sources */, 2CCC30C0162131DBBE9D8027 /* dobjcmn.cpp in Sources */, F0B3F484C38C3BA0B9927CD9 /* docmdi.cpp in Sources */, - BB12132A86E2350AA47414CC /* arm_init.c in Sources */, B1E30CF6CFA932F5A3DBA94F /* docview.cpp in Sources */, F80C2290D67B345F9CF60085 /* dpycmn.cpp in Sources */, 6BF19C7CA9E93D989C210FE3 /* dseldlg.cpp in Sources */, @@ -3314,7 +3304,6 @@ F016C51053373E658ED4C9A9 /* helpext.cpp in Sources */, 760C729E41D93CC1AA2B4E0D /* hyperlinkg.cpp in Sources */, 955D2199F1893D37BA2D7478 /* laywin.cpp in Sources */, - 0F2FD12272023C869CE86008 /* filter_neon_intrinsics.c in Sources */, CEE0D7A7D5D8323B9957A780 /* notifmsgg.cpp in Sources */, 1E17F95DD433379E8C18298C /* odcombo.cpp in Sources */, 6A10511265493FA2BB79CE4D /* propdlg.cpp in Sources */, @@ -3532,53 +3521,52 @@ 7A79D9AC608E3B8287229174 /* tif_warning.c in Sources */, F2F2963D8ECC32D39FDBF101 /* tif_write.c in Sources */, 6E2C2E8AA1713ADE9C338379 /* tif_zip.c in Sources */, - FCE5B139CBE73FCB804EF7DD /* jcomapi.c in Sources */, - 311840186794346AAAA42091 /* jutils.c in Sources */, - DE26572475EE336B8EEA5D92 /* jerror.c in Sources */, - 18A318847EAC37F2B915F081 /* jmemmgr.c in Sources */, - A7692B4D8658347BA16EEB83 /* jmemnobs.c in Sources */, + 5D3AD309AF39385EBF7D9DF8 /* jaricom.c in Sources */, 894D43C8F224394FB3171F26 /* jcapimin.c in Sources */, 743BB23211B336A6A0F26E57 /* jcapistd.c in Sources */, - CCE4ECA9CE883B008065C6FB /* jctrans.c in Sources */, - ACD644CFA85A3B70A3E3B118 /* jcparam.c in Sources */, - 76A83A293C9F33BCB7DFDE26 /* jdatadst.c in Sources */, - 86003C8EB906304F9025F788 /* jcinit.c in Sources */, - C6DF6F29407B34F29ED1B66D /* jcmaster.c in Sources */, - DB73248401573A5996D8E68D /* jcmarker.c in Sources */, - 98DF13E96160304EBB905E73 /* jcmainct.c in Sources */, - 32486A808EBC3E088598D51C /* jcprepct.c in Sources */, + 7EB83F6375BF3E73ABE56C40 /* jcarith.c in Sources */, CA5BD8ABDBA13641BBE7CD66 /* jccoefct.c in Sources */, 11DD420E32FB3EFB9DA0AB5B /* jccolor.c in Sources */, - 50D7E093424138C88BB50D27 /* jcsample.c in Sources */, - BDB7B2AD26CB356B8BEAAECD /* jchuff.c in Sources */, - A212431902B8343CA6D229D3 /* jcphuff.c in Sources */, BFA6983551B4310DA7C8A404 /* jcdctmgr.c in Sources */, - 9B3F9D04FB533D99B58BD519 /* jfdctfst.c in Sources */, - CC6752334EB93A6B9C0391B3 /* filter_neon.S in Sources */, - 0948599C4FD53611A09B52AB /* jfdctflt.c in Sources */, - CEC6430AEB6E3200BFA75D07 /* jfdctint.c in Sources */, + BDB7B2AD26CB356B8BEAAECD /* jchuff.c in Sources */, + 86003C8EB906304F9025F788 /* jcinit.c in Sources */, + 98DF13E96160304EBB905E73 /* jcmainct.c in Sources */, + DB73248401573A5996D8E68D /* jcmarker.c in Sources */, + C6DF6F29407B34F29ED1B66D /* jcmaster.c in Sources */, + FCE5B139CBE73FCB804EF7DD /* jcomapi.c in Sources */, + ACD644CFA85A3B70A3E3B118 /* jcparam.c in Sources */, + 32486A808EBC3E088598D51C /* jcprepct.c in Sources */, + 50D7E093424138C88BB50D27 /* jcsample.c in Sources */, + CCE4ECA9CE883B008065C6FB /* jctrans.c in Sources */, 8B9C9FCB954F3596A4CED9A5 /* jdapimin.c in Sources */, 67EBCE5FA5FF36349ADF0916 /* jdapistd.c in Sources */, - 11818B68C5263EB68D708845 /* jdtrans.c in Sources */, + 8093A858CA9E3E9EA2D2185F /* jdarith.c in Sources */, + 76A83A293C9F33BCB7DFDE26 /* jdatadst.c in Sources */, 4CB3626391CE34D4B1F71AA0 /* jdatasrc.c in Sources */, - CEBAAB0C77983358A601BFFE /* jdmaster.c in Sources */, - 14EF556997B0350F931EBE8E /* jdinput.c in Sources */, - 61C3F7D495FB3E8BA402E4F8 /* jdmarker.c in Sources */, - 28ADE8D385A53445A5451F23 /* jdhuff.c in Sources */, - D0DA11B814AF30A18585122F /* jdphuff.c in Sources */, - 9FD99E06F6613A1A958FAF6B /* jdmainct.c in Sources */, B5470121BB4B35DE9C4836DA /* jdcoefct.c in Sources */, - E7D02E64384F37BC8939A2C4 /* jdpostct.c in Sources */, - 13854E7822783719A2530792 /* jddctmgr.c in Sources */, - 48A1F28E04603A68A1E70318 /* jidctfst.c in Sources */, - B01C4EF49CF9390DA93A3502 /* jidctflt.c in Sources */, - C43A9650A9DC3372AB8F5F78 /* jidctint.c in Sources */, - 1A7FA35BDE4F35C685AB51A5 /* jidctred.c in Sources */, - D997FFC948B73FDA892DB531 /* jdsample.c in Sources */, D9F02AFDA07D3857A905527C /* jdcolor.c in Sources */, + 13854E7822783719A2530792 /* jddctmgr.c in Sources */, + 28ADE8D385A53445A5451F23 /* jdhuff.c in Sources */, + 14EF556997B0350F931EBE8E /* jdinput.c in Sources */, + 9FD99E06F6613A1A958FAF6B /* jdmainct.c in Sources */, + 61C3F7D495FB3E8BA402E4F8 /* jdmarker.c in Sources */, + CEBAAB0C77983358A601BFFE /* jdmaster.c in Sources */, + 1E4832B42B95308299B767B9 /* jdmerge.c in Sources */, + E7D02E64384F37BC8939A2C4 /* jdpostct.c in Sources */, + D997FFC948B73FDA892DB531 /* jdsample.c in Sources */, + 11818B68C5263EB68D708845 /* jdtrans.c in Sources */, + DE26572475EE336B8EEA5D92 /* jerror.c in Sources */, + 0948599C4FD53611A09B52AB /* jfdctflt.c in Sources */, + 9B3F9D04FB533D99B58BD519 /* jfdctfst.c in Sources */, + CEC6430AEB6E3200BFA75D07 /* jfdctint.c in Sources */, + B01C4EF49CF9390DA93A3502 /* jidctflt.c in Sources */, + 48A1F28E04603A68A1E70318 /* jidctfst.c in Sources */, + C43A9650A9DC3372AB8F5F78 /* jidctint.c in Sources */, + 18A318847EAC37F2B915F081 /* jmemmgr.c in Sources */, + A7692B4D8658347BA16EEB83 /* jmemnobs.c in Sources */, 15D65A523EB23EC385C05E0B /* jquant1.c in Sources */, 3C0EB1DDA5243E31B2D92CE2 /* jquant2.c in Sources */, - 1E4832B42B95308299B767B9 /* jdmerge.c in Sources */, + 311840186794346AAAA42091 /* jutils.c in Sources */, 94B1C88076793400810FAC30 /* png.c in Sources */, 1569BB4728693B6285623A23 /* pngerror.c in Sources */, D9496139621533328AE727B6 /* pngget.c in Sources */, From 986f61f33eac945a4a50896333e662060768a23d Mon Sep 17 00:00:00 2001 From: ali kettab Date: Wed, 14 Feb 2018 12:24:32 +0100 Subject: [PATCH 359/916] Avoid wxEVT_TEXT_ENTER when completion popup is shown in wxGTK --- src/gtk/textentry.cpp | 65 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 64 insertions(+), 1 deletion(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 84144d2289..9ffc06ace9 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -148,7 +148,19 @@ wx_gtk_insert_text_callback(GtkEditable *editable, g_signal_stop_emission_by_name (editable, "insert_text"); } } -} + +// GTK+ does not expose any mechanism that we can really rely on to detect if/when +// the completion popup is shown or hidden. And the sole reliable way (for now) to +// know its state is to connect to the "grab-notify" signal and be notified then +// for its state. this is the best we can do for now than any other alternative. +// (GtkEntryCompletion grabs/ungrabs keyboard and mouse events on popups/popdowns). + +static void +wx_gtk_entry_parent_grab_notify (GtkWidget *widget, + gboolean was_grabbed, + wxTextAutoCompleteData *data); + +} // extern "C" //----------------------------------------------------------------------------- // clipboard events: "copy-clipboard", "cut-clipboard", "paste-clipboard" @@ -210,9 +222,23 @@ public: // for wxTextAutoCompleteFixed. virtual bool ChangeCompleter(wxTextCompleter* completer) = 0; + // We should toggle off wxTE_PROCESS_ENTER flag of our wxTextEntry while + // the completion popup is shown to let it see Enter event and process it + // on its own (e.g. to dismiss itself). This is done by "grab-notify" signal + // see wxTextCtrl::OnChar() + void ToggleProcessEnterFlag( bool toggleOff ) + { + if ( toggleOff ) + GetEditableWindow(m_entry)->SetWindowStyleFlag(m_origWinFlags & ~wxTE_PROCESS_ENTER); + else + GetEditableWindow(m_entry)->SetWindowStyleFlag(m_origWinFlags); + } + void DisableCompletion() { gtk_entry_set_completion (GetGtkEntry(), NULL); + + g_signal_handlers_disconnect_by_data (GetGtkEntry(), this); } virtual ~wxTextAutoCompleteData() @@ -234,10 +260,17 @@ protected: explicit wxTextAutoCompleteData(wxTextEntry* entry) : m_entry(entry) { + // Save original flags + m_origWinFlags = GetEditableWindow(m_entry)->GetWindowStyleFlag(); + GtkEntryCompletion* const completion = gtk_entry_completion_new(); gtk_entry_completion_set_text_column (completion, 0); gtk_entry_set_completion (GetGtkEntry(), completion); + + g_signal_connect (GTK_WIDGET(GetGtkEntry()), "grab-notify", + G_CALLBACK (wx_gtk_entry_parent_grab_notify), + this); } // Provide access to wxTextEntry::GetEditableWindow() to the derived @@ -270,6 +303,9 @@ protected: // The text entry we're associated with. wxTextEntry * const m_entry; + // The original flags of the associated wxTextEntry. + long m_origWinFlags; + wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteData); }; @@ -410,6 +446,33 @@ private: wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteDynamic); }; +extern "C" +{ + +static void +wx_gtk_entry_parent_grab_notify (GtkWidget *widget, + gboolean was_grabbed, + wxTextAutoCompleteData *data) +{ + g_return_if_fail (GTK_IS_ENTRY(widget)); + + bool toggleOff = false; + + if ( gtk_widget_has_focus (widget) ) + { + // If was_grabbed is FALSE that means the topmost grab widget ancestor + // of our GtkEntry becomes shadowed by a call to gtk_grab_add() + // which means that the GtkEntryCompletion popup window is actually + // shown on screen. + + if ( !was_grabbed ) + toggleOff = true; + } + + data->ToggleProcessEnterFlag(toggleOff); +} + +} // extern "C" // ============================================================================ // wxTextEntry implementation From dd5d755bc2354871efecba2ff6c18013c65d21fb Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Thu, 15 Feb 2018 19:54:42 +0100 Subject: [PATCH 360/916] Fix reading 64-bit values from ZIP headers Specific values where not correctly converted because of a signed/unsigned mismatch. --- src/common/zipstrm.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/zipstrm.cpp b/src/common/zipstrm.cpp index 063c1edf4c..3b25275b7f 100644 --- a/src/common/zipstrm.cpp +++ b/src/common/zipstrm.cpp @@ -133,7 +133,7 @@ static inline wxUint64 CrackUint64(const char *m) (static_cast(n[6]) << 48) | (static_cast(n[5]) << 40) | (static_cast(n[4]) << 32) | - (n[3] << 24) | (n[2] << 16) | (n[1] << 8) | n[0]; + (static_cast(n[3]) << 24) | (n[2] << 16) | (n[1] << 8) | n[0]; } // Decode a little endian wxUint32 number from a character array From 29f5eeb69db9a7751a3f396416baae0818f825fd Mon Sep 17 00:00:00 2001 From: Tobias Taschner Date: Tue, 13 Feb 2018 23:16:58 +0100 Subject: [PATCH 361/916] Fix ZIP64 creation with individual files larger 4GB If single files larger than 4GB where added the recorded file sizes in the local file header where not updated correctly. Additionally recorded file sizes in the central directory where in the wrong order making it impossible to extract. To enable adding files with unknown size which might be larger than 4GB the new method wxZipOutputStream::SetFormat() is added. Additionally a check has been added in case a file larger 4GB has been written without ZIP64 info. --- include/wx/zipstrm.h | 20 +++++++++- interface/wx/zipstrm.h | 44 ++++++++++++++++++++++ src/common/zipstrm.cpp | 84 ++++++++++++++++++++++++++++++------------ 3 files changed, 124 insertions(+), 24 deletions(-) diff --git a/include/wx/zipstrm.h b/include/wx/zipstrm.h index 9323cd101c..6191dcda81 100644 --- a/include/wx/zipstrm.h +++ b/include/wx/zipstrm.h @@ -110,6 +110,14 @@ enum wxZipFlags wxZIP_RESERVED = 0xF000 }; +enum wxZipArchiveFormat +{ + /// Default zip format + wxZIP_FORMAT_DEFAULT, + /// ZIP64 format + wxZIP_FORMAT_ZIP64 +}; + // Forward decls // class WXDLLIMPEXP_FWD_BASE wxZipEntry; @@ -131,6 +139,8 @@ public: ///////////////////////////////////////////////////////////////////////////// // Zip Entry - holds the meta data for a file in the zip +class wxDataOutputStream; + class WXDLLIMPEXP_BASE wxZipEntry : public wxArchiveEntry { public: @@ -225,7 +235,7 @@ private: wxArchiveEntry* DoClone() const wxOVERRIDE { return ZipClone(); } size_t ReadLocal(wxInputStream& stream, wxMBConv& conv); - size_t WriteLocal(wxOutputStream& stream, wxMBConv& conv) const; + size_t WriteLocal(wxOutputStream& stream, wxMBConv& conv, wxZipArchiveFormat zipFormat); size_t ReadCentral(wxInputStream& stream, wxMBConv& conv); size_t WriteCentral(wxOutputStream& stream, wxMBConv& conv) const; @@ -234,6 +244,9 @@ private: size_t WriteDescriptor(wxOutputStream& stream, wxUint32 crc, wxFileOffset compressedSize, wxFileOffset size); + void WriteLocalFileSizes(wxDataOutputStream& ds) const; + void WriteLocalZip64ExtraInfo(wxOutputStream& stream) const; + bool LoadExtraInfo(const char* extraData, wxUint16 extraLen, bool localInfo); wxUint16 GetInternalFlags(bool checkForUTF8) const; @@ -256,6 +269,7 @@ private: wxUint16 m_DiskStart; // for multidisk archives, not unsupported wxUint16 m_InternalAttributes; // bit 0 set for text files wxUint32 m_ExternalAttributes; // system specific depends on SystemMadeBy + wxUint16 m_z64infoOffset; // Offset of ZIP64 local extra data for file sizes class wxZipMemory *m_Extra; class wxZipMemory *m_LocalExtra; @@ -307,6 +321,9 @@ public: int GetLevel() const { return m_level; } void WXZIPFIX SetLevel(int level); + void SetFormat(wxZipArchiveFormat format) { m_format = format; }; + wxZipArchiveFormat GetFormat() const { return m_format; }; + protected: virtual size_t WXZIPFIX OnSysWrite(const void *buffer, size_t size) wxOVERRIDE; virtual wxFileOffset OnSysTell() const wxOVERRIDE { return m_entrySize; } @@ -351,6 +368,7 @@ private: wxFileOffset m_offsetAdjustment; wxString m_Comment; bool m_endrecWritten; + wxZipArchiveFormat m_format; wxDECLARE_NO_COPY_CLASS(wxZipOutputStream); }; diff --git a/interface/wx/zipstrm.h b/interface/wx/zipstrm.h index 8a787b7031..c3d54ebfd4 100644 --- a/interface/wx/zipstrm.h +++ b/interface/wx/zipstrm.h @@ -80,6 +80,19 @@ enum wxZipFlags wxZIP_RESERVED = 0xF000 }; +/** + Zip archive format + + @since 3.1.1 +*/ +enum wxZipArchiveFormat +{ + /// Default zip format + wxZIP_FORMAT_DEFAULT, + /// ZIP64 format + wxZIP_FORMAT_ZIP64 +}; + /** @class wxZipNotifier @@ -558,11 +571,17 @@ public: //@{ /** Takes ownership of @a entry and uses it to create a new entry in the zip. + + If you do not specify a size and plan to put more than 4GB data into the + entry see SetFormat() */ bool PutNextEntry(wxZipEntry* entry); /** Create a new entry with the given name, timestamp and size. + + If you do not specify a size and plan to put more than 4GB data into the + entry see SetFormat() */ bool PutNextEntry(const wxString& name, const wxDateTime& dt = wxDateTime::Now(), @@ -574,5 +593,30 @@ public: It is written at the end of the zip. */ void SetComment(const wxString& comment); + + /** + Set the format of the archive. + + The normal zip format is limited to single files and the complete + archive smaller than 4GB with less then 65k files. If any of these + limits are exceed this class will automatically create a ZIP64 file. + + However to support single entries with more than 4GB of data + (compressed or original) which sizes are unknown when adding the + entry with PutNextEntry() the format has to be set to + wxZIP_FORMAT_ZIP64 adding such entries. + + @since 3.1.1 + */ + void SetFormat(wxZipArchiveFormat format); + + /** + Get the format of the archive. + + @since 3.1.1 + + @see SetFormat() + */ + wxZipArchiveFormat GetFormat() const; }; diff --git a/src/common/zipstrm.cpp b/src/common/zipstrm.cpp index 3b25275b7f..5269de93f7 100644 --- a/src/common/zipstrm.cpp +++ b/src/common/zipstrm.cpp @@ -757,6 +757,7 @@ wxZipEntry::wxZipEntry( m_DiskStart(0), m_InternalAttributes(0), m_ExternalAttributes(0), + m_z64infoOffset(0), m_Extra(NULL), m_LocalExtra(NULL), m_zipnotifier(NULL), @@ -792,6 +793,7 @@ wxZipEntry::wxZipEntry(const wxZipEntry& e) m_DiskStart(e.m_DiskStart), m_InternalAttributes(e.m_InternalAttributes), m_ExternalAttributes(e.m_ExternalAttributes), + m_z64infoOffset(0), m_Extra(AddRef(e.m_Extra)), m_LocalExtra(AddRef(e.m_LocalExtra)), m_zipnotifier(NULL), @@ -1127,7 +1129,7 @@ size_t wxZipEntry::ReadLocal(wxInputStream& stream, wxMBConv& conv) return LOCAL_SIZE + nameLen + extraLen; } -size_t wxZipEntry::WriteLocal(wxOutputStream& stream, wxMBConv& conv) const +size_t wxZipEntry::WriteLocal(wxOutputStream& stream, wxMBConv& conv, wxZipArchiveFormat zipFormat) { wxString unixName = GetName(wxPATH_UNIX); const wxWX2MBbuf name_buf = unixName.mb_str(conv); @@ -1135,9 +1137,11 @@ size_t wxZipEntry::WriteLocal(wxOutputStream& stream, wxMBConv& conv) const if (!name) name = ""; wxUint16 nameLen = wx_truncate_cast(wxUint16, strlen(name)); - bool z64Required = m_CompressedSize > 0xffffffff || m_Size > 0xffffffff; + if ( (zipFormat == wxZIP_FORMAT_ZIP64) || + m_CompressedSize >= 0xffffffff || m_Size >= 0xffffffff ) + m_z64infoOffset = LOCAL_SIZE + nameLen; wxUint16 versionNeeded = - z64Required ? Z64_VERSION_NEEDED_TO_EXTRACT : int(m_VersionNeeded); + (m_z64infoOffset > 0) ? Z64_VERSION_NEEDED_TO_EXTRACT : int(m_VersionNeeded); wxDataOutputStream ds(stream); @@ -1145,25 +1149,17 @@ size_t wxZipEntry::WriteLocal(wxOutputStream& stream, wxMBConv& conv) const ds.Write32(GetDateTime().GetAsDOS()); ds.Write32(m_Crc); - ds.Write32(m_CompressedSize != wxInvalidOffset ? - LimitUint32(m_CompressedSize) : 0); - ds.Write32(m_Size != wxInvalidOffset ? - LimitUint32(m_Size) : 0); + WriteLocalFileSizes(ds); ds << nameLen; wxUint16 extraLen = wx_truncate_cast(wxUint16, GetLocalExtraLen()); - if (z64Required) + if (m_z64infoOffset) extraLen += 20; // tag and 2x64bit file sizes ds.Write16(extraLen); stream.Write(name, nameLen); - if (z64Required) - { - ds.Write16(1); // id - ds.Write16(16); // record size - ds.Write64(static_cast(m_CompressedSize)); - ds.Write64(static_cast(m_Size)); - } + if (m_z64infoOffset > 0) + WriteLocalZip64ExtraInfo(stream); if (GetLocalExtraLen()) stream.Write(m_LocalExtra->GetData(), GetLocalExtraLen()); @@ -1264,7 +1260,7 @@ size_t wxZipEntry::WriteCentral(wxOutputStream& stream, wxMBConv& conv) const } wxUint16 versionNeeded = - (z64Required) ? Z64_VERSION_NEEDED_TO_EXTRACT : GetVersionNeeded(); + (z64Required || m_z64infoOffset) ? Z64_VERSION_NEEDED_TO_EXTRACT : GetVersionNeeded(); wxDataOutputStream ds(stream); @@ -1288,10 +1284,10 @@ size_t wxZipEntry::WriteCentral(wxOutputStream& stream, wxMBConv& conv) const { ds.Write16(1); // tag ds.Write16(z64InfoLen); // record size - if (m_CompressedSize > 0xffffffff) - ds.Write64(static_cast(m_CompressedSize)); if (m_Size > 0xffffffff) ds.Write64(static_cast(m_Size)); + if (m_CompressedSize > 0xffffffff) + ds.Write64(static_cast(m_CompressedSize)); if (m_Offset > 0xffffffff) ds.Write64(static_cast(m_Offset)); } @@ -1357,12 +1353,40 @@ size_t wxZipEntry::WriteDescriptor(wxOutputStream& stream, wxUint32 crc, wxDataOutputStream ds(stream); ds.Write32(crc); - ds.Write32(wx_truncate_cast(wxUint32, compressedSize)); - ds.Write32(wx_truncate_cast(wxUint32, size)); + WriteLocalFileSizes(ds); return SUMS_SIZE; } +void wxZipEntry::WriteLocalFileSizes(wxDataOutputStream& ds) const +{ + wxUint32 compressedSize; + wxUint32 size; + if (m_z64infoOffset > 0) + { + compressedSize = 0xffffffff; + size = 0xffffffff; + } + else + { + compressedSize = m_CompressedSize != wxInvalidOffset ? + wx_truncate_cast(wxUint32, m_CompressedSize) : 0; + size = m_Size != wxInvalidOffset ? + wx_truncate_cast(wxUint32, m_Size) : 0; + } + ds.Write32(compressedSize); + ds.Write32(size); +} + +void wxZipEntry::WriteLocalZip64ExtraInfo(wxOutputStream& stream) const +{ + wxDataOutputStream ds(stream); + ds.Write16(1); // id + ds.Write16(16); // record size + ds.Write64(static_cast(m_Size)); + ds.Write64(static_cast(m_CompressedSize)); +} + // Returns the flags as specified or including the UTF-8 flag if filename // contains non ASCII characters wxUint16 wxZipEntry::GetInternalFlags(bool checkForUTF8) const @@ -2173,6 +2197,7 @@ void wxZipOutputStream::Init(int level) m_level = level; m_offsetAdjustment = wxInvalidOffset; m_endrecWritten = false; + m_format = wxZIP_FORMAT_DEFAULT; } wxZipOutputStream::~wxZipOutputStream() @@ -2401,7 +2426,7 @@ void wxZipOutputStream::CreatePendingEntry(const void *buffer, size_t size) if (spPending->m_CompressedSize != wxInvalidOffset) spPending->m_Flags |= wxZIP_SUMS_FOLLOW; - m_headerSize = spPending->WriteLocal(*m_parent_o_stream, GetConv()); + m_headerSize = spPending->WriteLocal(*m_parent_o_stream, GetConv(), m_format); m_lasterror = m_parent_o_stream->GetLastError(); if (IsOk()) { @@ -2454,7 +2479,7 @@ void wxZipOutputStream::CreatePendingEntry() } spPending->m_Flags &= ~wxZIP_SUMS_FOLLOW; - m_headerSize = spPending->WriteLocal(*m_parent_o_stream, GetConv()); + m_headerSize = spPending->WriteLocal(*m_parent_o_stream, GetConv(), m_format); if (m_parent_o_stream->IsOk()) { m_entries.push_back(spPending.release()); @@ -2552,6 +2577,12 @@ bool wxZipOutputStream::CloseEntry() m_parent_o_stream->SeekO(headerOffset + SUMS_OFFSET); entry.WriteDescriptor(*m_parent_o_stream, m_crcAccumulator, compressedSize, m_entrySize); + if (entry.m_z64infoOffset > 0) + { + // Skip to ZIP64 extended information extra field + m_parent_o_stream->SeekO(headerOffset + entry.m_z64infoOffset); + entry.WriteLocalZip64ExtraInfo(*m_parent_o_stream); + } m_parent_o_stream->SeekO(here); m_lasterror = m_parent_o_stream->GetLastError(); } else { @@ -2565,7 +2596,14 @@ bool wxZipOutputStream::CloseEntry() m_store->Close(); m_raw = false; - if (IsOk()) + if (IsOk() && entry.m_z64infoOffset == 0 && + (entry.m_CompressedSize > 0xffffffff || entry.m_Size > 0xffffffff)) + { + wxLogError(_("error writing zip entry '%s': file too large without ZIP64"), + entry.GetName().c_str()); + m_lasterror = wxSTREAM_WRITE_ERROR; + } + else if (IsOk()) m_lasterror = m_parent_o_stream->GetLastError(); else wxLogError(_("error writing zip entry '%s': bad crc or length"), From 4265e671fd6c70bca7794a9006d84daad6dc6455 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 9 Feb 2018 23:26:36 +0100 Subject: [PATCH 362/916] Fix wxGTK compilation with Cairo 1.2 Avoid using cairo_clip_extents() function, which was added in 1.4, unless we have at least this version at both compile- and run-time. This allows the library to be compiled under CentOS 5, which only has Cairo 1.2 and which is, unfortunately, still in use. --- src/generic/graphicc.cpp | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/generic/graphicc.cpp b/src/generic/graphicc.cpp index bb30529579..fa7cea6226 100644 --- a/src/generic/graphicc.cpp +++ b/src/generic/graphicc.cpp @@ -2408,10 +2408,21 @@ void wxCairoContext::ResetClip() void wxCairoContext::GetClipBox(wxDouble* x, wxDouble* y, wxDouble* w, wxDouble* h) { double x1, y1, x2, y2; - cairo_clip_extents(m_context, &x1, &y1, &x2, &y2); - // Check if we have an empty clipping box. - if ( x2 - x1 <= DBL_MIN || y2 - y1 <= DBL_MIN ) +#if CAIRO_VERSION >= CAIRO_VERSION_ENCODE(1, 4, 0) + if ( cairo_version() >= CAIRO_VERSION_ENCODE(1, 4, 0) ) + { + cairo_clip_extents(m_context, &x1, &y1, &x2, &y2); + // Check if we have an empty clipping box. + if ( x2 - x1 <= DBL_MIN || y2 - y1 <= DBL_MIN ) + x1 = x2 = y1 = y2 = 0.0; + } + else +#endif // Cairo >= 1.4 + { + // There doesn't seem to be any way to get the clipping box with this + // ancient version. x1 = x2 = y1 = y2 = 0.0; + } if ( x ) *x = x1; From 5b2bb1ab8141b2edeb29ef3229c7993f4638e820 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 16 Feb 2018 13:27:13 +0100 Subject: [PATCH 363/916] Minor cleanup after the previous commit Make m_origWinFlags const; keep just a single call to SetWindowStyleFlag() and some space harmonization. No real changes. --- src/gtk/textentry.cpp | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 9ffc06ace9..0a89c11129 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -226,19 +226,20 @@ public: // the completion popup is shown to let it see Enter event and process it // on its own (e.g. to dismiss itself). This is done by "grab-notify" signal // see wxTextCtrl::OnChar() - void ToggleProcessEnterFlag( bool toggleOff ) + void ToggleProcessEnterFlag(bool toggleOff) { + long flags = m_origWinFlags; if ( toggleOff ) - GetEditableWindow(m_entry)->SetWindowStyleFlag(m_origWinFlags & ~wxTE_PROCESS_ENTER); - else - GetEditableWindow(m_entry)->SetWindowStyleFlag(m_origWinFlags); + flags &= ~wxTE_PROCESS_ENTER; + + GetEditableWindow(m_entry)->SetWindowStyleFlag(flags); } void DisableCompletion() { gtk_entry_set_completion (GetGtkEntry(), NULL); - g_signal_handlers_disconnect_by_data (GetGtkEntry(), this); + g_signal_handlers_disconnect_by_data(GetGtkEntry(), this); } virtual ~wxTextAutoCompleteData() @@ -258,11 +259,9 @@ protected: } explicit wxTextAutoCompleteData(wxTextEntry* entry) - : m_entry(entry) + : m_entry(entry), + m_origWinFlags(GetEditableWindow(m_entry)->GetWindowStyleFlag()) { - // Save original flags - m_origWinFlags = GetEditableWindow(m_entry)->GetWindowStyleFlag(); - GtkEntryCompletion* const completion = gtk_entry_completion_new(); gtk_entry_completion_set_text_column (completion, 0); @@ -304,7 +303,7 @@ protected: wxTextEntry * const m_entry; // The original flags of the associated wxTextEntry. - long m_origWinFlags; + const long m_origWinFlags; wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteData); }; @@ -458,7 +457,7 @@ wx_gtk_entry_parent_grab_notify (GtkWidget *widget, bool toggleOff = false; - if ( gtk_widget_has_focus (widget) ) + if ( gtk_widget_has_focus(widget) ) { // If was_grabbed is FALSE that means the topmost grab widget ancestor // of our GtkEntry becomes shadowed by a call to gtk_grab_add() From 8577d9ddca969c6ce07a8081f6380954c4816bc2 Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Wed, 14 Feb 2018 23:05:24 +0100 Subject: [PATCH 364/916] Fix build warnings in Direct2D related code Regressions since df1456e4e2c2ac029ebcad17db5f5eb3478d1bc6 and b936bfe85efaf0e179ec6ce071853934aecdf43a. See https://github.com/wxWidgets/wxWidgets/pull/731 --- src/msw/graphicsd2d.cpp | 4 ++-- src/stc/PlatWX.cpp | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/msw/graphicsd2d.cpp b/src/msw/graphicsd2d.cpp index 5d562102b0..87e1a4bd01 100644 --- a/src/msw/graphicsd2d.cpp +++ b/src/msw/graphicsd2d.cpp @@ -41,8 +41,8 @@ #include #ifdef __MINGW64_TOOLCHAIN__ -#ifndef DRWITE_E_NOFONT -#define DWRITE_E_NOFONT _HRESULT_TYPEDEF_(0x88985002) +#ifndef DWRITE_E_NOFONT +#define DWRITE_E_NOFONT _HRESULT_TYPEDEF_(0x88985002L) #endif #endif diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index 431d7a7361..b46c5ef885 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -797,9 +797,9 @@ bool SurfaceFontDataD2D::Initialised() const // SurfaceDataD2D SurfaceDataD2D::SurfaceDataD2D(ScintillaWX* editor) - : m_editor(editor), - m_pD2DFactory(::wxD2D1Factory()), - m_pDWriteFactory(::wxDWriteFactory()) + : m_pD2DFactory(::wxD2D1Factory()), + m_pDWriteFactory(::wxDWriteFactory()), + m_editor(editor) { if ( Initialised() ) { @@ -1107,7 +1107,7 @@ void SurfaceD2D::Release() m_clipsActive--; } hr = m_pRenderTarget->EndDraw(); - if ( hr == D2DERR_RECREATE_TARGET && m_surfaceData && !m_ownRenderTarget ) + if ( hr == (HRESULT)D2DERR_RECREATE_TARGET && m_surfaceData && !m_ownRenderTarget ) { m_surfaceData->DiscardGraphicsResources(); m_surfaceData->SetEditorPaintAbandoned(); From b552efedfc6830859053361bb867ba0ae464814b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 16 Feb 2018 15:57:05 +0100 Subject: [PATCH 365/916] Remove commented out line in wxOSX SetFocus() No real changes, just remove a "TODO" comment as it seems it's safe to do it after 5+ years (see f897d9ed1a1d1c4cdce789ef0cd2963e199b4595 which added it). --- src/osx/cocoa/window.mm | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index 2c2c3e48a6..3f261bbee4 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -3045,8 +3045,6 @@ bool wxWidgetCocoaImpl::SetFocus() if ( [m_osxView isKindOfClass:[NSScrollView class] ] ) targetView = [(NSScrollView*) m_osxView documentView]; - // TODO remove if no issues arise: should not raise the window, only assign focus - //[[m_osxView window] makeKeyAndOrderFront:nil] ; [[m_osxView window] makeFirstResponder: targetView] ; return true; } From a3673be1559a60870379f9c87a757ae698f6aa2f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 16 Feb 2018 16:02:42 +0100 Subject: [PATCH 366/916] Clarify and improve wording of ZIP64 documentation Try to make it more clear when SetFormat(wxZIP_FORMAT_ZIP64) needs to be called and add some missing words. --- interface/wx/zipstrm.h | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/interface/wx/zipstrm.h b/interface/wx/zipstrm.h index c3d54ebfd4..7b8f136997 100644 --- a/interface/wx/zipstrm.h +++ b/interface/wx/zipstrm.h @@ -87,9 +87,9 @@ enum wxZipFlags */ enum wxZipArchiveFormat { - /// Default zip format + /// Default zip format: use ZIP64 if it is determined to be necessary. wxZIP_FORMAT_DEFAULT, - /// ZIP64 format + /// ZIP64 format: force the use of ZIP64 format. wxZIP_FORMAT_ZIP64 }; @@ -599,12 +599,13 @@ public: The normal zip format is limited to single files and the complete archive smaller than 4GB with less then 65k files. If any of these - limits are exceed this class will automatically create a ZIP64 file. + limits are exceeded, this class will automatically create a ZIP64 file, + so in most situations calling SetFormat() is not necessary. However to support single entries with more than 4GB of data - (compressed or original) which sizes are unknown when adding the - entry with PutNextEntry() the format has to be set to - wxZIP_FORMAT_ZIP64 adding such entries. + (compressed or original) whose sizes are unknown when adding the + entry with PutNextEntry(), the format has to be set to + wxZIP_FORMAT_ZIP64 before adding such entries. @since 3.1.1 */ @@ -613,10 +614,12 @@ public: /** Get the format of the archive. + This returns the value passed to SetFormat() and not necessarily the + actual archive format (e.g. this method could return + wxZIP_FORMAT_DEFAULT even if a ZIP64 will end up being created). + @since 3.1.1 - @see SetFormat() - */ wxZipArchiveFormat GetFormat() const; }; From 28bf0e8687465e5d1f031faf6b07ff94a3cc76d7 Mon Sep 17 00:00:00 2001 From: Hugo Elias Date: Sun, 24 Dec 2017 15:14:00 +0100 Subject: [PATCH 367/916] Add wxIMAGE_OPTION_GIF_TRANSPARENCY for GIF image loading Allow to keep the originally defined transparent pixels colour instead of replacing it with bright pink (which is still the default behaviour). Closes #18014. --- docs/changes.txt | 1 + include/wx/imaggif.h | 4 +++ interface/wx/image.h | 16 +++++++++++ src/common/gifdecod.cpp | 60 ++++++++++++++++++++++++++++++++--------- 4 files changed, 69 insertions(+), 12 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 373590c364..7fc8529dd0 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -183,6 +183,7 @@ All (GUI): - Extend wxRendererNative::DrawGauge() to work for vertical gauges too. - Add wxHD_BITMAP_ON_RIGHT style to wxHeaderCtrl. - Send wxEVT_DATAVIEW_ITEM_EDITING_DONE when editing was cancelled too. +- Add wxIMAGE_OPTION_GIF_TRANSPARENCY (Hugo Elias). wxGTK: diff --git a/include/wx/imaggif.h b/include/wx/imaggif.h index b59744c0cb..48b07dc147 100644 --- a/include/wx/imaggif.h +++ b/include/wx/imaggif.h @@ -20,6 +20,10 @@ #define wxIMAGE_OPTION_GIF_COMMENT wxT("GifComment") +#define wxIMAGE_OPTION_GIF_TRANSPARENCY wxS("Transparency") +#define wxIMAGE_OPTION_GIF_TRANSPARENCY_HIGHLIGHT wxS("Highlight") +#define wxIMAGE_OPTION_GIF_TRANSPARENCY_UNCHANGED wxS("Unchanged") + struct wxRGB; struct GifHashTableType; class WXDLLIMPEXP_FWD_CORE wxImageArray; // anidecod.h diff --git a/interface/wx/image.h b/interface/wx/image.h index 0b3c85b315..9a6f39737f 100644 --- a/interface/wx/image.h +++ b/interface/wx/image.h @@ -93,6 +93,9 @@ enum wxImagePNGType #define wxIMAGE_OPTION_CUR_HOTSPOT_Y wxString("HotSpotY") #define wxIMAGE_OPTION_GIF_COMMENT wxString("GifComment") +#define wxIMAGE_OPTION_GIF_TRANSPARENCY wxString("Transparency") +#define wxIMAGE_OPTION_GIF_TRANSPARENCY_HIGHLIGHT wxString("Highlight") +#define wxIMAGE_OPTION_GIF_TRANSPARENCY_UNCHANGED wxString("Unchanged") #define wxIMAGE_OPTION_PNG_FORMAT wxString("PngFormat") #define wxIMAGE_OPTION_PNG_BITDEPTH wxString("PngBitDepth") @@ -1287,6 +1290,19 @@ public: PHOTOMETRIC_MINISWHITE or PHOTOMETRIC_MINISBLACK. The other values are taken care of. + Options specific to wxGIFHandler: + @li @c wxIMAGE_OPTION_GIF_TRANSPARENCY: How to deal with transparent pixels. + By default, the color of transparent pixels is changed to bright pink, so + that if the image is accidentally drawn without transparency, it will be + obvious. + Normally, this would not be noticed, as these pixels will not be rendered. + But in some cases it might be useful to load a GIF without making any + modifications to its colours. + Use @c wxIMAGE_OPTION_GIF_TRANSPARENCY_UNCHANGED to keep the colors correct. + Use @c wxIMAGE_OPTION_GIF_TRANSPARENCY_HIGHLIGHT to convert transparent pixels + to pink (default). + This option has been added in wxWidgets 3.1.1. + @note Be careful when combining the options @c wxIMAGE_OPTION_TIFF_SAMPLESPERPIXEL, @c wxIMAGE_OPTION_TIFF_BITSPERSAMPLE, and @c wxIMAGE_OPTION_TIFF_PHOTOMETRIC. diff --git a/src/common/gifdecod.cpp b/src/common/gifdecod.cpp index bea6addc38..7872120eb7 100644 --- a/src/common/gifdecod.cpp +++ b/src/common/gifdecod.cpp @@ -130,8 +130,10 @@ bool wxGIFDecoder::ConvertToImage(unsigned int frame, wxImage *image) const unsigned long i; int transparent; - // just in case... - image->Destroy(); + // Store the original value of the transparency option, before it is reset + // by Create(). + const wxString& + transparency = image->GetOption(wxIMAGE_OPTION_GIF_TRANSPARENCY); // create the image wxSize sz = GetFrameSize(frame); @@ -149,24 +151,58 @@ bool wxGIFDecoder::ConvertToImage(unsigned int frame, wxImage *image) const // set transparent colour mask if (transparent != -1) { - for (i = 0; i < GetNcolours(frame); i++) + if ( transparency.empty() || + transparency == wxIMAGE_OPTION_GIF_TRANSPARENCY_HIGHLIGHT ) { - if ((pal[3 * i + 0] == 255) && - (pal[3 * i + 1] == 0) && - (pal[3 * i + 2] == 255)) + // By default, we assign bright pink to transparent pixels to make + // them perfectly noticeable if someone accidentally draws the + // image without taking transparency into account. Due to this use + // of pink, we need to change any existing image pixels with this + // colour to use something different. + for (i = 0; i < GetNcolours(frame); i++) { - pal[3 * i + 2] = 254; + if ((pal[3 * i + 0] == 255) && + (pal[3 * i + 1] == 0) && + (pal[3 * i + 2] == 255)) + { + pal[3 * i + 2] = 254; + } } + + pal[3 * transparent + 0] = 255; + pal[3 * transparent + 1] = 0; + pal[3 * transparent + 2] = 255; + + image->SetMaskColour(255, 0, 255); } + else if ( transparency == wxIMAGE_OPTION_GIF_TRANSPARENCY_UNCHANGED ) + { + // Leave the GIF exactly as as it was, just adjust (in the least + // noticeable way, by just flipping a single bit) non-transparent + // pixels colour, + for (i = 0; i < GetNcolours(frame); i++) + { + if ((pal[3 * i + 0] == pal[3 * transparent + 0]) && + (pal[3 * i + 1] == pal[3 * transparent + 1]) && + (pal[3 * i + 2] == pal[3 * transparent + 2])) + { + pal[3 * i + 2] ^= 1; + } + } - pal[3 * transparent + 0] = 255, - pal[3 * transparent + 1] = 0, - pal[3 * transparent + 2] = 255; - - image->SetMaskColour(255, 0, 255); + image->SetMaskColour(pal[3 * transparent + 0], + pal[3 * transparent + 1], + pal[3 * transparent + 2]); + } + else + { + wxFAIL_MSG( wxS("Unknown wxIMAGE_OPTION_GIF_TRANSPARENCY value") ); + } } else + { image->SetMask(false); + } #if wxUSE_PALETTE unsigned char r[256]; From 958d0081a571c0f0c8f5fbf20dbe958d9f4e4b8a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 13:17:54 +0100 Subject: [PATCH 368/916] Close documentation comment accidentally left open Fix an accidental removal of the closing comment marker in a3673be1559a60870379f9c87a757ae698f6aa2f. See https://github.com/wxWidgets/wxWidgets/pull/730 --- interface/wx/zipstrm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/wx/zipstrm.h b/interface/wx/zipstrm.h index 7b8f136997..e07b8c8f24 100644 --- a/interface/wx/zipstrm.h +++ b/interface/wx/zipstrm.h @@ -619,7 +619,7 @@ public: wxZIP_FORMAT_DEFAULT even if a ZIP64 will end up being created). @since 3.1.1 - + */ wxZipArchiveFormat GetFormat() const; }; From 3567cd5b00209b16350743df26c0b61bf635704c Mon Sep 17 00:00:00 2001 From: Kvaz1r Date: Fri, 16 Feb 2018 21:02:54 +0200 Subject: [PATCH 369/916] Check that rows in wxDataViewListCtrl have the right size Vectors passed to wxDataViewListCtrl::{Append,Insert,Prepend}Item() functions must have the correct, i.e. equal to the column count, number of items as otherwise accessing them later would result in a crash. Add checks verifying that this is indeed the case. Closes https://github.com/wxWidgets/wxWidgets/pull/724 --- src/common/datavcmn.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index 9043cf3fd4..d2d253ca2d 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -2209,6 +2209,7 @@ wxString wxDataViewListStore::GetColumnType( unsigned int pos ) const void wxDataViewListStore::AppendItem( const wxVector &values, wxUIntPtr data ) { + wxCHECK_RET( values.size() == GetColumnCount(), "wrong number of values" ); wxDataViewListStoreLine *line = new wxDataViewListStoreLine( data ); line->m_values = values; m_data.push_back( line ); @@ -2218,6 +2219,7 @@ void wxDataViewListStore::AppendItem( const wxVector &values, wxUIntP void wxDataViewListStore::PrependItem( const wxVector &values, wxUIntPtr data ) { + wxCHECK_RET( values.size() == GetColumnCount(), "wrong number of values" ); wxDataViewListStoreLine *line = new wxDataViewListStoreLine( data ); line->m_values = values; m_data.insert( m_data.begin(), line ); @@ -2228,6 +2230,7 @@ void wxDataViewListStore::PrependItem( const wxVector &values, wxUInt void wxDataViewListStore::InsertItem( unsigned int row, const wxVector &values, wxUIntPtr data ) { + wxCHECK_RET( values.size() == GetColumnCount(), "wrong number of values" ); wxDataViewListStoreLine *line = new wxDataViewListStoreLine( data ); line->m_values = values; m_data.insert( m_data.begin()+row, line ); From 23c2d67c08d4d70a56b7a114acfe0c2e23b104ce Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 13:29:57 +0100 Subject: [PATCH 370/916] Improve wxDataViewListCtrl::AppendItem() and related methods docs Explain that the vector passed to {Append,Insert,Prepend}Item() must have the same number of elements as there are columns in the control and that no more columns can be added after adding any items. See https://github.com/wxWidgets/wxWidgets/pull/724 --- interface/wx/dataview.h | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 9ef314b359..d4aba98428 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -2960,17 +2960,29 @@ public: //@{ /** - Appends an item (=row) to the control and store. + Appends an item (i.e.\ a row) to the control. + + Note that the size of @a values vector must be exactly equal to the + number of columns in the control and that columns must not be modified + after adding any items to the control (or, conversely, items must not + be added before the columns are set up). */ void AppendItem( const wxVector &values, wxUIntPtr data = NULL ); /** - Prepends an item (=row) to the control and store. + Prepends an item (i.e.\ a row) to the control. + + See remarks for AppendItem() for preconditions of this method. */ void PrependItem( const wxVector &values, wxUIntPtr data = NULL ); /** - Inserts an item (=row) to the control and store. + Inserts an item (i.e.\ a row) to the control. + + See remarks for AppendItem() for preconditions of this method. + + Additionally, @a row must be less than or equal to the current number + of items in the control (see GetItemCount()). */ void InsertItem( unsigned int row, const wxVector &values, wxUIntPtr data = NULL ); From ac608afdfedb618e0d47d995797f86d2e121f48a Mon Sep 17 00:00:00 2001 From: zonkx <36549474+zonkx@users.noreply.github.com> Date: Fri, 16 Feb 2018 20:57:12 +0100 Subject: [PATCH 371/916] Round alpha correctly in bilinear image scaling code too Add 0.5 to round the alpha values correctly too, just as it was already done in f4c9767b493e9239bb3548ebb49e1c3d492e8bdc for the RGB values. Closes https://github.com/wxWidgets/wxWidgets/pull/733 --- src/common/image.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/image.cpp b/src/common/image.cpp index 31b69845cb..846eeee64f 100644 --- a/src/common/image.cpp +++ b/src/common/image.cpp @@ -844,7 +844,7 @@ wxImage wxImage::ResampleBilinear(int width, int height) const dst_data += 3; if ( src_alpha ) - *dst_alpha++ = static_cast(a1 * dy1 + a2 * dy); + *dst_alpha++ = static_cast(a1 * dy1 + a2 * dy +.5); } } From a52b839f66661fa6dc38a46479a217b0a55a3a38 Mon Sep 17 00:00:00 2001 From: Danny Scott Date: Sat, 17 Feb 2018 13:40:41 +0100 Subject: [PATCH 372/916] Use vswhere to set environment variables for MSVS 2017 Allow building official releases with MSVS 2017 without doing it from its "developer command prompt" by using the vswhere utility to set up the paths correctly. Closes #18083. --- build/tools/msvs/findvs.bat | 54 ++++++++++++++++++++++++++++++ build/tools/msvs/officialbuild.bat | 19 ++++++++--- 2 files changed, 69 insertions(+), 4 deletions(-) create mode 100644 build/tools/msvs/findvs.bat diff --git a/build/tools/msvs/findvs.bat b/build/tools/msvs/findvs.bat new file mode 100644 index 0000000000..7234f95302 --- /dev/null +++ b/build/tools/msvs/findvs.bat @@ -0,0 +1,54 @@ +@echo off + +rem This is used to set up the VS2017 and later (hopefully) environment. + +rem Called with two paramaters, the inclusive low and the exclusisve high. +if "%1" == "" goto ERR_NOPARM +if "%2" == "" goto ERR_NOPARM + +rem If not running from official build, remember where we are. + +if "%curr_dir%" == "" ( + set curr_dir=%cd% +) + +@echo Checking if vswhere in path +vswhere 1>nul + +if errorlevel 9009 ( +@echo "vswhere not found, trying C:\Program Files (x86)\Microsoft Visual Studio\Installer" +set "PATH=C:\Program Files (x86)\Microsoft Visual Studio\Installer;%PATH%" +) + +vswhere 1>nul +if errorlevel 9009 ( +@echo "vswhere not found" +goto ERR_EXIT +) + +for /f "usebackq tokens=*" %%i in (`vswhere -latest -version "[%1,%2)" -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do ( + set InstallDir=%%i +) + +if "%InstallDir%" == "" ( + @echo Install directory not found + goto ERR_EXIT +) + +if NOT exist "%InstallDir%\Common7\Tools\vsdevcmd.bat" ( + @echo Can't find an vsdevcmd.bat + goto ERR_EXIT +) + +call "%InstallDir%"\Common7\Tools\vsdevcmd.bat + +rem Go back to where we were before vsdevcmd changed things. +cd %curr_dir% + +goto end + +:ERR_NOPARM +@echo Need to specifiy version min/max range, eg.: 15.0 16.0 +:ERR_EXIT +exit /b 1 +:end diff --git a/build/tools/msvs/officialbuild.bat b/build/tools/msvs/officialbuild.bat index 4771bf9664..aca9161920 100755 --- a/build/tools/msvs/officialbuild.bat +++ b/build/tools/msvs/officialbuild.bat @@ -1,4 +1,6 @@ -ECHO ON +@echo off + +rem SetLocal EnableDelayedExpansion if "%1" == "" goto ERR_NOPARM @@ -22,11 +24,20 @@ set compvers="Unknown" if "%1" == "vc141" ( @echo Building for vc141 / vs2017 - @echo This will only work if the environment varialbe VS150COMNTOOLS is set - @echo or a VS2017 command prompt is used. set comp=141 set compvers=vc141 - call "%VS150COMNTOOLS%VsDevCmd.bat" + + if NOT "%VS150COMNTOOLS%" == "" ( + call "%VS150COMNTOOLS%VsDevCmd.bat" + ) + if "%VS150COMNTOOLS%" == "" ( + call %curr_dir%\findvs 15.0 16.0 + + if errorlevel 1 ( + @echo vswhere.exe must be in your path or a VS2017 developer command prompt must be used. + goto end + ) + ) ) if "%1" == "vc140" ( @echo Building for vc140 / vs2015 From 0d640f8510ce9948e0ae0053801e4ef946b07da1 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 13:44:16 +0100 Subject: [PATCH 373/916] Add a mailmap entry for Danny Scott Let Git now about multiple email addresses used by Danny. --- .mailmap | 1 + 1 file changed, 1 insertion(+) diff --git a/.mailmap b/.mailmap index cbaae76c77..b56d2a70a3 100644 --- a/.mailmap +++ b/.mailmap @@ -4,6 +4,7 @@ Daniel Kulp Bogdan Iordanescu Cătălin Răceanu +Danny Scott Dimitri Schoolwerth Hubert Talbot Ilya Bizyaev From 6bb45751e574984b1300141bdb29ec29e6f3e8ec Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 14:17:13 +0100 Subject: [PATCH 374/916] Remove redundant ShouldForwardFromEditToCombo() check No real changes, just avoid calling ShouldForwardFromEditToCombo() in MSWProcessEditMsg() because this function is only called when the message should be forwarded. Also make the comment about the return value more clear. --- src/msw/combobox.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index 87dcc61b3e..45c9be0ffd 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -277,15 +277,10 @@ bool wxComboBox::MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam) break; } - if ( ShouldForwardFromEditToCombo(msg) ) - { - // For all the messages forward from the edit control the - // result is not used. - WXLRESULT result; - return MSWHandleMessage(&result, msg, wParam, lParam); - } - - return false; + // For all the messages forwarded from the edit control the result is not + // used and 0 must be returned if the message is handled. + WXLRESULT result; + return MSWHandleMessage(&result, msg, wParam, lParam); } bool wxComboBox::MSWCommand(WXUINT param, WXWORD id) From 4179375f3ebcf59fe3fcf7bc552c0bc7fb0de783 Mon Sep 17 00:00:00 2001 From: AliKet Date: Sat, 17 Feb 2018 14:49:38 +0100 Subject: [PATCH 375/916] Add custom auto-completer support to wxMSW wxComboBox too Custom auto-completers didn't work for wxComboBox as it didn't generate wxEVT_AFTER_CHAR event that the completion code in wxTextEntry relies on to make them work. Add this event generation to wxComboBox::MSWProcessEditMsg() to fix this. Closes https://github.com/wxWidgets/wxWidgets/pull/732 --- src/msw/combobox.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index 45c9be0ffd..e2072b31cc 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -280,7 +280,25 @@ bool wxComboBox::MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam) // For all the messages forwarded from the edit control the result is not // used and 0 must be returned if the message is handled. WXLRESULT result; - return MSWHandleMessage(&result, msg, wParam, lParam); + bool processed = MSWHandleMessage(&result, msg, wParam, lParam); + + // Special hack for WM_CHAR needed by wxTextEntry auto-completion support. + if ( !processed && msg == WM_CHAR ) + { + // Here we reproduce what MSWDefWindowProc() does for this window + // itself, but for the EDIT window. + ::CallWindowProc(CASTWNDPROC gs_wndprocEdit, (HWND)GetEditHWND(), + msg, wParam, lParam); + + // Send the event allowing completion code to do its thing. + wxKeyEvent event(CreateCharEvent(wxEVT_AFTER_CHAR, wParam, lParam)); + HandleWindowEvent(event); + + // Default window proc was already called, don't call it again. + processed = true; + } + + return processed; } bool wxComboBox::MSWCommand(WXUINT param, WXWORD id) From 1dc1d66fe1b4c91d965fc7e0291a3d84284095de Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 14:49:54 +0100 Subject: [PATCH 376/916] Stop using Fn keys as accelerators in the widgets sample This prevented them from being used for their usual purposes, e.g. F4 didn't open the combobox dropdown under MSW, which was annoying as it made testing more difficult. Just stop using the accelerators, especially as they could be only used for less than half of pages anyhow. --- samples/widgets/widgets.cpp | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/samples/widgets/widgets.cpp b/samples/widgets/widgets.cpp index 8fa5ebb5fb..90ac92a059 100644 --- a/samples/widgets/widgets.cpp +++ b/samples/widgets/widgets.cpp @@ -541,7 +541,7 @@ void WidgetsFrame::InitBook() wxArrayString labels[MAX_PAGES]; wxMenu *menuPages = new wxMenu; - unsigned int nPage = 0, nFKey = 0; + unsigned int nPage = 0; int cat, imageId = 1; // we need to first create all pages and only then add them to the book @@ -579,16 +579,9 @@ void WidgetsFrame::InitBook() labels[cat].Add(info->GetLabel()); if ( cat == ALL_PAGE ) { - wxString radioLabel(info->GetLabel()); - nFKey++; - if ( nFKey <= 12 ) - { - radioLabel << wxT("\tF" ) << nFKey; - } - menuPages->AppendRadioItem( Widgets_GoToPage + nPage, - radioLabel + info->GetLabel() ); #if !USE_TREEBOOK // consider only for book in book architecture From c83ddec75f26749ea92c34995f892030e8dad441 Mon Sep 17 00:00:00 2001 From: New Pagodi Date: Sat, 17 Feb 2018 19:49:44 +0100 Subject: [PATCH 377/916] Fix drawing call tips in wxSTC when using Direct2D Use the correct window as the containing control in SurfaceD2D. Closes #18080. --- src/stc/PlatWX.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/stc/PlatWX.cpp b/src/stc/PlatWX.cpp index b46c5ef885..303bfbf9d6 100644 --- a/src/stc/PlatWX.cpp +++ b/src/stc/PlatWX.cpp @@ -1036,7 +1036,7 @@ void SurfaceD2D::Init(SurfaceID sid, WindowID wid) if ( win && win->GetName() == "wxSTCCallTip" ) win = win->GetParent(); - wxStyledTextCtrl* const stc = wxDynamicCast(wid, wxStyledTextCtrl); + wxStyledTextCtrl* const stc = wxDynamicCast(win, wxStyledTextCtrl); if ( stc ) { wxDC* const dc = static_cast(sid); From 8278f7b618af03ef9fdba6a9eab58f560c084961 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 17:00:00 +0100 Subject: [PATCH 378/916] Fix crash when changing auto-completer in wxGTK Recent changes resulted in crashes when handling grab-notify signal in an already deleted object. Fix this by disconnecting our grab-notify handler when destroying the object, unless the entire associated wxTextEntry is being destroyed (in which case no such signals risk to be generated anyhow). In order to be able to do this safely, store the widget to whose signal we had connected and check that the widget is still valid before disconnecting. This also allows to simplify the code by getting rid of DisableCompletion() and just doing the cleanup in dtor. Closes #18084. --- src/gtk/textentry.cpp | 47 ++++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index 0a89c11129..d34229d3b2 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -235,18 +235,19 @@ public: GetEditableWindow(m_entry)->SetWindowStyleFlag(flags); } - void DisableCompletion() - { - gtk_entry_set_completion (GetGtkEntry(), NULL); - - g_signal_handlers_disconnect_by_data(GetGtkEntry(), this); - } - virtual ~wxTextAutoCompleteData() { - // Do not call DisableCompletion() here, it would result in problems - // when this object is destroyed from wxTextEntry dtor as the real - // control (e.g. wxTextCtrl) is already destroyed by then. + // Note that we must not use m_entry here because this could result in + // using an already half-destroyed wxTextEntry when we're destroyed + // from its dtor (which is executed after wxTextCtrl dtor, which had + // already destroyed the actual entry). So use the stored widget + // instead and only after checking that it is still valid. + if ( GTK_IS_ENTRY(m_widgetEntry) ) + { + gtk_entry_set_completion(m_widgetEntry, NULL); + + g_signal_handlers_disconnect_by_data(m_widgetEntry, this); + } } protected: @@ -260,14 +261,15 @@ protected: explicit wxTextAutoCompleteData(wxTextEntry* entry) : m_entry(entry), + m_widgetEntry(entry->GetEntry()), m_origWinFlags(GetEditableWindow(m_entry)->GetWindowStyleFlag()) { GtkEntryCompletion* const completion = gtk_entry_completion_new(); gtk_entry_completion_set_text_column (completion, 0); - gtk_entry_set_completion (GetGtkEntry(), completion); + gtk_entry_set_completion(m_widgetEntry, completion); - g_signal_connect (GTK_WIDGET(GetGtkEntry()), "grab-notify", + g_signal_connect (m_widgetEntry, "grab-notify", G_CALLBACK (wx_gtk_entry_parent_grab_notify), this); } @@ -280,8 +282,6 @@ protected: return entry->GetEditableWindow(); } - GtkEntry* GetGtkEntry() const { return m_entry->GetEntry(); } - // Helper function for appending a string to GtkListStore. void AppendToStore(GtkListStore* store, const wxString& s) { @@ -293,7 +293,7 @@ protected: // Really change the completion model (which may be NULL). void UseModel(GtkListStore* store) { - GtkEntryCompletion* const c = gtk_entry_get_completion (GetGtkEntry()); + GtkEntryCompletion* const c = gtk_entry_get_completion(m_widgetEntry); gtk_entry_completion_set_model (c, GTK_TREE_MODEL(store)); gtk_entry_completion_complete (c); } @@ -302,6 +302,9 @@ protected: // The text entry we're associated with. wxTextEntry * const m_entry; + // And its GTK widget. + GtkEntry* const m_widgetEntry; + // The original flags of the associated wxTextEntry. const long m_origWinFlags; @@ -709,6 +712,9 @@ bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices) // Try to update the existing data first. if ( !m_autoCompleteData || !m_autoCompleteData->ChangeStrings(choices) ) { + delete m_autoCompleteData; + m_autoCompleteData = NULL; + // If it failed, try creating a new object for fixed completion. wxTextAutoCompleteFixed* const ac = wxTextAutoCompleteFixed::New(this); if ( !ac ) @@ -716,7 +722,6 @@ bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices) ac->ChangeStrings(choices); - delete m_autoCompleteData; m_autoCompleteData = ac; } @@ -730,12 +735,6 @@ bool wxTextEntry::DoAutoCompleteCustom(wxTextCompleter *completer) { if ( m_autoCompleteData ) { - // This is not done in dtor because it's unnecessary when replacing - // one completer with another one, and even dangerous, when the - // control is being destroyed anyhow, so we need to call it - // explicitly here to really disable completion. - m_autoCompleteData->DisableCompletion(); - delete m_autoCompleteData; m_autoCompleteData = NULL; } @@ -748,6 +747,9 @@ bool wxTextEntry::DoAutoCompleteCustom(wxTextCompleter *completer) if ( !m_autoCompleteData || !m_autoCompleteData->ChangeCompleter(completer) ) { + delete m_autoCompleteData; + m_autoCompleteData = NULL; + wxTextAutoCompleteDynamic* const ac = wxTextAutoCompleteDynamic::New(this); if ( !ac ) @@ -755,7 +757,6 @@ bool wxTextEntry::DoAutoCompleteCustom(wxTextCompleter *completer) ac->ChangeCompleter(completer); - delete m_autoCompleteData; m_autoCompleteData = ac; } } From a4487c056ba9b22144cea974ec86dcc0267a7bc2 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 17:13:34 +0100 Subject: [PATCH 379/916] Preserve style changes in wxGTK wxTextEntry auto-complete code Don't overwrite the current window style with the style that it had when AutoComplete() was called in wxGTK code, just turn wxTE_PROCESS_ENTER off or on, without touching the other bits. This still can result in setting wxTE_PROCESS_ENTER bit itself unexpectedly if it somehow is changed while the completion popup is shown, but this shouldn't happen often (if ever) in practice and, at least, the other bits are preserved no matter what. See https://github.com/wxWidgets/wxWidgets/pull/729 --- src/gtk/textentry.cpp | 41 +++++++++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index d34229d3b2..c608a609de 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -228,11 +228,33 @@ public: // see wxTextCtrl::OnChar() void ToggleProcessEnterFlag(bool toggleOff) { - long flags = m_origWinFlags; - if ( toggleOff ) - flags &= ~wxTE_PROCESS_ENTER; + wxWindow* const win = GetEditableWindow(m_entry); - GetEditableWindow(m_entry)->SetWindowStyleFlag(flags); + long flags = win->GetWindowStyleFlag(); + if ( toggleOff ) + { + // Store the original window flags before we change them. + m_hadProcessEnterFlag = (flags & wxTE_PROCESS_ENTER) != 0; + if ( !m_hadProcessEnterFlag ) + { + // No need to do anything, it was already off. + return; + } + + flags &= ~wxTE_PROCESS_ENTER; + } + else // Restore the original flags. + { + if ( !m_hadProcessEnterFlag ) + { + // We hadn't turned it off, no need to turn it back on. + return; + } + + flags |= wxTE_PROCESS_ENTER; + } + + win->SetWindowStyleFlag(flags); } virtual ~wxTextAutoCompleteData() @@ -261,9 +283,11 @@ protected: explicit wxTextAutoCompleteData(wxTextEntry* entry) : m_entry(entry), - m_widgetEntry(entry->GetEntry()), - m_origWinFlags(GetEditableWindow(m_entry)->GetWindowStyleFlag()) + m_widgetEntry(entry->GetEntry()) { + // This will be really set in ToggleProcessEnterFlag(). + m_hadProcessEnterFlag = false; + GtkEntryCompletion* const completion = gtk_entry_completion_new(); gtk_entry_completion_set_text_column (completion, 0); @@ -305,8 +329,9 @@ protected: // And its GTK widget. GtkEntry* const m_widgetEntry; - // The original flags of the associated wxTextEntry. - const long m_origWinFlags; + // True if the window had wxTE_PROCESS_ENTER flag before we turned it off + // in ToggleProcessEnterFlag(). + bool m_hadProcessEnterFlag; wxDECLARE_NO_COPY_CLASS(wxTextAutoCompleteData); }; From cad824d089aa8610bb6575e42d0e6fd30f04e433 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 17 Feb 2018 19:06:32 +0100 Subject: [PATCH 380/916] Let windows with wxWANTS_CHARS have TAB presses under Mac This notably fixes the use of TAB in wxStyledTextCtrl, where it's supposed to be handled by the control itself and not as a navigation key, but is more general than this. Fixes a regression from 8bca6deda302ae7e26da2892160f2784aa4335bb. Closes #17999. --- src/osx/cocoa/window.mm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index 3f261bbee4..e7f5e4fc58 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -3552,8 +3552,9 @@ bool wxWidgetCocoaImpl::DoHandleCharEvent(NSEvent *event, NSString *text) bool wxWidgetCocoaImpl::ShouldHandleKeyNavigation(const wxKeyEvent &WXUNUSED(event)) const { - // Only controls that intercept tabs for different behavior should return false (ie wxTE_PROCESS_TAB) - return true; + // If the window wants to have all keys, let it have it and don't process + // TAB as key navigation event. + return !m_wxPeer->HasFlag(wxWANTS_CHARS); } bool wxWidgetCocoaImpl::DoHandleKeyNavigation(const wxKeyEvent &event) From bf418320b7e0c1659a768e439372d9eafb33c36b Mon Sep 17 00:00:00 2001 From: "Stefano D. Mtangoo" Date: Sat, 17 Feb 2018 19:10:11 +0100 Subject: [PATCH 381/916] Work around crash in wxStyledTextCtrl under Mac When not using double buffering, double-clicking to select text in the control results in crashes. Avoid this by using double-buffering under Mac, even though it shouldn't be necessary. This reverts the changes of cb799483b7cf19f0e2db5df857be5e79dafab38d under Mac. See #18085. --- src/stc/stc.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/stc/stc.cpp b/src/stc/stc.cpp index b4602db8da..620e0b9197 100644 --- a/src/stc/stc.cpp +++ b/src/stc/stc.cpp @@ -224,8 +224,9 @@ bool wxStyledTextCtrl::Create(wxWindow *parent, // STC doesn't support RTL languages at all SetLayoutDirection(wxLayout_LeftToRight); - // Rely on native double buffering by default. -#if wxALWAYS_NATIVE_DOUBLE_BUFFER + // Rely on native double buffering by default, except under Mac where it + // doesn't work for some reason, see #18085. +#if wxALWAYS_NATIVE_DOUBLE_BUFFER && !defined(__WXMAC__) SetBufferedDraw(false); #else SetBufferedDraw(true); From 379a404f9804ac044df44f18907e192917fec8aa Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 18 Feb 2018 21:30:31 +0100 Subject: [PATCH 382/916] Update release notes for final 3.1.1 Remove all references to RC. --- docs/release.md | 112 ++++++++++++++++++++++++------------------------ 1 file changed, 55 insertions(+), 57 deletions(-) diff --git a/docs/release.md b/docs/release.md index 5f43994e41..89b2d403ce 100644 --- a/docs/release.md +++ b/docs/release.md @@ -1,32 +1,30 @@ -*WARNING* This is a release candidate and not the final 3.1.1 release yet. - Welcome to wxWidgets, a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls. wxWidgets 3.1.1 is the second release in the 3.1 development branch. This release is a "development" one as it makes (very few) incompatible API changes compared to 3.0 and does not guarantee the ABI stability, unlike the 3.0.x series. It is not inherently more buggy or less stable than the "stable" releases and you're encouraged to use it. If you're already using 3.0, upgrading shouldn't require any special effort, so please try it out. -Please see [**README**](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/readme.txt) for more information about this release and the [change log](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1-rc/docs/changes.txt) for details of the changes in it. +Please see [**README**](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1/docs/readme.txt) for more information about this release and the [change log](https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1/docs/changes.txt) for details of the changes in it. ## Source Files and Documentation If you intend to build wxWidgets from sources (which is recommended), please do **NOT** download the files using the "Source code" links just above, which are automatically generated by GitHub and don't contain the submodules sources which are necessary for building wxWidgets. -Instead, download one of [wxWidgets-3.1.1-rc.zip](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.zip) or [wxWidgets-3.1.1-rc.7z](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.7z), for much smaller size, for Microsoft Windows systems or [wxWidgets-3.1.1-rc.tar.bz2](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxWidgets-3.1.1-rc.tar.bz2) for Unix ones, including macOS. These archives have exactly the same contents, but use the line endings appropriate for the corresponding platform. +Instead, download one of [wxWidgets-3.1.1.zip](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1/wxWidgets-3.1.1.zip) or [wxWidgets-3.1.1.7z](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1/wxWidgets-3.1.1.7z), for much smaller size, for Microsoft Windows systems or [wxWidgets-3.1.1.tar.bz2](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1/wxWidgets-3.1.1.tar.bz2) for Unix ones, including macOS. These archives have exactly the same contents, but use the line endings appropriate for the corresponding platform. In addition, we provide archives containing the documentation in either HTML or Microsoft CHM formats. Notice that the documentation is also [available online](http://docs.wxwidgets.org/3.1). -Finally, Microsoft Windows users may download [Setup.exe file](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1-rc/wxMSW-3.1.1-rc-Setup.exe) containing both sources and documentation, however please note that this file does _not_ contain any binaries, please see below for those. +Finally, Microsoft Windows users may download [Setup.exe file](https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1/wxMSW-3.1.1-Setup.exe) containing both sources and documentation, however please note that this file does _not_ contain any binaries, please see below for those. To verify your download please use the following SHA-1 checksums: - d3f8a8f5bd7b5dee2176a14fce93b3767d217f00 wxMSW-3.1.1-rc-Setup.exe - d8de5b7075ba7674e8c0e2cd722259d48e627dc7 wxWidgets-3.1.1-rc-docs-chm.zip - 000c818361eddd403557aacf8b63ac0210335919 wxWidgets-3.1.1-rc-docs-html.tar.bz2 - f5ec0051a4fe620dbeee5262ba1ce30922e5d85c wxWidgets-3.1.1-rc-docs-html.zip - f4d1bda81ef27fb232eb58f88730cfeafb35b477 wxWidgets-3.1.1-rc-headers.7z - 36efadd43d9994495d71a698922113a0d8d46b73 wxWidgets-3.1.1-rc.7z - 2968073dffa60c1ad5016d1b0d4eedb5b701efdf wxWidgets-3.1.1-rc.tar.bz2 - 84d7e7a8347fc727801a407302e2801ee7bfc608 wxWidgets-3.1.1-rc.zip + 0000000000000000000000000000000000000000 wxMSW-3.1.1-Setup.exe + 0000000000000000000000000000000000000000 wxWidgets-3.1.1-docs-chm.zip + 0000000000000000000000000000000000000000 wxWidgets-3.1.1-docs-html.tar.bz2 + 0000000000000000000000000000000000000000 wxWidgets-3.1.1-docs-html.zip + 0000000000000000000000000000000000000000 wxWidgets-3.1.1-headers.7z + 0000000000000000000000000000000000000000 wxWidgets-3.1.1.7z + 0000000000000000000000000000000000000000 wxWidgets-3.1.1.tar.bz2 + 0000000000000000000000000000000000000000 wxWidgets-3.1.1.zip ## Binaries @@ -55,50 +53,50 @@ End users may download one of `wxMSW-3.1.1_vcXXX_ReleaseDLL.7z` or `wxMSW-3.1.1_ To verify your download please use the following SHA-1 checksums: - 26836356a6e77091caad508d765b60899c30892e wxMSW-3.1.1-rc_gcc510TDM_Dev.7z - b7eb62bdb152e5539fd5e9ecc105d322fadba3ec wxMSW-3.1.1-rc_gcc510TDM_ReleaseDLL.7z - 77c84112ffcad3b2c649d9fd3adcd4e140945b61 wxMSW-3.1.1-rc_gcc510TDM_x64_Dev.7z - 24e775999ea19b641a11850af0547ac81fd1bc6b wxMSW-3.1.1-rc_gcc510TDM_x64_ReleaseDLL.7z - ead74e56b9d22e578addd52b8246eadfddbd93d1 wxMSW-3.1.1-rc_gcc720_Dev.7z - 7c43aa6937853d1113430ce1b31a0747e89a6b47 wxMSW-3.1.1-rc_gcc720_ReleaseDLL.7z - 298016eb7cb2a509b4dedc5a8c09eb2b98950698 wxMSW-3.1.1-rc_gcc720_x64_Dev.7z - 741087b3fcbe809ae60563e19cf0db21b571725a wxMSW-3.1.1-rc_gcc720_x64_ReleaseDLL.7z - 7537561f1a93ca06a37be730ca9f81506da665db wxMSW-3.1.1-rc_vc90_Dev.7z - 3df72df959b4ae8279cb27519ea5b114003d17f6 wxMSW-3.1.1-rc_vc90_ReleaseDLL.7z - 1c506db10f555f11ae17ba08430482d81be1c0db wxMSW-3.1.1-rc_vc90_ReleasePDB.7z - 3b45c2680499b3e397264f0ae8f6d2617a139b8a wxMSW-3.1.1-rc_vc90_x64_Dev.7z - 3ba14408edad9b325bc0dd0ba98197954ce2db5e wxMSW-3.1.1-rc_vc90_x64_ReleaseDLL.7z - e8c5f145a89a556069221886e7644c3b07d2799f wxMSW-3.1.1-rc_vc90_x64_ReleasePDB.7z - 936f454b547ec17e3cefdf4f43c9af8738f803ca wxMSW-3.1.1-rc_vc100_Dev.7z - 940c8c3923be2ad4a71e3de349657bb5443de918 wxMSW-3.1.1-rc_vc100_ReleaseDLL.7z - 8a4dedfc318272b182a83f5947b5224a7f17c532 wxMSW-3.1.1-rc_vc100_ReleasePDB.7z - c68ccae3a29096e7f78732c65cddabeee5e226b6 wxMSW-3.1.1-rc_vc100_x64_Dev.7z - ea540496a5875454ff90ba3f6ea65ddcacc9a4a5 wxMSW-3.1.1-rc_vc100_x64_ReleaseDLL.7z - 8100a2bfab8909de47fb483bb8bd78c03ddb4df5 wxMSW-3.1.1-rc_vc100_x64_ReleasePDB.7z - 1fa4c99e48cbf0f50289d07f6ceae8a71be62a19 wxMSW-3.1.1-rc_vc110_Dev.7z - 2e44afb8f7080fc673af2abb456cf176dad4b1a2 wxMSW-3.1.1-rc_vc110_ReleaseDLL.7z - 730e2e1db22e3bc308284562c8ecfbfc3f6a6e9e wxMSW-3.1.1-rc_vc110_ReleasePDB.7z - 5c2578deba24a1daf61ae08a7daa1a8662dbe8c9 wxMSW-3.1.1-rc_vc110_x64_Dev.7z - 57da37116c3b80d4f765b85fafcb30e2cb200dab wxMSW-3.1.1-rc_vc110_x64_ReleaseDLL.7z - 6700dbc853484d385753ad4361c16c48c4bd3e3a wxMSW-3.1.1-rc_vc110_x64_ReleasePDB.7z - b4dac305e230ae0c9bfcd07fee632a4aad835329 wxMSW-3.1.1-rc_vc120_Dev.7z - c986f27c6f88b9feb7706f4bff5f50b68b14cec2 wxMSW-3.1.1-rc_vc120_ReleaseDLL.7z - ca5ca15eadc0d1ca6b79824bb9704215c7945195 wxMSW-3.1.1-rc_vc120_ReleasePDB.7z - c9a4850228a1b42d1606d1043b9a3d0b334727a9 wxMSW-3.1.1-rc_vc120_x64_Dev.7z - 6a02c05ab72b06e30ef9f9e355956f3957c86eb1 wxMSW-3.1.1-rc_vc120_x64_ReleaseDLL.7z - 2c36680649bf3093536e20067d30e1242a6023d3 wxMSW-3.1.1-rc_vc120_x64_ReleasePDB.7z - aeede25c3de0f975c811fbce634c5aaf354195fa wxMSW-3.1.1-rc_vc140_Dev.7z - 900203c8f300214e038fbb1ae10ba3eb1a114740 wxMSW-3.1.1-rc_vc140_ReleaseDLL.7z - 788c9b39c0c298735313de425c4ca7986b163908 wxMSW-3.1.1-rc_vc140_ReleasePDB.7z - 68ae8e1c42ff0105ea186c0d32cee95861a1a5a4 wxMSW-3.1.1-rc_vc140_x64_Dev.7z - 550f3d0f52f4d21babf03b66e26145787eb9d922 wxMSW-3.1.1-rc_vc140_x64_ReleaseDLL.7z - 5b57a82a1799ae1a05a385685ce9f729e3fed056 wxMSW-3.1.1-rc_vc140_x64_ReleasePDB.7z - 5990f6bf1d157e2b7e8f254d2a60dfd682971790 wxMSW-3.1.1-rc_vc141_Dev.7z - fde6140a4348621a1b876ed6c289778d4312f2f1 wxMSW-3.1.1-rc_vc141_ReleaseDLL.7z - 824eef674529ca75e620dac6dce45cc6a0c2328b wxMSW-3.1.1-rc_vc141_ReleasePDB.7z - a4b4014c1a1289d798597ebc810a01e88edf53bc wxMSW-3.1.1-rc_vc141_x64_Dev.7z - 285afbcc27e18344654183d8b9e6beca9a9eab92 wxMSW-3.1.1-rc_vc141_x64_ReleaseDLL.7z - 82685386d8291dd5012ef00ced5fdc45cb0d8a04 wxMSW-3.1.1-rc_vc141_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc510TDM_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc720_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc720_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc720_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_gcc720_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc90_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc100_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc110_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc120_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc140_x64_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc141_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc141_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc141_ReleasePDB.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc141_x64_Dev.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc141_x64_ReleaseDLL.7z + 0000000000000000000000000000000000000000 wxMSW-3.1.1_vc141_x64_ReleasePDB.7z ## Reporting Problems From c3be5d7550812c3cfbb55de051772064c79d7b6b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 18 Feb 2018 22:45:02 +0100 Subject: [PATCH 383/916] Use relative path in Doxygen STRIP_FROM_PATH This seems better than requiring yet another environment variable to be defined, and should work reliably as Doxygen is always run from docs/doxygen directory. Leave WXWIDGETS in STRIP_FROM_INC_PATH which doesn't seem to be used anywhere anyhow -- and so, perhaps, should be removed entirely? --- docs/doxygen/Doxyfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/doxygen/Doxyfile b/docs/doxygen/Doxyfile index 5eca312e91..bd3284cffa 100644 --- a/docs/doxygen/Doxyfile +++ b/docs/doxygen/Doxyfile @@ -19,7 +19,7 @@ ABBREVIATE_BRIEF = ALWAYS_DETAILED_SEC = YES # Default: NO INLINE_INHERITED_MEMB = NO FULL_PATH_NAMES = YES -STRIP_FROM_PATH = "$(WXWIDGETS)/" +STRIP_FROM_PATH = ../.. STRIP_FROM_INC_PATH = "$(WXWIDGETS)/include/" \ "$(WXWIDGETS)/interface/" SHORT_NAMES = NO From 0a10bfc63e915a4dc24fd9a434585ac6bf3aa392 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 18 Feb 2018 22:46:35 +0100 Subject: [PATCH 384/916] Fix wrong @subpage usage on the main manual page Using @subpage multiple times with the pages we wanted to just link to resulted in them appearing twice in the tree shown in the CHM file. Just use @ref when a link is wanted instead. --- docs/doxygen/mainpages/manual.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/doxygen/mainpages/manual.h b/docs/doxygen/mainpages/manual.h index 7f996c3d87..aa180ff0df 100644 --- a/docs/doxygen/mainpages/manual.h +++ b/docs/doxygen/mainpages/manual.h @@ -23,10 +23,10 @@ developing native cross-platform GUI applications in C++! @n -If you are new to wxWidgets, please start with the @subpage page_introduction -and follow with the @subpage page_topics, with maybe a look at -@subpage page_samples as you go. If you are already familiar with wxWidgets, -please read about @subpage overview_changes_since28 "the changes" in the latest +If you are new to wxWidgets, please start with the @ref page_introduction +and follow with the @ref page_topics, with maybe a look at +@ref page_samples as you go. If you are already familiar with wxWidgets, +please read about @ref overview_changes_since28 "the changes" in the latest version compared to 2.8 series. And you can also follow the links in the reference section or jump directly to the alphabetical list of classes to find out more about From 26c18da2e47cc48bc31961ab51b215b88ef23a69 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 18 Feb 2018 22:47:46 +0100 Subject: [PATCH 385/916] Fix unreadable example in wxDataViewValueAdjuster documentation @code tag must be used to make the code readable and using @example seems to be unnecessary and just results in the creation of an extra "Examples" page in the documentation containing only this example and an absolute path (apparently not affected by STRIP_FROM_PATH) to interface/wx/dataview.h file itself in the generated documentation. --- interface/wx/dataview.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index d4aba98428..22fd11fe88 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -3875,7 +3875,7 @@ public: alternative to implementing an entire wxDataViewCustomRenderer specialization. - @example + @code // Markup renderer that removes bgcolor attributes when in selection class DataViewMarkupRenderer : public wxDataViewTextRenderer { @@ -3904,7 +3904,7 @@ public: } }; }; - @endexample + @endcode @since 3.1.1 From 2ec2837f6ddf8b45a76085db058f15772c795215 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 20 Feb 2018 00:08:01 +0100 Subject: [PATCH 386/916] Update version to 3.1.2 Run misc/scripts/inc_release and rebake. --- Makefile.in | 16 ++++++------ build/bakefiles/version.bkl | 2 +- build/msw/makefile.bcc | 4 +-- build/msw/makefile.gcc | 4 +-- build/msw/makefile.vc | 4 +-- build/msw/wx_setup.props | 2 +- build/msw/wx_vc7_adv.vcproj | 16 ++++++------ build/msw/wx_vc7_aui.vcproj | 16 ++++++------ build/msw/wx_vc7_base.vcproj | 16 ++++++------ build/msw/wx_vc7_core.vcproj | 16 ++++++------ build/msw/wx_vc7_gl.vcproj | 16 ++++++------ build/msw/wx_vc7_html.vcproj | 16 ++++++------ build/msw/wx_vc7_media.vcproj | 16 ++++++------ build/msw/wx_vc7_net.vcproj | 16 ++++++------ build/msw/wx_vc7_propgrid.vcproj | 16 ++++++------ build/msw/wx_vc7_qa.vcproj | 16 ++++++------ build/msw/wx_vc7_ribbon.vcproj | 16 ++++++------ build/msw/wx_vc7_richtext.vcproj | 16 ++++++------ build/msw/wx_vc7_stc.vcproj | 16 ++++++------ build/msw/wx_vc7_webview.vcproj | 16 ++++++------ build/msw/wx_vc7_xml.vcproj | 16 ++++++------ build/msw/wx_vc7_xrc.vcproj | 16 ++++++------ build/msw/wx_vc8_adv.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_aui.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_base.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_core.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_gl.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_html.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_media.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_net.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_propgrid.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_qa.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_ribbon.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_richtext.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_stc.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_webview.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_xml.vcproj | 32 ++++++++++++------------ build/msw/wx_vc8_xrc.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_adv.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_aui.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_base.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_core.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_gl.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_html.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_media.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_net.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_propgrid.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_qa.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_ribbon.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_richtext.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_stc.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_webview.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_xml.vcproj | 32 ++++++++++++------------ build/msw/wx_vc9_xrc.vcproj | 32 ++++++++++++------------ build/osx/wxvers.xcconfig | 2 +- build/tools/msvs/getversion.bat | 2 +- configure.in | 4 +-- demos/bombs/Makefile.in | 2 +- demos/forty/Makefile.in | 2 +- demos/fractal/Makefile.in | 2 +- demos/life/Makefile.in | 2 +- demos/poem/Makefile.in | 2 +- docs/doxygen/Doxyfile | 2 +- docs/readme.txt | 8 +++--- include/wx/osx/config_xcode.h | 4 +-- include/wx/version.h | 4 +-- samples/Info.plist | 8 +++--- samples/access/Makefile.in | 2 +- samples/animate/Makefile.in | 2 +- samples/artprov/Makefile.in | 2 +- samples/aui/Makefile.in | 2 +- samples/calendar/Makefile.in | 2 +- samples/caret/Makefile.in | 2 +- samples/clipboard/Makefile.in | 2 +- samples/collpane/Makefile.in | 2 +- samples/combo/Makefile.in | 2 +- samples/config/Makefile.in | 2 +- samples/dataview/Makefile.in | 2 +- samples/debugrpt/Makefile.in | 2 +- samples/dialogs/Makefile.in | 2 +- samples/dialup/Makefile.in | 2 +- samples/display/Makefile.in | 2 +- samples/dll/Makefile.in | 2 +- samples/dnd/Makefile.in | 2 +- samples/docview/Info.plist | 8 +++--- samples/docview/Makefile.in | 2 +- samples/dragimag/Makefile.in | 2 +- samples/drawing/Makefile.in | 2 +- samples/erase/Makefile.in | 2 +- samples/event/Makefile.in | 2 +- samples/except/Makefile.in | 2 +- samples/exec/Makefile.in | 2 +- samples/font/Makefile.in | 2 +- samples/fswatcher/Makefile.in | 2 +- samples/grid/Makefile.in | 2 +- samples/help/Makefile.in | 2 +- samples/htlbox/Makefile.in | 2 +- samples/html/about/Makefile.in | 2 +- samples/html/help/Makefile.in | 2 +- samples/html/helpview/Makefile.in | 2 +- samples/html/htmlctrl/Makefile.in | 2 +- samples/html/printing/Makefile.in | 2 +- samples/html/test/Makefile.in | 2 +- samples/html/virtual/Makefile.in | 2 +- samples/html/widget/Makefile.in | 2 +- samples/html/zip/Makefile.in | 2 +- samples/image/Makefile.in | 2 +- samples/internat/Makefile.in | 2 +- samples/ipc/Makefile.in | 2 +- samples/joytest/Makefile.in | 2 +- samples/keyboard/Makefile.in | 2 +- samples/layout/Makefile.in | 2 +- samples/listctrl/Makefile.in | 2 +- samples/mdi/Makefile.in | 2 +- samples/mediaplayer/Makefile.in | 2 +- samples/memcheck/Makefile.in | 2 +- samples/menu/Makefile.in | 2 +- samples/minimal/Info_cocoa.plist | 8 +++--- samples/minimal/Makefile.in | 2 +- samples/nativdlg/Makefile.in | 2 +- samples/notebook/Makefile.in | 2 +- samples/oleauto/Makefile.in | 2 +- samples/opengl/cube/Makefile.in | 2 +- samples/opengl/isosurf/Makefile.in | 2 +- samples/opengl/penguin/Makefile.in | 2 +- samples/opengl/pyramid/Makefile.in | 2 +- samples/ownerdrw/Makefile.in | 2 +- samples/popup/Makefile.in | 2 +- samples/power/Makefile.in | 2 +- samples/preferences/Makefile.in | 2 +- samples/printing/Makefile.in | 2 +- samples/propgrid/Makefile.in | 2 +- samples/regtest/Makefile.in | 2 +- samples/render/Makefile.in | 4 +-- samples/render/makefile.bcc | 2 +- samples/render/makefile.gcc | 2 +- samples/render/makefile.vc | 2 +- samples/render/render_vc7_renddll.vcproj | 12 ++++----- samples/render/render_vc8_renddll.vcproj | 24 +++++++++--------- samples/render/render_vc9_renddll.vcproj | 24 +++++++++--------- samples/ribbon/Makefile.in | 2 +- samples/richtext/Makefile.in | 2 +- samples/sashtest/Makefile.in | 2 +- samples/scroll/Makefile.in | 2 +- samples/shaped/Makefile.in | 2 +- samples/sockets/Makefile.in | 2 +- samples/sound/Makefile.in | 2 +- samples/splash/Makefile.in | 2 +- samples/splitter/Makefile.in | 2 +- samples/statbar/Makefile.in | 2 +- samples/stc/Makefile.in | 2 +- samples/svg/Makefile.in | 2 +- samples/taborder/Makefile.in | 2 +- samples/taskbar/Makefile.in | 2 +- samples/taskbarbutton/Makefile.in | 2 +- samples/text/Makefile.in | 2 +- samples/thread/Makefile.in | 2 +- samples/toolbar/Makefile.in | 2 +- samples/treectrl/Makefile.in | 2 +- samples/treelist/Makefile.in | 2 +- samples/typetest/Makefile.in | 2 +- samples/uiaction/Makefile.in | 2 +- samples/validate/Makefile.in | 2 +- samples/vscroll/Makefile.in | 2 +- samples/webview/Makefile.in | 2 +- samples/widgets/Makefile.in | 2 +- samples/wizard/Makefile.in | 2 +- samples/wrapsizer/Makefile.in | 2 +- samples/xrc/Makefile.in | 2 +- samples/xti/Makefile.in | 2 +- tests/Makefile.in | 2 +- tests/benchmarks/Makefile.in | 2 +- utils/helpview/src/Makefile.in | 2 +- utils/screenshotgen/src/Makefile.in | 2 +- 174 files changed, 819 insertions(+), 819 deletions(-) diff --git a/Makefile.in b/Makefile.in index 6d29b0e0eb..583620372a 100644 --- a/Makefile.in +++ b/Makefile.in @@ -74,8 +74,8 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 WX_RELEASE_NODOT = 31 -WX_VERSION = $(WX_RELEASE).1 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION = $(WX_RELEASE).2 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 LIBDIRNAME = $(wx_top_builddir)/lib WXREGEX_CFLAGS = -DNDEBUG -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(____SHARED) \ $(CPPFLAGS) $(CFLAGS) @@ -14209,17 +14209,17 @@ COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_HTML_1___htmldll_library_link_LIBR_0 \ @COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p_65 = --define wxNO_EXCEPTIONS @COND_USE_RTTI_0@__RTTI_DEFINE_p_65 = --define wxNO_RTTI @COND_USE_THREADS_0@__THREAD_DEFINE_p_65 = --define wxNO_THREADS -@COND_PLATFORM_MACOSX_0_USE_SOVERSION_1@dll___targetsuf2 = .$(SO_SUFFIX).1 -@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@dll___targetsuf2 = .1.$(SO_SUFFIX) +@COND_PLATFORM_MACOSX_0_USE_SOVERSION_1@dll___targetsuf2 = .$(SO_SUFFIX).2 +@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@dll___targetsuf2 = .2.$(SO_SUFFIX) @COND_USE_SOVERSION_0@dll___targetsuf2 = .$(SO_SUFFIX) @COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@dll___targetsuf3 \ @COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@ = \ -@COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@ .$(SO_SUFFIX).1.0.0 +@COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@ .$(SO_SUFFIX).2.0.0 @COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@dll___targetsuf3 \ -@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@ = .1.0.0.$(SO_SUFFIX) -@COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1@dll___targetsuf3 = -1.$(SO_SUFFIX) +@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@ = .2.0.0.$(SO_SUFFIX) +@COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1@dll___targetsuf3 = -2.$(SO_SUFFIX) @COND_USE_SOVERSION_0@dll___targetsuf3 = .$(SO_SUFFIX) -@COND_USE_SOVERSION_1_USE_SOVERSOLARIS_1@dll___targetsuf3 = .$(SO_SUFFIX).1 +@COND_USE_SOVERSION_1_USE_SOVERSOLARIS_1@dll___targetsuf3 = .$(SO_SUFFIX).2 @COND_TOOLKIT_MSW@__RCDEFDIR_p = --include-dir \ @COND_TOOLKIT_MSW@ $(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME) @COND_wxUSE_LIBTIFF_builtin@__INC_TIFF_BUILD_p_66 \ diff --git a/build/bakefiles/version.bkl b/build/bakefiles/version.bkl index d10595924b..83efd1778b 100644 --- a/build/bakefiles/version.bkl +++ b/build/bakefiles/version.bkl @@ -22,7 +22,7 @@ 3. Else, i.e. if there were no changes at all to API but only internal changes, change C:R:A to C:R+1:A --> - 1 + 2 0 0 diff --git a/build/msw/makefile.bcc b/build/msw/makefile.bcc index 786e7b5711..0c23f0a938 100644 --- a/build/msw/makefile.bcc +++ b/build/msw/makefile.bcc @@ -38,7 +38,7 @@ MAKEARGS = -DCC="$(CC)" -DCXX="$(CXX)" -DCFLAGS="$(CFLAGS)" \ -DWX_FLAVOUR="$(WX_FLAVOUR)" -DWX_LIB_FLAVOUR="$(WX_LIB_FLAVOUR)" \ -DCFG="$(CFG)" -DRUNTIME_LIBS="$(RUNTIME_LIBS)" WX_RELEASE_NODOT = 31 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 COMPILER_PREFIX = bcc OBJS = \ $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG) @@ -5593,7 +5593,7 @@ $(SETUPHDIR)\wx\msw\rcdefs.h: $(SETUPHDIR)\wx\msw ..\..\include\wx\msw\genrcdefs build_cfg_file: $(SETUPHDIR) @echo WXVER_MAJOR=3 >$(BUILD_CFG_FILE) @echo WXVER_MINOR=1 >>$(BUILD_CFG_FILE) - @echo WXVER_RELEASE=1 >>$(BUILD_CFG_FILE) + @echo WXVER_RELEASE=2 >>$(BUILD_CFG_FILE) @echo BUILD=$(BUILD) >>$(BUILD_CFG_FILE) @echo MONOLITHIC=$(MONOLITHIC) >>$(BUILD_CFG_FILE) @echo SHARED=$(SHARED) >>$(BUILD_CFG_FILE) diff --git a/build/msw/makefile.gcc b/build/msw/makefile.gcc index c7b3f16d74..4272f38c1a 100644 --- a/build/msw/makefile.gcc +++ b/build/msw/makefile.gcc @@ -32,7 +32,7 @@ MAKEARGS = LINK_DLL_FLAGS="$(LINK_DLL_FLAGS)" \ WINDRES="$(WINDRES)" CPPDEPS = -MT$@ -MF$@.d -MD -MP WX_RELEASE_NODOT = 31 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 COMPILER_PREFIX = gcc OBJS = \ $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG) @@ -5775,7 +5775,7 @@ $(SETUPHDIR)\wx\msw\rcdefs.h: $(SETUPHDIR)\wx\msw ..\..\include\wx\msw\genrcdefs build_cfg_file: $(SETUPHDIR) @echo WXVER_MAJOR=3 >$(BUILD_CFG_FILE) @echo WXVER_MINOR=1 >>$(BUILD_CFG_FILE) - @echo WXVER_RELEASE=1 >>$(BUILD_CFG_FILE) + @echo WXVER_RELEASE=2 >>$(BUILD_CFG_FILE) @echo BUILD=$(BUILD) >>$(BUILD_CFG_FILE) @echo MONOLITHIC=$(MONOLITHIC) >>$(BUILD_CFG_FILE) @echo SHARED=$(SHARED) >>$(BUILD_CFG_FILE) diff --git a/build/msw/makefile.vc b/build/msw/makefile.vc index 0f266fd231..b2965f5f63 100644 --- a/build/msw/makefile.vc +++ b/build/msw/makefile.vc @@ -29,7 +29,7 @@ MAKEARGS = CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \ WX_FLAVOUR="$(WX_FLAVOUR)" WX_LIB_FLAVOUR="$(WX_LIB_FLAVOUR)" CFG="$(CFG)" \ RUNTIME_LIBS="$(RUNTIME_LIBS)" WX_RELEASE_NODOT = 31 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 COMPILER_PREFIX = vc OBJS = \ $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)$(ARCH_SUFFIX) @@ -6290,7 +6290,7 @@ $(SETUPHDIR)\wx\msw\rcdefs.h: $(SETUPHDIR)\wx\msw ..\..\include\wx\msw\genrcdefs build_cfg_file: $(SETUPHDIR) @echo WXVER_MAJOR=3 >$(BUILD_CFG_FILE) @echo WXVER_MINOR=1 >>$(BUILD_CFG_FILE) - @echo WXVER_RELEASE=1 >>$(BUILD_CFG_FILE) + @echo WXVER_RELEASE=2 >>$(BUILD_CFG_FILE) @echo BUILD=$(BUILD) >>$(BUILD_CFG_FILE) @echo MONOLITHIC=$(MONOLITHIC) >>$(BUILD_CFG_FILE) @echo SHARED=$(SHARED) >>$(BUILD_CFG_FILE) diff --git a/build/msw/wx_setup.props b/build/msw/wx_setup.props index c15fb84ffa..f25aff8a49 100644 --- a/build/msw/wx_setup.props +++ b/build/msw/wx_setup.props @@ -1,7 +1,7 @@  - 311 + 312 31 msw vc diff --git a/build/msw/wx_vc7_adv.vcproj b/build/msw/wx_vc7_adv.vcproj index 05c49a3bbc..2582886c10 100644 --- a/build/msw/wx_vc7_adv.vcproj +++ b/build/msw/wx_vc7_adv.vcproj @@ -156,7 +156,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_advdll.pch" ObjectFile="vc_mswuddll\adv\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="TRUE" Detect64BitPortabilityProblems="TRUE" @@ -167,13 +167,13 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_adv.lib" SuppressStartupBanner="TRUE" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateDebugInformation="TRUE" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.pdb" TargetMachine="1"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,7 +254,7 @@ Name="VCPreLinkEventTool"/> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_adv_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_adv_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_advdll.pch" ObjectFile="vc_mswuddll_x64\adv\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_adv_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_adv_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_adv_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_adv_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_adv_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_aui.vcproj b/build/msw/wx_vc8_aui.vcproj index 6197a5aa9f..4151d0c18b 100644 --- a/build/msw/wx_vc8_aui.vcproj +++ b/build/msw/wx_vc8_aui.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_auidll.pch" ObjectFile="vc_mswuddll\aui\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_aui_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_aui_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_aui_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_aui_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_aui_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_auidll.pch" ObjectFile="vc_mswuddll_x64\aui\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_aui_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_aui_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_aui_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_aui_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_aui_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_base.vcproj b/build/msw/wx_vc8_base.vcproj index d7bb2eb254..3a22b0bd71 100644 --- a/build/msw/wx_vc8_base.vcproj +++ b/build/msw/wx_vc8_base.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_basedll.pch" ObjectFile="vc_mswuddll\base\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase311ud_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase312ud_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_dll\wxbase311ud_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312ud_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxbase31ud.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311ud_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312ud_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_dll\wxbase311u_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312u_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxbase31u.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311u_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312u_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_basedll.pch" ObjectFile="vc_mswuddll_x64\base\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase311ud_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase312ud_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311ud_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312ud_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31ud.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311ud_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312ud_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311u_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312u_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31u.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311u_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312u_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_core.vcproj b/build/msw/wx_vc8_core.vcproj index a5cb10c1df..ba6a6f4283 100644 --- a/build/msw/wx_vc8_core.vcproj +++ b/build/msw/wx_vc8_core.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_coredll.pch" ObjectFile="vc_mswuddll\core\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_core_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_core_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_core_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_core_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_core_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_core_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_core_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_coredll.pch" ObjectFile="vc_mswuddll_x64\core\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_core_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_core_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_core_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_core_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_core_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_core_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_core_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_gl.vcproj b/build/msw/wx_vc8_gl.vcproj index d9b79f9eb2..aafbc68c01 100644 --- a/build/msw/wx_vc8_gl.vcproj +++ b/build/msw/wx_vc8_gl.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_gldll.pch" ObjectFile="vc_mswuddll\gl\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_gl_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31ud_core.lib wxbase31ud.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_gl_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_gl_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31u_core.lib wxbase31u.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_gl_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_gl_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_gldll.pch" ObjectFile="vc_mswuddll_x64\gl\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_gl_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31ud_core.lib wxbase31ud.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_gl_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_gl_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31u_core.lib wxbase31u.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_gl_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_gl_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_html.vcproj b/build/msw/wx_vc8_html.vcproj index cbb16a5918..917a7418d9 100644 --- a/build/msw/wx_vc8_html.vcproj +++ b/build/msw/wx_vc8_html.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_htmldll.pch" ObjectFile="vc_mswuddll\html\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_html_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_html_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_html_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_html_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_html_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_html_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_html_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_htmldll.pch" ObjectFile="vc_mswuddll_x64\html\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_html_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_html_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_html_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_html_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_html_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_html_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_html_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_media.vcproj b/build/msw/wx_vc8_media.vcproj index 76310e9f98..06eebf66ce 100644 --- a/build/msw/wx_vc8_media.vcproj +++ b/build/msw/wx_vc8_media.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_mediadll.pch" ObjectFile="vc_mswuddll\media\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_media_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_media_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_media_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_media_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_media_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_media_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_media_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_mediadll.pch" ObjectFile="vc_mswuddll_x64\media\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_media_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_media_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_media_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_media_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_media_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_media_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_media_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_net.vcproj b/build/msw/wx_vc8_net.vcproj index b8fa815178..31bf4accd3 100644 --- a/build/msw/wx_vc8_net.vcproj +++ b/build/msw/wx_vc8_net.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_netdll.pch" ObjectFile="vc_mswuddll\net\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase312ud_net_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxbase311ud_net_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312ud_net_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxbase31ud_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312ud_net_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxbase311u_net_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312u_net_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxbase31u_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311u_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312u_net_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_netdll.pch" ObjectFile="vc_mswuddll_x64\net\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase312ud_net_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311ud_net_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312ud_net_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31ud_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312ud_net_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311u_net_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312u_net_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31u_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311u_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312u_net_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_propgrid.vcproj b/build/msw/wx_vc8_propgrid.vcproj index 86d65d5822..0919fd34fc 100644 --- a/build/msw/wx_vc8_propgrid.vcproj +++ b/build/msw/wx_vc8_propgrid.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_propgriddll.pch" ObjectFile="vc_mswuddll\propgrid\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_propgrid_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_propgrid_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_propgrid_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_propgrid_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_propgrid_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_propgriddll.pch" ObjectFile="vc_mswuddll_x64\propgrid\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_propgrid_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_propgrid_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_propgrid_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_propgrid_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_propgrid_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_qa.vcproj b/build/msw/wx_vc8_qa.vcproj index f8a8ac540b..527643dd00 100644 --- a/build/msw/wx_vc8_qa.vcproj +++ b/build/msw/wx_vc8_qa.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_qadll.pch" ObjectFile="vc_mswuddll\qa\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_qa_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib ..\..\lib\vc_dll\wxbase31ud_xml.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_qa_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_qa_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib ..\..\lib\vc_dll\wxbase31u_xml.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_qa_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_qa_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_qadll.pch" ObjectFile="vc_mswuddll_x64\qa\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_qa_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib ..\..\lib\vc_x64_dll\wxbase31ud_xml.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_qa_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_qa_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib ..\..\lib\vc_x64_dll\wxbase31u_xml.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_qa_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_qa_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_ribbon.vcproj b/build/msw/wx_vc8_ribbon.vcproj index 72c594c5e8..0b4add11d2 100644 --- a/build/msw/wx_vc8_ribbon.vcproj +++ b/build/msw/wx_vc8_ribbon.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_ribbondll.pch" ObjectFile="vc_mswuddll\ribbon\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_ribbon_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_ribbon_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_ribbon_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_ribbon_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_ribbon_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_ribbondll.pch" ObjectFile="vc_mswuddll_x64\ribbon\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_ribbon_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_ribbon_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_ribbon_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_ribbon_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_ribbon_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_richtext.vcproj b/build/msw/wx_vc8_richtext.vcproj index a81ad60cca..b50d720c46 100644 --- a/build/msw/wx_vc8_richtext.vcproj +++ b/build/msw/wx_vc8_richtext.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_richtextdll.pch" ObjectFile="vc_mswuddll\richtext\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_richtext_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_html.lib ..\..\lib\vc_dll\wxbase31ud_xml.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_richtext_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_richtext_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_html.lib ..\..\lib\vc_dll\wxbase31u_xml.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_richtext_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_richtext_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_richtextdll.pch" ObjectFile="vc_mswuddll_x64\richtext\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_richtext_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_html.lib ..\..\lib\vc_x64_dll\wxbase31ud_xml.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_richtext_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_richtext_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_html.lib ..\..\lib\vc_x64_dll\wxbase31u_xml.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_richtext_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_richtext_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_stc.vcproj b/build/msw/wx_vc8_stc.vcproj index 9c0b784297..45fdaee256 100644 --- a/build/msw/wx_vc8_stc.vcproj +++ b/build/msw/wx_vc8_stc.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_stcdll.pch" ObjectFile="vc_mswuddll\stc\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_stc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxscintillad.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_stc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_stc_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxscintilla.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_stc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_stc_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_stcdll.pch" ObjectFile="vc_mswuddll_x64\stc\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_stc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxscintillad.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_stc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_stc_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxscintilla.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_stc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_stc_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_webview.vcproj b/build/msw/wx_vc8_webview.vcproj index f17e202de3..6e191c3c4c 100644 --- a/build/msw/wx_vc8_webview.vcproj +++ b/build/msw/wx_vc8_webview.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_webviewdll.pch" ObjectFile="vc_mswuddll\webview\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_webview_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_webview_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_webview_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_webview_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_webview_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_webviewdll.pch" ObjectFile="vc_mswuddll_x64\webview\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_webview_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_webview_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_webview_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_webview_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_webview_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_xml.vcproj b/build/msw/wx_vc8_xml.vcproj index 5c1e0210f5..bc8f471460 100644 --- a/build/msw/wx_vc8_xml.vcproj +++ b/build/msw/wx_vc8_xml.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_xmldll.pch" ObjectFile="vc_mswuddll\xml\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase312ud_xml_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxbase311ud_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312ud_xml_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxbase31ud_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312ud_xml_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxbase311u_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312u_xml_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxbase31u_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311u_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312u_xml_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_xmldll.pch" ObjectFile="vc_mswuddll_x64\xml\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase312ud_xml_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311ud_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312ud_xml_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31ud_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312ud_xml_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311u_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312u_xml_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31u_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311u_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312u_xml_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc8_xrc.vcproj b/build/msw/wx_vc8_xrc.vcproj index fc9118d023..dfdd233cef 100644 --- a/build/msw/wx_vc8_xrc.vcproj +++ b/build/msw/wx_vc8_xrc.vcproj @@ -232,7 +232,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_xrcdll.pch" ObjectFile="vc_mswuddll\xrc\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_xrc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -243,7 +243,7 @@ /> @@ -254,14 +254,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_html.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud_xml.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_xrc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_xrc_vc_custom.pdb" TargetMachine="1" /> @@ -345,14 +345,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_html.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u_xml.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_xrc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_xrc_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -586,7 +586,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_xrcdll.pch" ObjectFile="vc_mswuddll_x64\xrc\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_xrc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -597,7 +597,7 @@ /> @@ -608,14 +608,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_html.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud_xml.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_xrc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_xrc_vc_custom.pdb" TargetMachine="17" /> @@ -699,14 +699,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_html.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u_xml.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_xrc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_xrc_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_adv.vcproj b/build/msw/wx_vc9_adv.vcproj index 4b301910e9..ad0286d0c8 100644 --- a/build/msw/wx_vc9_adv.vcproj +++ b/build/msw/wx_vc9_adv.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_advdll.pch" ObjectFile="vc_mswuddll\adv\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_adv_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_adv_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_adv_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_advdll.pch" ObjectFile="vc_mswuddll_x64\adv\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_adv_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_adv_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_adv_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_adv_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_adv_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_adv.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_adv_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_adv_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_aui.vcproj b/build/msw/wx_vc9_aui.vcproj index e9220f4ad3..1d167c8c09 100644 --- a/build/msw/wx_vc9_aui.vcproj +++ b/build/msw/wx_vc9_aui.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_auidll.pch" ObjectFile="vc_mswuddll\aui\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_aui_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_aui_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_aui_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_aui_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_aui_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_auidll.pch" ObjectFile="vc_mswuddll_x64\aui\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_aui_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_aui_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_aui_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_aui_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_aui_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_aui.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_aui_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_aui_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_base.vcproj b/build/msw/wx_vc9_base.vcproj index ec52aebd6a..2c435c44bb 100644 --- a/build/msw/wx_vc9_base.vcproj +++ b/build/msw/wx_vc9_base.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_basedll.pch" ObjectFile="vc_mswuddll\base\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase311ud_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase312ud_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_dll\wxbase311ud_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312ud_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxbase31ud.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311ud_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312ud_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_dll\wxbase311u_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312u_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxbase31u.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311u_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312u_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_basedll.pch" ObjectFile="vc_mswuddll_x64\base\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase311ud_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase312ud_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311ud_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312ud_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31ud.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311ud_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312ud_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311u_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312u_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31u.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311u_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312u_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_core.vcproj b/build/msw/wx_vc9_core.vcproj index f480343e17..1cf92e2fdc 100644 --- a/build/msw/wx_vc9_core.vcproj +++ b/build/msw/wx_vc9_core.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_coredll.pch" ObjectFile="vc_mswuddll\core\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_core_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_core_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_core_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_core_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_core_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_core_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_core_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_coredll.pch" ObjectFile="vc_mswuddll_x64\core\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_core_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_core_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_core_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_core_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_core_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_core_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_core.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_core_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_core_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_gl.vcproj b/build/msw/wx_vc9_gl.vcproj index 9c31b921e7..0e1953cda8 100644 --- a/build/msw/wx_vc9_gl.vcproj +++ b/build/msw/wx_vc9_gl.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_gldll.pch" ObjectFile="vc_mswuddll\gl\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_gl_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31ud_core.lib wxbase31ud.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_gl_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_gl_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31u_core.lib wxbase31u.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_gl_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_gl_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_gldll.pch" ObjectFile="vc_mswuddll_x64\gl\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_gl_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31ud_core.lib wxbase31ud.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_gl_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_gl_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib wxmsw31u_core.lib wxbase31u.lib opengl32.lib glu32.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_gl_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_gl_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_gl.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_gl_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_gl_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_html.vcproj b/build/msw/wx_vc9_html.vcproj index b24188a9fb..f7db5c0beb 100644 --- a/build/msw/wx_vc9_html.vcproj +++ b/build/msw/wx_vc9_html.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_htmldll.pch" ObjectFile="vc_mswuddll\html\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_html_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_html_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_html_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_html_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_html_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_html_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_html_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_htmldll.pch" ObjectFile="vc_mswuddll_x64\html\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_html_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_html_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_html_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_html_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_html_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_html_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_html.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_html_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_html_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_media.vcproj b/build/msw/wx_vc9_media.vcproj index 8540280910..b8424ebec1 100644 --- a/build/msw/wx_vc9_media.vcproj +++ b/build/msw/wx_vc9_media.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_mediadll.pch" ObjectFile="vc_mswuddll\media\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_media_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_media_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_media_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_media_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_media_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_media_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_media_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_mediadll.pch" ObjectFile="vc_mswuddll_x64\media\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_media_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_media_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_media_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_media_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_media_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_media_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_media.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_media_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_media_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_net.vcproj b/build/msw/wx_vc9_net.vcproj index e23a5498b1..f23b6ad85f 100644 --- a/build/msw/wx_vc9_net.vcproj +++ b/build/msw/wx_vc9_net.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_netdll.pch" ObjectFile="vc_mswuddll\net\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase312ud_net_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxbase311ud_net_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312ud_net_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxbase31ud_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312ud_net_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxbase311u_net_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312u_net_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxbase31u_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311u_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312u_net_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_netdll.pch" ObjectFile="vc_mswuddll_x64\net\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase312ud_net_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311ud_net_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312ud_net_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31ud_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311ud_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312ud_net_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311u_net_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312u_net_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31u_net.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311u_net_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312u_net_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_propgrid.vcproj b/build/msw/wx_vc9_propgrid.vcproj index 2609bf4521..e448b2b61e 100644 --- a/build/msw/wx_vc9_propgrid.vcproj +++ b/build/msw/wx_vc9_propgrid.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_propgriddll.pch" ObjectFile="vc_mswuddll\propgrid\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_propgrid_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_propgrid_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_propgrid_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_propgrid_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_propgrid_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_propgriddll.pch" ObjectFile="vc_mswuddll_x64\propgrid\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_propgrid_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_propgrid_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_propgrid_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_propgrid_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_propgrid_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_propgrid.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_propgrid_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_propgrid_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_qa.vcproj b/build/msw/wx_vc9_qa.vcproj index 13a6ac790b..e2b61a555c 100644 --- a/build/msw/wx_vc9_qa.vcproj +++ b/build/msw/wx_vc9_qa.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_qadll.pch" ObjectFile="vc_mswuddll\qa\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_qa_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib ..\..\lib\vc_dll\wxbase31ud_xml.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_qa_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_qa_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib ..\..\lib\vc_dll\wxbase31u_xml.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_qa_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_qa_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_qadll.pch" ObjectFile="vc_mswuddll_x64\qa\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_qa_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib ..\..\lib\vc_x64_dll\wxbase31ud_xml.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_qa_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_qa_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib ..\..\lib\vc_x64_dll\wxbase31u_xml.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_qa_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_qa_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_qa.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_qa_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_qa_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_ribbon.vcproj b/build/msw/wx_vc9_ribbon.vcproj index e6a3cfd6c7..e0ebdae554 100644 --- a/build/msw/wx_vc9_ribbon.vcproj +++ b/build/msw/wx_vc9_ribbon.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_ribbondll.pch" ObjectFile="vc_mswuddll\ribbon\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_ribbon_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_ribbon_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_ribbon_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_ribbon_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_ribbon_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_ribbondll.pch" ObjectFile="vc_mswuddll_x64\ribbon\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_ribbon_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_ribbon_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_ribbon_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_ribbon_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_ribbon_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_ribbon.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_ribbon_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_ribbon_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_richtext.vcproj b/build/msw/wx_vc9_richtext.vcproj index dc821f2177..9ee191a274 100644 --- a/build/msw/wx_vc9_richtext.vcproj +++ b/build/msw/wx_vc9_richtext.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_richtextdll.pch" ObjectFile="vc_mswuddll\richtext\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_richtext_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_html.lib ..\..\lib\vc_dll\wxbase31ud_xml.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_richtext_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_richtext_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_html.lib ..\..\lib\vc_dll\wxbase31u_xml.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_richtext_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_richtext_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_richtextdll.pch" ObjectFile="vc_mswuddll_x64\richtext\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_richtext_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_html.lib ..\..\lib\vc_x64_dll\wxbase31ud_xml.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_richtext_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_richtext_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_html.lib ..\..\lib\vc_x64_dll\wxbase31u_xml.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_richtext_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_richtext_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_richtext.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_richtext_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_richtext_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_stc.vcproj b/build/msw/wx_vc9_stc.vcproj index f7e140bf22..085a10c834 100644 --- a/build/msw/wx_vc9_stc.vcproj +++ b/build/msw/wx_vc9_stc.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_stcdll.pch" ObjectFile="vc_mswuddll\stc\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_stc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxscintillad.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_stc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_stc_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxscintilla.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_stc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_stc_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_stcdll.pch" ObjectFile="vc_mswuddll_x64\stc\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_stc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxscintillad.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_stc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_stc_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxscintilla.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_stc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_stc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_stc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_stc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_stc_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_webview.vcproj b/build/msw/wx_vc9_webview.vcproj index e95d6512d7..47754d8067 100644 --- a/build/msw/wx_vc9_webview.vcproj +++ b/build/msw/wx_vc9_webview.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_webviewdll.pch" ObjectFile="vc_mswuddll\webview\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_webview_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_webview_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_webview_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_webview_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_webview_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_webviewdll.pch" ObjectFile="vc_mswuddll_x64\webview\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_webview_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_webview_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_webview_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_webview_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_webview_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_webview.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_webview_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_webview_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_xml.vcproj b/build/msw/wx_vc9_xml.vcproj index 2bf94dfe99..bd305d4c9b 100644 --- a/build/msw/wx_vc9_xml.vcproj +++ b/build/msw/wx_vc9_xml.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_xmldll.pch" ObjectFile="vc_mswuddll\xml\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxbase312ud_xml_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxbase311ud_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312ud_xml_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxbase31ud_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312ud_xml_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxbase311u_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxbase312u_xml_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxbase31u_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxbase311u_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxbase312u_xml_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_xmldll.pch" ObjectFile="vc_mswuddll_x64\xml\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxbase312ud_xml_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311ud_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312ud_xml_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31ud_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311ud_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312ud_xml_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxbase311u_xml_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxbase312u_xml_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxbase31u_xml.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase311u_xml_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxbase312u_xml_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/msw/wx_vc9_xrc.vcproj b/build/msw/wx_vc9_xrc.vcproj index 8be973f6c4..217be83b05 100644 --- a/build/msw/wx_vc9_xrc.vcproj +++ b/build/msw/wx_vc9_xrc.vcproj @@ -231,7 +231,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll\wxprec_xrcdll.pch" ObjectFile="vc_mswuddll\xrc\" - ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_dll\wxmsw312ud_xrc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -241,7 +241,7 @@ /> @@ -252,14 +252,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31ud_html.lib ..\..\lib\vc_dll\wxmsw31ud_adv.lib ..\..\lib\vc_dll\wxmsw31ud_core.lib ..\..\lib\vc_dll\wxbase31ud_xml.lib ..\..\lib\vc_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311ud_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312ud_xrc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_dll\wxmsw31ud_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312ud_xrc_vc_custom.pdb" TargetMachine="1" /> @@ -343,14 +343,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_dll\wxmsw31u_html.lib ..\..\lib\vc_dll\wxmsw31u_adv.lib ..\..\lib\vc_dll\wxmsw31u_core.lib ..\..\lib\vc_dll\wxbase31u_xml.lib ..\..\lib\vc_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_dll\wxmsw311u_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_dll\wxmsw312u_xrc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_dll\wxmsw31u_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw311u_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_dll\wxmsw312u_xrc_vc_custom.pdb" TargetMachine="1" OptimizeReferences="2" EnableCOMDATFolding="2" @@ -583,7 +583,7 @@ PrecompiledHeaderThrough="wx/wxprec.h" PrecompiledHeaderFile="vc_mswuddll_x64\wxprec_xrcdll.pch" ObjectFile="vc_mswuddll_x64\xrc\" - ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDataBaseFileName="..\..\lib\vc_x64_dll\wxmsw312ud_xrc_vc_custom.pdb" WarningLevel="4" SuppressStartupBanner="true" DebugInformationFormat="3" @@ -593,7 +593,7 @@ /> @@ -604,14 +604,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31ud_html.lib ..\..\lib\vc_x64_dll\wxmsw31ud_adv.lib ..\..\lib\vc_x64_dll\wxmsw31ud_core.lib ..\..\lib\vc_x64_dll\wxbase31ud_xml.lib ..\..\lib\vc_x64_dll\wxbase31ud.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311ud_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312ud_xrc_vc_custom.dll" LinkIncremental="2" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31ud_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311ud_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312ud_xrc_vc_custom.pdb" TargetMachine="17" /> @@ -695,14 +695,14 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib ..\..\lib\vc_x64_dll\wxmsw31u_html.lib ..\..\lib\vc_x64_dll\wxmsw31u_adv.lib ..\..\lib\vc_x64_dll\wxmsw31u_core.lib ..\..\lib\vc_x64_dll\wxbase31u_xml.lib ..\..\lib\vc_x64_dll\wxbase31u.lib" - OutputFile="..\..\lib\vc_x64_dll\wxmsw311u_xrc_vc_custom.dll" + OutputFile="..\..\lib\vc_x64_dll\wxmsw312u_xrc_vc_custom.dll" LinkIncremental="1" ImportLibrary="..\..\lib\vc_x64_dll\wxmsw31u_xrc.lib" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\lib\vc_x64_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw311u_xrc_vc_custom.pdb" + ProgramDatabaseFile="..\..\lib\vc_x64_dll\wxmsw312u_xrc_vc_custom.pdb" TargetMachine="17" OptimizeReferences="2" EnableCOMDATFolding="2" diff --git a/build/osx/wxvers.xcconfig b/build/osx/wxvers.xcconfig index e4fe5bf103..2e4f173d30 100644 --- a/build/osx/wxvers.xcconfig +++ b/build/osx/wxvers.xcconfig @@ -1,4 +1,4 @@ // update this file with new version numbers DYLIB_COMPATIBILITY_VERSION = 3.1 -DYLIB_CURRENT_VERSION = 3.1.1 +DYLIB_CURRENT_VERSION = 3.1.2 diff --git a/build/tools/msvs/getversion.bat b/build/tools/msvs/getversion.bat index 5e9889e978..181acd8582 100644 --- a/build/tools/msvs/getversion.bat +++ b/build/tools/msvs/getversion.bat @@ -1,3 +1,3 @@ set wxMAJOR_VERSION=3 set wxMINOR_VERSION=1 -set wxRELEASE_NUMBER=1 +set wxRELEASE_NUMBER=2 diff --git a/configure.in b/configure.in index 340f2b30bb..8afbc08aaf 100644 --- a/configure.in +++ b/configure.in @@ -14,7 +14,7 @@ dnl --------------------------------------------------------------------------- dnl initialization dnl --------------------------------------------------------------------------- -AC_INIT([wxWidgets], [3.1.1], [wx-dev@googlegroups.com]) +AC_INIT([wxWidgets], [3.1.2], [wx-dev@googlegroups.com]) dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package AC_CONFIG_SRCDIR([wx-config.in]) @@ -40,7 +40,7 @@ dnl wx_release_number += 1 wx_major_version_number=3 wx_minor_version_number=1 -wx_release_number=1 +wx_release_number=2 wx_subrelease_number=0 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number diff --git a/demos/bombs/Makefile.in b/demos/bombs/Makefile.in index 10baa08033..a319a1b999 100644 --- a/demos/bombs/Makefile.in +++ b/demos/bombs/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib BOMBS_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/demos/forty/Makefile.in b/demos/forty/Makefile.in index 7d3e2e358c..2b8963f5cf 100644 --- a/demos/forty/Makefile.in +++ b/demos/forty/Makefile.in @@ -43,7 +43,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib FORTY_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/demos/fractal/Makefile.in b/demos/fractal/Makefile.in index 45b8c8b2d6..6d2b3b8c16 100644 --- a/demos/fractal/Makefile.in +++ b/demos/fractal/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib FRACTAL_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/demos/life/Makefile.in b/demos/life/Makefile.in index 2c687458d8..c2e582b4d2 100644 --- a/demos/life/Makefile.in +++ b/demos/life/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib LIFE_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/demos/poem/Makefile.in b/demos/poem/Makefile.in index 3a199b75e6..528d0b28b7 100644 --- a/demos/poem/Makefile.in +++ b/demos/poem/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib WXPOEM_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/docs/doxygen/Doxyfile b/docs/doxygen/Doxyfile index bd3284cffa..bef0fc9a9d 100644 --- a/docs/doxygen/Doxyfile +++ b/docs/doxygen/Doxyfile @@ -6,7 +6,7 @@ DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = wxWidgets -PROJECT_NUMBER = 3.1.1 +PROJECT_NUMBER = 3.1.2 PROJECT_BRIEF = PROJECT_LOGO = logo.png OUTPUT_DIRECTORY = out diff --git a/docs/readme.txt b/docs/readme.txt index a37fadc811..4a4fe74365 100644 --- a/docs/readme.txt +++ b/docs/readme.txt @@ -1,4 +1,4 @@ -wxWidgets 3.1.1 Release Notes +wxWidgets 3.1.2 Release Notes ============================= Welcome to the latest development release of wxWidgets, a free and open source @@ -16,12 +16,12 @@ more about wxWidgets at: Documentation is available online at: -* http://docs.wxwidgets.org/3.1.1/ +* http://docs.wxwidgets.org/3.1.2/ wxWidgets sources and binaries for the selected platforms are available for download from: -* https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.1/ +* https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.2/ Changes since 3.1.0 @@ -61,7 +61,7 @@ party libraries have been updated to their latest versions. Please refer to the detailed change log for the full list of changes: -https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.1/docs/changes.txt +https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.2/docs/changes.txt Changes since 3.0 diff --git a/include/wx/osx/config_xcode.h b/include/wx/osx/config_xcode.h index c9f3922de4..1a4946c0e1 100644 --- a/include/wx/osx/config_xcode.h +++ b/include/wx/osx/config_xcode.h @@ -126,9 +126,9 @@ #define PACKAGE_BUGREPORT "wx-dev@googlegroups.com" #define PACKAGE_NAME "wxWidgets" -#define PACKAGE_STRING "wxWidgets 3.1.1" +#define PACKAGE_STRING "wxWidgets 3.1.2" #define PACKAGE_TARNAME "wxwidgets" -#define PACKAGE_VERSION "3.1.1" +#define PACKAGE_VERSION "3.1.2" // for regex #define WX_NO_REGEX_ADVANCED 1 diff --git a/include/wx/version.h b/include/wx/version.h index 57ec66fa40..f977b5364b 100644 --- a/include/wx/version.h +++ b/include/wx/version.h @@ -27,9 +27,9 @@ /* NB: this file is parsed by automatic tools so don't change its format! */ #define wxMAJOR_VERSION 3 #define wxMINOR_VERSION 1 -#define wxRELEASE_NUMBER 1 +#define wxRELEASE_NUMBER 2 #define wxSUBRELEASE_NUMBER 0 -#define wxVERSION_STRING wxT("wxWidgets 3.1.1") +#define wxVERSION_STRING wxT("wxWidgets 3.1.2") /* nothing to update below this line when updating the version */ /* ---------------------------------------------------------------------------- */ diff --git a/samples/Info.plist b/samples/Info.plist index 1476b139d8..bcdc6ce2d6 100644 --- a/samples/Info.plist +++ b/samples/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(PRODUCT_NAME) CFBundleGetInfoString - $(PRODUCT_NAME) version 3.1.1, (c) 2005-2018 wxWidgets + $(PRODUCT_NAME) version 3.1.2, (c) 2005-2018 wxWidgets CFBundleIconFile wxmac.icns CFBundleIdentifier @@ -15,17 +15,17 @@ CFBundleInfoDictionaryVersion 6.0 CFBundleLongVersionString - 3.1.1, (c) 2005-2018 wxWidgets + 3.1.2, (c) 2005-2018 wxWidgets CFBundleName $(PRODUCT_NAME) CFBundlePackageType APPL CFBundleShortVersionString - 3.1.1 + 3.1.2 CFBundleSignature ???? CFBundleVersion - 3.1.1 + 3.1.2 CSResourcesFileMapped LSRequiresCarbon diff --git a/samples/access/Makefile.in b/samples/access/Makefile.in index ee8fa03fe9..f571d79ef2 100644 --- a/samples/access/Makefile.in +++ b/samples/access/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ACCESSTEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/animate/Makefile.in b/samples/animate/Makefile.in index 7a307a641c..10140e1ea9 100644 --- a/samples/animate/Makefile.in +++ b/samples/animate/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ANITEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/artprov/Makefile.in b/samples/artprov/Makefile.in index d8458dc844..c0872109c3 100644 --- a/samples/artprov/Makefile.in +++ b/samples/artprov/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ARTTEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/aui/Makefile.in b/samples/aui/Makefile.in index b107504320..b921a9dc62 100644 --- a/samples/aui/Makefile.in +++ b/samples/aui/Makefile.in @@ -43,7 +43,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib AUIDEMO_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/calendar/Makefile.in b/samples/calendar/Makefile.in index 641583f1ee..034df86185 100644 --- a/samples/calendar/Makefile.in +++ b/samples/calendar/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib CALENDAR_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/caret/Makefile.in b/samples/caret/Makefile.in index 0fc3d8ffec..0cde6e4fb8 100644 --- a/samples/caret/Makefile.in +++ b/samples/caret/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib CARET_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/clipboard/Makefile.in b/samples/clipboard/Makefile.in index 2bcdd69d72..b19c7f9b16 100644 --- a/samples/clipboard/Makefile.in +++ b/samples/clipboard/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib CLIPBOARD_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/collpane/Makefile.in b/samples/collpane/Makefile.in index 2784914254..21ca83039d 100644 --- a/samples/collpane/Makefile.in +++ b/samples/collpane/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib COLLPANE_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/combo/Makefile.in b/samples/combo/Makefile.in index 5999a5b85f..9893e27d43 100644 --- a/samples/combo/Makefile.in +++ b/samples/combo/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib COMBO_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/config/Makefile.in b/samples/config/Makefile.in index 99be71019f..3b613f8bcb 100644 --- a/samples/config/Makefile.in +++ b/samples/config/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib CONFTEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/dataview/Makefile.in b/samples/dataview/Makefile.in index 4ce8cb01cc..60dbf8f14f 100644 --- a/samples/dataview/Makefile.in +++ b/samples/dataview/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DATAVIEW_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/debugrpt/Makefile.in b/samples/debugrpt/Makefile.in index 956e5c9894..3fcda9313e 100644 --- a/samples/debugrpt/Makefile.in +++ b/samples/debugrpt/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DEBUGRPT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/dialogs/Makefile.in b/samples/dialogs/Makefile.in index cef098323f..49bb62198e 100644 --- a/samples/dialogs/Makefile.in +++ b/samples/dialogs/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DIALOGS_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/dialup/Makefile.in b/samples/dialup/Makefile.in index b8e07e5faf..68bd936bf0 100644 --- a/samples/dialup/Makefile.in +++ b/samples/dialup/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib NETTEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/display/Makefile.in b/samples/display/Makefile.in index b008450623..bafb9800c7 100644 --- a/samples/display/Makefile.in +++ b/samples/display/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DISPLAY_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/dll/Makefile.in b/samples/dll/Makefile.in index f6eba32980..5eec3e1e1a 100644 --- a/samples/dll/Makefile.in +++ b/samples/dll/Makefile.in @@ -47,7 +47,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib MY_DLL_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/dnd/Makefile.in b/samples/dnd/Makefile.in index bfca18e6ef..f1b6583b40 100644 --- a/samples/dnd/Makefile.in +++ b/samples/dnd/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DND_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/docview/Info.plist b/samples/docview/Info.plist index b39ead40c6..e4e80b1619 100644 --- a/samples/docview/Info.plist +++ b/samples/docview/Info.plist @@ -51,7 +51,7 @@ CFBundleExecutable $(PRODUCT_NAME) CFBundleGetInfoString - $(PRODUCT_NAME) version 3.1.1, (c) 2005-2018 wxWidgets + $(PRODUCT_NAME) version 3.1.2, (c) 2005-2018 wxWidgets CFBundleIconFile doc CFBundleIdentifier @@ -66,17 +66,17 @@ it CFBundleLongVersionString - 3.1.1, (c) 2005-2018 wxWidgets + 3.1.2, (c) 2005-2018 wxWidgets CFBundleName $(PRODUCT_NAME) CFBundlePackageType APPL CFBundleShortVersionString - 3.1.1 + 3.1.2 CFBundleSignature WXMA CFBundleVersion - 3.1.1 + 3.1.2 CSResourcesFileMapped LSRequiresCarbon diff --git a/samples/docview/Makefile.in b/samples/docview/Makefile.in index 90eac61b26..8415a78332 100644 --- a/samples/docview/Makefile.in +++ b/samples/docview/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DOCVIEW_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/dragimag/Makefile.in b/samples/dragimag/Makefile.in index 62806b6b3a..cdcd5c3002 100644 --- a/samples/dragimag/Makefile.in +++ b/samples/dragimag/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DRAGIMAG_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/drawing/Makefile.in b/samples/drawing/Makefile.in index cfef6a68f6..12385f46ea 100644 --- a/samples/drawing/Makefile.in +++ b/samples/drawing/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib DRAWING_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/erase/Makefile.in b/samples/erase/Makefile.in index cdcaf07bcd..8c04bfff92 100644 --- a/samples/erase/Makefile.in +++ b/samples/erase/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ERASE_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/event/Makefile.in b/samples/event/Makefile.in index 3b77eacc80..c99d2b6932 100644 --- a/samples/event/Makefile.in +++ b/samples/event/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib EVENT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/except/Makefile.in b/samples/except/Makefile.in index ff11f1ecd8..78abbfb69c 100644 --- a/samples/except/Makefile.in +++ b/samples/except/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib EXCEPT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/exec/Makefile.in b/samples/exec/Makefile.in index cf2f9e9cf1..4e6222a271 100644 --- a/samples/exec/Makefile.in +++ b/samples/exec/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib EXEC_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/font/Makefile.in b/samples/font/Makefile.in index ea30d90e4d..eca4325ffd 100644 --- a/samples/font/Makefile.in +++ b/samples/font/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib FONT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/fswatcher/Makefile.in b/samples/fswatcher/Makefile.in index 0cd7b7870d..b88bf03ab5 100644 --- a/samples/fswatcher/Makefile.in +++ b/samples/fswatcher/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib FSWATCHER_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/grid/Makefile.in b/samples/grid/Makefile.in index c03685d06c..c3c8571321 100644 --- a/samples/grid/Makefile.in +++ b/samples/grid/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib GRID_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/help/Makefile.in b/samples/help/Makefile.in index d43b20b770..0c66269e55 100644 --- a/samples/help/Makefile.in +++ b/samples/help/Makefile.in @@ -43,7 +43,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib HELP_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/htlbox/Makefile.in b/samples/htlbox/Makefile.in index c66365452e..fe33e17a97 100644 --- a/samples/htlbox/Makefile.in +++ b/samples/htlbox/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib HTLBOX_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/html/about/Makefile.in b/samples/html/about/Makefile.in index b427662e19..28ab32229b 100644 --- a/samples/html/about/Makefile.in +++ b/samples/html/about/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ABOUT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/html/help/Makefile.in b/samples/html/help/Makefile.in index ea7fe0033b..e07831b562 100644 --- a/samples/html/help/Makefile.in +++ b/samples/html/help/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib HTMLHELP_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/html/helpview/Makefile.in b/samples/html/helpview/Makefile.in index 77e2d67137..33739f4716 100644 --- a/samples/html/helpview/Makefile.in +++ b/samples/html/helpview/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib HELPVIEW_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/html/htmlctrl/Makefile.in b/samples/html/htmlctrl/Makefile.in index 87b8e4c22a..689aaf8eab 100644 --- a/samples/html/htmlctrl/Makefile.in +++ b/samples/html/htmlctrl/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib HTMLCTRL_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/html/printing/Makefile.in b/samples/html/printing/Makefile.in index a3d89f10b5..250602ff17 100644 --- a/samples/html/printing/Makefile.in +++ b/samples/html/printing/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib HTMLPRINTING_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/html/test/Makefile.in b/samples/html/test/Makefile.in index 770985c696..1b9c6052fa 100644 --- a/samples/html/test/Makefile.in +++ b/samples/html/test/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib TEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/html/virtual/Makefile.in b/samples/html/virtual/Makefile.in index 0c413ad5c2..211077ef89 100644 --- a/samples/html/virtual/Makefile.in +++ b/samples/html/virtual/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib VIRTUAL_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/html/widget/Makefile.in b/samples/html/widget/Makefile.in index f596abdff3..39a71c056a 100644 --- a/samples/html/widget/Makefile.in +++ b/samples/html/widget/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib WIDGET_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/html/zip/Makefile.in b/samples/html/zip/Makefile.in index 5f338921a5..7ed0473a94 100644 --- a/samples/html/zip/Makefile.in +++ b/samples/html/zip/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ZIP_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/image/Makefile.in b/samples/image/Makefile.in index 7067b22f69..e2c1229337 100644 --- a/samples/image/Makefile.in +++ b/samples/image/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib IMAGE_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/internat/Makefile.in b/samples/internat/Makefile.in index b92469d241..3ef989d92d 100644 --- a/samples/internat/Makefile.in +++ b/samples/internat/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib INTERNAT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/ipc/Makefile.in b/samples/ipc/Makefile.in index 4021ba8cd0..92ea202001 100644 --- a/samples/ipc/Makefile.in +++ b/samples/ipc/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib IPCCLIENT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/joytest/Makefile.in b/samples/joytest/Makefile.in index 699ee76111..ee8c736011 100644 --- a/samples/joytest/Makefile.in +++ b/samples/joytest/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib JOYTEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/keyboard/Makefile.in b/samples/keyboard/Makefile.in index 5308401534..81699ecf03 100644 --- a/samples/keyboard/Makefile.in +++ b/samples/keyboard/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib KEYBOARD_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/layout/Makefile.in b/samples/layout/Makefile.in index 0e90eb6a56..e5c429f7d5 100644 --- a/samples/layout/Makefile.in +++ b/samples/layout/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib LAYOUT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/listctrl/Makefile.in b/samples/listctrl/Makefile.in index 5b12acde35..eff840df3f 100644 --- a/samples/listctrl/Makefile.in +++ b/samples/listctrl/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib LISTCTRL_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/mdi/Makefile.in b/samples/mdi/Makefile.in index a6e9d4eb4e..43aaacff3c 100644 --- a/samples/mdi/Makefile.in +++ b/samples/mdi/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib MDI_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/mediaplayer/Makefile.in b/samples/mediaplayer/Makefile.in index f2e83d27a4..66452d80b0 100644 --- a/samples/mediaplayer/Makefile.in +++ b/samples/mediaplayer/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib MEDIAPLAYER_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/memcheck/Makefile.in b/samples/memcheck/Makefile.in index 6eb71ad8c9..b8df990e07 100644 --- a/samples/memcheck/Makefile.in +++ b/samples/memcheck/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib MEMCHECK_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/menu/Makefile.in b/samples/menu/Makefile.in index 228fcbe943..4c0b4ad669 100644 --- a/samples/menu/Makefile.in +++ b/samples/menu/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib MENU_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/minimal/Info_cocoa.plist b/samples/minimal/Info_cocoa.plist index 561ee3ad00..42d8369cb5 100644 --- a/samples/minimal/Info_cocoa.plist +++ b/samples/minimal/Info_cocoa.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(PRODUCT_NAME) CFBundleGetInfoString - $(PRODUCT_NAME) version 3.1.1, (c) 2005-2018 wxWidgets + $(PRODUCT_NAME) version 3.1.2, (c) 2005-2018 wxWidgets CFBundleIconFile wxmac.icns CFBundleIdentifier @@ -22,17 +22,17 @@ it CFBundleLongVersionString - 3.1.1, (c) 2005-2018 wxWidgets + 3.1.2, (c) 2005-2018 wxWidgets CFBundleName $(PRODUCT_NAME) CFBundlePackageType APPL CFBundleShortVersionString - 3.1.1 + 3.1.2 CFBundleSignature ???? CFBundleVersion - 3.1.1 + 3.1.2 NSHumanReadableCopyright Copyright 2005-2018 wxWidgets NSPrincipalClass diff --git a/samples/minimal/Makefile.in b/samples/minimal/Makefile.in index 8102000e7e..602f911640 100644 --- a/samples/minimal/Makefile.in +++ b/samples/minimal/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib MINIMAL_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/nativdlg/Makefile.in b/samples/nativdlg/Makefile.in index ae8635fdb4..c1fd94a974 100644 --- a/samples/nativdlg/Makefile.in +++ b/samples/nativdlg/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib NATIVDLG_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/notebook/Makefile.in b/samples/notebook/Makefile.in index 4f5ad6ce82..8e3a51053e 100644 --- a/samples/notebook/Makefile.in +++ b/samples/notebook/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib NOTEBOOK_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/oleauto/Makefile.in b/samples/oleauto/Makefile.in index 95ad72f552..1d0d6e8b7c 100644 --- a/samples/oleauto/Makefile.in +++ b/samples/oleauto/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib OLEAUTO_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/opengl/cube/Makefile.in b/samples/opengl/cube/Makefile.in index cdce7101ca..93c44642a8 100644 --- a/samples/opengl/cube/Makefile.in +++ b/samples/opengl/cube/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib CUBE_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/opengl/isosurf/Makefile.in b/samples/opengl/isosurf/Makefile.in index d8014aff5b..ec6a5136fa 100644 --- a/samples/opengl/isosurf/Makefile.in +++ b/samples/opengl/isosurf/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib ISOSURF_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/opengl/penguin/Makefile.in b/samples/opengl/penguin/Makefile.in index 116722c8c4..cd5d9e0bfa 100644 --- a/samples/opengl/penguin/Makefile.in +++ b/samples/opengl/penguin/Makefile.in @@ -44,7 +44,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib PENGUIN_CFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/opengl/pyramid/Makefile.in b/samples/opengl/pyramid/Makefile.in index 49712fb2ce..fec47d7616 100644 --- a/samples/opengl/pyramid/Makefile.in +++ b/samples/opengl/pyramid/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib PYRAMID_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/ownerdrw/Makefile.in b/samples/ownerdrw/Makefile.in index 695e936165..e9a805d717 100644 --- a/samples/ownerdrw/Makefile.in +++ b/samples/ownerdrw/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib OWNERDRW_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/popup/Makefile.in b/samples/popup/Makefile.in index f2d10143a7..0bee55e6ae 100644 --- a/samples/popup/Makefile.in +++ b/samples/popup/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib POPUP_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/power/Makefile.in b/samples/power/Makefile.in index a00ee8944c..8057d940a3 100644 --- a/samples/power/Makefile.in +++ b/samples/power/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib POWER_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/preferences/Makefile.in b/samples/preferences/Makefile.in index b9983f145d..e791885b28 100644 --- a/samples/preferences/Makefile.in +++ b/samples/preferences/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib PREFERENCES_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/printing/Makefile.in b/samples/printing/Makefile.in index 66a6485d24..888a1fe4c1 100644 --- a/samples/printing/Makefile.in +++ b/samples/printing/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib PRINTING_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/propgrid/Makefile.in b/samples/propgrid/Makefile.in index 9fcc1a4ce6..019fb25e4f 100644 --- a/samples/propgrid/Makefile.in +++ b/samples/propgrid/Makefile.in @@ -42,7 +42,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib PROPGRID_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ diff --git a/samples/regtest/Makefile.in b/samples/regtest/Makefile.in index 7be60c9bec..001aa862db 100644 --- a/samples/regtest/Makefile.in +++ b/samples/regtest/Makefile.in @@ -41,7 +41,7 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 -WX_VERSION = $(WX_RELEASE).1 +WX_VERSION = $(WX_RELEASE).2 LIBDIRNAME = $(wx_top_builddir)/lib REGTEST_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ diff --git a/samples/render/Makefile.in b/samples/render/Makefile.in index 37e44a75c7..ca9053cb44 100644 --- a/samples/render/Makefile.in +++ b/samples/render/Makefile.in @@ -50,8 +50,8 @@ wx_top_builddir = @wx_top_builddir@ DESTDIR = WX_RELEASE = 3.1 WX_RELEASE_NODOT = 31 -WX_VERSION = $(WX_RELEASE).1 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION = $(WX_RELEASE).2 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 LIBDIRNAME = $(wx_top_builddir)/lib PLUGINS_INST_DIR = $(libdir)/wx/$(PLUGIN_VERSION0) RENDER_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ diff --git a/samples/render/makefile.bcc b/samples/render/makefile.bcc index 581ff0cec6..65279c4cbe 100644 --- a/samples/render/makefile.bcc +++ b/samples/render/makefile.bcc @@ -22,7 +22,7 @@ BCCDIR = $(MAKEDIR)\.. ### Variables: ### WX_RELEASE_NODOT = 31 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 COMPILER_PREFIX = bcc OBJS = \ $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG) diff --git a/samples/render/makefile.gcc b/samples/render/makefile.gcc index 780f193448..305e82c4de 100644 --- a/samples/render/makefile.gcc +++ b/samples/render/makefile.gcc @@ -14,7 +14,7 @@ include ../../build/msw/config.gcc CPPDEPS = -MT$@ -MF$@.d -MD -MP WX_RELEASE_NODOT = 31 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 COMPILER_PREFIX = gcc OBJS = \ $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG) diff --git a/samples/render/makefile.vc b/samples/render/makefile.vc index 6bcbf0492e..db9bb8dc21 100644 --- a/samples/render/makefile.vc +++ b/samples/render/makefile.vc @@ -13,7 +13,7 @@ ### Variables: ### WX_RELEASE_NODOT = 31 -WX_VERSION_NODOT = $(WX_RELEASE_NODOT)1 +WX_VERSION_NODOT = $(WX_RELEASE_NODOT)2 COMPILER_PREFIX = vc OBJS = \ $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)$(ARCH_SUFFIX) diff --git a/samples/render/render_vc7_renddll.vcproj b/samples/render/render_vc7_renddll.vcproj index a70a5f0670..dad8bd0396 100644 --- a/samples/render/render_vc7_renddll.vcproj +++ b/samples/render/render_vc7_renddll.vcproj @@ -36,7 +36,7 @@ BufferSecurityCheck="TRUE" RuntimeTypeInfo="TRUE" ObjectFile="vc_mswuddll\renddll\" - ProgramDataBaseFileName="vc_mswuddll\renddll_mswud311_vc.pdb" + ProgramDataBaseFileName="vc_mswuddll\renddll_mswud312_vc.pdb" WarningLevel="4" SuppressStartupBanner="TRUE" Detect64BitPortabilityProblems="TRUE" @@ -47,12 +47,12 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxmsw31ud_core.lib wxbase31ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="vc_mswuddll\renddll_mswud311_vc.dll" + OutputFile="vc_mswuddll\renddll_mswud312_vc.dll" LinkIncremental="2" SuppressStartupBanner="TRUE" AdditionalLibraryDirectories=".\..\..\lib\vc_dll" GenerateDebugInformation="TRUE" - ProgramDatabaseFile="vc_mswuddll\renddll_mswud311_vc.pdb" + ProgramDatabaseFile="vc_mswuddll\renddll_mswud312_vc.pdb" TargetMachine="1"/> diff --git a/samples/render/render_vc8_renddll.vcproj b/samples/render/render_vc8_renddll.vcproj index fef5c34f1b..336bdf2ef2 100644 --- a/samples/render/render_vc8_renddll.vcproj +++ b/samples/render/render_vc8_renddll.vcproj @@ -62,7 +62,7 @@ BufferSecurityCheck="true" RuntimeTypeInfo="true" ObjectFile="vc_mswuddll\renddll\" - ProgramDataBaseFileName="vc_mswuddll\renddll_mswud311_vc.pdb" + ProgramDataBaseFileName="vc_mswuddll\renddll_mswud312_vc.pdb" WarningLevel="4" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -84,13 +84,13 @@ Name="VCLinkerTool" AdditionalOptions="" AdditionalDependencies="wxmsw31ud_core.lib wxbase31ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib" - OutputFile="vc_mswuddll\renddll_mswud311_vc.dll" + OutputFile="vc_mswuddll\renddll_mswud312_vc.dll" LinkIncremental="2" SuppressStartupBanner="true" AdditionalLibraryDirectories=".\..\..\lib\vc_dll" GenerateManifest="true" GenerateDebugInformation="true" - ProgramDatabaseFile="vc_mswuddll\renddll_mswud311_vc.pdb" + ProgramDatabaseFile="vc_mswuddll\renddll_mswud312_vc.pdb" TargetMachine="1" /> Date: Tue, 13 Feb 2018 23:17:24 +0100 Subject: [PATCH 387/916] Add archive sample This sample shows usage of wxArchiveStream and wxArchiveFactory. It also allows for easy testing of wxArchiveStream implementations outside of the unit tests. See https://github.com/wxWidgets/wxWidgets/pull/730 --- autoconf_inc.m4 | 96 ++-- build/cmake/samples/CMakeLists.txt | 1 + configure | 2 +- configure.in | 2 +- docs/doxygen/mainpages/samples.h | 8 + samples/archive/Makefile.in | 123 +++++ samples/archive/archive.bkl | 13 + samples/archive/archive.cpp | 257 +++++++++ samples/archive/archive_vc7.vcproj | 295 +++++++++++ samples/archive/archive_vc8.vcproj | 819 +++++++++++++++++++++++++++++ samples/archive/archive_vc9.vcproj | 791 ++++++++++++++++++++++++++++ samples/archive/makefile.bcc | 202 +++++++ samples/archive/makefile.gcc | 197 +++++++ samples/archive/makefile.unx | 100 ++++ samples/archive/makefile.vc | 302 +++++++++++ samples/makefile.bcc | 12 +- samples/makefile.gcc | 22 +- samples/makefile.vc | 10 +- samples/samples.bkl | 1 + 19 files changed, 3192 insertions(+), 61 deletions(-) create mode 100644 samples/archive/Makefile.in create mode 100644 samples/archive/archive.bkl create mode 100644 samples/archive/archive.cpp create mode 100644 samples/archive/archive_vc7.vcproj create mode 100644 samples/archive/archive_vc8.vcproj create mode 100644 samples/archive/archive_vc9.vcproj create mode 100644 samples/archive/makefile.bcc create mode 100644 samples/archive/makefile.gcc create mode 100644 samples/archive/makefile.unx create mode 100644 samples/archive/makefile.vc diff --git a/autoconf_inc.m4 b/autoconf_inc.m4 index f3f2f9d5bc..98d7d98136 100644 --- a/autoconf_inc.m4 +++ b/autoconf_inc.m4 @@ -1,4 +1,4 @@ -dnl ### begin block 00_header[../../demos/bombs/bombs.bkl,../../demos/demos.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/html_samples.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/opengl_samples.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/utils.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 00_header[../../demos/bombs/bombs.bkl,../../demos/demos.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/html_samples.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/opengl_samples.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/utils.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### dnl dnl This macro was generated by dnl Bakefile 0.2.11 (http://www.bakefile.org) @@ -8,55 +8,55 @@ BAKEFILE_AUTOCONF_INC_M4_VERSION="0.2.11" dnl ### begin block 10_AC_BAKEFILE_PRECOMP_HEADERS[../../tests/test.bkl,wx.bkl] ### AC_BAKEFILE_PRECOMP_HEADERS -dnl ### begin block 20_COND_BUILD_debug[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_BUILD_debug[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_BUILD_debug="#" if test "x$BUILD" = "xdebug" ; then COND_BUILD_debug="" fi AC_SUBST(COND_BUILD_debug) -dnl ### begin block 20_COND_BUILD_debug_DEBUG_INFO_default[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_BUILD_debug_DEBUG_INFO_default[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_BUILD_debug_DEBUG_INFO_default="#" if test "x$BUILD" = "xdebug" -a "x$DEBUG_INFO" = "xdefault" ; then COND_BUILD_debug_DEBUG_INFO_default="" fi AC_SUBST(COND_BUILD_debug_DEBUG_INFO_default) -dnl ### begin block 20_COND_BUILD_release[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_BUILD_release[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_BUILD_release="#" if test "x$BUILD" = "xrelease" ; then COND_BUILD_release="" fi AC_SUBST(COND_BUILD_release) -dnl ### begin block 20_COND_BUILD_release_DEBUG_INFO_default[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_BUILD_release_DEBUG_INFO_default[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_BUILD_release_DEBUG_INFO_default="#" if test "x$BUILD" = "xrelease" -a "x$DEBUG_INFO" = "xdefault" ; then COND_BUILD_release_DEBUG_INFO_default="" fi AC_SUBST(COND_BUILD_release_DEBUG_INFO_default) -dnl ### begin block 20_COND_DEBUG_FLAG_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_DEBUG_FLAG_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_DEBUG_FLAG_0="#" if test "x$DEBUG_FLAG" = "x0" ; then COND_DEBUG_FLAG_0="" fi AC_SUBST(COND_DEBUG_FLAG_0) -dnl ### begin block 20_COND_DEBUG_INFO_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_DEBUG_INFO_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_DEBUG_INFO_0="#" if test "x$DEBUG_INFO" = "x0" ; then COND_DEBUG_INFO_0="" fi AC_SUBST(COND_DEBUG_INFO_0) -dnl ### begin block 20_COND_DEBUG_INFO_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_DEBUG_INFO_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_DEBUG_INFO_1="#" if test "x$DEBUG_INFO" = "x1" ; then COND_DEBUG_INFO_1="" fi AC_SUBST(COND_DEBUG_INFO_1) -dnl ### begin block 20_COND_DEPS_TRACKING_0[../../demos/bombs/bombs.bkl,../../demos/demos.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/html_samples.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/opengl_samples.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/utils.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_DEPS_TRACKING_0[../../demos/bombs/bombs.bkl,../../demos/demos.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/html_samples.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/opengl_samples.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/utils.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_DEPS_TRACKING_0="#" if test "x$DEPS_TRACKING" = "x0" ; then COND_DEPS_TRACKING_0="" fi AC_SUBST(COND_DEPS_TRACKING_0) -dnl ### begin block 20_COND_DEPS_TRACKING_1[../../demos/bombs/bombs.bkl,../../demos/demos.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/html_samples.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/opengl_samples.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/utils.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_DEPS_TRACKING_1[../../demos/bombs/bombs.bkl,../../demos/demos.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/html_samples.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/opengl_samples.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/utils.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_DEPS_TRACKING_1="#" if test "x$DEPS_TRACKING" = "x1" ; then COND_DEPS_TRACKING_1="" @@ -74,7 +74,7 @@ dnl ### begin block 20_COND_ICC_PCH_1[../../tests/test.bkl,wx.bkl] ### COND_ICC_PCH_1="" fi AC_SUBST(COND_ICC_PCH_1) -dnl ### begin block 20_COND_MONOLITHIC_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_MONOLITHIC_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_MONOLITHIC_0="#" if test "x$MONOLITHIC" = "x0" ; then COND_MONOLITHIC_0="" @@ -152,7 +152,7 @@ dnl ### begin block 20_COND_MONOLITHIC_0_SHARED_0_USE_XRC_1[wx.bkl] ### COND_MONOLITHIC_0_SHARED_0_USE_XRC_1="" fi AC_SUBST(COND_MONOLITHIC_0_SHARED_0_USE_XRC_1) -dnl ### begin block 20_COND_MONOLITHIC_0_SHARED_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_MONOLITHIC_0_SHARED_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_MONOLITHIC_0_SHARED_1="#" if test "x$MONOLITHIC" = "x0" -a "x$SHARED" = "x1" ; then COND_MONOLITHIC_0_SHARED_1="" @@ -248,7 +248,7 @@ dnl ### begin block 20_COND_MONOLITHIC_0_USE_HTML_1[wx.bkl] ### COND_MONOLITHIC_0_USE_HTML_1="" fi AC_SUBST(COND_MONOLITHIC_0_USE_HTML_1) -dnl ### begin block 20_COND_MONOLITHIC_0_USE_MEDIA_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_MONOLITHIC_0_USE_MEDIA_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_MONOLITHIC_0_USE_MEDIA_1="#" if test "x$MONOLITHIC" = "x0" -a "x$USE_MEDIA" = "x1" ; then COND_MONOLITHIC_0_USE_MEDIA_1="" @@ -284,7 +284,7 @@ dnl ### begin block 20_COND_MONOLITHIC_0_USE_STC_1[wx.bkl] ### COND_MONOLITHIC_0_USE_STC_1="" fi AC_SUBST(COND_MONOLITHIC_0_USE_STC_1) -dnl ### begin block 20_COND_MONOLITHIC_0_USE_WEBVIEW_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_MONOLITHIC_0_USE_WEBVIEW_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_MONOLITHIC_0_USE_WEBVIEW_1="#" if test "x$MONOLITHIC" = "x0" -a "x$USE_WEBVIEW" = "x1" ; then COND_MONOLITHIC_0_USE_WEBVIEW_1="" @@ -296,7 +296,7 @@ dnl ### begin block 20_COND_MONOLITHIC_0_USE_XRC_1[wx.bkl] ### COND_MONOLITHIC_0_USE_XRC_1="" fi AC_SUBST(COND_MONOLITHIC_0_USE_XRC_1) -dnl ### begin block 20_COND_MONOLITHIC_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_MONOLITHIC_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_MONOLITHIC_1="#" if test "x$MONOLITHIC" = "x1" ; then COND_MONOLITHIC_1="" @@ -314,19 +314,19 @@ dnl ### begin block 20_COND_MONOLITHIC_1_SHARED_1[wx.bkl] ### COND_MONOLITHIC_1_SHARED_1="" fi AC_SUBST(COND_MONOLITHIC_1_SHARED_1) -dnl ### begin block 20_COND_MONOLITHIC_1_USE_STC_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_MONOLITHIC_1_USE_STC_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_MONOLITHIC_1_USE_STC_1="#" if test "x$MONOLITHIC" = "x1" -a "x$USE_STC" = "x1" ; then COND_MONOLITHIC_1_USE_STC_1="" fi AC_SUBST(COND_MONOLITHIC_1_USE_STC_1) -dnl ### begin block 20_COND_OFFICIAL_BUILD_0_PLATFORM_WIN32_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_OFFICIAL_BUILD_0_PLATFORM_WIN32_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_OFFICIAL_BUILD_0_PLATFORM_WIN32_1="#" if test "x$OFFICIAL_BUILD" = "x0" -a "x$PLATFORM_WIN32" = "x1" ; then COND_OFFICIAL_BUILD_0_PLATFORM_WIN32_1="" fi AC_SUBST(COND_OFFICIAL_BUILD_0_PLATFORM_WIN32_1) -dnl ### begin block 20_COND_OFFICIAL_BUILD_1_PLATFORM_WIN32_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_OFFICIAL_BUILD_1_PLATFORM_WIN32_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_OFFICIAL_BUILD_1_PLATFORM_WIN32_1="#" if test "x$OFFICIAL_BUILD" = "x1" -a "x$PLATFORM_WIN32" = "x1" ; then COND_OFFICIAL_BUILD_1_PLATFORM_WIN32_1="" @@ -344,7 +344,7 @@ dnl ### begin block 20_COND_PLATFORM_MACOSX_0_USE_SOVERSION_1[wx.bkl] ### COND_PLATFORM_MACOSX_0_USE_SOVERSION_1="" fi AC_SUBST(COND_PLATFORM_MACOSX_0_USE_SOVERSION_1) -dnl ### begin block 20_COND_PLATFORM_MACOSX_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_PLATFORM_MACOSX_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_PLATFORM_MACOSX_1="#" if test "x$PLATFORM_MACOSX" = "x1" ; then COND_PLATFORM_MACOSX_1="" @@ -440,13 +440,13 @@ dnl ### begin block 20_COND_PLATFORM_OS2_1[../../demos/bombs/bombs.bkl,../../dem COND_PLATFORM_OS2_1="" fi AC_SUBST(COND_PLATFORM_OS2_1) -dnl ### begin block 20_COND_PLATFORM_UNIX_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_PLATFORM_UNIX_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_PLATFORM_UNIX_0="#" if test "x$PLATFORM_UNIX" = "x0" ; then COND_PLATFORM_UNIX_0="" fi AC_SUBST(COND_PLATFORM_UNIX_0) -dnl ### begin block 20_COND_PLATFORM_UNIX_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_PLATFORM_UNIX_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_PLATFORM_UNIX_1="#" if test "x$PLATFORM_UNIX" = "x1" ; then COND_PLATFORM_UNIX_1="" @@ -500,7 +500,7 @@ dnl ### begin block 20_COND_PLATFORM_UNIX_1_USE_PLUGINS_0[wx.bkl] ### COND_PLATFORM_UNIX_1_USE_PLUGINS_0="" fi AC_SUBST(COND_PLATFORM_UNIX_1_USE_PLUGINS_0) -dnl ### begin block 20_COND_PLATFORM_WIN32_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_PLATFORM_WIN32_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_PLATFORM_WIN32_0="#" if test "x$PLATFORM_WIN32" = "x0" ; then COND_PLATFORM_WIN32_0="" @@ -518,7 +518,7 @@ dnl ### begin block 20_COND_PLATFORM_WIN32_0_TOOLKIT_GTK_TOOLKIT_VERSION_4[wx.bk COND_PLATFORM_WIN32_0_TOOLKIT_GTK_TOOLKIT_VERSION_4="" fi AC_SUBST(COND_PLATFORM_WIN32_0_TOOLKIT_GTK_TOOLKIT_VERSION_4) -dnl ### begin block 20_COND_PLATFORM_WIN32_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_PLATFORM_WIN32_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_PLATFORM_WIN32_1="#" if test "x$PLATFORM_WIN32" = "x1" ; then COND_PLATFORM_WIN32_1="" @@ -638,7 +638,7 @@ dnl ### begin block 20_COND_SHARED_0_wxUSE_ZLIB_builtin[wx.bkl] ### COND_SHARED_0_wxUSE_ZLIB_builtin="" fi AC_SUBST(COND_SHARED_0_wxUSE_ZLIB_builtin) -dnl ### begin block 20_COND_SHARED_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_SHARED_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_SHARED_1="#" if test "x$SHARED" = "x1" ; then COND_SHARED_1="" @@ -800,7 +800,7 @@ dnl ### begin block 20_COND_TOOLKIT_GTK_USE_GUI_1[wx.bkl] ### COND_TOOLKIT_GTK_USE_GUI_1="" fi AC_SUBST(COND_TOOLKIT_GTK_USE_GUI_1) -dnl ### begin block 20_COND_TOOLKIT_MAC[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_TOOLKIT_MAC[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_TOOLKIT_MAC="#" if test "x$TOOLKIT" = "xMAC" ; then COND_TOOLKIT_MAC="" @@ -824,7 +824,7 @@ dnl ### begin block 20_COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0[wx.bkl] ### COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0="" fi AC_SUBST(COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0) -dnl ### begin block 20_COND_TOOLKIT_MSW[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_TOOLKIT_MSW[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_TOOLKIT_MSW="#" if test "x$TOOLKIT" = "xMSW" ; then COND_TOOLKIT_MSW="" @@ -932,37 +932,37 @@ dnl ### begin block 20_COND_TOOLKIT_X11_WXUNIV_1[wx.bkl] ### COND_TOOLKIT_X11_WXUNIV_1="" fi AC_SUBST(COND_TOOLKIT_X11_WXUNIV_1) -dnl ### begin block 20_COND_UNICODE_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_UNICODE_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_UNICODE_1="#" if test "x$UNICODE" = "x1" ; then COND_UNICODE_1="" fi AC_SUBST(COND_UNICODE_1) -dnl ### begin block 20_COND_USE_CAIRO_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_CAIRO_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_CAIRO_1="#" if test "x$USE_CAIRO" = "x1" ; then COND_USE_CAIRO_1="" fi AC_SUBST(COND_USE_CAIRO_1) -dnl ### begin block 20_COND_USE_EXCEPTIONS_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_EXCEPTIONS_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_EXCEPTIONS_0="#" if test "x$USE_EXCEPTIONS" = "x0" ; then COND_USE_EXCEPTIONS_0="" fi AC_SUBST(COND_USE_EXCEPTIONS_0) -dnl ### begin block 20_COND_USE_EXCEPTIONS_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_EXCEPTIONS_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_EXCEPTIONS_1="#" if test "x$USE_EXCEPTIONS" = "x1" ; then COND_USE_EXCEPTIONS_1="" fi AC_SUBST(COND_USE_EXCEPTIONS_1) -dnl ### begin block 20_COND_USE_GUI_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_GUI_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_GUI_0="#" if test "x$USE_GUI" = "x0" ; then COND_USE_GUI_0="" fi AC_SUBST(COND_USE_GUI_0) -dnl ### begin block 20_COND_USE_GUI_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_GUI_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_GUI_1="#" if test "x$USE_GUI" = "x1" ; then COND_USE_GUI_1="" @@ -986,19 +986,19 @@ dnl ### begin block 20_COND_USE_GUI_1_WXUNIV_1[wx.bkl] ### COND_USE_GUI_1_WXUNIV_1="" fi AC_SUBST(COND_USE_GUI_1_WXUNIV_1) -dnl ### begin block 20_COND_USE_GUI_1_wxUSE_LIBJPEG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_GUI_1_wxUSE_LIBJPEG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_GUI_1_wxUSE_LIBJPEG_builtin="#" if test "x$USE_GUI" = "x1" -a "x$wxUSE_LIBJPEG" = "xbuiltin" ; then COND_USE_GUI_1_wxUSE_LIBJPEG_builtin="" fi AC_SUBST(COND_USE_GUI_1_wxUSE_LIBJPEG_builtin) -dnl ### begin block 20_COND_USE_GUI_1_wxUSE_LIBPNG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_GUI_1_wxUSE_LIBPNG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_GUI_1_wxUSE_LIBPNG_builtin="#" if test "x$USE_GUI" = "x1" -a "x$wxUSE_LIBPNG" = "xbuiltin" ; then COND_USE_GUI_1_wxUSE_LIBPNG_builtin="" fi AC_SUBST(COND_USE_GUI_1_wxUSE_LIBPNG_builtin) -dnl ### begin block 20_COND_USE_GUI_1_wxUSE_LIBTIFF_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_GUI_1_wxUSE_LIBTIFF_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_GUI_1_wxUSE_LIBTIFF_builtin="#" if test "x$USE_GUI" = "x1" -a "x$wxUSE_LIBTIFF" = "xbuiltin" ; then COND_USE_GUI_1_wxUSE_LIBTIFF_builtin="" @@ -1016,19 +1016,19 @@ dnl ### begin block 20_COND_USE_PCH_1[../../tests/test.bkl,wx.bkl] ### COND_USE_PCH_1="" fi AC_SUBST(COND_USE_PCH_1) -dnl ### begin block 20_COND_USE_PLUGINS_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_PLUGINS_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_PLUGINS_0="#" if test "x$USE_PLUGINS" = "x0" ; then COND_USE_PLUGINS_0="" fi AC_SUBST(COND_USE_PLUGINS_0) -dnl ### begin block 20_COND_USE_RTTI_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_RTTI_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_RTTI_0="#" if test "x$USE_RTTI" = "x0" ; then COND_USE_RTTI_0="" fi AC_SUBST(COND_USE_RTTI_0) -dnl ### begin block 20_COND_USE_RTTI_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_RTTI_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_RTTI_1="#" if test "x$USE_RTTI" = "x1" ; then COND_USE_RTTI_1="" @@ -1076,19 +1076,19 @@ dnl ### begin block 20_COND_USE_STC_1[wx.bkl] ### COND_USE_STC_1="" fi AC_SUBST(COND_USE_STC_1) -dnl ### begin block 20_COND_USE_THREADS_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_THREADS_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_THREADS_0="#" if test "x$USE_THREADS" = "x0" ; then COND_USE_THREADS_0="" fi AC_SUBST(COND_USE_THREADS_0) -dnl ### begin block 20_COND_USE_THREADS_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_THREADS_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_THREADS_1="#" if test "x$USE_THREADS" = "x1" ; then COND_USE_THREADS_1="" fi AC_SUBST(COND_USE_THREADS_1) -dnl ### begin block 20_COND_USE_WEBVIEW_WEBKIT2_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_USE_WEBVIEW_WEBKIT2_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_USE_WEBVIEW_WEBKIT2_1="#" if test "x$USE_WEBVIEW_WEBKIT2" = "x1" ; then COND_USE_WEBVIEW_WEBKIT2_1="" @@ -1118,43 +1118,43 @@ dnl ### begin block 20_COND_WXUNIV_0[wx.bkl] ### COND_WXUNIV_0="" fi AC_SUBST(COND_WXUNIV_0) -dnl ### begin block 20_COND_WXUNIV_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_WXUNIV_1[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_WXUNIV_1="#" if test "x$WXUNIV" = "x1" ; then COND_WXUNIV_1="" fi AC_SUBST(COND_WXUNIV_1) -dnl ### begin block 20_COND_wxUSE_EXPAT_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_wxUSE_EXPAT_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_wxUSE_EXPAT_builtin="#" if test "x$wxUSE_EXPAT" = "xbuiltin" ; then COND_wxUSE_EXPAT_builtin="" fi AC_SUBST(COND_wxUSE_EXPAT_builtin) -dnl ### begin block 20_COND_wxUSE_LIBJPEG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_wxUSE_LIBJPEG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_wxUSE_LIBJPEG_builtin="#" if test "x$wxUSE_LIBJPEG" = "xbuiltin" ; then COND_wxUSE_LIBJPEG_builtin="" fi AC_SUBST(COND_wxUSE_LIBJPEG_builtin) -dnl ### begin block 20_COND_wxUSE_LIBPNG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_wxUSE_LIBPNG_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_wxUSE_LIBPNG_builtin="#" if test "x$wxUSE_LIBPNG" = "xbuiltin" ; then COND_wxUSE_LIBPNG_builtin="" fi AC_SUBST(COND_wxUSE_LIBPNG_builtin) -dnl ### begin block 20_COND_wxUSE_LIBTIFF_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_wxUSE_LIBTIFF_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_wxUSE_LIBTIFF_builtin="#" if test "x$wxUSE_LIBTIFF" = "xbuiltin" ; then COND_wxUSE_LIBTIFF_builtin="" fi AC_SUBST(COND_wxUSE_LIBTIFF_builtin) -dnl ### begin block 20_COND_wxUSE_REGEX_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_wxUSE_REGEX_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_wxUSE_REGEX_builtin="#" if test "x$wxUSE_REGEX" = "xbuiltin" ; then COND_wxUSE_REGEX_builtin="" fi AC_SUBST(COND_wxUSE_REGEX_builtin) -dnl ### begin block 20_COND_wxUSE_ZLIB_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### +dnl ### begin block 20_COND_wxUSE_ZLIB_builtin[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/htmlctrl/htmlctrl.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/memcheck/memcheck.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/emulator/src/emulator.bkl,../../utils/execmon/execmon.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_wxUSE_ZLIB_builtin="#" if test "x$wxUSE_ZLIB" = "xbuiltin" ; then COND_wxUSE_ZLIB_builtin="" diff --git a/build/cmake/samples/CMakeLists.txt b/build/cmake/samples/CMakeLists.txt index 36032772fb..bb0a87e23e 100644 --- a/build/cmake/samples/CMakeLists.txt +++ b/build/cmake/samples/CMakeLists.txt @@ -9,6 +9,7 @@ wx_add_sample(access accesstest.cpp DEPENDS wxUSE_ACCESSBILITY) wx_add_sample(animate anitest.cpp anitest.h LIBRARIES adv DATA throbber.gif hourglass.ani DEPENDS wxUSE_ANIMATIONCTRL) +wx_add_sample(archive CONSOLE) wx_add_sample(artprov arttest.cpp artbrows.cpp artbrows.h) wx_add_sample(aui auidemo.cpp LIBRARIES adv aui html NAME auidemo DEPENDS wxUSE_AUI) wx_add_sample(calendar RES calendar.rc LIBRARIES adv DEPENDS wxUSE_CALENDARCTRL) diff --git a/configure b/configure index 96aa141762..8cb4a36c68 100755 --- a/configure +++ b/configure @@ -38744,7 +38744,7 @@ LIBS="$ZLIB_LINK $POSIX4_LINK $INET_LINK $WCHAR_LINK $DL_LINK $LIBS" if test "$wxUSE_GUI" = "yes"; then - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov dialogs drawing \ + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS archive artprov dialogs drawing \ erase event exec font image minimal power render \ shaped svg taborder vscroll widgets wrapsizer" diff --git a/configure.in b/configure.in index 8afbc08aaf..9104bfc8d3 100644 --- a/configure.in +++ b/configure.in @@ -7740,7 +7740,7 @@ if test "$wxUSE_GUI" = "yes"; then dnl library features they need are present) dnl TODO some samples are never built so far: mfc (requires VC++) - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov dialogs drawing \ + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS archive artprov dialogs drawing \ erase event exec font image minimal power render \ shaped svg taborder vscroll widgets wrapsizer" diff --git a/docs/doxygen/mainpages/samples.h b/docs/doxygen/mainpages/samples.h index 00fb5cfb7a..352e175f33 100644 --- a/docs/doxygen/mainpages/samples.h +++ b/docs/doxygen/mainpages/samples.h @@ -76,6 +76,14 @@ in wxAnimation. @sampledir{animate} +@section page_samples_archive Archive Sample + +This sample shows how you can use wxArchiveClassFactory, wxArchiveOutputStream +and wxArchiveInputStream. This shows how to process ZIP and TAR archives using +wxZipOutputStream and wxTarOutputStream + +@sampledir{archive} + @section page_samples_artprov Art Provider Sample This sample shows how you can customize the look of standard diff --git a/samples/archive/Makefile.in b/samples/archive/Makefile.in new file mode 100644 index 0000000000..d69e32c3f1 --- /dev/null +++ b/samples/archive/Makefile.in @@ -0,0 +1,123 @@ +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.11 (http://www.bakefile.org) +# Do not modify, all changes will be overwritten! +# ========================================================================= + + +@MAKE_SET@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datarootdir = @datarootdir@ +INSTALL = @INSTALL@ +EXEEXT = @EXEEXT@ +BK_DEPS = @BK_DEPS@ +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +LIBS = @LIBS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +WX_LIB_FLAVOUR = @WX_LIB_FLAVOUR@ +TOOLKIT = @TOOLKIT@ +TOOLKIT_LOWERCASE = @TOOLKIT_LOWERCASE@ +TOOLKIT_VERSION = @TOOLKIT_VERSION@ +EXTRALIBS = @EXTRALIBS@ +EXTRALIBS_XML = @EXTRALIBS_XML@ +EXTRALIBS_GUI = @EXTRALIBS_GUI@ +CXXWARNINGS = @CXXWARNINGS@ +HOST_SUFFIX = @HOST_SUFFIX@ +SAMPLES_RPATH_FLAG = @SAMPLES_RPATH_FLAG@ +SAMPLES_CXXFLAGS = @SAMPLES_CXXFLAGS@ +wx_top_builddir = @wx_top_builddir@ + +### Variables: ### + +DESTDIR = +WX_RELEASE = 3.1 +LIBDIRNAME = $(wx_top_builddir)/lib +ARCHIVE_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ + $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \ + -I$(srcdir) $(__DLLFLAG_p) -DwxUSE_GUI=0 $(CXXWARNINGS) $(SAMPLES_CXXFLAGS) \ + $(CPPFLAGS) $(CXXFLAGS) +ARCHIVE_OBJECTS = \ + archive_archive.o + +### Conditionally set variables: ### + +@COND_DEPS_TRACKING_0@CXXC = $(CXX) +@COND_DEPS_TRACKING_1@CXXC = $(BK_DEPS) $(CXX) +@COND_USE_GUI_0@PORTNAME = base +@COND_USE_GUI_1@PORTNAME = $(TOOLKIT_LOWERCASE)$(TOOLKIT_VERSION) +@COND_TOOLKIT_MAC@WXBASEPORT = _carbon +@COND_BUILD_debug@WXDEBUGFLAG = d +@COND_UNICODE_1@WXUNICODEFLAG = u +@COND_WXUNIV_1@WXUNIVNAME = univ +@COND_MONOLITHIC_0@EXTRALIBS_FOR_BASE = $(EXTRALIBS) +@COND_MONOLITHIC_1@EXTRALIBS_FOR_BASE = $(EXTRALIBS) \ +@COND_MONOLITHIC_1@ $(EXTRALIBS_XML) $(EXTRALIBS_GUI) +@COND_MONOLITHIC_0@EXTRALIBS_FOR_GUI = $(EXTRALIBS_GUI) +@COND_MONOLITHIC_1@EXTRALIBS_FOR_GUI = +@COND_WXUNIV_1@__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__ +@COND_DEBUG_FLAG_0@__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0 +@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS +@COND_USE_RTTI_0@__RTTI_DEFINE_p = -DwxNO_RTTI +@COND_USE_THREADS_0@__THREAD_DEFINE_p = -DwxNO_THREADS +@COND_SHARED_1@__DLLFLAG_p = -DWXUSINGDLL +COND_MONOLITHIC_0___WXLIB_BASE_p = \ + -lwx_base$(WXBASEPORT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_MONOLITHIC_0@__WXLIB_BASE_p = $(COND_MONOLITHIC_0___WXLIB_BASE_p) +COND_MONOLITHIC_1___WXLIB_MONO_p = \ + -lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_MONOLITHIC_1@__WXLIB_MONO_p = $(COND_MONOLITHIC_1___WXLIB_MONO_p) +@COND_MONOLITHIC_1_USE_STC_1@__LIB_SCINTILLA_IF_MONO_p \ +@COND_MONOLITHIC_1_USE_STC_1@ = \ +@COND_MONOLITHIC_1_USE_STC_1@ -lwxscintilla$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@__LIB_TIFF_p \ +@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@ = \ +@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@ -lwxtiff$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_USE_GUI_1_wxUSE_LIBJPEG_builtin@__LIB_JPEG_p \ +@COND_USE_GUI_1_wxUSE_LIBJPEG_builtin@ = \ +@COND_USE_GUI_1_wxUSE_LIBJPEG_builtin@ -lwxjpeg$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@__LIB_PNG_p \ +@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@ = \ +@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@ -lwxpng$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_wxUSE_ZLIB_builtin@__LIB_ZLIB_p = \ +@COND_wxUSE_ZLIB_builtin@ -lwxzlib$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +COND_wxUSE_REGEX_builtin___LIB_REGEX_p = \ + -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) +@COND_wxUSE_REGEX_builtin@__LIB_REGEX_p = $(COND_wxUSE_REGEX_builtin___LIB_REGEX_p) +@COND_wxUSE_EXPAT_builtin@__LIB_EXPAT_p = \ +@COND_wxUSE_EXPAT_builtin@ -lwxexpat$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) + +### Targets: ### + +all: archive$(EXEEXT) + +install: + +uninstall: + +install-strip: install + +clean: + rm -rf ./.deps ./.pch + rm -f ./*.o + rm -f archive$(EXEEXT) + +distclean: clean + rm -f config.cache config.log config.status bk-deps bk-make-pch shared-ld-sh Makefile + +archive$(EXEEXT): $(ARCHIVE_OBJECTS) + $(CXX) -o $@ $(ARCHIVE_OBJECTS) -L$(LIBDIRNAME) $(SAMPLES_RPATH_FLAG) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) $(EXTRALIBS_FOR_GUI) $(__LIB_ZLIB_p) $(__LIB_REGEX_p) $(__LIB_EXPAT_p) $(EXTRALIBS_FOR_BASE) $(LIBS) + +archive_archive.o: $(srcdir)/archive.cpp + $(CXXC) -c -o $@ $(ARCHIVE_CXXFLAGS) $(srcdir)/archive.cpp + + +# Include dependency info, if present: +@IF_GNU_MAKE@-include ./.deps/*.d + +.PHONY: all install uninstall clean distclean diff --git a/samples/archive/archive.bkl b/samples/archive/archive.bkl new file mode 100644 index 0000000000..c8a5beae83 --- /dev/null +++ b/samples/archive/archive.bkl @@ -0,0 +1,13 @@ + + + + + + + + archive.cpp + base + wx06 + + + diff --git a/samples/archive/archive.cpp b/samples/archive/archive.cpp new file mode 100644 index 0000000000..1707993d8d --- /dev/null +++ b/samples/archive/archive.cpp @@ -0,0 +1,257 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: samples/archive/archive.cpp +// Purpose: A sample application to manipulate archives +// Author: Tobias Taschner +// Created: 2018-02-07 +// Copyright: (c) 2018 wxWidgets development team +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + +// For compilers that support precompilation, includes "wx/wx.h". +#include "wx/wxprec.h" + +#ifndef WX_PRECOMP +#include "wx/wx.h" +#endif + +#include "wx/archive.h" +#include "wx/app.h" +#include "wx/cmdline.h" +#include "wx/filename.h" +#include "wx/sharedptr.h" +#include "wx/vector.h" +#include "wx/wfstream.h" +#include "wx/zipstrm.h" + +class ArchiveApp: public wxAppConsole +{ +public: + + virtual void OnInitCmdLine(wxCmdLineParser& parser) wxOVERRIDE; + + virtual bool OnCmdLineParsed(wxCmdLineParser& parser) wxOVERRIDE; + + virtual int OnRun() wxOVERRIDE; + +private: + enum ArchiveCommandType + { + CMD_CREATE, + CMD_LIST, + CMD_EXTRACT, + CMD_NONE + }; + + struct ArchiveCommandDesc + { + ArchiveCommandType type; + const char* id; + const char* desc; + }; + + static const ArchiveCommandDesc s_cmdDesc[]; + + ArchiveCommandType m_command; + wxString m_archiveFileName; + wxVector m_fileNames; + bool m_forceZip64; + + const wxArchiveClassFactory* m_archiveClassFactory; + + int DoCreate(); + + int DoList(); + + int DoExtract(); + + bool CopyStreamData(wxInputStream& inputStream, wxOutputStream& outputStream, wxFileOffset size); +}; + +const ArchiveApp::ArchiveCommandDesc ArchiveApp::s_cmdDesc[] = +{ + {CMD_CREATE, "c", "create"}, + {CMD_LIST, "l", "list"}, + {CMD_EXTRACT, "x", "extract"}, + + {CMD_NONE, 0, 0} +}; + +void ArchiveApp::OnInitCmdLine(wxCmdLineParser& parser) +{ + wxAppConsole::OnInitCmdLine(parser); + + parser.AddParam("command"); + parser.AddParam("archive_name"); + parser.AddParam("file_names", wxCMD_LINE_VAL_STRING, + wxCMD_LINE_PARAM_MULTIPLE | wxCMD_LINE_PARAM_OPTIONAL); + parser.AddSwitch("", "force-zip64", "Force ZIP64 format when creating ZIP archives"); + + parser.AddUsageText("\ncommand:"); + for (const ArchiveCommandDesc* cmdDesc = s_cmdDesc; cmdDesc->type != CMD_NONE; cmdDesc++) + parser.AddUsageText(wxString::Format(" %s: %s", cmdDesc->id, cmdDesc->desc)); + + wxString formats; + for(const wxArchiveClassFactory* factory = wxArchiveClassFactory::GetFirst(); factory; + factory = factory->GetNext()) + { + if(!formats.empty()) + formats += ", "; + formats += factory->GetProtocol(); + } + parser.AddUsageText("\nsupported formats: " + formats); +} + +bool ArchiveApp::OnCmdLineParsed(wxCmdLineParser& parser) +{ + m_command = CMD_NONE; + wxString command = parser.GetParam(); + for (const ArchiveCommandDesc* cmdDesc = s_cmdDesc; cmdDesc->type != CMD_NONE; cmdDesc++) + { + if (cmdDesc->id == command) + m_command = cmdDesc->type; + } + if(m_command == CMD_NONE) + { + wxLogError("Invalid command: %s", command); + return false; + } + m_archiveFileName = parser.GetParam(1); + for (size_t i = 2; i < parser.GetParamCount(); i++) + m_fileNames.push_back(parser.GetParam(i)); + m_forceZip64 = parser.FoundSwitch("force-zip64") == wxCMD_SWITCH_ON; + + return wxAppConsole::OnCmdLineParsed(parser); +} + +bool ArchiveApp::CopyStreamData(wxInputStream& inputStream, wxOutputStream& outputStream, wxFileOffset size) +{ + wxChar buf[128 * 1024]; + int readSize = 128 * 1024; + wxFileOffset copiedData = 0; + while (copiedData < size) + { + if (copiedData + readSize > size) + readSize = size - copiedData; + inputStream.Read(buf, readSize); + outputStream.Write(buf, readSize); + copiedData += readSize; + } + + return true; +} + +int ArchiveApp::DoCreate() +{ + if (m_fileNames.empty()) + { + wxLogError("Need at least one file to add to archive"); + return -1; + } + + wxTempFileOutputStream fileOutputStream(m_archiveFileName); + wxSharedPtr archiveOutputStream(m_archiveClassFactory->NewStream(fileOutputStream)); + if (m_archiveClassFactory->GetProtocol().IsSameAs("zip", false) && m_forceZip64) + reinterpret_cast(archiveOutputStream.get())->SetFormat(wxZIP_FORMAT_ZIP64); + + for(wxVector::iterator fileName = m_fileNames.begin(); fileName != m_fileNames.end(); fileName++) + { + wxFileName inputFileName(*fileName); + wxPrintf("Adding %s...\n", inputFileName.GetFullName()); + wxFileInputStream inputFileStream(*fileName); + if (!inputFileStream.IsOk()) + { + wxLogError("Could not open file"); + return 1; + } + if (!archiveOutputStream->PutNextEntry(inputFileName.GetFullName(), wxDateTime::Now(), inputFileStream.GetLength())) + break; + CopyStreamData(inputFileStream, *archiveOutputStream, inputFileStream.GetLength()); + } + + if (archiveOutputStream->Close()) + { + fileOutputStream.Commit(); + wxPrintf("Created archive\n"); + return 0; + } + else + return 1; +} + +int ArchiveApp::DoList() +{ + wxFileInputStream fileInputStream(m_archiveFileName); + if (!fileInputStream.IsOk()) + return 1; + + wxSharedPtr archiveStream(m_archiveClassFactory->NewStream(fileInputStream)); + wxPrintf("Archive: %s\n", m_archiveFileName); + wxPrintf("Length Date Time Name\n"); + wxPrintf("---------- ---------- -------- ----\n"); + + wxFileOffset combinedSize = 0; + int entryCount = 0; + for (wxArchiveEntry* entry = archiveStream->GetNextEntry(); entry; + entry = archiveStream->GetNextEntry()) + { + combinedSize += entry->GetSize(); + entryCount++; + wxPrintf("%10lld %s %s %s\n", + entry->GetSize(), + entry->GetDateTime().FormatISODate(), + entry->GetDateTime().FormatISOTime(), + entry->GetName()); + } + wxPrintf("---------- -------\n"); + wxPrintf("%10lld %d files\n", combinedSize, entryCount); + return 0; +} + +int ArchiveApp::DoExtract() +{ + wxFileInputStream fileInputStream(m_archiveFileName); + if (!fileInputStream.IsOk()) + return 1; + + wxSharedPtr archiveStream(m_archiveClassFactory->NewStream(fileInputStream)); + wxPrintf("Extrating from: %s\n", m_archiveFileName); + for (wxArchiveEntry* entry = archiveStream->GetNextEntry(); entry; + entry = archiveStream->GetNextEntry()) + { + wxPrintf("Extracting: %s...\n", entry->GetName()); + wxTempFileOutputStream outputFileStream(entry->GetName()); + CopyStreamData(*archiveStream, outputFileStream, entry->GetSize()); + outputFileStream.Commit(); + } + wxPrintf("Extracted all files\n"); + return 0; +} + +int ArchiveApp::OnRun() +{ + m_archiveClassFactory = wxArchiveClassFactory::Find(m_archiveFileName, wxSTREAM_FILEEXT); + if (!m_archiveClassFactory) + { + wxLogError("Unsupported file format"); + return -1; + } + + int result = -1; + switch (m_command) { + case CMD_CREATE: + result = DoCreate(); + break; + case CMD_LIST: + result = DoList(); + break; + case CMD_EXTRACT: + result = DoExtract(); + break; + default: + break; + } + + return result; +} + +wxIMPLEMENT_APP(ArchiveApp); diff --git a/samples/archive/archive_vc7.vcproj b/samples/archive/archive_vc7.vcproj new file mode 100644 index 0000000000..024f99f822 --- /dev/null +++ b/samples/archive/archive_vc7.vcproj @@ -0,0 +1,295 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/archive/archive_vc8.vcproj b/samples/archive/archive_vc8.vcproj new file mode 100644 index 0000000000..d42996acaa --- /dev/null +++ b/samples/archive/archive_vc8.vcproj @@ -0,0 +1,819 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/archive/archive_vc9.vcproj b/samples/archive/archive_vc9.vcproj new file mode 100644 index 0000000000..5455c91801 --- /dev/null +++ b/samples/archive/archive_vc9.vcproj @@ -0,0 +1,791 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/archive/makefile.bcc b/samples/archive/makefile.bcc new file mode 100644 index 0000000000..451884c54c --- /dev/null +++ b/samples/archive/makefile.bcc @@ -0,0 +1,202 @@ +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.11 (http://www.bakefile.org) +# Do not modify, all changes will be overwritten! +# ========================================================================= + +.autodepend + +!ifndef BCCDIR +!ifndef MAKEDIR +!error Your Borland compiler does not define MAKEDIR. Please define the BCCDIR variable, e.g. BCCDIR=d:\bc4 +!endif +BCCDIR = $(MAKEDIR)\.. +!endif + +!include ../../build/msw/config.bcc + +# ------------------------------------------------------------------------- +# Do not modify the rest of this file! +# ------------------------------------------------------------------------- + +### Variables: ### + +WX_RELEASE_NODOT = 31 +COMPILER_PREFIX = bcc +OBJS = \ + $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG) +LIBDIRNAME = \ + .\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)_$(LIBTYPE_SUFFIX)$(CFG) +SETUPHDIR = \ + $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG) +ARCHIVE_CXXFLAGS = $(__RUNTIME_LIBS_7) -I$(BCCDIR)\include $(__DEBUGINFO) \ + $(__OPTIMIZEFLAG_2) $(__THREADSFLAG_6) -D__WXMSW__ $(__WXUNIV_DEFINE_p) \ + $(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) \ + $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) \ + -I$(SETUPHDIR) -I.\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_p) -I. \ + $(__DLLFLAG_p) -DwxUSE_GUI=0 $(CPPFLAGS) $(CXXFLAGS) +ARCHIVE_OBJECTS = \ + $(OBJS)\archive_archive.obj + +### Conditionally set variables: ### + +!if "$(USE_GUI)" == "0" +PORTNAME = base +!endif +!if "$(USE_GUI)" == "1" +PORTNAME = msw$(TOOLKIT_VERSION) +!endif +!if "$(OFFICIAL_BUILD)" == "1" +COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD +!endif +!if "$(BUILD)" == "debug" +WXDEBUGFLAG = d +!endif +!if "$(UNICODE)" == "1" +WXUNICODEFLAG = u +!endif +!if "$(WXUNIV)" == "1" +WXUNIVNAME = univ +!endif +!if "$(SHARED)" == "1" +WXDLLFLAG = dll +!endif +!if "$(SHARED)" == "0" +LIBTYPE_SUFFIX = lib +!endif +!if "$(SHARED)" == "1" +LIBTYPE_SUFFIX = dll +!endif +!if "$(MONOLITHIC)" == "0" +EXTRALIBS_FOR_BASE = +!endif +!if "$(MONOLITHIC)" == "1" +EXTRALIBS_FOR_BASE = +!endif +!if "$(BUILD)" == "debug" +__OPTIMIZEFLAG_2 = -Od +!endif +!if "$(BUILD)" == "release" +__OPTIMIZEFLAG_2 = -O2 +!endif +!if "$(USE_THREADS)" == "0" +__THREADSFLAG_5 = +!endif +!if "$(USE_THREADS)" == "1" +__THREADSFLAG_5 = mt +!endif +!if "$(USE_THREADS)" == "0" +__THREADSFLAG_6 = +!endif +!if "$(USE_THREADS)" == "1" +__THREADSFLAG_6 = -tWM +!endif +!if "$(RUNTIME_LIBS)" == "dynamic" +__RUNTIME_LIBS_7 = -tWR +!endif +!if "$(RUNTIME_LIBS)" == "static" +__RUNTIME_LIBS_7 = +!endif +!if "$(RUNTIME_LIBS)" == "dynamic" +__RUNTIME_LIBS_8 = i +!endif +!if "$(RUNTIME_LIBS)" == "static" +__RUNTIME_LIBS_8 = +!endif +!if "$(WXUNIV)" == "1" +__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__ +!endif +!if "$(DEBUG_FLAG)" == "0" +__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0 +!endif +!if "$(BUILD)" == "release" +__NDEBUG_DEFINE_p = -DNDEBUG +!endif +!if "$(USE_EXCEPTIONS)" == "0" +__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS +!endif +!if "$(USE_RTTI)" == "0" +__RTTI_DEFINE_p = -DwxNO_RTTI +!endif +!if "$(USE_THREADS)" == "0" +__THREAD_DEFINE_p = -DwxNO_THREADS +!endif +!if "$(UNICODE)" == "0" +__UNICODE_DEFINE_p = -DwxUSE_UNICODE=0 +!endif +!if "$(UNICODE)" == "1" +__UNICODE_DEFINE_p = -D_UNICODE +!endif +!if "$(USE_CAIRO)" == "1" +____CAIRO_INCLUDEDIR_FILENAMES_p = -I$(CAIRO_ROOT)\include\cairo +!endif +!if "$(SHARED)" == "1" +__DLLFLAG_p = -DWXUSINGDLL +!endif +!if "$(MONOLITHIC)" == "0" +__WXLIB_BASE_p = \ + wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib +!endif +!if "$(MONOLITHIC)" == "1" +__WXLIB_MONO_p = \ + wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib +!endif +!if "$(MONOLITHIC)" == "1" && "$(USE_STC)" == "1" +__LIB_SCINTILLA_IF_MONO_p = wxscintilla$(WXDEBUGFLAG).lib +!endif +!if "$(USE_GUI)" == "1" +__LIB_TIFF_p = wxtiff$(WXDEBUGFLAG).lib +!endif +!if "$(USE_GUI)" == "1" +__LIB_JPEG_p = wxjpeg$(WXDEBUGFLAG).lib +!endif +!if "$(USE_GUI)" == "1" +__LIB_PNG_p = wxpng$(WXDEBUGFLAG).lib +!endif +!if "$(USE_CAIRO)" == "1" +__CAIRO_LIB_p = cairo.lib +!endif +!if "$(USE_CAIRO)" == "1" +____CAIRO_LIBDIR_FILENAMES_p = -L$(CAIRO_ROOT)\lib +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO = -v +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO = -v- +!endif +!if "$(DEBUG_INFO)" == "0" +__DEBUGINFO = -v- +!endif +!if "$(DEBUG_INFO)" == "1" +__DEBUGINFO = -v +!endif + + +all: $(OBJS) +$(OBJS): + -if not exist $(OBJS) mkdir $(OBJS) + +### Targets: ### + +all: $(OBJS)\archive.exe + +clean: + -if exist $(OBJS)\*.obj del $(OBJS)\*.obj + -if exist $(OBJS)\*.res del $(OBJS)\*.res + -if exist $(OBJS)\*.csm del $(OBJS)\*.csm + -if exist $(OBJS)\archive.exe del $(OBJS)\archive.exe + -if exist $(OBJS)\archive.tds del $(OBJS)\archive.tds + -if exist $(OBJS)\archive.ilc del $(OBJS)\archive.ilc + -if exist $(OBJS)\archive.ild del $(OBJS)\archive.ild + -if exist $(OBJS)\archive.ilf del $(OBJS)\archive.ilf + -if exist $(OBJS)\archive.ils del $(OBJS)\archive.ils + +$(OBJS)\archive.exe: $(ARCHIVE_OBJECTS) + ilink32 -Tpe -q -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -ap $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @&&| + c0x32.obj $(ARCHIVE_OBJECTS),$@,, $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) ole2w32.lib oleacc.lib uxtheme.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, +| + +$(OBJS)\archive_archive.obj: .\archive.cpp + $(CXX) -q -c -P -o$@ $(ARCHIVE_CXXFLAGS) .\archive.cpp + diff --git a/samples/archive/makefile.gcc b/samples/archive/makefile.gcc new file mode 100644 index 0000000000..45e18f09b1 --- /dev/null +++ b/samples/archive/makefile.gcc @@ -0,0 +1,197 @@ +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.11 (http://www.bakefile.org) +# Do not modify, all changes will be overwritten! +# ========================================================================= + +include ../../build/msw/config.gcc + +# ------------------------------------------------------------------------- +# Do not modify the rest of this file! +# ------------------------------------------------------------------------- + +### Variables: ### + +CPPDEPS = -MT$@ -MF$@.d -MD -MP +WX_RELEASE_NODOT = 31 +COMPILER_PREFIX = gcc +OBJS = \ + $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG) +LIBDIRNAME = \ + .\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)_$(LIBTYPE_SUFFIX)$(CFG) +SETUPHDIR = \ + $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG) +ARCHIVE_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG) \ + $(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \ + $(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) \ + $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) \ + -I$(SETUPHDIR) -I.\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_p) -W \ + -Wall -I. $(__DLLFLAG_p) -DwxUSE_GUI=0 $(__RTTIFLAG_5) $(__EXCEPTIONSFLAG_6) \ + -Wno-ctor-dtor-privacy $(CPPFLAGS) $(CXXFLAGS) +ARCHIVE_OBJECTS = \ + $(OBJS)\archive_archive.o + +### Conditionally set variables: ### + +ifeq ($(GCC_VERSION),2.95) +GCCFLAGS = -fvtable-thunks +endif +ifeq ($(USE_GUI),0) +PORTNAME = base +endif +ifeq ($(USE_GUI),1) +PORTNAME = msw$(TOOLKIT_VERSION) +endif +ifeq ($(OFFICIAL_BUILD),1) +COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD +endif +ifeq ($(BUILD),debug) +WXDEBUGFLAG = d +endif +ifeq ($(UNICODE),1) +WXUNICODEFLAG = u +endif +ifeq ($(WXUNIV),1) +WXUNIVNAME = univ +endif +ifeq ($(SHARED),1) +WXDLLFLAG = dll +endif +ifeq ($(SHARED),0) +LIBTYPE_SUFFIX = lib +endif +ifeq ($(SHARED),1) +LIBTYPE_SUFFIX = dll +endif +ifeq ($(MONOLITHIC),0) +EXTRALIBS_FOR_BASE = +endif +ifeq ($(MONOLITHIC),1) +EXTRALIBS_FOR_BASE = +endif +ifeq ($(BUILD),debug) +__OPTIMIZEFLAG_2 = -O0 +endif +ifeq ($(BUILD),release) +__OPTIMIZEFLAG_2 = -O2 +endif +ifeq ($(USE_RTTI),0) +__RTTIFLAG_5 = -fno-rtti +endif +ifeq ($(USE_RTTI),1) +__RTTIFLAG_5 = +endif +ifeq ($(USE_EXCEPTIONS),0) +__EXCEPTIONSFLAG_6 = -fno-exceptions +endif +ifeq ($(USE_EXCEPTIONS),1) +__EXCEPTIONSFLAG_6 = +endif +ifeq ($(WXUNIV),1) +__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__ +endif +ifeq ($(DEBUG_FLAG),0) +__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0 +endif +ifeq ($(BUILD),release) +__NDEBUG_DEFINE_p = -DNDEBUG +endif +ifeq ($(USE_EXCEPTIONS),0) +__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS +endif +ifeq ($(USE_RTTI),0) +__RTTI_DEFINE_p = -DwxNO_RTTI +endif +ifeq ($(USE_THREADS),0) +__THREAD_DEFINE_p = -DwxNO_THREADS +endif +ifeq ($(UNICODE),0) +__UNICODE_DEFINE_p = -DwxUSE_UNICODE=0 +endif +ifeq ($(UNICODE),1) +__UNICODE_DEFINE_p = -D_UNICODE +endif +ifeq ($(USE_CAIRO),1) +____CAIRO_INCLUDEDIR_FILENAMES_p = -I$(CAIRO_ROOT)\include\cairo +endif +ifeq ($(SHARED),1) +__DLLFLAG_p = -DWXUSINGDLL +endif +ifeq ($(MONOLITHIC),0) +__WXLIB_BASE_p = \ + -lwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR) +endif +ifeq ($(MONOLITHIC),1) +__WXLIB_MONO_p = \ + -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR) +endif +ifeq ($(MONOLITHIC),1) +ifeq ($(USE_STC),1) +__LIB_SCINTILLA_IF_MONO_p = -lwxscintilla$(WXDEBUGFLAG) +endif +endif +ifeq ($(USE_GUI),1) +__LIB_TIFF_p = -lwxtiff$(WXDEBUGFLAG) +endif +ifeq ($(USE_GUI),1) +__LIB_JPEG_p = -lwxjpeg$(WXDEBUGFLAG) +endif +ifeq ($(USE_GUI),1) +__LIB_PNG_p = -lwxpng$(WXDEBUGFLAG) +endif +ifeq ($(USE_CAIRO),1) +__CAIRO_LIB_p = -lcairo +endif +ifeq ($(USE_CAIRO),1) +____CAIRO_LIBDIR_FILENAMES_p = -L$(CAIRO_ROOT)\lib +endif +ifeq ($(BUILD),debug) +ifeq ($(DEBUG_INFO),default) +__DEBUGINFO = -g +endif +endif +ifeq ($(BUILD),release) +ifeq ($(DEBUG_INFO),default) +__DEBUGINFO = +endif +endif +ifeq ($(DEBUG_INFO),0) +__DEBUGINFO = +endif +ifeq ($(DEBUG_INFO),1) +__DEBUGINFO = -g +endif +ifeq ($(USE_THREADS),0) +__THREADSFLAG = +endif +ifeq ($(USE_THREADS),1) +__THREADSFLAG = -mthreads +endif + + +all: $(OBJS) +$(OBJS): + -if not exist $(OBJS) mkdir $(OBJS) + +### Targets: ### + +all: $(OBJS)\archive.exe + +clean: + -if exist $(OBJS)\*.o del $(OBJS)\*.o + -if exist $(OBJS)\*.d del $(OBJS)\*.d + -if exist $(OBJS)\archive.exe del $(OBJS)\archive.exe + +$(OBJS)\archive.exe: $(ARCHIVE_OBJECTS) + $(CXX) -o $@ $(ARCHIVE_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lwsock32 -lwininet -loleacc -luxtheme + +$(OBJS)\archive_archive.o: ./archive.cpp + $(CXX) -c -o $@ $(ARCHIVE_CXXFLAGS) $(CPPDEPS) $< + +.PHONY: all clean + + +SHELL := $(COMSPEC) + +# Dependencies tracking: +-include $(OBJS)/*.d diff --git a/samples/archive/makefile.unx b/samples/archive/makefile.unx new file mode 100644 index 0000000000..3e548451bc --- /dev/null +++ b/samples/archive/makefile.unx @@ -0,0 +1,100 @@ +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.11 (http://www.bakefile.org) +# Do not modify, all changes will be overwritten! +# ========================================================================= + + + +# ------------------------------------------------------------------------- +# These are configurable options: +# ------------------------------------------------------------------------- + +# C++ compiler +CXX = `$(WX_CONFIG) --cxx` + +# Standard flags for C++ +CXXFLAGS ?= + +# Standard preprocessor flags (common for CC and CXX) +CPPFLAGS ?= + +# Standard linker flags +LDFLAGS ?= + +# Location and arguments of wx-config script +WX_CONFIG ?= wx-config + +# Port of the wx library to build against [gtk1,gtk2,msw,x11,motif,osx_cocoa,osx_carbon,dfb] +WX_PORT ?= $(shell $(WX_CONFIG) --query-toolkit) + +# Use DLL build of wx library to use? [0,1] +WX_SHARED ?= $(shell if test -z `$(WX_CONFIG) --query-linkage`; then echo 1; else echo 0; fi) + +# Compile Unicode build of wxWidgets? [0,1] +WX_UNICODE ?= $(shell $(WX_CONFIG) --query-chartype | sed 's/unicode/1/;s/ansi/0/') + +# Version of the wx library to build against. +WX_VERSION ?= $(shell $(WX_CONFIG) --query-version | sed -e 's/\([0-9]*\)\.\([0-9]*\)/\1\2/') + + + +# ------------------------------------------------------------------------- +# Do not modify the rest of this file! +# ------------------------------------------------------------------------- + +### Variables: ### + +CPPDEPS = -MT$@ -MF`echo $@ | sed -e 's,\.o$$,.d,'` -MD -MP +WX_VERSION_MAJOR = $(shell echo $(WX_VERSION) | cut -c1,1) +WX_VERSION_MINOR = $(shell echo $(WX_VERSION) | cut -c2,2) +WX_CONFIG_FLAGS = $(WX_CONFIG_UNICODE_FLAG) $(WX_CONFIG_SHARED_FLAG) \ + --toolkit=$(WX_PORT) --version=$(WX_VERSION_MAJOR).$(WX_VERSION_MINOR) +ARCHIVE_CXXFLAGS = -I. `$(WX_CONFIG) --cxxflags $(WX_CONFIG_FLAGS)` $(CPPFLAGS) \ + $(CXXFLAGS) +ARCHIVE_OBJECTS = \ + archive_archive.o + +### Conditionally set variables: ### + +ifeq ($(WX_UNICODE),0) +WX_CONFIG_UNICODE_FLAG = --unicode=no +endif +ifeq ($(WX_UNICODE),1) +WX_CONFIG_UNICODE_FLAG = --unicode=yes +endif +ifeq ($(WX_SHARED),0) +WX_CONFIG_SHARED_FLAG = --static=yes +endif +ifeq ($(WX_SHARED),1) +WX_CONFIG_SHARED_FLAG = --static=no +endif + + +### Targets: ### + +all: test_for_selected_wxbuild archive + +install: + +uninstall: + +clean: + rm -f ./*.o + rm -f ./*.d + rm -f archive + +test_for_selected_wxbuild: + @$(WX_CONFIG) $(WX_CONFIG_FLAGS) + +archive: $(ARCHIVE_OBJECTS) + $(CXX) -o $@ $(ARCHIVE_OBJECTS) $(LDFLAGS) `$(WX_CONFIG) $(WX_CONFIG_FLAGS) --libs base` + +archive_archive.o: ./archive.cpp + $(CXX) -c -o $@ $(ARCHIVE_CXXFLAGS) $(CPPDEPS) $< + +.PHONY: all install uninstall clean + + +# Dependencies tracking: +-include ./*.d diff --git a/samples/archive/makefile.vc b/samples/archive/makefile.vc new file mode 100644 index 0000000000..b360ae12c3 --- /dev/null +++ b/samples/archive/makefile.vc @@ -0,0 +1,302 @@ +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.11 (http://www.bakefile.org) +# Do not modify, all changes will be overwritten! +# ========================================================================= + +!include <../../build/msw/config.vc> + +# ------------------------------------------------------------------------- +# Do not modify the rest of this file! +# ------------------------------------------------------------------------- + +### Variables: ### + +WX_RELEASE_NODOT = 31 +COMPILER_PREFIX = vc +OBJS = \ + $(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)$(ARCH_SUFFIX) +LIBDIRNAME = \ + .\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)$(ARCH_SUFFIX)_$(LIBTYPE_SUFFIX)$(CFG) +SETUPHDIR = \ + $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG) +ARCHIVE_CXXFLAGS = /M$(__RUNTIME_LIBS_10)$(__DEBUGRUNTIME_4) /DWIN32 \ + $(__DEBUGINFO_0) /Fd$(OBJS)\archive.pdb $(____DEBUGRUNTIME_3_p) \ + $(__OPTIMIZEFLAG_6) /D_CRT_SECURE_NO_DEPRECATE=1 \ + /D_CRT_NON_CONFORMING_SWPRINTFS=1 /D_SCL_SECURE_NO_WARNINGS=1 \ + $(__NO_VC_CRTDBG_p) /D__WXMSW__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ + $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \ + $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) /I$(SETUPHDIR) /I.\..\..\include \ + $(____CAIRO_INCLUDEDIR_FILENAMES_p) /W4 /I. $(__DLLFLAG_p) /D_CONSOLE \ + /DwxUSE_GUI=0 $(__RTTIFLAG_11) $(__EXCEPTIONSFLAG_12) $(CPPFLAGS) \ + $(CXXFLAGS) +ARCHIVE_OBJECTS = \ + $(OBJS)\archive_archive.obj + +### Conditionally set variables: ### + +!if "$(TARGET_CPU)" == "AMD64" +ARCH_SUFFIX = _x64 +!endif +!if "$(TARGET_CPU)" == "IA64" +ARCH_SUFFIX = _ia64 +!endif +!if "$(TARGET_CPU)" == "X64" +ARCH_SUFFIX = _x64 +!endif +!if "$(TARGET_CPU)" == "amd64" +ARCH_SUFFIX = _x64 +!endif +!if "$(TARGET_CPU)" == "ia64" +ARCH_SUFFIX = _ia64 +!endif +!if "$(TARGET_CPU)" == "x64" +ARCH_SUFFIX = _x64 +!endif +!if "$(USE_GUI)" == "0" +PORTNAME = base +!endif +!if "$(USE_GUI)" == "1" +PORTNAME = msw$(TOOLKIT_VERSION) +!endif +!if "$(OFFICIAL_BUILD)" == "1" +COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default" +WXDEBUGFLAG = d +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "1" +WXDEBUGFLAG = d +!endif +!if "$(UNICODE)" == "1" +WXUNICODEFLAG = u +!endif +!if "$(WXUNIV)" == "1" +WXUNIVNAME = univ +!endif +!if "$(SHARED)" == "1" +WXDLLFLAG = dll +!endif +!if "$(SHARED)" == "0" +LIBTYPE_SUFFIX = lib +!endif +!if "$(SHARED)" == "1" +LIBTYPE_SUFFIX = dll +!endif +!if "$(TARGET_CPU)" == "AMD64" +LINK_TARGET_CPU = /MACHINE:X64 +!endif +!if "$(TARGET_CPU)" == "IA64" +LINK_TARGET_CPU = /MACHINE:IA64 +!endif +!if "$(TARGET_CPU)" == "X64" +LINK_TARGET_CPU = /MACHINE:X64 +!endif +!if "$(TARGET_CPU)" == "amd64" +LINK_TARGET_CPU = /MACHINE:X64 +!endif +!if "$(TARGET_CPU)" == "ia64" +LINK_TARGET_CPU = /MACHINE:IA64 +!endif +!if "$(TARGET_CPU)" == "x64" +LINK_TARGET_CPU = /MACHINE:X64 +!endif +!if "$(MONOLITHIC)" == "0" +EXTRALIBS_FOR_BASE = +!endif +!if "$(MONOLITHIC)" == "1" +EXTRALIBS_FOR_BASE = +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO_0 = /Zi +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO_0 = +!endif +!if "$(DEBUG_INFO)" == "0" +__DEBUGINFO_0 = +!endif +!if "$(DEBUG_INFO)" == "1" +__DEBUGINFO_0 = /Zi +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO_1 = /DEBUG +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO_1 = +!endif +!if "$(DEBUG_INFO)" == "0" +__DEBUGINFO_1 = +!endif +!if "$(DEBUG_INFO)" == "1" +__DEBUGINFO_1 = /DEBUG +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO_2 = $(__DEBUGRUNTIME_5) +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" +__DEBUGINFO_2 = +!endif +!if "$(DEBUG_INFO)" == "0" +__DEBUGINFO_2 = +!endif +!if "$(DEBUG_INFO)" == "1" +__DEBUGINFO_2 = $(__DEBUGRUNTIME_5) +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default" +____DEBUGRUNTIME_3_p = /D_DEBUG +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" +____DEBUGRUNTIME_3_p = +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "0" +____DEBUGRUNTIME_3_p = +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "1" +____DEBUGRUNTIME_3_p = /D_DEBUG +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default" +__DEBUGRUNTIME_4 = d +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" +__DEBUGRUNTIME_4 = +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "0" +__DEBUGRUNTIME_4 = +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "1" +__DEBUGRUNTIME_4 = d +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default" +__DEBUGRUNTIME_5 = +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" +__DEBUGRUNTIME_5 = /opt:ref /opt:icf +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "0" +__DEBUGRUNTIME_5 = /opt:ref /opt:icf +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "1" +__DEBUGRUNTIME_5 = +!endif +!if "$(BUILD)" == "debug" +__OPTIMIZEFLAG_6 = /Od +!endif +!if "$(BUILD)" == "release" +__OPTIMIZEFLAG_6 = /O2 +!endif +!if "$(USE_THREADS)" == "0" +__THREADSFLAG_9 = L +!endif +!if "$(USE_THREADS)" == "1" +__THREADSFLAG_9 = T +!endif +!if "$(RUNTIME_LIBS)" == "dynamic" +__RUNTIME_LIBS_10 = D +!endif +!if "$(RUNTIME_LIBS)" == "static" +__RUNTIME_LIBS_10 = $(__THREADSFLAG_9) +!endif +!if "$(USE_RTTI)" == "0" +__RTTIFLAG_11 = /GR- +!endif +!if "$(USE_RTTI)" == "1" +__RTTIFLAG_11 = /GR +!endif +!if "$(USE_EXCEPTIONS)" == "0" +__EXCEPTIONSFLAG_12 = +!endif +!if "$(USE_EXCEPTIONS)" == "1" +__EXCEPTIONSFLAG_12 = /EHsc +!endif +!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "0" +__NO_VC_CRTDBG_p = /D__NO_VC_CRTDBG__ +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_FLAG)" == "1" +__NO_VC_CRTDBG_p = /D__NO_VC_CRTDBG__ +!endif +!if "$(WXUNIV)" == "1" +__WXUNIV_DEFINE_p = /D__WXUNIVERSAL__ +!endif +!if "$(DEBUG_FLAG)" == "0" +__DEBUG_DEFINE_p = /DwxDEBUG_LEVEL=0 +!endif +!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" +__NDEBUG_DEFINE_p = /DNDEBUG +!endif +!if "$(DEBUG_RUNTIME_LIBS)" == "0" +__NDEBUG_DEFINE_p = /DNDEBUG +!endif +!if "$(USE_EXCEPTIONS)" == "0" +__EXCEPTIONS_DEFINE_p = /DwxNO_EXCEPTIONS +!endif +!if "$(USE_RTTI)" == "0" +__RTTI_DEFINE_p = /DwxNO_RTTI +!endif +!if "$(USE_THREADS)" == "0" +__THREAD_DEFINE_p = /DwxNO_THREADS +!endif +!if "$(UNICODE)" == "0" +__UNICODE_DEFINE_p = /DwxUSE_UNICODE=0 +!endif +!if "$(UNICODE)" == "1" +__UNICODE_DEFINE_p = /D_UNICODE +!endif +!if "$(USE_CAIRO)" == "1" +____CAIRO_INCLUDEDIR_FILENAMES_p = /I$(CAIRO_ROOT)\include\cairo +!endif +!if "$(SHARED)" == "1" +__DLLFLAG_p = /DWXUSINGDLL +!endif +!if "$(MONOLITHIC)" == "0" +__WXLIB_BASE_p = \ + wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib +!endif +!if "$(MONOLITHIC)" == "1" +__WXLIB_MONO_p = \ + wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib +!endif +!if "$(MONOLITHIC)" == "1" && "$(USE_STC)" == "1" +__LIB_SCINTILLA_IF_MONO_p = wxscintilla$(WXDEBUGFLAG).lib +!endif +!if "$(USE_GUI)" == "1" +__LIB_TIFF_p = wxtiff$(WXDEBUGFLAG).lib +!endif +!if "$(USE_GUI)" == "1" +__LIB_JPEG_p = wxjpeg$(WXDEBUGFLAG).lib +!endif +!if "$(USE_GUI)" == "1" +__LIB_PNG_p = wxpng$(WXDEBUGFLAG).lib +!endif +!if "$(USE_CAIRO)" == "1" +__CAIRO_LIB_p = cairo.lib +!endif +!if "$(USE_CAIRO)" == "1" +____CAIRO_LIBDIR_FILENAMES_p = /LIBPATH:$(CAIRO_ROOT)\lib +!endif + + +all: $(OBJS) +$(OBJS): + -if not exist $(OBJS) mkdir $(OBJS) + +### Targets: ### + +all: $(OBJS)\archive.exe + +clean: + -if exist $(OBJS)\*.obj del $(OBJS)\*.obj + -if exist $(OBJS)\*.res del $(OBJS)\*.res + -if exist $(OBJS)\*.pch del $(OBJS)\*.pch + -if exist $(OBJS)\archive.exe del $(OBJS)\archive.exe + -if exist $(OBJS)\archive.ilk del $(OBJS)\archive.ilk + -if exist $(OBJS)\archive.pdb del $(OBJS)\archive.pdb + +$(OBJS)\archive.exe: $(ARCHIVE_OBJECTS) + link /NOLOGO /OUT:$@ $(__DEBUGINFO_1) /pdb:"$(OBJS)\archive.pdb" $(__DEBUGINFO_2) $(LINK_TARGET_CPU) /LIBPATH:$(LIBDIRNAME) /SUBSYSTEM:CONSOLE $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @<< + $(ARCHIVE_OBJECTS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib wsock32.lib wininet.lib +<< + +$(OBJS)\archive_archive.obj: .\archive.cpp + $(CXX) /c /nologo /TP /Fo$@ $(ARCHIVE_CXXFLAGS) .\archive.cpp + diff --git a/samples/makefile.bcc b/samples/makefile.bcc index a8358a557f..11b46019ca 100644 --- a/samples/makefile.bcc +++ b/samples/makefile.bcc @@ -83,7 +83,7 @@ __xrc___depname = xrc ### Targets: ### -all: access animate artprov $(__aui___depname) calendar caret clipboard collpane combo config console dataview dialogs dialup display dll dnd docview dragimag drawing erase event $(__except___depname) exec font grid $(__help___depname) $(__htlbox___depname) $(__html___depname) image internat ipc joytest keyboard layout listctrl mdi $(__mediaplayer___depname) menu minimal nativdlg notebook oleauto opengl ownerdrw popup power preferences printing $(__propgrid___depname) regtest render $(__ribbon___depname) $(__richtext___depname) sashtest scroll secretstore shaped sockets sound $(__splash___depname) splitter statbar $(__stc___depname) svg taborder taskbar text thread toolbar treectrl typetest uiaction validate vscroll $(__webview___depname) widgets wizard wrapsizer $(__xrc___depname) +all: access animate archive artprov $(__aui___depname) calendar caret clipboard collpane combo config console dataview dialogs dialup display dll dnd docview dragimag drawing erase event $(__except___depname) exec font grid $(__help___depname) $(__htlbox___depname) $(__html___depname) image internat ipc joytest keyboard layout listctrl mdi $(__mediaplayer___depname) menu minimal nativdlg notebook oleauto opengl ownerdrw popup power preferences printing $(__propgrid___depname) regtest render $(__ribbon___depname) $(__richtext___depname) sashtest scroll secretstore shaped sockets sound $(__splash___depname) splitter statbar $(__stc___depname) svg taborder taskbar text thread toolbar treectrl typetest uiaction validate vscroll $(__webview___depname) widgets wizard wrapsizer $(__xrc___depname) clean: -if exist .\*.obj del .\*.obj @@ -97,6 +97,10 @@ clean: @echo $(MAKE) -f makefile.bcc $(MAKEARGS) clean >>animate.bat call animate.bat @del animate.bat + @echo cd archive >archive.bat + @echo $(MAKE) -f makefile.bcc $(MAKEARGS) clean >>archive.bat + call archive.bat + @del archive.bat @echo cd artprov >artprov.bat @echo $(MAKE) -f makefile.bcc $(MAKEARGS) clean >>artprov.bat call artprov.bat @@ -426,6 +430,12 @@ animate: call animate.bat @del animate.bat +archive: + @echo cd archive >archive.bat + @echo $(MAKE) -f makefile.bcc $(MAKEARGS) all >>archive.bat + call archive.bat + @del archive.bat + artprov: @echo cd artprov >artprov.bat @echo $(MAKE) -f makefile.bcc $(MAKEARGS) all >>artprov.bat diff --git a/samples/makefile.gcc b/samples/makefile.gcc index a2b888ebe7..fb5ec26a18 100644 --- a/samples/makefile.gcc +++ b/samples/makefile.gcc @@ -80,13 +80,14 @@ endif ### Targets: ### -all: access animate artprov $(__aui___depname) calendar caret clipboard collpane combo config console dataview dialogs dialup display dll dnd docview dragimag drawing erase event $(__except___depname) exec font grid $(__help___depname) $(__htlbox___depname) $(__html___depname) image internat ipc joytest keyboard layout listctrl mdi $(__mediaplayer___depname) menu minimal nativdlg notebook oleauto opengl ownerdrw popup power preferences printing $(__propgrid___depname) regtest render $(__ribbon___depname) $(__richtext___depname) sashtest scroll secretstore shaped sockets sound $(__splash___depname) splitter statbar $(__stc___depname) svg taborder taskbar text thread toolbar treectrl typetest uiaction validate vscroll $(__webview___depname) widgets wizard wrapsizer $(__xrc___depname) +all: access animate archive artprov $(__aui___depname) calendar caret clipboard collpane combo config console dataview dialogs dialup display dll dnd docview dragimag drawing erase event $(__except___depname) exec font grid $(__help___depname) $(__htlbox___depname) $(__html___depname) image internat ipc joytest keyboard layout listctrl mdi $(__mediaplayer___depname) menu minimal nativdlg notebook oleauto opengl ownerdrw popup power preferences printing $(__propgrid___depname) regtest render $(__ribbon___depname) $(__richtext___depname) sashtest scroll secretstore shaped sockets sound $(__splash___depname) splitter statbar $(__stc___depname) svg taborder taskbar text thread toolbar treectrl typetest uiaction validate vscroll $(__webview___depname) widgets wizard wrapsizer $(__xrc___depname) clean: -if exist .\*.o del .\*.o -if exist .\*.d del .\*.d $(MAKE) -C access -f makefile.gcc $(MAKEARGS) clean $(MAKE) -C animate -f makefile.gcc $(MAKEARGS) clean + $(MAKE) -C archive -f makefile.gcc $(MAKEARGS) clean $(MAKE) -C artprov -f makefile.gcc $(MAKEARGS) clean $(MAKE) -C aui -f makefile.gcc $(MAKEARGS) clean $(MAKE) -C calendar -f makefile.gcc $(MAKEARGS) clean @@ -173,6 +174,9 @@ access: animate: $(MAKE) -C animate -f makefile.gcc $(MAKEARGS) all +archive: + $(MAKE) -C archive -f makefile.gcc $(MAKEARGS) all + artprov: $(MAKE) -C artprov -f makefile.gcc $(MAKEARGS) all @@ -440,14 +444,14 @@ endif memcheck: $(MAKE) -C memcheck -f makefile.gcc $(MAKEARGS) all -.PHONY: all clean access animate artprov aui calendar caret clipboard collpane combo \ - config console dataview dialogs dialup display dll dnd docview dragimag drawing \ - erase event except exec font grid help htlbox html image internat ipc joytest \ - keyboard layout listctrl mdi mediaplayer menu minimal nativdlg notebook oleauto \ - opengl ownerdrw popup power preferences printing propgrid regtest render ribbon \ - richtext sashtest scroll secretstore shaped sockets sound splash splitter statbar \ - stc svg taborder taskbar text thread toolbar treectrl typetest uiaction validate \ - vscroll webview widgets wizard wrapsizer xrc memcheck +.PHONY: all clean access animate archive artprov aui calendar caret clipboard \ + collpane combo config console dataview dialogs dialup display dll dnd docview \ + dragimag drawing erase event except exec font grid help htlbox html image internat \ + ipc joytest keyboard layout listctrl mdi mediaplayer menu minimal nativdlg \ + notebook oleauto opengl ownerdrw popup power preferences printing propgrid \ + regtest render ribbon richtext sashtest scroll secretstore shaped sockets sound \ + splash splitter statbar stc svg taborder taskbar text thread toolbar treectrl \ + typetest uiaction validate vscroll webview widgets wizard wrapsizer xrc memcheck SHELL := $(COMSPEC) diff --git a/samples/makefile.vc b/samples/makefile.vc index ca0f0b1fc0..b0dc178ce9 100644 --- a/samples/makefile.vc +++ b/samples/makefile.vc @@ -74,7 +74,7 @@ __xrc___depname = sub_xrc ### Targets: ### -all: sub_access sub_animate sub_artprov $(__aui___depname) sub_calendar sub_caret sub_clipboard sub_collpane sub_combo sub_config sub_console sub_dataview sub_dialogs sub_dialup sub_display sub_dll sub_dnd sub_docview sub_dragimag sub_drawing sub_erase sub_event $(__except___depname) sub_exec sub_font sub_grid $(__help___depname) $(__htlbox___depname) $(__html___depname) sub_image sub_internat sub_ipc sub_joytest sub_keyboard sub_layout sub_listctrl sub_mdi $(__mediaplayer___depname) sub_menu sub_minimal sub_nativdlg sub_notebook sub_oleauto sub_opengl sub_ownerdrw sub_popup sub_power sub_preferences sub_printing $(__propgrid___depname) sub_regtest sub_render $(__ribbon___depname) $(__richtext___depname) sub_sashtest sub_scroll sub_secretstore sub_shaped sub_sockets sub_sound $(__splash___depname) sub_splitter sub_statbar $(__stc___depname) sub_svg sub_taborder sub_taskbar sub_text sub_thread sub_toolbar sub_treectrl sub_typetest sub_uiaction sub_validate sub_vscroll $(__webview___depname) sub_widgets sub_wizard sub_wrapsizer $(__xrc___depname) +all: sub_access sub_animate sub_archive sub_artprov $(__aui___depname) sub_calendar sub_caret sub_clipboard sub_collpane sub_combo sub_config sub_console sub_dataview sub_dialogs sub_dialup sub_display sub_dll sub_dnd sub_docview sub_dragimag sub_drawing sub_erase sub_event $(__except___depname) sub_exec sub_font sub_grid $(__help___depname) $(__htlbox___depname) $(__html___depname) sub_image sub_internat sub_ipc sub_joytest sub_keyboard sub_layout sub_listctrl sub_mdi $(__mediaplayer___depname) sub_menu sub_minimal sub_nativdlg sub_notebook sub_oleauto sub_opengl sub_ownerdrw sub_popup sub_power sub_preferences sub_printing $(__propgrid___depname) sub_regtest sub_render $(__ribbon___depname) $(__richtext___depname) sub_sashtest sub_scroll sub_secretstore sub_shaped sub_sockets sub_sound $(__splash___depname) sub_splitter sub_statbar $(__stc___depname) sub_svg sub_taborder sub_taskbar sub_text sub_thread sub_toolbar sub_treectrl sub_typetest sub_uiaction sub_validate sub_vscroll $(__webview___depname) sub_widgets sub_wizard sub_wrapsizer $(__xrc___depname) clean: -if exist .\*.obj del .\*.obj @@ -86,6 +86,9 @@ clean: cd animate $(MAKE) -f makefile.vc $(MAKEARGS) clean cd "$(MAKEDIR)" + cd archive + $(MAKE) -f makefile.vc $(MAKEARGS) clean + cd "$(MAKEDIR)" cd artprov $(MAKE) -f makefile.vc $(MAKEARGS) clean cd "$(MAKEDIR)" @@ -340,6 +343,11 @@ sub_animate: $(MAKE) -f makefile.vc $(MAKEARGS) all cd "$(MAKEDIR)" +sub_archive: + cd archive + $(MAKE) -f makefile.vc $(MAKEARGS) all + cd "$(MAKEDIR)" + sub_artprov: cd artprov $(MAKE) -f makefile.vc $(MAKEARGS) all diff --git a/samples/samples.bkl b/samples/samples.bkl index b87921a8eb..3d415c22c1 100644 --- a/samples/samples.bkl +++ b/samples/samples.bkl @@ -14,6 +14,7 @@ + From 4e5904a4cc54e7dc7ceb3397f3a5fb31bb2caa67 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 20 Feb 2018 14:47:12 +0100 Subject: [PATCH 388/916] Remove unused buildbot XML configuration files Buildbot configuration was redone in pure Python (see master.cfg in https://github.com/wxWidgets/buildbot repository) since several years already, there is no need to keep these obsolete files. --- build/buildbot/config/StellarWerx32.xml | 47 -- build/buildbot/config/StellarWerx64.xml | 47 -- build/buildbot/config/TBITCWXBUILDBOT.xml | 67 -- build/buildbot/config/brandt32.xml | 119 --- build/buildbot/config/brandt64.xml | 35 - build/buildbot/config/common.xml | 133 --- build/buildbot/config/csleobuild.xml | 88 -- build/buildbot/config/example.xml | 151 ---- build/buildbot/config/include/csleobuild.xml | 38 - build/buildbot/config/include/defs.xml | 833 ------------------- build/buildbot/config/include/push.xml | 40 - build/buildbot/config/include/unix.xml | 91 -- build/buildbot/config/include/wx-devs.xml | 48 -- build/buildbot/config/include/xp_vc.xml | 79 -- build/buildbot/config/push.xml | 85 -- build/buildbot/config/ravnsgaard.xml | 48 -- build/buildbot/config/xp_vc.xml | 83 -- build/buildbot/tools/bot.xsd | 15 - build/buildbot/tools/check.sh | 182 ---- build/buildbot/tools/email.xsl | 39 - build/buildbot/tools/embedded.xsl | 349 -------- docs/contributing/how-to-release.md | 4 +- 22 files changed, 2 insertions(+), 2619 deletions(-) delete mode 100644 build/buildbot/config/StellarWerx32.xml delete mode 100644 build/buildbot/config/StellarWerx64.xml delete mode 100644 build/buildbot/config/TBITCWXBUILDBOT.xml delete mode 100644 build/buildbot/config/brandt32.xml delete mode 100644 build/buildbot/config/brandt64.xml delete mode 100644 build/buildbot/config/common.xml delete mode 100644 build/buildbot/config/csleobuild.xml delete mode 100644 build/buildbot/config/example.xml delete mode 100644 build/buildbot/config/include/csleobuild.xml delete mode 100644 build/buildbot/config/include/defs.xml delete mode 100644 build/buildbot/config/include/push.xml delete mode 100644 build/buildbot/config/include/unix.xml delete mode 100644 build/buildbot/config/include/wx-devs.xml delete mode 100644 build/buildbot/config/include/xp_vc.xml delete mode 100644 build/buildbot/config/push.xml delete mode 100644 build/buildbot/config/ravnsgaard.xml delete mode 100644 build/buildbot/config/xp_vc.xml delete mode 100644 build/buildbot/tools/bot.xsd delete mode 100755 build/buildbot/tools/check.sh delete mode 100644 build/buildbot/tools/email.xsl delete mode 100644 build/buildbot/tools/embedded.xsl diff --git a/build/buildbot/config/StellarWerx32.xml b/build/buildbot/config/StellarWerx32.xml deleted file mode 100644 index 47ac0ff679..0000000000 --- a/build/buildbot/config/StellarWerx32.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - Linux x86 wxGTK trunk STL - stellarwerx32_wxgtk - trunk_quick - - - - - - - - - - Linux x86 wxX11 stable - stellarwerx32_wxx11 - daily_0600 - - - - - - - - - - Linux x86 wxGTK trunk ANSI - stellarwerx32_wxgtk_ansi - daily_0600 - - - - - - - - - diff --git a/build/buildbot/config/StellarWerx64.xml b/build/buildbot/config/StellarWerx64.xml deleted file mode 100644 index ec76dadf96..0000000000 --- a/build/buildbot/config/StellarWerx64.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - Linux x86_64 wxGTK stable - stellarwerx64_wxgtk - stable_quick - - - - - - - - - - Linux x86_64 wxX11 trunk - stellarwerx64_wxx11 - daily_0700 - - - - - - - - - - Linux x86_64 wxGTK stable ANSI - stellarwerx64_wxgtk_ansi - daily_0700 - - - - - - - - - diff --git a/build/buildbot/config/TBITCWXBUILDBOT.xml b/build/buildbot/config/TBITCWXBUILDBOT.xml deleted file mode 100644 index a205230aba..0000000000 --- a/build/buildbot/config/TBITCWXBUILDBOT.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - - - MinGW x86 trunk - tbitcwxbuildbot_mingw_trunk - trunk_quick - - - - - - - - - MinGW x86 stable - tbitcwxbuildbot_mingw_stable - daily_0600 - - - - - - - - - - diff --git a/build/buildbot/config/brandt32.xml b/build/buildbot/config/brandt32.xml deleted file mode 100644 index 4575b0cfe5..0000000000 --- a/build/buildbot/config/brandt32.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - Linux x86 wxGTK trunk - brandt32_gtk - trunk_quick - - - - - - - - - - Linux x86 wxGTK trunk STL no compat - brandt32_gtk_stl - trunk_quick - - - - - - - - - - Linux x86 wxGTK trunk static - brandt32_gtk_trunk_static - daily_0600 - - - - - - - - - - Linux x86 wxGTK stable static - brandt32_gtk_stable_static - daily_0600 - - - - - - - - - - Linux x86 wxDFB trunk - brandt32_dfb_trunk - daily_0600 - - - - - - - - - - Linux x86 wxDFB stable - brandt32_dfb_stable - daily_0600 - - - - - - - - - - - Linux i386 wxGTK stable STL - brandt32_wxgtk_stable - stable_quick - - - - - - - - - - Linux i386 wxGTK trunk no gui - brandt32_wxgtk_nogui - daily_0600 - - - - - - - - - - Linux i386 wxGTK trunk no features - brandt32_wxgtk_nofeatures - daily_0600 - - - - - - - - diff --git a/build/buildbot/config/brandt64.xml b/build/buildbot/config/brandt64.xml deleted file mode 100644 index 51d5587ff0..0000000000 --- a/build/buildbot/config/brandt64.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - Linux x64 wxGTK trunk - brandt64_gtk - trunk_quick - - - - - - - - - - Linux x64 wxGTK trunk STL no compat - brandt64_gtk_stl - trunk_quick - - - - - - - - - diff --git a/build/buildbot/config/common.xml b/build/buildbot/config/common.xml deleted file mode 100644 index 1aea286c16..0000000000 --- a/build/buildbot/config/common.xml +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - - - - - - trunk_quick - trunk - 900 - docs/* interface/* - - - - release_quick - - 900 - docs/* interface/* - - - - stable_quick - - 900 - docs/* - - - - - - - - - - - - - - - - - - - - slave - - - - trunk - - - - - - - - - - - - - - - - - - - - - problem - wx-devs - - - - - - wx-buildbot -at- googlegroups.com - - - - - - wxWidgets - - - diff --git a/build/buildbot/config/csleobuild.xml b/build/buildbot/config/csleobuild.xml deleted file mode 100644 index 98ab7097a2..0000000000 --- a/build/buildbot/config/csleobuild.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - OSX 10.9 Cocoa trunk (libstdc++) - csleo_cocoa - trunk_quick - - - - - - - - - - - OSX 10.9 Cocoa trunk (libc++) - csleo_cocoalibc++ - trunk_quick - - - - - - - - - - - OSX 10.6 Cocoa Stable - csleo_stable_cocoa - stable_quick - - - - - - - - - - - OSX 10.6 Carbon Stable - csleo_stable_carbon - stable_quick - - - - - - - - - - - iOS 7.1 64bit iPad sim trunk - csios64_ipadsim - trunk_quick - - - - - - - - - diff --git a/build/buildbot/config/example.xml b/build/buildbot/config/example.xml deleted file mode 100644 index 5b60997212..0000000000 --- a/build/buildbot/config/example.xml +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - - - - - - - - Linux x86_64 wxGTK Stable - - - example_gtk - - - monday_0600 - - - debug - - - nmake -f makefile.vc SHARED=1 CPPUNIT_CFLAGS=-I\cppunit\include CPPUNIT_LIBS=cppunit.lib - - - - - - - - - setting up - set up - - setup-script - - - - - - - - - - - - - - diff --git a/build/buildbot/config/include/csleobuild.xml b/build/buildbot/config/include/csleobuild.xml deleted file mode 100644 index 44b90328ac..0000000000 --- a/build/buildbot/config/include/csleobuild.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - running tests - run tests - - - - - export DYLD_LIBRARY_PATH=../lib - cd tests && - ./test && - open ./test_gui.app - - - - - - diff --git a/build/buildbot/config/include/defs.xml b/build/buildbot/config/include/defs.xml deleted file mode 100644 index c5271866e5..0000000000 --- a/build/buildbot/config/include/defs.xml +++ /dev/null @@ -1,833 +0,0 @@ - - - - - - - -http://svn.wxwidgets.org/svn/wx/wxWidgets/ -branches/WX_3_0_BRANCH - -branches/WX_3_1_0_BRANCH - -http://biolpc22.york.ac.uk/pub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ./configure - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - build/msw - . - - - - - - - samples - samples/console - - - - - utils - - demos - - contrib - - tests - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - && - - - - - - - - - cd && - - - - - - - - - - - - - - running tests - run tests - - - - - - - - - - - - - - - - - - - - - -cd tests && runtests.bat - - - - - - -ERR=0 -cd tests || exit 0 -ulimit -c unlimited - -try() -{ - rm -f core - echo Running: "$@" - "$@" || ERR=$? - - if [ -f core -a -x "`which gdb`" ]; then - echo Crashed, attempting to display backtrace: - gdb -batch -c core -ex 'set pagination off' -ex bt "$1" - fi - - echo -} - -try ./test - -test -x test_gui || exit $ERR - -if [ -z "$DISPLAY" ]; then - echo '$DISPLAY is not set, skipping GUI tests.' - exit $ERR -fi - -echo 'Checking window manager:' -WINDOW_MANAGER=$(xprop -root 32x '\n$0\n' _NET_SUPPORTING_WM_CHECK | grep ^0x) - -if [ -z "$WINDOW_MANAGER" ]; then - echo 'Window manager not present, skipping GUI tests.' - exit $ERR -fi - -xprop -id $WINDOW_MANAGER 8s _NET_WM_NAME -echo - -try ./test_gui - -exit $ERR - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - abcdefghijklmnopqrstuvwxyz - ABCDEFGHIJKLMNOPQRSTUVWXYZ - - - - - - - - - 0 - 1 - 2 - 3 - 4 - 5 - 6 - - - - - - - - monday - tuesday - wednesday - thursday - friday - saturday - sunday - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - _ - - - - - - - - - _ - - - - - - - - - - -at- - - - - @ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - noreply -at- wxsite.net - - - - - - diff --git a/build/buildbot/config/include/push.xml b/build/buildbot/config/include/push.xml deleted file mode 100644 index ed4c682c00..0000000000 --- a/build/buildbot/config/include/push.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/buildbot/config/include/unix.xml b/build/buildbot/config/include/unix.xml deleted file mode 100644 index 78c9813b43..0000000000 --- a/build/buildbot/config/include/unix.xml +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - slave - - - - - - - - - - - - - - - - - - - - ../ - - - - - creating build directory - create build directory - . - - rm -rf build && - mkdir build && - ln -sf ../ src - - - - - - - - - - - ../src/configure --disable-precomp-headers --disable-compat28 --disable-compat26 - - find . -name Makefile | xargs perl -pi -e 's/^(?:CC|CXX) = /$&ccache /' - - - - diff --git a/build/buildbot/config/include/wx-devs.xml b/build/buildbot/config/include/wx-devs.xml deleted file mode 100644 index 08516d43c2..0000000000 --- a/build/buildbot/config/include/wx-devs.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - abx -at- abx.art.pl - andrea.gavana -at- gmail.com - alex -at- alex.org.uk - cafedetal -at- gmail.com - bartosz.bekier -at- gmail.com - bwilliams -at- kirix.com - bryan -at- ibaku.net - techrazy.yang -at- gmail.com - loafier -at- gmail.com - biol75 -at- york.ac.uk - Chris.Barker -at- noaa.gov - admin -at- editra.org - dfe -at- tgwbd.org - daniel.lauk -at- gmail.com - diaasami -at- gmail.com - d.schoolwerth -at- xs4all.nl - f18m_cpp217828 -at- yahoo.it - frank.tobia -at- gmail.com - gilles_depeyrot -at- mac.com - jrgadd2 -at- cs.latrobe.edu.au - joukj -at- hrem.nano.tudelft.nl - jaakko.salli -at- dnainternet.net - julian -at- anthemion.co.uk - hc.john -at- gmail.com - hockkn -at- yahoo.com - KendallB -at- scitechsoft.com - kevino -at- theolliviers.com - mbarbon -at- cpan.org - mmacleod -at- webmail.co.za - nitro -at- dr-code.org - MMK -at- Thunder-Power.com - leio -at- gentoo.org - mike.wetherell -at- ntlworld.com - oliver.schoenborn -at- gmail.com - paulcor -at- bullseye.com - corsix -at- corsix.org - Peter_Most -at- gmx.de - robin -at- alldunn.com - wxprojects -at- comcast.net - rolinsky -at- femagsoft.com - robert -at- roebling.de - csomor -at- advancedconcepts.ch - Stefan.Neis -at- t-online.de - vslavik -at- fastmail.fm - vadim -at- wxwidgets.org - diff --git a/build/buildbot/config/include/xp_vc.xml b/build/buildbot/config/include/xp_vc.xml deleted file mode 100644 index 3612902054..0000000000 --- a/build/buildbot/config/include/xp_vc.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ../ - - - - - creating build directory - create build directory - . - - - (if exist build rmdir /s/q build) && - svn export --native-eol CRLF - ..\ build - - - - - - diff --git a/build/buildbot/config/push.xml b/build/buildbot/config/push.xml deleted file mode 100644 index a5c0c59256..0000000000 --- a/build/buildbot/config/push.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - Solaris HEAD GTK1 - psh_solaris_hd_gtk1 - - - - - - - - - - Solaris HEAD X11 with-stl - psh_solaris_hd_x11 - - - - - - - - - - Solaris Stable Motif - psh_solaris_st_motif - - - - - - - - - - Solaris Stable GTK2 Unicode - psh_solaris_st_gtk2u - - - - - - - - - - MingW-W64 cross_wxMSW Trunk - psh_mingw64_trunk - - - - - - - - - - MingW-W64 cross_wxMSW Stable - psh_mingw64_stable - - - - - - - - diff --git a/build/buildbot/config/ravnsgaard.xml b/build/buildbot/config/ravnsgaard.xml deleted file mode 100644 index 687cce00fd..0000000000 --- a/build/buildbot/config/ravnsgaard.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - Linux i386 wxGTK stable STL - ravnsgaard_wxgtk_stable - stable_quick - - - - - - - - - - Linux i386 wxGTK trunk no gui - ravnsgaard_wxgtk_nogui - daily_0600 - - - - - - - - - - Linux i386 wxGTK trunk no features - ravnsgaard_wxgtk_nofeatures - daily_0600 - - - - - - - - - diff --git a/build/buildbot/config/xp_vc.xml b/build/buildbot/config/xp_vc.xml deleted file mode 100644 index 06e804a211..0000000000 --- a/build/buildbot/config/xp_vc.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - XPSP2 VC9 wxMSW trunk release - XPSP2_VC9_wxMSW_trunk_release - trunk_quick - VC9 - nmake /nologo /f makefile.vc BUILD=release SHARED=1 CPPUNIT_CFLAGS=-Ik:/buildbot/VC9libs/cppunit-1.12.1/include CPPUNIT_LIBS=k:/buildbot/VC9libs/cppunit-1.12.1/lib/cppunit.lib - - - - - - - - XPSP2 VC9 wxMSW stable release - XPSP2_VC9_wxMSW_stable_release - stable_quick - VC9 - nmake /nologo /f makefile.vc BUILD=release SHARED=1 CPPUNIT_CFLAGS=-Ik:/buildbot/VC9libs/cppunit-1.12.1/include CPPUNIT_LIBS=k:/buildbot/VC9libs/cppunit-1.12.1/lib/cppunit.lib - - - - - - - - XPSP2 VC9 wxMSW trunk debug - XPSP2_VC9_wxMSW_trunk_debug - daily_0400 - VC9 - nmake /nologo /f makefile.vc BUILD=debug SHARED=1 CPPUNIT_CFLAGS=-Ik:/buildbot/VC9libs/cppunit-1.12.1/include CPPUNIT_LIBS=k:/buildbot/VC9libs/cppunit-1.12.1/lib/cppunitd.lib - - - - - - - - XPSP2 VC9 wxMSW stable debug - XPSP2_VC9_wxMSW_stable_debug - daily_0500 - VC9 - nmake /nologo /f makefile.vc BUILD=debug SHARED=1 CPPUNIT_CFLAGS=-Ik:/buildbot/VC9libs/cppunit-1.12.1/include CPPUNIT_LIBS=k:/buildbot/VC9libs/cppunit-1.12.1/lib/cppunitd.lib - - - - - - - - XPSP2 VC6 wxMSW stable release - XPSP2_VC6_wxMSW_stable_release - stable_quick - VC6 - nmake /nologo /f makefile.vc BUILD=release SHARED=1 CPPUNIT_CFLAGS=-Ik:/buildbot/VC6libs/cppunit-1.12.1/include CPPUNIT_LIBS=k:/buildbot/VC6libs/cppunit-1.12.1/lib/cppunit.lib - - - - - - - - XPSP2 VC6 wxMSW stable debug - XPSP2_VC6_wxMSW_stable_debug - daily_0700 - VC6 - nmake /nologo /f makefile.vc BUILD=debug SHARED=1 CPPUNIT_CFLAGS=-Ik:/buildbot/VC6libs/cppunit-1.12.1/include CPPUNIT_LIBS=k:/buildbot/VC6libs/cppunit-1.12.1/lib/cppunitd.lib - - - - - - - diff --git a/build/buildbot/tools/bot.xsd b/build/buildbot/tools/bot.xsd deleted file mode 100644 index 8921fe3c14..0000000000 --- a/build/buildbot/tools/bot.xsd +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - diff --git a/build/buildbot/tools/check.sh b/build/buildbot/tools/check.sh deleted file mode 100755 index 32ce7ebaa5..0000000000 --- a/build/buildbot/tools/check.sh +++ /dev/null @@ -1,182 +0,0 @@ -#!/bin/sh -############################################################################# -# Name: check.sh -# Purpose: Offline checker for the buildbot configuration files -# Author: Mike Wetherell -# Copyright: (c) 2007 Mike Wetherell -# Licence: wxWindows licence -############################################################################# - -usage() { - echo "Usage: $0 [options] FILE..." - echo "Offline checker for the buildbot configuration files" - echo - echo "Options:" - echo " -g generate xslt" - echo " -h show help" - echo " -l N output only line N" - echo " -p preprocess" - echo " -v validate" - exit 0 -} - -badopt() { - echo "try '$0 -h' for more information" >&2 - exit 1 -} - -progcheck() { - prog="$1" - $prog --version >/dev/null 2>&1 || { - echo "$0: requires $prog, not found" >&2 - exit 1 - } -} - -GENERATE=1 -PREPROCESS=2 -VALIDATE=3 - -MODE=$VALIDATE -FILTER=cat - -while getopts ghl:pv opt; do - case "$opt" in - \?) badopt ;; - g) MODE=$GENERATE ;; - h) usage ;; - l) FILTER="sed -ne ${OPTARG}p" ;; - p) MODE=$PREPROCESS ;; - v) MODE=$VALIDATE ;; - esac -done - -if [ $OPTIND -gt 1 ]; then - shift `expr $OPTIND - 1` -fi - -if [ $# -eq 0 ]; then - usage -fi - -XSLTPROC=xsltproc -XMLLINT=xmllint - -progcheck $XSLTPROC -progcheck $XMLLINT - -DIR="`dirname $0`" -WORKDIR="${TMPDIR:-/tmp}/wx.$$" -mkdir "$WORKDIR" || exit -trap 'rm -rf "$WORKDIR"' EXIT -WORKPAT=`echo "$WORKDIR" | sed 's|[^A-Za-z0-9]/|.|g'` -XSLT="$WORKDIR/XSLT" -PREP="$WORKDIR/PREP" -STDERR="$WORKDIR/STDERR" -ERR=0 - -# Filter to show lines of genertated XSLT when they are mentioned. -showxslt() { - awk '{ - print; - if (sub(/.*generated XSLT line */, "") && sub(/[^0-9].*/, "")) - { - system("sed -ne "$0"p '$XSLT'"); - } - }' -} - -# Test it works as old version of awk don't have sub or system functions. -if showxslt /dev/null; then - SHOWXSLT=showxslt -else - SHOWXSLT=cat -fi - -# Change the names of the temporary files in an error message to something -# to something more informative -errout() -{ - NAME="$1" - - if [ -s "$STDERR" ]; then - sed "s|file ${WORKPAT}|${WORKPAT}|g;\ - s|${WORKPAT}/XSLT|generated XSLT|g;\ - s|${WORKPAT}/PREP|$NAME (preprocessed)|g" "$STDERR" | $SHOWXSLT - fi -} - -output() -{ - $FILTER "$1" -} - -generate() -{ - INPUT="$1" - - if $XSLTPROC --xinclude -o "$XSLT" $DIR/embedded.xsl "$INPUT" 2>"$STDERR" && - test \! -s "$STDERR" - then - if [ $MODE -eq $GENERATE ]; then - output "$XSLT" - fi - else - return 1 - fi -} - -preprocess() -{ - INPUT="$1" - - if [ $MODE -lt $PREPROCESS ]; then - return 0 - fi - - if $XSLTPROC --xinclude -o "$PREP" "$XSLT" "$INPUT" 2>"$STDERR" && - test \! -s "$STDERR" - then - if [ $MODE -eq $PREPROCESS ]; then - output "$PREP" - fi - else - return 1 - fi -} - -validate() -{ - NAME="$1" - - if [ $MODE -lt $VALIDATE ]; then - return 0 - fi - - if $XMLLINT --noout --schema $DIR/bot.xsd "$PREP" 2>"$STDERR" - then - errout "$NAME" - else - return 1 - fi -} - -while [ $# -gt 0 ]; do - INPUT="$1" - NAME="`echo \"$INPUT\" | sed 's/[|\]/\\\&/g'`" - - { - generate "$INPUT" && - preprocess "$INPUT" && - validate "$NAME" - } || { - errout "$NAME" >&2 - ERR=1 - } - - rm -f "$XSLT" "$PREP" "$STDERR" - - shift -done - -exit $ERR diff --git a/build/buildbot/tools/email.xsl b/build/buildbot/tools/email.xsl deleted file mode 100644 index d7952565ad..0000000000 --- a/build/buildbot/tools/email.xsl +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - -at- - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/buildbot/tools/embedded.xsl b/build/buildbot/tools/embedded.xsl deleted file mode 100644 index c1a0e4c07a..0000000000 --- a/build/buildbot/tools/embedded.xsl +++ /dev/null @@ -1,349 +0,0 @@ - - - - - - - - - - - - - - - - - - - - -