Create custom QDockWidget subclass

This commit is contained in:
David Vierra 2015-09-14 22:19:20 -10:00
parent affdddfb6c
commit 01bb815ebd
4 changed files with 29 additions and 11 deletions

View File

@ -32,6 +32,7 @@ from mcedit2.widgets.log_view import LogViewFrame
from mcedit2.rendering.chunkloader import ChunkLoaderInfo
from mcedit2.util import profiler
from mcedit2.util.ipython_widget import terminal_widget
from mcedit2.widgets.mcedockwidget import MCEDockWidget
from mcedit2.widgets.objectinspector import ObjectInspector
from mcedit2.util.profilerui import ProfilerWidget
from mcedit2.util.settings import Settings
@ -152,7 +153,7 @@ class MCEditApp(QtGui.QApplication):
historyIcon = QtGui.QIcon(resourcePath("mcedit2/assets/mcedit2/icons/history.png"))
self.undoView = QtGui.QUndoView(self.undoGroup)
self.undoDockWidget = QtGui.QDockWidget("History", mainWindow, objectName="HistoryWidget")
self.undoDockWidget = MCEDockWidget("History", mainWindow, objectName="HistoryWidget")
self.undoDockWidget.setWidget(self.undoView)
self.undoDockWidget.setWindowIcon(historyIcon)
@ -163,14 +164,14 @@ class MCEditApp(QtGui.QApplication):
self.undoDockWidget.close()
self.logViewWidget = LogViewFrame(mainWindow)
self.logViewDockWidget = QtGui.QDockWidget("Error Log", mainWindow, objectName="ErrorsWidget")
self.logViewDockWidget = MCEDockWidget("Error Log", mainWindow, objectName="ErrorsWidget")
self.logViewDockWidget.setWidget(self.logViewWidget)
mainWindow.addDockWidget(Qt.BottomDockWidgetArea, self.logViewDockWidget)
mainWindow.panelsToolBar.addAction(self.logViewDockWidget.toggleViewAction())
self.logViewDockWidget.close()
self.libraryWidget = LibraryWidget()
self.libraryDockWidget = QtGui.QDockWidget("Library", mainWindow, objectName="LibraryWidget")
self.libraryDockWidget = MCEDockWidget("Library", mainWindow, objectName="LibraryWidget")
self.libraryDockWidget.setWidget(self.libraryWidget)
mainWindow.addDockWidget(Qt.RightDockWidgetArea, self.libraryDockWidget)
mainWindow.panelsToolBar.addAction(self.libraryDockWidget.toggleViewAction())
@ -188,20 +189,20 @@ class MCEditApp(QtGui.QApplication):
self.debugMenu = self.createDebugMenu()
self.debugObjectInspector = ObjectInspector(mainWindow)
self.inspectorDockWidget = QtGui.QDockWidget("Inspector", mainWindow, objectName="InspectorWidget")
self.inspectorDockWidget = MCEDockWidget("Object Inspector", mainWindow, objectName="InspectorWidget")
self.inspectorDockWidget.setWidget(self.debugObjectInspector)
self.debugMenu.addAction(self.inspectorDockWidget.toggleViewAction())
self.inspectorDockWidget.close()
self.profileView = ProfilerWidget()
self.profileDockWidget = QtGui.QDockWidget("Profiler", mainWindow, objectName="ProfilerWidget")
self.profileDockWidget = MCEDockWidget("Profiler", mainWindow, objectName="ProfilerWidget")
self.profileDockWidget.setWidget(self.profileView)
self.debugMenu.addAction(self.profileDockWidget.toggleViewAction())
self.profileDockWidget.close()
self.textureAtlasView = QtGui.QLabel()
self.textureAtlasView.setScaledContents(True)
self.textureAtlasDockWidget = QtGui.QDockWidget("Texture Atlas", mainWindow, objectName="TextureAtlasWidget")
self.textureAtlasDockWidget = MCEDockWidget("Texture Atlas", mainWindow, objectName="TextureAtlasWidget")
self.textureAtlasArea = QtGui.QScrollArea()
self.textureAtlasArea.setWidget(self.textureAtlasView)
@ -220,7 +221,7 @@ class MCEditApp(QtGui.QApplication):
self.loaderInfo = ChunkLoaderInfo()
infoTabs.addTab(self.loaderInfo, "Loader")
self.infoDockWidget = QtGui.QDockWidget("Debug Info", mainWindow, objectName="DebugInfo")
self.infoDockWidget = MCEDockWidget("Debug Info", mainWindow, objectName="DebugInfo")
self.infoDockWidget.setWidget(infoTabs)
self.infoDockWidget.close()

