|
@@ 102-115 (lines=14) @@
|
| 99 |
|
self.do_remove_ref(ref) |
| 100 |
|
self.reload() |
| 101 |
|
|
| 102 |
|
def do_remove_ref(self, ref, check=True): |
| 103 |
|
logger.info("Removing: %s", ref) |
| 104 |
|
it = ua.DeleteReferencesItem() |
| 105 |
|
it.SourceNodeId = self.node.nodeid |
| 106 |
|
it.ReferenceTypeId = ref.ReferenceTypeId |
| 107 |
|
it.IsForward = ref.IsForward |
| 108 |
|
it.TargetNodeId = ref.NodeId |
| 109 |
|
it.DeleteBidirectional = False |
| 110 |
|
#param = ua.DeleteReferencesParameters() |
| 111 |
|
#param.ReferencesToDelete.append(it) |
| 112 |
|
results = self.node.server.delete_references([it]) |
| 113 |
|
logger.info("Remove result: %s", results[0]) |
| 114 |
|
if check: |
| 115 |
|
results[0].check() |
| 116 |
|
|
| 117 |
|
def save_state(self): |
| 118 |
|
self.settings.setValue("refs_widget", self.view.horizontalHeader().saveState()) |
|
@@ 200-212 (lines=13) @@
|
| 197 |
|
return |
| 198 |
|
self._write_ref(ref) |
| 199 |
|
|
| 200 |
|
def _write_ref(self, ref): |
| 201 |
|
logger.info("Writing ref %s", ref) |
| 202 |
|
it = ua.AddReferencesItem() |
| 203 |
|
it.SourceNodeId = self._widget.node.nodeid |
| 204 |
|
it.ReferenceTypeId = ref.ReferenceTypeId |
| 205 |
|
it.IsForward = ref.IsForward |
| 206 |
|
it.TargetNodeId = ref.NodeId |
| 207 |
|
it.TargetNodeClass = ref.NodeClass |
| 208 |
|
|
| 209 |
|
results = self._widget.node.server.add_references([it]) |
| 210 |
|
results[0].check() |
| 211 |
|
|
| 212 |
|
self._widget.reload() |
| 213 |
|
|
| 214 |
|
|
| 215 |
|
|