• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

libtaskmanager

taskactions.h

Go to the documentation of this file.
00001 /*****************************************************************
00002 
00003 Copyright 2008 Christian Mollekopf <chrigi_1@hotmail.com>
00004 
00005 Permission is hereby granted, free of charge, to any person obtaining a copy
00006 of this software and associated documentation files (the "Software"), to deal
00007 in the Software without restriction, including without limitation the rights
00008 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
00009 copies of the Software, and to permit persons to whom the Software is
00010 furnished to do so, subject to the following conditions:
00011 
00012 The above copyright notice and this permission notice shall be included in
00013 all copies or substantial portions of the Software.
00014 
00015 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
00016 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00017 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
00018 AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
00019 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00020 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00021 
00022 ******************************************************************/
00023 
00024 #ifndef TASKACTIONS_H
00025 #define TASKACTIONS_H
00026 
00027 // Qt
00028 #include <QtGui/QMenu>
00029 #include <QtGui/QAction>
00030 
00031 // Own
00032 #include <taskmanager/groupmanager.h>
00033 #include <taskmanager/task.h>
00034 #include <taskmanager/taskgroup.h>
00035 #include <taskmanager/taskitem.h>
00036 #include <taskmanager/taskmanager_export.h>
00037 
00038 namespace TaskManager
00039 {
00040 
00041 enum GroupableAction { MaximizeAction = 0,
00042                        MinimizeAction,
00043                        ToCurrentDesktopAction,
00044                        ToDesktopAction,
00045                        ShadeAction,
00046                        CloseAction,
00047                        ViewFullscreenAction,
00048                        KeepBelowAction
00049                     };
00050 
00051 enum TaskAction { ResizeAction = 0,
00052                   MoveAction
00053                  };
00054 
00055 enum GroupingAction { LeaveGroupAction = 0
00056                       };
00057 
00066 QAction *standardGroupableAction(GroupableAction action, AbstractItemPtr item, QObject *parent = 0, int desktop = 0);
00067 
00075 QAction *standardTaskAction(TaskAction action, TaskItem *task, QObject *parent = 0);
00076 
00085 QAction* standardGroupingAction(GroupingAction action, AbstractItemPtr item,
00086                                 GroupManager *strategy, QObject *parent = 0);
00087 
00089 class TASKMANAGER_EXPORT DesktopsMenu : public QMenu
00090 {
00091     Q_OBJECT
00092 public:
00093     DesktopsMenu(QWidget *parent, AbstractItemPtr task);
00094 };
00095 
00097 class TASKMANAGER_EXPORT GroupingStrategyMenu : public QMenu
00098 {
00099     Q_OBJECT
00100 public:
00101     GroupingStrategyMenu(QWidget *parent, AbstractGroupableItem *task, GroupManager *strategy);
00102 };
00103 
00105 class TASKMANAGER_EXPORT AdvancedMenu : public QMenu
00106 {
00107     Q_OBJECT
00108 public:
00109     AdvancedMenu(QWidget *parent, AbstractItemPtr task);
00110 };
00111 
00113 class TASKMANAGER_EXPORT BasicMenu : public QMenu
00114 {
00115     Q_OBJECT
00116 public:
00117     BasicMenu(QWidget *parent, GroupPtr task, GroupManager *strategy, QList <QAction*> visualizationActions = QList <QAction*>());
00118     BasicMenu(QWidget *parent, TaskItem* task, GroupManager *strategy, QList <QAction*> visualizationActions = QList <QAction*>());
00119 };
00120 
00122 class TASKMANAGER_EXPORT GroupPopupMenu : public QMenu
00123 {
00124     Q_OBJECT
00125 public:
00126     GroupPopupMenu(QWidget *parent, GroupPtr task, GroupManager *strategy);
00127 };
00128 
00129 
00130 } // TaskManager namespace
00131 
00132 
00133 #endif

libtaskmanager

Skip menu "libtaskmanager"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • KWin
  •   KWin Libraries
  • Libraries
  •   libkworkspace
  •   libsolidcontrol
  •   libtaskmanager
  • Plasma
  •   Animators
  •   Applets
  •   Engines
  • Solid Modules
Generated for API Reference by doxygen 1.5.7
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal