Changelogs

Overview

These changelogs reflect the history of all files in the Subversion repository. The changelog has been generated at 2014-04-25 06:45:02

Select Changelog:

FileZilla 3, FileZilla,
FileZilla Server, wxWidgets

Changes per page:

25 50 100 250 500 1000 2000

Changelog for wxWidgets (68423 changes):

2010-11-05 22:41 VZ, revision 66036

Fix showing the frames full screen under OS X. Don't leave space for the title bar when showing the frame full screen. Closes #11701.

2010-11-05 22:40 VZ, revision 66034

Improve default position for new TLWs in wxOSX. Put the new windows in the upper left corner of the screen but not at (0, 0) as before, this was rather inconvenient and too different from the normal application behaviour under OS X. Closes #11926.

2010-11-05 22:40 VZ, revision 66033

Ensure that strings returned by wxMBConv_cf are in NFC form. Normalize all Unicode strings used internally even though the Darwin kernel gives them to us in decomposed (NFD) form. Closes #11730.

2010-11-05 22:39 VZ, revision 66032

Remove duplicate wxEVT_COMMAND_TEXT_ENTER generation from wxOSX/Cocoa. The code in -[wxNSTextField control:textView:doCommandBySelector:] generated a second copy of this event as it was also generated from wxNSTextFieldControl::controlAction() for single line text controls. Closes #11691.

2010-11-05 22:39 VZ, revision 66031

Don't update scrollbars when the window is being destroyed in wxOSX. Updating scrollbars for a window that is being destroyed anyhow is useless and resulted in crashes in the htlbox sample because it used client-to-screen coordinates conversion which asserted because the TLW was invalid any more and this unexpected assert during window destruction led to a crash. Simply don't do it at all to avoid the problem. Closes #11776.

2010-11-05 22:39 VZ, revision 66030

Fix crash in wxColour ctor from NSColor in wxOSX/Cocoa. wxColour ctor from NSColor added by Kevin Ollivier in r62525 never worked as it passed NULL pointer to NSColor:getComponents and so always crashed. This resulted in a crash in the rich text editor of the text sample, for example. Fix this by passing a valid array containing colour components instead.

2010-11-05 22:38 VZ, revision 66029

Remove unnecessary wxOSX_USE_COCOA guards in Cocoa-only file. The #if wxOSX_USE_COCOA seems unnecessary in a file that is used in wxOSX/Cocoa only so simply remove it.

2010-11-05 22:38 VZ, revision 66028

Assume sizeof(wchar_t) is always 4 under OS X. wchar_t used to be 2 bytes in Mach-O builds but they're not supported any longer so remove the code checking for sizeof(wchar_t) and just assume it's always 4. Closes #10442.

2010-11-05 22:37 VZ, revision 66027

Add another test for the insertion point position after SetValue(). Verify that setting the value of a previously not empty control resets the insertion point to its beginning. See #10051.

2010-11-05 22:37 VZ, revision 66026

Disable keyboard unit test with wxUIActionSimulator under OS X. The test doesn't work because the test window never get any events. This might be a bug in the test or in wxUIActionSimulator itself but for now I just have no idea about how to fix it, so disable the test to let the rest of the test suite run.

2010-11-05 17:05 CE, revision 66022

add execmon to CE exclude (no console)

2010-11-05 16:45 CE, revision 66021

missing namespace

2010-11-05 16:24 CE, revision 66019

missing namespace

2010-11-05 13:53 VZ, revision 66018

Remove test code accidentally committed as part of r66015. Don't call wxMenuItem::Set{Background,Text}Colour() in the menu sample, this was for testing only.

2010-11-05 07:55 JJ, revision 66017

Update OpenVMS makefiles

2010-11-04 17:13 VZ, revision 66016

Correct a trivial typo in wxLog documentation. Just remove an extra word.

2010-11-04 11:57 VZ, revision 66015

Use explicit menu item background if it's given under MSW. An explicit item background colour specified in user code should override the default theme background. Closes #12652.

2010-11-04 11:57 VZ, revision 66014

No changes, just use RAII-based classes in MSW owner drawn menu code. Add helper HDC{TextCol,BgCol,BgMode}Changer classes which ensure that the corresponding HDC attribute is reset on scope exit instead of manually calling the corresponding MSW functions to set and reset it.

2010-11-04 11:49 VZ, revision 66013

