00001 /********************************************************************** 00002 ** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 00003 ** 00004 ** This file is part of the Qtopia Environment. 00005 ** 00006 ** This file may be distributed and/or modified under the terms of the 00007 ** GNU General Public License version 2 as published by the Free Software 00008 ** Foundation and appearing in the file LICENSE.GPL included in the 00009 ** packaging of this file. 00010 ** 00011 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00012 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00013 ** 00014 ** See http://www.trolltech.com/gpl/ for GPL licensing information. 00015 ** 00016 ** Contact info@trolltech.com if any conditions of this licensing are 00017 ** not clear to you. 00018 ** 00019 **********************************************************************/ 00020 00021 #ifndef TASKBAR_H 00022 #define TASKBAR_H 00023 00024 #include <qhbox.h> 00025 #include "serverinterface.h" 00026 #include "startmenu.h" 00027 00028 class QLabel; 00029 class QTimer; 00030 class InputMethods; 00031 class Wait; 00032 class SysTray; 00033 class RunningAppBar; 00034 class QWidgetStack; 00035 class QTimer; 00036 class QLabel; 00037 class LockKeyState; 00038 class AppLnkSet; 00039 00040 class TaskBar : public QHBox { 00041 Q_OBJECT 00042 public: 00043 TaskBar(); 00044 ~TaskBar(); 00045 00046 void launchStartMenu() { if (sm) sm->launch(); } 00047 void refreshStartMenu() { if (sm) sm->refreshMenu(); } 00048 void setApplicationState( const QString &name, ServerInterface::ApplicationState state ); 00049 00050 signals: 00051 void tabSelected(const QString&); 00052 00053 public slots: 00054 void startWait(); 00055 void stopWait(const QString&); 00056 void stopWait(); 00057 00058 void clearStatusBar(); 00059 void toggleNumLockState(); 00060 void toggleCapsLockState(); 00061 void toggleSymbolInput(); 00062 void calcMaxWindowRect(); 00063 00064 protected: 00065 void resizeEvent( QResizeEvent * ); 00066 void styleChange( QStyle & ); 00067 void setStatusMessage( const QString &text ); 00068 00069 private slots: 00070 void receive( const QCString &msg, const QByteArray &data ); 00071 00072 private: 00073 void readConfig(); 00074 00075 private: 00076 QTimer *waitTimer; 00077 Wait *waitIcon; 00078 InputMethods *inputMethods; 00079 SysTray *sysTray; 00080 RunningAppBar* runningAppBar; 00081 QWidgetStack *stack; 00082 QTimer *clearer; 00083 QLabel *label; 00084 LockKeyState* lockState; 00085 StartMenu *sm; 00086 bool resizeRunningApp; 00087 }; 00088 00089 00090 #endif // TASKBAR_H
1.4.2