]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/wx/lib/ogl/_diagram.py
move wxPython to new trunk
[wxWidgets.git] / wxPython / wx / lib / ogl / _diagram.py
diff --git a/wxPython/wx/lib/ogl/_diagram.py b/wxPython/wx/lib/ogl/_diagram.py
deleted file mode 100644 (file)
index 6bdf001..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-# -*- coding: iso-8859-1 -*-
-#----------------------------------------------------------------------------
-# Name:         diagram.py
-# Purpose:      Diagram class
-#
-# Author:       Pierre Hjälm (from C++ original by Julian Smart)
-#
-# Created:      2004-05-08
-# RCS-ID:       $Id$
-# Copyright:    (c) 2004 Pierre Hjälm - 1998 Julian Smart
-# Licence:      wxWindows license
-#----------------------------------------------------------------------------
-
-import wx
-
-DEFAULT_MOUSE_TOLERANCE = 3
-
-
-
-class Diagram(object):
-    """Encapsulates an entire diagram, with methods for drawing. A diagram has
-    an associated ShapeCanvas.
-
-    Derived from:
-      Object
-    """
-    def __init__(self):
-        self._diagramCanvas = None
-        self._quickEditMode = False
-        self._snapToGrid = True
-        self._gridSpacing = 5.0
-        self._shapeList = []
-        self._mouseTolerance = DEFAULT_MOUSE_TOLERANCE
-
-    def Redraw(self, dc):
-        """Draw the shapes in the diagram on the specified device context."""
-        if self._shapeList:
-            if self.GetCanvas():
-                self.GetCanvas().SetCursor(wx.HOURGLASS_CURSOR)
-            for object in self._shapeList:
-                object.Draw(dc)
-            if self.GetCanvas():
-                self.GetCanvas().SetCursor(wx.STANDARD_CURSOR)
-
-    def Clear(self, dc):
-        """Clear the specified device context."""
-        dc.Clear()
-
-    def AddShape(self, object, addAfter = None):
-        """Adds a shape to the diagram. If addAfter is not None, the shape
-        will be added after addAfter.
-        """
-        if not object in self._shapeList:
-            if addAfter:
-                self._shapeList.insert(self._shapeList.index(addAfter) + 1, object)
-            else:
-                self._shapeList.append(object)
-
-            object.SetCanvas(self.GetCanvas())
-
-    def InsertShape(self, object):
-        """Insert a shape at the front of the shape list."""
-        self._shapeList.insert(0, object)
-
-    def RemoveShape(self, object):
-        """Remove the shape from the diagram (non-recursively) but do not
-        delete it.
-        """
-        if object in self._shapeList:
-            self._shapeList.remove(object)
-            
-    def RemoveAllShapes(self):
-        """Remove all shapes from the diagram but do not delete the shapes."""
-        self._shapeList = []
-
-    def DeleteAllShapes(self):
-        """Remove and delete all shapes in the diagram."""
-        for shape in self._shapeList[:]:
-            if not shape.GetParent():
-                self.RemoveShape(shape)
-                shape.Delete()
-                
-    def ShowAll(self, show):
-        """Call Show for each shape in the diagram."""
-        for shape in self._shapeList:
-            shape.Show(show)
-
-    def DrawOutline(self, dc, x1, y1, x2, y2):
-        """Draw an outline rectangle on the current device context."""
-        dc.SetPen(wx.Pen(wx.Color(0, 0, 0), 1, wx.DOT))
-        dc.SetBrush(wx.TRANSPARENT_BRUSH)
-
-        dc.DrawLines([[x1, y1], [x2, y1], [x2, y2], [x1, y2], [x1, y1]])
-
-    def RecentreAll(self, dc):
-        """Make sure all text that should be centred, is centred."""
-        for shape in self._shapeList:
-            shape.Recentre(dc)
-
-    def SetCanvas(self, canvas):
-        """Set the canvas associated with this diagram."""
-        self._diagramCanvas = canvas
-
-    def GetCanvas(self):
-        """Return the shape canvas associated with this diagram."""
-        return self._diagramCanvas
-        
-    def FindShape(self, id):
-        """Return the shape for the given identifier."""
-        for shape in self._shapeList:
-            if shape.GetId() == id:
-                return shape
-        return None
-
-    def Snap(self, x, y):
-        """'Snaps' the coordinate to the nearest grid position, if
-        snap-to-grid is on."""
-        if self._snapToGrid:
-            return self._gridSpacing * int(x / self._gridSpacing + 0.5), self._gridSpacing * int(y / self._gridSpacing + 0.5)
-        return x, y
-
-    def SetGridSpacing(self, spacing): 
-        """Sets grid spacing.""" 
-        self._gridSpacing = spacing 
-    def SetSnapToGrid(self, snap): 
-        """Sets snap-to-grid mode.""" 
-        self._snapToGrid = snap 
-
-    def GetGridSpacing(self):
-        """Return the grid spacing."""
-        return self._gridSpacing
-
-    def GetSnapToGrid(self):
-        """Return snap-to-grid mode."""
-        return self._snapToGrid
-
-    def SetQuickEditMode(self, mode):
-        """Set quick-edit-mode on of off.
-
-        In this mode, refreshes are minimized, but the diagram may need
-        manual refreshing occasionally.
-        """
-        self._quickEditMode = mode
-
-    def GetQuickEditMode(self):
-        """Return quick edit mode."""
-        return self._quickEditMode
-
-    def SetMouseTolerance(self, tolerance):
-        """Set the tolerance within which a mouse move is ignored.
-
-        The default is 3 pixels.
-        """
-        self._mouseTolerance = tolerance
-
-    def GetMouseTolerance(self):
-        """Return the tolerance within which a mouse move is ignored."""
-        return self._mouseTolerance
-
-    def GetShapeList(self):
-        """Return the internal shape list."""
-        return self._shapeList
-
-    def GetCount(self):
-        """Return the number of shapes in the diagram."""
-        return len(self._shapeList)