Code Duplication    Length = 17-22 lines in 2 locations

uaclient/mainwindow.py 2 locations

@@ 123-144 (lines=22) @@
120
121
class DataChangeUI(object):
122
123
    def __init__(self, window, uaclient):
124
        self.window = window
125
        self.uaclient = uaclient
126
        self._subhandler = DataChangeHandler()
127
        self._subscribed_nodes = []
128
        self.model = QStandardItemModel()
129
        self.window.ui.subView.setModel(self.model)
130
        self.window.ui.subView.horizontalHeader().setSectionResizeMode(1)
131
132
        self.window.ui.actionSubscribeDataChange.triggered.connect(self._subscribe)
133
        self.window.ui.actionUnsubscribeDataChange.triggered.connect(self._unsubscribe)
134
135
        # populate contextual menu
136
        self.window.ui.treeView.addAction(self.window.ui.actionSubscribeDataChange)
137
        self.window.ui.treeView.addAction(self.window.ui.actionUnsubscribeDataChange)
138
139
        # handle subscriptions
140
        self._subhandler.data_change_fired.connect(self._update_subscription_model, type=Qt.QueuedConnection)
141
        
142
        # accept drops
143
        self.model.canDropMimeData = self.canDropMimeData
144
        self.model.dropMimeData = self.dropMimeData
145
146
    def canDropMimeData(self, mdata, action, row, column, parent):
147
        return True
@@ 55-71 (lines=17) @@
52
53
class EventUI(object):
54
55
    def __init__(self, window, uaclient):
56
        self.window = window
57
        self.uaclient = uaclient
58
        self._handler = EventHandler()
59
        self._subscribed_nodes = []  # FIXME: not really needed
60
        self.model = QStandardItemModel()
61
        self.window.ui.evView.setModel(self.model)
62
        self.window.ui.actionSubscribeEvent.triggered.connect(self._subscribe)
63
        self.window.ui.actionUnsubscribeEvents.triggered.connect(self._unsubscribe)
64
        # context menu
65
        self.window.ui.treeView.addAction(self.window.ui.actionSubscribeEvent)
66
        self.window.ui.treeView.addAction(self.window.ui.actionUnsubscribeEvents)
67
        self._handler.event_fired.connect(self._update_event_model, type=Qt.QueuedConnection)
68
69
        # accept drops
70
        self.model.canDropMimeData = self.canDropMimeData
71
        self.model.dropMimeData = self.dropMimeData
72
73
    def canDropMimeData(self, mdata, action, row, column, parent):
74
        return True