summaryrefslogtreecommitdiffstats
path: root/kicker/taskmanager/taskrmbmenu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kicker/taskmanager/taskrmbmenu.cpp')
-rw-r--r--kicker/taskmanager/taskrmbmenu.cpp81
1 files changed, 58 insertions, 23 deletions
diff --git a/kicker/taskmanager/taskrmbmenu.cpp b/kicker/taskmanager/taskrmbmenu.cpp
index cdc6e4532..31c48d61c 100644
--- a/kicker/taskmanager/taskrmbmenu.cpp
+++ b/kicker/taskmanager/taskrmbmenu.cpp
@@ -24,6 +24,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <assert.h>
+#include <tdeglobal.h>
#include <kiconloader.h>
#include <tdelocale.h>
@@ -44,6 +45,8 @@ TaskRMBMenu::TaskRMBMenu(const Task::List& theTasks, bool show, TQPopupMenu* mov
, showAll( show )
, taskMoveMenu( moveMenu )
{
+ TDEGlobal::iconLoader()->addAppDir("twin");
+
assert(tasks.count() > 0);
if (tasks.count() == 1)
{
@@ -68,9 +71,14 @@ void TaskRMBMenu::fillMenu(Task::Ptr t)
int id;
setCheckable(true);
- insertItem(i18n("Ad&vanced"), makeAdvancedMenu(t));
bool checkActions = KWin::allowedActionsSupported();
+ insertItem(i18n("Ad&vanced"), makeAdvancedMenu(t));
+
+ id = insertItem(i18n("T&ile"), makeTileMenu(t));
+ setItemEnabled(id, !checkActions ||
+ (t->info().actionSupported(NET::ActionMove) && t->info().actionSupported(NET::ActionResize)));
+
if (TaskManager::the()->numberOfDesktops() > 1)
{
id = insertItem(i18n("To &Desktop"), makeDesktopsMenu(t));
@@ -78,7 +86,7 @@ void TaskRMBMenu::fillMenu(Task::Ptr t)
if (showAll)
{
id = insertItem(i18n("&To Current Desktop"),
- t, TQT_SLOT(toCurrentDesktop()));
+ t, TQ_SLOT(toCurrentDesktop()));
setItemEnabled( id, !t->isOnCurrentDesktop() );
}
@@ -88,34 +96,34 @@ void TaskRMBMenu::fillMenu(Task::Ptr t)
}
}
- id = insertItem(SmallIconSet("move"), i18n("&Move"), t, TQT_SLOT(move()));
+ id = insertItem(SmallIconSet("move"), i18n("&Move"), t, TQ_SLOT(move()));
setItemEnabled(id, !checkActions || t->info().actionSupported(NET::ActionMove));
- id = insertItem(i18n("Re&size"), t, TQT_SLOT(resize()));
+ id = insertItem(i18n("Re&size"), t, TQ_SLOT(resize()));
setItemEnabled(id, !checkActions || t->info().actionSupported(NET::ActionResize));
- id = insertItem(i18n("Mi&nimize"), t, TQT_SLOT(toggleIconified()));
+ id = insertItem(i18n("Mi&nimize"), t, TQ_SLOT(toggleIconified()));
setItemChecked(id, t->isIconified());
setItemEnabled(id, !checkActions || t->info().actionSupported(NET::ActionMinimize));
- id = insertItem(i18n("Ma&ximize"), t, TQT_SLOT(toggleMaximized()));
+ id = insertItem(i18n("Ma&ximize"), t, TQ_SLOT(toggleMaximized()));
setItemChecked(id, t->isMaximized());
setItemEnabled(id, !checkActions || t->info().actionSupported(NET::ActionMax));
- id = insertItem(i18n("&Shade"), t, TQT_SLOT(toggleShaded()));
+ id = insertItem(i18n("&Shade"), t, TQ_SLOT(toggleShaded()));
setItemChecked(id, t->isShaded());
setItemEnabled(id, !checkActions || t->info().actionSupported(NET::ActionShade));
insertSeparator();
if (taskMoveMenu) {
- taskMoveMenu->reparent(this, taskMoveMenu->getWFlags(), taskMoveMenu->geometry().topLeft(), FALSE);
+ taskMoveMenu->reparent(this, taskMoveMenu->getWFlags(), taskMoveMenu->geometry().topLeft(), false);
insertItem(i18n("Move Task Button"), taskMoveMenu);
insertSeparator();
}
- id = insertItem(SmallIcon("window-close"), i18n("&Close"), t, TQT_SLOT(close()));
+ id = insertItem(SmallIcon("window-close"), i18n("&Close"), t, TQ_SLOT(close()));
setItemEnabled(id, !checkActions || t->info().actionSupported(NET::ActionClose));
}
@@ -133,7 +141,7 @@ void TaskRMBMenu::fillMenu()
t->visibleNameWithState(),
new TaskRMBMenu(t, this) );
setItemChecked( id, t->isActive() );
- connectItem( id, t, TQT_SLOT( activateRaiseOrIconify() ) );
+ connectItem( id, t, TQ_SLOT( activateRaiseOrIconify() ) );
}
insertSeparator();
@@ -144,7 +152,7 @@ void TaskRMBMenu::fillMenu()
{
id = insertItem(i18n("All to &Desktop"), makeDesktopsMenu());
- id = insertItem(i18n("All &to Current Desktop"), this, TQT_SLOT(slotAllToCurrentDesktop()));
+ id = insertItem(i18n("All &to Current Desktop"), this, TQ_SLOT(slotAllToCurrentDesktop()));
Task::List::iterator itEnd = tasks.end();
for (Task::List::iterator it = tasks.begin(); it != itEnd; ++it)
{
@@ -159,7 +167,7 @@ void TaskRMBMenu::fillMenu()
enable = false;
- id = insertItem( i18n( "Mi&nimize All" ), this, TQT_SLOT( slotMinimizeAll() ) );
+ id = insertItem( i18n( "Mi&nimize All" ), this, TQ_SLOT( slotMinimizeAll() ) );
itEnd = tasks.end();
for (Task::List::iterator it = tasks.begin(); it != itEnd; ++it)
{
@@ -172,7 +180,7 @@ void TaskRMBMenu::fillMenu()
enable = false;
- id = insertItem( i18n( "Ma&ximize All" ), this, TQT_SLOT( slotMaximizeAll() ) );
+ id = insertItem( i18n( "Ma&ximize All" ), this, TQ_SLOT( slotMaximizeAll() ) );
itEnd = tasks.end();
for (Task::List::iterator it = tasks.begin(); it != itEnd; ++it)
{
@@ -185,7 +193,7 @@ void TaskRMBMenu::fillMenu()
enable = false;
- id = insertItem( i18n( "&Restore All" ), this, TQT_SLOT( slotRestoreAll() ) );
+ id = insertItem( i18n( "&Restore All" ), this, TQ_SLOT( slotRestoreAll() ) );
itEnd = tasks.end();
for (Task::List::iterator it = tasks.begin(); it != itEnd; ++it)
{
@@ -201,13 +209,13 @@ void TaskRMBMenu::fillMenu()
enable = false;
if (taskMoveMenu) {
- taskMoveMenu->reparent(this, taskMoveMenu->getWFlags(), taskMoveMenu->geometry().topLeft(), FALSE);
+ taskMoveMenu->reparent(this, taskMoveMenu->getWFlags(), taskMoveMenu->geometry().topLeft(), false);
insertItem(i18n("Move Task Button"), taskMoveMenu);
insertSeparator();
}
- insertItem( SmallIcon( "window-close" ), i18n( "&Close All" ), this, TQT_SLOT( slotCloseAll() ) );
+ insertItem( SmallIcon( "window-close" ), i18n( "&Close All" ), this, TQ_SLOT( slotCloseAll() ) );
}
TQPopupMenu* TaskRMBMenu::makeAdvancedMenu(Task::Ptr t)
@@ -219,17 +227,17 @@ TQPopupMenu* TaskRMBMenu::makeAdvancedMenu(Task::Ptr t)
id = menu->insertItem(SmallIconSet("go-up"),
i18n("Keep &Above Others"),
- t, TQT_SLOT(toggleAlwaysOnTop()));
+ t, TQ_SLOT(toggleAlwaysOnTop()));
menu->setItemChecked(id, t->isAlwaysOnTop());
id = menu->insertItem(SmallIconSet("go-down"),
i18n("Keep &Below Others"),
- t, TQT_SLOT(toggleKeptBelowOthers()));
+ t, TQ_SLOT(toggleKeptBelowOthers()));
menu->setItemChecked(id, t->isKeptBelowOthers());
id = menu->insertItem(SmallIconSet("view-fullscreen"),
i18n("&Fullscreen"),
- t, TQT_SLOT(toggleFullScreen()));
+ t, TQ_SLOT(toggleFullScreen()));
menu->setItemChecked(id, t->isFullScreen());
if (KWin::allowedActionsSupported())
@@ -245,7 +253,7 @@ TQPopupMenu* TaskRMBMenu::makeDesktopsMenu(Task::Ptr t)
TQPopupMenu* m = new TQPopupMenu( this );
m->setCheckable( true );
- int id = m->insertItem( i18n("&All Desktops"), t, TQT_SLOT( toDesktop(int) ) );
+ int id = m->insertItem( i18n("&All Desktops"), t, TQ_SLOT( toDesktop(int) ) );
m->setItemParameter( id, 0 ); // 0 means all desktops
m->setItemChecked( id, t->isOnAllDesktops() );
@@ -253,7 +261,7 @@ TQPopupMenu* TaskRMBMenu::makeDesktopsMenu(Task::Ptr t)
for (int i = 1; i <= TaskManager::the()->numberOfDesktops(); i++) {
TQString name = TQString("&%1 %2").arg(i).arg(TaskManager::the()->desktopName(i).replace('&', "&&"));
- id = m->insertItem( name, t, TQT_SLOT( toDesktop(int) ) );
+ id = m->insertItem( name, t, TQ_SLOT( toDesktop(int) ) );
m->setItemParameter( id, i );
m->setItemChecked( id, !t->isOnAllDesktops() && t->desktop() == i );
}
@@ -266,20 +274,47 @@ TQPopupMenu* TaskRMBMenu::makeDesktopsMenu()
TQPopupMenu* m = new TQPopupMenu( this );
m->setCheckable( true );
- int id = m->insertItem( i18n("&All Desktops"), this, TQT_SLOT( slotAllToDesktop(int) ) );
+ int id = m->insertItem( i18n("&All Desktops"), this, TQ_SLOT( slotAllToDesktop(int) ) );
m->setItemParameter( id, 0 ); // 0 means all desktops
m->insertSeparator();
for (int i = 1; i <= TaskManager::the()->numberOfDesktops(); i++) {
TQString name = TQString("&%1 %2").arg(i).arg(TaskManager::the()->desktopName(i).replace('&', "&&"));
- id = m->insertItem( name, this, TQT_SLOT( slotAllToDesktop(int) ) );
+ id = m->insertItem( name, this, TQ_SLOT( slotAllToDesktop(int) ) );
m->setItemParameter( id, i );
}
return m;
}
+TQPopupMenu* TaskRMBMenu::makeTileMenu(Task::Ptr t)
+{
+ TQPopupMenu *m = new TQPopupMenu( this );
+
+ // Tile to side (the menu id matched the ActiveBorder index used for tiling)
+ int id = m->insertItem( UserIconSet("tile_left"), i18n("&Left"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 6 );
+ id = m->insertItem( UserIconSet("tile_right"), i18n("&Right"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 2 );
+ id = m->insertItem( UserIconSet("tile_top"), i18n("&Top"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 0 );
+ id = m->insertItem( UserIconSet("tile_bottom"), i18n("&Bottom"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 4 );
+
+ // Tile to corner (the menu id matched the ActiveBorder index used for tiling)
+ id = m->insertItem( UserIconSet("tile_topleft"), i18n("Top &Left"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 7 );
+ id = m->insertItem( UserIconSet("tile_topright"), i18n("Top &Right"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 1 );
+ id = m->insertItem( UserIconSet("tile_bottomleft"), i18n("Bottom L&eft"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 5 );
+ id = m->insertItem( UserIconSet("tile_bottomright"), i18n("&Bottom R&ight"), t, TQ_SLOT( tileTo(int) ) );
+ m->setItemParameter( id, 3 );
+
+ return m;
+}
+
void TaskRMBMenu::slotMinimizeAll()
{
Task::List::iterator itEnd = tasks.end();