Changelogs

Overview

These changelogs reflect the history of all files in the Subversion repository. The changelog has been generated at 2016-05-09 08:38:04

Changes per page:

25 50 100 250 500 1000 2000

Changelog for wxWidgets (70435 changes):

2015-02-18 18:37 JS, revision 78522

Now uses the correct font and text effect when drawing bullet text.

2015-02-18 18:19 AW, revision 78521

Restore original grid size when finishing the tests in propgrid sample.

2015-02-18 18:17 AW, revision 78520

Fix "Multiple Columns" test in propgrid sample. Resize grid to make the results of test visible.

2015-02-18 18:13 AW, revision 78519

Suppress sending spurious wxEVT_PG_SELECTED events. Don't send wxEVT_PG_SELECTED event when wxPG is ordered to unselect current property but no property is actually selected.

2015-02-18 13:18 JS, revision 78518

Now allows space for a bullet even if no left subindent was specified; added a MeasureBullet function to support this.

2015-02-18 12:10 JS, revision 78517

Comment correction

2015-02-18 12:07 JS, revision 78516

Fix for GetVisibleLineForCaretPosition, and a weird boolean test.

2015-02-17 21:52 AW, revision 78515

Initialize wxPGChoices object properly in its copy ctor if source object has no data. Internal data must be always initialized whether the source object contains choices data or not. This is the backport of r78484. See #16855.

2015-02-17 21:42 AW, revision 78514

Refresh property grid when property is switched to read-only state. Property grid is refreshed to reflect the new state of the property. This is the backport of r76875. See #16306.

2015-02-17 18:36 AW, revision 78513

Implement more detailed validation of wxArrayDoubleProperty in propgrid sample. Added wxArrayDoubleProperty::ValidateValue() method checks if pending value is of proper type (wxArrayDouble). Pending value of improper type is used to signal that invalid numeric value was entered into the edit field.

2015-02-17 07:19 DS, revision 78512

Fix exception when creating a wxGauge. Platforms that don't make use of wxGaugeBase::Create when creating a wxGauge (such as GTK and MSW) access the uninitialised m_appProgressIndicator. Fix by initialising m_appProgressIndicator to NULL in the wxGaugeBase constructor. Regression since r78499.

2015-02-16 22:42 RD, revision 78511

Add some missing default ctors and Create methods.

2015-02-16 22:40 RD, revision 78510

Add some missing default ctors and Create methods.

2015-02-16 21:50 AW, revision 78509

When drawing wxPG items (with double buffering) use the same layout direction as the window uses. Memory DC used for double buffering purposes should inherit layout direction from the window DC to ensure that texts are rendered correctly. This is the backport of r76931. See #15797.

2015-02-16 21:38 AW, revision 78508

Fix saving edited property value when wxPG property is in the 'invalid value' state. When wxPGProperty is loosing focus in 'invalid value' state its pending value should be stored before resetting property to 'normal' state because this operation (wxPG::OnValidationFailureReset) also resets pending value. This is the backport of r77887. See #16587.

2015-02-16 14:00 VZ, revision 78507

Correct wxLogSysError() calls after chdir() failure in wxGTK. Another fix for the changes of r78480: don't forget to pass the file/directory name to wxLogSysError(). Closes #16865.

2015-02-16 02:06 VZ, revision 78506

Increase the buffer size used for the host names in wxIPaddress. This avoids failing to set the host name if the system /etc/hosts file has any host names that wouldn't fit in our buffer: at least under Linux/glibc, gethostname_r() returns error if any such names exist even if we don't ask for them. Closes #16641.

2015-02-16 02:05 VZ, revision 78505

Increase the buffer size used for the host names in wxIPaddress. This avoids failing to set the host name if the system /etc/hosts file has any host names that wouldn't fit in our buffer: at least under Linux/glibc, gethostname_r() returns error if any such names exist even if we don't ask for them. Closes #16641.

2015-02-16 00:26 AW, revision 78504

Display additional information for EVT_PG_SELECTED event in propgrid sample.

2015-02-16 00:23 AW, revision 78503

wxEVT_PG_SELECTED event object generated when property is unselected should refer to the property being unselected. Currently, wxEVT_PG_SELECTED event object generated when property is unselected doesn't refer to the property being unselected (in fact it doesn't refer to any property; pointer to the property is NULL) and therefore it is not possible to determine unselected property or to check its state.

2015-02-15 23:54 VZ, revision 78502

Fix wxDV_ROW_LINES drawing when horizontally scrolled in generic version. Use the correct, i.e. logical, as wxDC does the translation to physical internally, coordinates for drawing the highlighted rows. Closes #16815.

2015-02-15 23:54 VZ, revision 78501

Fix wxDV_ROW_LINES drawing when horizontally scrolled in generic version. Use the correct, i.e. logical, as wxDC does the translation to physical internally, coordinates for drawing the highlighted rows. Closes #16815.

2015-02-15 23:21 AW, revision 78500

Prevent sending wxEVT_PG_LABEL_EDIT_ENDING events recursively. By preventing sending wxEVT_PG_LABEL_EDIT_ENDING events recursively (recursive generation can happen due to the calling wxPropertyGrid::RefreshProperty() directly or indirectly from within wxEVT_PG_LABEL_EDIT_ENDING event handler) spurious events are not sent to the application and wxPropertyGrid::DoEndLabelEdit() function is not reentered. Closes #16864.

2015-02-15 21:09 DS, revision 78499

Add OS X implementation of wxAppProgressIndicator. Closes #16638.

2015-02-15 19:35 VZ, revision 78498

Show how to handle files on command line in docview sample. This is not totally obvious, so show how to do it, including the Mac-specific MacNewFile() overriding part. Closes #16816.

2015-02-15 18:11 DS, revision 78497

No code changes, fix some typos. Change several occurrences of "it's" where "its" is meant, as well as a few other minor typos.

2015-02-15 14:52 AW, revision 78496

Fix using a value of enumerated type in propgrid sample. Referring to enumerated type name (wxNumericPropertyValidator::NumericType) in expression is incorrect however it is accepted by VC++. GCC is not so merciful.

2015-02-15 01:02 VZ, revision 78495

Make wxUIActionSimulator::Text() to work with punctuation characters. Currently this only really works when using the standard US keyboard layout as we don't have information about the mapping from the characters to the keyboard keys for the other layouts, which is not ideal but better than nothing as it allows e.g. Text("foo_bar") to really produce "foo_bar" in the currently focused text control instead of "foo-bar" as before.

2015-02-15 01:01 VZ, revision 78494

Remove code not doing anything from wxUIActionSimulator::Char(). The changes of r69762 and r69960 cancelled each other out, leaving a long switch statement which didn't do absolutely anything -- and doesn't seem to be needed at all, so drop it. See #13671.

2015-02-15 01:01 VZ, revision 78493

No real changes, just fix a typo in a comment. s/ommitted/omitted/

2015-02-15 01:01 VZ, revision 78492

Remove useless check for NULL in wxFindWindowRecursively(). This is an internal function which is only ever called with non-NULL window.

2015-02-14 20:09 VZ, revision 78491

Use non-static reentrancy guard in wxScrollHelper::AdjustScrollbars(). This prevented calls to AdjustScrollbars() of another window from doing anything if they were called due to a size change from AdjustScrollbars() of an outer window. Closes #16852.

2015-02-14 19:37 DS, revision 78490

Regenerate Xcode projects. Update the Xcode projects to include addremovectrl.cpp, dbgrptg.cpp, and debugrpt.cpp .

2015-02-14 16:05 VZ, revision 78489

Fix coordinates of wxSetCursorEvent in wxGTK. The event coordinates remained in the client coordinates of the window the initial event had been sent to, even when the event was propagated to its parent.

2015-02-14 16:04 VZ, revision 78488

Fix coordinates of wxSetCursorEvent in wxGTK. The event coordinates remained in the client coordinates of the window the initial event had been sent to, even when the event was propagated to its parent.

2015-02-14 15:46 VZ, revision 78487

Correct wxInfoBar::ShowMessage() flags argument documentation. The default value is wxICON_INFORMATION, not wxICON_NONE. Closes #16861.

2015-02-14 15:46 VZ, revision 78486

Correct wxInfoBar::ShowMessage() flags argument documentation. The default value is wxICON_INFORMATION, not wxICON_NONE. Closes #16861.

2015-02-13 22:49 DS, revision 78485

Update XML Tools URL.

2015-02-13 20:42 AW, revision 78484

Initialize wxPGChoices object properly in its copy ctor if source object has no data. Internal data must be always initialized whether the source object contains choices data or not. Closes #16855

2015-02-13 20:36 VZ, revision 78483

Use non-static reentrancy guard in wxScrollHelper::AdjustScrollbars(). This prevented calls to AdjustScrollbars() of another window from doing anything if they were called due to a size change from AdjustScrollbars() of an outer window. Closes #16852.

2015-02-12 23:48 VZ, revision 78482

PCH-less build fixes after r78480. Must include wx/log.h to use wxLogSysError() when not using PCH.

2015-02-12 22:56 VZ, revision 78481

Avoid warnings about not checking read() result in wxJoystick code. Explicitly ignore errors if we can't read from the associated FD. This is mostly done to avoid -Wunused-result warning about not checking read() return value under Ubuntu.

2015-02-12 22:56 VZ, revision 78480

Avoid warnings about not checking chdir() result in wxGTK. Give error if changing directory when wxFD_CHANGE_DIR or wxDIRP_CHANGE_DIR flags are used, this is a good idea generally speaking and it also avoids warnings about not checking chdir() return value that we got under Ubuntu.

2015-02-12 07:12 PC, revision 78479

More complete fix to avoid GDK assertion "impl_window->update_freeze_count > 0" on Ubuntu. Any frozen window in the whole TLW could be affected, not just a child of the enabled window. Also do a more complete search for scrollbars. Closes #16795

2015-02-11 22:16 VZ, revision 78478

Make wxStaticText alignment work with wxGTK2. Alignment was silently ignored in wxStaticText with GTK+ 2 since 2.12 or so, make it work even at the price of using a non-default ellipsize mode as this seems to be the only way to have it at all. Closes #12539.

2015-02-11 22:16 VZ, revision 78477

Add convenient wxST_ELLIPSIZE_MASK constant. This is simply a combination of all 3 different wxST_ELLIPSIZE_XXX styles and makes it simpler to test if any of them is specified. No real changes.

2015-02-11 22:16 VZ, revision 78476

Remove obsolete checks for wxOS_WINDOWS_NT from wxMSW wxStaticText. We don't support Windows 9x any more, so there is no need to check for NT damily at run-time.

2015-02-11 19:11 PC, revision 78475

build fix for __WXUNIVERSAL__

2015-02-11 19:05 PC, revision 78474

avoid GDK assertion "impl_window->update_freeze_count > 0" on Ubuntu when enabling frozen window closes #16795

2015-02-11 07:12 MAR, revision 78473

Re-introduce private mbstowcs/wcstombs for wxQt-Android These functions are needed due Android NDK lacking wide character support, as wchar_t == char according to Android NDK bionic libc/include/wchar.h WARNING: They are minimally functional (provided provisorily until proper workaround is found, specially maybe using Qt built-in functionality). "Basically they produce complete garbage with non-ASCII characters" For more info see discussion in wx-dev list: https://groups.google.com/d/msg/wx-dev/71qtIFcujgM/Q-lbwl59vOIJ Thanks @seandepagnier (modified a bit the comments, added #warning and restructured #if blocks to be only specific for __ANDROID__)

2015-02-11 05:36 MAR, revision 78472

For Android (wxQT), add private wcstol, wcstoul and wcstod These functions are needed by wxString::ToLong wxString::ToDouble etc.. They do exist in the android library, but do not work corretly. This change implements them using strtol strtoul and strtod For more info see discussion in wx-dev list: https://groups.google.com/d/msg/wx-dev/71qtIFcujgM/TRCfCjGHUhEJ Thanks @seandepagnier (modified a bit the comments)

2015-02-11 00:14 VZ, revision 78471

Fix spurious assert in wxGTK wxDataViewCtrl::EditItem(). The assert in wxGtkTreeSelectionLock ctor failed after the first time this object was created as it doesn't reset the selection function to NULL with wxGTK2, fix this by checking for different values depending on whether it's actually the first time we do it or not. In the future we should just reset the selection function to NULL as it does work in GTK+ 3, also update the comment explaining the problem to mention this.

2015-02-11 00:14 VZ, revision 78470

Fix handling of disabled cells in wxGTK wxDataViewCtrl. The original code (see r66404 and r66416) didn't work because it used wxDataViewRenderer::SetMode() to make the renderer inactive but then used its GetMode() to restore the previous state -- which was lost. The result of this was that if the overridden IsEnabled() in the model ever returned false for any row, all the cells in this column, in all the rows, became insensitive, as could be seen by the inability to edit any rating in the first page of the dataview sample (even though it was disabled for a single row only) and any checkboxes on its third page (even though only the last two of them were supposed to be disabled). Fix this simply by making the renderer insensitive at GTK level only, but do not change the mode at wx level. See #12686.

2015-02-11 00:14 VZ, revision 78469

Add check for wxUSE_ADDREMOVECTRL being defined. This should have been part of r78462.

2015-02-11 00:14 VZ, revision 78468

Fix typos in wxTreeEvent::GetOldItem() documentation. Use the correct EVT_TREE_SEL_CHANG{ING,ED} event names instead of the non-existent EVT_TREE_ITEM_CHANG{ING,ED} ones. Closes #16847.

2015-02-11 00:14 VZ, revision 78467

Don't validate and transfer data from hidden dialogs when closing. This is unexpected and resulted e.g. in calling the user-defined TransferDataFromWindow() multiple times for wxPreferencesPages used in wxPreferencesEditor under wxGTK (where it is modeless).

2015-02-09 19:19 PC, revision 78466

don't assume size-allocate implies a widget is realized

2015-02-09 13:10 VZ, revision 78465

Fix DLL declaration of wxAddRemoveCtrlNameStr. The control, and its name string, are in the "adv" library, not "core".

2015-02-09 13:10 VZ, revision 78464

Undo accidental change to the notebook sample. This debugging/testing change was accidentally committed as part of r78462.

2015-02-09 13:10 VZ, revision 78463

Really break into the debugger at the assertion line under wxGTK. This completes the changes of r78408: in addition to making wxTrap() a macro, we also need to call it directly from the assert macro expansion instead of doing it from deep inside wx assert dialog code. See #11184.

2015-02-09 01:26 VZ, revision 78462

Add wxAddRemoveCtrl class. This is a simple high level helper combining an arbitrary control showing multiple items with the buttons allowing to add items to and remove items from this control, but using the buttons and the layout appropriate for the current platform. Add the implementation itself, an example of using it to the dialogs sample and the documentation.

2015-02-09 01:25 VZ, revision 78461

Add an accessor for GtkToolbar widget of wxToolBar. This can be used to customize the toolbar beyond the capabilities of wx API.

2015-02-08 17:36 SC, revision 78460

correcting NSSmallSquareBezelStyle layout inset (top and bottom 1 pixel)

2015-02-08 13:51 AW, revision 78459

Use wxSwap() function to swap values of array elements in wxArrayDoubleEditorDialog::ArraySwap()

2015-02-08 13:48 AW, revision 78458

Use bool constants instead of BOOL ones in propgrid sample. s/FALSE/false/ and s/TRUE/true for the sake of consistency.

2015-02-08 13:45 AW, revision 78457

Implement validator for wxArrayDoubleProperty in propgrid sample. In wxArrayDoubleProperty::DoGetValidator() there is instantiated a wxTextValidator accepting numeric characters, token delimiter and spaces.

2015-02-08 12:17 BP, revision 78456

Turn off batchmode for PDF manual, and no longer update latex_header.

2015-02-08 03:53 BP, revision 78455

Shorten PDF manual ToC, and fix ToC indents. The table of contents is over 600 pages long with the default settings. Now it only lists down to section, and runs 45 pages. Section numbers were also colliding with names, so this fixes the margins in the table of contents.

2015-02-07 23:13 BP, revision 78454

Center the PDF manual logo.

2015-02-06 20:28 VZ, revision 78453

Allow documents without template nor views be deleted correctly again. The changes of r78282 didn't take into account the case of a document without any views nor template and, consequently, without the associated manager. Such documents were not deleted at all any longer. Fix this by ensuring that a document is always associated with a manager: if not with the one specified by its template, then with the global one.

2015-02-06 02:51 BP, revision 78452

Fix LaTeX docs for PDF manual. LaTeX fails to handle tables nested in @param sections, and we've only used them to expand on enums that should be documented on their own anyway, so the docs have been extracted here.

2015-02-06 02:51 BP, revision 78451

Minor adjustments to LaTeX manual header.

2015-02-06 02:51 BP, revision 78450

Sync with Doxygen LaTeX header. Using a custom header is an "experimental" feature since it bypasses several Doxygen configuration options, and skips configuration changes necessary for all automatically generated LaTeX. This continues to use the nicer looking custom header, but brings it up-to-date with the automatically generated one from 1.8.8.

2015-02-04 18:58 BP, revision 78449

Backport r78447: Updated logos in the reference manual.

2015-02-04 18:44 VZ, revision 78448

Fix the expected size of the header logo on www.wxwidgets.org. The image has been updated in the website repository and online, update its expected size to reflect it and fix the unit test suite.

2015-02-04 18:44 BP, revision 78447

Updated logos in the reference manual.

2015-02-04 18:05 AW, revision 78446

Fix small typo in propgrid sample.

2015-02-04 17:53 AW, revision 78445

Use wxPG_IMPLEMENT_PROPERTY_CLASS macro in the propgrid sample. Replace old WX_PG_IMPLEMENT_PROPERTY_CLASS macro with new and simplified wxPG_IMPLEMENT_PROPERTY_CLASS macro. See #15541

2015-02-04 17:46 AW, revision 78444

Replace WX_PG_IMPLEMENT_PROPERTY_CLASS macro with simplified wxPG_IMPLEMENT_PROPERTY_CLASS macro. New macro have no obsolete parameters and its name conforms to the naming standard (prefixed with wx). Closes #15541

2015-02-04 17:18 VZ, revision 78443

Make wxNativePrinterDC::IsOk() const in wxOSX. Closes #16837.

2015-02-04 17:17 VZ, revision 78442

Minor changes in wxChmTools: add const, remove semicolons. Also fix a typo in a comment. Closes #16836.

2015-02-04 14:19 VZ, revision 78441

Fix a couple of typos in comments in wxX11 code. Closes #16835.

2015-02-04 14:19 VZ, revision 78440

Remove unnecessary statement from wxX11 wxTextCtrl code. We don't care about size_x variable value and should probably get rid of it entirely, but for now at least don't update it unnecessarily. Closes #16834.

2015-02-04 14:19 VZ, revision 78439

Don't declare unnecessary variable in wxUSE_NANOX wxX11 build. Closes #16833.

2015-02-04 14:18 VZ, revision 78438

Don't check if an unsigned variable is less than 0. This doesn't risk ever being true. Closes #16831.

2015-02-04 14:18 VZ, revision 78437

De-TAB wxX11 code. Remove hard TABs.

2015-02-04 14:16 VZ, revision 78436

Fix harmless unused variable warning in some build configurations. Don't declare the variables if they are not going to be used. Closes #16830.

2015-02-04 14:16 VZ, revision 78435

Suppress harmless unused parameter warnings in release build. Use WXUNUSED_UNLESS_DEBUG() for the parameters used only inside debug checks. Closes #16829.

2015-02-03 19:28 VZ, revision 78434

Consistently refuse to create bitmaps with 0 width or height. Homogenize the behaviour of all ports when creating bitmaps with 0 width or height: just fail always as it doesn't seem to make sense to support this. Closes #16828.

2015-02-02 19:31 PC, revision 78433

set transient parent for 'about' dialog, closes #16823

2015-02-02 18:23 PC, revision 78432

use logical operator, rather than bitwise, on bools, closes #16824

2015-02-01 19:06 PC, revision 78431

avoid passing invalid rect to Refresh(), closes #16819

2015-02-01 12:33 VZ, revision 78430

Prettify configure output when checking for backtrace(). The output of "checking for backtrace()" was interspersed with the output of "checking for library containing backtrace", which was ugly and potentially confusing, so move AC_SEARCH_LIBS() out of AC_CACHE_CHECK() to fix it.

2015-02-01 12:14 AW, revision 78429

Fix vertical positioning of text field in the combo box editor associated with wxPG property under wxMSW. Vertical position of text field in wxOwnerDrawnComboBox control (instantiated at property selection) doesn't need any special adjustment. This is a backport of r77687. See #16556.

2015-01-31 22:49 AW, revision 78428

Encapsulate wxPGProperty::m_children member variable. Implement RemoveChild and SortChildren methods to perform operations on m_children member variable.

2015-01-31 22:45 AW, revision 78427

Use getter methods to get access to wxPGProperty member variables. Use GetValueImage() getter to get access to m_valueBitmap data member. Use GetMaxLength() getter to get access to m_maxLen data member. Use GetAttributes() getter to get access to m_attributes data member. Use GetChoices() to get access to m_choices data member. Use GetDepth() to get access to m_depth member variable. Use GetBaseName() method to get access to m_name data member Use GetLabel() method to get access to m_label member variable.

2015-01-31 22:42 AW, revision 78426

Use getter/setter methods to get access to wxPGProperty::m_flags. Use dedicated wxPGProperty::HasFlags, wxPGProperty::SetFlag methods to check or modify wxPGProperty::m_flags member variable.

2015-01-30 16:53 VS, revision 78425

Avoid unneeded use of wxLocale in wxDateTime::Format() On OS X, wxDateTime::Format() uses wxString::Replace() to unconditionally replace locale-specific %c, %x and %X specifiers in the format string if present. Doing so causes three wxLocale::GetInfo() calls that are often not necessary. Check for the presence of these specifiers before calling GetInfo().

2015-01-30 16:53 VS, revision 78424

Handle 5+ letter codes in TranslateFromUnicodeFormat() Unicode TR #35 v26 allows for five-letter (MMMMM) or even six-letter (EEEEEE) forms of some of the fields, but TranslateFromUnicodeFormat() asserts in these situations. Fix it to fall back to short forms for MMMMM and EEEEEE that are used in practice e.g. on OS X if the user has custom formatting settings. Consulting the table of sensible specifiers from http://userguide.icu-project.org/formatparse/datetime, it appears these two were the only omissions in this function.

2015-01-30 16:53 VS, revision 78423

Avoid unneeded use of wxLocale in wxDateTime::Format() On OS X, wxDateTime::Format() uses wxString::Replace() to unconditionally replace locale-specific %c, %x and %X specifiers in the format string if present. Doing so causes three wxLocale::GetInfo() calls that are often not necessary. Check for the presence of these specifiers before calling GetInfo().

2015-01-30 16:53 VS, revision 78422

Handle 5+ letter codes in TranslateFromUnicodeFormat() Unicode TR #35 v26 allows for five-letter (MMMMM) or even six-letter (EEEEEE) forms of some of the fields, but TranslateFromUnicodeFormat() asserts in these situations. Fix it to fall back to short forms for MMMMM and EEEEEE that are used in practice e.g. on OS X if the user has custom formatting settings. Consulting the table of sensible specifiers from http://userguide.icu-project.org/formatparse/datetime, it appears these two were the only omissions in this function.

2015-01-29 13:25 VZ, revision 78421

Reset wxUSE_LIBNOTIFY if libnotify not detected in configure. This avoids WARNING: libnotify not found, wxNotificationMessage will use generic implementation. followed by Which GUI toolkit should wxWidgets use? GTK+ 2 with support for libnotify at the end.

2015-01-27 12:51 VZ, revision 78420

Fix wxEVT_TREE_STATE_IMAGE_CLICK generation in wxMSW wxTreeCtrl. Use GET_{X,Y}_LPARAM() to extract them from the event position, which handle negative coordinates (and coordinates can perfectly well be negative when using multiple displays) correctly, unlike {LO,HI}WORD(). Closes #16812.

2015-01-27 12:49 VZ, revision 78419

Fix wxEVT_TREE_STATE_IMAGE_CLICK generation in wxMSW wxTreeCtrl. Use GET_{X,Y}_LPARAM() to extract them from the event position, which handle negative coordinates (and coordinates can perfectly well be negative when using multiple displays) correctly, unlike {LO,HI}WORD(). Closes #16812.

2015-01-27 12:03 VZ, revision 78418

Improve wxThread::SetPriority() comment and documentation. Don't claim that SetPriority() can only be called before the thread is created, this is just wrong. Do document that it must be done after creating the thread in wxMSW (this is a limitation of this port as POSIX implementation allows calling it at any moment and could be lifted in the future). Closes #16809.

2015-01-26 16:10 VZ, revision 78417

Don't leave too much blank space in wxDatePickerCtrl under XP. In our efforts to account for the longest possible string we made the control too wide by default which didn't look very good, so reduce the amount of space added to it, this still seems to be (just) enough for all the reasonable date formats (tested under Windows XP SP3 with default DPI).

2015-01-24 23:09 VZ, revision 78416

Clarify wxExpectModal<> use and implementation. The only change in this commit is the omission of the primary wxExpectModal<> template as it's not needed and it's enough to just forward declare it, otherwise the changes are to the comments only and try to better explain how this class should be used, i.e. that it's not required, although it may be convenient, to specialize it, and also how it is implemented, notably the need for the CRTP in wxExpectModalBase<>.

2015-01-24 23:09 VZ, revision 78415

Use C++ RTTI in dialog testing code if wxRTTI is not available. This allows to get the best possible description of the dialog: if its class uses wxRTTI macros, its user-readable name will be used, but otherwise we now fall back on possibly unreadable but still informative mangled C++ class name rather than showing just "wxDialog" which is not useful at all.

2015-01-24 23:08 VZ, revision 78414

Cosmetic change to wxTestingModalHook error message. Don't include the word "dialog" in it, by default the description is just the class name and so typically already includes "dialog" in it, e.g. we could have "Expected wxFileDialog dialog" which was redundant.

2015-01-24 23:08 VZ, revision 78413

Provide better description of the expected message boxes. While the example in the previous commit message, with two identical expectations, still requires a custom description to be have unambiguous failure messages, in other cases it's enough to show the expected message box buttons in the error to make it possible to immediately see which expectation failed, so include the information deduced from the expected button into the description.

2015-01-24 23:08 VZ, revision 78412

Allow providing descriptions for dialog tests expectations. This makes test failure errors much more intelligible, e.g. in the following case ... some code ... wxTEST_DIALOG(wxYield, wxExpectModal<wxMessageDialog>(wxID_OK)); ... some more code ... wxTEST_DIALOG(wxYield, wxExpectModal<wxMessageDialog>(wxID_OK)); it was previously impossible to distinguish the first test failure from the second one from just the failure description (it could be done by looking at the line numbers since the recent change however), but with ... wxTEST_DIALOG(wxYield, wxExpectModal<wxMessageDialog>(wxID_OK). Describe("first warning message box")); ... wxTEST_DIALOG(wxYield, wxExpectModal<wxMessageDialog>(wxID_OK). Describe("successful completion message box")); the failure becomes immediately clear.

2015-01-24 23:08 VZ, revision 78411

Allow predefining wxTEST_DIALOG_HOOK_CLASS before wx/testing.h inclusion. Although it already was (and remains) possible to #undef and re-#define wxTEST_DIALOG_HOOK_CLASS after including wx/testing.h, it should also be possible to just define it globally in the testing code before including anything else and not have to bother with the #undef part.

2015-01-24 23:08 VZ, revision 78410

Improve error reporting from wxTEST_DIALOG() macro. Give the location (i.e. file name, line number and the name of the function) at which this macro itself appears instead of the location of ReportFailure() method inside wxTestingModalHook which was quite useless as it was the same for all the tests.