View File

@ -3,6 +3,7 @@
"""
from __future__ import absolute_import, division, print_function
from collections import namedtuple
from mcedit2.widgets.mcedockwidget import MCEDockWidget
from mceditlib import nbt
from PySide import QtGui, QtCore
import logging
@ -294,7 +295,7 @@ class FindReplaceNBT(QtCore.QObject):
self.dialog = dialog
self.resultsWidget = load_ui("find_replace_nbt_results.ui")
self.resultsDockWidget = QtGui.QDockWidget("NBT Search", objectName="nbtSearch")
self.resultsDockWidget = MCEDockWidget("NBT Search", objectName="nbtSearch")
self.resultsDockWidget.setWidget(self.resultsWidget)
self.resultsDockWidget.hide()

View File

@ -20,6 +20,7 @@ from mcedit2.util import minecraftinstall
from mcedit2.util.dialogs import NotImplementedYet
from mcedit2.util.directories import getUserSchematicsDirectory
from mcedit2.util.mimeformats import MimeFormats
from mcedit2.widgets.mcedockwidget import MCEDockWidget
from mcedit2.widgets.spinslider import SpinSlider
from mceditlib.util import exhaust
from mceditlib.util.lazyprop import weakrefprop
@ -412,7 +413,7 @@ class EditorSession(QtCore.QObject):
self.dockWidgets.append((Qt.BottomDockWidgetArea, resultsWidget))
self.inspectorWidget = InspectorWidget(self)
self.inspectorDockWidget = QtGui.QDockWidget(self.tr("Inspector"), objectName="inspector")
self.inspectorDockWidget = MCEDockWidget(self.tr("Inspector"), objectName="inspector")
self.inspectorDockWidget.setWidget(self.inspectorWidget)
self.inspectorDockWidget.hide()
self.dockWidgets.append((Qt.RightDockWidgetArea, self.inspectorDockWidget))
@ -1112,7 +1113,7 @@ class EditorTab(QtGui.QWidget):
self.viewStack = QtGui.QStackedWidget()
self.miniMap = MinimapWorldView(editorSession.currentDimension, editorSession.textureAtlas, editorSession.geometryCache)
self.miniMapDockWidget = QtGui.QDockWidget("Minimap", objectName="MinimapWidget", floating=True)
self.miniMapDockWidget = MCEDockWidget("Minimap", objectName="MinimapWidget", floating=True)
self.miniMapDockWidget.setWidget(self.miniMap)
self.miniMapDockWidget.setFixedSize(256, 256)
@ -1121,7 +1122,7 @@ class EditorTab(QtGui.QWidget):
self.toolOptionsArea = QtGui.QScrollArea()
self.toolOptionsArea.setWidgetResizable(True)
self.toolOptionsDockWidget = QtGui.QDockWidget("Tool Options", objectName="ToolOptionsWidget", floating=True)
self.toolOptionsDockWidget = MCEDockWidget("Tool Options", objectName="ToolOptionsWidget", floating=True)
self.toolOptionsDockWidget.setWidget(self.toolOptionsArea)
editorSession.dockWidgets.append((Qt.LeftDockWidgetArea, self.miniMapDockWidget))
editorSession.dockWidgets.append((Qt.LeftDockWidgetArea, self.toolOptionsDockWidget))

View File

@ -0,0 +1,15 @@
"""
mcedockwidget
"""
from __future__ import absolute_import, division, print_function, unicode_literals
from PySide import QtGui
import logging
log = logging.getLogger(__name__)
class MCEDockWidget(QtGui.QDockWidget):
def __init__(self, *a, **kw):
super(MCEDockWidget, self).__init__(*a, **kw)