root/gaphor/tags/gaphor-0.9.0/test-diagram.py

Revision 119, 2.7 kB (checked in by arjanmol, 6 years ago)

*** empty log message ***

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
Line 
1 #!/usr/bin/env python
2 # vim: sw=4
3 # Test application for diagram items.
4 #
5
6 import sys
7 import gtk
8 from gaphor.gaphor import Gaphor
9 import gaphor.diagram as diagram
10 import diacanvas
11 import gaphor.UML as UML
12 import gaphor.ui.namespace as namespace
13 import gaphor.ui as ui
14
15 uc = getattr (UML, 'UseCase')
16 print 'getattr (UML, "UseCase") ->', uc
17
18 def mainquit(*args):
19     gtk.main_quit()
20
21 def test_factory_signals(name, obj):
22     #print 'XXX Signal', name, 'for object', obj
23     pass
24
25 factory = UML.ElementFactory()
26 fact2 = UML.ElementFactory()
27 assert factory is fact2
28 del fact2
29
30 factory.connect(test_factory_signals)
31
32 model = factory.create (UML.Model)
33
34 dia = factory.create (UML.Diagram)
35 print 'diagram created:', dia
36 dia.namespace = model
37 dia.name = "Diagram1"
38 print dia.namespace
39 print model.ownedElement.list
40 print "diagram created"
41 #dia.canvas.root.add (diacanvas.CanvasLine(head_pos=(0,0), tail_pos=(50,50)))
42 treemodel = namespace.NamespaceModel(factory)
43
44 diafact = diagram.DiagramItemFactory()
45
46 item = diafact.create(dia, diagram.CommentItem)
47 item.move (30, 50)
48 item = diafact.create(dia, diagram.ActorItem)
49 #item.subject.namespace = dia
50 item.move (150, 50)
51 item.subject.name = "Jaap"
52 #item = dia.canvas.root.create_item (diagram.UseCase)
53 #package = factory.create(UML.Package)
54 #package.namespace = model
55 usecase = factory.create(UML.UseCase)
56 usecase.namespace = model
57 item = diafact.create(dia, diagram.UseCaseItem, subject=usecase)
58 #usecase = item.subject
59 item = diafact.create (dia, diagram.UseCaseItem, subject=usecase)
60 #item.subject
61 item.subject.namespace = dia
62 item.move (200, 100)
63 usecase.name = 'UC1'
64 #item.subject.name = 'UC1'
65
66 diagram_view = ui.DiagramView (dia)
67 diagram_view.window.connect ('destroy', mainquit)
68 print "diagram displayed"
69 dia.canvas.clear_undo()
70 del dia, diagram_view
71
72 ui.TreeView (treemodel)
73
74 #for k in UML.Element._hash.keys():
75 #    print "Element", k, ":", UML.Element._hash[k].__dict__
76
77 treemodel.dump()
78
79 #usecase.name = 'aap'
80
81 #ui.MainWindow();
82 gaphorMain = Gaphor()
83
84 print 'Going into main'
85 gtk.main()
86
87 treemodel.dump()
88
89 #diagram_view.destroy()
90
91 #print "Comment.presentation:", comment.presentation.list
92 #print "Actor.presentation:", actor.presentation.list
93 #print "UseCase.presentation:", usecase.presentation.list
94 #print "removing diagram..."
95 #dia.unlink()
96 #del dia
97 #UML.update_model()
98 #print "Comment.presentation:", comment.presentation.list
99 #print "Actor.presentation:", actor.presentation.list
100 #print "UseCase.presentation:", usecase.presentation.list
101 #del actor
102 #del usecase
103 #del comment
104
105 #print "Garbage collection after gtk.main() has finished (should be empty):",
106 #UML.update_model()
107 #for k in UML.elements.keys():
108 #    print "Element", k, ":", UML.elements[k].__dict__
109
110 print "Program ended normally..."
Note: See TracBrowser for help on using the browser.