HonokaKeyEventListとPreEditorKeyEventListを統合。
1 parent accdb26 commit d5705ed97ee8098031066790401d84b0e84a9645
@tamra tamra authored on 13 May 2005
Showing 8 changed files
View
6
honoka/src/Makefile.am
-DHONOKA_ICON_FILE=\"@SCIM_ICONDIR@/honoka.png\" \
-DHONOKA_PLUGINDIR=\"@SCIM_MODULEDIR@/honoka\"
 
noinst_HEADERS = honoka_imengine.h wnnproto.h romkan.h romkan_table.h \
wnnconversion.h honoka_def.h kanainput.h anthyconversion.h
wnnconversion.h honoka_def.h kanainput.h anthyconversion.h honokakeyeventlist.h
 
moduledir = @SCIM_MODULEDIR@/IMEngine
module_LTLIBRARIES = honoka.la
 
libhonokaincludedir = $(includedir)/honoka
libhonokainclude_HEADERS = convertor.h preeditor.h honokapluginbase.h
 
lib_LTLIBRARIES = libhonoka_plugin.la
libhonoka_plugin_la_SOURCES = convertor.cpp honokapluginbase.cpp preeditor.cpp
libhonoka_plugin_la_SOURCES = convertor.cpp honokapluginbase.cpp preeditor.cpp \
honokakeyeventlist.cpp
libhonoka_plugin_la_CFLAGS = @SCIM_CFLAGS@ @SCIM_DEBUG_FLAGS@
libhonoka_plugin_la_CXXFLAGS = @SCIM_CFLAGS@ @SCIM_DEBUG_FLAGS@
libhonoka_plugin_la_LDFLAGS = @LIBTOOL_EXPORT_OPTIONS@ @INTLLIBS@ @SCIM_LIBS@
 
View
27
honoka/src/honoka_imengine.cpp
}
 
 
 
// キーイベントチェック
 
void HonokaKeyEventList::append(const KeyEvent &k) {
push_back(k);
}
 
void HonokaKeyEventList::append(int code,int mask) {
KeyEvent k;
k.code = code;
k.mask = mask;
append(k);
}
 
bool HonokaKeyEventList::comp(const KeyEvent &k) {
int kc = k.get_ascii_code();
if ((kc > 0x60) && (kc < 0x7b)) kc -= 0x20;
else if ((kc > 0x40) && (kc < 0x5b)) kc += 0x20;
for (unsigned int i = 0;i < size();i ++) {
if ((at(i).code == k.code) && (at(i).mask == k.mask)) {
return true;
}
if (kc && (at(i).code == kc) && (at(i).mask == k.mask)) {
return true;
}
}
return false;
}
 
 
// 現物。
 
View
10
honoka/src/honoka_imengine.h
#include <stack>
#include <map>
#include <convertor.h>
#include <preeditor.h>
#include <honokakeyeventlist.h>
#define Uses_SCIM_ICONV
#include <scim.h>
#include <scim_iconv.h>
 
virtual String get_icon_file () const;
virtual IMEngineInstancePointer create_instance (const String& encoding, int id = -1);
protected:
 
};
 
class HonokaKeyEventList : public KeyEventList
{
// リストにキーイベントを追加して、comp(KeyEvent)で判別。
public:
void append(const KeyEvent &k);
void append(int code,int mask);
bool comp(const KeyEvent &k);
};
 
class HonokaPluginEntry
{
View
honoka/src/honokakeyeventlist.cpp 0 → 100644
View
honoka/src/honokakeyeventlist.h 0 → 100644
View
honoka/src/preeditor.cpp
View
honoka/src/preeditor.h
View
honoka/src/romkan.h