kwin Library API Documentation

notifications.cpp

00001 /*****************************************************************
00002  KWin - the KDE window manager
00003  This file is part of the KDE project.
00004 
00005 Copyright (C) 1999, 2000 Matthias Ettrich <ettrich@kde.org>
00006 Copyright (C) 2003 Lubos Lunak <l.lunak@kde.org>
00007 
00008 You can Freely distribute this program under the GNU General Public
00009 License. See the file "COPYING" for the exact licensing terms.
00010 ******************************************************************/
00011 
00012 #include "notifications.h"
00013 #include <knotifyclient.h>
00014 
00015 namespace KWinInternal
00016 {
00017 
00018 void Notify::raise( Event e )
00019     {
00020     static bool forgetIt = FALSE;
00021     if ( forgetIt )
00022         return; // no connection was possible, don't try each time
00023 
00024     QString event;
00025     switch ( e ) 
00026         {
00027         case Activate:
00028             event = "activate";
00029             break;
00030         case Close:
00031             event = "close";
00032             break;
00033         case Minimize:
00034             event = "minimize";
00035             break;
00036         case UnMinimize:
00037             event = "unminimize";
00038             break;
00039         case Maximize:
00040             event = "maximize";
00041             break;
00042         case UnMaximize:
00043             event = "unmaximize";
00044             break;
00045         case OnAllDesktops:
00046             event = "on_all_desktops";
00047             break;
00048         case NotOnAllDesktops:
00049             event = "not_on_all_desktops";
00050             break;
00051         case New:
00052             event = "new";
00053             break;
00054         case Delete:
00055             event = "delete";
00056             break;
00057         case TransNew:
00058             event = "transnew";
00059             break;
00060         case TransDelete:
00061             event = "transdelete";
00062             break;
00063         case ShadeUp:
00064             event = "shadeup";
00065             break;
00066         case ShadeDown:
00067             event = "shadedown";
00068             break;
00069         case MoveStart:
00070             event = "movestart";
00071             break;
00072         case MoveEnd:
00073             event = "moveend";
00074             break;
00075         case ResizeStart:
00076             event = "resizestart";
00077             break;
00078         case ResizeEnd:
00079             event = "resizeend";
00080             break;
00081         default:
00082             if ((e > DesktopChange) && (e <= DesktopChange+16))
00083             {
00084             event = QString("desktop%1").arg(e-DesktopChange);
00085             }
00086         break;
00087         }
00088 
00089     if ( !event )
00090         return;
00091 
00092     forgetIt= !KNotifyClient::event( 0, event, event );
00093     }
00094 
00095 } // namespace
KDE Logo
This file is part of the documentation for kwin Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sun Aug 20 13:39:13 2006 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003