Pas long to _get_timezone() even for VC8. Apparently the MSDN documentation for VC8 is wrong and _get_timezone() function expects a long and not int when using it (as is already the case with VC9 and VC10). Closes #12653.

2010-11-04 08:38 JJ, revision 66012

Updating makefiles for OpenVMS

2010-11-04 00:48 VZ, revision 66009

Remove unused mouse event handler from dataview sample. The mouse event handler for the frame was never executed because the frame is entirely covered by other windows in this sample. Not sure what was meant here but this handler is useless so just remove it.

2010-11-04 00:48 VZ, revision 66008

Remove unnecessary tests for m_log from dataview sample. The sample contained a lot of unnecessary checks for m_log, remove them to make the code shorter and simpler to understand.

2010-11-03 17:36 VZ, revision 66007

Add wxAuiPaneInfo::IsDockable(). This function checks if the pane can be docked at any side. It is useful in its own right but most importantly is needed to fix compilation broken in r66005 which used it before it was added. See #12648.

2010-11-03 17:29 VZ, revision 66006

Set column field of wxDVC ITEM_{ACTIVATED,CONTEXT_MENU} events. Add missing calls to wxDataViewEvent::SetColumn() and SetDataViewColumn(). In the future it would be nice to refactor the code to have a common event object initialization function that would make it impossible to forget to do this. Closes #12649.

2010-11-03 17:29 VZ, revision 66005

Don't dock undockable panes in wxAuiManager::LoadPerspective(). All panes were docked when loading a perspective, including those that were created to be non-dockable. Don't dock the latter ones now. Closes #12648.

2010-11-03 17:29 VZ, revision 66004

Optimize wxDataViewMainWindow::FindNode() in generic wxDataViewCtrl. Avoid unnecessary heap allocations and extra indirections and just use the items pointers directly. Also avoid copying the (potentially huge) nodes arrays. Closes #12647.

2010-11-03 17:29 VZ, revision 66003

Don't copy potentially big arrays in generic wxDataViewCtrl. Use reference to hold the array of nodes instead of copying it. (Really) closes #12587.

2010-11-03 17:29 VZ, revision 66002

Handle wxLOCALE_DECIMAL_POINT in wxLOCALE_CAT_MONEY correctly in wxMSW. Use LOCALE_SMONDECIMALSEP and not LOCALE_SDECIMAL when querying for the decimal separator in money category, it can be different from the usual numeric one.

2010-11-03 17:29 VZ, revision 66001

Support wxLOCALE_THOUSANDS_SEP in wxMSW wxLocale::GetInfo(). Simply use ::GetLocaleInfo(LOCALE_STHOUSAND) for it. Closes #12643.

2010-11-03 15:44 JJ, revision 66000

replace m_nSelection by m_selection

2010-11-03 09:54 JJ, revision 65999

Update OpenVMS compile support

2010-11-02 23:55 VS, revision 65997

Fix compilation error in wxImplicitConversionType<> in gcc strict mode.

2010-11-02 12:57 VZ, revision 65994

Use _get_timezone() function instead of _timezone with MSVC8+. While some (but not all) versions of VC8 CRT still define _timezone variable, it is deprecated and shouldn't be used and referencing it can result in linking problems if it pulls in static CRT. Just use _get_timezone() function instead for the VC versions that support it (as was already done in r54417 for VC8 in 2.8 branch). Closes #4691.

2010-11-02 12:57 VZ, revision 65993

Make write end of the child process pipe non-blocking under Unix. We need to make at least one end of the pipe used to communicate with wxExecute() child process non-blocking to avoid deadlocks, so unblock the write end of the pipe. It seems to be unnecessary to unblock the reading ends of std{out,err} pipes as we can already check for the presence of input there. This is also consistent with wxMSW behaviour. Closes #12636.

2010-11-02 12:57 VZ, revision 65992

Refactor: extract code to make an fd non-clocking into a function. Simply extract part of the code from evtloopunix.cpp into a reusable wxPipe::MakeNonBlocking() function to be able to reuse it elsewhere. See #12636.

2010-11-02 12:57 VZ, revision 65991

Don't scroll the grid too much to bring selection in view. wxGrid scrolled completely to the right in row selection mode as it was always trying to make the bottom right selection corner visible. This was due to adjusting the selection block corner to cover the entire row in this mode (of course, the same was true for the column selection mode too). Don't do this any more as it's unnecessary, making the real selection block corner visible is enough for the block selection mode and nothing else is needed in row/column modes. See #12638.

