aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/qreg.h
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2024-08-30 04:15:36 +0200
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2024-09-09 18:22:21 +0200
commit7507ad3e1816f3bc9004dceb39bb303804287438 (patch)
tree3c4b2746b56a0538564dbf0416745012b51228fa /src/qreg.h
parent90bad24f96deeaaa2255f0ad89ece21d5397b78b (diff)
Unicode support for the Q-Register commands (refs #5)
* this required adding several Q-Register vtable methods * it should still be investigated whether the repeated calling of SCI_ALLOCATELINECHARACTERINDEX causes any overhead.
Diffstat (limited to 'src/qreg.h')
-rw-r--r--src/qreg.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/qreg.h b/src/qreg.h
index 4867dc2..7a150ea 100644
--- a/src/qreg.h
+++ b/src/qreg.h
@@ -47,13 +47,17 @@ typedef const struct {
gboolean (*undo_set_integer)(teco_qreg_t *qreg, GError **error);
gboolean (*get_integer)(teco_qreg_t *qreg, teco_int_t *ret, GError **error);
+ gint (*get_codepage)(teco_qreg_t *qreg);
gboolean (*set_string)(teco_qreg_t *qreg, const gchar *str, gsize len, GError **error);
gboolean (*undo_set_string)(teco_qreg_t *qreg, GError **error);
gboolean (*append_string)(teco_qreg_t *qreg, const gchar *str, gsize len, GError **error);
gboolean (*undo_append_string)(teco_qreg_t *qreg, GError **error);
gboolean (*get_string)(teco_qreg_t *qreg, gchar **str, gsize *len, GError **error);
- gint (*get_character)(teco_qreg_t *qreg, guint position, GError **error);
+ gboolean (*get_character)(teco_qreg_t *qreg, teco_int_t position,
+ teco_int_t *chr, GError **error);
+ /* always returns length in glyphs in contrast to get_string() */
+ teco_int_t (*get_length)(teco_qreg_t *qreg, GError **error);
/*
* These callbacks exist only to optimize teco_qreg_stack_push|pop()