Code Duplication    Length = 17-22 lines in 2 locations

uaclient/mainwindow.py 2 locations

@@ 107-128 (lines=22) @@
104
105
class DataChangeUI(object):
106
107
    def __init__(self, window, uaclient):
108
        self.window = window
109
        self.uaclient = uaclient
110
        self._subhandler = DataChangeHandler()
111
        self._subscribed_nodes = []
112
        self.model = QStandardItemModel()
113
        self.window.ui.subView.setModel(self.model)
114
        self.window.ui.subView.horizontalHeader().setSectionResizeMode(1)
115
116
        self.window.ui.actionSubscribeDataChange.triggered.connect(self._subscribe)
117
        self.window.ui.actionUnsubscribeDataChange.triggered.connect(self._unsubscribe)
118
119
        # populate contextual menu
120
        self.window.ui.treeView.addAction(self.window.ui.actionSubscribeDataChange)
121
        self.window.ui.treeView.addAction(self.window.ui.actionUnsubscribeDataChange)
122
123
        # handle subscriptions
124
        self._subhandler.data_change_fired.connect(self._update_subscription_model, type=Qt.QueuedConnection)
125
        
126
        # accept drops
127
        self.model.canDropMimeData = self.canDropMimeData
128
        self.model.dropMimeData = self.dropMimeData
129
130
    def canDropMimeData(self, mdata, action, row, column, parent):
131
        return True
@@ 43-59 (lines=17) @@
40
41
class EventUI(object):
42
43
    def __init__(self, window, uaclient):
44
        self.window = window
45
        self.uaclient = uaclient
46
        self._handler = EventHandler()
47
        self._subscribed_nodes = []  # FIXME: not really needed
48
        self.model = QStandardItemModel()
49
        self.window.ui.evView.setModel(self.model)
50
        self.window.ui.actionSubscribeEvent.triggered.connect(self._subscribe)
51
        self.window.ui.actionUnsubscribeEvents.triggered.connect(self._unsubscribe)
52
        # context menu
53
        self.window.ui.treeView.addAction(self.window.ui.actionSubscribeEvent)
54
        self.window.ui.treeView.addAction(self.window.ui.actionUnsubscribeEvents)
55
        self._handler.event_fired.connect(self._update_event_model, type=Qt.QueuedConnection)
56
57
        # accept drops
58
        self.model.canDropMimeData = self.canDropMimeData
59
        self.model.dropMimeData = self.dropMimeData
60
61
    def canDropMimeData(self, mdata, action, row, column, parent):
62
        return True