Commit Graph

1201 Commits

Author SHA1 Message Date
Vadim Zeitlin
7ca106e860 Allow to not create wxPaintDC in EVT_PAINT handler in wxMSW.
Failure to create a wxPaintDC in EVT_PAINT handler resulted in many serious
and difficult to debug problems under wxMSW. We used to document that the user
shouldn't do it but this wasn't enough (see #11648). We could also assert if
we detected that a handler didn't create a wxPaintDC but it seems better to
just handle this case gracefully for consistency with the other platforms.

Add wxDidCreatePaintDC global variable which is reset before generating
wxPaintEvent and set to true when ::BeginPaint() is called from wxPaintDC
ctor and validate the update region of the window ourselves if it wasn't set
(meaning that wxPaintDC wasn't created).

Update the documentation to emphasize the link between EVT_PAINT handlers and
wxPaintDC but without saying that wxPaintDC object must always be created in
the handler as this is not true any more.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-23 13:22:25 +00:00
Václav Slavík
0e7f59ab29 Make ConvertPixelsToDialog() and ConvertDialogToPixels() const.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-19 17:53:29 +00:00
Václav Slavík
dae60aeebb Add wxThreadEvent::SetPayload<T>().
This makes it possible to easily pass custom data between threads, in
type-safe way (thanks to internal use of wxAny). This adds
sizeof(wxAny)==16+sizeof(void*) overhead to wxThreadEvent, but I think
it's cheaper than doing malloc/free on copying.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-19 13:01:40 +00:00
Vadim Zeitlin
7981d3408f Document wxCENTRE style for wxMessageDialog.
This is currently only implemented for MSW but we could implement it for the
other ports in the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-18 00:29:12 +00:00
Paul Cornett
62fc18efc1 update docs for wxMAXIMIZE on GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-16 04:14:18 +00:00
Vadim Zeitlin
61503542be More wx(Flex)GridSizer constructors documentation improvements.
Mention that the number of columns may also be automatically deduced.

Don't duplicate the same documentation in wxGridSizer and wxFlexGridSizer as
this inevitably results in forgetting to update one of the versions (as in the
previous commit). Instead, just link to wxGridSizer from wxFlexGridSizer.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-14 22:51:04 +00:00
Vadim Zeitlin
b4c1fe36b9 Minor corrections to wxFlexGridSizer ctor documentation.
Be more clear about what does it mean to specify the number of rows. Don't use
@code for inline expressions. Remove an extraneous "it".

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-14 22:43:23 +00:00
Vadim Zeitlin
cbab155657 No real changes, just fix a typo in comments and documentation.
Use "surprising" instead of (common) "surprizing" misspelling.

Closes #11627.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-14 18:02:26 +00:00
Vadim Zeitlin
ccd4e1bc1e Minor fixes and enhancements to wxWindowID documentation.
Document NewControlId() more precisely. Fix various spelling and grammar
problems.

Closes #11613.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-09 17:39:45 +00:00
Jaakko Salli
14946ce13c Improved documentation for wxPGProperty::DoSetAttribute()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-07 19:43:12 +00:00
Jaakko Salli
f83dc48529 Fixed a deprecation message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-07 19:31:56 +00:00
Mattia Barbon
371ae8b57c Document wxPerl interface differences for wxRichTextCtrl.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-02 11:29:00 +00:00
Mattia Barbon
3d50d1632b Fix method name in wxInfoBar interface.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-02 10:40:31 +00:00
Jaakko Salli
e16bff8e62 Changed wxPropertyCategory to use same cell rendering code as regular properties. This allows labels for category columns other than the first. Rendering code was heavily modified to allow 'merging' of cells when needed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-29 16:04:40 +00:00
Vadim Zeitlin
ea99e8e31e Return the kind of cells span from wxGrid::GetCellSize().
Behaviour of GetCellSize() may be very surprising for the unwary as it can
return negative or null "size" of the cell.

Add CellSpan return value to allow the caller to check what kind of cell are
we dealing with easier.

Also document the new return value as well as the function (and matching
SetCellSize()) itself carefully as its behaviour is far from obvious.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-27 19:40:41 +00:00
Vadim Zeitlin
4d056a68ad Document wxString::operator<<(wxUniChar).
wxUniChar overload was somehow omitted from the list.

Closes #11568.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-27 19:40:08 +00:00
Vadim Zeitlin
3e97b55017 Override some methods in wxF(F)ileStream to resolve ambiguities.
Override virtual methods IsSeekable(), GetLength() and OnSysSeek/Tell() to
forward to wxF(F)InputStream base class as otherwise it's impossible to use
them at all because of ambiguity between the versions inherited from this
class and wxF(F)OutputStream (even though the two versions should do the same
thing as they operate on the same file descriptor/handle).

Also improve documentation of these classes: provide a brief description,
correct the base classes.

Closes #11577.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-27 19:39:55 +00:00
Jaakko Salli
534090e354 Replaced 'InlineHelp' property attribute with 'Hint'; Use SetHint() wxTextCtrl and wxComboCtrl member function to set it; Added a small section about help string and hint text in propgrid overview
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-26 10:45:04 +00:00
Jaakko Salli
107defe36a Added wxComboCtrl::SetHint(), GetHint()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-26 10:33:35 +00:00
Jaakko Salli
f8e4413e5e Added documentation for wxPGEditor::SetControlAppearance()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-25 08:33:56 +00:00
Jaakko Salli
3e6d8c3118 Added wxPropertyGrid::SetUnspecifiedValueAppearance(); Added wxPGEditor::SetControlAppearance() for applying wxPGCell attributes on a property editor.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-22 16:12:02 +00:00
Francesco Montorsi
163bd4f700 fix miscellaneous Doxygen 1.6.1 warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-20 15:07:08 +00:00
Francesco Montorsi
69aa257b83 fix a few doxygen warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-20 14:50:50 +00:00
Francesco Montorsi
7145bcfc47 add a detailed description to wxMenuItem::SetItemLabel() partially moving docs from wxMenu::Append; add usage examples; organize wxMenuItem functions in 3 sections (getters, setters, checkers) to make it easier to browse the docs; use @onlyfor tag where necessary instead of the (Windows only) text
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-20 14:24:42 +00:00
Jaakko Salli
68174df30e Added wxPropertyGrid::GetUnspecifiedValueText(). Use it instead of assuming that the unspecified value text is always an empty string.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-20 12:48:41 +00:00
Vadim Zeitlin
42427d8950 Document wxSpinCtrlDouble in correct header file.
The public header for this class is wx/spinctrl.h, but it was documented in
wx/generic/spinctrg.h which didn't even correspond to an existing real header
file (which is called spinctlg.h). Move the documentation to wx/spinctrl.h and
remove the old file.

Closes #11548.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-19 12:00:16 +00:00
Vadim Zeitlin
16e40259d6 Document wxSizerItem::Assign{Window,Sizer,Spacer}() methods.
Also explain why SetSpacer() and SetSizer() are deprecated.

Closes #11555.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-19 12:00:04 +00:00
Vadim Zeitlin
b5123fb66f Document wxDV_NO_HEADER style.
Closes #11559.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-19 11:59:55 +00:00
Vadim Zeitlin
dc47e0adfd Correct typo in wxEVT_COMMAND_LISTBOX_DOUBLECLICKED.
An underscore was omitted between LISTBOX and DOUBLECLICKED.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-16 19:27:34 +00:00
Jaakko Salli
f525476870 Added wxPropertyGridManager header support; Refactored wxPropertyGrid DoSetSplitterPosition() code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-13 12:00:04 +00:00
Jaakko Salli
00b4dbd74e wxHeaderColumnBase -> wxHeaderColumn; Fixed UpdateColumnWidthToFit() sample code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-12 12:24:28 +00:00
Jaakko Salli
5405bfb439 Generate wxPropertyGrid splitter (column divider) events: wxEVT_PG_COL_BEGIN_DRAG, wxEVT_PG_COL_DRAGGING, wxEVT_PG_COL_END_DRAG
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-12 09:38:10 +00:00
Vadim Zeitlin
cc26010927 Add support for stretchable spaces to wxToolBar.
Stretchable spaces consume all extra toolbar space not allocated to the fixed
size items. They can in particular be used to right-align (some) toolbar tools.

Add and document the new API, change the sample to show it and implement it
for MSW, GTK and OS X/Cocoa.

Also refactor MSW background erasing/repainting code to avoid duplicated calls
to DrawThemeBackground(), call it from a new helper MSWEraseRect() function.

Note that we may want to add support for "invisible" separators, IOW
non-stretchable spaces. This could be easily done for MSW after the changes in
this commit and is supported natively by GTK+ and Cocoa so implementing this
would be trivial if there is any interest.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-10 03:04:19 +00:00
Vadim Zeitlin
2600776164 No changes, just slightly simplify the tool insertion code.
Added a helper DoInsertNewTool() function to avoid code duplication and ensure
that we never forget to delete a new tool if inserting it into the toolbar
failed.

Also explicitly document that the tool passed to the public InsertTool() is
not owned by the toolbar and so must be deleted by the caller if its insertion
failed.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-10 02:59:02 +00:00
Vadim Zeitlin
156c705738 Document that wxTrap() now traps [almost] always.
Don't mention the words "release mode" as there is no such thing now, instead
refer to wxDEBUG_LEVEL explicitly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-09 13:45:41 +00:00
Kevin Ollivier
ebf7d5c40a Add OSX prefix, and be clear that this is OS X only API to avoid any expectation that this API may work elsewhere.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-09 05:25:32 +00:00
Vadim Zeitlin
af7e24c33e Make wxPORTRAIT and wxLANDSCAPE elements of wxPrintOrientation enum.
Change wxPrintData::SetOrientation() to take wxPrintOrientation instead of
int.

Closes #11393.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-08 16:35:47 +00:00
Vadim Zeitlin
c2ebca9b9c Document wxListCtrl::FindItem() return value.
In particular mention that it returns -1 if no items were found.

Closes #11523.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-07 15:26:31 +00:00
Kevin Ollivier
efb2fa41ff Add wxTLW::SetModified to allow apps to set the TLW's dirty state. On Mac this gives us the dot in the close button, not implemented elsewhere yet.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-07 01:54:21 +00:00
Vadim Zeitlin
e01a788ee0 Add support for MSW unique volume names to wxFileName.
Recognize the paths starting with "\\?\Volume{GUID}" under MSW and provide a
way to test for them.

Closes #8874.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-05 17:31:00 +00:00
Václav Slavík
384a14ff32 Documented that wxCriticalSection can be used before wxInitialize(), as a global object.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-05 09:05:45 +00:00
Bryan Petty
0678e935b1 Forward-port of r62758 (Added wxHtmlEasyPrinting name accessor and modifier).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-01 20:23:29 +00:00
Vadim Zeitlin
874dbd3a4a Allow calling wxStrchr() with a narrow string and wide character.
Calls to wxStrchr(char-string, wide-char) would previously fail if wide
character couldn't be converted to a single character in the current locale
encoding. Change it to simply return NULL in this case as it's a safe and
useful generalization: a narrow string will never contain a wide character not
representable in the current locale.

Add wxUniChar::GetAsChar() to help with implementing this.

Closes #11487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 14:37:03 +00:00
Vadim Zeitlin
aeef0d188c No changes, just remove unnecessary UTF-8 bytes.
The patch of #11187 (applied in r61884) unnecessarily used +U2019 which can't
be converted to latin1, remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 03:37:36 +00:00
Vadim Zeitlin
cfbc15ee04 Allow changing horizontal alignment of numeric cells in wxGrid.
wxGridCellAttr didn't provide any way to query its alignment attributes
without falling back to the (always defined) default alignment so the code in
wxGridCellNumberRenderer and similar classes simply always used right
alignment,

Add a new wxGridCellAttr::GetNonDefaultAlignment() function which allows to
retrieve the alignment defined in the attribute and use it to use right
alignment by default but allow overriding it.

Add a test to the sample showing a non right-aligned numeric cell.

Incidentally fix a long-standing bug in wxGridCell{DateTime,Enum}Renderers
which used wxRIGHT instead of wxALIGN_RIGHT and so were not aligned properly
even by default.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 01:47:38 +00:00
Vadim Zeitlin
ba0185b557 Add symbolic constant wxALIGN_INVALID and use it instead of -1 in wxGrid.
wxGridCellAttr was using literal -1 to indicate "no alignment" which wasn't
immediately obvious, use a new wxALIGN_INVALID (which has the same value)
instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 01:47:30 +00:00
Vadim Zeitlin
64932e4105 No changes, just avoid overriding GetNativeFontInfoDesc() in wxMSW wxFont.
wxFont::GetNativeFontInfoDesc() and GetNativeFontInfoUserDesc() were
overridden just to ensure that the font is realized but it makes sense to do
it in wxFontRefData::GetNativeFontInfo() itself as detecting the face name
won't work if the font is not realized anyhow. And then we don't need these
functions at all as the only thing they do is checking that the font is valid
when they are called but this can be done in the base class itself as this
should happen in all ports (document that this is the case).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 02:34:01 +00:00
Vadim Zeitlin
7d4911333f Document that throwing exceptions from wxTimer::Notify() is unsupported.
Currently exceptions thrown from this function are not passed to wxApp::
OnExceptionInMainLoop() (unlike exceptions thrown from timer event handlers).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-22 11:24:03 +00:00
Stefan Neis
1dd35cd656 Fixed Cut&Paste error in wxTextCtrl::ChangeValue documentation (fixes #11469).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-22 11:00:42 +00:00
Jaakko Salli
eb23d11e00 Added a new documentation overview section 'Caveats When Not Using C++ RTTI', describing possible problems with Bind() and wxAny when C++ RTTI is disabled.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-21 11:39:32 +00:00