summaryrefslogtreecommitdiff
path: root/muse2/muse/cobject.cpp
diff options
context:
space:
mode:
authorFlorian Jung <flo@windfisch.org>2011-08-10 17:53:12 +0000
committerFlorian Jung <flo@windfisch.org>2011-08-10 17:53:12 +0000
commit55d5f2d38bfe7c9673a315bb5597c20675bfde99 (patch)
tree52d8b082cfe10aaa58d893bd32c823267e049818 /muse2/muse/cobject.cpp
parentbefca1aa676e5ee010525cc1af70051ec4c04722 (diff)
THIS IS JUST A PROOF OF CONCEPT
arranger is now a MdiSubWin
Diffstat (limited to 'muse2/muse/cobject.cpp')
-rw-r--r--muse2/muse/cobject.cpp60
1 files changed, 60 insertions, 0 deletions
diff --git a/muse2/muse/cobject.cpp b/muse2/muse/cobject.cpp
index 22f675a3..d486abf0 100644
--- a/muse2/muse/cobject.cpp
+++ b/muse2/muse/cobject.cpp
@@ -10,6 +10,8 @@
#include "xml.h"
#include "gui.h"
+#include <QMdiSubWindow>
+
//---------------------------------------------------------
// readStatus
//---------------------------------------------------------
@@ -71,5 +73,63 @@ TopWin::TopWin(QWidget* parent, const char* name,
// Allow multiple rows. Tim.
//setDockNestingEnabled(true);
setIconSize(ICON_SIZE);
+
+ mdisubwin=NULL;
}
+void TopWin::hide()
+{
+ printf("HIDE SLOT: mdisubwin is %p\n",mdisubwin); //FINDMICH
+ if (mdisubwin)
+ mdisubwin->close();
+
+ QMainWindow::hide();
+}
+
+void TopWin::show()
+{
+ printf("SHOW SLOT: mdisubwin is %p\n",mdisubwin); //FINDMICH
+ if (mdisubwin)
+ mdisubwin->show();
+
+ QMainWindow::show();
+}
+
+void TopWin::setVisible(bool param)
+{
+ printf("SETVISIBLE SLOT (%i): mdisubwin is %p\n",(int)param, mdisubwin); //FINDMICH
+ if (mdisubwin)
+ {
+ if (param)
+ mdisubwin->show();
+ else
+ mdisubwin->close();
+ }
+ QMainWindow::setVisible(param);
+}
+
+QMdiSubWindow* TopWin::createMdiWrapper()
+{
+ if (mdisubwin==NULL)
+ {
+ mdisubwin = new QMdiSubWindow();
+ mdisubwin->setWidget(this);
+ }
+
+ return mdisubwin;
+}
+
+void TopWin::setFree()
+{
+ if (mdisubwin)
+ {
+ setParent(0);
+ mdisubwin->hide();
+ delete mdisubwin;
+ }
+}
+
+bool TopWin::isMdiWin()
+{
+ return (mdisubwin!=NULL);
+}