Changed the TRPreviewer to use QMdiArea instead of QWorkspace.

Sun, 29 Aug 2010 20:44:20 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 29 Aug 2010 20:44:20 +0200
changeset 526
f51eb1f0ab40
parent 525
400b72e2602a
child 527
8f7dc3c486e2

Changed the TRPreviewer to use QMdiArea instead of QWorkspace.

APIs/Python3/eric5.api file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
Documentation/Source/eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html file | annotate | diff | comparison | revisions
Documentation/Source/eric5.Tools.TRPreviewer.html file | annotate | diff | comparison | revisions
Plugins/ViewManagerPlugins/MdiArea/MdiArea.py file | annotate | diff | comparison | revisions
Tools/TRPreviewer.py file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric5.api	Sun Aug 29 19:13:23 2010 +0200
+++ b/APIs/Python3/eric5.api	Sun Aug 29 20:44:20 2010 +0200
@@ -3637,6 +3637,7 @@
 eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.canSplit?4()
 eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.canTile?4()
 eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.cascade?4()
+eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.changeCaption?7
 eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.checkActions?7
 eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.cursorChanged?7
 eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.MdiArea.editorChanged?7
@@ -5502,20 +5503,20 @@
 eric5.Tools.TRPreviewer.TranslationsDict.set?4(name)
 eric5.Tools.TRPreviewer.TranslationsDict.translationChanged?7
 eric5.Tools.TRPreviewer.TranslationsDict?1(selector, parent)
+eric5.Tools.TRPreviewer.WidgetArea.closeAllWidgets?4()
+eric5.Tools.TRPreviewer.WidgetArea.closeWidget?4()
+eric5.Tools.TRPreviewer.WidgetArea.eventFilter?4(obj, ev)
+eric5.Tools.TRPreviewer.WidgetArea.hasWidgets?4()
+eric5.Tools.TRPreviewer.WidgetArea.lastWidgetClosed?7
+eric5.Tools.TRPreviewer.WidgetArea.loadWidget?4(uiFileName)
+eric5.Tools.TRPreviewer.WidgetArea.rebuildWidgets?7
+eric5.Tools.TRPreviewer.WidgetArea.showWindowMenu?4(windowMenu)
+eric5.Tools.TRPreviewer.WidgetArea.toggleSelectedWidget?4(act)
+eric5.Tools.TRPreviewer.WidgetArea?1(parent = None)
 eric5.Tools.TRPreviewer.WidgetView.buildWidget?4()
 eric5.Tools.TRPreviewer.WidgetView.isValid?4()
 eric5.Tools.TRPreviewer.WidgetView.uiFileName?4()
 eric5.Tools.TRPreviewer.WidgetView?1(uiFileName, parent = None, name = None)
-eric5.Tools.TRPreviewer.WidgetWorkspace.closeAllWidgets?4()
-eric5.Tools.TRPreviewer.WidgetWorkspace.closeWidget?4()
-eric5.Tools.TRPreviewer.WidgetWorkspace.eventFilter?4(obj, ev)
-eric5.Tools.TRPreviewer.WidgetWorkspace.hasWidgets?4()
-eric5.Tools.TRPreviewer.WidgetWorkspace.lastWidgetClosed?7
-eric5.Tools.TRPreviewer.WidgetWorkspace.loadWidget?4(uiFileName)
-eric5.Tools.TRPreviewer.WidgetWorkspace.rebuildWidgets?7
-eric5.Tools.TRPreviewer.WidgetWorkspace.showWindowMenu?4(windowMenu)
-eric5.Tools.TRPreviewer.WidgetWorkspace.toggleSelectedWidget?4(act)
-eric5.Tools.TRPreviewer.WidgetWorkspace?1(parent = None)
 eric5.Tools.TRPreviewer.noTranslationName?7
 eric5.Tools.TRSingleApplication.SAFile?7
 eric5.Tools.TRSingleApplication.SALoadForm?7
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sun Aug 29 19:13:23 2010 +0200
+++ b/Documentation/Help/source.qhp	Sun Aug 29 20:44:20 2010 +0200
@@ -5269,8 +5269,8 @@
       <keyword name="TRPreviewer" id="TRPreviewer" ref="eric5.Tools.TRPreviewer.html#TRPreviewer" />
       <keyword name="Translation" id="Translation" ref="eric5.Tools.TRPreviewer.html#Translation" />
       <keyword name="TranslationsDict" id="TranslationsDict" ref="eric5.Tools.TRPreviewer.html#TranslationsDict" />
