Applets
tasksmenu.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 * Copyright (C) 2008 Marco Martin <notmart@gmail.com> * 00003 * * 00004 * This program is free software; you can redistribute it and/or modify * 00005 * it under the terms of the GNU General Public License as published by * 00006 * the Free Software Foundation; either version 2 of the License, or * 00007 * (at your option) any later version. * 00008 * * 00009 * This program is distributed in the hope that it will be useful, * 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 00012 * GNU General Public License for more details. * 00013 * * 00014 * You should have received a copy of the GNU General Public License * 00015 * along with this program; if not, write to the * 00016 * Free Software Foundation, Inc., * 00017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . * 00018 ***************************************************************************/ 00019 00020 00021 #ifndef TASKSMENU_H 00022 #define TASKSMENU_H 00023 00024 00025 #include <taskmanager/taskactions.h> 00026 00027 namespace Plasma 00028 { 00029 class Applet; 00030 class FrameSvg; 00031 } 00032 00033 class QTimer; 00034 class Tasks; 00035 00036 namespace TaskManager 00037 { 00038 00042 class TasksMenu : public GroupPopupMenu 00043 { 00044 Q_OBJECT 00045 00046 public: 00047 TasksMenu(QWidget *parent, TaskGroup *group, GroupManager *groupManager, Tasks *applet); 00048 00049 ~TasksMenu(); 00050 00051 protected: 00052 void paintEvent(QPaintEvent *event); 00053 void resizeEvent(QResizeEvent *event); 00054 void dragEnterEvent(QDragEnterEvent *event); 00055 void dragMoveEvent(QDragMoveEvent *event); 00056 void dragLeaveEvent(QDragLeaveEvent *event); 00057 void dropEvent(QDropEvent *event); 00058 00059 protected Q_SLOTS: 00060 void activate(); 00061 00062 private: 00063 QTimer *m_activateTimer; 00064 QAction *m_lasttriggeredAction; 00065 Plasma::FrameSvg *m_background; 00066 Tasks *m_applet; 00067 QPoint m_lastMousePos; 00068 }; 00069 } 00070 00071 #endif