2015-01-24 23:08 VZ, revision 78409

Add wxASSERT_MSG_AT() and wxFAIL_MSG_AT() macros. These macros are useful for functions called from other macros to allow pretending that an assert inside such function actually happens at the point in the sources where the macro itself appears.

2015-01-24 23:08 VZ, revision 78408

Define wxTrap() as a macro for gcc on Intel platforms too. It is more convenient to break into the debugger at the exact location of the assert instead of inside a nested wxTrap() function. This does the same thing for gcc/x86 as was done for MSVC in r73124. See #11184.

2015-01-24 23:08 VZ, revision 78407

Fix typo in a comment for NewCloseButton(). s/common/current/

2015-01-24 16:00 VS, revision 78406

Allow disabling SetProcessDPIAware() call Add Windows-specific wxMSWDisableSettingHighDPIAware() function then can be called before startup (i.e. wxEntry() call) to disable wxWidgets' handling of DPI awareness. This is useful for code embedded in non-wx applications as well as for purely wx application that are not HiDPI-ready (although the latter has the option of forcing dpiAware=false in the manifest). See also https://groups.google.com/d/msg/wx-dev/Z0VpgzCY34U/f1FfPqGDppMJ and #16116.

2015-01-22 18:32 AW, revision 78405

Use constant variables to store cached constants in wxPGGlobalVarsClass.

2015-01-22 17:24 VZ, revision 78404

Remove accidentally left over wxLogMessage() from wxGTK wxWebViewWebKit. This resulted in a message box being shown each time Find() was called and was clearly undesirable. Closes #16801.

2015-01-21 18:28 AW, revision 78403

Use polymorphism to differentiate behaviour of wxEnumProperty and wxEditEnumProperty. Override OnSetValue(), StringToValue(), ValidateValue() methods instead of using RTTI in conditional statements to check if wxEditEnumProperty object is actually handled.

2015-01-21 18:14 AW, revision 78402

Refactor propgrid sample (rounding numbers). Use wxRound function to round floating point numbers.

2015-01-21 18:11 AW, revision 78401

Refactor propgrid sample (attribute constants). Use attribute constants instead of strings when calling wxPGProperty::SetProperty and wxPGProperty::GetProperty in propgrid samples.

2015-01-21 18:06 AW, revision 78400

Refactor property attribute names in wxPGProperty::GetAttribute calls. Use attribute constants instead of strings in wxPGProperty and wxPGDefaultRenderer classes and in NumericValidation() function.

2015-01-21 17:59 AW, revision 78399

Refactor wxPGSpinCtrlEditor. Declare and use attribute constant instead of explicit string "MotionSpin".

2015-01-21 15:31 JS, revision 78398

Remove selection before container is deleted or it could cause a crash later.

2015-01-21 15:31 JS, revision 78397

Remove selection before container is deleted or it could cause a crash later.

2015-01-20 16:26 VS, revision 78396

Use wxNB_MULTILINE in wxPreferencesEditor The size of the dialog in wxPreferencesEditor's generic implementation is determined from notebook pages alone and doesn't account for label size, which may be significantly longer in some languages (German, Danish). If the labels don't fit into the window, some of the tabs are hidden behind scroll buttons that are easy to overlook. Improve usability by using wxNB_MULTILINE, which will use multiple rows of tabs in this situation. This is what e.g. Internet Explorer does in its preferences as well.

2015-01-20 16:26 VS, revision 78395

Use wxNB_MULTILINE in wxPreferencesEditor The size of the dialog in wxPreferencesEditor's generic implementation is determined from notebook pages alone and doesn't account for label size, which may be significantly longer in some languages (German, Danish). If the labels don't fit into the window, some of the tabs are hidden behind scroll buttons that are easy to overlook. Improve usability by using wxNB_MULTILINE, which will use multiple rows of tabs in this situation. This is what e.g. Internet Explorer does in its preferences as well.

2015-01-20 16:01 TIK, revision 78394

Fix memory leak introduced in r78183: wxMenuItemBase::SetAccel does not take ownership of the passed pointer nor keeps it for later use.

2015-01-20 16:00 TIK, revision 78393

Fix memory leak introduced in r78179: wxMenuItemBase::SetAccel does not take ownership of the passed pointer nor keeps it for later use.

2015-01-19 21:19 AW, revision 78392

Function wxPGProperty::HasFlag should return Boolean value.

2015-01-19 20:58 AW, revision 78391

Implement deprecated wxPGProperty::GetValueString function only in wxPG 1.4 compatibility mode. This function was marked as deprecated in 2008.

2015-01-19 18:22 AW, revision 78390