+      <keyword name="WidgetArea" id="WidgetArea" ref="eric5.Tools.TRPreviewer.html#WidgetArea" />
       <keyword name="WidgetView" id="WidgetView" ref="eric5.Tools.TRPreviewer.html#WidgetView" />
-      <keyword name="WidgetWorkspace" id="WidgetWorkspace" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace" />
       <keyword name="TRPreviewer (Constructor)" id="TRPreviewer (Constructor)" ref="eric5.Tools.TRPreviewer.html#TRPreviewer.__init__" />
       <keyword name="TRPreviewer.__about" id="TRPreviewer.__about" ref="eric5.Tools.TRPreviewer.html#TRPreviewer.__about" />
       <keyword name="TRPreviewer.__aboutQt" id="TRPreviewer.__aboutQt" ref="eric5.Tools.TRPreviewer.html#TRPreviewer.__aboutQt" />
@@ -5299,21 +5299,21 @@
       <keyword name="TranslationsDict.loadTransFile" id="TranslationsDict.loadTransFile" ref="eric5.Tools.TRPreviewer.html#TranslationsDict.loadTransFile" />
       <keyword name="TranslationsDict.reload" id="TranslationsDict.reload" ref="eric5.Tools.TRPreviewer.html#TranslationsDict.reload" />
       <keyword name="TranslationsDict.set" id="TranslationsDict.set" ref="eric5.Tools.TRPreviewer.html#TranslationsDict.set" />
+      <keyword name="WidgetArea (Constructor)" id="WidgetArea (Constructor)" ref="eric5.Tools.TRPreviewer.html#WidgetArea.__init__" />
+      <keyword name="WidgetArea.__findWidget" id="WidgetArea.__findWidget" ref="eric5.Tools.TRPreviewer.html#WidgetArea.__findWidget" />
+      <keyword name="WidgetArea.__toggleWidget" id="WidgetArea.__toggleWidget" ref="eric5.Tools.TRPreviewer.html#WidgetArea.__toggleWidget" />
+      <keyword name="WidgetArea.closeAllWidgets" id="WidgetArea.closeAllWidgets" ref="eric5.Tools.TRPreviewer.html#WidgetArea.closeAllWidgets" />
+      <keyword name="WidgetArea.closeWidget" id="WidgetArea.closeWidget" ref="eric5.Tools.TRPreviewer.html#WidgetArea.closeWidget" />
+      <keyword name="WidgetArea.eventFilter" id="WidgetArea.eventFilter" ref="eric5.Tools.TRPreviewer.html#WidgetArea.eventFilter" />
+      <keyword name="WidgetArea.hasWidgets" id="WidgetArea.hasWidgets" ref="eric5.Tools.TRPreviewer.html#WidgetArea.hasWidgets" />
+      <keyword name="WidgetArea.loadWidget" id="WidgetArea.loadWidget" ref="eric5.Tools.TRPreviewer.html#WidgetArea.loadWidget" />
+      <keyword name="WidgetArea.showWindowMenu" id="WidgetArea.showWindowMenu" ref="eric5.Tools.TRPreviewer.html#WidgetArea.showWindowMenu" />
+      <keyword name="WidgetArea.toggleSelectedWidget" id="WidgetArea.toggleSelectedWidget" ref="eric5.Tools.TRPreviewer.html#WidgetArea.toggleSelectedWidget" />
       <keyword name="WidgetView (Constructor)" id="WidgetView (Constructor)" ref="eric5.Tools.TRPreviewer.html#WidgetView.__init__" />
       <keyword name="WidgetView.__rebuildWidget" id="WidgetView.__rebuildWidget" ref="eric5.Tools.TRPreviewer.html#WidgetView.__rebuildWidget" />
       <keyword name="WidgetView.buildWidget" id="WidgetView.buildWidget" ref="eric5.Tools.TRPreviewer.html#WidgetView.buildWidget" />
       <keyword name="WidgetView.isValid" id="WidgetView.isValid" ref="eric5.Tools.TRPreviewer.html#WidgetView.isValid" />
       <keyword name="WidgetView.uiFileName" id="WidgetView.uiFileName" ref="eric5.Tools.TRPreviewer.html#WidgetView.uiFileName" />
