wxPen* m_pen;
wxBrush* m_brush;
wxFont* m_font;
- wxColour* m_textColour;
+ wxColour m_textColour;
wxString m_textColourName;
wxShapeCanvas* m_canvas;
wxList m_lines;
inline int GetFormatMode() const { return m_formatMode; }
inline wxString GetName() const { return m_regionName; }
inline wxString GetColour() const { return m_textColour; }
- wxColour *GetActualColourObject();
+ wxColour GetActualColourObject();
inline wxList& GetFormattedText() { return m_formattedText; }
inline wxString GetPenColour() const { return m_penColour; }
inline int GetPenStyle() const { return m_penStyle; }
int m_formatMode; // FORMAT_CENTRE_HORIZ | FORMAT_CENTRE_VERT | FORMAT_NONE
wxString m_regionName;
wxString m_textColour;
- wxColour* m_actualColourObject; // For speed purposes
+ wxColour m_actualColourObject; // For speed purposes
// New members for specifying divided rectangle division colour/style 30/6/94
wxString m_penColour;
public:
inline wxDrawOp(int theOp) { m_op = theOp; }
inline ~wxDrawOp() {}
- inline virtual void Scale(double xScale, double yScale) {};
- inline virtual void Translate(double x, double y) {};
- inline virtual void Rotate(double x, double y, double theta, double sinTheta, double cosTheta) {};
+ inline virtual void Scale(double WXUNUSED(xScale), double WXUNUSED(yScale)) {};
+ inline virtual void Translate(double WXUNUSED(x), double WXUNUSED(y)) {};
+ inline virtual void Rotate(double WXUNUSED(x), double WXUNUSED(y), double WXUNUSED(theta), double WXUNUSED(sinTheta), double WXUNUSED(cosTheta)) {};
virtual void Do(wxDC& dc, double xoffset, double yoffset) = 0;
virtual wxDrawOp *Copy(wxPseudoMetaFile *newImage) = 0;
#if wxUSE_PROLOGIO
inline int GetOp() const { return m_op; }
// Draw an outline using the current operation. By default, return FALSE (not drawn)
- virtual bool OnDrawOutline(wxDC& dc, double x, double y, double w, double h,
- double oldW, double oldH) { return FALSE; }
+ virtual bool OnDrawOutline(wxDC& WXUNUSED(dc), double WXUNUSED(x), double WXUNUSED(y), double WXUNUSED(w), double WXUNUSED(h),
+ double WXUNUSED(oldW), double WXUNUSED(oldH)) { return FALSE; }
// Get the perimeter point using this data
- virtual bool GetPerimeterPoint(double x1, double y1,
- double x2, double y2,
- double *x3, double *y3,
- double xOffset, double yOffset,
- int attachmentMode)
+ virtual bool GetPerimeterPoint(double WXUNUSED(x1), double WXUNUSED(y1),
+ double WXUNUSED(x2), double WXUNUSED(y2),
+ double *WXUNUSED(x3), double *WXUNUSED(y3),
+ double WXUNUSED(xOffset), double WXUNUSED(yOffset),
+ int WXUNUSED(attachmentMode))
{ return FALSE; }
protected:
// these to the Windows clipboard
bool wxDiagramClipboard::CopyToClipboard(double scale)
{
+#if wxUSE_METAFILE
// Make a metafile DC
wxMetaFileDC mfDC;
if (mfDC.Ok())
delete mf;
}
- return TRUE;
+ return true;
+#else
+ wxMessageBox("wxUSE_METAFILE in build required to use Clipboard", _T("Clipboard copy problem"));
+ return false;
+#endif
}
#endif
// __WXMSW__
// area doesn't refresh properly when we change its position, under Windows.
#define wxDEFAULT_FRAME_STYLE_NO_CLIP \
- (wxSYSTEM_MENU | wxRESIZE_BORDER | wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxTHICK_FRAME | wxSYSTEM_MENU | wxCAPTION)
+ (wxDEFAULT_FRAME_STYLE & ~wxCLIP_CHILDREN)
csFrame* frame = new csFrame(m_docManager, NULL, -1, _T("OGL Studio"), m_mainFramePos, m_mainFrameSize,
wxDEFAULT_FRAME_STYLE_NO_CLIP | wxHSCROLL | wxVSCROLL);
m_pen = g_oglBlackPen;
m_brush = wxWHITE_BRUSH;
m_font = g_oglNormalFont;
- m_textColour = wxBLACK;
+ m_textColour = wxT("BLACK");
m_textColourName = wxT("BLACK");
m_visible = FALSE;
m_selected = FALSE;
void wxShape::SetTextColour(const wxString& the_colour, int regionId)
{
- wxColour *wxcolour = wxTheColourDatabase->FindColour(the_colour);
- m_textColour = wxcolour;
+ m_textColour = wxTheColourDatabase->Find(the_colour);
m_textColourName = the_colour;
wxNode *node = m_regions.Item(regionId);
wxShapeRegion *region = (wxShapeRegion *)m_regions.GetFirst()->GetData();
if (region->GetFont()) dc.SetFont(* region->GetFont());
- dc.SetTextForeground(* (region->GetActualColourObject()));
+ dc.SetTextForeground(region->GetActualColourObject());
dc.SetBackgroundMode(wxTRANSPARENT);
if (!m_formatted)
{
m_textColour = wxT("BLACK");
m_penColour = wxT("BLACK");
m_penStyle = wxSOLID;
- m_actualColourObject = NULL;
+ m_actualColourObject = wxTheColourDatabase->Find(wxT("BLACK"));
m_actualPenObject = NULL;
}
m_regionProportionX = region.m_regionProportionX;
m_regionProportionY = region.m_regionProportionY;
m_formatMode = region.m_formatMode;
- m_actualColourObject = NULL;
+ m_actualColourObject = region.m_actualColourObject;
m_actualPenObject = NULL;
m_penStyle = region.m_penStyle;
m_penColour = region.m_penColour;
void wxShapeRegion::SetColour(const wxString& col)
{
m_textColour = col;
- m_actualColourObject = NULL;
+ m_actualColourObject = col;
}
-wxColour *wxShapeRegion::GetActualColourObject()
+wxColour wxShapeRegion::GetActualColourObject()
{
- if (!m_actualColourObject)
- m_actualColourObject = wxTheColourDatabase->FindColour(GetColour());
- if (!m_actualColourObject)
- m_actualColourObject = wxBLACK;
+ m_actualColourObject = wxTheColourDatabase->Find(GetColour());
return m_actualColourObject;
}
if (!m_bitmap.Ok())
return;
- double x, y;
+ int x, y;
x = WXROUND(m_xpos - m_bitmap.GetWidth() / 2.0);
y = WXROUND(m_ypos - m_bitmap.GetHeight() / 2.0);
dc.DrawBitmap(m_bitmap, x, y, true);
if (m_pen) dc.SetPen(* m_pen);
- if (m_textColour) dc.SetTextForeground(* m_textColour);
+ dc.SetTextForeground(m_textColour);
#ifdef __WXMSW__
// For efficiency, don't do this under X - doesn't make
{
wxShapeRegion *region = (wxShapeRegion *)node->GetData();
dc.SetFont(* region->GetFont());
- dc.SetTextForeground(* region->GetActualColourObject());
+ dc.SetTextForeground(region->GetActualColourObject());
double proportion =
region->m_regionProportionY < 0.0 ? defaultProportion : region->m_regionProportionY;
dc.DrawRectangle((long)(xp - w/2.0), (long)(yp - h/2.0), (long)w, (long)h);
if (m_pen) dc.SetPen(* m_pen);
- dc.SetTextForeground(* region->GetActualColourObject());
+ dc.SetTextForeground(region->GetActualColourObject());
#ifdef __WXMSW__
dc.SetTextBackground(GetBackgroundBrush().GetColour());
}
break;
}
+#if PS_DOT != BS_HATCHED
+ /* ABX 30.12.2003 */
+ /* in microsoft/include/wingdi.h both are the same */
+ /* in fact I'm not sure why pen related PS_XXX and */
+ /* BS_XXX constants are all mixed into single style */
+ case PS_DOT:
+ style = wxDOT;
+ break;
+#endif
+ case PS_DASH:
+ style = wxSHORT_DASH;
+ break;
+ case PS_NULL:
+ style = wxTRANSPARENT;
+ break;
case BS_SOLID:
default:
style = wxSOLID;
break;
}
- if (msStyle == PS_DOT)
- style = wxDOT;
- else if (msStyle == PS_DASH)
- style = wxSHORT_DASH;
- else if (msStyle == PS_NULL)
- style = wxTRANSPARENT;
- else style = wxSOLID;
wxColour colour(GetRValue(colorref), GetGValue(colorref), GetBValue(colorref));
rec->param1 = (long)wxTheBrushList->FindOrCreateBrush(colour, style);
case 13:
{
new_line = TRUE; end_word = TRUE; i++;
+ break;
}
case wxT(' '):
{