class FtrackInfoDialog(QtWidgets.QDialog): '''Info dialog class.''' def __init__(self, parent=None, connector=None): '''Instantiate info dialog class with *connector*.''' super(FtrackInfoDialog, self).__init__(parent=parent) self.connector = connector self.setMinimumWidth(400) self.setSizePolicy( QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding ) ) self.centralwidget = QtWidgets.QWidget(self) self.verticalMainLayout = QtWidgets.QVBoxLayout(self) self.horizontalLayout = QtWidgets.QHBoxLayout() shotId = os.getenv('FTRACK_SHOTID') taskId = os.getenv('FTRACK_TASKID', shotId) self.headerWidget = header.Header(getpass.getuser(), self) self.verticalMainLayout.addWidget(self.headerWidget) self.infoWidget = WebViewWidget(self.centralwidget) self.horizontalLayout.addWidget(self.infoWidget) self.verticalMainLayout.addLayout(self.horizontalLayout) self.setObjectName('ftrackInfo') self.setWindowTitle('ftrackInfo') self.homeTaskId = taskId self.setObject(taskId) panelComInstance = PanelComInstance.instance() panelComInstance.addInfoListener(self.updateObj) def setObject(self, taskId): '''Set object to *taskId*.''' obj = self.connector.objectById(taskId) url = obj.getWebWidgetUrl('info', theme='tf') self.infoWidget.setUrl(url) def updateObj(self, taskId): '''Update with *taskId*.''' self.setObject(taskId)
class FtrackTasksDialog(QtGui.QDialog): def __init__(self, parent=None, connector=None): ''''Initialize dialog with *parent* and *connector* instance.''' if not connector: raise ValueError( 'Please provide a connector object for {0}'.format( self.__class__.__name__ ) ) self.connector = connector if not parent: self.parent = self.connector.getMainWindow() super(FtrackTasksDialog, self).__init__(self.parent) applyTheme(self, 'integration') self.setSizePolicy( QtGui.QSizePolicy( QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding ) ) self.setMinimumWidth(500) self.centralwidget = QtGui.QWidget(self) self.verticalMainLayout = QtGui.QVBoxLayout(self) self.horizontalLayout = QtGui.QHBoxLayout() self.headerWidget = Header(getpass.getuser(), self) self.headerWidget.setSizePolicy( QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed ) self.verticalMainLayout.addWidget(self.headerWidget) self.tasksWidget = WebViewWidget(self) url = ftrack.getWebWidgetUrl('tasks', theme='tf') self.tasksWidget.setUrl(url) self.horizontalLayout.addWidget(self.tasksWidget) self.verticalMainLayout.addLayout(self.horizontalLayout) self.setObjectName('ftrackTasks') self.setWindowTitle("ftrackTasks") def keyPressEvent(self, e): '''Handle the key press Event''' if not e.key() == QtCore.Qt.Key_Escape: super(FtrackTasksDialog, self).keyPressEvent(e)
class FtrackTasksDialog(QtWidgets.QDialog): def __init__(self, parent=None, connector=None): ''''Initialize dialog with *parent* and *connector* instance.''' if not connector: raise ValueError( 'Please provide a connector object for {0}'.format( self.__class__.__name__ ) ) self.connector = connector if not parent: self.parent = self.connector.getMainWindow() super(FtrackTasksDialog, self).__init__(self.parent) applyTheme(self, 'integration') self.setSizePolicy( QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding ) ) self.setMinimumWidth(500) self.centralwidget = QtWidgets.QWidget(self) self.verticalMainLayout = QtWidgets.QVBoxLayout(self) self.horizontalLayout = QtWidgets.QHBoxLayout() self.headerWidget = Header(getpass.getuser(), self) self.headerWidget.setSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed ) self.verticalMainLayout.addWidget(self.headerWidget) self.tasksWidget = WebViewWidget(self) url = ftrack.getWebWidgetUrl('tasks', theme='tf') self.tasksWidget.setUrl(url) self.horizontalLayout.addWidget(self.tasksWidget) self.verticalMainLayout.addLayout(self.horizontalLayout) self.setObjectName('ftrackTasks') self.setWindowTitle("ftrackTasks") def keyPressEvent(self, e): '''Handle the key press Event''' if not e.key() == QtCore.Qt.Key_Escape: super(FtrackTasksDialog, self).keyPressEvent(e)