-      <keyword name="WidgetWorkspace (Constructor)" id="WidgetWorkspace (Constructor)" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.__init__" />
-      <keyword name="WidgetWorkspace.__findWidget" id="WidgetWorkspace.__findWidget" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.__findWidget" />
-      <keyword name="WidgetWorkspace.__toggleWidget" id="WidgetWorkspace.__toggleWidget" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.__toggleWidget" />
-      <keyword name="WidgetWorkspace.closeAllWidgets" id="WidgetWorkspace.closeAllWidgets" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.closeAllWidgets" />
-      <keyword name="WidgetWorkspace.closeWidget" id="WidgetWorkspace.closeWidget" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.closeWidget" />
-      <keyword name="WidgetWorkspace.eventFilter" id="WidgetWorkspace.eventFilter" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.eventFilter" />
-      <keyword name="WidgetWorkspace.hasWidgets" id="WidgetWorkspace.hasWidgets" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.hasWidgets" />
-      <keyword name="WidgetWorkspace.loadWidget" id="WidgetWorkspace.loadWidget" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.loadWidget" />
-      <keyword name="WidgetWorkspace.showWindowMenu" id="WidgetWorkspace.showWindowMenu" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.showWindowMenu" />
-      <keyword name="WidgetWorkspace.toggleSelectedWidget" id="WidgetWorkspace.toggleSelectedWidget" ref="eric5.Tools.TRPreviewer.html#WidgetWorkspace.toggleSelectedWidget" />
       <keyword name="UIPreviewer (Module)" id="UIPreviewer (Module)" ref="eric5.Tools.UIPreviewer.html" />
       <keyword name="UIPreviewer" id="UIPreviewer" ref="eric5.Tools.UIPreviewer.html#UIPreviewer" />
       <keyword name="UIPreviewer (Constructor)" id="UIPreviewer (Constructor)" ref="eric5.Tools.UIPreviewer.html#UIPreviewer.__init__" />
@@ -9189,6 +9189,7 @@
       <keyword name="MdiArea" id="MdiArea" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea" />
       <keyword name="MdiArea (Constructor)" id="MdiArea (Constructor)" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea.__init__" />
       <keyword name="MdiArea.__iconizeAllWindows" id="MdiArea.__iconizeAllWindows" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea.__iconizeAllWindows" />
+      <keyword name="MdiArea.__mapped" id="MdiArea.__mapped" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea.__mapped" />
       <keyword name="MdiArea.__restoreAllWindows" id="MdiArea.__restoreAllWindows" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea.__restoreAllWindows" />
       <keyword name="MdiArea.__setSubWindowIcon" id="MdiArea.__setSubWindowIcon" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea.__setSubWindowIcon" />
       <keyword name="MdiArea.__subWindowActivated" id="MdiArea.__subWindowActivated" ref="eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html#MdiArea.__subWindowActivated" />
--- a/Documentation/Source/eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html	Sun Aug 29 19:13:23 2010 +0200
+++ b/Documentation/Source/eric5.Plugins.ViewManagerPlugins.MdiArea.MdiArea.html	Sun Aug 29 20:44:20 2010 +0200
@@ -52,6 +52,9 @@
 </dd><dt>breakpointToggled(Editor)</dt>
 <dd>
 emitted when a breakpoint is toggled.
+</dd><dt>changeCaption(str)</dt>
+<dd>
+emitted if a change of the caption is necessary
 </dd><dt>checkActions(Editor)</dt>
 <dd>
 emitted when some actions should be checked
@@ -87,7 +90,7 @@
 QMdiArea, ViewManager
 <h3>Class Attributes</h3>
 <table>
