File wellmet/qt_gui/qt_pairwise.py changed (mode: 100644) (index 1fa2028..924117b) |
... |
... |
class MatrixWindow(QtWidgets.QMainWindow): |
167 |
167 |
## Create a grid layout to manage the widgets size and position |
## Create a grid layout to manage the widgets size and position |
168 |
168 |
self.layout = pg.LayoutWidget() |
self.layout = pg.LayoutWidget() |
169 |
169 |
self.setCentralWidget(self.layout) |
self.setCentralWidget(self.layout) |
|
170 |
|
|
|
171 |
|
self.list_view = QtWidgets.QListWidget() |
170 |
172 |
|
|
171 |
173 |
self.image_view = MView(self, parent=self.layout) |
self.image_view = MView(self, parent=self.layout) |
172 |
174 |
|
|
|
... |
... |
class MatrixWindow(QtWidgets.QMainWindow): |
202 |
204 |
|
|
203 |
205 |
|
|
204 |
206 |
|
|
|
207 |
|
dock = QtWidgets.QDockWidget("View", self) |
|
208 |
|
dock.setWidget(self.list_view) |
|
209 |
|
self.dockables.append(dock) |
|
210 |
|
self.addDockWidget(QtCore.Qt.RightDockWidgetArea, dock) |
|
211 |
|
|
205 |
212 |
|
|
206 |
213 |
dock = QtWidgets.QDockWidget("Contacts", self) |
dock = QtWidgets.QDockWidget("Contacts", self) |
207 |
214 |
dock.setWidget(ContactWidget(self, dock)) |
dock.setWidget(ContactWidget(self, dock)) |
|
... |
... |
class CustomViewBox(pg.ViewBox): |
414 |
421 |
|
|
415 |
422 |
|
|
416 |
423 |
|
|
|
424 |
|
right_button = QtCore.Qt.MouseButton.RightButton |
|
425 |
|
left_button = QtCore.Qt.MouseButton.LeftButton |
417 |
426 |
|
|
418 |
427 |
class MView(pg.ImageView): |
class MView(pg.ImageView): |
419 |
428 |
mouse_moved = QtCore.pyqtSignal(int, int) |
mouse_moved = QtCore.pyqtSignal(int, int) |
|
... |
... |
class MView(pg.ImageView): |
421 |
430 |
mouse_double_clicked = QtCore.pyqtSignal(int, int) |
mouse_double_clicked = QtCore.pyqtSignal(int, int) |
422 |
431 |
mouse_right_dragged = QtCore.pyqtSignal(int, int) |
mouse_right_dragged = QtCore.pyqtSignal(int, int) |
423 |
432 |
|
|
424 |
|
right_button = QtCore.Qt.MouseButton.RightButton |
|
425 |
|
left_button = QtCore.Qt.MouseButton.LeftButton |
|
426 |
|
|
|
|
433 |
|
|
427 |
434 |
def __init__(self, w, *args, **kwargs): |
def __init__(self, w, *args, **kwargs): |
428 |
435 |
self.vb = CustomViewBox() |
self.vb = CustomViewBox() |
429 |
436 |
self.pi = pg.PlotItem(viewBox=self.vb) |
self.pi = pg.PlotItem(viewBox=self.vb) |
|
... |
... |
class MView(pg.ImageView): |
442 |
449 |
#self.setBackground('w') |
#self.setBackground('w') |
443 |
450 |
|
|
444 |
451 |
|
|
|
452 |
|
self.ar_item = QtWidgets.QListWidgetItem('auto range') |
|
453 |
|
self.ar_item.setFlags(self.ar_item.flags() | QtCore.Qt.ItemIsUserCheckable) |
|
454 |
|
self.ar_item.setCheckState(QtCore.Qt.Checked) |
|
455 |
|
w.list_view.addItem(self.ar_item) |
|
456 |
|
|
|
457 |
|
self.al_item = QtWidgets.QListWidgetItem('auto levels') |
|
458 |
|
self.al_item.setFlags(self.al_item.flags() | QtCore.Qt.ItemIsUserCheckable) |
|
459 |
|
self.al_item.setCheckState(QtCore.Qt.Checked) |
|
460 |
|
w.list_view.addItem(self.al_item) |
|
461 |
|
|
|
462 |
|
|
|
463 |
|
|
445 |
464 |
self.proxy = pg.SignalProxy(self.pi.scene().sigMouseMoved, |
self.proxy = pg.SignalProxy(self.pi.scene().sigMouseMoved, |
446 |
465 |
rateLimit=60, slot=self.on_mouse_moved) |
rateLimit=60, slot=self.on_mouse_moved) |
447 |
466 |
self.x = -1 |
self.x = -1 |
|
... |
... |
class MView(pg.ImageView): |
483 |
502 |
|
|
484 |
503 |
|
|
485 |
504 |
def update(self, **kwargs): |
def update(self, **kwargs): |
|
505 |
|
if 'autoRange' not in kwargs: |
|
506 |
|
kwargs['autoRange'] = self.ar_item.checkState() |
|
507 |
|
if 'autoLevels' not in kwargs: |
|
508 |
|
kwargs['autoLevels'] = self.al_item.checkState() |
|
509 |
|
|
486 |
510 |
self.setImage(self.data.T, levelMode='rgba', **kwargs) |
self.setImage(self.data.T, levelMode='rgba', **kwargs) |
|
511 |
|
|
487 |
512 |
|
|
488 |
513 |
def on_mouse_moved(self, evt): |
def on_mouse_moved(self, evt): |
489 |
514 |
pos = evt[0] ## using signal proxy turns original arguments into a tuple |
pos = evt[0] ## using signal proxy turns original arguments into a tuple |
|
... |
... |
class MView(pg.ImageView): |
503 |
528 |
self.x = x |
self.x = x |
504 |
529 |
self.y = y |
self.y = y |
505 |
530 |
self.mouse_moved.emit(x, y) |
self.mouse_moved.emit(x, y) |
506 |
|
if self.app.mouseButtons() == self.right_button: |
|
|
531 |
|
if self.app.mouseButtons() == right_button: |
507 |
532 |
self.mouse_right_dragged.emit(x, y) |
self.mouse_right_dragged.emit(x, y) |
508 |
533 |
|
|
509 |
534 |
|
|
|
... |
... |
class MView(pg.ImageView): |
513 |
538 |
return None |
return None |
514 |
539 |
if evt.double(): |
if evt.double(): |
515 |
540 |
self.mouse_double_clicked.emit(self.x, self.y) |
self.mouse_double_clicked.emit(self.x, self.y) |
516 |
|
elif evt.button() == self.left_button: |
|
|
541 |
|
elif evt.button() == left_button: |
517 |
542 |
self.mouse_clicked.emit(self.x, self.y) |
self.mouse_clicked.emit(self.x, self.y) |
518 |
543 |
|
|
519 |
544 |
|
|