2010-11-02 12:57 VZ, revision 65990

Changed wxImage::ConvertAlphaToMask() return type to bool. Make this function more useful by returning true from it if alpha channel was really converted to the mask by it. Closes #12637.

2010-11-02 12:57 VZ, revision 65989

Avoid crash when releasing the mouse in wxRibbonToolBar. The active tool pointer can be changed/set to NULL by the event handler in wxRibbonToolBar::OnMouseUp() so test for it before using it after processing the event. Closes #12640.

2010-11-02 04:09 RD, revision 65987

Add some asserts to ensure cols and rows are >= 0 to avoid crashes

2010-11-02 04:07 RD, revision 65986

Fix return types on wxRect::Inflate and Deflate

2010-11-01 18:01 PMO, revision 65974

More wxRadioBox implementation

2010-11-01 18:00 PMO, revision 65973

Improved naming for internal functions

2010-11-01 13:30 PMO, revision 65971

Update to trunk r65969

2010-11-01 12:58 JJ, revision 65970

Create work-around for wxGetEnvMap on OpenVMS (correction)

2010-11-01 10:48 JJ, revision 65969

Create work-around for wxGetEnvMap on OpenVMS

2010-10-31 14:41 VZ, revision 65968

Make wxMBConv_iconv MT-safe by not using wxString in it. Use just "char *" for wxMBConv_iconv::m_name to avoid MT-safety problems related to using a wxString (which is not always MT-safe) from multiple threads. See #12630.

2010-10-31 14:33 VZ, revision 65967

Avoid events when implicitly selecting first wxBookCtrl page. The first page added to a wxBookCtrlBase-derived control is always selected, even if "bSelect" argument of AddPage() was false. This is necessary because a non-empty book control must always have a selection but the "selection changed" event generated when doing it is unexpected. Fix this by not generating any events when the first page is implicitly selected. Closes #12075.

2010-10-31 12:37 VZ, revision 65966

Reposition wxSpinCtrl correctly after reparenting it in wxMSW. The position of wxSpinCtrl after reparenting was wrong because we didn't remember the old position early enough. There also was a more minor bug which resulted in the position not being set correctly if (any of its components) was -1 before reparenting. Closes #12633.

2010-10-31 12:37 VZ, revision 65965

Destroy correct HWND in wxMSW wxSpinCtrl::Reparent(). NULL HWND was passed to ::DestroyWindow() as wxWindow::UnsubclassWin() NULLed it after unsubclassing. See #12633.

2010-10-31 01:51 VZ, revision 65964

Document wxMessageQueueError. Document the enum defining the error codes of wxMessageQueue<> class. Closes #12634.

2010-10-31 01:51 VZ, revision 65963

wxUniv/MSW compilation fix in wxWindowBase::GetDlgUnitBase(). This wxWindowBase method can't access protected m_font member of another wxWindow object -- but can access it in wxWindowBase object. Closes #12358.

2010-10-31 01:51 VZ, revision 65962

No changes, just use AutoHBITMAP instead of manual DeleteObject() in wxMSW. Use RAII AutoHBITMAP class instead of manually calling DeleteObject() on temporary bitmaps in wxMSW wxImageList and wxBitmap code.

2010-10-31 01:51 VZ, revision 65961

Fix conversion of bitmaps with alpha to icons/cursors in wxMSW. CreateIconIndirect() applies pre-multiplication to the bitmap itself (as can be seen by experimenting with this or reading WINE sources for it) and so we must pass it a bitmap with data in non-pre-multiplied format to avoid doing it twice. This is similar to the change to wxImageList in the previous commit, see #9050.

2010-10-31 01:50 VZ, revision 65960

Add bitmaps in non-premultiplied format to wxImageList in wxMSW. ImageList_Draw() applies pre-multiplication to the bitmap itself (as can be seen by experimenting with this or reading WINE sources for it) and so the image list must store bitmaps with data in non-pre-multiplied format to avoid doing it twice. Do it by converting wxBitmaps passed to wxImageList::Add() and Replace() to wxImage and then to non-pre-multiplied DIBs. This is obviously very inefficient but at least results in correct appearance of images drawn by wxImageList so it's a step forward. Closes #9050.

2010-10-31 01:50 VZ, revision 65959

