summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2015-04-03 15:15:40 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-04-07 09:18:17 +0200
commitf135e0863647f605b389ae02ba8a87a792ff5833 (patch)
treefc3777680c5997aae79fb066ae0e897d80bea2f0
parenta2222ba2febf572d223142d824200c56d4f4c450 (diff)
Added some ascii art for the SdrObject and SdrView.
Change-Id: If7e1e25315e282432a344b60b4602b1a51971399
-rw-r--r--svx/README41
1 files changed, 41 insertions, 0 deletions
diff --git a/svx/README b/svx/README
index a3574dde90de..9224fdeb56fa 100644
--- a/svx/README
+++ b/svx/README
@@ -6,6 +6,47 @@ this is where a lot of wht work would happen to move to the canvas. (what does t
svdraw
transparent gradient stuff.
+== SdrObject ==
+
+The shapes you can see in LibreOffice (like rectangle, etc.) are SdrObjects.
+They are declared as a hierarchy:
+
+SdrObject <- SdrAttrObj <- E3dObject <- E3dCompoundObject <- E3dCubeObj
+ ^ ^ ^ ^ ^ | | ^ ^
+ | | | | | | | | +--- E3dExtrudeObj
+ | | | | | | | +----- E3dLatheObj
+ | | | | | | +------- E3dPolygonObj
+ | | | | | +--------- E3dSphereObj
+ | | | | +--- E3dScene...
+ | | | |
+ | | | +--- SdrTextObj <- SdrObjCustomShape...
+ | | | ^ ^ ^ ^ ^
+ | | | | | | | +--- SdrEdgeObj...
+ | | | | | | +----- SdrMeasureObj...
+ | | | | | +------- SdrPathObj...
+ | | | | +--------- SdrRectObj...
+ | | | +----------- SdrTableObj...
+ | | +--- SdrObjGroup...
+ | + ---- SdrPageObj...
+ +------- SdrVirtObj...
+
+The above is incomplete of course.
+
+Associated are the SdrPaintView's - they have quite a deep chain of
+inheritance, where each new class adds a bit of functionality:
+
+SdrPaintView <- SdrSnapView <- SdrMarkView <- SdrEditView <- SdrPolyEditView
+ ^
+ +----------------------------------------------------------------+
+ |
+ SdrGlueEditView <- SdrObjEditView <- SdrExchangeView <- SdrDragView
+ ^
+ +----------------------------------------------------------------+
+ |
+ SdrCreateView <- SdrView
+
+From SdrView on, it is not flat, but a real hierarchy again.
+
== Drawing Layer / SdrObject(s) ==
See drawinglayer/README for general information about drawinglayer.