// to derive from the wxControlWithArrows interface and implement its methods.
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxControlWithArrows;
-class WXDLLEXPORT wxDC;
-class WXDLLEXPORT wxMouseEvent;
-class WXDLLEXPORT wxRect;
-class WXDLLEXPORT wxRenderer;
+class WXDLLIMPEXP_FWD_CORE wxControlWithArrows;
+class WXDLLIMPEXP_FWD_CORE wxDC;
+class WXDLLIMPEXP_FWD_CORE wxMouseEvent;
+class WXDLLIMPEXP_FWD_CORE wxRect;
+class WXDLLIMPEXP_FWD_CORE wxRenderer;
// ----------------------------------------------------------------------------
// wxScrollArrows: an abstraction of scrollbar arrow
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxScrollArrows
+class WXDLLIMPEXP_CORE wxScrollArrows
{
public:
enum Arrow
bool scrollbarLike = false) const;
// process a mouse move, enter or leave event, possibly calling
- // wxControlWithArrows::SetArrowState() if wxControlWithArrows::HitTest()
- // says that the mosue has left/entered an arrow
+ // wxControlWithArrows::SetArrowState() if
+ // wxControlWithArrows::HitTestArrow() says that the mouse has left/entered
+ // an arrow
bool HandleMouseMove(const wxMouseEvent& event) const;
// process a mouse click event
// wxControlWithArrows: interface implemented by controls using wxScrollArrows
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxControlWithArrows
+class WXDLLIMPEXP_CORE wxControlWithArrows
{
public:
+ virtual ~wxControlWithArrows() {}
+
// get the renderer to use for drawing the arrows
virtual wxRenderer *GetRenderer() const = 0;
int flag, bool set = true) = 0;
// hit testing: return on which arrow the point is (or Arrow_None)
- virtual wxScrollArrows::Arrow HitTest(const wxPoint& pt) const = 0;
+ virtual wxScrollArrows::Arrow HitTestArrow(const wxPoint& pt) const = 0;
// called when the arrow is pressed, return true to continue scrolling and
// false to stop it