7
7
from rede import Chave
8
8
# import models
9
9
10
- from DialogReligador import RecloserDialog
10
+ from DialogRecloser import RecloserDialog
11
+ from DialogLine import LineDialog
11
12
12
13
13
14
class GhostR (QtGui .QGraphicsRectItem ):
@@ -84,6 +85,8 @@ def __init__(self, w1, w2, edge_menu, parent=None, scene=None):
84
85
85
86
self .myEdgeMenu = edge_menu
86
87
88
+
89
+
87
90
line = QtCore .QLineF (self .w1 .pos (), self .w2 .pos ())
88
91
self .setLine (line )
89
92
self .setZValue (- 1 )
@@ -183,7 +186,7 @@ def update_ret(self):
183
186
184
187
185
188
self .GhostRet .setRect (xbase + 40 , ybase + (delta_y / 2 ) - 5 , comp , 50 )
186
- if self .w1 .myItemType == 4 or self .w2 .myItemType == 4 :
189
+ if self .w1 .myItemType == Node . NoConectivo or self .w2 .myItemType == Node . NoConectivo :
187
190
self .GhostRet .setRect (xbase + 40 , ybase + (delta_y / 2 ) - 5 , comp , 50 )
188
191
if self .isFixed :
189
192
self .GhostRet .adjust (- 20 , - 20 , - 20 , - 20 )
@@ -197,12 +200,12 @@ def update_ret(self):
197
200
QtGui .QTransform ().translate (x , y ).rotate (- angle ).translate (
198
201
- x , - y ))
199
202
# if self.GhostRetItem.collidesWithItem(self.w1):
200
- # if self.w1.myItemType == 4 :
203
+ # if self.w1.myItemType == Node.NoConectivo :
201
204
# print "bateu no nó"
202
205
# self.GhostRetItem.setRect(self.GhostRetItem.rect().adjusted(-10,-10,-10,-10))
203
206
204
207
# if self.GhostRetItem.collidesWithItem(self.w2):
205
- # if self.w2.myItemType == 4 :
208
+ # if self.w2.myItemType == Node.NoConectivo :
206
209
# print "bateu no nó"
207
210
# self.GhostRetItem.setRect(self.GhostRetItem.rect().adjusted(-10,-10,-10,-10))
208
211
@@ -412,7 +415,7 @@ class Node(QtGui.QGraphicsRectItem):
412
415
Classe que implementa o objeto Node Genérico.
413
416
'''
414
417
# tipos de itens possiveis
415
- Subestacao , Religador , Barra , Agent , NoConectivo = range (5 )
418
+ Subestacao , Religador , Barra , Agent , NoDeCarga , NoConectivo = range (6 )
416
419
417
420
def __init__ (self , item_type , node_menu , parent = None , scene = None ):
418
421
'''
@@ -440,7 +443,7 @@ def __init__(self, item_type, node_menu, parent=None, scene=None):
440
443
elif self .myItemType == self .Religador :
441
444
rect = QtCore .QRectF (0 , 0 , 40.0 , 40.0 )
442
445
# Cria o objeto abstrato chave referente ao religador
443
- self .chave = Chave ('religador1' , 400 , 0.01 , 1000 , 3 )
446
+ self .chave = Chave (str ( self . id ) )
444
447
# definine e ajusta a posicao do label do item grafico
445
448
self .text = Text ('Religador' , self , self .scene ())
446
449
self .text .setPos (self .mapFromItem (self .text , 0 , rect .height ()))
@@ -460,6 +463,11 @@ def __init__(self, item_type, node_menu, parent=None, scene=None):
460
463
elif self .myItemType == self .NoConectivo :
461
464
rect = QtCore .QRectF (0 , 0 , 7 , 7 )
462
465
466
+ elif self .myItemType == self .NoDeCarga :
467
+ rect = QtCore .QRectF (0 , 0 , 10 , 10 )
468
+ self .text = Text ('Carga' , self , self .scene ())
469
+ self .text .setPos (self .mapFromItem (self .text , 0 , rect .height ()))
470
+
463
471
self .setRect (rect )
464
472
self .myNodeMenu = node_menu
465
473
@@ -569,6 +577,11 @@ def paint(self, painter, option, widget):
569
577
painter .setBrush (QtCore .Qt .black )
570
578
painter .drawEllipse (self .rect ())
571
579
580
+ elif self .myItemType == self .NoDeCarga :
581
+ painter .setPen (QtGui .QPen (QtCore .Qt .black , 1.5 ))
582
+ painter .setBrush (QtCore .Qt .black )
583
+ painter .drawEllipse (self .rect ())
584
+
572
585
if self .isSelected ():
573
586
painter .setPen (QtGui .QPen (QtCore .Qt .red , 2 , QtCore .Qt .DashLine ))
574
587
painter .setBrush (QtCore .Qt .NoBrush )
@@ -586,7 +599,7 @@ def itemChange(self, change, value):
586
599
return QtGui .QGraphicsItem .itemChange (self , change , value )
587
600
588
601
def mousePressEvent (self , mouse_event ):
589
- print len ( self .edges )
602
+ print "Id:" , self .chave . nome , "," , "Corrente Nominal:" , self . chave . ratedCurrent , "," , "Breaking Capacity:" , self . chave . breakingCapacity , "," , "Seq de Religamento" , self . chave . recloseSequences
590
603
self .setSelected (True )
591
604
super (Node , self ).mousePressEvent (mouse_event )
592
605
return
@@ -603,7 +616,7 @@ def mouseReleaseEvent(self, mouse_event):
603
616
new_obj = edge .w2
604
617
if edge .w2 == self :
605
618
new_obj = edge .w1
606
- if self .myItemType == 4 :
619
+ if self .myItemType == Node . NoConectivo :
607
620
for item in self .scene ().items ():
608
621
if isinstance (item , Node ):
609
622
@@ -680,13 +693,14 @@ def mousePressEvent(self, mouse_event):
680
693
else :
681
694
self .removeItem (item_oculto )
682
695
if self .myMode == self .InsertItem :
683
-
684
696
if self .myItemType == Node .Religador :
685
697
item = Node (self .myItemType , self .myRecloserMenu )
686
698
elif self .myItemType == Node .Barra :
687
699
item = Node (self .myItemType , self .myBusMenu )
688
700
elif self .myItemType == Node .Subestacao :
689
701
item = Node (self .myItemType , self .mySubstationMenu )
702
+ elif self .myItemType == Node .NoDeCarga :
703
+ item = Node (self .myItemType , self .mySubstationMenu )
690
704
691
705
self .addItem (item )
692
706
item .setPos (mouse_event .scenePos ())
@@ -705,7 +719,7 @@ def mousePressEvent(self, mouse_event):
705
719
706
720
c_pos = (
707
721
item .edge .line ().p1 () + item .edge .line ().p2 ()) / 2
708
- self .no = Node (4 , self .myLineMenu )
722
+ self .no = Node (Node . NoConectivo , self .myLineMenu )
709
723
self .addItem (self .no )
710
724
self .no .setPos (c_pos - QtCore .QPointF (3.5 , 3.5 ))
711
725
item .no = self .no
@@ -718,7 +732,7 @@ def mousePressEvent(self, mouse_event):
718
732
self .l0 = c_pos
719
733
else :
720
734
self .l0 = mouse_event .scenePos ()
721
- self .no = Node (4 , self .myLineMenu )
735
+ self .no = Node (Node . NoConectivo , self .myLineMenu )
722
736
if add is True :
723
737
self .addItem (self .no )
724
738
self .no .setPos (mouse_event .scenePos ())
@@ -813,13 +827,13 @@ def mouseReleaseEvent(self, mouse_event):
813
827
if len (start_items ) == 0 :
814
828
if isinstance (start_pop , GhostR ) and start_pop is not None :
815
829
c_pos = (start_pop .edge .line ().p1 () + start_pop .edge .line ().p2 ()) / 2
816
- start_item = Node (4 , self .myLineMenu )
830
+ start_item = Node (Node . NoConectivo , self .myLineMenu )
817
831
self .addItem (start_item )
818
832
start_item .setPos (c_pos )
819
833
self .start_item_is_ghost = True
820
834
else :
821
835
print "checkpoint 1"
822
- start_item = Node (4 , self .myLineMenu )
836
+ start_item = Node (Node . NoConectivo , self .myLineMenu )
823
837
self .addItem (start_item )
824
838
start_item .setPos (self .pressPos )
825
839
@@ -839,14 +853,14 @@ def mouseReleaseEvent(self, mouse_event):
839
853
840
854
841
855
if len (end_items ) == 0 :
842
- end_item = Node (4 , self .myLineMenu )
856
+ end_item = Node (Node . NoConectivo , self .myLineMenu )
843
857
self .addItem (end_item )
844
858
end_item .setPos (mouse_event .scenePos ())
845
859
846
860
if len (end_items ):
847
861
if isinstance (end_pop , GhostR ):
848
862
c_pos = (end_pop .edge .line ().p1 () + end_pop .edge .line ().p2 ()) / 2
849
- end_item = Node (4 , self .myLineMenu )
863
+ end_item = Node (Node . NoConectivo , self .myLineMenu )
850
864
self .addItem (end_item )
851
865
end_item .setPos (c_pos )
852
866
self .ghost = end_pop
@@ -914,11 +928,11 @@ def mouseReleaseEvent(self, mouse_event):
914
928
if not permit1 :
915
929
print "permit 1 negado!"
916
930
if isinstance (start_item , Node ):
917
- if start_item .myItemType == 4 and len (start_item .edges ) == 0 :
931
+ if start_item .myItemType == Node . NoConectivo and len (start_item .edges ) == 0 :
918
932
self .removeItem (start_item )
919
933
print "checkpoint 1"
920
934
if isinstance (end_item , Node ):
921
- if end_item .myItemType == 4 and len (end_item .edges ) == 0 :
935
+ if end_item .myItemType == Node . NoConectivo and len (end_item .edges ) == 0 :
922
936
self .removeItem (end_item )
923
937
print "checkpoint 2"
924
938
@@ -958,7 +972,7 @@ def mouseReleaseEvent(self, mouse_event):
958
972
else :
959
973
return
960
974
961
- if edge .w1 .myItemType == 4 :
975
+ if edge .w1 .myItemType == Node . NoConectivo :
962
976
aux = edge .w1
963
977
edge .w1 = edge .w2
964
978
edge .w2 = aux
@@ -994,7 +1008,7 @@ def mouseReleaseEvent(self, mouse_event):
994
1008
# if inserted is False and self.no is not None:
995
1009
# self.break_edge()
996
1010
# print "oi 1"
997
- # new_node = Node(4 , self.myLineMenu)
1011
+ # new_node = Node(Node.NoConectivo , self.myLineMenu)
998
1012
# self.addItem(new_node)
999
1013
# new_node.setPos(mouse_event.scenePos())
1000
1014
# new_edge = Edge(self.no, new_node, self.myLineMenu)
@@ -1161,7 +1175,52 @@ def launch_dialog(self):
1161
1175
Este método inicia os diálogos de configuração de cada um dos itens
1162
1176
gráficos do diagrama.
1163
1177
'''
1164
- dialog = RecloserDialog ()
1178
+ for item in self .selectedItems ():
1179
+ if isinstance (item , Node ):
1180
+ if item .myItemType == Node .Religador :
1181
+ dialog = RecloserDialog (item )
1182
+ print dialog .dialog .result ()
1183
+ if dialog .dialog .result () == 1 :
1184
+ if dialog .identificaOLineEdit .text () == "" :
1185
+ pass
1186
+ else :
1187
+ item .chave .nome = dialog .identificaOLineEdit .text ()
1188
+ if dialog .correnteNominalLineEdit .text () == "" :
1189
+ pass
1190
+ else :
1191
+ item .chave .ratedCurrent = dialog .correnteNominalLineEdit .text ()
1192
+ if dialog .capacidadeDeInterrupOLineEdit .text () == "" :
1193
+ pass
1194
+ else :
1195
+ item .chave .breakingCapacity = dialog .capacidadeDeInterrupOLineEdit .text ()
1196
+ if dialog .nDeSequNciasDeReligamentoLineEdit .text () == "" :
1197
+ pass
1198
+ else :
1199
+ item .chave .recloseSequences = dialog .nDeSequNciasDeReligamentoLineEdit .text ()
1200
+ if item .myItemType == Node .Subestacao :
1201
+ return
1202
+ # dialog = SubstationDialog(item)
1203
+
1204
+ if isinstance (item , Edge ):
1205
+ dialog = LineDialog ()
1206
+ print dialog .dialog .result ()
1207
+ # if dialog.dialog.result() == 1:
1208
+ # if dialog.identificaOLineEdit.text() == "":
1209
+ # pass
1210
+ # else:
1211
+ # item.chave.nome = dialog.identificaOLineEdit.text()
1212
+ # if dialog.correnteNominalLineEdit.text() == "":
1213
+ # pass
1214
+ # else:
1215
+ # item.chave.ratedCurrent = dialog.correnteNominalLineEdit.text()
1216
+ # if dialog.capacidadeDeInterrupOLineEdit.text() == "":
1217
+ # pass
1218
+ # else:
1219
+ # item.chave.breakingCapacity = dialog.capacidadeDeInterrupOLineEdit.text()
1220
+ # if dialog.nDeSequNciasDeReligamentoLineEdit.text() == "":
1221
+ # pass
1222
+ # else:
1223
+ # item.chave.recloseSequences = dialog.nDeSequNciasDeReligamentoLineEdit.text()
1165
1224
1166
1225
def increase_bus (self , ):
1167
1226
'''
0 commit comments