Allow creating DIBs storing pixels in non-premultiplied format in wxMSW. wxDIB assumed that MSW always uses bitmaps in pre-multiplied pixel format but this turns out to be wrong: some Windows functions such as ImageList_Draw() or CreateIconIndirect() apply pre-multiplication internally and so must be given data in non-pre-multiplied format on input. This commit adds a possibility to create wxDIB in such format but doesn't use it anywhere yet, this will be done in subsequent commits. See #9050.

2010-10-31 01:50 VZ, revision 65958

Make it impossible to initialize AutoHBITMAP after construction. Add default ctor and Init() method to wxMSW private AutoHBITMAP class. This doesn't change anything for now but will be used by an upcoming commit.

2010-10-31 01:50 VZ, revision 65957

Fix fatal bug in wxGetWindowFromHWND() for radio buttons. wxGetWindowFromHWND() could crash if it was called for a HWND of a radio button which was not created by wxWidgets because it blindly dereferenced the user data associated with the button expecting it to be a pointer to wxRadioBox and crashed if it was something different. And this actually happened when using the standard Windows printing dialog which can contain radio buttons which obviously used their user data field for their own purposes. Fix this by maintaining a global hash map with radio buttons HWNDs as keys and radio boxes as values. This ensures that we can always safely check whether the given HWND is a radio button in one of our radio boxes or not. Also change wxSpinCtrl which already did something similar in a different way (using an array instead or a more efficient hash map) for consistency. Closes #12083.

2010-10-31 01:50 VZ, revision 65956

Restore the old logger in wxLogChain dtor instead of deleting it. wxLogChain was leaving the global log target pointing to a deleted object, resulting in crashes when using wxLogWindow without any explicit SetActiveTarget() calls. Restore the original logger as the active target in wxLogChain dtor to ensure that the active log target remains valid.

2010-10-31 01:50 VZ, revision 65955

Fix confusion with LOGFONT{A,W} parameters to MSW GetTheme[Sys]Font(). Change the signature of GetThemeFont() and GetThemeSysFont() methods of wxUxThemeEngine to take an artificial wxUxThemeFont::Ptr type instead of LOGFONT which allows the broken code to compile correctly and even work in Unicode builds but crashed in ANSI ones under Windows Vista/7 as these functions expect a LOGFONTW and not LOGFONTA even in non-Unicode build under these systems. This generalizes the previous fix/workaround for the same problem in wxStaticBox so remove it now and use wxUxThemeFont both there and in wxMenuItem to avoid crashes when using owner-drawn menus in ANSI build. Closes #12364.

2010-10-31 01:50 VZ, revision 65954

No real changes, just cleanup of wxMSW MenuDrawData. Derive MenuDrawData::Margins from Windows MARGINS struct to avoid ugly (and potentially dangerous) reinterpret_cast<>s when using it. Also add some helper functions to Margins to make using it less painful.

2010-10-30 21:01 VZ, revision 65953

Use TAbs in debian/rules, not spaces, as it's a makefile. Fix make syntax error in debian/rules. Closes #12631.

2010-10-30 21:01 VZ, revision 65952

Fix order of arguments in wxOSX/Carbon wxListCtrl::ScrollList(). wxMacDataBrowserTableViewControl::SetScrollPosition() takes "top" and "left" arguments so swap "dx" and "dy" parameters being passed to it. It might be better to fix SetScrollPosition() to follow the more natural (at least from wx point of view) convention and as it's used in only a few places this wouldn't be difficult to do. But let's keep the changes to this code to the minimum for now. Closes #12339.

2010-10-30 17:57 VS, revision 65951

For large dataview controls, don't use all items to calculate best column width. Instead, use just top and bottom N/2 items for some large enough value of N. N is determined dynamically so that column best width calculation doesn't take more than 50ms.

2010-10-30 17:57 VS, revision 65950

Add wxDataViewRendererBase::PrepareForItem() helper. For calling SetValue() and SetAttr() consistently, instead of having the same code duplicated all over the place.

2010-10-30 17:57 VS, revision 65949

Account for text attrs in generic wxDataViewCtrl's renderers. When determining cell content's size, GetSize() measured the text using wxDataViewCtrl's font, even though it could be renderer in bold or italics. Corrected by setting the attributes - and not only the value - prior to GetSize() calls, and by using the right font in GetTextExtent() calls.

2010-10-30 17:57 VS, revision 65948

