# endif
#endif /* wxGTK && !wxUniv */
+/* wxMotif-specific dependencies */
+#if defined(__WXMOTIF__) && wxUSE_NOTEBOOK && !wxUSE_TAB_DIALOG
+# undef wxUSE_TAB_DIALOG
+# define wxUSE_TAB_DIALOG 1
+#endif
+#if defined(__WXMOTIF__) && wxUSE_TOGGLEBTN
+# undef wxUSE_TOGGLEBTN
+# define wxUSE_TOGGLEBTN 0
+#endif
+
/* generic controls dependencies */
#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
# if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
class WXDLLEXPORT wxGenericScrolledWindow : public wxPanel,
public wxScrollHelper
{
-public:
+ public:
wxGenericScrolledWindow() : wxScrollHelper(this) { }
wxGenericScrolledWindow(wxWindow *parent,
wxWindowID id = -1,
bool CanAddEventHandler() const { return m_canAddEventHandler; }
void SetCanAddEventHandler(bool flag) { m_canAddEventHandler = flag; }
+public:
WXPixmap GetBackingPixmap() const { return m_backingPixmap; }
+ void SetBackingPixmap(WXPixmap pixmap) { m_backingPixmap = pixmap; }
int GetPixmapWidth() const { return m_pixmapWidth; }
int GetPixmapHeight() const { return m_pixmapHeight; }
+ void SetPixmapWidth(int w) { m_pixmapWidth = w; }
+ void SetPixmapHeight(int h) { m_pixmapHeight = h; }
-public:
// Change properties
virtual void ChangeFont(bool keepOriginalSize = TRUE); // Change to the current font (often overridden)
#include "wx/os2/spinctrl.h"
#elif defined(__WXGTK__)
#include "wx/gtk/spinctrl.h"
+#elif defined(__WXMOTIF__)
+ #include "wx/generic/spinctlg.h"
#elif defined(__WXMAC__)
#include "wx/generic/spinctlg.h"
#else // Win16 || !Win
return FALSE;
}
+// set the size (the same for all pages)
+void wxNotebook::SetPageSize(const wxSize& size)
+{
+ // TODO
+}
+
+// set the padding between tabs (in pixels)
+void wxNotebook::SetPadding(const wxSize& padding)
+{
+ // TODO
+}
+
+// set the size of the tabs for wxNB_FIXEDWIDTH controls
+void wxNotebook::SetTabSize(const wxSize& sz)
+{
+ // TODO
+}
+
// ----------------------------------------------------------------------------
// wxNotebook operations
// ----------------------------------------------------------------------------
int totalPixelWidth = m_xScrollLines * m_xScrollPixelsPerLine;
int totalPixelHeight = m_yScrollLines * m_yScrollPixelsPerLine;
- if (m_targetWindow->m_backingPixmap &&
- !((m_targetWindow->m_pixmapWidth == totalPixelWidth) &&
- (m_targetWindow->m_pixmapHeight == totalPixelHeight)))
+ if (m_targetWindow->GetBackingPixmap() &&
+ !((m_targetWindow->GetPixmapWidth() == totalPixelWidth) &&
+ (m_targetWindow->GetPixmapHeight() == totalPixelHeight)))
{
- XFreePixmap (dpy, (Pixmap) m_targetWindow->m_backingPixmap);
- m_targetWindow->m_backingPixmap = (WXPixmap) 0;
+ XFreePixmap (dpy, (Pixmap) m_targetWindow->GetBackingPixmap());
+ m_targetWindow->SetBackingPixmap((WXPixmap) 0);
}
- if (!m_targetWindow->m_backingPixmap &&
+ if (!m_targetWindow->GetBackingPixmap() &&
(noUnitsX != 0) && (noUnitsY != 0))
{
int depth = wxDisplayDepth();
- m_pixmapWidth = totalPixelWidth;
- m_pixmapHeight = totalPixelHeight;
- m_backingPixmap = (WXPixmap) XCreatePixmap (dpy, RootWindow (dpy, DefaultScreen (dpy)),
- m_pixmapWidth, m_pixmapHeight, depth);
+ m_targetWindow->SetPixmapWidth(totalPixelWidth);
+ m_targetWindow->SetPixmapHeight(totalPixelHeight);
+ m_targetWindow->SetBackingPixmap((WXPixmap) XCreatePixmap (dpy, RootWindow (dpy, DefaultScreen (dpy)),
+ m_targetWindow->GetPixmapWidth(), m_targetWindow->GetPixmapHeight(), depth));
}
}
// what is considered "small index"?
#define INDEX_IS_SMALL 100
+/* Motif defines this as a macro */
+#ifdef Below
+#undef Below
+#endif
//--------------------------------------------------------------------------
// wxHtmlHelpTreeItemData (private)
menu->SetButtonWidget(w);
}
- menu->SetMenuBar(this);
+ //menu->SetMenuBar(this);
m_titles.Add(title);
// put wxSpinCtrl here too because it doesn't have a separate file for it in
// wxMotif (yet)
IMPLEMENT_DYNAMIC_CLASS(wxSpinButton, wxControl)
-IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl, wxControl)
IMPLEMENT_DYNAMIC_CLASS(wxSpinEvent, wxNotifyEvent)
bool wxSpinButton::Create(wxWindow *parent, wxWindowID id, const wxPoint& WXUNUSED(pos), const wxSize& WXUNUSED(size),
// ----------------------------------------------------------------------------
extern wxHashTable *wxWidgetHashTable;
+static wxWindow* g_captureWindow = NULL;
+
// ----------------------------------------------------------------------------
// private functions
// Destructor
wxWindow::~wxWindow()
{
+ if (g_captureWindow == this)
+ g_captureWindow = NULL;
+
m_isBeingDeleted = TRUE;
// Motif-specific actions first
void wxWindow::CaptureMouse()
{
+ g_captureWindow = this;
if ( m_winCaptured )
return;
void wxWindow::ReleaseMouse()
{
+ g_captureWindow = NULL;
if ( !m_winCaptured )
return;
return NULL;
}
+/* static */
+wxWindow *wxWindowBase::GetCapture()
+{
+ return (wxWindow *)g_captureWindow;
+}
+
+
// Find the wxWindow at the current mouse position, returning the mouse
// position.
wxWindow* wxFindWindowAtPointer(wxPoint& pt)
return wxPoint(rootX, rootY);
}
+
// ----------------------------------------------------------------------------
// wxNoOptimize: switch off size optimization
// ----------------------------------------------------------------------------
int wxNoOptimize::ms_count = 0;
-
-
-