X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c9955d147ed92cdd79d795ed94d6e03fca06a52..5b5035ce5b432a4535a830debcb8ed26b7e1ec7b:/contrib/src/ogl/composit.cpp diff --git a/contrib/src/ogl/composit.cpp b/contrib/src/ogl/composit.cpp index eb5be656df..da0e212d71 100644 --- a/contrib/src/ogl/composit.cpp +++ b/contrib/src/ogl/composit.cpp @@ -6,7 +6,7 @@ // Created: 12/07/98 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ @@ -24,14 +24,12 @@ #include #endif +#if wxUSE_PROLOGIO #include +#endif + +#include "wx/ogl/ogl.h" -#include -#include -#include -#include -#include -#include #if wxUSE_PROLOGIO // Sometimes, objects need to access the whole database to @@ -67,7 +65,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxCompositeShape, wxRectangleShape) wxCompositeShape::wxCompositeShape(): wxRectangleShape(10.0, 10.0) { -// selectable = FALSE; +// selectable = false; m_oldX = m_xpos; m_oldY = m_ypos; } @@ -138,7 +136,7 @@ bool wxCompositeShape::OnMovePre(wxDC& dc, double x, double y, double oldx, doub node = node->GetNext(); } - return TRUE; + return true; } void wxCompositeShape::OnErase(wxDC& dc) @@ -156,7 +154,7 @@ void wxCompositeShape::OnErase(wxDC& dc) static double objectStartX = 0.0; static double objectStartY = 0.0; -void wxCompositeShape::OnDragLeft(bool draw, double x, double y, int keys, int attachment) +void wxCompositeShape::OnDragLeft(bool WXUNUSED(draw), double x, double y, int WXUNUSED(keys), int WXUNUSED(attachment)) { double xx = x; double yy = y; @@ -176,7 +174,7 @@ void wxCompositeShape::OnDragLeft(bool draw, double x, double y, int keys, int a // wxShape::OnDragLeft(draw, x, y, keys, attachment); } -void wxCompositeShape::OnBeginDragLeft(double x, double y, int keys, int attachment) +void wxCompositeShape::OnBeginDragLeft(double x, double y, int WXUNUSED(keys), int WXUNUSED(attachment)) { objectStartX = x; objectStartY = y; @@ -204,7 +202,7 @@ void wxCompositeShape::OnBeginDragLeft(double x, double y, int keys, int attachm // wxShape::OnBeginDragLeft(x, y, keys, attachment); } -void wxCompositeShape::OnEndDragLeft(double x, double y, int keys, int attachment) +void wxCompositeShape::OnEndDragLeft(double x, double y, int keys, int WXUNUSED(attachment)) { // wxShape::OnEndDragLeft(x, y, keys, attachment); @@ -231,7 +229,7 @@ void wxCompositeShape::OnEndDragLeft(double x, double y, int keys, int attachmen if (m_canvas && !m_canvas->GetQuickEditMode()) m_canvas->Redraw(dc); } -void wxCompositeShape::OnRightClick(double x, double y, int keys, int attachment) +void wxCompositeShape::OnRightClick(double x, double y, int keys, int WXUNUSED(attachment)) { // If we get a ctrl-right click, this means send the message to // the division, so we can invoke a user interface for dealing with regions. @@ -280,9 +278,9 @@ void wxCompositeShape::SetSize(double w, double h, bool recursive) // Scale the position first double newX = (double)(((object->GetX() - GetX())*xScale) + GetX()); double newY = (double)(((object->GetY() - GetY())*yScale) + GetY()); - object->Show(FALSE); + object->Show(false); object->Move(dc, newX, newY); - object->Show(TRUE); + object->Show(true); // Now set the scaled size object->GetBoundingBoxMin(&xBound, &yBound); @@ -373,7 +371,7 @@ void wxCompositeShape::Copy(wxShape& copy) while (node) { wxShape *object = (wxShape *)node->GetData(); - wxShape *newObject = object->CreateNewCopy(FALSE, FALSE); + wxShape *newObject = object->CreateNewCopy(false, false); if (newObject->GetId() == 0) newObject->SetId(wxNewId()); @@ -560,7 +558,7 @@ void wxCompositeShape::CalculateSize() bool wxCompositeShape::Recompute() { int noIterations = 0; - bool changed = TRUE; + bool changed = true; while (changed && (noIterations < 500)) { changed = Constrain(); @@ -579,13 +577,13 @@ bool wxCompositeShape::Constrain() { CalculateSize(); - bool changed = FALSE; + bool changed = false; wxNode *node = m_children.GetFirst(); while (node) { wxShape *object = (wxShape *)node->GetData(); if (object->Constrain()) - changed = TRUE; + changed = true; node = node->GetNext(); } @@ -593,7 +591,7 @@ bool wxCompositeShape::Constrain() while (node) { wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); - if (constraint->Evaluate()) changed = TRUE; + if (constraint->Evaluate()) changed = true; node = node->GetNext(); } return changed; @@ -608,12 +606,12 @@ void wxCompositeShape::WriteAttributes(wxExpr *clause) // Output constraints as constraint1 = (...), constraint2 = (...), etc. int constraintNo = 1; - char m_constraintNameBuf[20]; + wxChar m_constraintNameBuf[20]; wxNode *node = m_constraints.GetFirst(); while (node) { wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); - sprintf(m_constraintNameBuf, "constraint%d", constraintNo); + wxSprintf(m_constraintNameBuf, _T("constraint%d"), constraintNo); // Each constraint is stored in the form // (type name id xspacing yspacing m_constrainingObjectId constrainedObjectIdList) @@ -650,7 +648,7 @@ void wxCompositeShape::WriteAttributes(wxExpr *clause) childrenExpr->Append(new wxExpr(child->GetId())); node = node->GetNext(); } - clause->AddAttributeValue("children", childrenExpr); + clause->AddAttributeValue(_T("children"), childrenExpr); // Write the ids of all the division images if (m_divisions.GetCount() > 0) @@ -663,7 +661,7 @@ void wxCompositeShape::WriteAttributes(wxExpr *clause) divisionsExpr->Append(new wxExpr(child->GetId())); node = node->GetNext(); } - clause->AddAttributeValue("divisions", divisionsExpr); + clause->AddAttributeValue(_T("divisions"), divisionsExpr); } } @@ -682,24 +680,20 @@ void wxCompositeShape::ReadConstraints(wxExpr *clause, wxExprDatabase *database) { // Constraints are output as constraint1 = (...), constraint2 = (...), etc. int constraintNo = 1; - char m_constraintNameBuf[20]; - bool haveConstraints = TRUE; + wxChar m_constraintNameBuf[20]; + bool haveConstraints = true; while (haveConstraints) { - sprintf(m_constraintNameBuf, "constraint%d", constraintNo); + wxSprintf(m_constraintNameBuf, _T("constraint%d"), constraintNo); wxExpr *constraintExpr = NULL; clause->GetAttributeValue(m_constraintNameBuf, &constraintExpr); if (!constraintExpr) { - haveConstraints = FALSE; + haveConstraints = false; break; } - int cType = 0; - double cXSpacing = 0.0; - double cYSpacing = 0.0; - wxString cName(""); - long cId = 0; + wxString cName = wxEmptyString; wxShape *m_constrainingObject = NULL; wxList m_constrainedObjects; @@ -714,13 +708,13 @@ void wxCompositeShape::ReadConstraints(wxExpr *clause, wxExprDatabase *database) wxExpr *constrainingExpr = constraintExpr->Nth(5); wxExpr *constrainedExpr = constraintExpr->Nth(6); - cType = (int)typeExpr->IntegerValue(); - cXSpacing = xExpr->RealValue(); - cYSpacing = yExpr->RealValue(); + int cType = (int)typeExpr->IntegerValue(); + double cXSpacing = xExpr->RealValue(); + double cYSpacing = yExpr->RealValue(); cName = nameExpr->StringValue(); - cId = idExpr->IntegerValue(); + long cId = idExpr->IntegerValue(); - wxExpr *objExpr1 = database->HashFind("node_image", constrainingExpr->IntegerValue()); + wxExpr *objExpr1 = database->HashFind(_T("node_image"), constrainingExpr->IntegerValue()); if (objExpr1 && objExpr1->GetClientData()) m_constrainingObject = (wxShape *)objExpr1->GetClientData(); else @@ -731,7 +725,7 @@ void wxCompositeShape::ReadConstraints(wxExpr *clause, wxExprDatabase *database) while (currentIdExpr) { long currentId = currentIdExpr->IntegerValue(); - wxExpr *objExpr2 = database->HashFind("node_image", currentId); + wxExpr *objExpr2 = database->HashFind(_T("node_image"), currentId); if (objExpr2 && objExpr2->GetClientData()) { m_constrainedObjects.Append((wxShape *)objExpr2->GetClientData()); @@ -767,7 +761,7 @@ void wxCompositeShape::MakeContainer() division->Move(dc, GetX(), GetY()); Recompute(); - division->Show(TRUE); + division->Show(true); } wxDivisionShape *wxCompositeShape::OnCreateDivision() @@ -788,11 +782,11 @@ wxShape *wxCompositeShape::FindContainerImage() return NULL; } -// Returns TRUE if division is a descendant of this container +// Returns true if division is a descendant of this container bool wxCompositeShape::ContainsDivision(wxDivisionShape *division) { if (m_divisions.Member(division)) - return TRUE; + return true; wxNode *node = m_children.GetFirst(); while (node) { @@ -801,11 +795,11 @@ bool wxCompositeShape::ContainsDivision(wxDivisionShape *division) { bool ans = ((wxCompositeShape *)child)->ContainsDivision(division); if (ans) - return TRUE; + return true; } node = node->GetNext(); } - return FALSE; + return false; } /* @@ -818,8 +812,8 @@ IMPLEMENT_DYNAMIC_CLASS(wxDivisionShape, wxCompositeShape) wxDivisionShape::wxDivisionShape() { SetSensitivityFilter(OP_CLICK_LEFT | OP_CLICK_RIGHT | OP_DRAG_RIGHT); - SetCentreResize(FALSE); - SetAttachmentMode(TRUE); + SetCentreResize(false); + SetAttachmentMode(true); m_leftSide = NULL; m_rightSide = NULL; m_topSide = NULL; @@ -887,7 +881,7 @@ bool wxDivisionShape::OnMovePre(wxDC& dc, double x, double y, double oldx, doubl object->Move(dc, object->GetX() + diffX, object->GetY() + diffY, display); node = node->GetNext(); } - return TRUE; + return true; } void wxDivisionShape::OnDragLeft(bool draw, double x, double y, int keys, int attachment) @@ -991,30 +985,30 @@ void wxDivisionShape::WriteAttributes(wxExpr *clause) wxCompositeShape::WriteAttributes(clause); if (m_leftSide) - clause->AddAttributeValue("left_side", (long)m_leftSide->GetId()); + clause->AddAttributeValue(_T("left_side"), (long)m_leftSide->GetId()); if (m_topSide) - clause->AddAttributeValue("top_side", (long)m_topSide->GetId()); + clause->AddAttributeValue(_T("top_side"), (long)m_topSide->GetId()); if (m_rightSide) - clause->AddAttributeValue("right_side", (long)m_rightSide->GetId()); + clause->AddAttributeValue(_T("right_side"), (long)m_rightSide->GetId()); if (m_bottomSide) - clause->AddAttributeValue("bottom_side", (long)m_bottomSide->GetId()); + clause->AddAttributeValue(_T("bottom_side"), (long)m_bottomSide->GetId()); - clause->AddAttributeValue("handle_side", (long)m_handleSide); - clause->AddAttributeValueString("left_colour", m_leftSideColour); - clause->AddAttributeValueString("top_colour", m_topSideColour); - clause->AddAttributeValueString("left_style", m_leftSideStyle); - clause->AddAttributeValueString("top_style", m_topSideStyle); + clause->AddAttributeValue(_T("handle_side"), (long)m_handleSide); + clause->AddAttributeValueString(_T("left_colour"), m_leftSideColour); + clause->AddAttributeValueString(_T("top_colour"), m_topSideColour); + clause->AddAttributeValueString(_T("left_style"), m_leftSideStyle); + clause->AddAttributeValueString(_T("top_style"), m_topSideStyle); } void wxDivisionShape::ReadAttributes(wxExpr *clause) { wxCompositeShape::ReadAttributes(clause); - clause->GetAttributeValue("handle_side", m_handleSide); - clause->GetAttributeValue("left_colour", m_leftSideColour); - clause->GetAttributeValue("top_colour", m_topSideColour); - clause->GetAttributeValue("left_style", m_leftSideStyle); - clause->GetAttributeValue("top_style", m_topSideStyle); + clause->GetAttributeValue(_T("handle_side"), m_handleSide); + clause->GetAttributeValue(_T("left_colour"), m_leftSideColour); + clause->GetAttributeValue(_T("top_colour"), m_topSideColour); + clause->GetAttributeValue(_T("left_style"), m_leftSideStyle); + clause->GetAttributeValue(_T("top_style"), m_topSideStyle); } #endif @@ -1032,11 +1026,11 @@ void wxDivisionShape::OnRightClick(double x, double y, int keys, int attachment) { if (Selected()) { - Select(FALSE); + Select(false); GetParent()->Draw(dc); } else - Select(TRUE); + Select(true); } } */ @@ -1064,7 +1058,7 @@ bool wxDivisionShape::Divide(int direction) double oldWidth = GetWidth(); double oldHeight = GetHeight(); if (Selected()) - Select(FALSE); + Select(false); wxClientDC dc(GetCanvas()); GetCanvas()->PrepareDC(dc); @@ -1078,7 +1072,7 @@ bool wxDivisionShape::Divide(int direction) double newXPos2 = GetX(); double newYPos2 = (double)(y1 + (3.0*GetHeight()/4.0)); wxDivisionShape *newDivision = compositeParent->OnCreateDivision(); - newDivision->Show(TRUE); + newDivision->Show(true); Erase(dc); @@ -1129,7 +1123,7 @@ bool wxDivisionShape::Divide(int direction) double newXPos2 = (double)(x1 + (3.0*GetWidth()/4.0)); double newYPos2 = GetY(); wxDivisionShape *newDivision = compositeParent->OnCreateDivision(); - newDivision->Show(TRUE); + newDivision->Show(true); Erase(dc); @@ -1168,7 +1162,7 @@ bool wxDivisionShape::Divide(int direction) compositeParent->MakeMandatoryControlPoints(); } compositeParent->Draw(dc); - return TRUE; + return true; } // Make one control point for every visible line @@ -1182,8 +1176,8 @@ void wxDivisionShape::MakeMandatoryControlPoints() double maxX, maxY; GetBoundingBoxMax(&maxX, &maxY); - double x, y; - int direction; + double x = 0.0 , y = 0.0; + int direction = 0; /* if (m_leftSide) { @@ -1301,15 +1295,15 @@ void wxDivisionShape::ResetMandatoryControlPoints() } } -// Adjust a side, returning FALSE if it's not physically possible. +// Adjust a side, returning false if it's not physically possible. bool wxDivisionShape::AdjustLeft(double left, bool test) { double x2 = (double)(GetX() + (GetWidth()/2.0)); if (left >= x2) - return FALSE; + return false; if (test) - return TRUE; + return true; double newW = x2 - left; double newX = (double)(left + newW/2.0); @@ -1320,7 +1314,7 @@ bool wxDivisionShape::AdjustLeft(double left, bool test) Move(dc, newX, GetY()); - return TRUE; + return true; } bool wxDivisionShape::AdjustTop(double top, bool test) @@ -1328,9 +1322,9 @@ bool wxDivisionShape::AdjustTop(double top, bool test) double y2 = (double)(GetY() + (GetHeight()/2.0)); if (top >= y2) - return FALSE; + return false; if (test) - return TRUE; + return true; double newH = y2 - top; double newY = (double)(top + newH/2.0); @@ -1341,7 +1335,7 @@ bool wxDivisionShape::AdjustTop(double top, bool test) Move(dc, GetX(), newY); - return TRUE; + return true; } bool wxDivisionShape::AdjustRight(double right, bool test) @@ -1349,9 +1343,9 @@ bool wxDivisionShape::AdjustRight(double right, bool test) double x1 = (double)(GetX() - (GetWidth()/2.0)); if (right <= x1) - return FALSE; + return false; if (test) - return TRUE; + return true; double newW = right - x1; double newX = (double)(x1 + newW/2.0); @@ -1362,7 +1356,7 @@ bool wxDivisionShape::AdjustRight(double right, bool test) Move(dc, newX, GetY()); - return TRUE; + return true; } bool wxDivisionShape::AdjustBottom(double bottom, bool test) @@ -1370,9 +1364,9 @@ bool wxDivisionShape::AdjustBottom(double bottom, bool test) double y1 = (double)(GetY() - (GetHeight()/2.0)); if (bottom <= y1) - return FALSE; + return false; if (test) - return TRUE; + return true; double newH = bottom - y1; double newY = (double)(y1 + newH/2.0); @@ -1383,13 +1377,13 @@ bool wxDivisionShape::AdjustBottom(double bottom, bool test) Move(dc, GetX(), newY); - return TRUE; + return true; } wxDivisionControlPoint::wxDivisionControlPoint(wxShapeCanvas *the_canvas, wxShape *object, double size, double the_xoffset, double the_yoffset, int the_type): wxControlPoint(the_canvas, object, size, the_xoffset, the_yoffset, the_type) { - SetEraseObject(FALSE); + SetEraseObject(false); } wxDivisionControlPoint::~wxDivisionControlPoint() @@ -1440,51 +1434,51 @@ void wxDivisionControlPoint::OnEndDragLeft(double x, double y, int keys, int att double dx2 = (double)(division->GetX() + (division->GetWidth()/2.0)); double dy2 = (double)(division->GetY() + (division->GetHeight()/2.0)); - bool success = TRUE; + bool success = true; switch (division->GetHandleSide()) { case DIVISION_SIDE_LEFT: { if ((x <= x1) || (x >= x2) || (x >= dx2)) - success = FALSE; + success = false; // Try it out first... - else if (!division->ResizeAdjoining(DIVISION_SIDE_LEFT, x, TRUE)) - success = FALSE; + else if (!division->ResizeAdjoining(DIVISION_SIDE_LEFT, x, true)) + success = false; else - division->ResizeAdjoining(DIVISION_SIDE_LEFT, x, FALSE); + division->ResizeAdjoining(DIVISION_SIDE_LEFT, x, false); break; } case DIVISION_SIDE_TOP: { if ((y <= y1) || (y >= y2) || (y >= dy2)) - success = FALSE; - else if (!division->ResizeAdjoining(DIVISION_SIDE_TOP, y, TRUE)) - success = FALSE; + success = false; + else if (!division->ResizeAdjoining(DIVISION_SIDE_TOP, y, true)) + success = false; else - division->ResizeAdjoining(DIVISION_SIDE_TOP, y, FALSE); + division->ResizeAdjoining(DIVISION_SIDE_TOP, y, false); break; } case DIVISION_SIDE_RIGHT: { if ((x <= x1) || (x >= x2) || (x <= dx1)) - success = FALSE; - else if (!division->ResizeAdjoining(DIVISION_SIDE_RIGHT, x, TRUE)) - success = FALSE; + success = false; + else if (!division->ResizeAdjoining(DIVISION_SIDE_RIGHT, x, true)) + success = false; else - division->ResizeAdjoining(DIVISION_SIDE_RIGHT, x, FALSE); + division->ResizeAdjoining(DIVISION_SIDE_RIGHT, x, false); break; } case DIVISION_SIDE_BOTTOM: { if ((y <= y1) || (y >= y2) || (y <= dy1)) - success = FALSE; - else if (!division->ResizeAdjoining(DIVISION_SIDE_BOTTOM, y, TRUE)) - success = FALSE; + success = false; + else if (!division->ResizeAdjoining(DIVISION_SIDE_BOTTOM, y, true)) + success = false; else - division->ResizeAdjoining(DIVISION_SIDE_BOTTOM, y, FALSE); + division->ResizeAdjoining(DIVISION_SIDE_BOTTOM, y, false); break; } @@ -1524,7 +1518,7 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) { bool success = division->AdjustRight(newPos, test); if (!success && test) - return FALSE; + return false; } break; } @@ -1534,7 +1528,7 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) { bool success = division->AdjustBottom(newPos, test); if (!success && test) - return FALSE; + return false; } break; } @@ -1544,7 +1538,7 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) { bool success = division->AdjustLeft(newPos, test); if (!success && test) - return FALSE; + return false; } break; } @@ -1554,7 +1548,7 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) { bool success = division->AdjustTop(newPos, test); if (!success && test) - return FALSE; + return false; } break; } @@ -1564,7 +1558,7 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) node = node->GetNext(); } - return TRUE; + return true; } /* @@ -1587,8 +1581,7 @@ public: }; BEGIN_EVENT_TABLE(OGLPopupDivisionMenu, wxMenu) - EVT_CUSTOM_RANGE(wxEVT_COMMAND_MENU_SELECTED, - DIVISION_MENU_SPLIT_HORIZONTALLY, + EVT_MENU_RANGE(DIVISION_MENU_SPLIT_HORIZONTALLY, DIVISION_MENU_EDIT_BOTTOM_EDGE, OGLPopupDivisionMenu::OnMenu) END_EVENT_TABLE() @@ -1624,7 +1617,7 @@ void OGLPopupDivisionMenu::OnMenu(wxCommandEvent& event) } } -void wxDivisionShape::EditEdge(int side) +void wxDivisionShape::EditEdge(int WXUNUSED(side)) { wxMessageBox(wxT("EditEdge() not implemented"), wxT("OGL"), wxOK); @@ -1701,7 +1694,7 @@ void wxDivisionShape::EditEdge(int side) dialog->Centre(wxBOTH); wxEndBusyCursor(); - dialog->Show(TRUE); + dialog->Show(true); int lineStyle = wxSOLID; if (*pStyle) @@ -1739,13 +1732,13 @@ void wxDivisionShape::PopupMenu(double x, double y) oglPopupDivisionMenu->SetClientData((void *)this); if (m_leftSide) - oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_LEFT_EDGE, TRUE); + oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_LEFT_EDGE, true); else - oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_LEFT_EDGE, FALSE); + oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_LEFT_EDGE, false); if (m_topSide) - oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_TOP_EDGE, TRUE); + oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_TOP_EDGE, true); else - oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_TOP_EDGE, FALSE); + oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_TOP_EDGE, false); int x1, y1; m_canvas->GetViewStart(&x1, &y1);