-<tr><td>bookmarkToggled</td></tr><tr><td>breakpointToggled</td></tr><tr><td>checkActions</td></tr><tr><td>cursorChanged</td></tr><tr><td>editorChanged</td></tr><tr><td>editorClosed</td></tr><tr><td>editorClosedEd</td></tr><tr><td>editorOpened</td></tr><tr><td>editorOpenedEd</td></tr><tr><td>editorSaved</td></tr><tr><td>lastEditorClosed</td></tr><tr><td>syntaxerrorToggled</td></tr>
+<tr><td>bookmarkToggled</td></tr><tr><td>breakpointToggled</td></tr><tr><td>changeCaption</td></tr><tr><td>checkActions</td></tr><tr><td>cursorChanged</td></tr><tr><td>editorChanged</td></tr><tr><td>editorClosed</td></tr><tr><td>editorClosedEd</td></tr><tr><td>editorOpened</td></tr><tr><td>editorOpenedEd</td></tr><tr><td>editorSaved</td></tr><tr><td>lastEditorClosed</td></tr><tr><td>syntaxerrorToggled</td></tr>
 </table>
 <h3>Methods</h3>
 <table>
@@ -98,6 +101,9 @@
 <td><a href="#MdiArea.__iconizeAllWindows">__iconizeAllWindows</a></td>
 <td>Private slot to iconize all windows.</td>
 </tr><tr>
+<td><a href="#MdiArea.__mapped">__mapped</a></td>
+<td>Private slot to handle the activation of a sub window.</td>
+</tr><tr>
 <td><a href="#MdiArea.__restoreAllWindows">__restoreAllWindows</a></td>
 <td>Private slot to restore all windows.</td>
 </tr><tr>
@@ -177,7 +183,17 @@
 <b>__iconizeAllWindows</b>(<i></i>)
 <p>
         Private slot to iconize all windows.
-</p><a NAME="MdiArea.__restoreAllWindows" ID="MdiArea.__restoreAllWindows"></a>
+</p><a NAME="MdiArea.__mapped" ID="MdiArea.__mapped"></a>
+<h4>MdiArea.__mapped</h4>
+<b>__mapped</b>(<i>subWindow</i>)
+<p>
+        Private slot to handle the activation of a sub window.
+</p><dl>
+<dt><i>subWindow</i></dt>
+<dd>
+sub window to be activated (QMdiSubWindow)
+</dd>
+</dl><a NAME="MdiArea.__restoreAllWindows" ID="MdiArea.__restoreAllWindows"></a>
 <h4>MdiArea.__restoreAllWindows</h4>
 <b>__restoreAllWindows</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric5.Tools.TRPreviewer.html	Sun Aug 29 19:13:23 2010 +0200
+++ b/Documentation/Source/eric5.Tools.TRPreviewer.html	Sun Aug 29 20:44:20 2010 +0200
@@ -40,11 +40,11 @@
 <td><a href="#TranslationsDict">TranslationsDict</a></td>
 <td>Class to store all loaded translations.</td>
 </tr><tr>
+<td><a href="#WidgetArea">WidgetArea</a></td>
+<td>Specialized MDI area to show the loaded widgets.</td>
+</tr><tr>
 <td><a href="#WidgetView">WidgetView</a></td>
 <td>Class to show a dynamically loaded widget (or dialog).</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace">WidgetWorkspace</a></td>
-<td>Specialized workspace to show the loaded widgets.</td>
 </tr>
 </table>
 <h3>Functions</h3>
@@ -457,6 +457,163 @@
 </dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr /><hr />
