UtiLite
0.3.1
A lite utilities library
|
00001 /* 00002 * utilite is a cross-platform library with 00003 * useful utilities for fast and small developing. 00004 * Copyright (C) 2010 Mathieu Labbe 00005 * 00006 * utilite is free library: you can redistribute it and/or modify 00007 * it under the terms of the GNU Lesser General Public License as published by 00008 * the Free Software Foundation, either version 3 of the License, or 00009 * (at your option) any later version. 00010 * 00011 * utilite is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 * GNU Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public License 00017 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00018 */ 00019 00020 #ifndef UEVENTSHANDLER_H 00021 #define UEVENTSHANDLER_H 00022 00023 #include "utilite/UtiLiteExp.h" // DLL export/import defines 00024 00025 class UEvent; 00026 00127 class UTILITE_EXP UEventsHandler{ 00128 public: 00129 00130 00131 protected: 00136 friend class UEventsManager; 00137 00149 virtual void handleEvent(UEvent * event) = 0; 00150 00151 protected: 00163 UEventsHandler() {} 00164 00173 virtual ~UEventsHandler(); 00174 00178 void post(UEvent * event, bool async = true); 00179 00180 private: 00181 00182 }; 00183 00184 #endif // UEVENTSHANDLER_H