summaryrefslogtreecommitdiffstats
path: root/kooka/dwmenuaction.cpp
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit47d455dd55be855e4cc691c32f687f723d9247ee (patch)
tree52e236aaa2576bdb3840ebede26619692fed6d7d /kooka/dwmenuaction.cpp
downloadtdegraphics-47d455dd55be855e4cc691c32f687f723d9247ee.tar.gz
tdegraphics-47d455dd55be855e4cc691c32f687f723d9247ee.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdegraphics@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kooka/dwmenuaction.cpp')
-rw-r--r--kooka/dwmenuaction.cpp72
1 files changed, 72 insertions, 0 deletions
diff --git a/kooka/dwmenuaction.cpp b/kooka/dwmenuaction.cpp
new file mode 100644
index 00000000..abe57f23
--- /dev/null
+++ b/kooka/dwmenuaction.cpp
@@ -0,0 +1,72 @@
+/***************************************************************************
+ dwmenuaction.cpp - dockwidget visibility switches to actions
+ -------------------
+ begin : 16.07.2002
+ copyright : (C) 1999 by Klaas Freitag
+ email : freitag@suse.de
+
+ $Id$
+ Based on code from the from Joseph Wenninger (kate project)
+***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This file may be distributed and/or modified under the terms of the *
+ * GNU General Public License version 2 as published by the Free Software *
+ * Foundation and appearing in the file COPYING included in the *
+ * packaging of this file. *
+ *
+ * As a special exception, permission is given to link this program *
+ * with any version of the KADMOS ocr/icr engine of reRecognition GmbH, *
+ * Kreuzlingen and distribute the resulting executable without *
+ * including the source code for KADMOS in the source distribution. *
+ *
+ * As a special exception, permission is given to link this program *
+ * with any edition of Qt, and distribute the resulting executable, *
+ * without including the source code for Qt in the source distribution. *
+ * *
+ ***************************************************************************/
+
+#include "dwmenuaction.h"
+#include "dwmenuaction.moc"
+//-------------------------------------
+
+dwMenuAction::dwMenuAction( const QString& text, const KShortcut& cut,
+ KDockWidget *dw,QObject* parent,
+ KDockMainWindow *mw, const char* name )
+ :KToggleAction(text,cut,parent,name),m_dw(dw),m_mw(mw)
+{
+ connect(this,SIGNAL(toggled(bool)),this,SLOT(slotToggled(bool)));
+ connect(m_dw->dockManager(),SIGNAL(change()),this,SLOT(anDWChanged()));
+ connect(m_dw,SIGNAL(destroyed()),this,SLOT(slotWidgetDestroyed()));
+ setChecked(m_dw->mayBeHide());
+}
+
+
+dwMenuAction::~dwMenuAction(){;}
+
+void dwMenuAction::anDWChanged()
+{
+ if (isChecked() && m_dw->mayBeShow()) setChecked(false);
+ else if ((!isChecked()) && m_dw->mayBeHide()) setChecked(true);
+}
+
+
+void dwMenuAction::slotToggled(bool t)
+{
+
+ if ((!t) && m_dw->mayBeHide() ) m_dw->undock();
+ else
+ if ( t && m_dw->mayBeShow() ) m_mw->makeDockVisible(m_dw);
+
+}
+
+
+void dwMenuAction::slotWidgetDestroyed()
+{
+ unplugAll();
+ deleteLater();
+}
+
+
+/* END */