~wxVisualAttributes() { delete self; }
}
- // the font used for control label/text inside it
- wxFont font;
-
- // the foreground colour
- wxColour colFg;
+// // the font used for control label/text inside it
+// wxFont font;
+// // the foreground colour
+// wxColour colFg;
+// // the background colour, may be wxNullColour if the controls background
+// // colour is not solid
+// wxColour colBg;
+
+ // Use our own getters and properties instead of the ones that SWIG will
+ // generate, so copies of the attributes will be made when they are
+ // accessed, instead of using a pointer to the one in the object which may
+ // be temporary.
+ %extend {
+ wxFont _get_font() { return self->font; }
+ wxColour _get_colFg() { return self->colFg; }
+ wxColour _get_colBg() { return self->colBg; }
+ }
- // the background colour, may be wxNullColour if the controls background
- // colour is not solid
- wxColour colBg;
+ %property(font, _get_font)
+ %property(colFg, _get_colFg)
+ %property(colBg, _get_colBg)
};
DocDeclStr(
virtual void , Raise(),
"Raises the window to the top of the window hierarchy. In current
-version of wxWidgets this works both for manage and child windows.", "");
+version of wxWidgets this works both for managed and child windows.", "");
DocDeclStr(
virtual void , Lower(),
"Lowers the window to the bottom of the window hierarchy. In current
-version of wxWidgets this works both for manage and child windows.", "");
+version of wxWidgets this works both for managed and child windows.", "");
DocDeclStr(
bool , IsEnabled() const,
- "Returns true if the window is enabled for input, false otherwise.", "");
+ "Returns true if the window is enabled for input, false otherwise.
+This method takes into account the enabled state of parent windows up
+to the top-level window.", "");
+
+ DocDeclStr(
+ bool , IsThisEnabled() const,
+ "Returns the internal enabled state independent of the parent(s) state,
+i.e. the state in which the window would be if all of its parents are
+enabled. Use `IsEnabled` to get the effective window state.", "");
+
DocDeclStr(
virtual bool , IsShownOnScreen() const,
"Can this window have focus?", "");
+ DocDeclStr(
+ bool , CanAcceptFocus() const,
+ "Can this window have focus right now?", "");
+
+
+
DocDeclStr(
virtual bool , AcceptsFocusFromKeyboard() const,
"Can this window be given focus by keyboard navigation? if not, the
it.", "");
+
+ DocDeclStr(
+ bool , CanAcceptFocusFromKeyboard() const,
+ "Can this window be assigned focus from keyboard right now?", "");
+
+
+ DocDeclStr(
+ virtual void , SetCanFocus(bool canFocus),
+ "", "");
+
+
+
+ DocDeclAStr(
+ virtual bool , NavigateIn(int flags = wxNavigationKeyEvent::IsForward),
+ "NavigateIn(self, int flags=NavigationKeyEvent.IsForward) -> bool",
+ "Navigates inside this window.", "");
DocDeclAStr(
virtual bool , Navigate(int flags = wxNavigationKeyEvent::IsForward),
"Navigate(self, int flags=NavigationKeyEvent.IsForward) -> bool",
- "Does keyboard navigation from this window to another, by sending a
-`wx.NavigationKeyEvent`.", "
+ "Does keyboard navigation starting from this window to another. This is
+equivalient to self.GetParent().NavigateIn().", "
:param flags: A combination of the ``IsForward`` or ``IsBackward``
and the ``WinChange`` values in the `wx.NavigationKeyEvent`
wxWindow *, GetGrandParent() const,
"Returns the parent of the parent of this window, or None if there
isn't one.", "");
-
+
+ %extend {
+ DocDeclStr(wxWindow *, GetTopLevelParent(),
+ "Returns the first frame or dialog in this window's parental hierarchy.", "")
+ {
+ return wxGetTopLevelParent(self);
+ }
+ }
+
DocDeclStr(
virtual bool , IsTopLevel() const,
self.thisown = pre.thisown
pre.thisown = 0
if hasattr(self, '_setOORInfo'):
- self._setOORInfo(self)
+ try:
+ self._setOORInfo(self)
+ except TypeError:
+ pass
if hasattr(self, '_setCallbackInfo'):
- self._setCallbackInfo(self, pre.__class__)
+ try:
+ self._setCallbackInfo(self, pre.__class__)
+ except TypeError:
+ pass
}
%pythoncode {
%property(AcceleratorTable, GetAcceleratorTable, SetAcceleratorTable, doc="See `GetAcceleratorTable` and `SetAcceleratorTable`");
- %property(AdjustedBestSize, GetAdjustedBestSize, doc="See `GetAdjustedBestSize`");
%property(AutoLayout, GetAutoLayout, SetAutoLayout, doc="See `GetAutoLayout` and `SetAutoLayout`");
%property(BackgroundColour, GetBackgroundColour, SetBackgroundColour, doc="See `GetBackgroundColour` and `SetBackgroundColour`");
%property(BackgroundStyle, GetBackgroundStyle, SetBackgroundStyle, doc="See `GetBackgroundStyle` and `SetBackgroundStyle`");
%property(Font, GetFont, SetFont, doc="See `GetFont` and `SetFont`");
%property(ForegroundColour, GetForegroundColour, SetForegroundColour, doc="See `GetForegroundColour` and `SetForegroundColour`");
%property(GrandParent, GetGrandParent, doc="See `GetGrandParent`");
+ %property(TopLevelParent, GetTopLevelParent, doc="See `GetTopLevelParent`");
%property(Handle, GetHandle, doc="See `GetHandle`");
%property(HelpText, GetHelpText, SetHelpText, doc="See `GetHelpText` and `SetHelpText`");
%property(Id, GetId, SetId, doc="See `GetId` and `SetId`");
#endif
%}
+MustHaveApp(wxWindow_FromHWND);
+
%inline %{
wxWindow* wxWindow_FromHWND(wxWindow* parent, unsigned long _hWnd) {
#ifdef __WXMSW__