languages/cpp/debugger/dbgtoolbar.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 begin : Thu Dec 23 1999 00003 copyright : (C) 1999 by John Birch 00004 email : jbb@kdevelop.org 00005 ***************************************************************************/ 00006 00007 /*************************************************************************** 00008 * * 00009 * This program is free software; you can redistribute it and/or modify * 00010 * it under the terms of the GNU General Public License as published by *q 00011 * the Free Software Foundation; either version 2 of the License, or * 00012 * (at your option) any later version. * 00013 * * 00014 ***************************************************************************/ 00015 00016 #ifndef _DBGTOOLBAR_H_ 00017 #define _DBGTOOLBAR_H_ 00018 00019 class KWinModule; 00020 00021 #include <ksystemtray.h> 00022 #include <kwin.h> // needed for WId :( 00023 00024 #include <qframe.h> 00025 00026 namespace GDBDebugger 00027 { 00028 00029 class DbgButton; 00030 class DbgToolBar; 00031 class DebuggerPart; 00032 00033 class DbgDocker : public KSystemTray 00034 { 00035 Q_OBJECT 00036 00037 public: 00038 DbgDocker(QWidget *parent, DbgToolBar *toolBar, const QPixmap &pixmap); 00039 virtual ~DbgDocker() {}; 00040 virtual void mousePressEvent(QMouseEvent *e); 00041 00042 signals: 00043 void clicked(); 00044 00045 private: 00046 DbgToolBar* toolBar_; 00047 }; 00048 00049 00050 class DbgToolBar : public QFrame 00051 { 00052 Q_OBJECT 00053 00054 public: 00055 DbgToolBar(DebuggerPart *part, QWidget* parent, const char* name=0); 00056 virtual ~DbgToolBar(); 00057 00058 private slots: 00059 void slotDbgStatus(const QString&, int); 00060 void slotDock(); 00061 void slotUndock(); 00062 void slotIconifyAndDock(); 00063 void slotActivateAndUndock(); 00064 00065 void slotKdevFocus(); 00066 void slotPrevFocus(); 00067 00068 private: 00069 void setAppIndicator(bool appIndicator); 00070 00071 DebuggerPart* part_; 00072 WId activeWindow_; 00073 KWinModule* winModule_; 00074 DbgButton* bKDevFocus_; 00075 DbgButton* bPrevFocus_; 00076 bool appIsActive_; 00077 bool docked_; 00078 DbgDocker* docker_; 00079 KSystemTray* dockWindow_; 00080 }; 00081 00082 } 00083 00084 #endif