Commit Graph

4789 Commits

Author SHA1 Message Date
Vadim Zeitlin
2f3969724b 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-13 01:52:05 +00:00
Vadim Zeitlin
f9637c9626 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-11 01:02:08 +00:00
Vadim Zeitlin
e847a2390e 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-28 18:57:40 +00:00
Vadim Zeitlin
743aa6d74f More fixes for PCH-less build after r78063.
Add missing headers/forward declarations now.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 23:23:10 +00:00
Vadim Zeitlin
fdcf2676f0 Fix typo which broke PCH-less builds in r78063.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 22:55:47 +00:00
Vadim Zeitlin
30c93fd705 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:44 +00:00
Vadim Zeitlin
434c95e1a1 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:38 +00:00
Vadim Zeitlin
693f41781b Auto resize wxGenericStaticText when its label or font is changed.
This makes the generic version consistent with the native control behaviour.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:34 +00:00
Vadim Zeitlin
4936366716 Slightly improve sizing of wxInfoFrame used by wxBusyInfo.
Specify the margin around the text in dialog units, not pixels.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:27 +00:00
Vadim Zeitlin
f9788f7e27 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:25 +00:00
Vadim Zeitlin
7e3b5314dd 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:22 +00:00
Vadim Zeitlin
9ecf21c57e 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:18 +00:00
Vadim Zeitlin
0c359fa476 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-20 22:06:42 +00:00
Vadim Zeitlin
c66c12aa63 Fix typo in a comment in wxSpinCtrlGenericBase::Create().
s/satisfy/specify/ to give some sense to this comment.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-14 19:23:27 +00:00
Mariano Reingart
3b12797953 Improve specific listctrl wxQT, thanks @seandpagnier
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-29 04:21:26 +00:00
Vadim Zeitlin
908bf66242 Don't define wxSelectionStore::NO_SELECTION inline.
This results in link errors under Unix for some reason.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 23:29:32 +00:00
Vadim Zeitlin
36a5983f64 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 20:46:25 +00:00
Vadim Zeitlin
adf8f9d0cd 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 20:46:21 +00:00
Vadim Zeitlin
d058c09e9f 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 20:46:15 +00:00
Vadim Zeitlin
f5941e4f83 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 20:46:11 +00:00
Vadim Zeitlin
e05e1b93bd 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 20:46:06 +00:00
Vadim Zeitlin
445e2c32e2 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 16:12:45 +00:00
Vadim Zeitlin
47f6df12b3 Revert "Skip mouse button release events in wxGenericTreeCtrl."
This reverts r76094 as it broke label editing in the control.

See #16055, closes #16573.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 16:12:34 +00:00
Vadim Zeitlin
73eaaa97c3 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-24 14:55:16 +00:00
Julian Smart
550b039d6c Improved search text control height and position on Windows.
Was previously much too tall (regression from 3.0).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-24 12:52:54 +00:00
Paul Cornett
7f7c619c85 avoid duplicate initialization and warnings about initialization order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-24 03:39:30 +00:00
Vadim Zeitlin
e6a6bc71db 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
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:44:50 +00:00
Vadim Zeitlin
cf5c6861a7 remove these codes. The code could not work correctly under x11. Redesigning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:44:47 +00:00
Vadim Zeitlin
72a90d051a store the raw data in bitmap to m_buffer that in wxCairoBitmapData
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:44:41 +00:00
Vadim Zeitlin
7d6abbffb8 merge to independent preprocessor to one check.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:44:39 +00:00
Vadim Zeitlin
999150a45a let wxCairoContext could create cairo context correctly under x11 in this constructor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:44:36 +00:00
Vadim Zeitlin
51309ad50a make x11 dc could get cairo context, so the graphic module could use in x11. This use cairo xlib backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:44:06 +00:00
Vadim Zeitlin
9d7a7ec556 after analisys the behaviour of treectrl in GTK and Qt, right arrow should not move down. Expand the current item will be fine
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:41:15 +00:00
Vadim Zeitlin
f17b527764 ClearFocusedItem should reset the selected item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:41:09 +00:00
Vadim Zeitlin
6fb16229f5 When call EnsureVisible in wxUniv, make sure reset visible lines range correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:30 +00:00
Paul Cornett
16601713a4 cairo_image_surface_get_{width,height} have been available in cairo since version 1.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 16:37:15 +00:00
Vadim Zeitlin
4d561bf02c 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:45 +00:00
Robin Dunn
fe7301b6b0 Oops, a '{' got lost somewhere from the last commit...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 23:56:13 +00:00
Robin Dunn
b25a6a4bb6 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.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 23:28:43 +00:00
Vadim Zeitlin
a35527e0e1 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-18 00:01:31 +00:00
Bryan Petty
0c6b03c392 Fix coding nits.
- enums shouldn't be DLL-exported,
- Placement of "{"
- Always have dtor of wxGuage and wxFrame.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-10 14:57:20 +00:00
Bryan Petty
ce1f959dd9 Use wxGA_PROGRESS style for wxGauage in the progress dialog.
Author: Chaobin Zhang

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-10 14:56:37 +00:00
Vadim Zeitlin
46a414097b 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-05 12:46:38 +00:00
Václav Slavík
325c678f58 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-03 06:55:02 +00:00
Vadim Zeitlin
df13791078 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 01:50:11 +00:00
Vadim Zeitlin
a307120d50 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.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-18 21:32:55 +00:00
Vadim Zeitlin
c1a2d55dc5 Remove manual mirroring in RTL case from wxGrid code.
This is not necessary as wxDC already inherits RTL from the window itself and,
in fact, breaks the display when using RTL.

Closes #16250.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 18:03:15 +00:00
Vadim Zeitlin
86cf756ba9 Add wxRendererNative::DrawGauge() method.
Add the method with the native implementations for MSW and OS X and a generic
version fallback.

Closes #16406.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-08 01:03:31 +00:00
Vadim Zeitlin
220a8d1ac2 Correct wxGrid column labels when using SetTable() with native header.
Ensure that the table pointer inside wxGrid is updated before initializing the
native column header as it uses wxGrid::GetColLabelValue() which doesn't work
correctly without a valid table pointer.

Closes #16399.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-02 12:19:34 +00:00
Vadim Zeitlin
c4691daac7 Don't consider hidden root item to be visible in wxGenericTreeCtrl.
This fixes wrong results returned by GetFirstVisibleItem() in the tree control
with wxTR_HIDE_ROOT style.

Closes #4482.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-16 22:55:11 +00:00