libyui
|
00001 /************************************************************************** 00002 Copyright (C) 2000 - 2010 Novell, Inc. 00003 All Rights Reserved. 00004 00005 This program is free software; you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation; either version 2 of the License, or 00008 (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License along 00016 with this program; if not, write to the Free Software Foundation, Inc., 00017 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 00018 00019 **************************************************************************/ 00020 00021 00022 /*---------------------------------------------------------------------\ 00023 | | 00024 | __ __ ____ _____ ____ | 00025 | \ \ / /_ _/ ___|_ _|___ \ | 00026 | \ V / _` \___ \ | | __) | | 00027 | | | (_| |___) || | / __/ | 00028 | |_|\__,_|____/ |_| |_____| | 00029 | | 00030 | core system | 00031 | (C) SuSE GmbH | 00032 \----------------------------------------------------------------------/ 00033 00034 File: YMacro.h 00035 00036 Author: Stefan Hundhammer <sh@suse.de> 00037 00038 /-*/ 00039 00040 #ifndef YMacro_h 00041 #define YMacro_h 00042 00043 #include <string> 00044 00045 class YMacroRecorder; 00046 class YMacroPlayer; 00047 using std::string; 00048 00049 00060 class YMacro 00061 { 00062 private: 00063 YMacro() {} 00064 ~YMacro() {} 00065 00066 public: 00067 00074 static void setRecorder( YMacroRecorder * recorder ); 00075 00082 static void setPlayer( YMacroPlayer * player ); 00083 00087 static void record( const string & macroFile ); 00088 00092 static void endRecording(); 00093 00097 static bool recording(); 00098 00102 static void play( const string & macroFile ); 00103 00107 static void playNextBlock(); 00108 00112 static bool playing(); 00113 00117 static YMacroRecorder * recorder() { return _recorder; } 00118 00122 static YMacroPlayer * player() { return _player; } 00123 00127 static void deleteRecorder(); 00128 00132 static void deletePlayer(); 00133 00134 private: 00135 00136 static YMacroRecorder * _recorder; 00137 static YMacroPlayer * _player; 00138 }; 00139 00140 00141 00142 #endif // YMacro_h