#ifndef _OGL_BASIC_H_
#define _OGL_BASIC_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "basic.h"
#endif
+
#define OGL_VERSION 2.0
#ifndef DEFAULT_MOUSE_TOLERANCE
#define DEFAULT_MOUSE_TOLERANCE 3
#endif
-// Edit these lines if you positively don't want PROLOGIO support
-#ifndef PROLOGIO
-#define PROLOGIO
-#endif
-
// Key identifiers
#define KEY_SHIFT 1
#define KEY_CTRL 2
class wxShapeRegion;
class wxShape;
-#ifdef PROLOGIO
+#if wxUSE_PROLOGIO
class WXDLLEXPORT wxExpr;
class WXDLLEXPORT wxExprDatabase;
#endif
-class wxShapeEvtHandler: public wxObject, public wxClientDataContainer
+class WXDLLIMPEXP_OGL wxShapeEvtHandler: public wxObject, public wxClientDataContainer
{
DECLARE_DYNAMIC_CLASS(wxShapeEvtHandler)
// Does the copy - override for new event handlers which might store
// app-specific data.
- virtual void CopyData(wxShapeEvtHandler& copy) {};
+ virtual void CopyData(wxShapeEvtHandler& WXUNUSED(copy)) {};
private:
wxShapeEvtHandler* m_previousHandler;
wxShape* m_handlerShape;
};
-class wxShape: public wxShapeEvtHandler
+class WXDLLIMPEXP_OGL wxShape: public wxShapeEvtHandler
{
DECLARE_ABSTRACT_CLASS(wxShape)
virtual void OnEraseContents(wxDC& dc);
virtual void OnHighlight(wxDC& dc);
virtual void OnLeftClick(double x, double y, int keys = 0, int attachment = 0);
- virtual void OnLeftDoubleClick(double x, double y, int keys = 0, int attachment = 0) {}
+ virtual void OnLeftDoubleClick(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys) = 0, int WXUNUSED(attachment) = 0) {}
virtual void OnRightClick(double x, double y, int keys = 0, int attachment = 0);
virtual void OnSize(double x, double y);
virtual bool OnMovePre(wxDC& dc, double x, double y, double old_x, double old_y, bool display = TRUE);
void SetPen(wxPen *pen);
void SetBrush(wxBrush *brush);
- inline void SetClientData(wxObject *client_data) { m_clientData = client_data; };
- inline wxObject *GetClientData() const { return m_clientData; };
virtual void Show(bool show);
virtual bool IsShown() const { return m_visible; }
virtual wxFont *GetFont(int regionId = 0) const;
virtual void SetTextColour(const wxString& colour, int regionId = 0);
virtual wxString GetTextColour(int regionId = 0) const;
- virtual inline int GetNumberOfTextRegions() const { return m_regions.Number(); }
+ virtual inline int GetNumberOfTextRegions() const { return m_regions.GetCount(); }
virtual void SetRegionName(const wxString& name, int regionId = 0);
// Get the name representing the region for this image alone.
virtual int GetRegionId(const wxString& name);
// Construct names for regions, unique even for children of a composite.
- virtual void NameRegions(const wxString& parentName = "");
+ virtual void NameRegions(const wxString& parentName = wxEmptyString);
// Get list of regions
inline wxList& GetRegions() const { return (wxList&) m_regions; }
virtual void ClearText(int regionId = 0);
void RemoveLine(wxLineShape *line);
-#ifdef PROLOGIO
+#if wxUSE_PROLOGIO
// I/O
virtual void WriteAttributes(wxExpr *clause);
virtual void ReadAttributes(wxExpr *clause);
wxBrush GetBackgroundBrush();
- private:
- wxObject* m_clientData;
-
protected:
wxShapeEvtHandler* m_eventHandler;
bool m_formatted;
long m_branchStyle;
};
-class wxPolygonShape: public wxShape
+class WXDLLIMPEXP_OGL wxPolygonShape: public wxShape
{
DECLARE_DYNAMIC_CLASS(wxPolygonShape)
public:
// Recalculates the centre of the polygon
virtual void CalculatePolygonCentre();
-#ifdef PROLOGIO
+#if wxUSE_PROLOGIO
void WriteAttributes(wxExpr *clause);
void ReadAttributes(wxExpr *clause);
#endif
int GetNumberOfAttachments() const;
bool GetAttachmentPosition(int attachment, double *x, double *y,
int nth = 0, int no_arcs = 1, wxLineShape *line = NULL);
- bool AttachmentIsValid(int attachment);
+ bool AttachmentIsValid(int attachment) const;
// Does the copying for this object
void Copy(wxShape& copy);
double m_originalHeight;
};
-class wxRectangleShape: public wxShape
+class WXDLLIMPEXP_OGL wxRectangleShape: public wxShape
{
DECLARE_DYNAMIC_CLASS(wxRectangleShape)
public:
void SetSize(double x, double y, bool recursive = TRUE);
void SetCornerRadius(double rad); // If > 0, rounded corners
-#ifdef PROLOGIO
+#if wxUSE_PROLOGIO
void WriteAttributes(wxExpr *clause);
void ReadAttributes(wxExpr *clause);
#endif
double m_cornerRadius;
};
-class wxTextShape: public wxRectangleShape
+class WXDLLIMPEXP_OGL wxTextShape: public wxRectangleShape
{
DECLARE_DYNAMIC_CLASS(wxTextShape)
public:
void OnDraw(wxDC& dc);
-#ifdef PROLOGIO
- void WriteAttributes(wxExpr *clause);
+#if wxUSE_PROLOGIO
+ void WriteAttributes(wxExpr *clause);
#endif
// Does the copying for this object
void Copy(wxShape& copy);
};
-class wxEllipseShape: public wxShape
+class WXDLLIMPEXP_OGL wxEllipseShape: public wxShape
{
DECLARE_DYNAMIC_CLASS(wxEllipseShape)
public:
void OnDraw(wxDC& dc);
void SetSize(double x, double y, bool recursive = TRUE);
-#ifdef PROLOGIO
+#if wxUSE_PROLOGIO
void WriteAttributes(wxExpr *clause);
void ReadAttributes(wxExpr *clause);
#endif
double m_height;
};
-class wxCircleShape: public wxEllipseShape
+class WXDLLIMPEXP_OGL wxCircleShape: public wxEllipseShape
{
DECLARE_DYNAMIC_CLASS(wxCircleShape)
public: