Пример #1
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_line(self.translate([51.0, 19.0, 51.0, 58.0]), tags = self.tag, fill= 'black', joinstyle= 'round', smooth= 0, capstyle= 'butt', arrow= 'none', arrowshape= '8 10 3', splinesteps= '12', width= '5.0', stipple= '')
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
     h = drawing.create_oval(self.translate([51.0, 38.0, 51.0, 38.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_text(self.translate([53.0, 7.0]), tags = self.tag, fill= 'black', anchor= 'center', font= 'Helvetica -12', text= ', ', justify= 'left', width= '0', stipple= '')
     self.gf2 = GraphicalForm(drawing, h, "gf2")
     self.graphForms.append(self.gf2)
     h = drawing.create_text(self.translate([51.0, 78.0]), tags = self.tag, fill= 'black', anchor= 'center', font= '{MS Sans Serif} 8', text= 'atomic', justify= 'left', width= '0', stipple= '')
     self.gf5 = GraphicalForm(drawing, h, "gf5")
     self.graphForms.append(self.gf5)
     if self.semanticObject: drawText = self.semanticObject.time.toString(25,5)
     else: drawText = "<time>"
     h = drawing.create_text(self.translate([56.0, 8.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'w', font= 'Helvetica -12', justify= 'left', width= '0', stipple= '')
     self.attr_display["time"] = h
     self.gf3 = GraphicalForm(drawing, h, "gf3")
     self.graphForms.append(self.gf3)
     if self.semanticObject: drawText = self.semanticObject.processes.toString(25,5)
     else: drawText = "<processes>"
     h = drawing.create_text(self.translate([51.0, 65.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'center', font= 'Helvetica -12', justify= 'left', width= '0', stipple= '')
     self.attr_display["processes"] = h
     self.gf6 = GraphicalForm(drawing, h, "gf6")
     self.graphForms.append(self.gf6)
     if self.semanticObject: drawText = self.semanticObject.name.toString(25,5)
     else: drawText = "<name>"
     h = drawing.create_text(self.translate([47.0, 8.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'e', font= 'Helvetica -12', justify= 'right', width= '0', stipple= '')
     self.attr_display["name"] = h
     self.gf4 = GraphicalForm(drawing, h, "gf4")
     self.graphForms.append(self.gf4)
Пример #2
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        self.image_gf0 = PhotoImage(format='gif', data=self.imageDict['p.gif'])
        h = drawing.create_image(self.translate([25.0, 25.0]),
                                 tags=self.tag,
                                 image=self.image_gf0)
        self.gf0 = GraphicalForm(drawing, h, 'gf0', 'p.gif')
        self.graphForms.append(self.gf0)

        h = drawing.create_oval(self.translate([25.0, 0.0, 25.0, 0.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        if self.semanticObject: drawText = self.semanticObject.Name.toString()
        else: drawText = "<Name>"
        font = tkFont.Font(family='Helvetica',
                           size=12,
                           weight='normal',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([40.0, 60.0, 40.0, 46.0])[:2],
                                tags=self.tag,
                                font=font,
                                fill='black',
                                anchor='center',
                                text=drawText,
                                width='0',
                                justify='left',
                                stipple='')
        self.attr_display["Name"] = h
        self.gf2 = GraphicalForm(drawing, h, 'gf2', fontObject=font)
        self.graphForms.append(self.gf2)
Пример #3
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_rectangle(self.translate([3.0, 10.0, 8.0, 28.0]), tags = self.tag, stipple= '', width= '1.0', outline= 'black', fill= '')
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
     h = drawing.create_polygon(self.translate([8.0, 10.0, 16.0, 2.0, 16.0, 36.0, 8.0, 28.0, 8.0, 28.0]), tags = self.tag, stipple= '', width= '1.0', splinesteps= '12', outline= 'black', smooth= 0, fill= '')
     self.gf8 = GraphicalForm(drawing, h, "gf8")
     self.graphForms.append(self.gf8)
     h = drawing.create_oval(self.translate([16.0, 3.0, 16.0, 3.0]), tags = (self.tag, "connector"), stipple= '', width= '1.0', outline= 'black', fill= 'red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([16.0, 36.0, 16.0, 36.0]), tags = (self.tag, "connector"), stipple= '', width= '1.0', outline= 'black', fill= 'red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([16.0, 11.0, 16.0, 11.0]), tags = (self.tag, "connector"), stipple= '', width= '1.0', outline= 'black', fill= 'red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([16.0, 20.0, 16.0, 20.0]), tags = (self.tag, "connector"), stipple= '', width= '1.0', outline= 'black', fill= 'red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([16.0, 28.0, 16.0, 28.0]), tags = (self.tag, "connector"), stipple= '', width= '1.0', outline= 'black', fill= 'red')
     self.connectors.append(h)
     if self.semanticObject: drawText = self.semanticObject.name.toString(25,5)
     else: drawText = "<name>"
     h = drawing.create_text(self.translate([23.0, 44.0]), tags = self.tag, text = drawText, stipple= '', width= '0', fill= 'blue', font= 'Helvetica -12', anchor= 'center', justify= 'left')
     self.attr_display["name"] = h
     self.gf2 = GraphicalForm(drawing, h, "gf2")
     self.graphForms.append(self.gf2)
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([27.0, 19.0, 27.0, 19.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     if self.semanticObject:
         drawText = self.semanticObject.weight.toString(25, 5)
     else:
         drawText = "<weight>"
     h = drawing.create_text(self.translate([26.0, 7.0]),
                             tags=self.tag,
                             text=drawText,
                             fill='blue',
                             anchor='center',
                             font='Helvetica -12',
                             justify='left',
                             width='0',
                             stipple='')
     self.attr_display["weight"] = h
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
Пример #5
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_polygon(self.translate([
         13.0, 3.0, 28.0, 3.0, 35.0, 18.0, 28.0, 33.0, 13.0, 33.0, 6.0, 18.0
     ]),
                                tags=self.tag,
                                fill='lightgreen',
                                outline='black',
                                smooth=0,
                                splinesteps='12',
                                width='1.0',
                                stipple='')
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
     h = drawing.create_oval(self.translate([20.0, 33.0, 20.0, 33.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([20.0, 3.0, 20.0, 3.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([35.0, 18.0, 35.0, 18.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([6.0, 18.0, 6.0, 18.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     if self.semanticObject:
         drawText = self.semanticObject.type.toString(25, 5)
     else:
         drawText = "<type>"
     h = drawing.create_text(self.translate([20.0, 18.0]),
                             tags=self.tag,
                             text=drawText,
                             fill='blue',
                             anchor='center',
                             font='Helvetica -12',
                             justify='left',
                             width='0',
                             stipple='')
     self.attr_display["type"] = h
     self.gf2 = GraphicalForm(drawing, h, "gf2")
     self.graphForms.append(self.gf2)
Пример #6
0
 def DrawObject(self, drawing):
     self.dc = drawing
     h = drawing.create_oval(self.translate([19.0, 4.0, 107.0, 94.0]), tags = self.tag, fill = "", outline = "black")
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_rectangle(self.translate([1.0, 1.0, 118.0, 98.0]), tags = self.tag, fill = "", outline = "black")
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
Пример #7
0
class graph_AtomInheritance_2ndLink(graphEntity):
    def __init__(self, x, y, semObject=None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 28, 30
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs, "lift", "self.semanticObject.", [],
                                   [])
        constObj.setValue(
            ('lift', (['Python',
                       'OCL'], 0), (['PREcondition', 'POSTcondition'], 1), ([
                           'EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE',
                           'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP',
                           'MOVE'
                       ], [0, 0, 1, 1, 0, 0, 0, 0, 0, 0,
                           0]), 'self.gf0.lift()\012\012\012'))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_polygon(self.translate(
            [9.0, 2.0, 2.0, 22.0, 19.0, 22.0, 19.0, 22.0]),
                                   tags=self.tag,
                                   fill='lightyellow',
                                   outline='black',
                                   smooth=0,
                                   splinesteps='12',
                                   width='1.0',
                                   stipple='')
        self.gf0 = GraphicalForm(drawing, h, "gf0")
        self.graphForms.append(self.gf0)
        h = drawing.create_oval(self.translate([11.0, 15.0, 11.0, 15.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)

    def lift(self, params):
        self.gf0.lift()

    def postCondition(self, actionID, *params):
        if actionID == self.CREATE or actionID == self.CONNECT:
            res = self.lift(params)
            if res: return res
        return None

    def preCondition(self, actionID, *params):
        return None
Пример #8
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([21.0, 3.0, 21.0, 3.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([21.0, 21.0, 21.0, 21.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([30.0, 12.0, 30.0, 12.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([13.0, 12.0, 13.0, 12.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([12.0, 3.0, 30.0, 21.0]),
                             tags=self.tag,
                             stipple='',
                             width='2.0',
                             outline='darkblue',
                             fill='lightgray')
     self.gf3 = GraphicalForm(drawing, h, "gf3")
     self.graphForms.append(self.gf3)
     if self.semanticObject:
         drawText = self.semanticObject.name.toString(25, 5)
     else:
         drawText = "<name>"
     h = drawing.create_text(self.translate([23.0, 30.0]),
                             tags=self.tag,
                             text=drawText,
                             stipple='',
                             width='0',
                             fill='black',
                             font='Helvetica -12',
                             anchor='center',
                             justify='left')
     self.attr_display["name"] = h
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
Пример #9
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([3.0, 3.0, 103.0, 36.0]),
                             tags=self.tag,
                             fill='lightyellow',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_oval(self.translate([53.0, 3.0, 53.0, 3.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([53.0, 36.0, 53.0, 36.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([104.0, 20.0, 104.0, 20.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([3.0, 21.0, 3.0, 21.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
     if self.semanticObject:
         drawText = self.semanticObject.Type.toString(25, 5)
     else:
         drawText = "<Type>"
     h = drawing.create_text(self.translate([52.0, 18.0]),
                             tags=self.tag,
                             text=drawText,
                             fill='blue',
                             anchor='center',
                             font='Helvetica -12',
                             justify='left',
                             width='0',
                             stipple='')
     self.attr_display["Type"] = h
     self.gf2 = GraphicalForm(drawing, h, "gf2")
     self.graphForms.append(self.gf2)
Пример #10
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([1.0, 21.0, 1.0, 21.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_rectangle(self.translate([1.0, 1.0, 80.0, 39.0]),
                                     tags=self.tag,
                                     stipple='',
                                     width=1,
                                     outline='black',
                                     fill='blue1')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)

        h = drawing.create_oval(self.translate([38.0, 2.0, 38.0, 2.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([81.0, 21.0, 81.0, 21.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([42.0, 38.0, 42.0, 38.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        if self.semanticObject: drawText = self.semanticObject.name.toString()
        else: drawText = "<name>"
        font = tkFont.Font(family='Arial Narrow',
                           size=14,
                           weight='bold',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([41.0, 21.0, 41.0, 25.0])[:2],
                                tags=self.tag,
                                font=font,
                                fill='gray',
                                anchor='center',
                                text=drawText,
                                width='0',
                                justify='left',
                                stipple='')
        self.attr_display["name"] = h
        self.gf2 = GraphicalForm(drawing, h, 'gf2', fontObject=font)
        self.graphForms.append(self.gf2)
Пример #11
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([34.0, 72.0, 34.0, 72.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([5.0, 43.0, 5.0, 43.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([62.0, 44.0, 62.0, 44.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([32.0, 16.0, 32.0, 16.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_rectangle(self.translate([5.0, 16.0, 62.0, 72.0]),
                                  tags=self.tag,
                                  stipple='',
                                  width='2.0',
                                  outline='DARKGRAY',
                                  fill='')
     self.gf5 = GraphicalForm(drawing, h, "gf5")
     self.graphForms.append(self.gf5)
     if self.semanticObject:
         drawText = self.semanticObject.name.toString(25, 5)
     else:
         drawText = "<name>"
     h = drawing.create_text(self.translate([23.0, 7.0]),
                             tags=self.tag,
                             text=drawText,
                             stipple='',
                             width='0',
                             fill='black',
                             font='Helvetica -12',
                             anchor='center',
                             justify='left')
     self.attr_display["name"] = h
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
Пример #12
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([19.0, 8.0, 19.0, 8.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([53.0, 8.0, 53.0, 8.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([50.0, 1.0, 50.0, 1.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([20.0, 1.0, 20.0, 1.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_rectangle(self.translate([0.0, 0.0, 74.0, 9.0]),
                                     tags=self.tag,
                                     stipple='',
                                     width=1,
                                     outline='',
                                     fill='black')
        self.gf6 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf6)

        if self.semanticObject: drawText = self.semanticObject.name.toString()
        else: drawText = "<name>"
        font = tkFont.Font(family='Helvetica',
                           size=12,
                           weight='normal',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([120.0, 0.0, 120.0, -5.0])[:2],
                                tags=self.tag,
                                font=font,
                                fill='black',
                                anchor='center',
                                text=drawText,
                                width='0',
                                justify='left',
                                stipple='')
        self.attr_display["name"] = h
        self.gf7 = GraphicalForm(drawing, h, 'gf7', fontObject=font)
        self.graphForms.append(self.gf7)
Пример #13
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_rectangle(self.translate([2.0, 1.0, 103.0, 43.0]),
                                  tags=self.tag,
                                  fill='gray',
                                  outline='black',
                                  width='1.0',
                                  stipple='gray75')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_line(self.translate(
         [7.0, 49.0, 109.0, 49.0, 109.0, 7.0, 104.0, 2.0]),
                             tags=self.tag,
                             fill='black',
                             joinstyle='round',
                             smooth=0,
                             capstyle='butt',
                             arrow='none',
                             arrowshape='8 10 3',
                             splinesteps='12',
                             width='1.0',
                             stipple='')
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
     h = drawing.create_line(self.translate([6.0, 49.0, 2.0, 44.0]),
                             tags=self.tag,
                             fill='black',
                             joinstyle='round',
                             smooth=0,
                             capstyle='butt',
                             arrow='none',
                             arrowshape='8 10 3',
                             splinesteps='12',
                             width='1.0',
                             stipple='')
     self.gf2 = GraphicalForm(drawing, h, "gf2")
     self.graphForms.append(self.gf2)
     if self.semanticObject:
         drawText = self.semanticObject.Contents.toString(25, 5)
     else:
         drawText = "<Contents>"
     h = drawing.create_text(self.translate([51.0, 21.0]),
                             tags=self.tag,
                             text=drawText,
                             fill='red',
                             anchor='center',
                             font='Helvetica -14',
                             justify='left',
                             width='0',
                             stipple='')
     self.attr_display["Contents"] = h
     self.gf4 = GraphicalForm(drawing, h, "gf4")
     self.graphForms.append(self.gf4)
Пример #14
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([3.0, 3.0, 38.0, 40.0]),
                             tags=self.tag,
                             stipple='',
                             width='2.0',
                             outline='darkblue',
                             fill='lightblue')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_text(self.translate([21.0, 23.0]),
                             tags=self.tag,
                             stipple='',
                             width='0',
                             fill='black',
                             text='C',
                             font='Helvetica -12',
                             anchor='center',
                             justify='left')
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
     h = drawing.create_oval(self.translate([21.0, 3.0, 21.0, 3.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([21.0, 40.0, 21.0, 40.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([38.0, 22.0, 38.0, 22.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([3.0, 22.0, 3.0, 22.0]),
                             tags=(self.tag, "connector"),
                             stipple='',
                             width='1.0',
                             outline='black',
                             fill='red')
     self.connectors.append(h)
Пример #15
0
 def createNewGraphicalForm(self, handle):
     name = "gf" + str(self.numGraphForms)
     self.graphFormsNames.append(name)
     self.numGraphForms = self.numGraphForms + 1
     gf = GraphicalForm(self.drawing, handle, name)
     self.drawing.tag_bind(handle, "<Enter>", gf.showName)
     self.gfwrappers_handle[handle] = gf
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_polygon(self.translate([9.0, 2.0, 2.0, 22.0, 19.0, 22.0, 19.0, 22.0]), tags = self.tag, fill= 'lightyellow', outline= 'black', smooth= 0, splinesteps= '12', width= '1.0', stipple= '')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_oval(self.translate([11.0, 15.0, 11.0, 15.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
Пример #17
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_rectangle(self.translate([1.0, 1.0, 17.0, 15.0]), tags = self.tag, stipple= '', width= '1.0', outline= 'black', fill= 'purple')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_oval(self.translate([9.0, 8.0, 9.0, 8.0]), tags = (self.tag, "connector"), stipple= '', width= '1.0', outline= 'black', fill= 'red')
     self.connectors.append(h)
class graph_TTPN_Place_Transition_Rel_Center(graphEntity):

    def __init__(self, x, y, semObject = None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 52, 22
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs,"hideWeight","self.semanticObject.", [], [])
        constObj.setValue(('hideWeight', (['Python', 'OCL'], 0), (['PREcondition', 'POSTcondition'], 1), (['EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'], [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]), 'if self.semanticObject.weight.getValue() == 1 : self.gf0.setVisible(0)\012else: self.gf0.setVisible(1)\012\012\012\012\012'))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([26.0, 19.0, 26.0, 19.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        if self.semanticObject: drawText = self.semanticObject.weight.toString(25,5)
        else: drawText = "<weight>"
        h = drawing.create_text(self.translate([26.0, 7.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'center', font= 'Helvetica -12', justify= 'left', width= '0', stipple= '')
        self.attr_display["weight"] = h
        self.gf0 = GraphicalForm(drawing, h, "gf0")
        self.graphForms.append(self.gf0)

    def hideWeight(self):
       if self.semanticObject.weight.getValue() == 1 : self.gf0.setVisible(0)
       else: self.gf0.setVisible(1)
       
       
       
       
       

    def postCondition (self, actionID, * params):
       if actionID ==  self.EDIT or actionID == self.CREATE:
         res = self.hideWeight()
         if res: return res
       return None

    def preCondition (self, actionID, * params):
       return None
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     if self.semanticObject: drawText = self.semanticObject.display.toString(25,5)
     else: drawText = "<display>"
     h = drawing.create_text(self.translate([28.0, 7.0]), tags = self.tag, text = drawText, stipple= '', width= '0', fill= 'blue', font= 'Helvetica -12', anchor= 'center', justify= 'left')
     self.attr_display["display"] = h
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([-2.0, 0.0, -2.0, 0.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_polygon(self.translate([
            -47.999999999999993, 0.0, 0.0, -47.999999999999993,
            47.999999999999993, 0.0, 0.0, 47.999999999999993
        ]),
                                   tags=self.tag,
                                   stipple='',
                                   width=1,
                                   outline='black',
                                   fill='lightyellow',
                                   smooth='False',
                                   splinesteps='12')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)

        if self.semanticObject:
            drawText = self.semanticObject.name.toString(25, 5)
        else:
            drawText = "<name>"
        font = tkFont.Font(family='times',
                           size=12,
                           weight='normal',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([1.0, 0.0]),
                                tags=self.tag,
                                font=font,
                                fill='blue1',
                                anchor='center',
                                text=drawText,
                                justify='left',
                                width='0',
                                stipple='')
        self.attr_display["name"] = h
        self.gf3 = GraphicalForm(drawing, h, 'gf3', fontObject=font)
        self.graphForms.append(self.gf3)
Пример #21
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     if self.semanticObject: drawText = self.semanticObject.rate.toString()
     else: drawText = "<rate>"
     font = tkFont.Font( family='Helvetica', size=12, weight='bold', slant='roman', underline=0)
     h = drawing.create_text(self.translate([26.0, 12.0, 26.0, 7.0])[:2], tags = self.tag, font=font, fill = 'orangered1', anchor = 'center', text = drawText, width = '0', justify= 'left', stipple='' )
     self.attr_display["rate"] = h
     self.gf2 = GraphicalForm(drawing, h, 'gf2', fontObject=font)
     self.graphForms.append(self.gf2)
Пример #22
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     if self.semanticObject: drawText = self.semanticObject.name.toString()
     else: drawText = "<name>"
     font = tkFont.Font( family='Helvetica', size=12, weight='normal', slant='roman', underline=0)
     h = drawing.create_text(self.translate([0.0, 0.0, 0.0, -105.0])[:2], tags = self.tag, font=font, fill = 'black', anchor = 'center', text = drawText, width = '0', justify= 'left', stipple='' )
     self.attr_display["name"] = h
     self.gf3 = GraphicalForm(drawing, h, 'gf3', fontObject=font)
     self.graphForms.append(self.gf3)
Пример #23
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([114.0, 105.0, 114.0, 105.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_polygon(self.translate(
            [203.0, 3.0, 3.0, 3.0, 3.0, 203.0, 203.0, 203.0]),
                                   tags=self.tag,
                                   stipple='',
                                   width=3,
                                   outline='black',
                                   fill='#f2f2f2',
                                   smooth='False',
                                   splinesteps='12')
        self.gf5 = GraphicalForm(drawing, h, "gf5")
        self.graphForms.append(self.gf5)

        if self.semanticObject:
            drawText = self.semanticObject.FormalismName.toString()
        else:
            drawText = "<FormalismName>"
        font = tkFont.Font(family='Helvetica',
                           size=12,
                           weight='normal',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([4.0, 4.0, 4.0, -6.0])[:2],
                                tags=self.tag,
                                font=font,
                                fill='black',
                                anchor='nw',
                                text=drawText,
                                width='0',
                                justify='left',
                                stipple='')
        self.attr_display["FormalismName"] = h
        self.gf6 = GraphicalForm(drawing, h, 'gf6', fontObject=font)
        self.graphForms.append(self.gf6)
Пример #24
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_rectangle(self.translate([1.0, 1.0, 79.0, 58.0]),
                                  tags=self.tag,
                                  stipple='',
                                  width='1.0',
                                  outline='black',
                                  fill='')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([27.0, 19.0, 27.0, 19.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     if self.semanticObject: drawText = self.semanticObject.weight.toString(25,5)
     else: drawText = "<weight>"
     h = drawing.create_text(self.translate([26.0, 7.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'center', font= 'Helvetica -12', justify= 'left', width= '0', stipple= '')
     self.attr_display["weight"] = h
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
Пример #26
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_polygon(self.translate(
         [9.0, 2.0, 2.0, 22.0, 19.0, 22.0, 19.0, 22.0]),
                                tags=self.tag,
                                fill='lightyellow',
                                outline='black',
                                smooth=0,
                                splinesteps='12',
                                width='1.0',
                                stipple='')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_oval(self.translate([11.0, 15.0, 11.0, 15.0]),
                             tags=(self.tag, "connector"),
                             fill='red',
                             outline='black',
                             width='1.0',
                             stipple='')
     self.connectors.append(h)
Пример #27
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     try:
         self.image_gf0 = PhotoImage(file='genOOCSMP.gif')
         h = drawing.create_image(self.translate([1.0, 1.0]),
                                  tags=self.tag,
                                  image=self.image_gf0)
         self.gf0 = GraphicalForm(drawing, h, "gf0")
         self.graphForms.append(self.gf0)
     except:
         pass
Пример #28
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([14.0, 15.0, 22.0, 23.0]), tags = self.tag, stipple= '', width= '1.0', outline= 'black', fill= '')
     self.gf2 = GraphicalForm(drawing, h, "gf2")
     self.graphForms.append(self.gf2)
     h = drawing.create_oval(self.translate([113.0, 14.0, 121.0, 22.0]), tags = self.tag, stipple= '', width= '1.0', outline= 'black', fill= '')
     self.gf3 = GraphicalForm(drawing, h, "gf3")
     self.graphForms.append(self.gf3)
     h = drawing.create_line(self.translate([23.0, 19.0, 113.0, 19.0]), tags = self.tag, stipple= '', width= '2.0', splinesteps= '12', arrowshape= '8 10 3', arrow= 'none', capstyle= 'butt', smooth= 0, joinstyle= 'round', fill= 'black')
     self.gf5 = GraphicalForm(drawing, h, "gf5")
     self.graphForms.append(self.gf5)
     if self.semanticObject: drawText = self.semanticObject.port.toString(25,5)
     else: drawText = "<port>"
     h = drawing.create_text(self.translate([18.0, 34.0]), tags = self.tag, text = drawText, stipple= '', width= '0', fill= 'blue', font= 'Helvetica -12', anchor= 'center', justify= 'left')
     self.attr_display["port"] = h
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     if self.semanticObject: drawText = self.semanticObject.server_port.toString(25,5)
     else: drawText = "<server_port>"
     h = drawing.create_text(self.translate([120.0, 34.0]), tags = self.tag, text = drawText, stipple= '', width= '0', fill= 'blue', font= 'Helvetica -12', anchor= 'center', justify= 'left')
     self.attr_display["server_port"] = h
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
     if self.semanticObject: drawText = self.semanticObject.name.toString(25,5)
     else: drawText = "<name>"
     h = drawing.create_text(self.translate([70.0, 7.0]), tags = self.tag, text = drawText, stipple= '', width= '0', fill= 'blue', font= 'Helvetica -12', anchor= 'center', justify= 'left')
     self.attr_display["name"] = h
     self.gf6 = GraphicalForm(drawing, h, "gf6")
     self.graphForms.append(self.gf6)
class graph_AtomInheritance_2ndLink(graphEntity):

    def __init__(self, x, y, semObject = None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 28, 30
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs,"lift","self.semanticObject.", [], [])
        constObj.setValue(('lift', (['Python', 'OCL'], 0), (['PREcondition', 'POSTcondition'], 1), (['EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'], [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]), 'self.gf0.lift()\012\012\012'))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_polygon(self.translate([9.0, 2.0, 2.0, 22.0, 19.0, 22.0, 19.0, 22.0]), tags = self.tag, fill= 'lightyellow', outline= 'black', smooth= 0, splinesteps= '12', width= '1.0', stipple= '')
        self.gf0 = GraphicalForm(drawing, h, "gf0")
        self.graphForms.append(self.gf0)
        h = drawing.create_oval(self.translate([11.0, 15.0, 11.0, 15.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)

    def lift(self,params):
       self.gf0.lift()
       
       
       

    def postCondition (self, actionID, * params):
       if actionID ==  self.CREATE or actionID == self.CONNECT:
         res = self.lift(params)
         if res: return res
       return None

    def preCondition (self, actionID, * params):
       return None
Пример #30
0
 def DrawObject(self, drawing, showGG=0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_rectangle(self.translate([1.0, 1.0, 94.0, 52.0]),
                                  tags=self.tag,
                                  stipple='',
                                  width='1.0',
                                  outline='black',
                                  fill='')
     self.gf0 = GraphicalForm(drawing, h, "gf0")
     self.graphForms.append(self.gf0)
     h = drawing.create_text(self.translate([48.0, 27.0]),
                             tags=self.tag,
                             stipple='',
                             width='0',
                             fill='black',
                             text='Visual Settings',
                             font='Helvetica -12',
                             anchor='center',
                             justify='left')
     self.gf1 = GraphicalForm(drawing, h, "gf1")
     self.graphForms.append(self.gf1)
Пример #31
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([1.0, 1.0, 71.0, 64.0]),
                                tags=self.tag,
                                stipple='',
                                width=1,
                                outline='black',
                                fill='yellow')
        self.gf0 = GraphicalForm(drawing, h, "gf0")
        self.graphForms.append(self.gf0)

        h = drawing.create_polygon(self.translate(
            [81.0, 21.0, 40.0, 27.0, 64.0, 51.0]),
                                   tags=self.tag,
                                   stipple='',
                                   width=1,
                                   outline='black',
                                   fill='black',
                                   smooth='0',
                                   splinesteps='12')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)

        h = drawing.create_oval(self.translate([21.0, 16.0, 34.0, 29.0]),
                                tags=self.tag,
                                stipple='',
                                width=1,
                                outline='black',
                                fill='black')
        self.gf2 = GraphicalForm(drawing, h, "gf2")
        self.graphForms.append(self.gf2)

        h = drawing.create_oval(self.translate([39.0, 32.0, 39.0, 32.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)
Пример #32
0
 def DrawObject(self, drawing, showGG = 0):
     self.dc = drawing
     if showGG and self.semanticObject: self.drawGGLabel(drawing)
     h = drawing.create_oval(self.translate([91.0, 68.0, 91.0, 68.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([146.0, 50.0, 146.0, 50.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([93.0, 3.0, 93.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([3.0, 51.0, 3.0, 51.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([3.0, 20.0, 3.0, 20.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([21.0, 68.0, 21.0, 68.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([55.0, 68.0, 55.0, 68.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([126.0, 67.0, 126.0, 67.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([56.0, 3.0, 56.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([146.0, 21.0, 146.0, 21.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([125.0, 3.0, 125.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_oval(self.translate([22.0, 3.0, 22.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
     self.connectors.append(h)
     h = drawing.create_rectangle(self.translate([5.0, 5.0, 144.0, 22.0]), tags = self.tag, fill= 'yellow', outline= 'black', width= '1.0', stipple= '')
     self.gf3 = GraphicalForm(drawing, h, "gf3")
     self.graphForms.append(self.gf3)
     h = drawing.create_text(self.translate([126.0, 13.0]), tags = self.tag, fill= 'black', anchor= 'center', font= 'Helvetica -10', text= '{Abstr.}', justify= 'left', width= '0', stipple= '')
     self.gf4 = GraphicalForm(drawing, h, "gf4")
     self.graphForms.append(self.gf4)
     h = drawing.create_rectangle(self.translate([5.0, 21.0, 144.0, 65.0]), tags = self.tag, fill= 'lightyellow', outline= 'black', width= '1.0', stipple= '')
     self.gf5 = GraphicalForm(drawing, h, "gf5")
     self.graphForms.append(self.gf5)
     if self.semanticObject: drawText = self.semanticObject.ClassName.toString(25,5)
     else: drawText = "<ClassName>"
     h = drawing.create_text(self.translate([9.0, 6.0]), tags = self.tag, text = drawText, fill= 'Black', anchor= 'nw', font= 'Helvetica -11', justify= 'left', width= '0', stipple= '')
     self.attr_display["ClassName"] = h
     self.gf6 = GraphicalForm(drawing, h, "gf6")
     self.graphForms.append(self.gf6)
     if self.semanticObject: drawText = self.semanticObject.ClassAttributes.toString(25,5)
     else: drawText = "<ClassAttributes>"
     h = drawing.create_text(self.translate([9.0, 23.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'nw', font= 'Helvetica -10', justify= 'left', width= '0', stipple= '')
     self.attr_display["ClassAttributes"] = h
     self.gf7 = GraphicalForm(drawing, h, "gf7")
     self.graphForms.append(self.gf7)
Пример #33
0
    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_rectangle(self.translate([0.0, 0.0, 107.00000000000004, 19.0]), tags = self.tag, stipple = '', width = 4, outline = '', fill = 'black')
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)

        h = drawing.create_oval(self.translate([23.0, 18.0, 23.0, 18.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([71.0, 19.0, 71.0, 19.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([22.0, 3.0, 22.0, 3.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([67.0, 1.0, 67.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )
Пример #34
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_polygon(self.translate(
            [2.0, 2.0, 2.0, 102.0, 102.0, 102.0, 102.0, 2.0]),
                                   tags=self.tag,
                                   stipple='',
                                   width=1,
                                   outline='black',
                                   fill='skyblue1',
                                   smooth='0',
                                   splinesteps='12')
        self.gf2 = GraphicalForm(drawing, h, "gf2")
        self.graphForms.append(self.gf2)

        h = drawing.create_oval(self.translate([45.0, 50.0, 45.0, 50.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)
    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_rectangle(self.translate([1.0, 33.0, 129.0, 53.0]), tags = self.tag, fill= 'yellow', outline= 'black', width= '1.0', stipple= '')
        self.gf0 = GraphicalForm(drawing, h, "gf0")
        self.graphForms.append(self.gf0)
        h = drawing.create_rectangle(self.translate([1.0, 52.0, 129.0, 115.0]), tags = self.tag, fill= 'lightyellow', outline= 'black', width= '1.0', stipple= '')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)
        h = drawing.create_line(self.translate([61.0, 32.0, 61.0, 17.0]), tags = self.tag, fill= 'black', joinstyle= 'round', smooth= 0, capstyle= 'butt', arrow= 'none', arrowshape= '8 10 3', splinesteps= '12', width= '1.0', stipple= '')
        self.gf4 = GraphicalForm(drawing, h, "gf4")
        self.graphForms.append(self.gf4)
        h = drawing.create_oval(self.translate([61.0, 16.0, 61.0, 16.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)

        if self.semanticObject: drawText = self.semanticObject.AssociationName.toString(25,5)
        else: drawText = "<AssociationName>"
        h = drawing.create_text(self.translate([66.0, 8.0]), tags = self.tag, text = drawText, fill= 'black', anchor= 'center', font= '{Helvetica} 10', justify= 'left', width= '0', stipple= '')
        self.attr_display["AssociationName"] = h
        self.gf5 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf5)
       
        #h = drawing.create_text(self.translate([66.0, 8.0]), tags = self.tag, fill= 'black', anchor= 'center', font= '{Helvetica} 10', text= '<AssociationName>', justify= 'left', width= '0', stipple= '')
        #self.gf5 = GraphicalForm(drawing, h, "gf5")
        #self.graphForms.append(self.gf5)
        if self.semanticObject: drawText = self.semanticObject.AssociationName.toString(25,5)
        else: drawText = "<AssociationName>"
        h = drawing.create_text(self.translate([66.0, 42.0]), tags = self.tag, text = drawText, fill= 'black', anchor= 'center', font= '{Helvetica} 10', justify= 'left', width= '0', stipple= '')
        self.attr_display["AssociationName"] = h
        self.gf6 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf6)
        if self.semanticObject: drawText = self.semanticObject.AssociationAttributes.toString(25,5)
        else: drawText = "<AssociationAttributes>"
        h = drawing.create_text(self.translate([5.0, 54.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'nw', font= '{MS Sans Serif} 8', justify= 'left', width= '0', stipple= '')
        self.attr_display["AssociationAttributes"] = h
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)
Пример #36
0
    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([36.0, 141.0, 36.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([76.0, 141.0, 76.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([116.0, 141.0, 116.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([156.0, 141.0, 156.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 69.0, 1.0, 69.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 41.0, 1.0, 41.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 96.0, 1.0, 96.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 121.0, 1.0, 121.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 69.0, 191.0, 69.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 41.0, 191.0, 41.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 96.0, 191.0, 96.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 121.0, 191.0, 121.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([156.0, 1.0, 156.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([116.0, 1.0, 116.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([76.0, 1.0, 76.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([36.0, 1.0, 36.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_rectangle(self.translate([1.0, 1.0, 191.0, 21.0]), tags = self.tag, stipple = '', width = 1, outline = 'black', fill = 'yellow')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)

        h = drawing.create_rectangle(self.translate([1.0, 21.0, 191.0, 141.0]), tags = self.tag, stipple = '', width = 1, outline = 'black', fill = '#f8f8f8')
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)

        if self.semanticObject: drawText = self.semanticObject.display.toString()
        else: drawText = "<display>"
        font = tkFont.Font( family='Helvetica', size=12, weight='normal', slant='roman', underline=0)
        h = drawing.create_text(self.translate([2.0, 24.0, 2.0, 12.0])[:2], tags = self.tag, font=font, fill = 'blue1', anchor = 'nw', text = drawText, width = '0', justify= 'left', stipple='' )
        self.attr_display["display"] = h
        self.gf4 = GraphicalForm(drawing, h, 'gf4', fontObject=font)
        self.graphForms.append(self.gf4)

        font = tkFont.Font( family='Helvetica', size=9, weight='normal', slant='roman', underline=0)
        h = drawing.create_text(self.translate([188.0, 5.0, 188.0, 9.0])[:2], tags = self.tag, font=font, fill = 'black', anchor = 'ne', text = '<<Abstract>>', width = '0', justify= 'left', stipple='' )
        self.gf46 = GraphicalForm(drawing, h, 'gf46', fontObject=font)
        self.graphForms.append(self.gf46)

        if self.semanticObject: drawText = self.semanticObject.name.toString()
        else: drawText = "<name>"
        font = tkFont.Font( family='Helvetica', size=12, weight='bold', slant='roman', underline=0)
        h = drawing.create_text(self.translate([5.0, 2.0, 5.0, 12.0])[:2], tags = self.tag, font=font, fill = 'black', anchor = 'nw', text = drawText, width = '0', justify= 'left', stipple='' )
        self.attr_display["name"] = h
        self.gf63 = GraphicalForm(drawing, h, 'gf63', fontObject=font)
        self.graphForms.append(self.gf63)
Пример #37
0
    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([9.0, 49.0, 9.0, 49.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([9.0, 69.0, 9.0, 69.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([9.0, 89.0, 9.0, 89.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([169.0, 29.0, 169.0, 29.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([29.0, 109.0, 29.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([49.0, 109.0, 49.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([69.0, 109.0, 69.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([89.0, 109.0, 89.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([109.0, 109.0, 109.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([129.0, 109.0, 129.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([149.0, 109.0, 149.0, 109.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([169.0, 49.0, 169.0, 49.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([169.0, 69.0, 169.0, 69.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([169.0, 89.0, 169.0, 89.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [29.0, 9.0000000000000284, 29.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [49.0, 9.0000000000000284, 49.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [69.0, 9.0000000000000284, 69.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [89.0, 9.0000000000000284, 89.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [109.0, 9.0000000000000284, 109.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [129.0, 9.0000000000000284, 129.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate(
            [149.0, 9.0000000000000284, 149.0, 9.0000000000000284]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_oval(self.translate([9.0, 29.0, 9.0, 29.0]),
                                tags=(self.tag, 'connector'),
                                outline='',
                                fill='')
        self.connectors.append(h)

        h = drawing.create_rectangle(self.translate([9.0, 22.0, 169.5, 108.5]),
                                     tags=self.tag,
                                     stipple='',
                                     width=1,
                                     outline='black',
                                     fill='lightyellow')
        self.gf12 = GraphicalForm(drawing, h, "gf12")
        self.graphForms.append(self.gf12)

        h = drawing.create_rectangle(self.translate([9.0, 9.0, 169.5, 22.0]),
                                     tags=self.tag,
                                     stipple='',
                                     width=1,
                                     outline='black',
                                     fill='orange')
        self.gf8 = GraphicalForm(drawing, h, "gf8")
        self.graphForms.append(self.gf8)

        if self.semanticObject: drawText = self.semanticObject.name.toString()
        else: drawText = "<name>"
        font = tkFont.Font(family='Arial',
                           size=12,
                           weight='bold',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([88.0, 16.0, 88.0, 12.0])[:2],
                                tags=self.tag,
                                font=font,
                                fill='black',
                                anchor='center',
                                text=drawText,
                                width='0',
                                justify='left',
                                stipple='')
        self.attr_display["name"] = h
        self.gf9 = GraphicalForm(drawing, h, 'gf9', fontObject=font)
        self.graphForms.append(self.gf9)

        if self.semanticObject:
            drawText = self.semanticObject.display.toString()
        else:
            drawText = "<display>"
        font = tkFont.Font(family='Helvetica',
                           size=12,
                           weight='normal',
                           slant='roman',
                           underline=0)
        h = drawing.create_text(self.translate([11.0, 68.2, 11.0, 11.0])[:2],
                                tags=self.tag,
                                font=font,
                                fill='blue1',
                                anchor='w',
                                text=drawText,
                                width='0',
                                justify='left',
                                stipple='')
        self.attr_display["display"] = h
        self.gf68 = GraphicalForm(drawing, h, 'gf68', fontObject=font)
        self.graphForms.append(self.gf68)
Пример #38
0
class graph_AtomClass(graphEntity):

    def __init__(self, x, y, semObject = None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 149, 71
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs,"Abstract","self.semanticObject.", [], [])
        constObj.setValue(('Abstract', (['Python', 'OCL'], 0), (['PREcondition', 'POSTcondition'], 1), (['EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'], [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]), 'if self.semanticObject.Abstract.toString() == "True":\012   self.gf4.setVisible(1)\012else:\012   self.gf4.setVisible(0)\012\012\012'))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([91.0, 68.0, 91.0, 68.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([146.0, 50.0, 146.0, 50.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([93.0, 3.0, 93.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([3.0, 51.0, 3.0, 51.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([3.0, 20.0, 3.0, 20.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([21.0, 68.0, 21.0, 68.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([55.0, 68.0, 55.0, 68.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([126.0, 67.0, 126.0, 67.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([56.0, 3.0, 56.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([146.0, 21.0, 146.0, 21.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([125.0, 3.0, 125.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([22.0, 3.0, 22.0, 3.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_rectangle(self.translate([5.0, 5.0, 144.0, 22.0]), tags = self.tag, fill= 'yellow', outline= 'black', width= '1.0', stipple= '')
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)
        h = drawing.create_text(self.translate([126.0, 13.0]), tags = self.tag, fill= 'black', anchor= 'center', font= 'Helvetica -10', text= '{Abstr.}', justify= 'left', width= '0', stipple= '')
        self.gf4 = GraphicalForm(drawing, h, "gf4")
        self.graphForms.append(self.gf4)
        h = drawing.create_rectangle(self.translate([5.0, 21.0, 144.0, 65.0]), tags = self.tag, fill= 'lightyellow', outline= 'black', width= '1.0', stipple= '')
        self.gf5 = GraphicalForm(drawing, h, "gf5")
        self.graphForms.append(self.gf5)
        if self.semanticObject: drawText = self.semanticObject.ClassName.toString(25,5)
        else: drawText = "<ClassName>"
        h = drawing.create_text(self.translate([9.0, 6.0]), tags = self.tag, text = drawText, fill= 'Black', anchor= 'nw', font= 'Helvetica -11', justify= 'left', width= '0', stipple= '')
        self.attr_display["ClassName"] = h
        self.gf6 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf6)
        if self.semanticObject: drawText = self.semanticObject.ClassAttributes.toString(25,5)
        else: drawText = "<ClassAttributes>"
        h = drawing.create_text(self.translate([9.0, 23.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'nw', font= 'Helvetica -10', justify= 'left', width= '0', stipple= '')
        self.attr_display["ClassAttributes"] = h
        self.gf7 = GraphicalForm(drawing, h, "gf7")
        self.graphForms.append(self.gf7)

    def Abstract(self,params):
       if self.semanticObject.Abstract.toString() == "True":
          self.gf4.setVisible(1)
       else:
          self.gf4.setVisible(0)
       
       
       

    def postCondition (self, actionID, * params):
       if actionID ==  self.EDIT or actionID == self.CREATE:
         res = self.Abstract(params)
         if res: return res
       return None

    def preCondition (self, actionID, * params):
       return None
Пример #39
0
class graph_AtomClass(graphEntity):
    def __init__(self, x, y, semObject=None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 149, 71
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs, "Abstract", "self.semanticObject.",
                                   [], [])
        constObj.setValue(
            ('Abstract', (['Python', 'OCL'], 0),
             (['PREcondition', 'POSTcondition'], 1), ([
                 'EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT',
                 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'
             ], [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]),
             'if self.semanticObject.Abstract.toString() == "True":\012   self.gf4.setVisible(1)\012else:\012   self.gf4.setVisible(0)\012\012\012'
             ))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG=0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([91.0, 68.0, 91.0, 68.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([146.0, 50.0, 146.0, 50.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([93.0, 3.0, 93.0, 3.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([3.0, 51.0, 3.0, 51.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([3.0, 20.0, 3.0, 20.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([21.0, 68.0, 21.0, 68.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([55.0, 68.0, 55.0, 68.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([126.0, 67.0, 126.0, 67.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([56.0, 3.0, 56.0, 3.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([146.0, 21.0, 146.0, 21.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([125.0, 3.0, 125.0, 3.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_oval(self.translate([22.0, 3.0, 22.0, 3.0]),
                                tags=(self.tag, "connector"),
                                fill='red',
                                outline='black',
                                width='1.0',
                                stipple='')
        self.connectors.append(h)
        h = drawing.create_rectangle(self.translate([5.0, 5.0, 144.0, 22.0]),
                                     tags=self.tag,
                                     fill='yellow',
                                     outline='black',
                                     width='1.0',
                                     stipple='')
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)
        h = drawing.create_text(self.translate([126.0, 13.0]),
                                tags=self.tag,
                                fill='black',
                                anchor='center',
                                font='Helvetica -10',
                                text='{Abstr.}',
                                justify='left',
                                width='0',
                                stipple='')
        self.gf4 = GraphicalForm(drawing, h, "gf4")
        self.graphForms.append(self.gf4)
        h = drawing.create_rectangle(self.translate([5.0, 21.0, 144.0, 65.0]),
                                     tags=self.tag,
                                     fill='lightyellow',
                                     outline='black',
                                     width='1.0',
                                     stipple='')
        self.gf5 = GraphicalForm(drawing, h, "gf5")
        self.graphForms.append(self.gf5)
        if self.semanticObject:
            drawText = self.semanticObject.ClassName.toString(25, 5)
        else:
            drawText = "<ClassName>"
        h = drawing.create_text(self.translate([9.0, 6.0]),
                                tags=self.tag,
                                text=drawText,
                                fill='Black',
                                anchor='nw',
                                font='Helvetica -11',
                                justify='left',
                                width='0',
                                stipple='')
        self.attr_display["ClassName"] = h
        self.gf6 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf6)
        if self.semanticObject:
            drawText = self.semanticObject.ClassAttributes.toString(25, 5)
        else:
            drawText = "<ClassAttributes>"
        h = drawing.create_text(self.translate([9.0, 23.0]),
                                tags=self.tag,
                                text=drawText,
                                fill='blue',
                                anchor='nw',
                                font='Helvetica -10',
                                justify='left',
                                width='0',
                                stipple='')
        self.attr_display["ClassAttributes"] = h
        self.gf7 = GraphicalForm(drawing, h, "gf7")
        self.graphForms.append(self.gf7)

    def Abstract(self, params):
        if self.semanticObject.Abstract.toString() == "True":
            self.gf4.setVisible(1)
        else:
            self.gf4.setVisible(0)

    def postCondition(self, actionID, *params):
        if actionID == self.EDIT or actionID == self.CREATE:
            res = self.Abstract(params)
            if res: return res
        return None

    def preCondition(self, actionID, *params):
        return None
class graph_AtomAssociation_Center(graphEntity):

    def __init__(self, x, y, semObject = None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 130, 116
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs,"Hide","self.semanticObject.", [], [])
        constObj.setValue(('Hide', (['Python', 'OCL'], 1), (['PREcondition', 'POSTcondition'], 1), (['EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'], [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]), 'if self.semanticObject.AssociationAttributes.getValue() == []:\012   self.gf0.setVisible(0)\012   self.gf1.setVisible(0)\012   self.gf6.setVisible(0)\012   self.gf3.setVisible(0)\012   self.gf4.setVisible(0)\012   self.gf5.setVisible(1)\012else:\012   self.gf0.setVisible(1)\012   self.gf1.setVisible(1)\012   self.gf6.setVisible(1)\012   self.gf3.setVisible(1)\012   self.gf4.setVisible(1)\012   self.gf5.setVisible(0)\012\012\012\012\012'))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_rectangle(self.translate([1.0, 33.0, 129.0, 53.0]), tags = self.tag, fill= 'yellow', outline= 'black', width= '1.0', stipple= '')
        self.gf0 = GraphicalForm(drawing, h, "gf0")
        self.graphForms.append(self.gf0)
        h = drawing.create_rectangle(self.translate([1.0, 52.0, 129.0, 115.0]), tags = self.tag, fill= 'lightyellow', outline= 'black', width= '1.0', stipple= '')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)
        h = drawing.create_line(self.translate([61.0, 32.0, 61.0, 17.0]), tags = self.tag, fill= 'black', joinstyle= 'round', smooth= 0, capstyle= 'butt', arrow= 'none', arrowshape= '8 10 3', splinesteps= '12', width= '1.0', stipple= '')
        self.gf4 = GraphicalForm(drawing, h, "gf4")
        self.graphForms.append(self.gf4)
        h = drawing.create_oval(self.translate([61.0, 16.0, 61.0, 16.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)

        if self.semanticObject: drawText = self.semanticObject.AssociationName.toString(25,5)
        else: drawText = "<AssociationName>"
        h = drawing.create_text(self.translate([66.0, 8.0]), tags = self.tag, text = drawText, fill= 'black', anchor= 'center', font= '{Helvetica} 10', justify= 'left', width= '0', stipple= '')
        self.attr_display["AssociationName"] = h
        self.gf5 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf5)
       
        #h = drawing.create_text(self.translate([66.0, 8.0]), tags = self.tag, fill= 'black', anchor= 'center', font= '{Helvetica} 10', text= '<AssociationName>', justify= 'left', width= '0', stipple= '')
        #self.gf5 = GraphicalForm(drawing, h, "gf5")
        #self.graphForms.append(self.gf5)
        if self.semanticObject: drawText = self.semanticObject.AssociationName.toString(25,5)
        else: drawText = "<AssociationName>"
        h = drawing.create_text(self.translate([66.0, 42.0]), tags = self.tag, text = drawText, fill= 'black', anchor= 'center', font= '{Helvetica} 10', justify= 'left', width= '0', stipple= '')
        self.attr_display["AssociationName"] = h
        self.gf6 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf6)
        if self.semanticObject: drawText = self.semanticObject.AssociationAttributes.toString(25,5)
        else: drawText = "<AssociationAttributes>"
        h = drawing.create_text(self.translate([5.0, 54.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'nw', font= '{MS Sans Serif} 8', justify= 'left', width= '0', stipple= '')
        self.attr_display["AssociationAttributes"] = h
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)

    def Hide(self,params):
       if self.semanticObject.AssociationAttributes.getValue() == []:
          self.gf0.setVisible(0)
          self.gf1.setVisible(0)
          self.gf6.setVisible(0)
          self.gf3.setVisible(0)
          self.gf4.setVisible(0)
          self.gf5.setVisible(1)
       else:
          self.gf0.setVisible(1)
          self.gf1.setVisible(1)
          self.gf6.setVisible(1)
          self.gf3.setVisible(1)
          self.gf4.setVisible(1)
          self.gf5.setVisible(0)
       
       
       
       
       

    def postCondition (self, actionID, * params):
       if actionID ==  self.EDIT or actionID == self.CREATE:
         res = self.Hide(params)
         if res: return res
       return None

    def preCondition (self, actionID, * params):
       return None
Пример #41
0
class graph_CD_Class3(graphEntity):

    def __init__(self, x, y, semObject = None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 192, 142
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None

        constObj = ATOM3Constraint(atribs,"abstractVisibility","self.semanticObject.", [], [])
        constObj.setValue(('abstractVisibility', (['Python', 'OCL'], 1), (['PREcondition', 'POSTcondition'], 1), (['EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'], [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]), 'if self.semanticObject.Abstract.toString() == "True":\n   self.gf46.setVisible(1)\nelse:\n   self.gf46.setVisible(0)\n\n'))
        self.constraintList.append(constObj)
        self.graphForms = []
        self.imageDict = self.getImageDict()

    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_oval(self.translate([36.0, 141.0, 36.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([76.0, 141.0, 76.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([116.0, 141.0, 116.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([156.0, 141.0, 156.0, 141.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 69.0, 1.0, 69.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 41.0, 1.0, 41.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 96.0, 1.0, 96.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([1.0, 121.0, 1.0, 121.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 69.0, 191.0, 69.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 41.0, 191.0, 41.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 96.0, 191.0, 96.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([191.0, 121.0, 191.0, 121.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([156.0, 1.0, 156.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([116.0, 1.0, 116.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([76.0, 1.0, 76.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_oval(self.translate([36.0, 1.0, 36.0, 1.0]), tags = (self.tag, 'connector'), outline = '', fill = '' )
        self.connectors.append( h )

        h = drawing.create_rectangle(self.translate([1.0, 1.0, 191.0, 21.0]), tags = self.tag, stipple = '', width = 1, outline = 'black', fill = 'yellow')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)

        h = drawing.create_rectangle(self.translate([1.0, 21.0, 191.0, 141.0]), tags = self.tag, stipple = '', width = 1, outline = 'black', fill = '#f8f8f8')
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)

        if self.semanticObject: drawText = self.semanticObject.display.toString()
        else: drawText = "<display>"
        font = tkFont.Font( family='Helvetica', size=12, weight='normal', slant='roman', underline=0)
        h = drawing.create_text(self.translate([2.0, 24.0, 2.0, 12.0])[:2], tags = self.tag, font=font, fill = 'blue1', anchor = 'nw', text = drawText, width = '0', justify= 'left', stipple='' )
        self.attr_display["display"] = h
        self.gf4 = GraphicalForm(drawing, h, 'gf4', fontObject=font)
        self.graphForms.append(self.gf4)

        font = tkFont.Font( family='Helvetica', size=9, weight='normal', slant='roman', underline=0)
        h = drawing.create_text(self.translate([188.0, 5.0, 188.0, 9.0])[:2], tags = self.tag, font=font, fill = 'black', anchor = 'ne', text = '<<Abstract>>', width = '0', justify= 'left', stipple='' )
        self.gf46 = GraphicalForm(drawing, h, 'gf46', fontObject=font)
        self.graphForms.append(self.gf46)

        if self.semanticObject: drawText = self.semanticObject.name.toString()
        else: drawText = "<name>"
        font = tkFont.Font( family='Helvetica', size=12, weight='bold', slant='roman', underline=0)
        h = drawing.create_text(self.translate([5.0, 2.0, 5.0, 12.0])[:2], tags = self.tag, font=font, fill = 'black', anchor = 'nw', text = drawText, width = '0', justify= 'left', stipple='' )
        self.attr_display["name"] = h
        self.gf63 = GraphicalForm(drawing, h, 'gf63', fontObject=font)
        self.graphForms.append(self.gf63)


    def abstractVisibility(self,params):
        if self.semanticObject.Abstract.toString() == "True":
           self.gf46.setVisible(1)
        else:
           self.gf46.setVisible(0)
        
        

    def postCondition( self, actionID, * params):
        if actionID ==  self.EDIT or actionID == self.CREATE:
             res = self.abstractVisibility(params)
             if res: return res
        return None

    def preCondition( self, actionID, * params):
        return None

    def getImageDict( self ):
        imageDict = dict()

        return imageDict
Пример #42
0
class graph_TTPN_Transition(graphEntity):

    def __init__(self, x, y, semObject = None):
        self.semanticObject = semObject
        self.sizeX, self.sizeY = 97, 85
        graphEntity.__init__(self, x, y)
        self.ChangesAtRunTime = 0
        self.constraintList = []
        if self.semanticObject: atribs = self.semanticObject.attributesToDraw()
        else: atribs = None
        constObj = ATOM3Constraint(atribs,"changeAtomic","self.semanticObject.", [], [])
        constObj.setValue(('changeAtomic', (['Python', 'OCL'], 0), (['PREcondition', 'POSTcondition'], 1), (['EDIT', 'SAVE', 'CREATE', 'CONNECT', 'DELETE', 'DISCONNECT', 'TRANSFORM', 'SELECT', 'DRAG', 'DROP', 'MOVE'], [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]), 'if self.semanticObject.atomic.getValue()[1]:\012   self.gf5.setVisible(1)\012else:\012   self.gf5.setVisible(0)\012if self.semanticObject.processes.getValue() == 1:\012   self.gf6.setVisible(0)\012else:\012   self.gf6.setVisible(1)\012\012'))
        self.constraintList.append(constObj)

        self.graphForms = []

    def DrawObject(self, drawing, showGG = 0):
        self.dc = drawing
        if showGG and self.semanticObject: self.drawGGLabel(drawing)
        h = drawing.create_line(self.translate([51.0, 19.0, 51.0, 58.0]), tags = self.tag, fill= 'black', joinstyle= 'round', smooth= 0, capstyle= 'butt', arrow= 'none', arrowshape= '8 10 3', splinesteps= '12', width= '5.0', stipple= '')
        self.gf1 = GraphicalForm(drawing, h, "gf1")
        self.graphForms.append(self.gf1)
        h = drawing.create_oval(self.translate([51.0, 38.0, 51.0, 38.0]), tags = (self.tag, "connector"), fill= 'red', outline= 'black', width= '1.0', stipple= '')
        self.connectors.append(h)
        h = drawing.create_text(self.translate([53.0, 7.0]), tags = self.tag, fill= 'black', anchor= 'center', font= 'Helvetica -12', text= ', ', justify= 'left', width= '0', stipple= '')
        self.gf2 = GraphicalForm(drawing, h, "gf2")
        self.graphForms.append(self.gf2)
        h = drawing.create_text(self.translate([51.0, 78.0]), tags = self.tag, fill= 'black', anchor= 'center', font= '{MS Sans Serif} 8', text= 'atomic', justify= 'left', width= '0', stipple= '')
        self.gf5 = GraphicalForm(drawing, h, "gf5")
        self.graphForms.append(self.gf5)
        if self.semanticObject: drawText = self.semanticObject.time.toString(25,5)
        else: drawText = "<time>"
        h = drawing.create_text(self.translate([56.0, 8.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'w', font= 'Helvetica -12', justify= 'left', width= '0', stipple= '')
        self.attr_display["time"] = h
        self.gf3 = GraphicalForm(drawing, h, "gf3")
        self.graphForms.append(self.gf3)
        if self.semanticObject: drawText = self.semanticObject.processes.toString(25,5)
        else: drawText = "<processes>"
        h = drawing.create_text(self.translate([51.0, 65.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'center', font= 'Helvetica -12', justify= 'left', width= '0', stipple= '')
        self.attr_display["processes"] = h
        self.gf6 = GraphicalForm(drawing, h, "gf6")
        self.graphForms.append(self.gf6)
        if self.semanticObject: drawText = self.semanticObject.name.toString(25,5)
        else: drawText = "<name>"
        h = drawing.create_text(self.translate([47.0, 8.0]), tags = self.tag, text = drawText, fill= 'blue', anchor= 'e', font= 'Helvetica -12', justify= 'right', width= '0', stipple= '')
        self.attr_display["name"] = h
        self.gf4 = GraphicalForm(drawing, h, "gf4")
        self.graphForms.append(self.gf4)

    def changeAtomic(self):
       if self.semanticObject.atomic.getValue()[1]:
          self.gf5.setVisible(1)
       else:
          self.gf5.setVisible(0)
       if self.semanticObject.processes.getValue() == 1:
          self.gf6.setVisible(0)
       else:
          self.gf6.setVisible(1)
       
       

    def postCondition (self, actionID, * params):
       if actionID ==  self.EDIT or actionID == self.CREATE:
         res = self.changeAtomic()
         if res: return res
       return None

    def preCondition (self, actionID, * params):
       return None