arts Library API Documentation

knotify.h

00001 /* 00002 Copyright (c) 1997 Christian Esken (esken@kde.org) 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, or (at your option) 00007 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 Free Software 00016 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00017 00018 */ 00019 00020 #ifndef KNOTIFY_H 00021 #define KNOTIFY_H 00022 00023 #include <qobject.h> 00024 #include <knotifyclient.h> 00025 #include <dcopobject.h> 00026 #include <soundserver.h> 00027 00028 class KNotifyPrivate; 00029 class KProcess; 00030 00031 class KNotify : public QObject, public DCOPObject 00032 { 00033 Q_OBJECT 00034 K_DCOP 00035 00036 public: 00037 KNotify( bool useArts ); 00038 ~KNotify(); 00039 00040 enum PlayingFinishedStatus 00041 { 00042 PlayedOK = 0, // success, all following mean failure 00043 NoSoundFile, 00044 FileAlreadyPlaying, 00045 NoSoundSupport, 00046 PlayerBusy, 00047 Aborted, 00048 Unknown = 5000 00049 }; 00050 00051 protected: 00052 k_dcop: 00053 // deprecated 00054 void notify(const QString &event, const QString &fromApp, 00055 const QString &text, QString sound, QString file, 00056 int present, int level); 00057 00058 // deprecated 00059 void notify(const QString &event, const QString &fromApp, 00060 const QString &text, QString sound, QString file, 00061 int present, int level, int winId); 00062 00063 void notify(const QString &event, const QString &fromApp, 00064 const QString &text, QString sound, QString file, 00065 int present, int level, int winId, int eventId); 00066 00067 00068 void reconfigure(); 00069 void setVolume( int volume ); 00070 00071 private: 00072 bool notifyBySound(const QString &sound, const QString &appname, int eventId); 00073 bool notifyByMessagebox(const QString &text, int level, WId winId); 00074 bool notifyByLogfile(const QString &text, const QString &file); 00075 bool notifyByStderr(const QString &text); 00076 bool notifyByPassivePopup(const QString &text, const QString &appName, 00077 WId winId ); 00078 bool notifyByExecute(const QString &command, 00079 const QString& event, 00080 const QString& fromApp, 00081 const QString& text, 00082 int winId, 00083 int eventId ); 00084 bool notifyByTaskbar( WId winId ); 00085 00086 bool isPlaying( const QString& soundFile ) const; 00087 00088 void soundFinished( int eventId, PlayingFinishedStatus reason ); 00089 void abortFirstPlayObject(); 00090 00091 WId checkWinId( const QString& appName, WId senderWinId ); 00092 00096 bool isGlobal(const QString &eventname); 00097 00098 private slots: 00099 void playTimeout(); 00100 void slotPlayerProcessExited( KProcess *proc ); 00101 void restartedArtsd(); 00102 00103 private: 00104 KNotifyPrivate* d; 00105 void loadConfig(); 00106 }; 00107 00108 00109 #endif 00110
KDE Logo
This file is part of the documentation for arts Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Sep 29 09:41:20 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003