librime 1.2
Rime Input Method Engine, the core library
editor.h
Go to the documentation of this file.
1//
2// Copyright RIME Developers
3// Distributed under the BSD License
4//
5// 2011-10-23 GONG Chen <chen.sst@gmail.com>
6//
7#ifndef RIME_EDITOR_H_
8#define RIME_EDITOR_H_
9
10#include <rime/common.h>
11#include <rime/component.h>
12#include <rime/key_event.h>
13#include <rime/processor.h>
15
16namespace rime {
17
18class Context;
19
20class Editor : public Processor, public KeyBindingProcessor<Editor> {
21 public:
22 typedef ProcessResult CharHandler(Context* ctx, int ch);
23 using CharHandlerPtr = ProcessResult (Editor::*)(Context* ctx, int ch);
24
25 Editor(const Ticket& ticket, bool auto_commit);
26 ProcessResult ProcessKeyEvent(const KeyEvent& key_event);
27
40
43
44 protected:
45 void LoadConfig();
46
48};
49
50class FluidEditor : public Editor {
51 public:
52 FluidEditor(const Ticket& ticket);
53};
54
55class ExpressEditor : public Editor {
56 public:
57 ExpressEditor(const Ticket& ticket);
58};
59
60} // namespace rime
61
62#endif // RIME_EDITOR_H_
Definition algebra.cc:12
ProcessResult
Definition processor.h:18
Definition context.h:19
Handler CommitComposition
Definition editor.h:33
Handler RevertLastEdit
Definition editor.h:34
Handler Confirm
Definition editor.h:28
Handler CommitScriptText
Definition editor.h:31
ProcessResult CharHandler(Context *ctx, int ch)
Definition editor.h:22
ProcessResult(Editor::*)(Context *ctx, int ch) CharHandlerPtr
Definition editor.h:23
Handler BackToPreviousSyllable
Definition editor.h:36
Handler BackToPreviousInput
Definition editor.h:35
Handler CommitComment
Definition editor.h:30
void LoadConfig()
Definition editor.cc:68
Handler CommitRawInput
Definition editor.h:32
Editor(const Ticket &ticket, bool auto_commit)
Definition editor.cc:41
CharHandler AddToInput
Definition editor.h:42
ProcessResult ProcessKeyEvent(const KeyEvent &key_event)
Definition editor.cc:46
Handler DeleteChar
Definition editor.h:38
Handler DeleteCandidate
Definition editor.h:37
Handler ToggleSelection
Definition editor.h:29
Handler CancelComposition
Definition editor.h:39
CharHandlerPtr char_handler_
Definition editor.h:47
CharHandler DirectCommit
Definition editor.h:41
FluidEditor(const Ticket &ticket)
Definition editor.cc:189
ExpressEditor(const Ticket &ticket)
Definition editor.cc:205
KeyBindingProcessor(ActionDef *action_definitions)
Definition key_binding_processor.h:36
bool Handler(Context *ctx)
Definition key_binding_processor.h:19
Definition key_event.h:17
Processor(const Ticket &ticket)
Definition processor.h:26
Definition ticket.h:17