Add optional columns autosizing to wxDataViewCtrl. Only implemented in the generic and GTK+ versions at the moment, OS X support will be added later.

2010-10-30 17:57 VS, revision 65947

Add wxRenderer::GetHeaderButtonMargin(). Used for best size calculations of column width.

2010-10-28 18:41 PC, revision 65945

fix iconize event detection, logical operators don't work for testing bits

2010-10-28 16:23 VZ, revision 65944

Use floating point arithmetic in wxDC::GradientFillConcentric(). Use doubles to avoid accumulated rounding errors from using integers in the generic implementation of wxDC::GradientFillConcentric(). This results in smoother gradient. Also avoid using the expensive pow() function inside the inner loop when we just need to calculate a square. Closes #12337.

2010-10-28 16:23 VZ, revision 65943

Fix generic implementation of wxDC::GradientFillConcentric(). The selected colour was not used as the code simply changed the value of m_pen but didn't call SetPen() to actually use it. This resulted in always using the default (black) colour when drawing concentric gradients. Fix this by calling SetPen(). See #12337.

2010-10-28 16:23 VZ, revision 65942

Relax validation of wxCheckBox flags. Changes of r65824 resulted in asserts when creating wxCheckBox with just wxBORDER_NONE style. This is useless but used to be harmless so continue to allow this. Closes #12628.

2010-10-28 15:52 VZ, revision 65941

Improve positioning of wxSlider min/max labels in wxMSW. Put the min/max labels on the sides or a horizontal slider or above/below a vertical one to make them visually more distinct from the current value label. See #11427.

2010-10-28 12:27 VZ, revision 65940

wxOSX/Carbon compilation fix after wxListBoxBase changes. Making wxListBoxBase::CalcAndSendEvent() broke wxOSX/Carbon build, fix it by making the class which needs to call it friend of wxListBox in this port.

2010-10-28 12:27 VZ, revision 65939

Don't crash when waiting for thread termination in wxMSW. The changes of r65882 adding wxThread::On{Delete,Kill}() introduced a bug which made normal wxThread::Wait() crash. Fix it by calling OnDelete() only if we're really deleting a thread. Closed #12627, see #9046.

2010-10-28 01:22 VZ, revision 65938

Fix list box unit test under wxGTK. Select an item initially to prevent GTK from doing it automatically as soon as the listbox is clicked anywhere (even outside of the items area). This makes all GUI tests finally pass under wxGTK.

2010-10-28 01:22 VZ, revision 65937

No changes, just use wxGtkObject<> instead of g_object_unref(). Use smart pointer class instead of manually writing g_object_unref(). This makes code shorter and less error-prone.

2010-10-28 01:22 VZ, revision 65936

Don't duplicate event sending code in wxGTK wxListBox. Reuse wxListBoxBase::SetEvent() instead of duplicating its code in wxGTK. Also get rid of the code checking for selection of the item with index -1: this can't happen any more since r65865 which changed GTK_SELECTION_SINGLE to GTK_SELECTION_BROWSE.

2010-10-28 01:21 VZ, revision 65935

Don't send SELECTED events for an already selected item in wxGTK wxListBox. Bring wxGTK in line with wxMSW behaviour and avoid sending the wxEVT_COMMAND_LISTBOX_SELECTED events when the user clicks on an already selected item. Refactor wxMSW code to extract the logic to avoid such events into a reusable in other ports wxListBoxBase::DoChangeSingleSelection() function. Also add wxListBox::GTKOnSelectionChanged() to wxGTK to avoid having to make the new function public just so that it could be called by GTK callback and make the previously existing CalcAndSendEvent() protected as well. This fixes a unit test failure in ListBoxTestCase::ClickEvents() under wxGTK.

2010-10-27 23:41 VZ, revision 65934

wxOSX compilation fix: remove just added extra semicolon. r65931 forgot to remove a now extra semicolon from wx/osx/notebook.h, fix it.

2010-10-27 22:23 VZ, revision 65933

Fix warnings about signed/unsigned comparisons inside wxMax() and friends. wxMax, wxMin and wxClip work correctly when called with a mix of signed and unsigned arguments but give warnings about comparing them when compiled with g++. Cast both arguments to the result type, which is defined consistently with standard C rules for implicit promotion, before comparing them to avoid this. Also add more tests to check that using these functions in this case doesn't provoke warnings.

2010-10-27 21:42 RR, revision 65932

