00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef SOUNDWIDGET_H
00025 #define SOUNDWIDGET_H
00026
00027 #include <kabc/sound.h>
00028
00029 #include "contacteditorwidget.h"
00030
00031 class KURLRequester;
00032
00033 class TQCheckBox;
00034 class TQPushButton;
00035
00036 class SoundWidget : public KAB::ContactEditorWidget
00037 {
00038 Q_OBJECT
00039 TQ_OBJECT
00040
00041 public:
00042 SoundWidget( KABC::AddressBook *ab, TQWidget *parent, const char *name = 0 );
00043 ~SoundWidget();
00044
00045 void loadContact( KABC::Addressee *addr );
00046 void storeContact( KABC::Addressee *addr );
00047 void setReadOnly( bool readOnly );
00048
00049 private slots:
00050 void playSound();
00051 void loadSound();
00052 void updateGUI();
00053 void urlChanged( const TQString& );
00054
00055 private:
00056 KURLRequester *mSoundUrl;
00057
00058 TQCheckBox *mUseSoundUrl;
00059 TQPushButton *mPlayButton;
00060
00061 KABC::Sound mSound;
00062 bool mReadOnly;
00063 };
00064
00065 class SoundWidgetFactory : public KAB::ContactEditorWidgetFactory
00066 {
00067 public:
00068 KAB::ContactEditorWidget *createWidget( KABC::AddressBook *ab, TQWidget *parent, const char *name )
00069 {
00070 return new SoundWidget( ab, parent, name );
00071 }
00072
00073 TQString pageIdentifier() const { return "misc"; }
00074 };
00075
00076 #endif