Commit Graph

49930 Commits

Author SHA1 Message Date
Robert Roebling
6b1a022253 Simple implementation of wxSL_MIN_MAX_LABELS and wxSL_VALUE_LABEL for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 14:26:54 +00:00
Robert Roebling
6d6f99cb41 Document wxSL_MIN_MAX_LABELS and wxSL_VALUE_LABEL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 14:25:54 +00:00
Robert Roebling
fe45d6ffd5 Typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 11:03:17 +00:00
Robert Roebling
c092ed3828 Implement wxSL_VALUE_LABEL and wxSL_MIN_MAX_LABELS for GTK+
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 10:58:31 +00:00
Robert Roebling
8e4a1326e1 Renamed wxSL_LABELS_MIN_MAX -> wxSL_MIN_MAX_LABELS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 18:56:30 +00:00
Stefan Csomor
a0b48f2651 adding toolbar implementation for iphone
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 18:39:38 +00:00
Robert Roebling
cf54980e2e Add constants wxSL_LABELS_MIN_MAX and wxSL_VALUE_LABEL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 18:36:14 +00:00
Stefan Csomor
f3769d53f7 updating implementations of wxGetMouseState for osx_cocoa and dummy impls for iphone
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 18:30:00 +00:00
Robert Roebling
8ddda15ba5 Implement and document wxDataViewTreeCtrl::IsContainer(), use it in the sample to not add items to non-containers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 14:14:44 +00:00
Robert Roebling
a53f722ff2 Minor formating
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 13:56:55 +00:00
Robert Roebling
9c20523110 Correct sorting in wxDataViewTreeStore, fixes #11436, part II
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 13:56:32 +00:00
Robert Roebling
8650c4ba0f Don't use gtk_tree_model_get_path of the item is already the delete in the model, fixes #11436
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 10:30:07 +00:00
Robert Roebling
a46a47a310 Add tests to wxDataViewTreeCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 08:32:35 +00:00
Robert Roebling
bc6ca1a9e6 Also update focus rect when changing selection in single selection mode, fixes #11332
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 08:24:00 +00:00
Robert Roebling
7d5d2f237a Reset m_underMouse anytime the display is changed programmatically, fixes #11322
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 08:05:00 +00:00
Kevin Ollivier
0bcac6c79f Override default handling so that we can position windows off-screen like on other ports.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62623 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-13 02:28:16 +00:00
Vadim Zeitlin
0ddf0ac696 Make wxSizeEvent::GetSize() description more precise.
Mention that it returns the new total (and not client) size of the window.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-12 13:13:09 +00:00
Vadim Zeitlin
753dc0f732 Update gdb pretty printing support for latest gdb version.
gdb.pretty_printers is not a map any more but a list containing lookup
functions for pretty printers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 23:08:41 +00:00
Vadim Zeitlin
72c1931497 Set wxSL_VERTICAL style in wxSlider demo page.
wxGTK doesn't currently take wxSL_{LEFT,RIGHT,TOP,BOTTOM} styles into account
but at least make it change the slider orientation correctly depending on them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 22:30:07 +00:00
Jaakko Salli
2f772c89eb Fix wxPropertyGrid rendering problems when used with wxAUI. It seems we cannot rely on wxWindow::GetRect() to return wxRect with x=0 here. (fixes #11433)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 19:49:58 +00:00
Václav Slavík
58791ef890 Check that event's IDs range is valid, i.e. that lower bound
is not higher than upper bound.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 17:18:49 +00:00
Vadim Zeitlin
869bc90db7 Add wxBase64Decode(void*,size_t,wxString) overload.
We had wxBase64Decode(void*,size_t,const char*,size_t) as well as
wxBase64Decode(const char*,size_t) and wxBase64Decode(wxString) already but
not a version taking the buffer and wxString, complete the set of overloads
now.

This allows the unit test to compile in STL build (where there is no implicit
conversion from wxString to const char *).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 14:38:40 +00:00
Julian Smart
a9a8cebc91 Fixed tab removal bug, and empty text element
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 10:59:14 +00:00
Václav Slavík
e3c3dfb409 added a note about XRCID() and EVT_*_RANGE macros (see bug #11431)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 10:22:57 +00:00
Kevin Ollivier
eebb8902d9 Use wxWebKitCtrlNameStr to adhere to the convention used by other wx classes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 02:12:56 +00:00
Kevin Ollivier
db22fdd17d Run sanity checks on the position values.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 02:11:13 +00:00
Vadim Zeitlin
17cbc2446b Implement text ellipsizing for wxDataViewCustomRenderer in wxGTK.
Add another virtual function (GtkGetTextRenderer()) to the base class which
allows us to reuse the same code setting the "ellipsize" property that we
already used for wxDataViewTextRenderer for wxDataViewCustomRenderer as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 01:50:06 +00:00
Vadim Zeitlin
061a5c21db Add wxOSX_USE_COCOA around Cocoa-only OSXApplyAttr() method.
This method is used in wxOSX/Cocoa only.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 01:36:36 +00:00
Vadim Zeitlin
aaedb44c5e Revert r62598 which removed "unnecessary wxOSX_USE_COCOA checks."
These checks were not unnecessary at all, this file is used for both Cocoa and
Carbon, fix this momentary lapse of reason.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-11 01:32:58 +00:00
Vadim Zeitlin
f49f59d0c9 Send the selected item in wxDVC SELECTION_CHANGED event in OSX/Cocoa.
This event was perfectly useless as it didn't indicate which item was
selected. Do set the selected item now, just as the generic and GTK versions
do.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 18:17:38 +00:00
Vadim Zeitlin
17f5d137d8 No changes, just reformat comments in osx/dataview.mm.
Wrap long lines to be able to read the comments and remove the perfectly
useless "// variable definition" and "// constant definition for
abbreviational purposes" noise.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 18:17:31 +00:00
Vadim Zeitlin
0e17930f43 Fix width of the wxDataViewTreeCtrl column under OSX/Cocoa.
Set the column resizing mode to "automatic" instead of "none" if the control
doesn't show the header. This allows the native control to properly resize the
only tree control column to always take up the entire window size (provided we
don't explicitly create it resizeable, so don't do this).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:42:58 +00:00
Vadim Zeitlin
a35169b622 Add support for wxDV_NO_HEADER to OS X/Cocoa wxDataViewCtrl.
Also use this flag with the tree control in the sample to test it and also
because it doesn't make much sense to have a single column without title
anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:42:46 +00:00
Vadim Zeitlin
2406d5341f More cleanup of OS X Cocoa wxDataViewCtrl code.
Add wxDataViewItemFromItem() and wxDataViewItemFromMaybeNilItem() functions
instead of repeating the same ugly casts several dozens of times.

Also wrap some more long lines.

No real changes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:42:38 +00:00
Vadim Zeitlin
b0607dd221 Add support for custom attributes to wxOSX/Cocoa wxDataViewCustomRenderer.
Virtualize applying the attributes in a new OSXApplyAttr() function and simply
store the attribute in its wxDataViewCustomRenderer version so that it could
be reused later in Render().

The attributes now work correctly in wxOSX/Cocoa dataview sample too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:42:24 +00:00
Vadim Zeitlin
b7cc3b72f9 No changes, just remove unnecessary wxOSX_USE_COCOA checks.
This file is only compiled in wxOSX/Cocoa build so there is no need to check
that we're using Cocoa here.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:42:13 +00:00
Vadim Zeitlin
508f680769 Don't overwrite background in custom renderer in OSX/Cocoa.
Erasing background seems to be unnecessary and was actively harmful for the
selected items which didn't appear with the correct background colour. Just
don't do it at all.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:42:04 +00:00
Vadim Zeitlin
c80cde0001 Add support for custom attributes to wxGTK wxDataViewCustomRenderer.
Call SetAttr() to store them in wxDataViewCustomRenderer before rendering it
and also honour the attributes in RenderText() (by reusing the same code we
already use for wxDataViewTextRenderer).

The attributes now work correctly in dataview sample under wxGTK as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:58 +00:00
Vadim Zeitlin
2a454ffdbd Correct text position in wxDataViewCustomRenderer::RenderText() in wxGTK.
It simply ignored the passed in rectangle meaning that the text was always
drawn at the top left corner of the cell rectangle.

Also more code cleanup: collect all render call parameters in a single struct
and provide a public function to set them all at once instead of making them
public.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:50 +00:00
Vadim Zeitlin
a923d77fc5 Pass full cell rectangle to WXCallRender().
There is no need to ask the item for its size in gtk_wx_cell_renderer_render()
as WXCallRender() will already do it (correctly, accounting for badly
implemented GetSize() unlike this version) internally on its own.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:42 +00:00
Vadim Zeitlin
9d02e49483 Add helper wxRectFromGDKRect() function and use it.
No real changes, just another small refactoring.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:35 +00:00
Vadim Zeitlin
70884c6fc8 No real changes, just remove some unnecessary casts.
Use correct GdkRectangle* type for wxDataViewCustomRenderer::xxx_area members
instead of casting them to and from void*.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:28 +00:00
Vadim Zeitlin
c2a738e372 Avoid setting attributes in GTK wxDataViewRenderer if not supported.
If the native renderer doesn't support the properties which we map our
attributes to, trying to set them is useless and results in GTK+ warnings so
don't do it.

Add wxDataViewRenderer::GtkSupportsAttrs() which can be overridden to indicate
whether the renderer supports attributes or not. We probably could use
g_object_class_find_property() instead to detect it automatically but for now
these properties are all supported only by GtkCellRendererText and not
supported anywhere else so using a single virtual function seems tidier.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:22 +00:00
Vadim Zeitlin
62265c2c67 Allow custom wxDataViewCtrl renderers to easily use attributes.
Set up the DC passed to wxDataViewCustomRenderer::Render() to use the font and
colour defined by the item attribute by default so that any calls to
RenderText() from it will use them automatically.

Also added public wxDataViewCustomRenderer::GetAttr() to allow retrieving the
attribute explicitly in Render().

The column using custom renderer in the dataview sample now works as expected
in the generic version; the native ones will be corrected in the upcoming
commits.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:41:11 +00:00
Vadim Zeitlin
6eec70b984 Big wxDataViewCtrl renderer classes refactoring.
This commit adds no changes in functionality but paves way for the upcoming
improvements of wxDataViewCustomRenderer.

First, introduce wxDataViewCustomRendererBase class in order to allow
implementing behaviour common to custom renderers in all ports in this class
instead of triplicating it.

This required splitting monolithic dataview.h in more parts, now we have
wx/dvrenderer.h which defines wxDataViewRendererBase and the new
wxDataViewCustomRendererBase and includes wx/port/dvrenderer.h which define
wxDataViewRenderer and wx/port/dvrenderers.h which defines all the other
renderer classes.

Also bring renderers hierarchy in the generic version closer to other ports:
all standard renderer classes now inherit from wxDataViewRenderer and not
wxDataViewCustomRenderer in for consistency with the other ports.
wxDataViewRenderer itself still does derive from wxDataViewCustomRendererBase,
unlike elsewhere, but this is unavoidable considering that all generic
renderers are custom ones.

Finally do some cleanup in OS X part of the code: correct indentation,
spacing, comment style.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:40:58 +00:00
Vadim Zeitlin
ef6833f9ab Add custom renderer column to the list model example in dataview sample.
Add a column using custom renderer to the example using a list model with
attributes to test attributes support -- currently they are ignored, but this
will be fixed soon.

Also make the custom renderer display somewhat more clear as previously it
didn't depend at all on its value.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:40:37 +00:00
Vadim Zeitlin
2746bccf23 Use symbolic constants for list model columns in dataview sample.
Using Col_EditableText, Col_IconText and Col_TextWithAttr instead of 0, 1 and
2 makes the sample code a bit easier to read.

Also use switch on the column value instead of nested ifs everywhere to give
compiler a chance to warn us if we forget to update some function when a new
column is added.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:40:25 +00:00
Paul Cornett
f0368d28bf wxSpinCtrl values are always integral, they don't need to be rounded
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:36:53 +00:00
Paul Cornett
92e164ff92 wxSpinCtrl::SetIncrement is supposed to take an int, not a double
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 17:12:36 +00:00
Vadim Zeitlin
0738b901b1 Fix discrepancy between different ways of measuring text extents under Mac.
wxGraphicsContext::GetTextExtent() didn't round the returned double result to
int but truncated it instead and so returned different extent than
GetPartialTextExtents() which did round it up.

Moreover, wxGraphicsContext::GetPartialTextExtents() didn't round it up
correctly: it wrongly added 0.5 to the value still stored as double and which
was hence rounded up (correctly, this time) when converted to int in
wxDC::GetPartialTextExtents().

These two errors combined to produce difference of up to 2 pixels between the
last offset returned by wxDC::GetPartialTextExtents() and the total string
extent returned by wxDC::GetTextExtent() which thoroughly confused the code in
wxControlBase::DoEllipsizeSingleLine() (and probably not only there).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-10 00:13:57 +00:00