summaryrefslogtreecommitdiff
path: root/libopie2/opiecore/ofilenotify.h
Side-by-side diff
Diffstat (limited to 'libopie2/opiecore/ofilenotify.h') (more/less context) (show whitespace changes)
-rw-r--r--libopie2/opiecore/ofilenotify.h42
1 files changed, 39 insertions, 3 deletions
diff --git a/libopie2/opiecore/ofilenotify.h b/libopie2/opiecore/ofilenotify.h
index ea525e9..41ba84d 100644
--- a/libopie2/opiecore/ofilenotify.h
+++ b/libopie2/opiecore/ofilenotify.h
@@ -100,3 +100,3 @@ enum OFileNotificationType
* This class allows to watch for events happening to files.
- * It uses the inotify kernel interface
+ * It uses the inotify linux (2.6.x) kernel interface.
*
@@ -142,3 +142,3 @@ class OFileNotification : public QObject
**/
- static void singleShot( const QString& path, QObject* receiver, const char* member, OFileNotificationType type = Modify );
+ static bool singleShot( const QString& path, QObject* receiver, const char* member, OFileNotificationType type = Modify );
/**
@@ -164,2 +164,6 @@ class OFileNotification : public QObject
bool isActive() const;
+ /**
+ * @internal
+ */
+ int startWatching( const QString& path, bool sshot = false, OFileNotificationType type = Modify );
@@ -169,3 +173,3 @@ class OFileNotification : public QObject
**/
- void triggered();
+ void triggered( const QString& name );
@@ -191,2 +195,34 @@ class OFileNotification : public QObject
+/*======================================================================================
+ * ODirNotification
+ *======================================================================================*/
+
+/**
+ * @brief Represents a directory notification
+ *
+ * This class allows to watch for events happening to directories
+ * It uses the OFileNotification class
+ *
+ * @see http://www.kernel.org/pub/linux/kernel/people/rml/inotify/
+ *
+ * @author Michael 'Mickey' Lauer <mickey@vanille.de>
+ *
+ **/
+
+class ODirNotification : public QObject
+{
+ Q_OBJECT
+
+ public:
+ ODirNotification( QObject* parent = 0, const char* name = 0 );
+ ~ODirNotification();
+ /**
+ * Starts to watch for @a type changes to @a path. Recurse @a recurse levels down the filesystem tree,
+ * use 0 for no recursion and -1 for unlimited recursion.
+ * Set @a sshot to True if you want to be notified only once.
+ **/
+ int watch( const QString& path, bool sshot = false, OFileNotificationType type = Modify, int recurse = 0 );
+};
+
+
}