00001 /* AbiSource Application Framework 00002 * Copyright (C) 1998 AbiSource, Inc. 00003 * Copyright (C) 2004 Hubert Figuiere 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * as published by the Free Software Foundation; either version 2 00008 * of the License, or (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 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00018 * 02110-1301 USA. 00019 */ 00020 00021 #include "ut_types.h" 00022 #include "ut_vector.h" 00023 00024 #include "ev_EditEventMapper.h" 00025 00026 #ifndef XAP_INPUTMODES_H 00027 #define XAP_INPUTMODES_H 00028 00029 class ABI_EXPORT XAP_InputModes 00030 { 00031 public: 00032 XAP_InputModes(void); 00033 ~XAP_InputModes(void); 00034 00035 bool createInputMode(const char * szName, 00036 EV_EditBindingMap * pBindingMap); 00037 bool setCurrentMap(const char * szName); 00038 EV_EditEventMapper * getCurrentMap(void) const; 00039 const char * getCurrentMapName(void) const; 00040 EV_EditEventMapper * getMapByName(const char * szName) const; 00041 00042 protected: 00043 UT_GenericVector<EV_EditEventMapper *> m_vecEventMaps; /* EV_EditEventMapper * */ 00044 UT_GenericVector<char*> m_vecNames; /* const char * */ 00045 00046 UT_uint32 m_indexCurrentEventMap; 00047 }; 00048 00049 #endif // XAP_INPUTMODES_H 00050