+ virtual WXPixmap GetBackingPixmap() const { return m_backingPixmap; }
+ inline int GetPixmapWidth() const { return m_pixmapWidth; }
+ inline int GetPixmapHeight() const { return m_pixmapHeight; }
+
+ // Change properties
+ virtual void ChangeFont(bool keepOriginalSize = TRUE); // Change to the current font (often overridden)
+ virtual void DoChangeForegroundColour(WXWidget widget, wxColour& foregroundColour);
+ virtual void DoChangeBackgroundColour(WXWidget widget, wxColour& backgroundColour, bool changeArmColour = FALSE);
+ // These to be overridden as needed (may change several widgets)
+ virtual void ChangeBackgroundColour(); // Change background and foreground colour using current
+ // background colour setting (Motif generates
+ // foreground based on background)
+ virtual void ChangeForegroundColour(); // Change foreground colour using current
+ // foreground colour setting
+
+ // Adds the widget to the hash table and adds event handlers.
+ bool AttachWidget (wxWindow* parent, WXWidget mainWidget,
+ WXWidget formWidget, int x, int y, int width, int height);
+ bool DetachWidget(WXWidget widget);
+
+ // Generates a paint event
+ virtual void DoPaint();
+
+ // How to implement accelerators. If we find a key event,
+ // translate to wxWindows wxKeyEvent form. Find a widget for the window.
+ // Now find a wxWindow for the widget. If there isn't one, go up the widget hierarchy
+ // trying to find one. Once one is found, call ProcessAccelerator for the
+ // window. If it returns TRUE (processed the event), skip the X event,
+ // otherwise carry on up the wxWindows window hierarchy calling ProcessAccelerator.
+ // If all return FALSE, process the X event as normal.
+ // Eventually we can implement OnCharHook the same way, but concentrate on accelerators
+ // for now.
+ // ProcessAccelerator must look at the current accelerator table, and try to find
+ // what menu id or window (beneath it) has this ID. Then construct an appropriate command
+ // event and send it.
+ virtual bool ProcessAccelerator(wxKeyEvent& event);
+