Use window-state-event to send ICONIZE events under GTK+, probably fixes #10973: Iconize event triggered when switching workspaces with Ctrl+Alt+[Arrow Key]

2010-10-27 18:54 VZ, revision 65931

Refactor: use wxBookCtrlBase::m_selection in all derived classes. All book control classes with the exception of wxGTK wxNotebook stored the currently selected page in m_selection or m_nSelection (or, in wxUniv wxNotebook case, m_sel) variable. Remove all of them and add m_selection directly to the base class itself so that it can be reused everywhere. Closes #12622.

2010-10-27 18:54 VZ, revision 65930

No real changes, just replace -1 with wxNOT_FOUND in wxBookCtrl code. Make the code consistently use wxNOT_FOUND instead of -1 everywhere. See #12622.

2010-10-26 17:11 VZ, revision 65929

Don't dispatch messages while waiting in worker thread in wxMSW. We only want to continue dispatching messages while waiting for another thread to terminate if we are waiting in the main thread. Closes #12618.

2010-10-26 17:11 VZ, revision 65928

Compilation fix for wxUSE_UNICODE_WCHAR && !wxUSE_STL_BASED_WXSTRING. Construct wxScopedWCharBuffer using CreateNonOwned() in wxString::ToStdWstring() in this case, creating it directly from wc_str() doesn't work (intentionally, as this doesn't tell if the buffer owns the string or not).

2010-10-26 17:10 VZ, revision 65927

Better document wxAutomationObject::GetDispatchPtr() return value. This function returns IDispatch pointer as a void one, mention that the user code needs to upcast it itself. Closes #12617.

2010-10-26 17:10 VZ, revision 65926

Rebake to add wx/meta/implicitconversion.h to the makefiles. Rebake after the addition of a new public header in r65920. Closes #12616.

2010-10-25 23:52 VZ, revision 65924

Mention that resource forks are deprecated under Mac in wxCursor docs. See #12614.

2010-10-25 22:46 VZ, revision 65923

Use the correct accelerator for the "Preferences" Apple menu item. Use the standard Command-, accelerator for the standard "Preferences" item in the Apple menu. Closes #12121.

2010-10-25 22:46 VZ, revision 65922

Use the application name in the "About" item of the Apple menu. To conform to Apple UI guidelines the application name should be included in the "About" menu item label in the Apple menu. See #12121.

2010-10-25 11:43 VS, revision 65921

Add wxImplicitConversionType tests.

2010-10-25 11:43 VS, revision 65920

Make wxMin, wxMax and wxClip template functions. Previously used macro's arguments were evaluated twice, but there were many occurences of their use in our code that didn't account for this and used expensive-to-evaluate arguments as if they were functions.

2010-10-25 11:24 JS, revision 65919

Style page no longer grows to fit very long style names; freeze/thaw used for speed

2010-10-25 11:22 VZ, revision 65918

Compilation fix: don't use "environ" under OS X. The global environ variable is not directly accessible under OS X, use _NSGetEnviron() instead.

2010-10-25 01:06 VZ, revision 65917

Make wxUString compilable with VC6. Provide replacements for std::basic_string functionality missing from this compiler standard library. Closes #12357.

2010-10-25 01:03 VZ, revision 65916

Fix typo in wxFILTER_NUMERIC documentation. Replace wxFILTER_SIMPLE_NUMBER with wxFILTER_DIGITS. Closes #12341.

2010-10-25 01:03 VZ, revision 65915

Add wxDocManager::FindTemplate() method. This allows to find the template corresponding to the document of the given class. Closes #12170.

2010-10-25 01:03 VZ, revision 65914

Don't handle RPC_E_CHANGED_MODE return of OleInitialize() as an error. This error means that OLE had already been initialized so from our point of view it counts as a success. Closes #12516.

2010-10-25 00:41 VZ, revision 65913

Do nothing in wxMemoryDC::SelectObject() if the bitmap is already selected. It doesn't make sense to make a copy of the bitmap in order to select it into wxMemoryDC if it's already selected into it. See #11640.

2010-10-25 00:41 VZ, revision 65912

Always create new OLE objects with reference count of 1, not 0. There are no real changes but ensure that the new objects of classes using DECLARE_OLE_UNKNOWN() macro are created with valid reference count of 1 instead of being created in phantom state with reference count of 0. Remove the now unnecessary AddRef() and add the now required DecRef() calls. See #11566.