+<a NAME="WidgetArea" ID="WidgetArea"></a>
+<h2>WidgetArea</h2>
+<p>
+    Specialized MDI area to show the loaded widgets.
+</p><h4>Signals</h4>
+<dl>
+<dt>lastWidgetClosed()</dt>
+<dd>
+emitted after last widget was closed
+</dd>
+</dl>
+<h3>Derived from</h3>
+QMdiArea
+<h3>Class Attributes</h3>
+<table>
+<tr><td>lastWidgetClosed</td></tr><tr><td>rebuildWidgets</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#WidgetArea.__init__">WidgetArea</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#WidgetArea.__findWidget">__findWidget</a></td>
+<td>Private method to find a specific widget view.</td>
+</tr><tr>
+<td><a href="#WidgetArea.__toggleWidget">__toggleWidget</a></td>
+<td>Private method to toggle a workspace window.</td>
+</tr><tr>
+<td><a href="#WidgetArea.closeAllWidgets">closeAllWidgets</a></td>
+<td>Public slot to close all windows.</td>
+</tr><tr>
+<td><a href="#WidgetArea.closeWidget">closeWidget</a></td>
+<td>Public slot to close the active window.</td>
+</tr><tr>
+<td><a href="#WidgetArea.eventFilter">eventFilter</a></td>
+<td>Protected method called to filter an event.</td>
+</tr><tr>
+<td><a href="#WidgetArea.hasWidgets">hasWidgets</a></td>
+<td>Public method to check for loaded widgets.</td>
+</tr><tr>
+<td><a href="#WidgetArea.loadWidget">loadWidget</a></td>
+<td>Public slot to load a UI file.</td>
+</tr><tr>
+<td><a href="#WidgetArea.showWindowMenu">showWindowMenu</a></td>
+<td>Public method to set up the widgets part of the Window menu.</td>
+</tr><tr>
+<td><a href="#WidgetArea.toggleSelectedWidget">toggleSelectedWidget</a></td>
+<td>Public method to handle the toggle of a window.</td>
+</tr>
+</table>
+<a NAME="WidgetArea.__init__" ID="WidgetArea.__init__"></a>
+<h4>WidgetArea (Constructor)</h4>
+<b>WidgetArea</b>(<i>parent = None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>parent</i></dt>
+<dd>
+parent widget (QWidget)
+</dd>
+</dl><a NAME="WidgetArea.__findWidget" ID="WidgetArea.__findWidget"></a>
+<h4>WidgetArea.__findWidget</h4>
+<b>__findWidget</b>(<i>uiFileName</i>)
+<p>
+        Private method to find a specific widget view.
+</p><dl>
+<dt><i>uiFileName</i></dt>
+<dd>
+filename of the loaded UI file (string)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+reference to the widget (WidgetView) or None
+</dd>
+</dl><a NAME="WidgetArea.__toggleWidget" ID="WidgetArea.__toggleWidget"></a>
+<h4>WidgetArea.__toggleWidget</h4>
+<b>__toggleWidget</b>(<i>w</i>)
+<p>
+        Private method to toggle a workspace window.
+</p><dl>
+<dt><i>w</i></dt>
+<dd>
+window to be toggled
+</dd>
+</dl><a NAME="WidgetArea.closeAllWidgets" ID="WidgetArea.closeAllWidgets"></a>
+<h4>WidgetArea.closeAllWidgets</h4>
+<b>closeAllWidgets</b>(<i></i>)
+<p>
+        Public slot to close all windows.
+</p><a NAME="WidgetArea.closeWidget" ID="WidgetArea.closeWidget"></a>
+<h4>WidgetArea.closeWidget</h4>
+<b>closeWidget</b>(<i></i>)
+<p>
+        Public slot to close the active window.
+</p><a NAME="WidgetArea.eventFilter" ID="WidgetArea.eventFilter"></a>
+<h4>WidgetArea.eventFilter</h4>
+<b>eventFilter</b>(<i>obj, ev</i>)
+<p>
+        Protected method called to filter an event.
+</p><dl>
+<dt><i>object</i></dt>
+<dd>
+object, that generated the event (QObject)
+</dd><dt><i>event</i></dt>
+<dd>
+the event, that was generated by object (QEvent)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating if event was filtered out
+</dd>
+</dl><a NAME="WidgetArea.hasWidgets" ID="WidgetArea.hasWidgets"></a>
+<h4>WidgetArea.hasWidgets</h4>
+<b>hasWidgets</b>(<i></i>)
+<p>
+        Public method to check for loaded widgets.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag signaling if any widget was loaded (boolean)
+</dd>
+</dl><a NAME="WidgetArea.loadWidget" ID="WidgetArea.loadWidget"></a>
+<h4>WidgetArea.loadWidget</h4>
+<b>loadWidget</b>(<i>uiFileName</i>)
+<p>
+        Public slot to load a UI file.
+</p><dl>
+<dt><i>uiFileName</i></dt>
+<dd>
+name of the UI file to load (string)
+</dd>
+</dl><a NAME="WidgetArea.showWindowMenu" ID="WidgetArea.showWindowMenu"></a>
+<h4>WidgetArea.showWindowMenu</h4>
+<b>showWindowMenu</b>(<i>windowMenu</i>)
+<p>
+        Public method to set up the widgets part of the Window menu.
+</p><dl>
+<dt><i>windowMenu</i></dt>
+<dd>
+reference to the window menu
+</dd>
+</dl><a NAME="WidgetArea.toggleSelectedWidget" ID="WidgetArea.toggleSelectedWidget"></a>
+<h4>WidgetArea.toggleSelectedWidget</h4>
+<b>toggleSelectedWidget</b>(<i>act</i>)
+<p>
+        Public method to handle the toggle of a window.
+</p><dl>
+<dt><i>act</i></dt>
+<dd>
+reference to the action that triggered (QAction)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr /><hr />
 <a NAME="WidgetView" ID="WidgetView"></a>
 <h2>WidgetView</h2>
 <p>
@@ -535,162 +692,5 @@
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
-<a NAME="WidgetWorkspace" ID="WidgetWorkspace"></a>
-<h2>WidgetWorkspace</h2>
-<p>
-    Specialized workspace to show the loaded widgets.
-</p><h4>Signals</h4>
-<dl>
-<dt>lastWidgetClosed()</dt>
-<dd>
-emitted after last widget was closed
-</dd>
-</dl>
-<h3>Derived from</h3>
-QWorkspace
-<h3>Class Attributes</h3>
-<table>
-<tr><td>lastWidgetClosed</td></tr><tr><td>rebuildWidgets</td></tr>
-</table>
-<h3>Methods</h3>
-<table>
-<tr>
-<td><a href="#WidgetWorkspace.__init__">WidgetWorkspace</a></td>
-<td>Constructor</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.__findWidget">__findWidget</a></td>
-<td>Private method to find a specific widget view.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.__toggleWidget">__toggleWidget</a></td>
-<td>Private method to toggle a workspace window.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.closeAllWidgets">closeAllWidgets</a></td>
-<td>Public slot to close all windows.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.closeWidget">closeWidget</a></td>
-<td>Public slot to close the active window.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.eventFilter">eventFilter</a></td>
-<td>Protected method called to filter an event.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.hasWidgets">hasWidgets</a></td>
-<td>Public method to check for loaded widgets.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.loadWidget">loadWidget</a></td>
-<td>Public slot to load a UI file.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.showWindowMenu">showWindowMenu</a></td>
-<td>Public method to set up the widgets part of the Window menu.</td>
-</tr><tr>
-<td><a href="#WidgetWorkspace.toggleSelectedWidget">toggleSelectedWidget</a></td>
-<td>Public method to handle the toggle of a window.</td>
-</tr>
-</table>
-<a NAME="WidgetWorkspace.__init__" ID="WidgetWorkspace.__init__"></a>
-<h4>WidgetWorkspace (Constructor)</h4>
-<b>WidgetWorkspace</b>(<i>parent = None</i>)
-<p>
-        Constructor
-</p><dl>
-<dt><i>parent</i></dt>
-<dd>
-parent widget (QWidget)
-</dd>
-</dl><a NAME="WidgetWorkspace.__findWidget" ID="WidgetWorkspace.__findWidget"></a>
-<h4>WidgetWorkspace.__findWidget</h4>
-<b>__findWidget</b>(<i>uiFileName</i>)
-<p>
-        Private method to find a specific widget view.
-</p><dl>
-<dt><i>uiFileName</i></dt>
-<dd>
-filename of the loaded UI file (string)
-</dd>
-</dl><dl>
-<dt>Returns:</dt>
-<dd>
-reference to the widget (WidgetView) or None
-</dd>
-</dl><a NAME="WidgetWorkspace.__toggleWidget" ID="WidgetWorkspace.__toggleWidget"></a>
-<h4>WidgetWorkspace.__toggleWidget</h4>
-<b>__toggleWidget</b>(<i>w</i>)
-<p>
-        Private method to toggle a workspace window.
-</p><dl>
-<dt><i>w</i></dt>
-<dd>
-window to be toggled
-</dd>
-</dl><a NAME="WidgetWorkspace.closeAllWidgets" ID="WidgetWorkspace.closeAllWidgets"></a>
-<h4>WidgetWorkspace.closeAllWidgets</h4>
-<b>closeAllWidgets</b>(<i></i>)
-<p>
-        Public slot to close all windows.
-</p><a NAME="WidgetWorkspace.closeWidget" ID="WidgetWorkspace.closeWidget"></a>
-<h4>WidgetWorkspace.closeWidget</h4>
-<b>closeWidget</b>(<i></i>)
-<p>
-        Public slot to close the active window.
-</p><a NAME="WidgetWorkspace.eventFilter" ID="WidgetWorkspace.eventFilter"></a>
-<h4>WidgetWorkspace.eventFilter</h4>
-<b>eventFilter</b>(<i>obj, ev</i>)
-<p>
-        Protected method called to filter an event.
-</p><dl>
-<dt><i>object</i></dt>
-<dd>
-object, that generated the event (QObject)
-</dd><dt><i>event</i></dt>
-<dd>
-the event, that was generated by object (QEvent)
-</dd>
-</dl><dl>
-<dt>Returns:</dt>
-<dd>
-flag indicating if event was filtered out
-</dd>
-</dl><a NAME="WidgetWorkspace.hasWidgets" ID="WidgetWorkspace.hasWidgets"></a>
-<h4>WidgetWorkspace.hasWidgets</h4>
-<b>hasWidgets</b>(<i></i>)
-<p>
-        Public method to check for loaded widgets.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-flag signaling if any widget was loaded (boolean)
-</dd>
-</dl><a NAME="WidgetWorkspace.loadWidget" ID="WidgetWorkspace.loadWidget"></a>
-<h4>WidgetWorkspace.loadWidget</h4>
-<b>loadWidget</b>(<i>uiFileName</i>)
-<p>
-        Public slot to load a UI file.
-</p><dl>
-<dt><i>uiFileName</i></dt>
-<dd>
-name of the UI file to load (string)
-</dd>
-</dl><a NAME="WidgetWorkspace.showWindowMenu" ID="WidgetWorkspace.showWindowMenu"></a>
-<h4>WidgetWorkspace.showWindowMenu</h4>
-<b>showWindowMenu</b>(<i>windowMenu</i>)
-<p>
-        Public method to set up the widgets part of the Window menu.
-</p><dl>
-<dt><i>windowMenu</i></dt>
-<dd>
-reference to the window menu
-</dd>
-</dl><a NAME="WidgetWorkspace.toggleSelectedWidget" ID="WidgetWorkspace.toggleSelectedWidget"></a>
-<h4>WidgetWorkspace.toggleSelectedWidget</h4>
-<b>toggleSelectedWidget</b>(<i>act</i>)
-<p>
-        Public method to handle the toggle of a window.
-</p><dl>
-<dt><i>act</i></dt>
-<dd>
-reference to the action that triggered (QAction)
-</dd>
-</dl>
-<div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/Plugins/ViewManagerPlugins/MdiArea/MdiArea.py	Sun Aug 29 19:13:23 2010 +0200
+++ b/Plugins/ViewManagerPlugins/MdiArea/MdiArea.py	Sun Aug 29 20:44:20 2010 +0200
@@ -25,6 +25,7 @@
     """
     Class implementing the mdi area viewmanager class.
     
+    @signal changeCaption(str) emitted if a change of the caption is necessary
     @signal editorChanged(str) emitted when the current editor has changed
     @signal lastEditorClosed() emitted after the last editor window was closed
     @signal editorOpened(str) emitted after an editor window was opened
@@ -39,6 +40,7 @@
     @signal breakpointToggled(Editor) emitted when a breakpoint is toggled.
     @signal bookmarkToggled(Editor) emitted when a bookmark is toggled.
     """
+    changeCaption = pyqtSignal(str)
     editorChanged = pyqtSignal(str)
     
     lastEditorClosed = pyqtSignal()
@@ -71,9 +73,17 @@
         
         self.__windowMapper = QSignalMapper(self)
         
-        self.__windowMapper.mapped[QWidget].connect(self.setActiveSubWindow)
+        self.__windowMapper.mapped[QWidget].connect(self.__mapped)
         self.subWindowActivated.connect(self.__subWindowActivated)
         
+    def __mapped(self, subWindow):
+        """
+        Private slot to handle the activation of a sub window.
+        
+        @param subWindow sub window to be activated (QMdiSubWindow)
+        """
+        self.setActiveSubWindow(subWindow)
+    
     def canCascade(self):
         """
         Public method to signal if cascading of managed windows is available.
--- a/Tools/TRPreviewer.py	Sun Aug 29 19:13:23 2010 +0200
+++ b/Tools/TRPreviewer.py	Sun Aug 29 20:44:20 2010 +0200
@@ -76,7 +76,7 @@
         self.languageLayout.addItem(languageSpacer)
         self.TRPreviewerLayout.addLayout(self.languageLayout)
 
-        self.preview = WidgetWorkspace(self.cw)
+        self.preview = WidgetArea(self.cw)
         self.preview.setObjectName("preview")
         self.TRPreviewerLayout.addWidget(self.preview)
         self.preview.lastWidgetClosed.connect(self.__updateActions)
@@ -213,7 +213,7 @@
                 """<b>Tile the windows</b>"""
                 """<p>Rearrange and resize the windows so that they are tiled.</p>"""
         ))
-        self.tileAct.triggered[()].connect(self.preview.tile)
+        self.tileAct.triggered[()].connect(self.preview.tileSubWindows)
         
         self.cascadeAct = QAction(self.trUtf8('&Cascade'), self)
         self.cascadeAct.setStatusTip(self.trUtf8('Cascade the windows'))
@@ -221,7 +221,7 @@
                 """<b>Cascade the windows</b>"""
                 """<p>Rearrange and resize the windows so that they are cascaded.</p>"""
         ))
-        self.cascadeAct.triggered[()].connect(self.preview.cascade)
+        self.cascadeAct.triggered[()].connect(self.preview.cascadeSubWindows)
         
         self.closeAct = QAction(UI.PixmapCache.getIcon("close.png"),
                             self.trUtf8('&Close'), self)
@@ -701,9 +701,9 @@
         """
         self.__timer.start(0)
 
-class WidgetWorkspace(QWorkspace):
+class WidgetArea(QMdiArea):
     """
-    Specialized workspace to show the loaded widgets.
+    Specialized MDI area to show the loaded widgets.
     
     @signal lastWidgetClosed() emitted after last widget was closed
     """
@@ -716,9 +716,10 @@
         
         @param parent parent widget (QWidget)
         """
-        QWorkspace.__init__(self, parent)
+        QMdiArea.__init__(self, parent)
         
-        self.setScrollBarsEnabled(True)
+        self.setHorizontalScrollBarPolicy(Qt.ScrollBarAsNeeded)
+        self.setVerticalScrollBarPolicy(Qt.ScrollBarAsNeeded)
         
         self.widgets = []
     
@@ -728,8 +729,8 @@
         
         @param uiFileName name of the UI file to load (string)
         """
-        widget = self.__findWidget(uiFileName)
-        if widget is None:
+        wview = self.__findWidget(uiFileName)
+        if wview is None:
             name = os.path.basename(uiFileName)
             if not name:
                 QMessageBox.warning(None,
@@ -754,8 +755,8 @@
             self.rebuildWidgets.connect(wview.buildWidget)
             wview.installEventFilter(self)
             
-            self.addWindow(wview)
-            self.widgets.append(wview)
+            win = self.addSubWindow(wview)
+            self.widgets.append(win)
         
         wview.showNormal()
     
@@ -804,7 +805,7 @@
         """
         Public slot to close the active window.
         """
-        aw = self.activeWindow()
+        aw = self.activeSubWindow()
         if aw is not None:
             aw.close()
     
@@ -836,7 +837,8 @@
         @param act reference to the action that triggered (QAction)
         """
         idx = act.data()
-        self.__toggleWidget(self.widgets[idx])
+        if idx is not None:
+            self.__toggleWidget(self.widgets[idx])
     
     def __toggleWidget(self, w):
         """

eric ide

mercurial