Source code for papi.plugin.base_classes.PaPISubWindow

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
Copyright (C) 2014 Technische Universität Berlin,
Fakultät IV - Elektrotechnik und Informatik,
Fachgebiet Regelungssysteme,
Einsteinufer 17, D-10587 Berlin, Germany

This file is part of PaPI.

PaPI is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

PaPI is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with PaPI.  If not, see <http://www.gnu.org/licenses/>.

Contributors:
Stefan Ruppin
"""

from PyQt5.QtWidgets import QMdiSubWindow
from PyQt5.QtCore import Qt

[docs]class PaPISubWindow(QMdiSubWindow): def __init__(self, parent = None): QMdiSubWindow.__init__(self,parent) self._interaction_possible = True self._default_window_flag = self.windowFlags()
[docs] def mouseMoveEvent(self, QMouseEvent): if self._interaction_possible: QMdiSubWindow.mouseMoveEvent(self,QMouseEvent) else: pass
[docs] def disableInteraction(self): self._interaction_possible = False self.setWindowFlags(Qt.CustomizeWindowHint | Qt.WindowTitleHint) self.setFocus() self.show()
[docs] def enableInteraction(self): self._interaction_possible = True self.setWindowFlags(Qt.WindowMaximizeButtonHint | Qt.WindowTitleHint | Qt.WindowMinimizeButtonHint) self.setFocus() self.show()
[docs] def isInteractionAllowed(self): return self._interaction_possible # Design choice: do not use the context menu of the title bar of subwindows
[docs] def contextMenuEvent(self, QContextMenuEvent): # if self._interaction_possible: # QMdiSubWindow.contextMenuEvent(self,QContextMenuEvent) # else: # pass pass

Links