kclipboard.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 #ifndef KCLIPBOARD_H
00020 #define KCLIPBOARD_H
00021 
00022 #include <qclipboard.h>
00023 #include <qmime.h>
00024 #include <qobject.h>
00025 #include <qstrlist.h>
00026 
00034 class KClipboardSynchronizer : public QObject
00035 {
00036     Q_OBJECT
00037 
00038 public:
00039     friend class KlipperWidget;
00040     friend class KApplication;
00041 
00046     static KClipboardSynchronizer *self();
00047 
00055     static void setSynchronizing( bool sync );
00056 
00063     static bool isSynchronizing()
00064     {
00065         return s_sync;
00066     }
00067 
00077     static void setReverseSynchronizing( bool enable );
00078 
00086     static bool isReverseSynchronizing()
00087     {
00088         return s_reverse_sync;
00089     }
00090 
00091 
00092 protected:
00093     ~KClipboardSynchronizer();
00094 
00095 private slots:
00096     void slotSelectionChanged();
00097     void slotClipboardChanged();
00098 
00099 private:
00100     KClipboardSynchronizer( QObject *parent = 0, const char *name = 0L );
00101     void setupSignals();
00102 
00103     static void setClipboard( QMimeSource* data, QClipboard::Mode mode );
00104 
00105     static KClipboardSynchronizer *s_self;
00106     static bool s_sync;
00107     static bool s_reverse_sync;
00108     static bool s_blocked;
00109 
00110     class MimeSource;
00111 
00112 private:
00113     
00114     enum Configuration { Synchronize = 1 };
00115     
00116     static void newConfiguration( int config );
00117 
00118 };
00119 
00120 #endif // KCLIPBOARD_H
 
This file is part of the documentation for kdecore Library Version 3.2.0.