Fix a hack implemented in wxEnumProperty::ValueFromString_ and wxEnumProperty::ValueFromInt_ functions. wxEnumProperty code is refactored in order to fix a hack which purpose was (apparently) to bypass constness of these functions by caching determined indices in wxEnumProperty::ms_nextIndex static member variable for further processing. (Unclear concept of using this static member was referred in http://trac.wxwidgets.org/ticket/12779#comment:9) Now, determined index is returned to the caller and processed there if necessary and hence caching of this index is not necessary.

2015-01-19 13:18 VZ, revision 78389

Use logical operations instead of bit-wise ones for booleans. wxUniv "Windows" theme code wrongly used bitwise operations on boolean values, fix this. Closes #16796.

2015-01-19 04:05 MAR, revision 78388

remove wxMISSING_IMPLEMENTATION because wxQtDCImpl::DoBlit is implemented Thanks @seandepagnier

2015-01-19 04:03 MAR, revision 78387

Fix problem with scrollbar events in wxQT the local variable event shadowed the parameter which caused the incorrect value to be sent Thanks @seandepagnier

2015-01-19 04:02 MAR, revision 78386

Fix crash from possible NULL pointer in wxQT list ctrl Thanks @seandepagnier

2015-01-19 04:01 MAR, revision 78385

Fix problem with clipping region in wxqt. QPainter cannot set the clipping region when it is not active. Thanks @seandepagnier

2015-01-19 03:57 MAR, revision 78384

wxQT: move destroyed debug log into class method (remove global function to handle destroyed signal) This is needed for applications because the global function is not exported, yet it is used by the opengl library. An alternative is to add utils.cpp to the opengl library Thanks @seandepagnier

2015-01-19 03:44 MAR, revision 78383

wxQt: Fix compiler error for ambiguous call (when compiling without unicode support) Thanks @seandepagnier

2015-01-19 03:41 MAR, revision 78382

wxQT: Add guard to wxWindowQt for building without unicode support Thanks @seandepagnier

2015-01-19 03:39 MAR, revision 78381

wxQt: fix performance issue with font comparisons Thanks @seandepagnier

2015-01-19 03:38 MAR, revision 78380

Added wxUSE_XLOCALE ifdef guard to wxTimePickerGenericImp Allow to compile wxQT when configure with --disable-xlocal Thanks @seandepagnier

2015-01-19 03:31 MAR, revision 78379

Fix building for wxQT-android with sockets enabled The bionic library on android does not have gethostbyname_r even though it has gethostbyname_r. The configure script in wxwidgets assumes if it has one it has the other. This change does the right thing for android, but perhaps the script should instead test for both? Thanks @seandepagnier

2015-01-19 03:29 MAR, revision 78378

Fix Select on wxQT DC implementation Need to set the underlying qt painter up with the current pen, brush and font when a new object is selected Thanks @seandepagnier

2015-01-19 03:22 MAR, revision 78377

Specify needed header files more correctly (needed for wxqt-android) Thanks @seandepagnier

2015-01-19 03:18 MAR, revision 78376

Correct wxWindowQt::DoSetSize() for possible NULL member de-reference. Thanks David Register

2015-01-19 02:03 MAR, revision 78375

Remove duplicate declaration in wxRichTextCtrl buffer interface This is needed to compile wxPython Phoenix

2015-01-18 09:06 RD, revision 78374

another test commit, undoing the last one

2015-01-18 08:48 RD, revision 78373

This is just a test commit.

2015-01-16 03:39 VZ, revision 78372

Fix typo in wxSOCKET_NOWAIT_WRITE description in the manual. Don't contradict ourselves. Closes #16779.

2015-01-16 03:39 VZ, revision 78371

Fix checks for WXWIN_COMPATIBILITY_3_0: use #if, not #ifdef. The deprecated methods were always available as WXWIN_COMPATIBILITY_3_0 is always defined, we need to check its value and not its definedness. Closes #16782.

2015-01-13 18:05 JS, revision 78370

Bullet no longer gets the attributes from the first object in the list paragraph, so we can control it via paragraph attributes.

2015-01-13 17:41 AW, revision 78369

Fix using WXWIN_COMPATIBILITY_3_0 in conditional blocks in wxPG code. Check the value of WXWIN_COMPATIBILITY_3_0 instead of checking whether it is defined.

2015-01-12 21:37 AW, revision 78368

Preserve alpha channel flag when rescaling bitmap in wxPGProperty::SetValueImage (when wxUSE_IMAGE == 0). Rescaled bitmap must have the same alpha channel flag as the source bitmap flag in order to be properly displayed.

2015-01-12 21:32 AW, revision 78367

Let system decide about required depth of rescaled bitmap in wxPGProperty::SetValueImage. There is not necessary to fix the color depth - everything is determined internally when converting wxImage to wxBitmap.

2015-01-12 21:29 AW, revision 78366

Sanity check regarding DC in wxPropertyGrid::OnComboItemPaint Ensure that wxDC used by drawing functions in wxPropertyGrid::OnComboItemPaint is valid.

2015-01-12 21:23 AW, revision 78365

Don't attempt to draw element-specific bitmap when drawing wxPGChoices element inside the control field of wxEnumProperty with wxPGComboBox. The only bitmap which can be drawn in the control field is a "general" value bitmap (assigned to the property). Closes #16781

2015-01-11 23:49 VZ, revision 78364

Fix selection of items inserted in virtual generic wxDataViewCtrl. Call wxSelectionStore::OnItemsInserted() explicitly instead of just using our UpdateCount() to update the count of items managed by the selection. This needs to be done to ensure that the newly added items have the correction selection, i.e. are always unselected, as previously this wasn't the case: if wxSelectionStore was in the "selected by default" state as it happened e.g. after selecting all the items in the control, the new items also ended up being selected.

2015-01-11 23:49 VZ, revision 78363

Fix selection in virtual generic wxDataViewCtrl after deleting items. The number of items managed by selection was first decremented by our own UpdateCount() and then, again, by an explicit call to wxSelectionStore:: OnItemDelete(), which resulted in the selection ending up in an invalid state. Fix this by not calling UpdateCount(), and hence wxSelectionStore:: SetItemCount(), at all, just OnItemDelete() is enough.

2015-01-10 10:13 SC, revision 78362

removing overridden ProcessIdle, reverting that part of r75289

2015-01-09 04:30 VZ, revision 78361

Send deactivation events to MDI children frame in wxMSW too. For some reason, the code only forwarded activation events to the current MDI child, but not the deactivation ones. And even though this was literally always the case (the check for the event being the activation one is there since r9), it is clearly wrong as the focus restoring code in wxTopLevelWindow in wxMSW doesn't work if the focus hadn't been previously saved. This fix hopefully completes the changes started by r78340 and r78341 and ensures that the focus is always properly restored to the last focused window inside an MDI child.

2015-01-09 04:30 VZ, revision 78360

No changes, just fix a slightly misleading comment in wxMSW focus code. DefWindowProc() never preserves the focused window actually, whether we use WM_NEXTDLGCTL (which is only handled by DefDlgProc() anyhow) or not.

2015-01-09 04:30 VZ, revision 78359

Make specifying minimal size for "unknown" XRC controls work. At least since the changes of r44456 (see #8378), minimal size specified in the XRC for unknown controls didn't have any effect as it was set on wxUnknownControlContainer itself and was overridden by the subsequent call to SetSizerAndFit() which reset the minimal size to the best size of the control contained in it, meaning that it was impossible to make this contained control bigger by specifying min size greater than its best size in the XRC. Fix this by honouring both the min size of the container and of the control contained in it (and do the same thing for the max size for good measure). To avoid not totally obvious interaction of overriding GetMinSize() and DoGetBestClientSize() with sizer code, also position the child control manually instead of using a sizer for it, it's an overkill for such a simple case anyhow.

2015-01-09 04:30 VZ, revision 78358

Make generic wxDataViewCtrl initially usable from keyboard. This control doesn't react to the keyboard at all if it doesn't have a current row and as it doesn't have it initially, it means that there is no way to do anything with the control without clicking it with the mouse first. Fix this by giving it a current row, if possible, whenever it gains focus.

2015-01-09 04:29 VZ, revision 78357

Always invalidate wxStaticText best size after changing its label. wxST_NO_AUTORESIZE style only affects whether the control is actually resized when its text changes, but its best size should always change, so that if the window containing it is explicitly relaid out the size does change. Moreover, in wxMSW and wxOSX the best size was never invalidated at all when the label was ellipsized, so it was never updated for them, preventing, for example, comparing the best size with the current one to check if the text is effectively ellipsized (and so needs to be shown in a tooltip, for example). Fix this by calling InvalidateBestSize() unconditionally, this should make these ports behave in the same was as wxGTK already did.

2015-01-08 15:11 VZ, revision 78356

only flush a client dc if it was not inheriting the native CGContextRef from an outside paint context, fixes #16334

2015-01-06 21:20 VZ, revision 78355

Fix wxBitmap conversion to wxImage in 64-bit wxOSX builds. Don't assume that sizeof(long) == 4, this is just wrong. Closes #16770.

2015-01-06 21:08 VZ, revision 78354

Fix wxBitmap conversion to wxImage in 64-bit wxOSX builds. Don't assume that sizeof(long) == 4, this is just wrong. Closes #16770.

2015-01-06 08:12 MAR, revision 78353

Added new ctor for wxBitmap using wxCursor for wxQT (similar to wxGTK) This is the implementation that should had been included in r78348

2015-01-05 13:49 TIK, revision 78350

On wxMac, modal event loops avoid deleting pending objects. Hide the text control after editing a label in the generic tree control so it does not remain visible e.g. if the tree control is used in a dialog.

2015-01-05 13:48 TIK, revision 78349

On wxMac, modal event loops avoid deleting pending events. Hide the text control after editing a label in the generic tree control so it does not remain visible e.g. if the tree control is used in a dialog.

2015-01-04 04:51 MAR, revision 78348

Added new ctor for wxBitmap using wxCursor for wxQT (similar to wxGTK)

2015-01-04 03:49 MAR, revision 78347

Added missing ctor for wxBitmap using wxIcon for wxQT (taken from wxOSX)

2015-01-03 21:45 VZ, revision 78346

Fix wxFileDialog::GetFilterIndex() when opening files in wxOSX. Update m_filterIndex in the "opening" case, just as we already did in the "saving" one (see #13158 and r67550). Closes #16764.

2015-01-03 21:45 VZ, revision 78345

Fix wxFileDialog::GetFilterIndex() when opening files in wxOSX. Update m_filterIndex in the "opening" case, just as we already did in the "saving" one (see #13158 and r67550). Closes #16764.

2015-01-03 16:20 AW, revision 78344

Optimize wxPGChoices::Add methods. Remove unnecessary variables, limit the scope of variables and implement some sanity checks.

2015-01-03 16:10 AW, revision 78343

Optimize wxPGChoices::Set method. There is no need to check if referenced array with values is valid since "reference cannot be bound to dereferenced null pointer in well-defined C++ code". Moreover, conditional call of Add() methods(one with explicit parameter and one with default one) is not necessary.

2015-01-03 14:33 VZ, revision 78342

Fix the size of the "new" bitmap in the toolbar sample. It was broken by the changes of r78238 and was too small for the height in the header, resulting in an immediate crash on toolbar sample startup.

2015-01-03 02:07 VZ, revision 78341

Don't change MDI children order after showing a file dialog in wxMSW. Don't use the generic focus saving/restoring code for wxMDIParentFrame in wxMSW as it already saves and restores the active MDI child on its own and we should let it do it, as our code could change the active child when restoring focus if it hadn't been saved correctly previously. The fact that it is isn't saved is another bug, but even if it is fixed, we should let MSW MDI implementation handle activation as we can't do it any better -- but can do worse, as the bug described in #16635 shows. Closes #16635.

2015-01-03 02:07 VZ, revision 78340

Fix saving focus for MDI child frames in wxMSW. Use wxWindow::IsDescendant() instead of wxGetTopLevelParent() to determine whether the focused window is inside the TLW, as the former works correctly for any window, including wxMDIChildFrames, while the latter would return wxMDIParentFrame for them (as MDI children are not considered to be TLWs) and so saving the focus would always fail and the focus was always restored to the first child of wxMDIChildFrame after switching from it to another child frame and back, as could be seen by applying the simple patch: ---------------------------------- >8 -------------------------------------- diff --git a/samples/docview/view.cpp b/samples/docview/view.cpp index 9f20032..8386522 100644 --- a/samples/docview/view.cpp +++ b/samples/docview/view.cpp @@ -160,8 +160,9 @@ bool TextEditView::OnCreate(wxDocument *doc, long flags) wxFrame* frame = wxGetApp().CreateChildFrame(this, false); wxASSERT(frame == GetFrame()); m_text = new wxTextCtrl(frame, wxID_ANY, "", - wxDefaultPosition, wxDefaultSize, + wxPoint(5, 5), wxDefaultSize, wxTE_MULTILINE); + new wxButton(frame, wxID_ANY, "Button", wxPoint(5, 100)); frame->Show(); return true; ---------------------------------- >8 -------------------------------------- Notice that the bug usually stayed hidden because it didn't happen if wxMDIChildFrame contained a wxPanel (which also stores the last focus) inside it or if the focus switched away from the entire application instead of just going to another child and back, as in this case the last focus was stored in wxMDIParentFrame, for which the old code did work.

2015-01-03 02:07 VZ, revision 78339

Add include/wx/richtext/richtexttabspage.h to the MSBuild project. This seems like an occidental omission.

2015-01-03 02:07 VZ, revision 78338

Remove files not being compiled from richtext MSBuild project. Several sources in this project are actually not compiled at all, but are included from other files, so they don't appear in the master sources list. Update the project accordingly, for consistency with the earlier versions of MSVC. If these files should appear in it, they need to be added to RICHTEXT_HDR variable.

2015-01-03 02:07 VZ, revision 78337

Add appprogress.{h,cpp} to the files list. The wxMSW header was absent from both the bakefile and master file list, and the latter also lacked the other wxAppProgressIndicator-related files. Also regenerate the project file to contain the MSW header.

2015-01-03 02:07 VZ, revision 78336

No changes, just sort files alphabetically in the bakefiles files list. Keep MSW_SRC files list sorted, appprogress.cpp was added in a wrong place.

2015-01-03 00:49 VZ, revision 78334

German translations update from Wolfgang Stöggl .

2015-01-02 17:15 AW, revision 78333

Delete wxDC object when exiting from wxPropertyGrid::OnPaint

2015-01-02 15:26 VZ, revision 78332

Improve widgets sample UI consistency. Ensure that the various attributes (colours, font, border, ...) are preserved when a widget is recreated or the current page is changed. This is more convenient and also avoids discrepancies between the state of the menu items and the actual state of the widget. Closes #16576.

2015-01-01 00:36 RD, revision 78331

a commit to test Trac/SVN integration. Closes #16754

2014-12-31 23:25 RD, revision 78330

just another test commit

2014-12-31 23:20 RD, revision 78329

just a test commit

2014-12-28 21:06 AW, revision 78328

Pass outside wxPG a modified clone of wxEVT_TEXT event instead of hacking current event object. Using a clone of event (with PG id) instead of replacing id in the currently processed event coming from wxPGTextCtrlEditor seems to be less intrusive and safer action.

2014-12-27 15:24 VZ, revision 78327

Fix reading of not NUL-terminated strings using wxRegKey. Even though this is typically the case, some strings in Windows registry are not NUL-terminated, deal with them correctly by using the explicit length. Closes #16719.

2014-12-27 15:24 VZ, revision 78326

Revert "Add support for reading multi string values to wxRegKey." Reverts r78136 (see #15727) because the multi-string values in Windows registry are actually not "name=value" pairs at all but just NUL-separated strings and the API provided for reading them was inappropriate. Also see #16719.

2014-12-27 15:24 VZ, revision 78325

Fix flickering when resizing a frame with status bar in wxMSW. The flicker was only visible under Windows XP or when using a class theme and was due to mis-positioning the status bar initially in PositionStatusBar(). Fix this by adjusting its position by the toolbar offset before calling its SetSize(). Closes #16705.

2014-12-27 15:24 VZ, revision 78324

Make disabling submenus work in wxMSW. As submenu items don't have a valid ID, we need to address them by their position when calling EnableMenuItem() -- and for simplicity do it for all the items. Closes #16747.

2014-12-27 15:17 VZ, revision 78323

Make disabling submenus work in wxMSW. As submenu items don't have a valid ID, we need to address them by their position when calling EnableMenuItem() -- and for simplicity do it for all the items. Closes #16747.

2014-12-27 15:17 VZ, revision 78322

Fix handling of fast clicks in wxRibbonBar under MSW. Second click can result in a double click event instead of the usual simple click if it happens quickly enough after the first one, so handle double clicks in the same way as simple clicks instead of ignoring them. Closes #16551.

2014-12-27 12:30 AW, revision 78321

Do not actually reconnect PG event handlers when attempting to reconnect them to the same window. When in wxPropertyGridManager::ReconnectEventHandlers() new window ID is the same as old window ID then there is no need to do anything with handlers. An assertion warning is displayed in this case to notify about this unusual (and maybe unintended) situation.

2014-12-25 02:32 VZ, revision 78320

Fix removing tools from wxToolBar in wxOSX. Release the tool instead of retaining it (typo?) and also remove it from the toolbar view. See #16663.

2014-12-25 02:32 VZ, revision 78319

Don't overflow the message queue in wxEventLoop::WakeUp() in wxOSX. First, don't add any events at all to it unless it's empty. Second, post new events with low priority instead of high one, we really don't care about them getting processed, other, real, events should take priority. Closes #14256.

2014-12-25 02:32 VZ, revision 78318

Blind fix for wxTextDataObject trailing NUL under OS X. Use the length provided to SetData() instead of assuming it is NUL-terminated. Closes #9522.

2014-12-25 02:32 VZ, revision 78317

Generate wxEVT_DATAVIEW_ITEM_ACTIVATED on Enter in wxOSX wxDVC. Allow activating wxDataViewCtrl items from keyboard under OS X. Closes #16272.

2014-12-25 02:32 VZ, revision 78316

Allow setting hints for multi-line wxTextCtrl when supported. Don't prevent people from using hints in wxMSW and wxGTK2, where they work with multiline text controls too, even though they do not work with wxGTK3 nor wxOSX. Closes #14456.

2014-12-25 02:31 VZ, revision 78315

Add support for strikeout fonts to wxMSW wxTextCtrl. Map them to CFE_STRIKEOUT in the native rich text control. See #16591.

2014-12-25 02:31 VZ, revision 78314

Fix handling of fast clicks in wxRibbonBar under MSW. Second click can result in a double click event instead of the usual simple click if it happens quickly enough after the first one, so handle double clicks in the same way as simple clicks instead of ignoring them. Closes #16551.

2014-12-24 21:02 MAR, revision 78313

Match the wxQT wxColour with public interface Now the type of the value returned by Red, Green, Blue and Alpha methods are consistent with wxGTK and wxMSW. This could fix ticket #16713 (symbols exported)

2014-12-24 20:19 MAR, revision 78312

Fix SIGSEGV due bad pointer in wxMessageDialog (wxQT) m_qtWindow should be used instead of m_qtMessageBox (removed). If not, PostCreation() cannot call wxMessageDialog::GetHandle() as it is virtual (and it is called from the ctor), so it fails to set the base window pointer, raising a SIGSEGV in wxWindow::DoSetSize (for more info, see architecture in docs)

2014-12-24 14:57 VZ, revision 78311

Fix some typos in the comments and messages in the samples. Closes #16738.

2014-12-24 14:57 VZ, revision 78310

Update dialog editors list in the manual. Remove wxDesigner which is not offered any more and add wxCrafter. Also use more neutral "form designer" term to avoid giving the impression that these tools can only be used for the dialogs. Closes #16744.

2014-12-24 14:57 VZ, revision 78309

Add brief documentation for wxLog::Flush(). See #16744.

2014-12-24 14:57 VZ, revision 78308

Escape space after "e.g." or "i.e." in the manual. This fixes formatting of the Doxygen-generated docs (maybe we should just switch to the civilized spelling of "eg" and "ie" instead?). See #16744.

2014-12-24 14:56 VZ, revision 78307

Correct minor typo in wxMimeTypesManager documentation. See #16744.

2014-12-24 14:56 VZ, revision 78306

Correct typo in wxStopWatch example in the documentation. See #16744.

2014-12-24 14:56 VZ, revision 78305

Czech translations update from Zbyněk Schwarz.

2014-12-23 10:50 VZ, revision 78303

Use Cmd-click, not Apply-click, to select items in wxVListBox. Using Apple key here under Mac was unexpected, we should use Cmd which corresponds to Ctrl used under the other platforms and which is already mapped to it by wxKeyboardState::ControlDown().

2014-12-22 02:31 VZ, revision 78297

Don't try setting width before column is added to wxOSX wxDVC. This is not going to work anyhow and the width will be really set later, when InsertColumn() is called.

2014-12-22 02:31 VZ, revision 78296

Don't warn if model cell value is empty in wxOSX wxDVC. This follows similar change to wxGTK a few commits ago and makes wxOSX consistent with the generic version.

2014-12-22 02:31 VZ, revision 78295

Refactor type checks in wxOSX wxDVC implementation. Check the type in one place only, before calling MacRender() instead of doing it in each and every implementation of it. Also replace wxFAIL_MSG() with wxLogDebug() as the former resulted in a crash due to assert reentrancy, as usual when asserting inside a wxEVT_PAINT handler which is constantly called all the time, and so wasn't particularly useful.

2014-12-22 02:31 VZ, revision 78294

Remove unnecessary methods of wxCocoaOutlineDataSource. {append,remove}Child() were never used, remove them to make it easier to remove the use of "children" array itself later (see #16740).

2014-12-22 02:31 VZ, revision 78293

Don't warn if model cell value is empty in wxGTK wxDVC. Make wxGTK consistent with the generic version and, generally speaking, more reasonable by allowing to leave any cell empty by just not filling in the wxVariant in the model GetValue() for it.

2014-12-22 02:31 VZ, revision 78292

Replace wxLogError() with wxLogDebug() in wxGTK wxDVC code. The type mismatch between the value returned from the model and the one returned by the control cannot be due to any user action, so it is quite useless to show it to the user, it is only relevant for the developers. Use wxLogDebug() and not wxASSERT() because asserting in a wxEVT_PAINT callback would result in a crash due assert reentrancies.

2014-12-22 02:31 VZ, revision 78291

Fix arguments of type mismatch error message in wxGTK wxDVC. The "required" and "actual" arguments were exchanged, making the message pretty confusing.

2014-12-20 22:52 VZ, revision 78290

Centre text vertically in wxDataViewCtrl by default in generic version. This was already the case in the native GTK (possibly unintentionally) and OS X (because vertical alignment is not supported at all there) versions, but in the generic version using the default wxALIGN_NOT alignment when calling wxDataViewCtrl::AppendXXXColumn() methods resulted in top-aligned text which looked ugly (this could be seen on the second page of the dataview sample for example). Fix this by handling wxALIGN_NOT as wxDVR_DEFAULT_ALIGNMENT in these functions to do the right thing by default.

2014-12-20 22:51 VZ, revision 78289

Use helper functions for {app,prep}ending wxDataViewCtrl columns. Make the code more maintainable by using helper functions instead of duplicating the same logic a dozen times for each of appending and prepending. This is just a refactoring, no changes in behaviour.

2014-12-20 22:51 VZ, revision 78288

Add GetDefaultType() to all standard wxDataViewRenderer-derived classes. This makes it possible to refer to the associated wxVariant types without hard coding the string constants, i.e. instead of writing "string" (error prone as typos are not detected) it is now possible to write wxDataViewTextRenderer:: GetDefaultType(). This will also make it simpler to write generic (in C++ templates sense) code using renderers.

2014-12-20 22:51 VZ, revision 78287

Undo the change of the number of items in dataview sample. Increasing it to 10000000 in r77905 brought both the native GTK (see #16741) and OSX (see #16740) wxDataViewCtrl implementation to their knees, so don't do this. This is, of course, just hiding the real bug, but still better than not allowing people to run the sample at all.

2014-12-20 22:51 VZ, revision 78286

Suppress unused parameter warning in wxRichTextCtrl code. The entire event handler should arguably be removed entirely if it's unused, but for now just avoid the warning.

2014-12-20 11:15 TIK, revision 78285

Add Windows 10 support to wxGetOsDescription(). Map Windows 10 to wxWinVersion_8 in wxGetWinVersion() to not change ABI.

2014-12-20 11:13 TIK, revision 78284

Add Windows 10 support to wxGetWinVersion() and wxGetOsDescription().

2014-12-19 16:56 VZ, revision 78283

Remove assert about unsupported wxMOD_ALTGR in wxUIActionSimulator. wxMOD_ALTGR is wxMOD_ALT + wxMOD_CONTROL and so is, actually, supported as simulating it involves only simulating both Alt and Control being pressed, at least under MSW.

2014-12-19 16:56 VZ, revision 78282

Destroy all views associated to wxDocument being forcefully closed. Forcefully closing a modified document misbehaved in several ways: first, the question about whether the document should be saved was asked twice if the first message box was cancelled. Second, DeleteAllViews() didn't actually delete the views if the second message box was cancelled as well -- so the views could be left alive while their associated document was destroyed, resulting in more or less guaranteed crash (e.g. during the next event handling as wxDocChildFrameAnyBase::TryProcessEvent() assumes that m_childDocument is still alive if m_childView is). Fix both problems by really forcing the document to close by pretending that it is not modified. We still ask the user once though, as it could be useful to be able to save the document even when it will be closed. Ideally, the message box shown in this case shouldn't have a "Cancel" button at all, but this is left for the future.

2014-12-17 18:44 PC, revision 78281

guard functions with wxCHECK_* macros rather than wxASSERT_*

2014-12-17 17:04 JS, revision 78280

Added shadows to box attributes, and relevant controls in the Background page.

2014-12-16 21:16 VZ, revision 78279

Fix inserting tools removed from wxToolBar back into it in wxMSW. Make sure to reset the "to be deleted" flag we set on the tool when removing it from the toolbar to avoid layout problems if the tool is added back later. Closes #16735.

2014-12-16 21:16 VZ, revision 78278

Move wxRendererMSW::DrawTextCtrl() implementation to wxRendererGeneric. This ensures that wxRendererGeneric::DrawGauge() is actually usable as otherwise calling it always resulted in an assertion failure because it used DrawTextCtrl() which was not implemented in wxRendererGeneric. So this fixes using DrawGauge() in non-MSW ports which was added by r77023 (see #16406) but apparently never worked. Also remove wxRendererMSW::DrawGauge() as it's exactly the same as the version inherited from wxRendererGeneric. Closes #16725.

2014-12-16 21:16 VZ, revision 78277

Remove unnecessary wxUSE_MFC option. This didn't do (almost) anything, so just remove it, using MFC and wxWidgets together works just fine without it.

2014-12-16 21:15 VZ, revision 78276

No real changes, just fix some typos in comments in the samples. Closes #16734 (for 3.0).

2014-12-16 21:15 VZ, revision 78275

Fix inserting tools removed from wxToolBar back into it in wxMSW. Make sure to reset the "to be deleted" flag we set on the tool when removing it from the toolbar to avoid layout problems if the tool is added back later. Closes #16735 (for 3.0).

2014-12-16 14:59 VZ, revision 78274

Add wxEVT_MAGNIFY mouse event. Currently this is implemented for wxOSX only. Closes #14322.

2014-12-16 14:51 VZ, revision 78273

No real changes, just fix some typos in comments in the samples. Closes #16734.

2014-12-16 14:49 VZ, revision 78272

Fix building with -std=gnu++11 -stdlib=libstdc++ under OS X. Take into account the possibility of using C++11 compiler with non-C++11 standard library as this may happen when targeting OS X < 10.7, in which case C++11 libc++ can't be used. Closes #16730.

2014-12-14 12:12 SN, revision 78271

No real changes, just fixed a couple of typos in comments, fixes #16726.

2014-12-13 18:40 PC, revision 78270

Allow setting icon before m_widget is valid. There is no need to require a valid m_widget, the "realize" handler will take care of things later. Closes #16731

2014-12-12 23:58 AW, revision 78269

Remove unused member variable from wxSimpleCheckBox (used in wxPGCheckBoxEditor).

2014-12-12 23:56 AW, revision 78268

Fix typo in a comment

2014-12-12 23:40 AW, revision 78267

Create wxPropertyGridManager with default size in the propgrid sample Since r78150 wxPropertyGridManager can be created with default size with no issues.

2014-12-12 23:36 AW, revision 78266

Use wxBufferedPaintDC to implement double buffering in wxPG. This also fixes drawing the PG when buffer is not available and there is necessary do draw directly on window DC. wxPropertyGrid::DrawItems method is simplified and wxPropertyGrid::DoDrawItems method is reimplemented since its 3-rd argument (isBuffered) is unneeded anymore.

2014-12-11 21:31 TIK, revision 78265

In wxMBConvStrictUTF8::ToWChar the length of a multibyte UTF-8 sequence is obtained from a table, with the leading byte as offset. Later in that function, the prefix of the leading byte is compared against the expected prefix for the given length. Unless the table is faulty, this comparison can never fail. It is thus redundant and not needed. As optimizing compilers aren't smart enough yet to detect this, this commit removes the redundant check.

2014-12-11 21:31 TIK, revision 78264

In wxMBConvStrictUTF8::ToWChar the length of a multibyte UTF-8 sequence is obtained from a table, with the leading byte as offset. Later in that function, the prefix of the leading byte is compared against the expected prefix for the given length. Unless the table is faulty, this comparison can never fail. It is thus redundant and not needed. As optimizing compilers aren't smart enough yet to detect this, this commit removes the redundant check.

2014-12-11 19:34 PC, revision 78263

avoid generating wxEVT_CHAR when WriteText() is called from wxEVT_CHAR handler, closes #16717

2014-12-10 02:04 VZ, revision 78262

Restore Kolya Kosenko copyrights on parts of wxQt code. The original code was originally submitted of #12042. Closes #16721.

2014-12-10 01:14 VZ, revision 78261

Cast size_t value when using it with printf() in a test. Use %lu with a cast to avoid warnings in both 32 and 64 bit builds. Closes #16720.

2014-12-09 18:11 AW, revision 78260

Refactor: mark wxPropertyGridManager::SetId() as overridden virtual method.

2014-12-09 18:07 AW, revision 78259

Reconnect wxPropertyGridManager event handlers when wxPG id is changing. Because some event handlers are bound to the particular id's they need to be reconnected when wxPG id is the subject of change.

2014-12-09 13:51 VZ, revision 78258

Update wxGetTranslation() documentation. Document "i18n" trace mask. Correct warning about [not] using wxT(). See #16714.

2014-12-09 13:51 VZ, revision 78257

Update i18n overview in the manual. Remove obsolete warning about gettext 0.10, add a link to Poedit instead. Also fix Doxygen markup: @see can't be used inside a list item. See #16714.

2014-12-07 17:40 VS, revision 78256

Don't crash on OS X on exit if -NS* argument used When converting argv[] from char* to wchar_t* in ConvertArgsToUnicode(), keep an extra (shallow) copy of argc and the argv[] array so that it can be safely freed in FreeConvertedArgs(). The reason is that other functions such as wxApp::Initialize() may modify argv[] and remove some arguments from it; this is indeed exactly what wxOSX does. After such changes, gs_initData.argv would no longer be in the original state and could contain e.g. duplicate pointers or be missing some of the pointers that we should free.

2014-12-07 17:40 VS, revision 78255

Use int& type for argc in wxInitialize and wxInitializer Other functions that take (argc,argv) arguments (wxEntry, wxEntryStart) take argc by reference, because they may manipulate the arguments list. wxInitialize() used passing by value, so any modifications would be silently lost. Make all the functions consistent in their handling of argc by using int& everywhere.

2014-12-07 17:40 VS, revision 78254

Don't crash on OS X on exit if -NS* argument used When converting argv[] from char* to wchar_t* in ConvertArgsToUnicode(), keep an extra (shallow) copy of argc and the argv[] array so that it can be safely freed in FreeConvertedArgs(). The reason is that other functions such as wxApp::Initialize() may modify argv[] and remove some arguments from it; this is indeed exactly what wxOSX does. After such changes, gs_initData.argv would no longer be in the original state and could contain e.g. duplicate pointers or be missing some of the pointers that we should free.

2014-12-07 14:47 VZ, revision 78253
  • D /wxWidgets/trunk/src/expat/.cvsignore
  • D /wxWidgets/trunk/src/expat/conftools/.cvsignore
  • D /wxWidgets/trunk/src/expat/examples/.cvsignore
  • D /wxWidgets/trunk/src/expat/gennmtab/.cvsignore
  • D /wxWidgets/trunk/src/expat/lib/.cvsignore
  • D /wxWidgets/trunk/src/expat/tests/.cvsignore
  • D /wxWidgets/trunk/src/expat/win32/.cvsignore
  • D /wxWidgets/trunk/src/expat/xmlwf/.cvsignore

Remove .cvsignore files from expat sources. These files shouldn't be included in the distribution and it's simpler to just remove them, as it is pretty unlikely that a new Expat release is going to be made, and even less likely that it would still use CVS if it does happen, than to filter them out from the distribution creation scripts. Closes #16711.

2014-12-07 14:46 VZ, revision 78252
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/conftools/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/examples/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/gennmtab/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/lib/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/tests/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/win32/.cvsignore
  • D /wxWidgets/branches/WX_3_0_BRANCH/src/expat/xmlwf/.cvsignore

Remove .cvsignore files from expat sources. These files shouldn't be included in the distribution and it's simpler to just remove them, as it is pretty unlikely that a new Expat release is going to be made, and even less likely that it would still use CVS if it does happen, than to filter them out from the distribution creation scripts. Closes #16711.

2014-12-07 02:52 VZ, revision 78251

Fix appearance of wxMSW wxToggleButtons with bitmaps in pressed state. Correct the "pushed" state determination in our own drawn code, it didn't work for wxToggleButton which doesn't return BST_PUSHED from BM_GETSTATE. But it does have BM_GETCHECK returning its state directly, so add a new virtual MSWIsPushed() method and implement it differently for it. Closes #13755.

2014-12-06 14:07 VZ, revision 78250

Move MSWGetDefaultLayout() outside of #if wxUSE_EXCEPTIONS block. Build fix for wxUSE_EXCEPTIONS==0 after r78236.

2014-12-06 00:09 VZ, revision 78249

Build fix for wxOSX after the changes of r78230. Fix wrong signature of DoHandleMenuEvent() by getting rid of this function entirely, it's not just a trivial wrapper for ProcessMenuEvent() anyhow, so just use the latter directly.

2014-12-05 23:19 VZ, revision 78248

Fix checked disabled wxToolBar tools with custom images in wxMSW. Windows doesn't use the correct image for checked disabled tools, at least up to and including Windows 7, so don't put such tools in the "checked" state at all: this doesn't matter as they are disabled anyhow, but shows the correct image for them. Closes #12989.

2014-12-05 23:19 VZ, revision 78247

Don't generate wxEVT_MENU_{OPEN,CLOSE} for disabled top menus in wxMSW. Windows still sends these messages even if a top level menu is disabled, for some reason, so filter them out manually. Closes #2168.

2014-12-05 23:19 VZ, revision 78246

No real changes, just make wxMenuBar::MSWGetMenu() const. There is no reason not to.

2014-12-05 23:19 VZ, revision 78245

Handle updating tooltip text in wxCompositeWindow correctly. While calling SetToolTip(wxToolTip*) overload already worked correctly for wxCompositeWindow, using SetToolTip(wxString) did not if a tooltip already existed, as it didn't use the virtual DoSetToolTip() in this case, resulting in e.g. impossibility to update wxSpinCtrlDouble tooltip using this method. Fix this by introducing DoSetToolTipText() virtual which is used by that overload now and overriding it in wxCompositeWindow. Also don't override DoSetToolTip() in wxSpinCtrlGenericBase any more, it is not necessary as it's already done by its base class wxCompositeWindow. Closes #16595.

2014-12-05 23:19 VZ, revision 78244

Don't keep out of date column widths in generic wxDataViewCtrl. The cached widths need to be invalidated whenever an item is expanded or collapsed, whether it's done programmatically (which was already handled) or interactively by the user (which wasn't). Closes #16678.

2014-12-05 23:18 VZ, revision 78243

Use another bool constant instead of BOOL one in wxBitmapComboBox. Just s/FALSE/false/ See #16690.

2014-12-05 23:18 VZ, revision 78242

Measure wxBitmapComboBox height correctly if it has images. This fixes a regression introduced in r77548 (see #14279): wxBitmapComboBox must be higher than a normal wxComboBox if it has big enough bitmaps. Closes #16690.

2014-12-05 23:18 VZ, revision 78241

Prefer file types with a defined open command in Unix wxMimeTypesManager. It can happen that more than one file type maps to the given extension, in this case prefer the one which has an open command defined for it as it is typically more useful. See #16703.

2014-12-05 23:18 VZ, revision 78240

Load *.desktop files recursively in wxMimeTypesManager under Unix. Not all .desktop files are directly under /usr/share/applications, some or, in some cases, most of them, may be under its subdirectories, so look for them there as well. See #16703.

2014-12-05 23:18 VZ, revision 78239

No changes, just fixes for typos in comments in wxMSW headers. Closes #16706.

2014-12-05 23:18 VZ, revision 78238

Make all bitmaps of the same size in the toolbar sample. This is a requirement under MSW and resulted in problems when a secondary toolbar was created. Closes #16707.

2014-12-05 23:18 VZ, revision 78237

Don't use right-to-left markers in wxMSW wxMessageDialog code. This mechanism is provided as an alternative to specifying MB_RTLREADING style, e.g. if the source code can't be modified but the [string] resource from which the message box message is loaded can be. We don't need to do this if we do add MB_RTLREADING however.

2014-12-05 23:18 VZ, revision 78236

Fall back to default process layout direction in wxMSW. Add helper wxApp::MSWGetDefaultLayout() static method and use it instead of wxTheApp->GetLayoutDirection() in wxMSW code. This serves two purposes: first, wxMessageDialog doesn't crash when it's shown before wxTheApp is created (or after it's destroyed) any more. And second, we use the correct layout direction if the main application has enabled it by calling SetProcessDefaultLayout() or using two U+200E characters in the beginning of its "FileDescription" resource field by default now.

2014-12-05 23:18 VZ, revision 78235

Use the layout direction of wxTextCtrl itself, not the app, in wxMSW. A wxTextCtrl inside an RTL window in an otherwise LTR application should still be considered RTL, it's not clear at all why do we need to ask the application for the layout here, so change this for consistency.

2014-12-05 23:18 VZ, revision 78234

Don't dereference wxTheApp unconditionally when showing wxMessageDialog. The application might not yet (or already) exist, don't crash in this case.

2014-12-05 23:18 VZ, revision 78233

Fix crash when using wxMessageBox before creating wxTheApp. CheckIfCanBeUsedAsParent() used by wxMessageBox ctor shouldn't dereference wxTheApp unconditionally, otherwise it's impossible to show a message box before creating the application object or after destroying it without crashing.

2014-12-05 23:18 VZ, revision 78232

Don't put wxMenu::MSWGetMenu() inside wxUSE_OWNER_DRAWN check. This doesn't make any sense, this function is not related to the owner drawing code at all and should always be available. This corrects the changes of r70316, see #13851.

2014-12-05 23:18 VZ, revision 78231

Remove unnecessary assert from wxMenuBar::MSWGetMenu(). This assert was triggered after the changes of the previous commit as we can get WM_MENUSELECT with menu bar handle as parameter from Windows and still search for the menu with this handle -- and there is nothing wrong with this, so just return NULL but without asserting in this case. This corrects the changes of r67355, see #13080.

2014-12-05 23:17 VZ, revision 78230

Harmonize wxMenuEvent handling between all major ports. Send these events to the menu itself first, then to the menu bar containing it or the window invoking it if it's a popup menu and, finally, to the top level window in all of wxGTK, wxMSW and wxOSX. In particular, this ensures that help strings are now shown in the parent MDI frame status bar by default, even when the menus are attached to the client MDI frame or shown as popup menus. At the implementation level, this logic is now encapsulated in a new static wxMenu::ProcessMenuEvent() method which can be easily modified and reused in other ports.

2014-12-05 23:17 VZ, revision 78229

Fix fields initialization in wxCommandEvent copy ctor. Neither m_isCommandEvent nor, worse, m_propagationLevel was set correctly for wxCommandEvent objects constructed using copy ctor -- and hence Clone(). This means that such events were not propagated upwards the window hierarchy, quite possibly resulting in mysterious bugs. Fix this now by initializing these fields in both the normal and copy ctors.

2014-12-05 23:17 VZ, revision 78228

Refactor: extract menu event handling logic from wxMenu::SendEvent(). Make this logic available for reuse with the events of different kind, e.g. wxMenuEvent in the upcoming commit.

2014-12-05 23:17 VZ, revision 78227

Remove "isPopup" parameter from DoSendMenuOpenCloseEvent() in wxMSW. This parameter is redundant, we can find out whether a menu is a popup one or not from the menu itself, assuming that we always have a valid wxMenu pointer for popup menus events, which really should be the case (we may not have one for the events from system menus). This allows to handle popup menu events case in the base class version of MSWFindMenuFromHMENU() which will allow to reuse it from places other than DoSendMenuOpenCloseEvent() without code duplication now. There should be no changes to the behaviour, this is just a simplification.

2014-12-05 23:17 VZ, revision 78226

Add a popup menu to the MDI sample. This is just to test how wxEVT_MENU_HIGHLIGHT events from popup menu items are handled under the different platforms. Also log menu events to the canvas window too as it now gets some.

2014-12-05 23:17 VZ, revision 78225

Add logging of wxEVT_MENU_HIGHLIGHT events to the MDI sample too. This allows to easily compare which events are generated and sent to which objects under different platforms.

2014-12-05 23:17 VZ, revision 78224

No real changes, just shorten log messages in the MDI sample. There is not enough space for the relatively long messages logged when menus are opened or closed (added in r78130), shorten them as much as possible while leaving them still readable.

2014-12-05 23:17 VZ, revision 78223

Document the long existing wxFrame::DoGiveHelp(). This function was added way back in 2002 (r15339) but was never documented. Do it now as it's a useful method to override for customizing the help strings display.

2014-12-05 23:17 VZ, revision 78222

Send idle events from inside wxYield() in all ports, including wxMSW. This means it can be now done in wxEventLoopBase itself and calls to ProcessIdle() in the port-specific code are not needed any more, so remove them. This introduces a change in behaviour for wxMSW, where idle event handlers were not invoked from inside wxYield() at all previously, and for wxOSX, where only a single idle event is now generated from wxYield() instead of a stream of them until no idle handler needs any more of them as before. But on the bright side, the new behaviour seems to make most sense and is now the same in all ports.

2014-12-05 23:17 VZ, revision 78221

Use DTM_GETIDEALSIZE to implement wxDateTimePickerCtrl::DoGetBestSize(). If possible, i.e. when running under Vista or later, just ask the control for its best size instead of trying to approximate it ourselves. Notice that we still use our own height, to ensure that it's the same as for the text controls, but it's the width that really counts.

2014-12-05 23:17 VZ, revision 78220

Add wxLocale::GetOSInfo() and use it in MSW wxDateTimePickerCtrl. This fixes the size of wxDateTimePickerCtrl in programs that don't set any specific locale: previously, the standard "%m/%d/%y" format was used for computing the best size of the control in this case, but this could have been significantly shorter than the format actually used (compare with the default "%d %b, %Y"), resulting in the control contents being truncated by default. GetOSInfo() is currently different from GetInfo() only under MSW, but we might need to make the same distinction under OS X too, so do make this function public instead of keeping it MSW-specific.

2014-12-05 23:17 VZ, revision 78219

Remove unneeded CacheBestSize() from wxMSW wxDateTimePickerCtrl. The best size is already cached by the base class GetBestSize(), no need to do it here as well.

2014-12-05 23:15 VZ, revision 78218

Don't keep out of date column widths in generic wxDataViewCtrl. The cached widths need to be invalidated whenever an item is expanded or collapsed, whether it's done programmatically (which was already handled) or interactively by the user (which wasn't). Closes #16678.

2014-12-05 16:56 VS, revision 78217

Xcode project: src/regex must be in non-user search path Otherwise it wouldn't be included as <regex.h> and the system copy would be used. We need to always use the builtin, wxChar-aware copy.

2014-12-05 16:55 VS, revision 78216

Xcode project: src/regex must be in non-user search path Otherwise it wouldn't be included as <regex.h> and the system copy would be used. We need to always use the builtin, wxChar-aware copy.

2014-12-03 18:18 VZ, revision 78215

No real changes, just fix some typos in comments. Closes #16699.

2014-12-03 18:01 AW, revision 78214

Define wxPG toolbar event handler only if library is compiled with toolbar classes. Include wxPropertyGridManager::OnToolbarClick() code only if wxUSE_TOOLBAR is set to 1.

2014-12-03 17:59 AW, revision 78213

Restore wxPG toolbar buttons state if selecting wxPG page was unsuccessful. Toolbar button corresponding to the unsuccessfully selected page should be released and button corresponding to the old page should be pressed again.

2014-12-01 23:47 AW, revision 78212

Use wxCONTROL_FOCUSED control state flag when drawing native wxPG check box in the "modified state" under wxOSX. Generally, wxCONTROL_PRESSED control flag is used when drawing native check box (wxPGEditor_CheckBox) in "modified state" but under wxOSX this flag is equivalent to wxCONTROL_CHECKED flag and hence it is necessary to indicate this state in an alternative way. Closes #16696

2014-11-29 21:18 AW, revision 78211

Add member function to retrieve wxBoolProperty attribute. Added wxBoolProperty::DoGetAttribute virtual function.

2014-11-29 17:45 AW, revision 78210

Check if new index is in range before selecting new value in wxPGProperty::SetChoiceSelection. Closes #16697

2014-11-28 21:45 AW, revision 78209

Refresh wxPGProperty after changing its attribute. Closes #16696

2014-11-27 23:23 RD, revision 78202

Allow explicitly selecting the carbon build since it is not the default anymore.

2014-11-27 23:23 RD, revision 78201

Add gtk3 build support

2014-11-27 01:45 VZ, revision 78188

Turkish translations update from Kaya Zeren.

2014-11-26 20:16 VZ, revision 78187

German translations update from Wolfgang Stöggl. Many minor fixes and also replacements of "..." with the ellipsis Unicode character (U+2026).

2014-11-25 20:05 VS, revision 78186

Refresh PO files after accelerators changes

2014-11-25 20:05 VS, revision 78185

Improve wxAcceleratorEntry::ToString() formatting This method used the wxKeyNames[] array originally intended for parsing accelerator specification and not for human-friendly formatting. In particular, non-alphanumeric keys such as WXK_DOWN and many others were formatted using all-uppercase name, which was highly unusual and not native on any platforms (the only unaffected one was OS X). Improve the formatting by doing the following: a) use Title case for the entries; because parsing is case-insensitive, this has no effect on it; b) add display_name field for keys where the symbolic name wasn't appropriate for display and set it for some of the keys that are likely to show up in menus; c) add explanatory comments for translators

2014-11-25 20:05 VS, revision 78184

Extract translator comments into wxstd.pot Extract the commonly used TRANSLATORS: prefix into translation files, to provide some additional context where needed.

2014-11-25 20:05 VS, revision 78183

Translate menu accelerators from XRC The content of <accel> property was taken verbatim and appended to the (translated) label; this bypassed wx's internal accelerators translation mechanism, because wxMenuItem code quite reasonably assumes that the string passed to it is translated. Explicitly use SetAccel() instead, to force translation. This matters for languages such as German where e.g. Ctrl+ is translated as Strg+.

2014-11-25 20:04 VS, revision 78182

Refresh PO files after accelerators changes

2014-11-25 20:04 VS, revision 78181

Improve wxAcceleratorEntry::ToString() formatting This method used the wxKeyNames[] array originally intended for parsing accelerator specification and not for human-friendly formatting. In particular, non-alphanumeric keys such as WXK_DOWN and many others were formatted using all-uppercase name, which was highly unusual and not native on any platforms (the only unaffected one was OS X). Improve the formatting by doing the following: a) use Title case for the entries; because parsing is case-insensitive, this has no effect on it; b) add display_name field for keys where the symbolic name wasn't appropriate for display and set it for some of the keys that are likely to show up in menus; c) add explanatory comments for translators

2014-11-25 20:04 VS, revision 78180

Extract translator comments into wxstd.pot Extract the commonly used TRANSLATORS: prefix into translation files, to provide some additional context where needed.

2014-11-25 20:04 VS, revision 78179

Translate menu accelerators from XRC The content of <accel> property was taken verbatim and appended to the (translated) label; this bypassed wx's internal accelerators translation mechanism, because wxMenuItem code quite reasonably assumes that the string passed to it is translated. Explicitly use SetAccel() instead, to force translation. This matters for languages such as German where e.g. Ctrl+ is translated as Strg+.

2014-11-25 19:23 VS, revision 78178

Close NSWindows properly Don't just release the window, call the close method. This is usually the same, but in some situations, the difference (close sends NSWindowWillCloseNotification, which wx doesn't use) is significant. In particular, if the window is shown as fullscreen, OS X won't dispose of its space correctly when the window is released, but not closed first. See https://github.com/vslavik/poedit/issues/119

2014-11-25 19:23 VS, revision 78177

Close NSWindows properly Don't just release the window, call the close method. This is usually the same, but in some situations, the difference (close sends NSWindowWillCloseNotification, which wx doesn't use) is significant. In particular, if the window is shown as fullscreen, OS X won't dispose of its space correctly when the window is released, but not closed first. See https://github.com/vslavik/poedit/issues/119

2014-11-24 17:11 AW, revision 78176

Remove unused wxPG member variable.

2014-11-24 17:09 AW, revision 78175

Use Boolean variable to store Boolean values in wxPG.

2014-11-24 17:06 AW, revision 78174

Fix using compatibility flag in propgridpagestate.h header file.

2014-11-24 17:04 AW, revision 78173

Use a hash set instead of vector to hold dedicated keys in wxPG.

2014-11-24 14:45 VS, revision 78172

Skip Cocoa's options in wxCmdLineParser on OS X Skip Cocoa-specific flags used by Xcode (such as -AppleLanguages) on OS X when parsing the command line. They all take a single argument, so skip both the flag and the following value in the argv list. Also fix handling of -ApplePersistenceIgnoreState, which didn't skip the value as it should.

2014-11-24 14:45 VS, revision 78171

Skip Cocoa's options in wxCmdLineParser on OS X Skip Cocoa-specific flags used by Xcode (such as -AppleLanguages) on OS X when parsing the command line. They all take a single argument, so skip both the flag and the following value in the argv list. Also fix handling of -ApplePersistenceIgnoreState, which didn't skip the value as it should.

2014-11-22 20:12 PC, revision 78170

Remove gtk_tree_view_set_fixed_height_mode() call from AssociateModel() The check for wxDV_VARIABLE_LINE_HEIGHT is already done in Create(), and the IsVirtualListModel() check was probably an attempt to get around a performance problem (#16680), but it's not a valid criteria for changing the height mode. closes #16683

2014-11-21 18:20 PC, revision 78169

fix assert in dataview sample, closes #16679

2014-11-21 18:00 PC, revision 78168

fix "wrong type" error when using wxDataViewChoiceByIndexRenderer, closes #15955

2014-11-20 18:04 PC, revision 78167

fix crashes in wxGTK3 when running with non-X11 backend, see #16688

2014-11-20 00:25 BP, revision 78166

Backported Doxygen 1.8.8 upgrade to 3.0 branch.

2014-11-19 23:38 BP, revision 78165

Upgrade Doxygen to 1.8.8.

2014-11-19 20:00 PC, revision 78164

clarify comment

2014-11-19 19:59 PC, revision 78163

fix build when GDK_WINDOWING_X11 is not defined

2014-11-19 14:29 VZ, revision 78162

Credit Marco Trevisan for wxGTK3/Mir patches. Closes #16688.

2014-11-19 14:29 VZ, revision 78161

Don't use X11-only functions when not using X11 in wxGTK. See #16688.

2014-11-19 14:29 VZ, revision 78160

Don't crash when switching to full screen in non X11-based wxGTK. Only use internal X11 display if we're running in a such environment. See #16688.

2014-11-19 14:29 VZ, revision 78159

Don't use frame extents when not using X11 in wxGTK. See #16688.

2014-11-19 14:29 VZ, revision 78158

Don't defer wxTLW initialization in wxGTK when not using X11. See #16688.

2014-11-19 14:29 VZ, revision 78157

Provide trivial GDK_IS_X11_DISPLAY() definition for GTK+2. This will be useful for upcoming patches using it to fix problems with GTK+ 3 without breaking GTK+ 2 compilation. See #16688.

2014-11-18 23:34 AW, revision 78156

Allow using the letter 'E' (capital) as a symbol of exponent when entering floating point numbers. Currently, only the letter 'e' is accepted when editing wxPG numeric properties.

2014-11-18 17:34 AW, revision 78154

Fix adjustment of columns width in response to splitter position change in wPG. In wxPropertyGridPageState::PropagateColSizeDec recursion is replaced with iteration and there is handled PG with more then 2 columns.

2014-11-16 22:20 VZ, revision 78153

Fix wxConfig enumeration example in the documentation. Don't use undefined GetConfig() function.

2014-11-15 18:48 AW, revision 78152

Reactivate 'SetSplitterPosition' test in wxPG sample. After fixing issues with wxPG manager sizing this test is now passed.

2014-11-15 18:39 AW, revision 78151

Make more realistic estimation of the best size of wxPropertyGridManager. Current best size (especially width) of wxPropertyGrid Manager is too small. wxPG manager should be wide enough to hold wxPG with two columns and scroll bar.

2014-11-15 18:27 AW, revision 78150

Fix setting initial size of wxPropertyGridManager. wxPG manager is now created with proper size (based on its best size) even if default size is requested. (r78149 is a prerequisite for this patch.)

2014-11-15 18:14 AW, revision 78149

Fix adding/removing categorized/alphabetic mode buttons in wxPropertyGridManager. Modify wxPropertyGridManager::RecreateControls() to allow adding/removing categorized/alphabetic mode buttons to/from wxPG manager tool bar at any time (not only when creating the tool bar). Modify wxPropertyGridManager::SetExtraStyle() to fully support manipulating these buttons via wxPG_EX_MODE_BUTTONS flag.

2014-11-15 18:02 PC, revision 78148

notify all windows in capture stack about capture lost, and empty the stack

2014-11-14 19:56 PC, revision 78147

fix releasing mouse capture before showing modal dialog, see #16647

2014-11-13 02:52 VZ, revision 78146

Remove assert checking for non zero page size in wxDataViewCtrl. This assert seems to be quite useless and can be triggered if a key is (perhaps accidentally) sent to a small (e.g. not yet fully laid out) wxDataViewCtrl window.

2014-11-12 16:11 VS, revision 78145

Fix disabling wxStaticText repeatedly in wxOSX. Changes in r78108 would reset control's color to gray if it was disabled more than once in a row. Guard against this and only remember the color of an enabled control.

2014-11-12 16:10 VS, revision 78144

Fix disabling wxStaticText repeatedly in wxOSX. Changes in r78107 would reset control's color to gray if it was disabled more than once in a row. Guard against this and only remember the color of an enabled control.

2014-11-12 13:37 VZ, revision 78143

Use wxFILTER_EXCLUDE_CHAR_LIST in the sample. It makes more sense than wxFILTER_EXCLUDE_LIST with SetCharExcludes().

2014-11-12 13:37 VZ, revision 78142

Use wxFILTER_EXCLUDE_CHAR_LIST in the sample. It makes more sense than wxFILTER_EXCLUDE_LIST with SetCharExcludes().

2014-11-12 08:43 PC, revision 78141

fix creating wxFont with non-ascii name, closes #16671

2014-11-11 19:31 PC, revision 78140

fix build with old pango versions which don't define PANGO_VERSION_CHECK(), closes #16660

2014-11-11 08:59 JJ, revision 78139

Correction on commit #78110 as suggested by VZ

2014-11-11 08:50 PC, revision 78138

non-pch build fix after r78134

2014-11-11 08:46 JJ, revision 78137

Correction on commit #78099

2014-11-11 02:03 VZ, revision 78136

Add support for reading multi string values to wxRegKey. Add a wxRegKey::QueryValue() overload working with REG_MULTI_SZ values. Closes #16653.

2014-11-11 02:02 VZ, revision 78135

Free converted command lines arguments automatically in wxMSW. This makes the code slightly simpler (no more need for the scope guard) and avoids memory leaks when not using wxEntry() (but calling wxEntryStart() instead). Closes #16664.

2014-11-11 02:02 VZ, revision 78134

Add wxCursor::GetHotSpot() and implement it for wxMSW and wxGTK. Allow retrieving the coordinates of the cursor hot spot, at least for the ports for which we know how to do it. Closes #16539.

2014-11-11 02:02 VZ, revision 78133

Introduce wxCursorBase class defining common wxCursor API. This is done in preparation for adding a new wxCursor method and will allow us to define it in a single place by default instead of having to provide stubs for all ports. See #16539.

2014-11-11 02:02 VZ, revision 78132

Add RAII AutoIconInfo class wrapping ICONINFO Windows struct. This ensures that we never forget to delete the handles returned by GetIconInfo() and also centralizes the error message given if it fails in a single place.

2014-11-11 02:02 VZ, revision 78131

Do use wxUSE_STD_CONTAINERS_COMPATIBLY around code using std::vector. This was supposed to be done in r78066, but after introducing this new wxUSE_XXX symbol I forgot to actually use it in the place it was intended to be used. Fixes compilation with wxUSE_STD_DEFAULT==0 and closes #16673.

2014-11-11 02:02 VZ, revision 78130

Return correct menu pointer for wxEVT_MENU_{OPEN,CLOSE} in MDI frames. These events are supposed to carry a pointer to the menu which was opened or closed, but wxMenuEvent::GetMenu() always returned NULL for the menus opened when a child MDI frame was active, as its menu bar, containing the menu, was not searched for it. Fix this by overriding MSWFindMenuFromHMENU() at wxMDIParentFrame level, just as we already do for FindItemInMenuBar().

2014-11-11 02:02 VZ, revision 78129

Log wxMenuEvent::GetMenu() in the menu sample for wxEVT_MENU_{OPEN,CLOSE}. Show the menu associated with the event, if any, directly in the sample to make comparing the behaviour of the different ports easier.

2014-11-11 02:02 VZ, revision 78128

Update the out of date link to DebugView in logging overview. The readable link that existed before is unfortunately not available any more.

2014-11-11 02:02 VZ, revision 78127

Fix best size calculation for buttons with bitmaps in wxMSW. Add the bitmap margins to the bitmap size, not the total button size. This fixes the buttons becoming unnecessarily tall as soon as they were assigned even a tiny bitmap. Closes #16536.

2014-11-11 02:02 VZ, revision 78126

Remove outdated comment from ShowAssertDialog(). The comment didn't correspond to the code since the changes of r62842, the asserts don't result in an immediate trap now even if they happen in non-main thread.

2014-11-11 02:02 VZ, revision 78125

Make results of wxDC::DrawEllipticArc() consistent across all platforms. And also consistent with wxGraphicsContext method with the same name. Document the rules determining what is drawn. Closes #4437.

2014-11-11 02:02 VZ, revision 78124

Set the initial text value of wxSpinCtrlGeneric correctly. The text control was left empty if the string value was not specified, but it should use the numeric initial value instead in this case. This notably affected wxSpinCtrlDouble under non-GTK platforms. Closes #16621.

2014-11-11 02:02 VZ, revision 78123

Improve drawing of monochrome bitmaps with masks in wxMSW. This is a compromise solution between r78040, which handled monochrome bitmaps correctly, but broke drawing bitmaps without using their mask, and r78054 which simply reverted it: this version preserves the old behaviour when not using the mask, but draws at least the shape (if not the colour) correctly for the monochrome bitmaps. Notice that this also reverts r78039 which is not needed any more without r78040. Closes #16512.

2014-11-11 01:59 VZ, revision 78122

Fix size of the icon returned from wxFSVolume::GetIcon(). Calling SetHICON() is not enough, the icon size already needs to be set or, even better, CreateFromHICON(), which does both atomically, should be used. Closes #16672.

2014-11-11 01:59 VZ, revision 78121

Re-add wxFD_OVERWRITE_PROMPT and wxFD_FILE_MUST_EXIST to wxGenericFileDialog. Support for these styles was accidentally removed in r48733, re-add them back. Closes #16652.

2014-11-11 01:59 VZ, revision 78120

German translation fixes from Sebastian Walderich.

2014-11-11 01:59 VZ, revision 78119

Update the out of date link to DebugView in logging overview. The readable link that existed before is unfortunately not available any more.

2014-11-11 01:58 VZ, revision 78118

Fix best size calculation for buttons with bitmaps in wxMSW. Add the bitmap margins to the bitmap size, not the total button size. This fixes the buttons becoming unnecessarily tall as soon as they were assigned even a tiny bitmap. Closes #16536.

2014-11-11 01:58 VZ, revision 78117

Set the initial text value of wxSpinCtrlGeneric correctly. The text control was left empty if the string value was not specified, but it should use the numeric initial value instead in this case. This notably affected wxSpinCtrlDouble under non-GTK platforms. Closes #16621.

2014-11-11 00:48 VZ, revision 78116

Fix size of the icon returned from wxFSVolume::GetIcon(). Calling SetHICON() is not enough, the icon size already needs to be set or, even better, CreateFromHICON(), which does both atomically, should be used. Closes #16672.

2014-11-10 18:40 PC, revision 78115

avoid reconfiguring scrollbar when settings are not changing

2014-11-10 18:10 PC, revision 78114

avoid multiple emissions of the GtkAdjustment "changed" signal when configuring scrollbar

2014-11-10 17:51 PC, revision 78113

invalidate cached client size when scrollbar visibility changes

2014-11-10 17:46 AW, revision 78112

Reset current category marker if deleted wxPG property is a category property. If deleted category or its sub-category is a current category then reset current category marker. See #16617.

2014-11-10 17:41 AW, revision 78111

Invalidate wxPG property and its sub-properties names prior deferred deletion. If deleted property is a category property then all its sub-properties have to be renamed prior deleting. See #16617.

2014-11-10 10:34 JJ, revision 78110

Some implementation of find (i.e. OpenVMS(AXP)) need the != operator

2014-11-10 07:59 JJ, revision 78109

Correction for non-precomp compilation

2014-11-10 07:58 VS, revision 78108

Fix wxStaticText::Disable() to respect text color on OS X wxStaticText emulates disabled state on OS X by changing text color to light grey. When re-enabling the control, though, it always set the color to the standard text color, which broke static texts with a custom color. Fix this by keeping track of the original color and restoring it back when setEnabled:YES is called.

2014-11-10 07:57 VS, revision 78107

Fix wxStaticText::Disable() to respect text color on OS X wxStaticText emulates disabled state on OS X by changing text color to light grey. When re-enabling the control, though, it always set the color to the standard text color, which broke static texts with a custom color. Fix this by keeping track of the original color and restoring it back when setEnabled:YES is called.

2014-11-10 05:13 PC, revision 78106

fix infinite sizing loop with GTK3 when using a non-default target window, closes #16668

2014-11-08 19:17 AW, revision 78105

Remove unused wxPG member variable.

2014-11-08 19:12 AW, revision 78104

Use Boolean variable to store Boolean values.

2014-11-07 18:32 JS, revision 78103

Don't take right indent into account twice when aligning lines

2014-11-07 18:32 JS, revision 78102

Don't take right indent into account twice when aligning lines

2014-11-07 18:13 JS, revision 78101

Fix a rounding error

2014-11-07 18:12 JS, revision 78100

Fix a rounding error

2014-11-07 16:14 JJ, revision 78099

Implement wxNativeFontInfo::GetStrikethrough() for wxX11 without pango

2014-11-07 15:59 VZ, revision 78098

Use wxTB_DEFAULT_STYLE as default value for wxToolBar style. No real changes, but this is more consistent with the other controls. It also highlights the ports which use non-default style, e.g. wxQt where wxNO_BORDER should probably not be used as part of default toolbar style but rather added in the ctor implementation. Closes #16667.

2014-11-07 15:59 VZ, revision 78097

Remove wxTB_FLAT from wxTB_DEFAULT_STYLE. The actual default styles for the toolbars don't include wxTB_FLAT anywhere, so don't include it in the (currently almost unused) wxTB_DEFAULT_STYLE neither. See #16667.

2014-11-07 14:22 JJ, revision 78096

Fix for compilation of wxX11 without UTF

2014-11-07 14:17 JJ, revision 78095

Update compile support for wxX11 on OpenVMS

2014-11-07 14:08 JJ, revision 78094

Fix compilation for wxGTK1

2014-11-05 10:33 JJ, revision 78093

Update setup.h for OpenVMS

2014-11-04 23:56 AW, revision 78092

In 3.0 compatibility mode member variable holding pending delete editor objects is emulated by hash map item.

2014-11-04 20:23 AW, revision 78091

Do not mark selected wxPG property as 'being deleted'. Only unselected wxPG property can be marked as 'being deleted'. If this is done for selected wxGP property then in some circumstances it cannot be unselected and hence cannot be safely deleted. See #16617.

2014-11-04 17:21 VS, revision 78090

Fix simulated toggle in OS X wxToolBar wiht HiDPI bitmaps Use scaled size and scale factor when creating wxMemoryDC so that the modified output bitmap has same physical dimensions as the source one.

2014-11-04 17:21 VS, revision 78089

Fix simulated toggle in OS X wxToolBar wiht HiDPI bitmaps Use scaled size and scale factor when creating wxMemoryDC so that the modified output bitmap has same physical dimensions as the source one.

2014-11-02 17:28 VS, revision 78088

Fix wxToolBarBase::AdjustToolBitmapSize() for HiDPI on OS X wxOSX's wxToolBar code uses toolbar size computed by AdjustToolBitmapSize() to determine which of the builtin toolbar sizes to use. Because AdjustToolBitmapSize() returned 2x the "logical" size, it would always pick NSToolbarSizeModeRegular regardless of icon size, resulting in differently-sized toolbar on HiDPI and low-DPI screens. Use scaled size instead.

2014-11-02 17:28 VS, revision 78087

Fix wxToolBarBase::AdjustToolBitmapSize() for HiDPI on OS X wxOSX's wxToolBar code uses toolbar size computed by AdjustToolBitmapSize() to determine which of the builtin toolbar sizes to use. Because AdjustToolBitmapSize() returned 2x the "logical" size, it would always pick NSToolbarSizeModeRegular regardless of icon size, resulting in differently-sized toolbar on HiDPI and low-DPI screens. Use scaled size instead.

2014-11-01 15:00 VZ, revision 78086

Restore code for closing inherited file descriptors under non-OS X. The code for doing this was accidentally disabled in r74957, which intended to disable it for Darwin, but ended up disabling it for everything but Darwin. Reenable it for all platforms now, clearly it didn't hurt to have it enabled under Darwin, and we do need to do it, e.g. see #12636.

2014-11-01 14:56 VZ, revision 78085

Fix clearing wxCB_READONLY wxComboBox in wxGTK. wxComboBox::Clear() must call wxTextEntry::SetValue() explicitly instead of calling its Clear() which just forwards back to wxComboBox own SetValue(), which (correctly) doesn't work for read-only comboboxes when passed an empty string. Closes #16654.

2014-11-01 14:56 VZ, revision 78084

No changes, just move wxComboBox::Clear() out of line in wxGTK. Make this function non-inline to facilitate further modifications.

2014-10-31 17:04 AW, revision 78083

Fix deleting wxPG properties with sub-properties. If property contains sub-properties they should be deselected prior deleting the property. See #16617.

2014-10-31 14:19 VZ, revision 78082

Make Clear() virtual in wxItemContainer base class. This ensures that overridden wxComboBox::Clear() is called even when it's invoked via a pointer or a reference to wxItemContainer (and not just one to wxComboBox itself or its other base wxTextEntry). Closes #16654.

2014-10-30 13:56 VZ, revision 78081

Fixes to wxGA_TEXT and wxGA_PROGRESS documentation. Correct the HTML output format for wxGA_PROGRESS, it was indented incorrectly because Doxygen appears to need a blank line (i.e. end of paragraph) after a "@since". Also improve the wording of the styles descriptions a little.

2014-10-28 19:57 VZ, revision 78080

Re-add wxFD_OVERWRITE_PROMPT and wxFD_FILE_MUST_EXIST to wxGenericFileDialog. Support for these styles was accidentally removed in r48733, re-add them back. Closes #16652.

2014-10-28 09:06 JS, revision 78079

Backported wxFontDialog NSView fix r78070, fixing bug #16643

2014-10-27 21:09 VZ, revision 78078

Don't use "@overload" to document methods without parameters. Documentation generated by @overload is misleading in this case as it refers to the "different argument [the function] accepts", but there are none, the methods can be overloaded only by const modifier as well. Use \copydetails instead to reuse the original documentation, this is less confusing and arguably more useful as well.

2014-10-27 18:36 VZ, revision 78077

German translation fixes from Sebastian Walderich.

2014-10-27 18:31 VZ, revision 78076

Update mouse capture stack when showing modal dialog in wxGTK. GTKReleaseMouseAndNotify(), which is called before showing a modal dialog in wxGTK to ensure that the mouse does not remain captured by the window which will be disabled by the modal dialog soon, should update the mouse capture stack and so must call ReleaseMouse() to do it, not just DoReleaseMouse(). See #16647, #8657.

2014-10-26 12:44 VS, revision 78075

Use subtler grey for emulated toolbar toggle on OS X Use a lighter shade of gray to avoid problems with user icons and to match the look of OS X 10.10's rendering of selected toolbar items. Fixes #16645.

2014-10-26 12:44 VS, revision 78074

Use subtler grey for emulated toolbar toggle on OS X Use a lighter shade of gray to avoid problems with user icons and to match the look of OS X 10.10's rendering of selected toolbar items. Fixes #16645.

2014-10-25 20:06 PC, revision 78073

use wxOVERRIDE

2014-10-25 20:05 PC, revision 78072

backport r77741: Return the caption from wxMessageDialog::GetTitle()

2014-10-25 14:49 VS, revision 78071

Fix wxFontDialog exceptions on OS X Yosemite Opening the font dialog would result in an exception in RunMixedFontDialog: -[NSView resetFlags]: unrecognized selector sent to instance 0x6080001285c0 The code in question assumed that NSFontPanel's accessory view either didn't exist or was created by wx, and casted it to wxMacFontPanelAccView* without checking. But this assumption is no longer true on OS X 10.10, the view is apparently pre-set to some default NSView instance. Fix the code to check accessoryView's class before treating it as wxMacFontPanelAccView.

2014-10-25 14:49 VS, revision 78070

Fix wxFontDialog exceptions on OS X Yosemite Opening the font dialog would result in an exception in RunMixedFontDialog: -[NSView resetFlags]: unrecognized selector sent to instance 0x6080001285c0 The code in question assumed that NSFontPanel's accessory view either didn't exist or was created by wx, and casted it to wxMacFontPanelAccView* without checking. But this assumption is no longer true on OS X 10.10, the view is apparently pre-set to some default NSView instance. Fix the code to check accessoryView's class before treating it as wxMacFontPanelAccView.

2014-10-25 14:35 AW, revision 78069

Get wxPGProperty items to be deleted with deferral directly from the corresponding internal list of items. Don't use iterator to collect wxPGProperty items in wxPropertyGridPageState::DoClear().

2014-10-25 01:23 VZ, revision 78068

More fixes for PCH-less build after r78063. Add missing headers/forward declarations now.

2014-10-25 00:55 VZ, revision 78067

Fix typo which broke PCH-less builds in r78063.

2014-10-24 23:54 VZ, revision 78066

Add a new wxUSE_STD_CONTAINERS_COMPATIBLY option. This option, which is on by default unless the use of STL is disabled, provides better interoperability with the standard library when it can be done without breaking backwards compatibility. The first example of its use is to allow passing std::vector<> of any string compatible type to wxItemContainer::Append(), Insert() and Set(), allowing to directly initialize various wxControls deriving from it such as wxChoice, wxComboBox, wxListBox from a std::vector<> of strings.

2014-10-24 23:54 VZ, revision 78065

Work around bad wxStaticText best size calculation under wxOSX. Expand wxStaticText controls in wxBusyInfo and centre them to avoid the problem with their contents being truncated when using markup under wxOSX. This should, of course, be fixed in wxStaticText itself, and when it is, this change should be reverted. But for now this at least allows wxBusyInfo to appear correctly under OS X.

2014-10-24 23:54 VZ, revision 78064

Clip the last word of wxStaticText if it doesn't fit in wxOSX/Cocoa. Until this change the entire last word disappeared, presumably because it was wrapped to the next line, which was not shown at all. Now as much of it as fits into the available space is shown, which is not ideal, but better than before, especially if we're only a pixel or two short.

2014-10-24 23:54 VZ, revision 78063

Allow customizing wxBusyInfo appearance. Allow customizing wxBusyInfo window by passing wxBusyInfoFlags containing information about the icon, title, colours and frame transparency to use. Update the sample to show such "rich" busy info.

2014-10-24 23:54 VZ, revision 78062

Auto resize wxGenericStaticText when its label or font is changed. This makes the generic version consistent with the native control behaviour.

2014-10-24 23:54 VZ, revision 78061

Refactor: extra wxStaticText auto-resizing code from wxMSW to common. This will allow its reuse in wxGenericStaticText and maybe other ports that need it in the future.

2014-10-24 23:54 VZ, revision 78060

Slightly improve sizing of wxInfoFrame used by wxBusyInfo. Specify the margin around the text in dialog units, not pixels.

2014-10-24 23:54 VZ, revision 78059

Don't use wxRESIZE_BORDER for wxInfoFrame, used by wxBusyInfo, under wxX11. This doesn't make sense, this frame should never be resizeable, so clean up the code a little.

2014-10-24 23:54 VZ, revision 78058

Don't specify the title for wxInfoFrame used in wxBusyInfo. The title is not shown to the user anyhow because this frame doesn't have wxCAPTION style. And if it were shown, it should have been translated, but as it isn't, just remove it.

2014-10-24 23:54 VZ, revision 78057

Use its own foreground colour in wxGenericStaticText. For some reason, the control always drew itself using wxSYS_COLOUR_BTNTEXT. This is a good default, but it shouldn't ignore the explicitly set foreground colour, so use it instead.

2014-10-24 15:45 VZ, revision 78056

Avoid spurious error messages for WM_MDISETMENU under Windows XP. WM_MDISETMENU handler doesn't seem to reset the last error under Windows XP and this could result in spurious debug error messages when setting the initial menu in which case NULL is returned to indicate that there was no previous menu, but this doesn't indicate that an error occurred. Explicitly reset the last error to ERROR_SUCCESS ourselves before using WM_MDISETMENU to ensure that the last error can only be set after its return if it was really done by the code handling it, i.e. if an error really happened.

2014-10-23 15:56 VZ, revision 78055

Document wxScopedCharTypeBuffer::release(). Although this method is dangerous, it still (or, maybe, especially) needs to be documented.

2014-10-21 00:06 VZ, revision 78054

Revert "Use MaskBlt() with the correct ROP when drawing bitmaps with mask." This reverts r78040 (see #16512) as it broke the appearance of the disabled buttons in MSW toolbars as can be seen in the sample. The change itself might still be correct and could have just uncovered some other bug elsewhere, but for now still revert it just to make the toolbars usable again.

2014-10-21 00:06 VZ, revision 78053

Skip the menu events in wxFrameBase handlers. While wxFrame may process these events for its own purposes, it shouldn't prevent the user-defined fall back handlers for them (e.g. at wxApp level) from running.

2014-10-21 00:06 VZ, revision 78052

Avoid intercepting Ctrl-TAB keys in generic wxDataViewCtrl. Check for the absence of modifiers before intercepting the TAB key, we only want to do it for plain TAB or Shift-TAB but not Ctrl-TAB, for example, as this prevented the user from switching between MDI windows when focus was on wxDataViewCtrl.

2014-10-20 17:12 AW, revision 78051

Draw cursor image in wxCursorProperty using wxDC::DrawBitmap. Since monochrome images are supported by wxBitmap (under MSW) there is no longer need to draw cursor image using native Win API.

2014-10-20 17:08 VZ, revision 78050

Fix wxStringTokenizer copy ctor and assignment operator. Implement copying of wxStringTokenizer correctly: compiler-generated versions didn't work as the position of the tokenizer didn't point into the correct string after making the copy. Fix this by adjusting the position iterator to use the copy of the string. Closes #16339.

2014-10-19 21:05 VZ, revision 78049

Fix for PCH-less build after wake up changes. Include wx/msw/private.h when not using PCH to get wxZeroMemory() (this makes it unnecessary to include wx/msw/wrapwin.h as it's already included by the other header).

2014-10-19 16:16 VZ, revision 78048

Avoid spurious errors from wxFileType::GetCommand() under Windows XP too. This problem was already fixed in r77649 for Windows 7 (and hopefully all the other supported Windows versions), but it turns out that XP returns a different error when the association is not found in the registry, so the debug error message was still given under it. Fix this by checking for both ERROR_NO_ASSOCIATION and ERROR_FILE_NOT_FOUND.

2014-10-19 16:16 VZ, revision 78047

Fix handling of spurious wake ups in GetNextMessageTimeout() in wxMSW. It didn't take long to realize that changes of r78041 did break something (see #9053), as MsgWaitForMultipleObjects() can return indicating the message availability even if no message is actually available in the queue. This notably happens when the application is activated. Fix this by calling MsgWaitForMultipleObjects() in a loop until we do get a message. Notice that this only works correctly with the infinite timeout as we don't update the remaining time to wait after a spurious wake-up, but this shouldn't be a problem in practice as no such wake-ups should happen anyhow during a small timeout duration -- and nobody typically uses long ones.

2014-10-19 14:59 VZ, revision 78046

Don't leave wxSubwindows::m_ids uninitialized. Normally it's initialized by calling Create(), but don't crash deleting an invalid pointer in the dtor if Create() hadn't been called. See #16630.

2014-10-19 14:58 VZ, revision 78045

Only select the first radio button if there is one in wxMSW wxRadioBox. Don't call SetSelection(0) if the radio box is empty. See #16630.

2014-10-19 14:57 VZ, revision 78044

Don't leave wxSubwindows::m_ids uninitialized. Normally it's initialized by calling Create(), but don't crash deleting an invalid pointer in the dtor if Create() hadn't been called. See #16630.

2014-10-19 14:57 VZ, revision 78043

Only select the first radio button if there is one in wxMSW wxRadioBox. Don't call SetSelection(0) if the radio box is empty. See #16630.

2014-10-19 14:57 VZ, revision 78042

Update the bundled Scintilla version to 3.4.1. There are relatively few changes, see Scintilla changelog at http://www.scintilla.org/ScintillaHistory.html Closes #16182.

2014-10-19 14:57 VZ, revision 78041

Make main thread wake up code more efficient and less error-prone in wxMSW. Use a kernel event object to signal the thread wake up instead of sending WM_NULL to one of its windows. This is simpler as we don't need to look for any windows and doesn't suffer from the problem of overflowing the Windows message queue if we do it too many times as signalling an already signalled event simply doesn't do anything. Closes #9053.

2014-10-19 14:57 VZ, revision 78040

Use MaskBlt() with the correct ROP when drawing bitmaps with mask. We need to AND the destination with the mask first and then XOR it with the bitmap data to achieve the correct results. Closes #16512.

2014-10-19 14:57 VZ, revision 78039

Don't replace bitmap transparency with black when converting to icon in wxMSW. This was a wrong workaround for incorrect drawing of the icons elsewhere and isn't needed if the destination is first AND-ed with the mask, as it should be. See #16512.

2014-10-19 14:56 VZ, revision 78038

Fix creating wxBitmap from monochrome icon or cursor in wxMSW. Handle the "AND" and "XOR" masks inside monochrome icons/cursors correctly instead of simply copying the monochrome data which didn't work at all. See #16512.

2014-10-19 14:56 VZ, revision 78037

Fix memory leak in richtext sample. Destroy the children of wxRichTextFieldTypeCompositeTest when updating it instead of just clearing the list and leaking the objects in it. Closes #14324.

2014-10-19 14:56 VZ, revision 78036

Handle taskbar button recreation better in wxMSW. Store the various parameters in wxTaskBarButton itself and reapply them when the button is (re)created. This fixes problems with getting the "taskbar button created" message twice, e.g. because Explorer was restarted, or getting it too late, as now wxTaskBarButton can be configured both before and after receiving this message. Closes #16566.

2014-10-19 14:56 VZ, revision 78035

Work around unavailability of std::exception_ptr with some g++ versions. g++ headers only provide std::exception_ptr when __GCC_ATOMIC_INT_LOCK_FREE is 2, indicating that atomic operations on int are available, so check for this before setting HAS_EXCEPTION_PTR as in some MinGW builds (TDM gcc 4.7) this symbol is not defined as 2. Closes #16634.

2014-10-19 14:56 VZ, revision 78034

Use TLW parent for wxMessageDialog in all ports. This avoids problems with deleting child windows which are parents of wxMessageDialog before the dialog itself is destroyed and was already done in wxGTK, but not in wxMSW nor wxOSX. Do it in all ports now by calling GetParentForModalDialog() from wxMessageDialogBase ctor itself instead of depending on the port-specific wxMessageDialog to do it. Closes #16631.

2014-10-19 02:59 PC, revision 78033

Fix ClientToScreen()/ScreenToClient() when used immediately after window creation. And whenever window does not have an up-to-date GTK size allocation. Closes #16061

2014-10-18 14:00 AW, revision 78032

Add drawing cursor images for wxCursorProperty under wxGTK. Closes #16637

2014-10-18 11:37 AW, revision 78031

Fix deleting pending editor controls if wxPG is destructed from within its own event handler. If wxPG dtor is invoked from within event handler then deleting its pending editor controls should be delegated to the global idle event handler.

2014-10-17 00:49 AW, revision 78030

Fix deleting editor controls associated with wxPG properties from within event handler. Editor controls (and their event handlers) deleted from within wxPG event handler shouldn't by deleted in global idle event handler but only in local wxPG event handler because global idle events can be generated also by calling e.g. wxYield when wxPG is not in the real idle state. Closes #16617

2014-10-17 00:33 AW, revision 78029

Prevent renaming already renamed wxPG property waiting for deferred deletion. Name of the property to be deleted with delay is changed to the some meaningless name in order to avoid conflict with other active properties. It is enough to do this only once. See #16617

2014-10-17 00:27 AW, revision 78028

Accept only real idle events in wxPropertyGrid::OnIdle() Fake idle events generated e.g. by calling wxYield from within the event handler should be skipped to avoid problems. See #16617

2014-10-16 15:33 VZ, revision 78027

Only link webview library with libwebkitgtk in wxGTK, not the core one. Add EXTRALIBS_WEBVIEW similar to the existing EXTRALIBS_MEDIA and such and set it in configure instead of adding libwebkitgtk and dependent libraries directly to GUI_TK_LIBRARY. This ensure that the core library doesn't have any dependencies on libwebkitgtk which it doesn't need. Closes #16624.

2014-10-16 15:33 VZ, revision 78026

Only link webview library with libwebkitgtk in wxGTK, not the core one. Add EXTRALIBS_WEBVIEW similar to the existing EXTRALIBS_MEDIA and such and set it in configure instead of adding libwebkitgtk and dependent libraries directly to GUI_TK_LIBRARY. This ensure that the core library doesn't have any dependencies on libwebkitgtk which it doesn't need. Closes #16624.

2014-10-16 12:13 JS, revision 78025

Don't calculate refresh optimizations if we're not going to use them

2014-10-15 18:56 PC, revision 78024

update code to match 3.0 branch after r78023

2014-10-15 18:53 PC, revision 78023

fix crash in wxGCDC::DrawEllipticArc() after r76954, closes #16623

2014-10-14 21:36 VZ, revision 78022

Disable surrogate-related unit test for MSW. This test can't work when the in-memory representation is UTF-16, as we can't convert surrogates to anything else in this case. This fixes the unit tests broken since r76622, see #16298.

2014-10-14 21:36 VZ, revision 78021

Don't end converting prematurely on encountering consecutive NULs. Don't stop converting subsequent chunks just because the length of one of them was 0: this can happen if the first character of a string is a NUL or if there are two (or more) NULs in it later. Simply remove the check for this and continue as usual even in this case. Also add a unit test verifying that we do translate NULs in input into NULs in output. Closes #16620.

2014-10-14 21:23 VZ, revision 78020

Fix typo in a comment in wxSpinCtrlGenericBase::Create(). s/satisfy/specify/ to give some sense to this comment.

2014-10-14 15:42 VZ, revision 78019

Spanish translations update from Miguel Giménez.

2014-10-14 15:40 VZ, revision 78018

Spanish translations update from Miguel Giménez.

2014-10-14 10:53 VS, revision 78017

Add support for template NSImages to wxBitmap wxBitmap uses CGImage instead of NSImage internally and the conversion looses NSImage metadata. In particular, it looses the "template" attribute, which is set for files ending with "Template" and loaded trough wxArtProvider. This change makes it easy to use template images with native controls such as the toolbar.

2014-10-14 10:53 VS, revision 78016

Add support for template NSImages to wxBitmap wxBitmap uses CGImage instead of NSImage internally and the conversion looses NSImage metadata. In particular, it looses the "template" attribute, which is set for files ending with "Template" and loaded trough wxArtProvider. This change makes it easy to use template images with native controls such as the toolbar.

2014-10-13 14:08 VZ, revision 78015

Define unambiguous Is{List,Text}Empty() in wxOwnerDrawnComboBox. Like in wxComboBox itself, it's useful to provide these methods to avoid problems with ambiguous IsEmpty(), inherited from both wxTextEntry and wxItemContainer. Closes #16618.

2014-10-13 09:19 AW, revision 78014

Fix clearing wxPG Properties deleted immediately in wxPropertyGridPageState::DoClear() should be first removed from the lists of pending deletions. Closes #16617

2014-10-12 22:48 VZ, revision 78013

Fix calling wxFileHistory::Load() more than once. Don't add all the items in the history to the menu again, remove the old ones if we had already added them. Closes #16588.

2014-10-12 22:48 VZ, revision 78012

Fix vertical cell alignment in wxDataViewCtrl in wxGTK. Pass the alignment used when creating the column to the renderer. Closes #16035.

2014-10-12 22:48 VZ, revision 78011

Update MSVS 2010+ remarks in wxMSW installation notes. Document wx_local.props instead of the old and not existing any more wx_vcN_local.props. Also mention that wx/msw/setup.h can be linked to wx/msw/setup0.h instead of being a copy of it. Closes #16597.

2014-10-12 22:48 VZ, revision 78010

Add support for 'z' size format specifier. Assume that non-MSVC compilers support it directly and use 'I' for MSVC. Closes #16596.

2014-10-12 22:48 VZ, revision 78009

Fall back to executable file name in wxApp::GetAppName(). This is especially useful when wxWidgets is used as part of another library and is not initialized with the real argc/argv containing the application name. Closes #16615.

2014-10-11 18:30 VZ, revision 77994

Add wxART_FULL_SCREEN icon. Use stock GTK+ icon in wxGTK and Tango icon elsewhere. See #2662.

2014-10-11 18:30 VZ, revision 77993

Fix resource compiler include path for Borland. Explicitly include $(BCCDIR)/include/windows/sdk directory in the resource compiler options, as it needs it to find windows.h.

2014-10-11 18:29 VZ, revision 77992

Compilation fix for Borland overload selection bug. Avoid the following bogus compiler error: Error E2015 ..\..\src\common\filename.cpp 2589: Ambiguity between 'wxFileName::Exists(int) const at ..\..\src\common\filename.cpp:777' and 'wxFileName::Exists(const wxString &,int) at ..\..\src\common\filename.cpp:790' in function wxFileName::SetPermissions(int) by using an unambiguous overload. See #16592.

2014-10-11 18:29 VZ, revision 77991

Compilation fix for Borland compiler bug with ternary operator. Don't use ?: operator with references, Borland wrongly deduces the common type as being an object in this case, so use pointers instead and dereference later. See #16592.

2014-10-11 18:29 VZ, revision 77990

Update release instructions to mention tagging the release. Also remove the reference to the non-existing "next section" and a couple of other minor changes.

2014-10-11 17:48 VZ, revision 77989

Mention Borland C++ fixes in the change log.

2014-10-11 17:48 VZ, revision 77988

Fix resource compiler include path for Borland. Explicitly include $(BCCDIR)/include/windows/sdk directory in the resource compiler options, as it needs it to find windows.h.

2014-10-11 17:47 VZ, revision 77987

Compilation fix for Borland overload selection bug. Avoid the following bogus compiler error: Error E2015 ..\..\src\common\filename.cpp 2589: Ambiguity between 'wxFileName::Exists(int) const at ..\..\src\common\filename.cpp:777' and 'wxFileName::Exists(const wxString &,int) at ..\..\src\common\filename.cpp:790' in function wxFileName::SetPermissions(int) by using an unambiguous overload. See #16592.

2014-10-11 17:47 VZ, revision 77986

Compilation fix for Borland compiler bug with ternary operator. Don't use ?: operator with references, Borland wrongly deduces the common type as being an object in this case, so use pointers instead and dereference later. See #16592.

2014-10-09 17:37 VZ, revision 77985

Fix excessive height of wxSlider with labels but no ticks in wxMSW. We shouldn't add the label height to the control best height as the labels are positioned at the same vertical level as the main part of the control. See #16604.

2014-10-09 17:36 VZ, revision 77984

Fix excessive height of wxSlider with labels but no ticks in wxMSW. We shouldn't add the label height to the control best height as the labels are positioned at the same vertical level as the main part of the control. See #16604.

2014-10-09 06:44 MAR, revision 77983

Fix invalid listctrl imagelist assert in wxQT This reverts the bug introduced in r77935, now the list control sample works again.

2014-10-09 06:23 MAR, revision 77982

Support frameless taskbarless dialogs in wxQt * Moved frameless hint to window, checking border * Removed duplicate code in wxFrame and asserts that were preventing AUI to work Thanks to @seandepagnier for the original patch

2014-10-08 12:29 JS, revision 77981

Corrections to HasCharacterAttributes, HasParagraphAttributes EditProperties functions don't try to change read-only content Page up/down behaviour now takes into account margins and scale Transparency and y poition corrections to field labels

2014-10-08 12:28 JS, revision 77980

Page up/down behaviour now takes into account margins and scale GetTextForRange takes composites into account properly HasCharacterAttributes correction

2014-10-06 23:50 VZ, revision 77965

Check that there are no uncommitted changes in the release script. Any such changes wouldn't be included in the release, which is probably unexpected.

2014-10-06 23:50 VZ, revision 77964

Check that there are no uncommitted changes in the release script. Any such changes wouldn't be included in the release, which is probably unexpected.

2014-10-06 23:48 VZ, revision 77963

Really fix the 3.0.2 archives SHA1 sums. This corresponds to the archives with the correct configure version in them, finally.

2014-10-06 19:33 VZ, revision 77962

Rebake and rerun autoconf after 3.0.3 version update. Don't forget to update configure, this time.

2014-10-06 19:32 VZ, revision 77961

Updated SHA1 sums for the final 3.0.2 release archives. The sums have changed after updating "configure" included in the release.

2014-10-06 14:35 VZ, revision 77960

Fix several rounding problems with float values in wxPropertyGrid. See also r85980 in the trunk. Closes #15625.

2014-10-06 14:35 VZ, revision 77959

Fix several problems with number formatting in wxNumberFormatter. We shouldn't add thousands separators nor remove trailing zeros for the numbers in scientific format. Also avoid "-0" as output. See #15625. [This is the backport of r75560 from trunk.]

2014-10-06 14:35 VZ, revision 77958

Update version to 3.0.3. Run misc/scripts/inc_release, update version.bkl and changes.txt manually.

2014-10-06 14:35 VZ, revision 77957

Updated the released files SHA1 sums for 3.0.2. Also update the version and remove the bit about binaries being provided for the first time -- this is not true any more.

2014-10-05 16:26 VZ, revision 77956

Tag 3.0.2 release.

2014-10-05 16:18 VZ, revision 77955

Update README and announcement for 3.0.2 release. Fill in the release date (2014-10-06) and update the changes list.

2014-10-03 16:38 DS, revision 77954

Fix crash with newer OS X builds running on older. Use built-in zlib sources instead of system zlib. Backport of trunk r76382, r76383, and r76385. Closes #16192.

2014-10-03 15:43 DS, revision 77953

Regenerate Xcode projects. Update the Xcode projects to include xh_simplebook.cpp, as well as wxWebView related sources in the iPhone project.

2014-10-03 03:52 VZ, revision 77952

Add stubs for wxDisplayImplX11 functions appearing in the ABI. Add the stubs after the real functions were moved into wxDisplayImplGTK in r76365. This is necessary because wxDisplayImplX11 is wrongly exported from the DLL and so its virtual methods are part of the ABI.

2014-10-03 03:52 VZ, revision 77951

Undo parameter renaming in DoDrawRotatedText(). This doesn't make any difference, of course, but results in a warning from the ABI compliance checker tool, so undo this part of the changes of r74584.

2014-10-03 03:52 VZ, revision 77950

Send events when toggling wxPropertyGrid nodes from keyboard. Closes #15899. [This is the backport of r75665 from trunk.]

2014-10-03 03:52 VZ, revision 77949

Fix wrong wxStatusBar height in wxMSW in some circumstances. Creating the status bar before the menu bar but associating it with the frame after creating the menu bar resulted in a status bar of completely wrong height. Fix this by enforcing the default height on the status bar when it's attached to the frame. Closes #10956. [This is the backport of r76417 from trunk.]

2014-10-03 03:52 VZ, revision 77948

Allow using ESC as accelerator in wxMSW again. This ended up being broken due to an interplay between different unrelated changes (at least r15120 and r41134) which were both correct, but didn't work well together and resulted in not only preventing IsDialogMessage() from handling ESC, but also our own accelerator tables. Fix this by doing the check for IsDialogMessage() brokenness in MSWProcessMessage() itself, just before calling it, instead of doing it in MSWShouldPreProcessMessage() which is (and must be) called before MSWTranslateMessage() which checks for accelerators using ESC. Closes #3813. [This is the backport of r77071 from trunk.]

2014-10-03 03:52 VZ, revision 77947

Fix handling of bitmaps with alpha channel in wxMSW wxImageList. Don't use mask and alpha together, this results in visual artefacts and masks are unnecessary with RGBA bitmaps anyhow. The only potentially problematic remaining case is mixing bitmaps with alpha and mask inside the same image list (as we need to indicate whether we use the mask or not when creating it), but this should probably be rare and in the meanwhile we can at least RGBA bitmaps with image lists, which includes doing this implicitly when they are used as button bitmaps. Also refactor wxBitmap code to extract part of CopyFromIconOrCursor() to allow reusing it in the newly added MSWUpdateAlpha(). See #11476. [This is the backport of r75567 from trunk.]

2014-10-03 03:52 VZ, revision 77946

Fix generic wxSearchCtrl size/layout code. Override DoGetBestClientSize() instead of DoGetBestSize(), as we're really computing just the size of our contents and like this we don't need to hard code platform-dependent border sizes in this control itself. Also use the client size in LayoutControls() for the same reason. This also makes it unnecessary to pass it the width and height as it can find them on its own. And x and y were never used in the first place, so remove them too. Finally, center the bitmaps vertically. Closes #16422. [This is the backport of r77083 from trunk.]

2014-10-03 03:51 VZ, revision 77945

Fix changing the label of a submenu in wxMSW. Use position, not the ID, to find the native menu items to allow the code in wxMenuItem::SetItemLabel() and DoSetBitmap() to also work with submenus and not just the normal items. Closes #16246. [This is the backport of r76676 from trunk.]

2014-10-03 01:49 VZ, revision 77944

Don't export private wxDisplayImplX11 class. This class is only used internally and doesn't need to be exported. In addition to being unnecessary, this also resulted in ABI compatibility check errors after changes to this class in 3.0 branch, so avoid such problems in the future.

2014-10-02 16:35 VZ, revision 77943

Fix wxMSW build in UTF-8 build. Need an explicit cast to convert the buffer returned by wxString::t_str() to a pointer in this case.

2014-10-02 16:35 VZ, revision 77942

Fix wxMSW build in UTF-8 build. Need an explicit cast to convert the buffer returned by wxString::t_str() to a pointer in this case.

2014-10-02 16:35 VZ, revision 77941

Avoid selecting all rows up to UINT_MAX in generic wxDataViewCtrl. Shift clicking in a control with multiple selections without a previous current row attempted to select all rows from the current one up to UINT_MAX which resulted in a program freezing (and probably running out of memory in 64 bit builds). Fix this by explicitly checking for the absence of the current item. Closes #16582.

2014-10-02 12:36 VS, revision 77940

Fix warning when compiling against OS X 10.10 SDK. Something broke NSApp compatibility object in 10.10 and its setDelegate: expects NSFileManagerDelegate, not NSApplicationDelegate, and the compiler warns about. Use the equivalent [NSApplication sharedApplication] object to fix this. Also cast appcontroller to the expected type, because passing untyped object to setDelegate: yields a warning as well.

2014-10-02 12:36 VS, revision 77939

Fix warning when compiling against OS X 10.10 SDK. Something broke NSApp compatibility object in 10.10 and its setDelegate: expects NSFileManagerDelegate, not NSApplicationDelegate, and the compiler warns about. Use the equivalent [NSApplication sharedApplication] object to fix this. Also cast appcontroller to the expected type, because passing untyped object to setDelegate: yields a warning as well.

2014-09-29 19:32 PC, revision 77938

avoid Gtk-WARNING about negative allocation size with GTK3, closes #16563

2014-09-29 06:26 MAR, revision 77937

Allow setting font and brush in DC when the qt painter is not active in wxQT, thanks @seandpagnier

2014-09-29 06:23 MAR, revision 77936

Fix listctrl base window pointer in wxQT, thanks @seandpagnier

2014-09-29 06:21 MAR, revision 77935

Improve specific listctrl wxQT, thanks @seandpagnier

2014-09-29 06:18 MAR, revision 77934

Remove redundant __WXQT__ define, thanks @seandpagnier

2014-09-29 06:16 MAR, revision 77933

Implement readonly dcscreen for wxQT, thanks @seandpagnier

2014-09-29 06:14 MAR, revision 77932

Copy pixmap to match others ctors in wxQT, thanks @seandpagnier This should fix a double free crash

2014-09-29 06:11 MAR, revision 77931

Correct window transparency calculation in wxQT, thanks @seandpagnier

2014-09-29 06:10 MAR, revision 77930

Add inverted flag support to slider in wxQT, thanks @seandpagnier

2014-09-29 06:08 MAR, revision 77929

Improve wx->qt filter mapping logic in wxQT, thanks @seandpagnier

2014-09-29 06:03 MAR, revision 77928

Improve slider implementation in wxQT, thanks @seandpagnier

2014-09-29 06:01 MAR, revision 77927

Block qt signals when manually setting value to avoid emitting an event in wxQT, thanks @seandpagnier

2014-09-29 05:58 MAR, revision 77926

Fix case where widgets may get hidden by qt, thanks @seandpagnier

2014-09-29 05:56 MAR, revision 77925

Enable mouse tracking in wxQT, thanks @seandepagnier This is needed so qt mouse events are triggered without a button pressed. Note that I modified this to prevent a crash if m_qtWindow was null (reproducible with controls sample and the original patch from Sean)

2014-09-29 05:50 MAR, revision 77924

Implement abstract class for wxuniversal in wxQT, thanks @seandepagnier

2014-09-29 05:49 MAR, revision 77923

Remove unused event table in wxQT, thanks @seandepagnier

2014-09-29 05:43 MAR, revision 77922

Support native font info in wxQT, thanks @seandepagnier

2014-09-29 05:20 MAR, revision 77921

Implement more statusbar routines in wxQT, thanks @seandepagnier

2014-09-29 05:18 MAR, revision 77920

Fix wxControl rtti info in wxQT, thanks @seandepagnier

2014-09-29 05:17 MAR, revision 77919

Fix elliptic arc drawing for complete circle in wxQT, thanks @seandepagnier

2014-09-29 05:16 MAR, revision 77918

Discard repeated keyup events in wxQT, thanks @seandepagnier

2014-09-29 05:12 MAR, revision 77917

Allow SetFont to be called before Create in wxQT, thanks @seandepagnier

2014-09-29 05:06 MAR, revision 77916

Correctly handle default position values of -1 in wxQT, thanks @seandepagnier

2014-09-29 05:04 MAR, revision 77915

Allow NULL width and/or height pointer parameters in wxQT, thanks @seandepagnier

2014-09-29 05:01 MAR, revision 77914

Fix frame client size in wxQT, thanks @seandepagnier Compute frame size subtracting statusbar, and handle NULL status bar

2014-09-29 04:59 MAR, revision 77913

Fix issues with dashes in wxQT, thanks @seandepagnier

2014-09-29 04:58 MAR, revision 77912

Handle drawing lines correctly in wxQT, thanks @seandepagnier

2014-09-29 04:55 MAR, revision 77911

Improve wxQT cursor implementation, thanks @seandepagnier

2014-09-28 17:14 VZ, revision 77910

Remove obsolete toolkits mentions from configure. Cocoa, MGL and PM are not supported any more.

2014-09-28 17:14 VZ, revision 77909

Regenerate configure after power sample addition to configure.in. This should have been part of 77511, see #16413.

2014-09-28 01:29 VZ, revision 77908

Don't define wxSelectionStore::NO_SELECTION inline. This results in link errors under Unix for some reason.

2014-09-27 22:51 VZ, revision 77907

Don't leak memory when receiving TaskbarButtonCreated messages. It is possible to receive more than one TaskbarButtonCreated message for the same window, so at the very least don't leak memory if this happens. We really ought to notify the application to allow it to reinitialize the taskbar button in this case though. See #16566.

2014-09-27 22:46 VZ, revision 77906

Centre columns contents vertically in dataview sample. If we specify the horizontal alignment, we also need to specify the vertical alignment as otherwise the right-aligned columns would be also top-aligned, looking out of kilter with the other columns which are centered by default. Closes #16559.

2014-09-27 22:46 VZ, revision 77905

Use wxSelectionStore in wxDataViewCtrl generic implementation. This makes the code (slightly) shorter and more clear and is more efficient as selecting all items in wxDataViewCtrl is now a O(1) operation instead of being O(N), where N is the number of items -- and the latter could take quite a long time (and consume non-negligible amount of memory) for large N. Increase the size of the virtual list control from 1000 to 10000000 in the sample to show this.

2014-09-27 22:46 VZ, revision 77904

Handle multiple item insertion and deletion in wxSelectionStore. Rename the existing but not implemented and never used OnItemAdd() method to OnItemsInserted() and add OnItemsDeleted(), which is more efficient than OnItemDelete() when many items are being removed from the control at once. This is not used yet, but will be used in wxDataViewCtrl soon and maybe in the other controls later.

2014-09-27 22:46 VZ, revision 77903

Add wxSelectionStore::IsEmpty() helper. Just a simple and potentially (although not right now) more efficient equivalent to GetSelectedCount() == 0.

2014-09-27 22:46 VZ, revision 77902

Add possibility to iterate over all selected items in wxSelectionStore. This is necessary for retrieving all the selected items at once: while doing this is not recommended for a control with a potentially very large number of items, it must be possible to allow using wxSelectionStore for wxDataViewCtrl implementation as wxDataViewCtrl must implement its GetSelections() method.

2014-09-27 22:46 VZ, revision 77901

Simplify row selection function in the generic wxDataViewCtrl. No real changes, just don't make SelectRows() more complicated than necessary: it is always called with its arguments in order, so it doesn't need to reorder them and it is never called to deselect the items.

2014-09-27 22:46 VZ, revision 77900

Avoid selecting all rows up to UINT_MAX in generic wxDataViewCtrl. Shift clicking in a control with multiple selections without a previous current row attempted to select all rows from the current one up to UINT_MAX which resulted in a program freezing (and probably running out of memory in 64 bit builds). Fix this by explicitly checking for the absence of the current item. Closes #16582.

2014-09-27 19:26 VZ, revision 77899

Don't add DST offset when converting to local time zone. Local time zone already logically includes DST, even if its offset doesn't account for it (because the offset depends on the date, so it can't be part of TZ itself), so don't add it again when converting to/from it. Closes #16585.

2014-09-27 19:25 VZ, revision 77898

Don't add DST offset when converting to local time zone. Local time zone already logically includes DST, even if its offset doesn't account for it (because the offset depends on the date, so it can't be part of TZ itself), so don't add it again when converting to/from it. Closes #16585.

2014-09-27 18:15 VZ, revision 77897

Revert "Skip mouse button release events in wxGenericListCtrl." This reverts r76825 as it is not necessary any longer, the fix in the previous commit takes care of this problem more generally. See #16365.

2014-09-27 18:15 VZ, revision 77896

Don't prevent the other button release handlers from running in wxGTK. There doesn't seem to be any advantage in doing this, but it can result in problems see #16055. So just always let the other handlers for this event execute as well, even if we did process it.

2014-09-27 18:14 VZ, revision 77895

Revert "Skip mouse button release events in wxGenericTreeCtrl." This reverts r76093 as it broke label editing in the control. See #16055, closes #16573.

2014-09-27 18:14 VZ, revision 77894

Recognize Intel compiler as MSVC one under Windows in the build options. The two compilers are binary compatible and by pretending that Intel compiler is the same as MSVC, we allow using ICC to build applications using DLLs built with MSVC. Closes #9437. (this is a backport of r76425 from trunk).

2014-09-27 18:12 VZ, revision 77893

Revert "Skip mouse button release events in wxGenericListCtrl." This reverts r76824 as it is not necessary any longer, the fix in the previous commit takes care of this problem more generally. See #16365.

2014-09-27 18:12 VZ, revision 77892

Don't prevent the other button release handlers from running in wxGTK. There doesn't seem to be any advantage in doing this, but it can result in problems see #16055. So just always let the other handlers for this event execute as well, even if we did process it.

2014-09-27 18:12 VZ, revision 77891

Revert "Skip mouse button release events in wxGenericTreeCtrl." This reverts r76094 as it broke label editing in the control. See #16055, closes #16573.

2014-09-27 18:12 VZ, revision 77890

Avoid calling SetSize() from wxCompositeWindow::Create() under wxGTK. This was unexpected and resulted in a crash in the case of wxDatePickerCtrl. And while this particular crash could be fixed just by checking for the pointers validity in the overridden wxDatePickerCtrl::SetSize(), it seems better to avoid such unexpected calls to SetSize(), especially as they only happen under wxGTK, which calls SetLayoutDirection(wxLayout_Default) from its wxWindow::Create(), and so wouldn't be found by any amount of testing under other platforms. Closes #16589.

2014-09-26 16:42 VS, revision 77889

Fix handling of MSWWindowProc return value for menu events

2014-09-25 19:29 AW, revision 77888

In wxPropertyGridPageState use Boolean member variables to store Boolean values.

2014-09-25 19:22 AW, revision 77887

Fix saving edited property value when wxPG property is in 'invalid value' state. When wxPGProperty is loosing focus in 'invalid value' state its pending value should be stored before resetting property to 'normal' state because this operation (wxPG::OnValidationFailureReset) also resets pending value. Closes #16587

2014-09-25 18:10 VS, revision 77886

Don't break other toolbars with wxToolBar::OSXSetSelectableTools() wxOSX's implementation used a shared global delegate for all toolbars, which is not only highly unusual, but broke with code that modified the delegate. Specifically, wxPreferencesEditor's window uses OSXSetSelectableTools() to make its toolbar selectable. Because the delegate was shared, all toolbars in the application would start behaving as selectable as soon as the user opened preferences (even after the preferences window was closed). Don't share the delegate. Create a unique copy and store it in wxNSToolbar instance. This isn't particularly elegant solution, but it has the advantage of being binary compatible and simple.

2014-09-25 18:10 VS, revision 77885

Don't break other toolbars with wxToolBar::OSXSetSelectableTools() wxOSX's implementation used a shared global delegate for all toolbars, which is not only highly unusual, but broke with code that modified the delegate. Specifically, wxPreferencesEditor's window uses OSXSetSelectableTools() to make its toolbar selectable. Because the delegate was shared, all toolbars in the application would start behaving as selectable as soon as the user opened preferences (even after the preferences window was closed). Don't share the delegate. Create a unique copy and store it in wxNSToolbar instance. This isn't particularly elegant solution, but it has the advantage of being binary compatible and simple.

2014-09-25 14:29 VS, revision 77884

Make toggle toolbar button emulation on OS X nicer Actually use gray background behind toggled icon. Remove the ugly black frame. Increase rounded rectangle's radius so that it is (barely) visible that the rectangle is rounded. Previously, the code used wxLIGHT_GREY by mistake, which is the same color as the toolbar already uses, so toggled items were rendered with the same background as untoggled, only with an ugly black rectangle around them.

2014-09-25 14:29 VS, revision 77883

Make toggle toolbar button emulation on OS X nicer Actually use gray background behind toggled icon. Remove the ugly black frame. Increase rounded rectangle's radius so that it is (barely) visible that the rectangle is rounded. Previously, the code used wxLIGHT_GREY by mistake, which is the same color as the toolbar already uses, so toggled items were rendered with the same background as untoggled, only with an ugly black rectangle around them.

2014-09-24 16:55 VZ, revision 77882

Fix compilation of generic renderer DrawGauge() in non-PCH build. Include "wx/msw/wrapwin.h" explicitly to get the declaration of MulDiv() needed since the changes of r77748. Closes #16577.

2014-09-24 14:59 JS, revision 77881

Fixes for visibility, GetVisibleLineForCaretPosition, and bitmap drawing slowness

2014-09-24 14:52 JS, revision 77880

Improved search text control height and position on Windows. Was previously much too tall (regression from 3.0).

2014-09-24 14:48 JS, revision 77879

Corrected border size for wxBORDER_THEME

2014-09-24 14:48 JS, revision 77878

Corrected border size for wxBORDER_THEME

2014-09-24 05:39 PC, revision 77877

avoid duplicate initialization and warnings about initialization order

2014-09-24 04:04 RD, revision 77876

Add cairo_image_surface_get_[width|height] to the wxCairo dynamic importer

2014-09-24 04:03 RD, revision 77875

Add cairo_image_surface_get_[width|height] to the wxCairo dynamic importer

2014-09-23 19:45 VZ, revision 77874

Detabify the new wxX11 clipboard sources. No changes, just whitespace cleanup.

2014-09-23 19:45 VZ, revision 77873

Avoid deprecated wxPen/wxBrush/wxFont API in wxX11 code. Also simplify the code by relying on implicit constructors of wxPen and wxBrush from wxColour.

2014-09-23 19:45 VZ, revision 77872

Avoid signed/unsigned comparison warnings. Also declare the variable only used inside the loop in the loop statement itself.

2014-09-23 19:44 VZ, revision 77871

Remove unused TRACE_CLIPBOARD variable from wxX11 wxClipboard code. wxLogTrace() calls using this apparently were removed, so remove the trace mask as well to avoid "unused variable" warnings about it.

2014-09-23 19:44 VZ, revision 77870

Remove trivial difference with master before merge. Somehow an empty line got removed in the AUI sample, restore it.

2014-09-23 19:44 VZ, revision 77869
  • D /wxWidgets/trunk/src/univ/.textctrl.cpp.swp

Remove accidentally committed swap file.

2014-09-23 19:44 VZ, revision 77868

Initialize the member at first, make sure it would not cause segementation fault on the platform that not define wxHAS_RAW_BITMAP, the true init and assign function called within it

2014-09-23 19:44 VZ, revision 77867

remove these codes. The code could not work correctly under x11. Redesigning

2014-09-23 19:44 VZ, revision 77866

no changes, add more specific description of these tests.

2014-09-23 19:44 VZ, revision 77865

store the raw data in bitmap to m_buffer that in wxCairoBitmapData

2014-09-23 19:44 VZ, revision 77864

merge to independent preprocessor to one check.

2014-09-23 19:44 VZ, revision 77863

let wxCairoContext could create cairo context correctly under x11 in this constructor

2014-09-23 19:44 VZ, revision 77862

This statement that will cause segmentation fault before. Now it ok and enable it

2014-09-23 19:44 VZ, revision 77861

remove unnecessary Clear() and wrong delete

2014-09-23 19:44 VZ, revision 77860

use wxCharTypeBuffer replace unsigned char pointer

2014-09-23 19:44 VZ, revision 77859

delete variable on stack is wrong, remove it

2014-09-23 19:44 VZ, revision 77858

remove unnessary internal variables, parameters; use wxVector replace c++ array; enable implemented function parameter

2014-09-23 19:44 VZ, revision 77857

adjust codes according to comments of Catalin

2014-09-23 19:44 VZ, revision 77856

add return to a case statment, make sure it is not fall through to other statment

2014-09-23 19:44 VZ, revision 77855

add WXX11 check. make sure only reposition scrollbar under x11

2014-09-23 19:44 VZ, revision 77854

use cairo implement rotated text

2014-09-23 19:44 VZ, revision 77853

make x11 dc could get cairo context, so the graphic module could use in x11. This use cairo xlib backend.

2014-09-23 19:44 VZ, revision 77852

fix complilation error: narrowing conversions in xbm files under wxX11. For discussion, please see ticket 12575

2014-09-23 19:43 VZ, revision 77851

update wxBrush and wxPen style in x11/dcclient.cpp

2014-09-23 19:43 VZ, revision 77850

wxSTC need to reposition the scrollbar when recive size change event.

2014-09-23 19:43 VZ, revision 77849

change the size of checkbox and radiobutton, the 14*14 is most common used size

2014-09-23 19:43 VZ, revision 77848

Rewrite the wxX11 cliboard

2014-09-23 19:43 VZ, revision 77847

x11 alrady support GetUnicodeKey() by last commit, remove these check

2014-09-23 19:43 VZ, revision 77846

make wxKeyEvent could get unicode key under x11, add a x11 keysym--unicode char map tab

2014-09-23 19:43 VZ, revision 77845

improve the commit according the comments of Catalin

2014-09-23 19:43 VZ, revision 77844

we must store the to be focused window before we kill focus on a window

2014-09-23 19:43 VZ, revision 77843

Remove the dead code that copied from gtk1 port. And initial implementation of x11 clipboard support. It only support text for now

2014-09-23 19:43 VZ, revision 77842

enable wxNEEDS_UTF8_FOR_TEXT_DATAOBJ flag for x11 TextDataObject, and add implementation of GetAllFormat function

2014-09-23 19:43 VZ, revision 77841

Should not send event again when mouse release.

2014-09-23 19:43 VZ, revision 77840

input handler should coreesponding the widget instance, wxListBox and wxCheckListBox has its own input handler, so create it differenctly

2014-09-23 19:43 VZ, revision 77839

refine the condition check and correct a check condition

2014-09-23 19:43 VZ, revision 77838

wxX11 could not get UnicodeKey yet, not wxUniversal. And use AND instead OR. otherwise the check not work.

2014-09-23 19:43 VZ, revision 77837

add wxYield to make sure all event was executed.

2014-09-23 19:43 VZ, revision 77836

Modifiers down should not generate wxEVT_CHAR event, and reset keyboardState when recieve modifiers up.

2014-09-23 19:43 VZ, revision 77835

refine the implementation of SetFocus, clean up unused static variables

2014-09-23 19:42 VZ, revision 77834

about focused window, replace static variables implementation by DoFindFocus

2014-09-23 19:42 VZ, revision 77833

wxX11 return keycode by GetKeyCode directly, not support GetUnicodeKey yet

2014-09-23 19:42 VZ, revision 77832

add wxYield() after SetFocus, make sure the all event will be executed.

2014-09-23 19:42 VZ, revision 77831

replace DoSetValue by ChangeValue, which do not send event too, and consistent with docs.

2014-09-23 19:42 VZ, revision 77830

completely disable the style in wxChoice constructor in wxUniv is wrong

2014-09-23 19:42 VZ, revision 77829

call DoSetValue directly will allow us not send event.

2014-09-23 19:42 VZ, revision 77828

wxComboCtrl::Clear() will call wxComboCtrl::SetValue(), but wxItemContainer::Clear() will call it too. So no need to call wxComboCtrl::Clear() here

2014-09-23 19:42 VZ, revision 77827

disable the unit test under wxUniv too. wxGrid implementation may has bug that work with simulator

2014-09-23 19:42 VZ, revision 77826

add GetLabel/SetLabel implementation to wxWindowX11, the function just store the label string, but do nothing with it

2014-09-23 19:42 VZ, revision 77825

reenable this tests under wxUniv/x11 port. EventPropagationTestCase::MenuEvent cause the problem, not these. MenuEvent will be fixed later

2014-09-23 19:42 VZ, revision 77824

check the return value of DoInsert and DoAppend, if failed, return NULL immediately

2014-09-23 19:42 VZ, revision 77823

refine the wxEVT_TEXT_MAXLEN event handle implementation

2014-09-23 19:42 VZ, revision 77822

add check, if insert item failed, then return null

2014-09-23 19:42 VZ, revision 77821

adjust the implementation about max length limitation according review comments

2014-09-23 19:42 VZ, revision 77820

modify the listbasetest.(10,5) is not a correct position in wxUniv/x11 listbase test. (10, 10) could work both on wxUniv/x11 and other ports(already tested)

2014-09-23 19:42 VZ, revision 77819

add maxline restriction in single line mode textCtrl. let textctrl will fire wxEVT_TEXT_MAXLEN and not recive the chars when the text length beyond the maxlength

2014-09-23 19:42 VZ, revision 77818

set enc to wxUnusedVar in unicode mode, remove the old ugly code

2014-09-23 19:42 VZ, revision 77817

in unicode, we did not need the font encoding parameter

2014-09-23 19:41 VZ, revision 77816

adjust code to apply the wx coding guidelines

2014-09-23 19:41 VZ, revision 77815

free the data in deconstructor that created in constructor

2014-09-23 19:41 VZ, revision 77814

the font data have to stroe in m_nativeFontInfo, otherwise the constructor that use wxNavtiveFontInfo as parameter could not retrive the data in it.

2014-09-23 19:41 VZ, revision 77813

Add get/set strikeline support to wxFont/x11.

2014-09-23 19:41 VZ, revision 77812

make wxPalette under x11 could store/get uchar RGB value in palette and also could get the color number in palette.

2014-09-23 19:41 VZ, revision 77811

Make sure the behaviour of slider in wxUniv is consistent with other ports, left to min, right to max

2014-09-23 19:41 VZ, revision 77810

Make the comment more accurate, and the SetFocus is comment before, this is just restore it

2014-09-23 19:41 VZ, revision 77809

treat -1 as the last position in wxTextCtrl::SetInsertionPoint

2014-09-23 19:41 VZ, revision 77808

Make slider thumb could moving when use mouse drag it, and also set the slider value according to the thumb position

2014-09-23 19:41 VZ, revision 77807

Mouse capture data should only release when mouse release. And also make sure the data will delete in desconstructor

2014-09-23 19:41 VZ, revision 77806

Add wxEVT_SLIDER support to wxSlider under wxUniv

2014-09-23 19:41 VZ, revision 77805

add wxYield() to make sure the former event will executed done

2014-09-23 19:41 VZ, revision 77804

In wxUniv x11 port. Should not set focus to popup control

2014-09-23 19:41 VZ, revision 77803

after analisys the behaviour of treectrl in GTK and Qt, right arrow should not move down. Expand the current item will be fine

2014-09-23 19:41 VZ, revision 77802

after reset the m_current(focused item) in ClearFocusedItem(), the test could pass under wxUniv. Due to wxGTK and wxOSX use it in same way. So remove the check in test

2014-09-23 19:41 VZ, revision 77801

ClearFocusedItem should reset the selected item

2014-09-23 19:41 VZ, revision 77800

add wxYield() after SetFocus(), set focus event needs to be processed before the control can accept input

2014-09-23 19:41 VZ, revision 77799

add a check, make sure some action key could generate wxEVT_TEXT event. That is needed in some control, such as wxSpinCtrl

2014-09-23 19:40 VZ, revision 77798

When append menu with titlt, the menu should set the title

2014-09-23 19:40 VZ, revision 77797

revised wxRadioButton draw function

2014-09-23 19:40 VZ, revision 77796

rewrite the radio button draw function under gtk theme

2014-09-23 19:40 VZ, revision 77795

Fix the position calculating of insert a radio menu item

2014-09-23 19:40 VZ, revision 77794

make sure the first item of a radio group is checked by default

2014-09-23 19:40 VZ, revision 77793

use DoGetValue() in parent class will be enough, and add readonly support to SetValue()

2014-09-23 19:40 VZ, revision 77792

wxListBox in wxUniv need to overwrite DoListHistTest function, otherwise Listbox::HitTest will call DoListHitTest in wx/listbox.h, which will always return wxNOT_FOUND

2014-09-23 19:40 VZ, revision 77791

if call SetSelection by wxNOT_FOUND in listbox of wxUniv, just deselect all

2014-09-23 19:40 VZ, revision 77790

When call EnsureVisible in wxUniv, make sure reset visible lines range correctly.

2014-09-23 19:40 VZ, revision 77789

Adjust code, to consistent with the coding style

2014-09-23 19:40 VZ, revision 77788

wxCheckListBox must clear the object that created in parent class

2014-09-23 19:40 VZ, revision 77787

Add GetBitmap support to wxButton in wxUniv

2014-09-23 19:40 VZ, revision 77786

If string are empty, DoGetTextExtent should not return descent by a random value

2014-09-23 19:40 VZ, revision 77785

These test will cause test_gui segmentation fault, disable for now.

2014-09-23 19:40 VZ, revision 77784

Enable these wxRegion constructor for x11 port

2014-09-23 19:40 VZ, revision 77783

The unit test will use WX_ASSERT_FAILS_WITH_ASSERT to check DoSetRegion(test/geometry/region.cpp:101) eventually, and the macro could handle exception, not true or false. Change it consistent with other port

2014-09-23 19:40 VZ, revision 77782

Adjust the bitmapButton size according the bitmap size when set bitmap to BitmapButton in wxUniv port

2014-09-23 19:39 VZ, revision 77781

wxColurRefData in x11 did not overwrite CreateRef function, so it should not use AllocExclusive(), use UnRef() instead, just like InitRGBA() function in wxGTK port did

2014-09-23 19:39 VZ, revision 77780

wxUniv not support unicode yet

2014-09-23 19:39 VZ, revision 77779

Add more evidential comments, adjust code to follow coding style

2014-09-23 19:39 VZ, revision 77778

Fix the prepocessor directive, from __WXOSX_COCOA__ to __WXOSX__

2014-09-23 19:39 VZ, revision 77777

Make wxSlider behaviours in wxUniv same as other ports, and generate proper wxScrollEvent

2014-09-23 19:39 VZ, revision 77776

Add wxEVT_SET_FOCUS and wxEVT_KILL_FOCUS event to wxX11

2014-09-23 19:39 VZ, revision 77775

wxX11 use XColor directly, so wxX11 does not support alpha at all currently

2014-09-23 19:39 VZ, revision 77774

GetLabel should return the original label that with mnemonics, the original label stored in wxControlBase m_labelOrig, get it by wxControlBase::GetLabel()

2014-09-23 19:39 VZ, revision 77773

Fix `Error: Failed to initialize GUI: no built-in themes found` when run gui and load theme, by add WX_USE_THEME in the place that create them object

2014-09-23 19:39 VZ, revision 77772

Adjust comments

2014-09-23 19:39 VZ, revision 77771

Fix code input mistakes and type convertion

2014-09-23 19:39 VZ, revision 77770

Remove the conditional preprocessor directive around wx/stockitem.h, the head file not cause any problem, revert the mistake that I made in 2e2b1313d97ea1c79a396333f40872157fd629d4

2014-09-23 19:39 VZ, revision 77769

Solve textctrl handle char type event twice error, correct the insertion point calculation

2014-09-23 19:39 VZ, revision 77768

as convention, if a text range is (x, -1), it means from x to the end, so if `to` was -1, set it to the last position

2014-09-23 19:39 VZ, revision 77767

in wxUniv, non-editable textctrl must be set focus, so that could get input value

2014-09-23 19:39 VZ, revision 77766

in wxGTK, wxOSX/Cocoa, plus wxUniv, GetNumberOfLines() always returns the number of logical, not physical, lines. See #12366, maybe they did not test wxUniv at that time.

2014-09-23 19:39 VZ, revision 77765

wxUniv focus on wx11 port, so modified unv/theme.h, make GTK theme as the default theme

2014-09-23 19:39 VZ, revision 77764

add if preprocessor directive, if wxUniv build with MSW, include wx/stockitem.h, others are not. with x11 and this head file will cause error

2014-09-23 19:39 VZ, revision 77763

Add wx/stockitem.h to univ/button.cpp and univ/tglbtn.cpp, to fix wxUniv MSW complitaion error

2014-09-23 19:38 VZ, revision 77762

Click scrollbar will cause recapture mouse twice error, add check sentence before capture and release mouse in HandleMouse()

2014-09-23 19:38 VZ, revision 77761

Release the mouse and capture data at the end of the function. This was not always done before and it was wrong because other event such as mouse left up will not release mouse

2014-09-23 19:38 VZ, revision 77760

wxX11 wxFont miss the wxFont (const wxString &nativeInfoString) ctor, it will cause build tests failed. Added and fixed

2014-09-23 19:38 VZ, revision 77759

Refactor: create src/univ/anybutton.cpp. Extract and pull the common functions from wxButton and wxToggleButton to wxAnyButton in wxUniv too. Also make wxToggleButton inherit from wxToggleButtonBase correctly

2014-09-23 18:37 PC, revision 77758

cairo_image_surface_get_{width,height} have been available in cairo since version 1.0

2014-09-21 13:51 VZ, revision 77757

Fix wxCompositeWindow compilation after the latest change. SetSize() doesn't have any dependent parameters so call it via an explicit "this->" to make it work with standard conforming compilers (and not MSVC).

2014-09-21 03:41 VZ, revision 77756

Update layout of wxCompositeWindow on layout direction change. The children layout will almost always depend on the layout direction, so redo it when the latter changes. In particular, this fixes changing the layout of wxSpinCtrlDouble under MSW. See #11583.

2014-09-21 03:41 VZ, revision 77755

Fix setting layout direction for wxSpinCtrl in wxMSW. Position the spin control components (the button and the text) correctly for the current layout. Also update the layout of the text explicitly. See #11583.

2014-09-21 03:41 VZ, revision 77754

Fix setting layout direction for wxComboBox in wxMSW. The EDIT control used by the native combobox is different from normal EDIT controls and has to be handled specially. We also need to explicitly forward WS_EX_LAYOUTRTL to the dropdown window as it doesn't inherit it from the combobox itself automatically. See #11583.

2014-09-21 03:41 VZ, revision 77753

Don't leak global objects in Direct2D code. Ensure that all globals are freed on library shutdown by using a module just to perform this cleanup.

2014-09-21 03:41 VZ, revision 77752

Don't call CoInitializeEx() from Direct2D code. This is unnecessary, COM is already initialized on the application startup and Direct2D can't be used before that anyhow. This also fixes lack of matching CoUninitialize() call.

2014-09-21 00:12 VZ, revision 77751

Document wxWindow::HitTest(). This is not a very useful method, but by providing at least some documentation for it, we prevent it from inheriting the docs for the next method, which have nothing to do with it.

2014-09-21 00:07 VZ, revision 77750

Fix double release in wxGLCanvas code. The change in r77701 was partially wrong, we shouldn't release Objective-C object if initializing it failed. See #16555.

2014-09-21 00:07 VZ, revision 77749

Avoid integer overflow/wraparound in wxString::Mid(). Don't compare nLength with "nFirst + nCount" as this could wrap around. Compare nCount with maximal allowed count, after ensuring that nFirst itself is valid first, instead. Closes #16572.

2014-09-21 00:07 VZ, revision 77748

Use wxMulDivInt32() instead of multiplying and dividing ints with doubles. This is mostly done to avoid warnings about converting the result of multiplying and dividing an int by doubles back to int, but is also more correct as wxMulDivInt32() rounds the result correctly instead of truncating the fractional part, and is also a tiny bit more efficient under MSW where the native ::MulDiv() is available.

2014-09-21 00:07 VZ, revision 77747

Make wxTextCtrlOleCallback destructor virtual to avoid g++ warnings. This class doesn't really need a virtual dtor as it's never used polymorphically, but add it to avoid g++ warnings about it.

2014-09-21 00:07 VZ, revision 77746

Fix harmless g++ warning about "using NULL in arithmetic". ::SetThreadExecutionState() returns a DWORD, which is not a pointer, so compare its return value with 0, not NULL.

2014-09-21 00:07 VZ, revision 77745

Don't use wxMSW wxAppProgressIndicator if wxUSE_TASKBARBUTTON==0. This class requires wxTaskBarButton to be really implemented, so there is no need to even define the MSW-specific version of it if wxUSE_TASKBARBUTTON is 0 anyhow. This fixes a compilation problem with wxUSE_TASKBARBUTTON==0 but, more importantly, just makes more sense.

2014-09-21 00:07 VZ, revision 77744

Show the message of unexpected message boxes in wxTestingModalHook. This is more informative than showing just the title and we can do it for the message boxes and it's worth handling them specially just because they are so common.

2014-09-21 00:07 VZ, revision 77743

Allow customizing unexpected dialogs description in wxTestingModalHook. Extract creation of the message describing an unexpected dialog in a separate virtual method in order to allow customizing it, notably in order to add more useful description of custom application dialogs.

2014-09-21 00:07 VZ, revision 77742

Mention the title of the unexpected dialog in wxTestingModalHook. It's not very helpful to just say that an unexpected dialog was shown, using its title provides at least some hint as to what dialog it was.

2014-09-21 00:07 VZ, revision 77741

Return the caption from wxMessageDialog::GetTitle(). It was unexpected that wxMessageDialog::GetTitle() returned empty string even when non-empty caption, which is just another word for title, was specified. Implement GetTitle() as synonym for GetCaption() and also provide SetTitle() for consistency.

2014-09-21 00:06 VZ, revision 77740

Fix double release in wxGLCanvas code. The change in r77699 was partially wrong, we shouldn't release Objective-C object if initializing it failed. See #16555.

2014-09-20 21:57 AW, revision 77739

Use wxPropertyGrid::HasInternalFlag() function to check internal flags.

2014-09-20 21:46 AW, revision 77738

Fix manual selection of custom colour item for wxColourProperty and wxSystemColourProperty in wxPG. If keyword 'custom' is entered into the edit field of wxColourProperty or wxSystemColourProperty (with wxPGEditor_ComboBox) then dialog box to query for custom colour should be invoked. Afterwards, when control value is updated, its selection index should be also updated respectively.

2014-09-20 01:56 RD, revision 77737

Oops, a '{' got lost somewhere from the last commit...

2014-09-20 01:44 RD, revision 77736

Oops, a '{' got lost somewhere from the last commit...

2014-09-20 01:28 RD, revision 77735

I'm not totally sure when they were added, but the cairo_image_surface_get_[width|height] functions are not available in cairo 1.10.2.

2014-09-20 01:21 RD, revision 77734

I'm not totally sure when they were added, but the cairo_image_surface_get_[width|height] functions are not available in cairo 1.10.2.

2014-09-19 13:51 VZ, revision 77725

Avoid integer overflow/wraparound in wxString::Mid(). Don't compare nLength with "nFirst + nCount" as this could wrap around. Compare nCount with maximal allowed count, after ensuring that nFirst itself is valid first, instead. Closes #16572.

2014-09-18 16:52 JJ, revision 77724

Synchronizing setup.h_vms with setup.h.in

2014-09-18 16:40 JS, revision 77723

Implemented vertical image alignment.

2014-09-18 16:39 JS, revision 77722

Implemented vertical image alignment.

2014-09-18 02:03 VZ, revision 77721

Document wxGraphicsContext::CreateBitmapFromNativeBitmap() ownership rules. Mention that it takes ownership of the native bitmap passed to it.

2014-09-18 02:02 VZ, revision 77720

Fix crash when creating wxGraphicsBitmap from cairo_surface_t. Initialize m_buffer to avoid crashes when deleting it in Cairo-based wxGraphicsContext implementation for bitmaps created from the native ones. Don't leave the bitmap size uninitialized neither, this might not result in crashes, but is definitely wrong as well.

2014-09-18 02:01 VZ, revision 77719

Document wxGraphicsContext::CreateBitmapFromNativeBitmap() ownership rules. Mention that it takes ownership of the native bitmap passed to it.

2014-09-18 02:01 VZ, revision 77718

Fix crash when creating wxGraphicsBitmap from cairo_surface_t. Initialize m_buffer to avoid crashes when deleting it in Cairo-based wxGraphicsContext implementation for bitmaps created from the native ones. Don't leave the bitmap size uninitialized neither, this might not result in crashes, but is definitely wrong as well.

2014-09-17 12:15 VZ, revision 77717

Update information about wxOSX/Cocoa in the platform overview. Mention that OS X 10.7 is now required and that Cocoa is preferred to Carbon now.

2014-09-16 18:05 SC, revision 77716

backport, fixes #16564

2014-09-16 18:04 SC, revision 77715

fixing #16564, partly reverting r76426

2014-09-16 14:50 PMO, revision 77714

Re-added wxQtPointer smart pointer for easier memory management.

2014-09-15 19:27 VZ, revision 77711

Don't define wxUSE_GRAPHICS_GDIPLUS as 1 by default. Define it and wxUSE_GRAPHICS_DIRECT2D, when it's supposed to be enabled, as wxUSE_GRAPHICS_CONTEXT instead. This ensures they are set to 0 if the use of wxGraphicsContext is entirely disabled, as is the case when using MinGW under MSW by default for example. Closes #16558.

2014-09-15 19:27 VZ, revision 77710

Remove wrong freshness check from build/update-setup-h script. This didn't work correctly if a header was updated from its corresponding setup0.h first as it was then newer than include/wx/msw/setup_inc.h even though it had been older than it at the start of the script execution. Just keep things simple and get rid of the check.

2014-09-15 18:01 VZ, revision 77709

Get rid of IsOk() accessor in Cairo implementation code. This was quite useless as m_ok flag was public anyhow, just use it directly. Incidentally closes #16560.

2014-09-15 14:04 VZ, revision 77708

Portuguese translations update from @mansil. Closes PR #16.

2014-09-15 01:58 VZ, revision 77707

Always include wxGA_PROGRESS in wxGauge styles enumeration. It can still be used even if it's not available under the current platform.

2014-09-15 01:58 VZ, revision 77706

Make wxAppProgressIndicator actually usable. First of all, do define it under non-MSW platforms. Second, don't crash in it when running under XP where wxTaskBarButton is not available. Also add IsAvailable() method to check for its availability explicitly and add a demonstration of this class to the dialogs sample.

2014-09-15 01:58 VZ, revision 77705

Use factory function for wxTaskBarButton creation. This allows to encapsulate checking for errors, which should be handled when using this class as task bar buttons API is not available under Windows XP.

2014-09-15 01:58 VZ, revision 77704

Revert "Avoid generating wxEVT_MENU_OPEN and CLOSE for disabled menus in wxMSW." The check for top level menus being disabled added in r77657 is broken as it's used, with the expectedly bad consequences, for non top level menus as well, as can be seen by opening any submenu, so revert it. See #2168.

2014-09-15 01:58 VZ, revision 77703

Don't crash under XP in the taskbar button sample. Refuse to run if the taskbar button API is not available. This wouldn't make much sense anyhow and is the simplest thing to do.

2014-09-15 01:58 VZ, revision 77702

Update progress immediately in the taskbar button sample. Handle all scroll events instead of just wxEVT_SCROLL_CHANGED which was probably done accidentally.

2014-09-15 01:08 VZ, revision 77701

Request hardware accelerated GL under OS X only if it's available. Otherwise wxGLCanvas creation just fails completely when it isn't, e.g. when running inside a VM. Closes #16555.

2014-09-15 01:08 VZ, revision 77700

Blind fix to wxiOS build after strike-through fixes. This should correct build breakage caused by r77695.

2014-09-15 01:08 VZ, revision 77699

Request hardware accelerated GL under OS X only if it's available. Otherwise wxGLCanvas creation just fails completely when it isn't, e.g. when running inside a VM. Closes #16555.

2014-09-15 01:08 VZ, revision 77698

fixes 64 bit to 32 warnings, see #16329

2014-09-14 20:11 SC, revision 77697

fixing memory leak

2014-09-14 19:07 AW, revision 77696

Use special code to identify custom colour in wxPG. There is already defined a special code (wxPG_COLOUR_CUSTOM) to identify custom colour in wxColourProperty and wxSystemColourProperty but in practice item representing this colour is identified either by position (it is assumed it as always last item) or by fixed text label. This inconsistency makes the code unclear and can lead to problems (see workaround r76627). Now, only wxPG_COLOUR_CUSTOM code is used to identify custom colour and hence "custom colour" item doesn't need to be the last item in the collection and doesn't need to have a fixed text label (like "Custom").

2014-09-14 13:17 VZ, revision 77695

Fixes to wxFont strike-through support in wxOSX. Don't create strike-through fonts by default. Also add support for strike-through in wxCarbon.

2014-09-14 03:00 VZ, revision 77694

Return to using GDI+ by default in wxGraphicsContext under MSW. Unfortunately Direct2D-based wxGraphicsRenderer is not ready for use yet as it doesn't draw lines with width 0, which are commonly used. The code using it in GetDefaultRenderer() will need to be restored when this bug is fixed.

2014-09-14 03:00 VZ, revision 77693

Fix memory leak when creating new Direct2D-based wxGraphicsContext. ID2D1DCRenderTarget was leaked every time a wxD2DContext was created because a raw pointer was given to wxCOMPtr<> which didn't take its ownership. Use wxCOMPtr instead of the raw pointer to fix this and also fix more rare but still possible leak in case of error. This fixes out of memory errors and crashes in the drawing sample after a few seconds of constant window resizing/repainting.

2014-09-14 03:00 VZ, revision 77692

Allow selecting wxGraphicsRenderer to use in the drawing sample. In particular, allow switching between GDI+ and Direct2D under Windows, which is very convenient for comparing the rendering results. This can also be useful when using Cairo.

2014-09-14 03:00 VZ, revision 77691

Split screen selection in a separate menu in the drawing sample. No real changes, just make the "File" menu (which was also renamed to "Drawing" as it has nothing to do with files) less long by splitting off the screen selection in a separate menu.

2014-09-14 02:59 VZ, revision 77690

Avoid creating wxGraphicsContext in the drawing sample unnecessarily. This is not only wasteful, but creating a Direct2D surface associated with a wxDC makes it impossible to paint on the DC using GDI functions, so this completely broke the initial display in the sample.

2014-09-14 02:59 VZ, revision 77689

Fix wxCALL_FOR_EACH() to work with more than 2 arguments with MSVC. Due to a bug in MSVC handling of __VA_ARGS__ (see https://connect.microsoft.com/VisualStudio/feedback/details/380090/variadic-macro-replacement) wxCALL_FOR_EACH() didn't work correctly as long as more than two arguments were used with it. Work around the bug by protecting __VA_ARGS__ from being incorrectly passed as a single token to the macro being called on every step: this was already done for wxCALL_FOR_EACH itself with wxCALL_FOR_EACH_, but we need to do it for all the helper macros too. Also add a test checking that this does, actually, work.

2014-09-14 02:59 VZ, revision 77688

Fix crash in wxMDIParentFrame dtor after taskbar branch merge. wxFrame::m_taskBarButton needs to be initialized in its Init(), not Create(), which is not necessarily used by the derived classes such as wxMDIParentFrame, resulting in a guaranteed crash when deleting an uninitialized pointer later in wxFrame dtor.

2014-09-13 22:45 AW, revision 77687

Fix vertical positioning of text field in the combo box editor associated with wxPG property under wxMSW. Vertical position of text field in wxOwnerDrawnComboBox control (instantiated at property selection) doesn't need any special adjustment. Closes #16556.

2014-09-12 13:31 VZ, revision 77686

Accept "default" as font family value in XRC. Map it to wxFONTFAMILY_DEFAULT, just as we do for all other wxFontFamily enum elements. Closes #16549.

2014-09-12 13:31 VZ, revision 77685

Accept "default" as font family value in XRC. Map it to wxFONTFAMILY_DEFAULT, just as we do for all other wxFontFamily enum elements. Closes #16549.

2014-09-11 22:33 VZ, revision 77684

Simplify Direct2D DLLs loading code a little. Bail out earlier: if d2d1.dll is not there, it doesn't make sense to try to load dwrite.dll. Also use Load() return value directly instead of ignoring it and then checking for IsLoaded().

2014-09-11 22:33 VZ, revision 77683

Suppress error messages when checking for Direct2D availability. Use wxDL_QUIET flag when loading Direct2D DLLs as we're prepared to handle their absence and don't need to show error messages if they're not available.

2014-09-11 19:05 VZ, revision 77682

Implement strike-through support in wxFont in wxOSX. Implement support for this attribute in wxOSX too. Closes #16547.

2014-09-11 19:05 VZ, revision 77681

Fix error message about ChangeWindowMessageFilter() on startup under XP. Use wxDynamicLibrary::RawGetSymbol() (from inside wxDL_INIT_FUNC() macro) instead of GetSymbol() to avoid the error message which was given every time a new wxFrame was created after wxTaskBarButton changes under XP as ChangeWindowMessageFilter() function is not available in it. Also simplify the code a little and don't make pfnChangeWindowMessageFilter static, we don't need to keep it around.

2014-09-11 13:37 VZ, revision 77680

Fix Direct2D code compilation in non-Unicode build. DirectWrite GDI interop only works with Unicode LOGFONTW, so use it explicitly instead of LOGFONT which is LOGFONTA in non-Unicode build.

2014-09-10 18:52 VZ, revision 77669

Fix wxUSE_GRAPHICS_DIRECT2D definition in setup.h files. Define it in wx/msw/setup_inc.h and not in wx/msw/setup0.h itself to ensure that it survives the regeneration of this file using build/update-setup-h. Also only set wxUSE_GRAPHICS_DIRECT2D to 1 for VC10+ and not VC9 as the latter lacks Direct2D header in its default SDK version. Finally also update comments to explain the various settings more clearly and remove outdated information (wxGraphicsContext is not experimental any more).

2014-09-10 18:52 VZ, revision 77668

Convert Direct2D source file to Unix EOL format. No other changes.

2014-09-10 18:52 VZ, revision 77667

Use ID2D1Bitmap instead of ID2D1Image. ID2D1Image is not defined in v7.0A platform SDK used by VC10 and doesn't seem to be needed here as we are only working with ID2D1Bitmaps (deriving from ID2D1Image) anyhow.

2014-09-10 18:52 VZ, revision 77666

Don't use enum name for qualifying enum element. This is a non-standard MSVC extension and can't be done in standard C++.

2014-09-10 18:52 VZ, revision 77665

Remove PI definition from Direct2D wxGraphicsContext code. The line defining PI didn't compile with VC10 because atan(1) is ambiguous (argument could be float, double or long double). And it was not needed anyhow as PI was not used anywhere (and if it were, we should be just using M_PI from wx/math.h anyhow), so simply remove it.

2014-09-10 18:52 VZ, revision 77664

Fix build with g++ 3.4 with -pedantic[-errors] option. The use of variadic macros results in a warning/error if -pedantic[-errors] is used when compiling C++98 code as they are only formally part of C99 (or C++11). With g++ 4 and later, this can be avoided by using -Wno-variadic-macros option, but it doesn't exist in g++ 3, so a nasty workaround in the header itself is required: mark it as system header in order to fix compilation.

2014-09-10 18:52 VZ, revision 77663

Don't skip wxHtmlContainerCell layout, even when the width is 0. This ensures that wxHtmlContainerCell height is set to some reasonable value instead of 0 and fixes infinite loop which occurred in some circumstances in wxGTL when trying to allocate size for wxHtmlListBox as it oscillated between having a vertical scrollbar with bigger width and not having it with smaller width. The latter was wrong as decreasing the width to 0 didn't really obviate the need for the vertical scrollbar and was just an artefact due to not setting wxHtmlContainerCell height at all in this case.

2014-09-10 18:52 VZ, revision 77662

Add wxUIActionSimulator::Select(). Add a helper to select an item in a wxChoice, wxComboBox, wxListBox or similar.

2014-09-10 18:51 VZ, revision 77661

Fix crash in unit tests after TextEntryTestCase::Editable(). The class TextEventHandler added in r77057 (see #3901) setup an event handler which wasn't disconnected when the handler was destroyed, which resulted in a crash later as the window it was connected to continued to exist and generate wxEVT_TEXT events.

2014-09-10 18:51 VZ, revision 77660

Set layout direction for all wxCompositeWindow parts. Forward SetLayoutDirection() to both the base class and all the children, just as we already do for the other setters. See #11583.

2014-09-10 18:51 VZ, revision 77659

Simplify and make more flexible wxCompositeWindow::SetForAllParts(). Allow calling any function compatible with the argument type instead of requiring "bool" return type and the exact match of the parameter type, which forced us to define a separate DoSetForAllParts() helper. See #11583.

2014-09-10 18:51 VZ, revision 77658

Fix setting RTL direction for wxTextCtrl without wxTE_RICH in wxMSW. Plain EDIT text controls don't support WS_EX_LAYOUTRTL, use WS_EX_RTLREADING for them instead. See #11583.

2014-09-10 18:51 VZ, revision 77657

Avoid generating wxEVT_MENU_OPEN and CLOSE for disabled menus in wxMSW. Check if a top level menu is disabled and consume WM_[UN]INITMENUPOPUP that Windows still generates for it when it's clicked for some reason. Closes #2168.

2014-09-10 18:51 VZ, revision 77656

Add a generic wxExpectAny helper class for GUI testing. This is similar to the existing wxExpectModal<wxMessageDialog>, but can be used to dismiss any dialog for which it's just enough to press some button, not just wxMessageDialog. It's convenient to use it as wxTEST_DIALOG(wxYield(), wxExpectAny(wxID_OK)); if some custom dialog which can be safely dismissed is expected.

2014-09-10 18:51 VZ, revision 77655

Make skipping event in wxEVT_PAINT handler work correctly in wxMSW. This should result in the default handler still being called and painting the window, but the latter didn't happen because we called ::EndPaint(), and so validated the window and reset its update region, before passing WM_PAINT to DefWindowProc() in this case. Closes #16381.

2014-09-10 18:51 VZ, revision 77654

Work around buggy printer drivers not returning correct DEVMODE size. Apparently at least one printer driver doesn't report the memory needed by its own DEVMODE struct correctly, resulting in a crash due to a buffer overflow when printing using it. Work around this by allocating slightly more memory than what we really need. Closes #16274.

2014-09-10 18:51 VZ, revision 77653

Implement wxListBox::EnsureVisible() for wxMSW. Manually check whether the item is currently visible and scroll the listbox just enough if it isn't. Closes #3224.

2014-09-10 18:51 VZ, revision 77652

Delete pending objects before destroying wxConfig during cleanup. This allows these objects to save their state in wxConfig, as e.g. top level windows using wxPersistenceManager do. Closes #16397.

2014-09-10 18:51 VZ, revision 77651

No changes, just remove a left-over "#if 0". Remove OSX-specific #if which was not used any more.

2014-09-10 18:51 VZ, revision 77650

Allow recursive calls to wxEventLoop::Yield(). There doesn't seem to be any reason to forbid them and this change allows wxExecute() without wxEXEC_NOEVENTS to work without assertion failures when called from inside wxYield().

2014-09-10 18:51 VZ, revision 77649

Fix AssocQueryString() error reporting in wxMSW. Don't report ERROR_NO_ASSOCIATION as an (unexpected) error, it is perfectly normal to get it if a command is not defined for the given extension.

2014-09-10 18:50 VZ, revision 77648

No changes, just use wxEventLoop::IsYielding() accessor. Use IsYielding() instead of testing m_isInsideYield directly.

2014-09-10 17:59 BP, revision 77647

Add wxUSE_TASKBARBUTTON under MSW port. Taskbar button features are only available under MSW port. Author: Chaobin Zhang

2014-09-10 16:59 BP, revision 77646

Rebaked with new wxTaskBarButton and taskbarbutton sample.

2014-09-10 16:58 BP, revision 77645

Rename appprog.{h,cpp} to appprogress.{h.cpp}.

2014-09-10 16:58 BP, revision 77644

wxUSE_TASKBARBUTTON should be disabled on wince.

2014-09-10 16:58 BP, revision 77643

Update docs of taskbar button and wxAppProgressIndicator.

2014-09-10 16:58 BP, revision 77642

Update VS2010+ project files.

2014-09-10 16:58 BP, revision 77641

Move wxAppProgressIndicator into its own header.

2014-09-10 16:57 BP, revision 77640

Update docs of wxAppProgressIndicator. Also mention that MSWGetTaskBarButton is available since 3.1.0.

2014-09-10 16:57 BP, revision 77639

Use the usual WXHWND instead of wxWidget.

2014-09-10 16:57 BP, revision 77638

Fix too many friends of wxTaskBarButtonImpl.

2014-09-10 16:57 BP, revision 77637

Fix mingw warning of using anonymous type in wxTaskBarButtonImpl fields.

2014-09-10 16:57 BP, revision 77636

Fix coding nits. - enums shouldn't be DLL-exported, - Placement of "{" - Always have dtor of wxGuage and wxFrame.

2014-09-10 16:57 BP, revision 77635

Don't link shlwapi directly. For MSVC use #pragma comment to link shlwapi, and for MinGW use dynamic loading of this library.

2014-09-10 16:56 BP, revision 77634

Fix Wreorder of m_maxValue in the wxAppProgressIndicator. Author: Chaobin Zhang

2014-09-10 16:56 BP, revision 77633

[Docs] Update docs. Author: Chaobin Zhang

2014-09-10 16:56 BP, revision 77632

Use wxGA_PROGRESS style for wxGauage in the progress dialog. Author: Chaobin Zhang

2014-09-10 16:56 BP, revision 77631

Intergrate wxAppProgressIndicator into wxGuage. Update the progress bar of taskbar button if wxGuage has wxGA_PROGRESS style. Author: Chaobin Zhang

2014-09-10 16:56 BP, revision 77630

Suppress warning: type uses the anonymous namespace. Author: Chaobin Zhang

2014-09-10 16:56 BP, revision 77629

Fix mingw warning: passing NULL to non-pointer argument. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77628

Fix warning of reorder: m_appID. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77627

Update bakefiles and VS2010+ project file. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77626

Fix docs nits. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77625

Add docs of wxTaskBarJumpList. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77624

Add parent pointer of the classes: item -> category -> jump list. The parent of wxTaskBarJumpListItem is wxTaskBarJumpListCategory, the parent of wxTaskBarJumpListCategory is wxTaskBarJumpList. After this change, users do not need to call the update method of jump list manually. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77623

Update docs for wxTaskBarJumpListCategory, wxTaskbarJumpListItem. Author: Chaobin Zhang

2014-09-10 16:55 BP, revision 77622

Support setting AppUserModelID of wxTaskBarJumpList. Specifies a unique Application User Model ID (AppUserModelID) for the application whose taskbar button will hold the custom Jump List built through the methods of this class. This parameter is optional. Author: Chaobin Zhang

2014-09-10 16:54 BP, revision 77621

Rename access method of custom categories. Author: Chaobin Zhang

2014-09-10 16:54 BP, revision 77620

Rename wxJumpList to wxTaskBarJumpList etc. Class name wxJumpList is overly generic. Author: Chaobin Zhang

2014-09-10 16:54 BP, revision 77619

Move implementation of jump list to class wxJumpListImpl. Author: Chaobin Zhang

2014-09-10 16:54 BP, revision 77618

Fix rebase error. Author: Chaobin Zhang

2014-09-10 16:54 BP, revision 77617

Implement jump list feature: adding custom categories. Author: Chaobin Zhang

2014-09-10 16:53 BP, revision 77616

Implement getting recent and frequent category. - New class wxJumpListCategory to represent a category in the jump list. - Api for accessing recent and frequent category. Author: Chaobin Zhang

2014-09-10 16:53 BP, revision 77615

Reset progress state to no progress when destructing. Author: Chaobin Zhang

2014-09-10 16:53 BP, revision 77614

Fix mingw build error. 1. Load "ChangeWindowMessageFilter" dynamically when wxUSE_DYNLIB_CLASS is true. 2. Redefine interface: IObjectArray, IObjectCollection, IPropertyStrore etc. Author: Chaobin Zhang

2014-09-10 16:53 BP, revision 77613

Support adding a separator in the task list when setting jump list. Author: Chaobin Zhang

2014-09-10 16:53 BP, revision 77612

Implement wxAppProgressIndicator. An helper class used for updating the progress of taskbar button. Author: Chaobin Zhang

2014-09-10 16:53 BP, revision 77611

Redeclare the interfaces and support setting tasks of jump list roughly. - Interfaces including: ITaskbarList3, IShellLink, ICustomDestinationList. - New API for setting tasks of jump list: wxJumpList::SetTasks. Author: Chaobin Zhang

2014-09-10 16:52 BP, revision 77610

Add new api for appending a separator to the thumbnail toolbar. Actually, when calling AppendSeparator we are appending a disable ThumbBarButton without background, which can simulate the behavior of appending a separator. Author: Chaobin Zhang

2014-09-10 16:52 BP, revision 77609

Add docs for several interfaces of wxThumbBarButton. Author: Chaobin Zhang

2014-09-10 16:52 BP, revision 77608

Expose APIs that can update the behavior of wxThumbBarButton. - void Enable(bool enable = true); void Disable(); - void EnableDismissOnClick(bool enable = true); void DisableDimissOnClick(); - void SetHasBackground(bool has = true); - void Show(bool shown = true); void Hide(); - void EnableInteractive(bool interactive = true); void DisableInteractive(); Author: Chaobin Zhang

2014-09-10 16:52 BP, revision 77607

Allow 2-phase creation of wxThumbBarButton. Author: Chaobin Zhang

2014-09-10 16:52 BP, revision 77606

Add doxygen docs of wxTaskBarButton. Author: Chaobin Zhang

2014-09-10 16:51 BP, revision 77605

Coding style fix. Author: Chaobin Zhang

2014-09-10 16:51 BP, revision 77604

Move wxTaskBarButton into core library. Author: Chaobin Zhang

2014-09-10 16:51 BP, revision 77603

Fix mingw build error of ITaskbarList3. Author: Chaobin Zhang

2014-09-10 16:51 BP, revision 77602

Work around the limitation of windows API when setting thumbnail toolbar buttons. - New API: InsertThumbBarButton, AppendThumbBarButton, RemoveThumbBarButton. - Though MSDN said that "Buttons cannot be added or deleted later, so this must be the full defined set. Buttons also cannot be reordered.", we can work around it by: when first time adding button, initialize all of the possible seven buttons and hide them, except the button adding. In the next time adding button, just show it, which can make it looks like it is added on the fly. Author: Chaobin Zhang

2014-09-10 16:51 BP, revision 77601

Nit: fix code style. Author: Chaobin Zhang

2014-09-10 16:51 BP, revision 77600

Revise progress releted API to be more usual. - Add PulseProgress - Add SetProgressRange, instead of hard coding 100. Author: Chaobin Zhang

2014-09-10 16:50 BP, revision 77599

Revise Show/Hide, for consistency with the other classes. Author: Chaobin Zhang

2014-09-10 16:50 BP, revision 77598

API: SetThumbnailContents, for setting thumbnail contents with child window. Author: Chaobin Zhang

2014-09-10 16:50 BP, revision 77597

Expose setting description of overlay icon for accessibility. Author: Chaobin Zhang

2014-09-10 16:50 BP, revision 77596

Only register window message "TaskbarButtonCreated" when the first frame is created. Author: Chaobin Zhang

2014-09-10 16:50 BP, revision 77595

Move taskbar button from wxTopLevelWindowMSW to wxFrame. Since there are two sub-classes of wxTopLevelWindowMSW: one is wxFrame, the other is wxDialog. However, wxDialog have no button shown in taskbar on windows, so the taskbar button feature should be only avaiable in wxFrame. Author: Chaobin Zhang

2014-09-10 16:50 BP, revision 77594

APIs for adding a thumbnail toolbar with a specified set of buttons. - AddThumbBarButton(wxThumbBarButton *button), ShowThumbnailToolbar(). - Add THBN_CLICKED message handler to top level window and generate a wxCommandEvent event. - Sample. Author: Chaobin Zhang

2014-09-10 16:49 BP, revision 77593

APIs to support setting overlay icon, tooltip, thumbnail clip, progress state. Author: Chaobin Zhang

2014-09-10 16:49 BP, revision 77592

API for change the visibility of button in the taskbar. - ShowInTaskbar and HideInTaskbar - Sample of usage. Author: Chaobin Zhang

2014-09-10 16:49 BP, revision 77591

Introduce skeleton of taskbar button feature. - Add classes: wxTaskBarButton and wxTaskBarButtonImpl. - New interface in wxTopLevelWindowMSW to get its wxTaskBarButton: MSWGetTaskBarButton. - A simple sample and build files under msvc. Author: Chaobin Zhang

2014-09-10 16:49 BP, revision 77590

Register message "TaskbarButtonCreated" when wxTopLevelWindowMSW is created. This message is used to make sure the taskbar button is in place, so wxTaskbarButton object can initialize correctly. Author: Chaobin Zhang

2014-09-10 13:57 CZ, revision 77589

Reverting failed mering of SOC2014_TASKBAR. Command: git svn dcommit is aborted, and the two branches is diverged.

2014-09-10 11:23 CZ, revision 77588

Allow 2-phase creation of wxThumbBarButton. Author: Chaobin Zhang

2014-09-10 11:19 CZ, revision 77587

Add doxygen docs of wxTaskBarButton. Author: Chaobin Zhang

2014-09-10 11:16 CZ, revision 77586

Coding style fix. Author: Chaobin Zhang

2014-09-10 11:15 CZ, revision 77585

Move wxTaskBarButton into core library. Author: Chaobin Zhang

2014-09-10 11:11 CZ, revision 77584

Fix mingw build error of ITaskbarList3. Author: Chaobin Zhang

2014-09-10 11:09 CZ, revision 77583

Work around the limitation of windows API when setting thumbnail toolbar buttons. - New API: InsertThumbBarButton, AppendThumbBarButton, RemoveThumbBarButton. - Though MSDN said that "Buttons cannot be added or deleted later, so this must be the full defined set. Buttons also cannot be reordered.", we can work around it by: when first time adding button, initialize all of the possible seven buttons and hide them, except the button adding. In the next time adding button, just show it, which can make it looks like it is added on the fly. Author: Chaobin Zhang

2014-09-10 11:06 CZ, revision 77582

Nit: fix code style. Author: Chaobin Zhang

2014-09-10 11:03 CZ, revision 77581

Revise progress releted API to be more usual. - Add PulseProgress - Add SetProgressRange, instead of hard coding 100. Author: Chaobin Zhang

2014-09-10 11:01 CZ, revision 77580

Revise Show/Hide, for consistency with the other classes. Author: Chaobin Zhang

2014-09-10 10:59 CZ, revision 77579

API: SetThumbnailContents, for setting thumbnail contents with child window. Author: Chaobin Zhang

2014-09-10 10:56 CZ, revision 77578

Expose setting description of overlay icon for accessibility. Author: Chaobin Zhang

2014-09-10 10:54 CZ, revision 77577

Only register window message "TaskbarButtonCreated" when the first frame is created. Author: Chaobin Zhang

2014-09-10 10:51 CZ, revision 77576

Move taskbar button from wxTopLevelWindowMSW to wxFrame. Since there are two sub-classes of wxTopLevelWindowMSW: one is wxFrame, the other is wxDialog. However, wxDialog have no button shown in taskbar on windows, so the taskbar button feature should be only avaiable in wxFrame. Author: Chaobin Zhang

2014-09-10 10:47 CZ, revision 77575

APIs for adding a thumbnail toolbar with a specified set of buttons. - AddThumbBarButton(wxThumbBarButton *button), ShowThumbnailToolbar(). - Add THBN_CLICKED message handler to top level window and generate a wxCommandEvent event. - Sample. Author: Chaobin Zhang

2014-09-10 10:43 CZ, revision 77574

APIs to support setting overlay icon, tooltip, thumbnail clip, progress state. Author: Chaobin Zhang

2014-09-10 10:40 CZ, revision 77573

API for change the visibility of button in the taskbar. - ShowInTaskbar and HideInTaskbar - Sample of usage. Author: Chaobin Zhang

2014-09-10 10:37 CZ, revision 77572

Introduce skeleton of taskbar button feature. - Add classes: wxTaskBarButton and wxTaskBarButtonImpl. - New interface in wxTopLevelWindowMSW to get its wxTaskBarButton: MSWGetTaskBarButton. - A simple sample and build files under msvc. Author: Chaobin Zhang

2014-09-10 10:34 CZ, revision 77571

Register message "TaskbarButtonCreated" when wxTopLevelWindowMSW is created. This message is used to make sure the taskbar button is in place, so wxTaskbarButton object can initialize correctly. Author: Chaobin Zhang

2014-09-10 10:30 CZ, revision 77570

Add wxUSE_TASKBARBUTTON under MSW port. Taskbar button features are only available under MSW port. Author: Chaobin Zhang

2014-09-10 09:17 SC, revision 77569

picking the selected font before closing the panel, fixes #16538

2014-09-10 07:54 BP, revision 77568

Rebaked D2D additions.

2014-09-09 15:53 SC, revision 77563

fixing initialization order, fixes #16542

2014-09-09 11:58 SC, revision 77562

fixing implicit narrowing conversions, silencing ICC warnings, fixes #16542

2014-09-09 09:42 SC, revision 77561

rebaked, d2d addition

2014-09-08 16:13 SC, revision 77560

added d2d

2014-09-08 16:12 SC, revision 77559

added d2d

2014-09-08 16:10 SC, revision 77558

added d2d

2014-09-08 16:10 SC, revision 77557

added d2d

2014-09-08 16:09 SC, revision 77556

added d2d

2014-09-08 09:51 JS, revision 77555

Removed commented out window variant lines

2014-09-07 20:26 JS, revision 77554

Use the small variant for help contents etc. since normal is a little outsized for this on Mac.

2014-09-07 19:33 JS, revision 77553

Make the selected item visible, to match behaviour on other platforms

2014-09-06 16:59 SC, revision 77550

direct2d GSOC2014 add addtional file

2014-09-05 23:55 VZ, revision 77549

Use bool constants instead of BOOL ones in wxBitmapComboBox code. Just s/TRUE/true/ See #14279.

2014-09-05 23:55 VZ, revision 77548

Fix empty wxBitmapComboBox height under wxMSW. Make (initially) empty wxBitmapComboBox as high as a normal wxComboBox instead of making it visibly shorter. Closes #14279.

2014-09-05 23:54 VZ, revision 77547

Use bool constants instead of BOOL ones in wxBitmapComboBox code. Just s/TRUE/true/ See #14279.

2014-09-05 23:54 VZ, revision 77546

Fix empty wxBitmapComboBox height under wxMSW. Make (initially) empty wxBitmapComboBox as high as a normal wxComboBox instead of making it visibly shorter. Closes #14279.

2014-09-05 14:46 VZ, revision 77545

Always disable "Back" wxWizard button for the starting page. Do it even if the start page has a previous page (e.g. because the wizard has been started in the middle for some reason). Closes #16535.

2014-09-05 14:42 VZ, revision 77544

Fix wxOSX build with < 10.9 SDK after r77511. We need to guard the use of 10.9+ symbols such as NSActivityOptions at compile-time too and not only at run-time. See #16413, closes #16529.

2014-09-05 02:37 VZ, revision 77543

Fix restoring locale in wxCmdLineParser::SetArguments(). We need to call setlocale(NULL) to query the current locale, setlocale("") returns the newly set locale and not the original one.

2014-09-05 02:36 VZ, revision 77542

Fix restoring locale in wxCmdLineParser::SetArguments(). We need to call setlocale(NULL) to query the current locale, setlocale("") returns the newly set locale and not the original one.

2014-09-04 22:06 VZ, revision 77541

wxGTK PCH-less compilation build fix after r77537. Add the required #include. See #15699.

2014-09-04 21:45 VZ, revision 77540

Add default values for wxRichMessageDialog ctor arguments. Both "caption" and "style" arguments were documented as having default values, but didn't really have them. Fix this by actually adding them. Closes #16524.

2014-09-04 21:45 VZ, revision 77539

Don't say that 15+ year old wxDateTime is relatively new. Update the description of wxUSE_DATETIME in various setup.h files for the 21st century. Closes #16523.

2014-09-04 21:44 VZ, revision 77538

Deprecate wxBitmap assignment operator from wxCursor in wxMSW. This assignment operator is not portable and a better alternative is available now with the addition of the wxBitmap ctor from wxCursor in the previous commit. See #15699.

2014-09-04 21:44 VZ, revision 77537

Add wxBitmap ctor from wxCursor to wxGTK and wxMSW. Allow converting wxCursor to wxBitmap in order to draw it, for example. Closes #15699.

2014-09-04 21:44 VZ, revision 77536

Test for __MINGW64_TOOLCHAIN__ and not __MINGW64__ in wx/filefn.h. MinGW-w64 headers are the same in 32 and 64 bit cases, so test for these headers presence with __MINGW64_TOOLCHAIN__ and not for 64 bit build with __MINGW64__, which should probably not be used anywhere at all. This fixes problems with wx{Rm,Mk}dir() definitions with MinGW-w64 in non-Unicode build. Closes #16362.

2014-09-04 21:44 VZ, revision 77535

Add default values for wxRichMessageDialog ctor arguments. Both "caption" and "style" arguments were documented as having default values, but didn't really have them. Fix this by actually adding them. Closes #16524.

2014-09-04 21:22 VZ, revision 77534

Test for __MINGW64_TOOLCHAIN__ and not __MINGW64__ in wx/filefn.h. MinGW-w64 headers are the same in 32 and 64 bit cases, so test for these headers presence with __MINGW64_TOOLCHAIN__ and not for 64 bit build with __MINGW64__, which should probably not be used anywhere at all. This fixes problems with wx{Rm,Mk}dir() definitions with MinGW-w64 in non-Unicode build. Closes #16362.

2014-09-04 21:22 VZ, revision 77533

Move __MINGW64_TOOLCHAIN__ definition to wx/msw/gccpriv.h. __MINGW64_VERSION_MAJOR is defined only in _mingw.h, so it was never defined in wx/compiler.h, included before any other headers and we can't include _mingw.h for the same reason we must define wxCHECK_MINGW32_VERSION() in wx/msw/gccpriv.h: this has to be done after defining UNICODE/_UNICODE, but wx/compiler.h is included before this.

2014-09-04 18:02 VZ, revision 77532

Move __MINGW64_TOOLCHAIN__ definition to wx/msw/gccpriv.h. __MINGW64_VERSION_MAJOR is defined only in _mingw.h, so it was never defined in wx/compiler.h, included before any other headers and we can't include _mingw.h for the same reason we must define wxCHECK_MINGW32_VERSION() in wx/msw/gccpriv.h: this has to be done after defining UNICODE/_UNICODE, but wx/compiler.h is included before this.

2014-09-04 14:36 VZ, revision 77531

Fix harmless unused parameter warnings. Wrap parameter in WXUNUSED() in the power resource stub functions.

2014-09-04 14:36 VZ, revision 77530

Add wxDIRCTRL_DEFAULT_STYLE for consistency with other classes. This is, by definition, the style used as default value for the style argument of wxDirCtrl::Create(). Closes #16525.

2014-09-03 16:23 VZ, revision 77529

Compilation fix for wxUSE_STD_STRING==0 build. Add missing check for wxUSE_STD_STRING to fix the build with it set to 0 after the changes of r77518.

2014-09-03 13:21 VZ, revision 77528

Mention that wxDialog::SetEscapeId() can't be used for native dialogs. Native dialogs handling of Esc can't be customized (definitely not easily, and possibly not at all). See #16521.

2014-09-03 13:21 VZ, revision 77527

Remove recursive "see also" link from GetAppDocumentsDir() docs. This was probably supposed to be "@see GetDocumentsDir()", but as this function is already mentioned, and auto-linked by Doxygen, just above, another link to it is unnecessary, so remove it. Closes #16520.

2014-09-03 13:21 VZ, revision 77526

Include wx/variant.h from wx/msw/ole/oleutils.h. This ensures that this header is self-contained and can be included without including wx/variant.h first. Closes #16522.

2014-09-03 13:21 VZ, revision 77525

Mention that wxDialog::SetEscapeId() can't be used for native dialogs. Native dialogs handling of Esc can't be customized (definitely not easily, and possibly not at all). See #16521.

2014-09-03 13:21 VZ, revision 77524

Remove recursive "see also" link from GetAppDocumentsDir() docs. This was probably supposed to be "@see GetDocumentsDir()", but as this function is already mentioned, and auto-linked by Doxygen, just above, another link to it is unnecessary, so remove it. Closes #16520.

2014-09-03 13:20 VZ, revision 77523

Include wx/variant.h from wx/msw/ole/oleutils.h. This ensures that this header is self-contained and can be included without including wx/variant.h first. Closes #16522.

2014-09-03 12:45 VZ, revision 77522

Work around buggy printer drivers not returning correct DEVMODE size. Apparently at least one printer driver doesn't report the memory needed by its own DEVMODE struct correctly, resulting in a crash due to a buffer overflow when printing using it. Work around this by allocating slightly more memory than what we really need. Closes #16274.

2014-09-03 08:56 VS, revision 77521

Don't prevent app exit when only preferences window exists. Don't prevent termination of the app if all windows are closed, except for the preferences one (which may very well be hidden at the moment). This only affects platforms where the preferences are modeless (GTK+, OS X) and where the preferences window, once created, continues to exist, but is hidden.

2014-09-03 08:55 VS, revision 77520

Don't prevent app exit when only preferences window exists. Don't prevent termination of the app if all windows are closed, except for the preferences one (which may very well be hidden at the moment). This only affects platforms where the preferences are modeless (GTK+, OS X) and where the preferences window, once created, continues to exist, but is hidden.

2014-09-03 08:54 VS, revision 77519

Tweak sizing for general SetWindowVariant() implementation. Previously, the generic implementation closely mirrored OS X's scaling factors, with the small size being 3/4 of the normal one and mini 2/3. This works well with OS X's UI font and font rendering, but less so on other platforms: wxWINDOW_VARIANT_SMALL is barely readable on Windows and wxWINDOW_VARIANT_MINI is illegible. In wxGTK, both sizes are readable, but don't match small text used in native GNOME interfaces. Change the sizing to use the same scaling factor of 1.2 between all variant steps. This is the same factor that CSS 1.2 defines for relative sizes and is also used by Pango's (and so GTK+) size scaling in markup. This makes wxWINDOW_VARIANT_SMALL identical in size to <small> markup used in GTK+. On Windows, this changes default UI font scaling to be less steep and while wxWINDOW_VARIANT_MINI is still tiny and hard to read (as it is on OS X), wxWINDOW_VARIANT_SMALL is now readable, thanks to being only 1pt smaller than the full size (for default GUI font).

2014-09-02 17:35 VZ, revision 77518

Specialize std::hash<> for wxString when using C++11. This allows to use wxString as key type of std::unordered_{map,hash} out of the box.

2014-08-30 17:14 VZ, revision 77517

Fix creation of wxBitmap from monochrome wxIcon or wxCursor in wxMSW. Don't suppose that we always have hbmColor because this is not true for monochrome icons/cursors. Create our own bitmap in this case. Closes #16512.

2014-08-30 17:13 VZ, revision 77516

Fix creation of wxBitmap from monochrome wxIcon or wxCursor in wxMSW. Don't suppose that we always have hbmColor because this is not true for monochrome icons/cursors. Create our own bitmap in this case. Closes #16512.

2014-08-30 01:22 VZ, revision 77515

Don't change a shortcut file name when changing its path. wxFileName::MakeRelativeTo() is only supposed to change the path of the file, not its name, but it was doing the latter for the shortcuts as it implicitly resolved them to the name of their target. Fix this by ensuring we do not use wxPATH_NORM_SHORTCUT in MakeRelativeTo(). Closes #16239.

2014-08-30 01:22 VZ, revision 77514

Ensure OLE is initialized in wxFileName::GetShortcutTarget(). If it isn't, the function doesn't risk to work. This is especially pernicious because OLE is initialized on startup in GUI applications, but not in the console ones only using wxBase, so this function can, completely unexpectedly, give different results in them.

2014-08-30 01:22 VZ, revision 77513

Add small wxOleInitializer RAII helper. Wrap wxOleInitialize()/wxOleUninitialize() in a helper class ensuring that we never forget to call the latter.

2014-08-30 01:22 VZ, revision 77512

Fix typo in the last changelog entry. s/reated/created/

2014-08-30 01:22 VZ, revision 77511

Add wxPowerResourceBlocker for power management. Add functions to acquire/release power resources, preventing/allowing back the system to go to sleep or turn off the screen and a class wrapping them in a safe way. This patch implements the functions for MSW and OSX, adds documentation and updates the sample to demonstrate the new functionality. Closes #16413.

2014-08-30 01:22 VZ, revision 77510

Use wxCOMPtr<> in wxFileName instead of manual Release() calls. Make the code shorter and safer.

2014-08-30 01:22 VZ, revision 77509

Don't change a shortcut file name when changing its path. wxFileName::MakeRelativeTo() is only supposed to change the path of the file, not its name, but it was doing the latter for the shortcuts as it implicitly resolved them to the name of their target. Fix this by ensuring we do not use wxPATH_NORM_SHORTCUT in MakeRelativeTo(). Closes #16239.

2014-08-30 01:22 VZ, revision 77508

Ensure OLE is initialized in wxFileName::GetShortcutTarget(). If it isn't, the function doesn't risk to work. This is especially pernicious because OLE is initialized on startup in GUI applications, but not in the console ones only using wxBase, so this function can, completely unexpectedly, give different results in them.

2014-08-30 01:21 VZ, revision 77507

Add small wxOleInitializer RAII helper. Wrap wxOleInitialize()/wxOleUninitialize() in a helper class ensuring that we never forget to call the latter.

2014-08-29 23:53 AW, revision 77506

Optimize allocating default cells in wxPGProperty::EnsureCells Use embedded 'resize' function to alloc new slots at once instead of doing this in an iterative way.

2014-08-29 23:17 AW, revision 77505

Fix drawing custom colours for wxEnumProperty choice items in wxPG. In order to draw choice items with custom colours there is necessary to merge custom cell object (wxPGCell) associated with individual item with default cell object (in wxPGProperty::GetDisplayInfo). wxPGProperty::GetDisplayInfo function should return customized cell object instead of returning pointer to the default cell object only. Closes #16509

2014-08-29 13:56 VZ, revision 77504

Don't leave wxHtmlWinParser with a dangling wxDC pointer. Call SetDC(NULL) to prevent wxHtmlWinParser from using a pointer to the already destroyed wxDC object. See #16501.

2014-08-29 13:56 VZ, revision 77503

No changes, just avoid unnecessary heap allocation in wxHtmlWindow. Create the temporary wxClientDC on the stack, not the heap, there is no need for the latter. See #16501.

2014-08-29 13:56 VZ, revision 77502

Allow wxCmdLineParser::Parse() to be called more than once. Clear the previously collected parameters in the beginning to avoid accumulating the results from several command lines. Closes #16503.

2014-08-29 13:55 VZ, revision 77501

Don't leave wxHtmlWinParser with a dangling wxDC pointer. Call SetDC(NULL) to prevent wxHtmlWinParser from using a pointer to the already destroyed wxDC object. See #16501.

2014-08-29 13:55 VZ, revision 77500

No changes, just avoid unnecessary heap allocation in wxHtmlWindow. Create the temporary wxClientDC on the stack, not the heap, there is no need for the latter. See #16501.

2014-08-29 13:42 VZ, revision 77499

Allow wxCmdLineParser::Parse() to be called more than once. Clear the previously collected parameters in the beginning to avoid accumulating the results from several command lines. Closes #16503.

2014-08-29 06:45 MAR, revision 77498

Add architecture doc for wxQT (moved from wiki)

2014-08-29 05:37 MAR, revision 77497

Update author's credits comments for wxQT Commit history was lost in the git to svn merge for trunk, so this reflect work done in two GSOC projects and/or by several authors. Lines changed by each user was the main metric used to ack major contributions.

2014-08-28 23:36 BP, revision 77496
  • D /wxWidgets/branches/SOC2014_X11

Clearing incorrectly created branch on git mirror.

2014-08-28 14:55 VZ, revision 77495

Fix wxFont construction from default wxFontInfo in wxMSW. Don't use -1 as the real point size. Also update the font sample to allow testing such font. Closes #16468.

2014-08-28 14:54 VZ, revision 77494

Fix wxFont construction from default wxFontInfo in wxMSW. Don't use -1 as the real point size. Also update the font sample to allow testing such font. Closes #16468.

2014-08-28 14:37 VZ, revision 77493

Fix harmless warning about unreachable statement when wxUSE_EXCEPTIONS==0. This statement only needed when we do use exceptions.

2014-08-28 14:29 TIK, revision 77492

Revision 59305 broke click count adjustment with the result that a right-click after a left-click is reported as double-click.

2014-08-28 14:29 TIK, revision 77491

Revision 59305 broke click count adjustment with the result that a right-click after a left-click is reported as double-click.

2014-08-28 13:35 VZ, revision 77490

Fix build with wxUSE_STD_STRIN == 0. Remove a leftover occurrence of wxDEFINE_TEMPLATE_BOOL_VALUE(), this should have been done in r76532.

2014-08-28 10:31 JS, revision 77489

Compensate for lack of bitmap inversion on Mac when selecting content.

2014-08-28 10:28 JS, revision 77488

The wxRTC formatting dialog now retains custom colours set within the colour dialog, and they can be accessed by the application.

2014-08-27 23:21 BP, revision 77487

Create SVN branch for GSoC 2014 wxTaskBarButton project.

2014-08-27 00:58 AW, revision 77486

Fix deleting (from within wxPG event handler) properties not belonging to the current PG page. Currently, it is not possible to remove properties from the page other then currently selected. The scope of iterator used in wxPropertyGridPageState::DoClear() to enumerate properties must be limited to the required page and not always to the selected one. Closes #16459

2014-08-27 00:54 AW, revision 77485

Fix deleting aggregate properties from within wxPG event handler. Do not explicitly remove sub-properties of aggregate property because they will be removed automatically in their parent property dtor. See #16459

2014-08-26 10:29 JJ, revision 77484

Update of OpenVMS build support

2014-08-25 20:29 VZ, revision 77483

Disable the use of std::exception_ptr for MSVC 2010. While <exception> does define this type in this version of the compiler, it's non-conforming and doesn't define conversion to bool, so we can't test whether it is valid or not. We could work around it but for now just disable the use of exception_ptr with VC10 and only use it for VC11+.

2014-08-25 19:50 VZ, revision 77482

Fix order of radial gradient stops in wxMSW. Ensure that the order of stops is consistent with the documentation and other platforms behaviour, i.e. they are counted from inside to outside of the circle and not vice versa, which happens to be the GDI+ convention. Closes #16443.

2014-08-25 19:47 VZ, revision 77481

Fix order of radial gradient stops in wxMSW. Ensure that the order of stops is consistent with the documentation and other platforms behaviour, i.e. they are counted from inside to outside of the circle and not vice versa, which happens to be the GDI+ convention. Closes #16443.

2014-08-25 19:47 VZ, revision 77480

Add missing wxUSE_EXCEPTIONS checks. Build fixes after StoreCurrentException and RethrowStoredException() introduction: don't use the latter if exceptions support is turned off.

2014-08-25 19:47 VZ, revision 77479

Rebake MSW makefiles properly after wxQt merge. Somehow the makefiles contained references to a non-existing src/common/textdlg.cpp, fix this by rebaking them.

2014-08-24 17:32 VZ, revision 77478

Get rid of unnecessary wxUsecClockAsString() helper function. We always build with wxUSE_LONGLONG now, so just use wxLongLong::ToString() directly. This avois a warning about unused local function in wxDEBUG_LEVEL==0 builds.

2014-08-24 17:32 VZ, revision 77477

Disable deprecation warnings for NS{Open,Save}Panel methods. They will need to be replaced with the newer equivalents, but for now getting dozens of warnings for each wxOSX build is just annoying, so get rid of them.

2014-08-24 17:32 VZ, revision 77476

Use #pragma diagnostic for clang too, not just g++ 4.6+. Clang seems to support this #pragma just fine and it's useful for disabling deprecation warnings in wxOSX code.

2014-08-24 17:32 VZ, revision 77475

Avoid unused variable warnings in !wxDEBUG_LEVEL builds. Don't define a constant which is only used inside wxASSERT() at all if debug checks are disabled.

2014-08-24 17:32 VZ, revision 77474

Suppress unused variable warning in wxRichTextObject code. Put the variable used only inside #if 0'd code inside #if 0 itself (it would be better to get rid of this entirely, of course...).

2014-08-24 17:32 VZ, revision 77473

Add tests of gradients with stops to the drawing sample. This shows inconsistency in handling of radial gradients with and without stops in current wxMSW GDI+-based wxGraphicsContext implementation. See #16443.

2014-08-24 17:31 VZ, revision 77472

Remove checks for QueryPerformanceCounter() success. According to http://msdn.microsoft.com/en-us/library/windows/desktop/dn553408.aspx this function will never fail under Windows XP or later, so simplify code by not checking whether it did.

2014-08-24 17:31 VZ, revision 77471

Update wxFileDialog filter index when setting its path. This ensures that GetFilename() and GetFilterIndex() always return consistent results, even if the path was set programmatically, e.g. during unattended tests using wxExpectModal<wxFileDialog>.

2014-08-24 17:31 VZ, revision 77470

Provide wxApp::StoreCurrentException() implementation for C++11. When using C++11 we can provide implementations of wxApp::StoreCurrentException() and RethrowStoredException() ourselves and thus make catching exceptions outside of the event loop work by default. Do this and update the documentation and the sample to reflect it.

2014-08-24 17:31 VZ, revision 77469

Remove the apparently unnecessary <locale> inclusion. This header doesn't seem to be needed anywhere.

2014-08-24 17:31 VZ, revision 77468

Add wxApp::StoreCurrentException() and RethrowStoredException(). These methods can be used to ensure that the exceptions thrown from event handlers are safely rethrown from the code dispatching the events once the control flow gets back there. This allows to work around the problem with not being able to propagate exceptions through non-C++ code and can be used, for example, to catch exceptions thrown by the handlers invoked from inside wxYield() by a try/catch block around wxYield() -- something that didn't work before, update the except sample to show that it does work now.

2014-08-24 17:31 VZ, revision 77467

No changes, just document exception-related methods in their own group. Extract wxApp::OnExceptionInMainLoop() and OnUnhandledException() in a separate Doxygen group as there will be more functions defined in it soon.

2014-08-24 17:31 VZ, revision 77466

No real changes, just simplify SafelyProcessEvent() slightly. Remove a long comment about initializing "loop" in 2 steps and just do it in 1 step instead.

2014-08-24 17:31 VZ, revision 77465

Add a test of throwing an exception from wxYield() to except sample. This demonstrates that under 64 bit Windows exceptions may not propagate through the kernel code and throwing from inside wxYield() results in either an immediate abort, even if the code calling wxYield() tries to handle the exception, or, even more surprisingly, is just completely ignored. See http://blog.paulbetts.org/index.php/2010/07/20/the-case-of-the-disappearing-onload-exception-user-mode-callback-exceptions-in-x64/ for more information. Moreover, independently of Windows weirdness, throwing from wxYield() also results in a difficult to debug crash when using wxGTK because C++ exceptions can't propagate through C GTK+ code in this case.

2014-08-24 17:31 VZ, revision 77464

Show new style Windows directory selector even for non-existent paths. Passing an invalid initial directory to wxDirDialog resulted in using the old style Windows directory selector dialog instead of the new style (file dialog like) one, which was unintentional, as incorrect initial directory shouldn't prevent the dialog from being shown. Fix this by handling ERROR_FILE_NOT_FOUND error specifically and still showing the new dialog, just without the (non existent) initial directory value, in this case. Closes #16430.

2014-08-24 17:31 VZ, revision 77463

Also ignore arch-specific build directories in wxMSW wxStandardPaths. In addition to ignoring debug/release subdirectories, also ignore their (possible) parent Win32/x64 directories, and for the same reason: this allows the code using wxStandardPaths to work even when the program is ran from the build directory.

2014-08-24 15:35 VZ, revision 77462

Avoid unnecessary assignment in wxOSX build. Don't assign to the variable only to overwrite it with a new value. Closes #16436.

2014-08-24 15:35 VZ, revision 77461

Avoid warning about unused variable in wxiOS build. Define variable only used if wxOSX_USE_COCOA_OR_CARBON inside the check for it. Closes #16435.

2014-08-24 15:35 VZ, revision 77460

Avoid unused variable warning in wxUSE_DATAOBJ==0 build. Declare variable only used when wxUSE_DATAOBJ==1 inside the check for it. Closes #16434.

2014-08-24 15:35 VZ, revision 77459

Remove unused variable in wxDCImpl::CalculateEllipticPoints(). Closes #16433.

2014-08-24 15:30 VZ, revision 77458

Avoid unnecessary assignment in wxOSX build. Don't assign to the variable only to overwrite it with a new value. Closes #16436.

2014-08-24 15:30 VZ, revision 77457

Avoid warning about unused variable in wxiOS build. Define variable only used if wxOSX_USE_COCOA_OR_CARBON inside the check for it. Closes #16435.

2014-08-24 15:29 VZ, revision 77456

Remove unused variable in wxDCImpl::CalculateEllipticPoints(). Closes #16433.

2014-08-24 03:50 VZ, revision 77455

Merge wxQT branch into the trunk. This merges in the latest sources from GSoC 2014 wxQt project with just a few minor corrections, mostly undoing wrong changes to common files in that branch (results of a previous bad merge?) and getting rid of whitespace-only changes. Also remove debug logging from wxGrid.

2014-08-23 14:32 VZ, revision 77454

Create svn branch for GSoC 2014 wxX11 project.

2014-08-23 14:32 VZ, revision 77453
  • D /wxWidgets/branches/SOC2014_X11

Remove the branch created once again at a wrong place.

2014-08-23 14:28 VZ, revision 77452

Create svn branch for GSoC 2014 wxX11 project.

2014-08-23 03:09 VZ, revision 77451

disable qt auto buffer swapping

2014-08-23 03:09 VZ, revision 77450

Fix special (unreal) window handling in wxQT See wxTabFrame (AUI book), that is a special case as it doesn't have a related QWidget counterpart

2014-08-23 03:09 VZ, revision 77449

Add MiniFrame TLW for wxQT Also enables support for frameless and no task bar styles. Note that tool window style seems to have no effect on Ubuntu (tested with the Qt official examples)

2014-08-23 03:09 VZ, revision 77448

Merge master trunk into GSoC2014 QT branch

2014-08-23 03:08 VZ, revision 77447

Complete build docs for Ubuntu/Android wxQT

2014-08-23 03:08 VZ, revision 77446

Initial documentation for wxQT

2014-08-23 03:08 VZ, revision 77445

Fix SIGSEGV if app was not initialized in wxQT

2014-08-23 03:08 VZ, revision 77444

Fix status bar initial field count in wxQT

2014-08-23 03:08 VZ, revision 77443

Fix status bar removal SIGSEGV in wxQT

2014-08-23 03:08 VZ, revision 77442

Fix text extent metrics with spaces in wxQT

2014-08-23 03:08 VZ, revision 77441

Implement missing default button size for wxQT (wxPython)