From 71b24a42daccd45fe80b2a669c3a88cfc5dcf608 Mon Sep 17 00:00:00 2001 From: mickeyl Date: Fri, 16 Apr 2004 18:09:45 +0000 Subject: initial checkin of file and directory notifying classes this is work in progress. don't look to close yet --- (limited to 'libopie2/opiecore/ofilenotify.h') diff --git a/libopie2/opiecore/ofilenotify.h b/libopie2/opiecore/ofilenotify.h new file mode 100644 index 0000000..638eb6c --- a/dev/null +++ b/libopie2/opiecore/ofilenotify.h @@ -0,0 +1,72 @@ +/* +                This file is part of the Opie Project + =. Copyright (C) 2004 Michael 'Mickey' Lauer + .=l. Copyright (C) The Opie Team +          .>+-= +_;:,     .>    :=|. This program is free software; you can +.> <`_,   >  .   <= redistribute it and/or modify it under +:`=1 )Y*s>-.--   : the terms of the GNU Library General Public +.="- .-=="i,     .._ License as published by the Free Software +- .   .-<_>     .<> Foundation; either version 2 of the License, +    ._= =}       : or (at your option) any later version. +   .%`+i>       _;_. +   .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU +..}^=.=       =       ; Library General Public License for more +++=   -.     .`     .: details. +:     =  ...= . :.=- +-.   .:....=;==+<; You should have received a copy of the GNU + -_. . .   )=.  = Library General Public License along with +   --        :-=` this library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +*/ + +#ifndef OFILENOTIFY_H +#define OFILENOTIFY_H + +/* QT */ +#include +#include + +/* STD */ +#include +#include + +namespace Opie { +namespace Core { + +enum OFileNotificationType { Single = 0x0000000, + Multi = DN_MULTISHOT, + Access = DN_ACCESS, + Modify = DN_MODIFY, + Create = DN_CREATE, + Delete = DN_DELETE, + Rename = DN_RENAME, + Attrib = DN_ATTRIB }; + +class OFileNotifier : public QObject +{ + public: + static void singleShot( const QString& path, + QObject *receiver, const char *member, + OFileNotificationType type = Modify ); + protected: + static void registerSignalHandler(); + static void unregisterSignalHandler(); + static void __signalHandler( int sig, siginfo_t *si, void *data ); + + private: + OFileNotifier(); + ~OFileNotifier(); +}; + +} +} + +#endif + -- cgit v0.9.0.2