tRename some functions - ledit - Text editor (WIP) | |
git clone git://lumidify.org/ledit.git (fast, but not encrypted) | |
git clone https://lumidify.org/git/ledit.git (encrypted, but very slow) | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit f0abd591c8ef4c52c3649aba5b68d460a1c78f47 | |
parent 9bdc877acf81ae270c68cacad2e70b9860f0832e | |
Author: lumidify <[email protected]> | |
Date: Mon, 29 Nov 2021 09:19:33 +0100 | |
Rename some functions | |
But it's still very inconsistent. | |
Diffstat: | |
M buffer.c | 180 ++++++++++++++++-------------… | |
M buffer.h | 88 ++++++++++++++++-------------… | |
M keys_basic.c | 134 ++++++++++++++++-------------… | |
M keys_command.c | 44 ++++++++++++++++-------------… | |
M keys_command.h | 2 +- | |
M ledit.c | 31 +++++++++++++++++------------… | |
M search.c | 40 ++++++++++++++++-------------… | |
M search.h | 8 ++++---- | |
M theme.c | 4 ++-- | |
M theme.h | 4 ++-- | |
M undo.c | 34 ++++++++++++++++-------------… | |
M undo.h | 26 +++++++++++++------------- | |
M util.c | 6 +++--- | |
M util.h | 6 +++--- | |
M view.c | 235 ++++++++++++++++-------------… | |
M window.c | 102 ++++++++++++++++-------------… | |
M window.h | 74 ++++++++++++++++-------------… | |
17 files changed, 511 insertions(+), 507 deletions(-) | |
--- | |
diff --git a/buffer.c b/buffer.c | |
t@@ -86,7 +86,7 @@ marklist_destroy(ledit_buffer_marklist *marklist) { | |
} | |
void | |
-ledit_buffer_insert_mark(ledit_buffer *buffer, char *mark, size_t len, size_t … | |
+buffer_insert_mark(ledit_buffer *buffer, char *mark, size_t len, size_t line, … | |
ledit_buffer_marklist *marklist = buffer->marklist; | |
for (size_t i = 0; i < marklist->len; i++) { | |
if (!strncmp(mark, marklist->marks[i].text, len)) { | |
t@@ -118,10 +118,10 @@ marklist_create(void) { | |
} | |
ledit_buffer * | |
-ledit_buffer_create(ledit_common *common) { | |
+buffer_create(ledit_common *common) { | |
ledit_buffer *buffer = ledit_malloc(sizeof(ledit_buffer)); | |
buffer->common = common; | |
- buffer->undo = ledit_undo_stack_create(); | |
+ buffer->undo = undo_stack_create(); | |
buffer->marklist = marklist_create(); | |
buffer->filename = NULL; | |
t@@ -137,7 +137,7 @@ ledit_buffer_create(ledit_common *common) { | |
resize_and_move_line_gap(buffer, 1, 0); | |
buffer->lines_num++; | |
buffer->lines_gap++; | |
- ledit_line *ll = ledit_buffer_get_line(buffer, 0); | |
+ ledit_line *ll = buffer_get_line(buffer, 0); | |
init_line(buffer, ll); | |
return buffer; | |
t@@ -146,11 +146,11 @@ ledit_buffer_create(ledit_common *common) { | |
static void | |
set_view_hard_line_text(ledit_buffer *buffer, ledit_view *view) { | |
char *text = buffer->hard_line_based ? "|HL" : "|SL"; | |
- ledit_window_set_mode_extra_text(view->window, text); | |
+ window_set_mode_extra_text(view->window, text); | |
} | |
void | |
-ledit_buffer_set_hard_line_based(ledit_buffer *buffer, int hl) { | |
+buffer_set_hard_line_based(ledit_buffer *buffer, int hl) { | |
buffer->hard_line_based = hl; | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
set_view_hard_line_text(buffer, buffer->views[i]); | |
t@@ -158,7 +158,7 @@ ledit_buffer_set_hard_line_based(ledit_buffer *buffer, int… | |
} | |
void | |
-ledit_buffer_add_view(ledit_buffer *buffer, ledit_theme *theme, enum ledit_mod… | |
+buffer_add_view(ledit_buffer *buffer, ledit_theme *theme, enum ledit_mode mode… | |
size_t new_num = buffer->views_num + 1; | |
if (new_num <= buffer->views_num) | |
err_overflow(); | |
t@@ -170,7 +170,7 @@ ledit_buffer_add_view(ledit_buffer *buffer, ledit_theme *t… | |
/* FIXME: error checking */ | |
void | |
-ledit_buffer_remove_view(ledit_buffer *buffer, ledit_view *view) { | |
+buffer_remove_view(ledit_buffer *buffer, ledit_view *view) { | |
size_t i = 0; | |
int found = 0; | |
for (; i < buffer->views_num; i++) { | |
t@@ -191,7 +191,7 @@ ledit_buffer_remove_view(ledit_buffer *buffer, ledit_view … | |
} | |
void | |
-ledit_buffer_recalc_all_views_from_line(ledit_buffer *buffer, size_t line) { | |
+buffer_recalc_all_views_from_line(ledit_buffer *buffer, size_t line) { | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
view_recalc_from_line(buffer->views[i], line); | |
} | |
t@@ -200,7 +200,7 @@ ledit_buffer_recalc_all_views_from_line(ledit_buffer *buff… | |
/* FIXME: don't generate extra blank line at end! */ | |
/* WARNING: errstr must be copied as soon as possible! */ | |
int | |
-ledit_buffer_load_file(ledit_buffer *buffer, char *filename, size_t line, char… | |
+buffer_load_file(ledit_buffer *buffer, char *filename, size_t line, char **err… | |
long len; | |
int off = 0; | |
ledit_line *ll; | |
t@@ -214,7 +214,7 @@ ledit_buffer_load_file(ledit_buffer *buffer, char *filenam… | |
if (len < 0) goto errorclose; | |
if (fseek(file, 0, SEEK_SET)) goto errorclose; | |
- ll = ledit_buffer_get_line(buffer, line); | |
+ ll = buffer_get_line(buffer, line); | |
file_contents = ledit_malloc(len + 2); | |
/* mimic nvi (or at least the openbsd version) - if the line | |
is empty, insert directly, otherwise insert after the line */ | |
t@@ -233,7 +233,7 @@ ledit_buffer_load_file(ledit_buffer *buffer, char *filenam… | |
} | |
if (fclose(file)) goto error; | |
- ledit_buffer_insert_text_with_newlines( | |
+ buffer_insert_text_with_newlines( | |
buffer, line, ll->len, file_contents, len + off, NULL, NULL | |
); | |
free(file_contents); | |
t@@ -251,15 +251,15 @@ errorclose: | |
/* FIXME: allow to write only certain lines */ | |
int | |
-ledit_buffer_write_to_file(ledit_buffer *buffer, char *filename, char **errstr… | |
+buffer_write_to_file(ledit_buffer *buffer, char *filename, char **errstr) { | |
FILE *file; | |
ledit_line *ll; | |
file = fopen(filename, "w"); | |
if (!file) goto error; | |
clearerr(file); | |
for (size_t i = 0; i < buffer->lines_num; i++) { | |
- ll = ledit_buffer_get_line(buffer, i); | |
- ledit_buffer_normalize_line(ll); | |
+ ll = buffer_get_line(buffer, i); | |
+ buffer_normalize_line(ll); | |
if (fprintf(file, "%s\n", ll->text) < 0) goto errorclose; | |
} | |
if (fclose(file)) goto error; | |
t@@ -276,13 +276,13 @@ errorclose: | |
} | |
void | |
-ledit_buffer_destroy(ledit_buffer *buffer) { | |
+buffer_destroy(ledit_buffer *buffer) { | |
ledit_line *l; | |
for (size_t i = 0; i < buffer->lines_num; i++) { | |
- l = ledit_buffer_get_line(buffer, i); | |
+ l = buffer_get_line(buffer, i); | |
free(l->text); | |
} | |
- ledit_undo_stack_destroy(buffer->undo); | |
+ undo_stack_destroy(buffer->undo); | |
free(buffer->lines); | |
if (buffer->filename) | |
free(buffer->filename); | |
t@@ -291,7 +291,7 @@ ledit_buffer_destroy(ledit_buffer *buffer) { | |
} | |
void | |
-ledit_buffer_normalize_line(ledit_line *line) { | |
+buffer_normalize_line(ledit_line *line) { | |
if (line->gap < line->len) { | |
memmove( | |
line->text + line->gap, | |
t@@ -308,35 +308,35 @@ ledit_buffer_normalize_line(ledit_line *line) { | |
/* FIXME: To simplify this a bit, maybe just copy text to txtbuf first and | |
then insert it in one go instead of having this complex logic */ | |
void | |
-ledit_buffer_insert_text_from_line( | |
+buffer_insert_text_from_line( | |
ledit_buffer *buffer, | |
size_t dst_line, size_t dst_index, | |
size_t src_line, size_t src_index, size_t src_len, | |
txtbuf *text_ret) { | |
- ledit_buffer_insert_text_from_line_base( | |
+ buffer_insert_text_from_line_base( | |
buffer, dst_line, dst_index, src_line, src_index, src_len, text_ret | |
); | |
- ledit_buffer_recalc_line(buffer, dst_line); | |
+ buffer_recalc_line(buffer, dst_line); | |
} | |
/* FIXME: check if there can be bugs when a newline is inserted in some way | |
other than pasting or pressing enter */ | |
void | |
-ledit_buffer_insert_text_from_line_base( | |
+buffer_insert_text_from_line_base( | |
ledit_buffer *buffer, | |
size_t dst_line, size_t dst_index, | |
size_t src_line, size_t src_index, size_t src_len, | |
txtbuf *text_ret) { | |
assert(dst_line != src_line); | |
- ledit_line *ll = ledit_buffer_get_line(buffer, src_line); | |
+ ledit_line *ll = buffer_get_line(buffer, src_line); | |
if (text_ret != NULL) { | |
txtbuf_grow(text_ret, src_len); | |
text_ret->len = src_len; | |
} | |
if (src_index >= ll->gap) { | |
/* all text to insert is after gap */ | |
- ledit_buffer_insert_text_base( | |
+ buffer_insert_text_base( | |
buffer, dst_line, dst_index, | |
ll->text + src_index + ll->cap - ll->len, src_len | |
); | |
t@@ -349,7 +349,7 @@ ledit_buffer_insert_text_from_line_base( | |
} | |
} else if (ll->gap - src_index >= src_len) { | |
/* all text to insert is before gap */ | |
- ledit_buffer_insert_text_base( | |
+ buffer_insert_text_base( | |
buffer, dst_line, dst_index, | |
ll->text + src_index, src_len | |
); | |
t@@ -362,12 +362,12 @@ ledit_buffer_insert_text_from_line_base( | |
} | |
} else { | |
/* insert part of text before gap */ | |
- ledit_buffer_insert_text_base( | |
+ buffer_insert_text_base( | |
buffer, dst_line, dst_index, | |
ll->text + src_index, ll->gap - src_index | |
); | |
/* insert part of text after gap */ | |
- ledit_buffer_insert_text_base( | |
+ buffer_insert_text_base( | |
buffer, dst_line, dst_index + ll->gap - src_index, | |
ll->text + ll->gap + ll->cap - ll->len, | |
src_len - ll->gap + src_index | |
t@@ -436,14 +436,14 @@ resize_and_move_line_gap(ledit_buffer *buffer, size_t mi… | |
} | |
void | |
-ledit_buffer_insert_text(ledit_buffer *buffer, size_t line_index, size_t index… | |
- ledit_buffer_insert_text_base(buffer, line_index, index, text, len); | |
- ledit_buffer_recalc_line(buffer, line_index); | |
+buffer_insert_text(ledit_buffer *buffer, size_t line_index, size_t index, char… | |
+ buffer_insert_text_base(buffer, line_index, index, text, len); | |
+ buffer_recalc_line(buffer, line_index); | |
} | |
void | |
-ledit_buffer_insert_text_base(ledit_buffer *buffer, size_t line_index, size_t … | |
- ledit_line *line = ledit_buffer_get_line(buffer, line_index); | |
+buffer_insert_text_base(ledit_buffer *buffer, size_t line_index, size_t index,… | |
+ ledit_line *line = buffer_get_line(buffer, line_index); | |
/* \0 is not included in line->len */ | |
/* FIXME: this if should be redundant now because resize_and_move... i… | |
if (line->len + len + 1 > line->cap || line->text == NULL) | |
t@@ -471,27 +471,27 @@ strchr_len(char *text, char c, size_t len) { | |
/* FIXME: make these functions that call recalc* also be final as described ab… | |
void | |
-ledit_buffer_insert_text_with_newlines( | |
+buffer_insert_text_with_newlines( | |
ledit_buffer *buffer, | |
size_t line_index, size_t index, | |
char *text, size_t len, | |
size_t *end_line_ret, size_t *end_byte_ret) { | |
size_t end; | |
- ledit_buffer_insert_text_with_newlines_base( | |
+ buffer_insert_text_with_newlines_base( | |
buffer, line_index, index, text, len, | |
&end, end_byte_ret | |
); | |
if (end_line_ret) | |
*end_line_ret = end; | |
if (line_index == end) | |
- ledit_buffer_recalc_line(buffer, line_index); | |
+ buffer_recalc_line(buffer, line_index); | |
else | |
- ledit_buffer_recalc_from_line(buffer, line_index); | |
+ buffer_recalc_from_line(buffer, line_index); | |
} | |
/* FIXME: also look for \r */ | |
void | |
-ledit_buffer_insert_text_with_newlines_base( | |
+buffer_insert_text_with_newlines_base( | |
ledit_buffer *buffer, | |
size_t line_index, size_t index, | |
char *text, size_t len, | |
t@@ -504,15 +504,15 @@ ledit_buffer_insert_text_with_newlines_base( | |
while ((cur = strchr_len(last, '\n', rem_len)) != NULL) { | |
/* FIXME: this is probably inefficient, but I don't have time … | |
think about it right now */ | |
- ledit_buffer_append_line_base(buffer, cur_line, cur_index, 1); | |
- ledit_buffer_insert_text_base(buffer, cur_line, cur_index, las… | |
+ buffer_append_line_base(buffer, cur_line, cur_index, 1); | |
+ buffer_insert_text_base(buffer, cur_line, cur_index, last, cur… | |
cur_index = 0; | |
cur_line++; | |
rem_len -= cur - last + 1; | |
last = cur + 1; | |
} | |
/* FIXME: check how legal this casting between pointers and ints is */ | |
- ledit_buffer_insert_text_base(buffer, cur_line, cur_index, last, text … | |
+ buffer_insert_text_base(buffer, cur_line, cur_index, last, text + len … | |
if (end_line_ret) | |
*end_line_ret = cur_line; | |
if (end_byte_ret) | |
t@@ -530,14 +530,14 @@ init_line(ledit_buffer *buffer, ledit_line *line) { | |
} | |
void | |
-ledit_buffer_append_line(ledit_buffer *buffer, size_t line_index, size_t text_… | |
- ledit_buffer_append_line_base(buffer, line_index, text_index, break_te… | |
- ledit_buffer_recalc_from_line(buffer, line_index); | |
+buffer_append_line(ledit_buffer *buffer, size_t line_index, size_t text_index,… | |
+ buffer_append_line_base(buffer, line_index, text_index, break_text); | |
+ buffer_recalc_from_line(buffer, line_index); | |
} | |
/* FIXME: error checking (index out of bounds, etc.) */ | |
void | |
-ledit_buffer_append_line_base(ledit_buffer *buffer, size_t line_index, size_t … | |
+buffer_append_line_base(ledit_buffer *buffer, size_t line_index, size_t text_i… | |
size_t new_len = buffer->lines_num + 1; | |
if (new_len <= buffer->lines_num) | |
err_overflow(); | |
t@@ -547,18 +547,18 @@ ledit_buffer_append_line_base(ledit_buffer *buffer, size… | |
resize_and_move_line_gap(buffer, new_len, insert_index); | |
buffer->lines_num++; | |
buffer->lines_gap++; | |
- ledit_line *new_l = ledit_buffer_get_line(buffer, line_index + 1); | |
+ ledit_line *new_l = buffer_get_line(buffer, line_index + 1); | |
init_line(buffer, new_l); | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
view_notify_append_line(buffer->views[i], line_index); | |
} | |
if (break_text) { | |
- ledit_line *l = ledit_buffer_get_line(buffer, line_index); | |
- ledit_buffer_insert_text_from_line_base( | |
+ ledit_line *l = buffer_get_line(buffer, line_index); | |
+ buffer_insert_text_from_line_base( | |
buffer, line_index + 1, 0, | |
line_index, text_index, l->len - text_index, NULL | |
); | |
- ledit_buffer_delete_line_section_base( | |
+ buffer_delete_line_section_base( | |
buffer, line_index, | |
text_index, l->len - text_index | |
); | |
t@@ -567,20 +567,20 @@ ledit_buffer_append_line_base(ledit_buffer *buffer, size… | |
/* FIXME: set offset to 0 when recalculating first line? */ | |
void | |
-ledit_buffer_delete_line_entries(ledit_buffer *buffer, size_t index1, size_t i… | |
- ledit_buffer_delete_line_entries_base(buffer, index1, index2); | |
- ledit_buffer_recalc_from_line(buffer, index1 > 0 ? index1 - 1 : 0); | |
+buffer_delete_line_entries(ledit_buffer *buffer, size_t index1, size_t index2)… | |
+ buffer_delete_line_entries_base(buffer, index1, index2); | |
+ buffer_recalc_from_line(buffer, index1 > 0 ? index1 - 1 : 0); | |
} | |
-/* IMPORTANT: ledit_buffer_recalc_from_line needs to be called sometime after … | |
+/* IMPORTANT: buffer_recalc_from_line needs to be called sometime after this! … | |
void | |
-ledit_buffer_delete_line_entries_base(ledit_buffer *buffer, size_t index1, siz… | |
+buffer_delete_line_entries_base(ledit_buffer *buffer, size_t index1, size_t in… | |
ledit_line *l; | |
assert (index2 >= index1); | |
/* it isn't allowed to delete all lines */ | |
assert(index2 - index1 != buffer->lines_num); | |
for (size_t i = index1; i <= index2; i++) { | |
- l = ledit_buffer_get_line(buffer, i); | |
+ l = buffer_get_line(buffer, i); | |
free(l->text); | |
} | |
move_line_gap(buffer, index1); | |
t@@ -591,17 +591,17 @@ ledit_buffer_delete_line_entries_base(ledit_buffer *buff… | |
} | |
void | |
-ledit_buffer_delete_line_entry(ledit_buffer *buffer, size_t index) { | |
- ledit_buffer_delete_line_entries(buffer, index, index); | |
+buffer_delete_line_entry(ledit_buffer *buffer, size_t index) { | |
+ buffer_delete_line_entries(buffer, index, index); | |
} | |
void | |
-ledit_buffer_delete_line_entry_base(ledit_buffer *buffer, size_t index) { | |
- ledit_buffer_delete_line_entries_base(buffer, index, index); | |
+buffer_delete_line_entry_base(ledit_buffer *buffer, size_t index) { | |
+ buffer_delete_line_entries_base(buffer, index, index); | |
} | |
ledit_line * | |
-ledit_buffer_get_line(ledit_buffer *buffer, size_t index) { | |
+buffer_get_line(ledit_buffer *buffer, size_t index) { | |
assert(index < buffer->lines_num); | |
return index < buffer->lines_gap ? | |
&buffer->lines[index] : | |
t@@ -609,38 +609,38 @@ ledit_buffer_get_line(ledit_buffer *buffer, size_t index… | |
} | |
void | |
-ledit_buffer_recalc_line(ledit_buffer *buffer, size_t line) { | |
+buffer_recalc_line(ledit_buffer *buffer, size_t line) { | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
view_recalc_line(buffer->views[i], line); | |
} | |
} | |
void | |
-ledit_buffer_recalc_from_line(ledit_buffer *buffer, size_t line) { | |
+buffer_recalc_from_line(ledit_buffer *buffer, size_t line) { | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
view_recalc_from_line(buffer->views[i], line); | |
} | |
} | |
void | |
-ledit_buffer_recalc_all_lines(ledit_buffer *buffer) { | |
+buffer_recalc_all_lines(ledit_buffer *buffer) { | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
view_recalc_all_lines(buffer->views[i]); | |
} | |
} | |
size_t | |
-ledit_buffer_textlen(ledit_buffer *buffer, size_t line1, size_t byte1, size_t … | |
+buffer_textlen(ledit_buffer *buffer, size_t line1, size_t byte1, size_t line2,… | |
assert(line1 < line2 || (line1 == line2 && byte1 <= byte2)); | |
size_t len = 0; | |
- ledit_line *ll = ledit_buffer_get_line(buffer, line1); | |
+ ledit_line *ll = buffer_get_line(buffer, line1); | |
if (line1 == line2) { | |
len = byte2 - byte1; | |
} else { | |
/* + 1 for newline */ | |
len = ll->len - byte1 + byte2 + 1; | |
for (size_t i = line1 + 1; i < line2; i++) { | |
- ll = ledit_buffer_get_line(buffer, i); | |
+ ll = buffer_get_line(buffer, i); | |
len += ll->len + 1; | |
} | |
} | |
t@@ -654,11 +654,11 @@ ledit_buffer_textlen(ledit_buffer *buffer, size_t line1,… | |
of pango's requirements). If a more efficient rendering | |
backend is added, it would be good to optimize this, though. */ | |
void | |
-ledit_buffer_copy_text(ledit_buffer *buffer, char *dst, int line1, int byte1, … | |
+buffer_copy_text(ledit_buffer *buffer, char *dst, int line1, int byte1, int li… | |
assert(line1 < line2 || (line1 == line2 && byte1 <= byte2)); | |
- ledit_line *ll1 = ledit_buffer_get_line(buffer, line1); | |
- ledit_line *ll2 = ledit_buffer_get_line(buffer, line2); | |
- ledit_buffer_normalize_line(ll1); | |
+ ledit_line *ll1 = buffer_get_line(buffer, line1); | |
+ ledit_line *ll2 = buffer_get_line(buffer, line2); | |
+ buffer_normalize_line(ll1); | |
if (line1 == line2) { | |
memcpy(dst, ll1->text + byte1, byte2 - byte1); | |
dst[byte2 - byte1] = '\0'; | |
t@@ -669,14 +669,14 @@ ledit_buffer_copy_text(ledit_buffer *buffer, char *dst, … | |
dst[cur_pos] = '\n'; | |
cur_pos++; | |
for (int i = line1 + 1; i < line2; i++) { | |
- ledit_line *ll = ledit_buffer_get_line(buffer, i); | |
- ledit_buffer_normalize_line(ll); | |
+ ledit_line *ll = buffer_get_line(buffer, i); | |
+ buffer_normalize_line(ll); | |
memcpy(dst + cur_pos, ll->text, ll->len); | |
cur_pos += ll->len; | |
dst[cur_pos] = '\n'; | |
cur_pos++; | |
} | |
- ledit_buffer_normalize_line(ll2); | |
+ buffer_normalize_line(ll2); | |
memcpy(dst + cur_pos, ll2->text, byte2); | |
cur_pos += byte2; | |
dst[cur_pos] = '\0'; | |
t@@ -684,15 +684,15 @@ ledit_buffer_copy_text(ledit_buffer *buffer, char *dst, … | |
} | |
void | |
-ledit_buffer_copy_text_to_txtbuf( | |
+buffer_copy_text_to_txtbuf( | |
ledit_buffer *buffer, | |
txtbuf *buf, | |
size_t line1, size_t byte1, | |
size_t line2, size_t byte2) { | |
assert(line1 < line2 || (line1 == line2 && byte1 <= byte2)); | |
- size_t len = ledit_buffer_textlen(buffer, line1, byte1, line2, byte2); | |
+ size_t len = buffer_textlen(buffer, line1, byte1, line2, byte2); | |
txtbuf_grow(buf, len + 1); | |
- ledit_buffer_copy_text(buffer, buf->text, line1, byte1, line2, byte2); | |
+ buffer_copy_text(buffer, buf->text, line1, byte1, line2, byte2); | |
buf->len = len; | |
} | |
t@@ -700,7 +700,7 @@ ledit_buffer_copy_text_to_txtbuf( | |
#define LINE_CHAR(line, i) ((i) < (line)->gap ? (line)->text[i] : (line)->text… | |
size_t | |
-ledit_line_prev_utf8(ledit_line *line, size_t index) { | |
+line_prev_utf8(ledit_line *line, size_t index) { | |
if (index <= 0) | |
return 0; | |
size_t i = index - 1; | |
t@@ -712,7 +712,7 @@ ledit_line_prev_utf8(ledit_line *line, size_t index) { | |
} | |
size_t | |
-ledit_line_next_utf8(ledit_line *line, size_t index) { | |
+line_next_utf8(ledit_line *line, size_t index) { | |
if (index >= line->len) | |
return line->len; | |
size_t i = index + 1; | |
t@@ -731,14 +731,14 @@ line_byte_to_char(ledit_line *line, size_t byte) { | |
size_t b = byte > line->len ? line->len : byte; /* maybe not necessary… | |
while (i < b) { | |
c++; | |
- i = ledit_line_next_utf8(line, i); | |
+ i = line_next_utf8(line, i); | |
} | |
return c; | |
} | |
void | |
-ledit_buffer_delete_line_section_base(ledit_buffer *buffer, size_t line, size_… | |
- ledit_line *l = ledit_buffer_get_line(buffer, line); | |
+buffer_delete_line_section_base(ledit_buffer *buffer, size_t line, size_t star… | |
+ ledit_line *l = buffer_get_line(buffer, line); | |
if (start <= l->gap && start + length >= l->gap) { | |
l->gap = start; | |
} else if (start < l->gap && start + length < l->gap) { | |
t@@ -762,23 +762,23 @@ ledit_buffer_delete_line_section_base(ledit_buffer *buff… | |
} | |
size_t | |
-ledit_buffer_delete_unicode_char(ledit_buffer *buffer, size_t line_index, size… | |
- size_t new_index = ledit_buffer_delete_unicode_char_base(buffer, line_… | |
- ledit_buffer_recalc_line(buffer, line_index); | |
+buffer_delete_unicode_char(ledit_buffer *buffer, size_t line_index, size_t byt… | |
+ size_t new_index = buffer_delete_unicode_char_base(buffer, line_index,… | |
+ buffer_recalc_line(buffer, line_index); | |
return new_index; | |
} | |
size_t | |
-ledit_buffer_delete_unicode_char_base(ledit_buffer *buffer, size_t line_index,… | |
- ledit_line *l = ledit_buffer_get_line(buffer, line_index); | |
+buffer_delete_unicode_char_base(ledit_buffer *buffer, size_t line_index, size_… | |
+ ledit_line *l = buffer_get_line(buffer, line_index); | |
size_t new_index = byte_index; | |
if (dir < 0) { | |
- size_t i = ledit_line_prev_utf8(l, byte_index); | |
- ledit_buffer_delete_line_section_base(buffer, line_index, i, b… | |
+ size_t i = line_prev_utf8(l, byte_index); | |
+ buffer_delete_line_section_base(buffer, line_index, i, byte_in… | |
new_index = i; | |
} else { | |
- size_t i = ledit_line_next_utf8(l, byte_index); | |
- ledit_buffer_delete_line_section_base(buffer, line_index, byte… | |
+ size_t i = line_next_utf8(l, byte_index); | |
+ buffer_delete_line_section_base(buffer, line_index, byte_index… | |
} | |
return new_index; | |
} | |
diff --git a/buffer.h b/buffer.h | |
t@@ -29,7 +29,7 @@ typedef struct { | |
struct ledit_buffer { | |
ledit_common *common; /* common stuff, e.g. display, etc. */ | |
char *filename; /* last opened filename */ | |
- ledit_undo_stack *undo; /* undo manager */ | |
+ undo_stack *undo; /* undo manager */ | |
ledit_buffer_marklist *marklist; /* list of mark positions set */ | |
ledit_line *lines; /* array of lines */ | |
ledit_view **views; /* array of registered views */ | |
t@@ -46,29 +46,29 @@ struct ledit_buffer { | |
/* | |
* Create a new buffer with one empty line | |
*/ | |
-ledit_buffer *ledit_buffer_create(ledit_common *common); | |
+ledit_buffer *buffer_create(ledit_common *common); | |
/* | |
* Set the hard line mode of the buffer and update the | |
* displayed mode in all views. | |
*/ | |
-void ledit_buffer_set_hard_line_based(ledit_buffer *buffer, int hl); | |
+void buffer_set_hard_line_based(ledit_buffer *buffer, int hl); | |
/* | |
* Add a new view to the buffer. | |
*/ | |
-void ledit_buffer_add_view(ledit_buffer *buffer, ledit_theme *theme, enum ledi… | |
+void buffer_add_view(ledit_buffer *buffer, ledit_theme *theme, enum ledit_mode… | |
/* | |
* Remove the given view from the buffer. | |
* Nothing is done if the view does not belong to the buffer. | |
*/ | |
-void ledit_buffer_remove_view(ledit_buffer *buffer, ledit_view *view); | |
+void buffer_remove_view(ledit_buffer *buffer, ledit_view *view); | |
/* | |
* Call 'view_recalc_from_line' for all views. | |
*/ | |
-void ledit_buffer_recalc_all_views_from_line(ledit_buffer *buffer, size_t line… | |
+void buffer_recalc_all_views_from_line(ledit_buffer *buffer, size_t line); | |
/* | |
* Load a file into the buffer at line 'line'. | |
t@@ -78,7 +78,7 @@ void ledit_buffer_recalc_all_views_from_line(ledit_buffer *b… | |
* with an error message which must be copied as soon as possible because it m… | |
* be overwritten by subsequent function calls. | |
*/ | |
-int ledit_buffer_load_file(ledit_buffer *buffer, char *filename, size_t line, … | |
+int buffer_load_file(ledit_buffer *buffer, char *filename, size_t line, char *… | |
/* | |
* Write the buffer to a file. | |
t@@ -86,18 +86,18 @@ int ledit_buffer_load_file(ledit_buffer *buffer, char *fil… | |
* with an error message which must be copied as soon as possible because it m… | |
* be overwritten by subsequent function calls. | |
*/ | |
-int ledit_buffer_write_to_file(ledit_buffer *buffer, char *filename, char **er… | |
+int buffer_write_to_file(ledit_buffer *buffer, char *filename, char **errstr); | |
/* | |
* Destroy a buffer. | |
*/ | |
-void ledit_buffer_destroy(ledit_buffer *buffer); | |
+void buffer_destroy(ledit_buffer *buffer); | |
/* | |
* Normalize a line, i.e. move the gap to the end and add '\0' | |
* so the text can be used as a normal string | |
*/ | |
-void ledit_buffer_normalize_line(ledit_line *line); | |
+void buffer_normalize_line(ledit_line *line); | |
/* | |
* Insert 'src_len' bytes from 'src_line' starting at byte position 'src_index' | |
t@@ -107,7 +107,7 @@ void ledit_buffer_normalize_line(ledit_line *line); | |
* This function does not update the views or normalize the lines, so it should | |
* only be used for efficiency purposes when performing multiple operations. | |
*/ | |
-void ledit_buffer_insert_text_from_line_base( | |
+void buffer_insert_text_from_line_base( | |
ledit_buffer *buffer, | |
size_t dst_line, size_t dst_index, | |
size_t src_line, size_t src_index, size_t src_len, | |
t@@ -115,9 +115,9 @@ void ledit_buffer_insert_text_from_line_base( | |
); | |
/* | |
- * Same as ledit_buffer_insert_text_from_line_base, but the views are updated … | |
+ * Same as buffer_insert_text_from_line_base, but the views are updated afterw… | |
*/ | |
-void ledit_buffer_insert_text_from_line( | |
+void buffer_insert_text_from_line( | |
ledit_buffer *buffer, | |
size_t dst_line, size_t dst_index, | |
size_t src_line, size_t src_index, size_t src_len, | |
t@@ -130,16 +130,16 @@ void ledit_buffer_insert_text_from_line( | |
* This function does not update the views or normalize the lines, so it should | |
* only be used for efficiency purposes when performing multiple operations. | |
*/ | |
-void ledit_buffer_insert_text_base( | |
+void buffer_insert_text_base( | |
ledit_buffer *buffer, | |
size_t line_index, size_t index, | |
char *text, size_t len | |
); | |
/* | |
- * Same as ledit_buffer_insert_text_base, but the views are updated afterwards. | |
+ * Same as buffer_insert_text_base, but the views are updated afterwards. | |
*/ | |
-void ledit_buffer_insert_text( | |
+void buffer_insert_text( | |
ledit_buffer *buffer, | |
size_t line_index, size_t index, | |
char *text, size_t len | |
t@@ -154,7 +154,7 @@ void ledit_buffer_insert_text( | |
* This function does not update the views or normalize the lines, so it should | |
* only be used for efficiency purposes when performing multiple operations. | |
*/ | |
-void ledit_buffer_insert_text_with_newlines_base( | |
+void buffer_insert_text_with_newlines_base( | |
ledit_buffer *buffer, | |
size_t line_index, size_t index, | |
char *text, size_t len, | |
t@@ -162,9 +162,9 @@ void ledit_buffer_insert_text_with_newlines_base( | |
); | |
/* | |
- * Same as ledit_buffer_insert_text_with_newlines_base, but the views are upda… | |
+ * Same as buffer_insert_text_with_newlines_base, but the views are updated af… | |
*/ | |
-void ledit_buffer_insert_text_with_newlines( | |
+void buffer_insert_text_with_newlines( | |
ledit_buffer *buffer, | |
size_t line_index, size_t index, | |
char *text, size_t len, | |
t@@ -178,51 +178,51 @@ void ledit_buffer_insert_text_with_newlines( | |
* The views are notified that a line has been appended, but not told to update | |
* their line heights and offsets. | |
*/ | |
-void ledit_buffer_append_line_base(ledit_buffer *buffer, size_t line_index, si… | |
+void buffer_append_line_base(ledit_buffer *buffer, size_t line_index, size_t t… | |
/* | |
- * Same as ledit_buffer_append_line_base, but the views are told to update | |
+ * Same as buffer_append_line_base, but the views are told to update | |
* their line heights and offsets afterwards. | |
*/ | |
-void ledit_buffer_append_line(ledit_buffer *buffer, size_t line_index, size_t … | |
+void buffer_append_line(ledit_buffer *buffer, size_t line_index, size_t text_i… | |
/* | |
* Delete lines between 'index1' and 'index2' (inclusive). | |
* The views are notified of the deletion but not told to | |
* update their line heights and offsets. | |
*/ | |
-void ledit_buffer_delete_line_entries_base(ledit_buffer *buffer, size_t index1… | |
+void buffer_delete_line_entries_base(ledit_buffer *buffer, size_t index1, size… | |
/* | |
- * Same as ledit_buffer_delete_line_entries_base, but the views are told to | |
+ * Same as buffer_delete_line_entries_base, but the views are told to | |
* update their line heights and offsets. | |
*/ | |
-void ledit_buffer_delete_line_entries(ledit_buffer *buffer, size_t index1, siz… | |
+void buffer_delete_line_entries(ledit_buffer *buffer, size_t index1, size_t in… | |
/* | |
- * Convenience function to call ledit_buffer_delete_line_entries_base | |
+ * Convenience function to call buffer_delete_line_entries_base | |
* with two times the same line index. | |
*/ | |
-void ledit_buffer_delete_line_entry_base(ledit_buffer *buffer, size_t index); | |
+void buffer_delete_line_entry_base(ledit_buffer *buffer, size_t index); | |
/* | |
- * Convenience function to call ledit_buffer_delete_line_entries | |
+ * Convenience function to call buffer_delete_line_entries | |
* with two times the same line index. | |
*/ | |
-void ledit_buffer_delete_line_entry(ledit_buffer *buffer, size_t index); | |
+void buffer_delete_line_entry(ledit_buffer *buffer, size_t index); | |
/* | |
* Get the line at logical index 'index'. | |
* The returned line is only valid until the next | |
* action that appends or deletes line entries. | |
*/ | |
-ledit_line *ledit_buffer_get_line(ledit_buffer *buffer, size_t index); | |
+ledit_line *buffer_get_line(ledit_buffer *buffer, size_t index); | |
/* | |
* Tell views to recalculate the height of line 'line' and | |
* update the pixel offsets of the following lines. | |
*/ | |
-void ledit_buffer_recalc_line(ledit_buffer *buffer, size_t line); | |
+void buffer_recalc_line(ledit_buffer *buffer, size_t line); | |
/* | |
* Tell views to recalculate the height for all lines starting at 'line' | |
t@@ -230,13 +230,13 @@ void ledit_buffer_recalc_line(ledit_buffer *buffer, size… | |
* all lines after 'line'. | |
* Also clear the text_dirty attribute for all lines starting at 'line'. | |
*/ | |
-void ledit_buffer_recalc_from_line(ledit_buffer *buffer, size_t line); | |
+void buffer_recalc_from_line(ledit_buffer *buffer, size_t line); | |
/* | |
* Tell views to recalculate all lines. | |
* Also clear the text_dirty attribute for all lines. | |
*/ | |
-void ledit_buffer_recalc_all_lines(ledit_buffer *buffer); | |
+void buffer_recalc_all_lines(ledit_buffer *buffer); | |
/* | |
* Get needed length of text range, including newlines. | |
t@@ -244,21 +244,21 @@ void ledit_buffer_recalc_all_lines(ledit_buffer *buffer); | |
* - if the last range ends at the end of a line, the newline is *not* included | |
* - the range must be sorted already | |
*/ | |
-size_t ledit_buffer_textlen(ledit_buffer *buffer, size_t line1, size_t byte1, … | |
+size_t buffer_textlen(ledit_buffer *buffer, size_t line1, size_t byte1, size_t… | |
/* | |
* Copy text range into given buffer. | |
* - dst is null-terminated | |
- * - dst must be large enough to contain the text and NUL (only use this toget… | |
+ * - dst must be large enough to contain the text and NUL (only use this toget… | |
* - the range must be sorted already | |
*/ | |
-void ledit_buffer_copy_text(ledit_buffer *buffer, char *dst, int line1, int by… | |
+void buffer_copy_text(ledit_buffer *buffer, char *dst, int line1, int byte1, i… | |
/* | |
* Copy text range into given buffer and resize it if necessary. | |
* - the range must be sorted already | |
*/ | |
-void ledit_buffer_copy_text_to_txtbuf( | |
+void buffer_copy_text_to_txtbuf( | |
ledit_buffer *buffer, | |
txtbuf *buf, /* oh, isn't that a very non-confusing name? */ | |
size_t line1, size_t byte1, | |
t@@ -268,12 +268,12 @@ void ledit_buffer_copy_text_to_txtbuf( | |
/* | |
* Get the byte index of the previous utf8 character starting at byte index 'i… | |
*/ | |
-size_t ledit_line_next_utf8(ledit_line *line, size_t index); | |
+size_t line_next_utf8(ledit_line *line, size_t index); | |
/* | |
* Get the byte index of the previous utf8 character starting at byte index 'i… | |
*/ | |
-size_t ledit_line_prev_utf8(ledit_line *line, size_t index); | |
+size_t line_prev_utf8(ledit_line *line, size_t index); | |
/* | |
* Get the unicode character index of a byte position. | |
t@@ -285,7 +285,7 @@ size_t line_byte_to_char(ledit_line *line, size_t byte); | |
* and notify the views. | |
* Note that this does not tell the views to recalculate their line heights an… | |
*/ | |
-void ledit_buffer_delete_line_section_base(ledit_buffer *buffer, size_t line, … | |
+void buffer_delete_line_section_base(ledit_buffer *buffer, size_t line, size_t… | |
/* | |
* Delete the unicode char at 'line_index' and 'byte_index' if 'dir' is >= 0, | |
t@@ -294,16 +294,16 @@ void ledit_buffer_delete_line_section_base(ledit_buffer … | |
* This function only notifies the views of the deletion, but does not tell | |
* them to recalculate their line heights and offsets. | |
*/ | |
-size_t ledit_buffer_delete_unicode_char_base(ledit_buffer *buffer, size_t line… | |
+size_t buffer_delete_unicode_char_base(ledit_buffer *buffer, size_t line_index… | |
/* | |
- * Same as ledit_buffer_delete_unicode_char_base, but the views are updated. | |
+ * Same as buffer_delete_unicode_char_base, but the views are updated. | |
*/ | |
-size_t ledit_buffer_delete_unicode_char(ledit_buffer *buffer, size_t line_inde… | |
+size_t buffer_delete_unicode_char(ledit_buffer *buffer, size_t line_index, siz… | |
/* | |
* Insert a mark with key 'mark' at line 'line' and byte 'byte'. | |
*/ | |
-void ledit_buffer_insert_mark(ledit_buffer *buffer, char *mark, size_t len, si… | |
+void buffer_insert_mark(ledit_buffer *buffer, char *mark, size_t len, size_t l… | |
#endif | |
diff --git a/keys_basic.c b/keys_basic.c | |
t@@ -180,7 +180,7 @@ clear_key_stack(void) { | |
static struct action | |
err_invalid_key(ledit_view *view) { | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
clear_key_stack(); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
t@@ -423,7 +423,7 @@ delete_range( | |
); | |
cur_range.line2 = view->cur_line; | |
cur_range.byte2 = view->cur_index; | |
- ledit_push_undo_delete( | |
+ undo_push_delete( | |
view->buffer->undo, buf, del_range, cur_range, 1, view->mode | |
); | |
if (!copy_to_buffer) | |
t@@ -450,7 +450,7 @@ insert_text( | |
del_range.line1 = line; | |
del_range.byte1 = index; | |
size_t cur_line, cur_index; | |
- ledit_buffer_insert_text_with_newlines( | |
+ buffer_insert_text_with_newlines( | |
view->buffer, line, index, text, len, | |
&cur_line, &cur_index | |
); | |
t@@ -465,7 +465,7 @@ insert_text( | |
} | |
del_range.line2 = cur_line; | |
del_range.byte2 = cur_index; | |
- ledit_push_undo_insert( | |
+ undo_push_insert( | |
view->buffer->undo, &ins_buf, del_range, cur_range, start_group, v… | |
); | |
} | |
t@@ -494,7 +494,7 @@ delete_chars_forwards(ledit_view *view, char *text, size_t… | |
(void)len; | |
int num = get_key_repeat(); | |
if (num == -1) { | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
return (struct action){ACTION_NONE, NULL}; | |
} else if (num == 0) { | |
num = 1; | |
t@@ -521,7 +521,7 @@ delete_chars_backwards(ledit_view *view, char *text, size_… | |
(void)len; | |
int num = get_key_repeat(); | |
if (num == -1) { | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
return (struct action){ACTION_NONE, NULL}; | |
} else if (num == 0) { | |
num = 1; | |
t@@ -550,7 +550,7 @@ push_undo_empty_insert(ledit_view *view, size_t line, size… | |
txtbuf ins_buf = {.text = "", .len = 0, .cap = 0}; | |
ledit_range ins_range = {.line1 = line, .byte1 = index, .line2 = line,… | |
ledit_range cur_range = {.line1 = line, .byte1 = index, .line2 = line,… | |
- ledit_push_undo_insert( | |
+ undo_push_insert( | |
view->buffer->undo, &ins_buf, ins_range, cur_range, start_group, v… | |
); | |
} | |
t@@ -575,7 +575,7 @@ append_line_below(ledit_view *view, char *text, size_t len… | |
size_t start, end; | |
enter_insert(view, text, len); | |
view_get_pos_softline_bounds(view, view->cur_line, view->cur_index, &s… | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur_line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); | |
if (hard_line_based || end == ll->len) { | |
insert_text(view, view->cur_line, ll->len, "\n", 1, 0, 0, view… | |
} else { | |
t@@ -602,7 +602,7 @@ append_after_eol(ledit_view *view, char *text, size_t len)… | |
view_get_pos_softline_bounds(view, view->cur_line, view->cur_index, &s… | |
/* make cursor jump back to original position on undo */ | |
push_undo_empty_insert(view, view->cur_line, view->cur_index, 1); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur_line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); | |
if (hard_line_based) | |
view->cur_index = ll->len; | |
else | |
t@@ -630,7 +630,7 @@ move_to_line(ledit_view *view, char *text, size_t len) { | |
view->cur_line = line - 1; | |
view->cur_index = 0; | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
ledit_view_line *vl = view_get_line(view, view->cur_line); | |
int x, y, h; | |
view_get_cursor_pixel_pos(view, view->cur_line, 0, &x, &y, &h); | |
t@@ -659,7 +659,7 @@ scroll_lines(ledit_view *view, int lines, int dir) { | |
/* get the middle position of char */ | |
ledit_pos_to_x_softline(view, view->cur_line, view->cur_index,… | |
long abs_pos = vl->y_offset + y; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
if (lines > 0) | |
final_lines = last_lines_scrolled = lines; | |
else | |
t@@ -689,7 +689,7 @@ scroll_lines_up(ledit_view *view, char *text, size_t len) { | |
if (repeat >= 0) | |
scroll_lines(view, repeat, -1); | |
else | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -702,7 +702,7 @@ scroll_lines_down(ledit_view *view, char *text, size_t len… | |
if (repeat >= 0) | |
scroll_lines(view, repeat, 1); | |
else | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -744,7 +744,7 @@ scroll_with_cursor_up(ledit_view *view, char *text, size_t… | |
if (repeat >= 0) | |
scroll_with_cursor(view, -(repeat == 0 ? 1 : repeat)); | |
else | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -757,7 +757,7 @@ scroll_with_cursor_down(ledit_view *view, char *text, size… | |
if (repeat >= 0) | |
scroll_with_cursor(view, repeat == 0 ? 1 : repeat); | |
else | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -770,7 +770,7 @@ scroll_with_cursor_down(ledit_view *view, char *text, size… | |
static void | |
move_half_screen(ledit_view *view, int movement) { | |
int w, h; | |
- ledit_window_get_textview_size(view->window, &w, &h); | |
+ window_get_textview_size(view->window, &w, &h); | |
/* FIXME: overflow */ | |
int total = movement * h/2; | |
ledit_view_line *vl = view_get_line(view, view->cur_line); | |
t@@ -825,7 +825,7 @@ screen_up(ledit_view *view, char *text, size_t len) { | |
if (repeat >= 0) | |
move_half_screen(view, -(repeat == 0 ? 2 : repeat*2)); | |
else | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -838,7 +838,7 @@ screen_down(ledit_view *view, char *text, size_t len) { | |
if (repeat >= 0) | |
move_half_screen(view, repeat == 0 ? 2 : repeat*2); | |
else | |
- ledit_window_show_message(view->window, "Invalid key", -1); | |
+ window_show_message(view->window, "Invalid key", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -850,7 +850,7 @@ delete_to_eol(ledit_view *view, char *text, size_t len) { | |
if (!key_stack_empty()) | |
return err_invalid_key(view); | |
size_t start, end; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur_line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); | |
if (hard_line_based) { | |
end = ll->len; | |
} else { | |
t@@ -877,7 +877,7 @@ change_to_eol(ledit_view *view, char *text, size_t len) { | |
return err_invalid_key(view); | |
view_set_mode(view, INSERT); | |
size_t start, end; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur_line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); | |
if (hard_line_based) { | |
end = ll->len; | |
} else { | |
t@@ -947,7 +947,7 @@ change_cb(ledit_view *view, size_t line, size_t char_pos, … | |
view_get_pos_softline_bounds(view, line, char_pos, &tmp, &pos2… | |
} else if (line_based && hard_line_based) { | |
pos1 = 0; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
pos2 = ll->len; | |
} | |
/* force line_based to 0 (see comment about hackery above) */ | |
t@@ -970,7 +970,7 @@ yank(ledit_view *view, char *text, size_t len) { | |
view_sort_selection( | |
&view->sel.line1, &view->sel.byte1, &view->sel.line2, &vie… | |
); | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, paste_buffer, | |
view->sel.line1, view->sel.byte1, view->sel.line2, view->s… | |
); | |
t@@ -1049,26 +1049,26 @@ yank_cb(ledit_view *view, size_t line, size_t char_pos… | |
size_t start1, end2, tmp; | |
view_get_pos_softline_bounds(view, l1, b1, &start1, &tmp); | |
view_get_pos_softline_bounds(view, l2, b2, &tmp, &end2); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, l2); | |
+ ledit_line *ll = buffer_get_line(view->buffer, l2); | |
if (end2 == ll->len && l2 < view->lines_num - 1) { | |
l2++; | |
end2 = 0; | |
} | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, paste_buffer, l1, start1, l2, end2 | |
); | |
} else if (line_based && hard_line_based) { | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, l2); | |
+ ledit_line *ll = buffer_get_line(view->buffer, l2); | |
size_t end = ll->len; | |
if (l2 < view->lines_num - 1) { | |
l2++; | |
end = 0; | |
} | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, paste_buffer, l1, 0, l2, end | |
); | |
} else { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, paste_buffer, l1, b1, l2, b2 | |
); | |
} | |
t@@ -1138,13 +1138,13 @@ paste_normal(ledit_view *view, char *text, size_t len)… | |
(void)text; | |
(void)len; | |
if (!paste_buffer) { | |
- ledit_window_show_message(view->window, "Nothing to paste", -1… | |
+ window_show_message(view->window, "Nothing to paste", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
if (paste_buffer_line_based) { | |
view_wipe_line_cursor_attrs(view, view->cur_line); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur… | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); | |
size_t brk = 0; | |
if (hard_line_based) { | |
brk = ll->len; | |
t@@ -1157,7 +1157,7 @@ paste_normal(ledit_view *view, char *text, size_t len) { | |
"\n", 1, 0, 0, view->cur_line, view->cur_index, 0, 1, 1 | |
); | |
size_t text_len = paste_buffer->len; | |
- ll = ledit_buffer_get_line(view->buffer, view->cur_line + 1); | |
+ ll = buffer_get_line(view->buffer, view->cur_line + 1); | |
if (ll->len == 0 && paste_buffer->text[text_len-1] == '\n') { | |
/* remove trailing newline if it exists and text is al… | |
text_len--; | |
t@@ -1194,13 +1194,13 @@ paste_normal_backwards(ledit_view *view, char *text, s… | |
(void)text; | |
(void)len; | |
if (!paste_buffer) { | |
- ledit_window_show_message(view->window, "Nothing to paste", -1… | |
+ window_show_message(view->window, "Nothing to paste", -1); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
if (paste_buffer_line_based) { | |
view_wipe_line_cursor_attrs(view, view->cur_line); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur… | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); | |
size_t brk = 0; | |
if (!hard_line_based) { | |
size_t tmp; | |
t@@ -1212,7 +1212,7 @@ paste_normal_backwards(ledit_view *view, char *text, siz… | |
"\n", 1, 0, 0, view->cur_line, view->cur_index, 0, 1, 1 | |
); | |
size_t text_len = paste_buffer->len; | |
- ll = ledit_buffer_get_line(view->buffer, view->cur_line); | |
+ ll = buffer_get_line(view->buffer, view->cur_line); | |
if (paste_buffer->text[text_len-1] == '\n') { | |
/* remove trailing newline if it exists */ | |
text_len--; | |
t@@ -1363,12 +1363,12 @@ backspace(ledit_view *view, char *text, size_t len) { | |
/* NOP */ | |
} else if (view->cur_index == 0) { | |
if (view->cur_line != 0) { | |
- ledit_line *l1 = ledit_buffer_get_line(view->buffer, v… | |
+ ledit_line *l1 = buffer_get_line(view->buffer, view->c… | |
delete_range(view, 0, 0, view->cur_line - 1, l1->len, … | |
} | |
} else { | |
- ledit_line *l = ledit_buffer_get_line(view->buffer, view->cur_… | |
- int i = ledit_line_prev_utf8(l, view->cur_index); | |
+ ledit_line *l = buffer_get_line(view->buffer, view->cur_line); | |
+ int i = line_prev_utf8(l, view->cur_index); | |
delete_range(view, 0, 0, view->cur_line, view->cur_index, view… | |
} | |
return (struct action){ACTION_NONE, NULL}; | |
t@@ -1378,7 +1378,7 @@ static struct action | |
delete_key(ledit_view *view, char *text, size_t len) { | |
(void)text; | |
(void)len; | |
- ledit_line *cur_line = ledit_buffer_get_line(view->buffer, view->cur_l… | |
+ ledit_line *cur_line = buffer_get_line(view->buffer, view->cur_line); | |
if (delete_selection(view)) { | |
/* NOP */ | |
} else if (view->cur_index == cur_line->len) { | |
t@@ -1386,7 +1386,7 @@ delete_key(ledit_view *view, char *text, size_t len) { | |
delete_range(view, 0, 0, view->cur_line, cur_line->len… | |
} | |
} else { | |
- int i = ledit_line_next_utf8(cur_line, view->cur_index); | |
+ int i = line_next_utf8(cur_line, view->cur_index); | |
delete_range(view, 0, 0, view->cur_line, view->cur_index, view… | |
} | |
/* FIXME: This was probably a mistake earlier, right? | |
t@@ -1411,7 +1411,7 @@ move_to_eol(ledit_view *view, char *text, size_t len) { | |
view, view->cur_line, view->cur_index, num - 1, | |
&new_line, &new_softline | |
); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, new_line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, new_line); | |
size_t end_index = ll->len; | |
if (!hard_line_based) { | |
size_t tmp; | |
t@@ -1461,7 +1461,7 @@ name(ledit_view *view, char *text, size_t len) { … | |
if (cb != NULL) { … | |
cb(view, new_line, new_real_index, KEY_MOTION_CHAR); … | |
} else { … | |
- if (view->mode == VISUAL) { \ | |
+ if (view->mode == VISUAL) { … | |
view_set_selection( … | |
view, … | |
view->sel.line1, view->sel.byte1, … | |
t@@ -1502,7 +1502,7 @@ move_cursor_left_right(ledit_view *view, int dir, int al… | |
if (num == 0) | |
num = 1; | |
- ledit_line *cur_line = ledit_buffer_get_line(view->buffer, view->cur_l… | |
+ ledit_line *cur_line = buffer_get_line(view->buffer, view->cur_line); | |
/* FIXME: standardize interface - num * dir or separately? */ | |
size_t last_index; | |
size_t new_index = view_move_cursor_visually( | |
t@@ -1693,7 +1693,7 @@ join_lines(ledit_view *view, char *text, size_t len) { | |
/* getting cur line again should be unnecessary, but | |
I'll just leave it in case I change the way lines | |
are stored later */ | |
- ll1 = ledit_buffer_get_line(view->buffer, cur_line); | |
+ ll1 = buffer_get_line(view->buffer, cur_line); | |
oldlen = ll1->len; | |
/* FIXME: truncate whitespace to one space */ | |
view_delete_range( | |
t@@ -1704,7 +1704,7 @@ join_lines(ledit_view *view, char *text, size_t len) { | |
cur_range.byte1 = view->cur_index; | |
cur_range.byte2 = view->cur_index = | |
view_get_legal_normal_pos(view, view->cur_line, oldlen); | |
- ledit_push_undo_delete( | |
+ undo_push_delete( | |
view->buffer->undo, buf, del_range, cur_range, | |
start_group, view->mode | |
); | |
t@@ -1833,46 +1833,46 @@ static struct action | |
enter_commandedit(ledit_view *view, char *text, size_t len) { | |
(void)text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text(view->window, ":", -1); | |
- ledit_window_set_bottom_bar_min_pos(view->window, 1); | |
- ledit_window_set_bottom_bar_cursor(view->window, 1); | |
+ window_set_bottom_bar_text(view->window, ":", -1); | |
+ window_set_bottom_bar_min_pos(view->window, 1); | |
+ window_set_bottom_bar_cursor(view->window, 1); | |
view->cur_command_type = CMD_EDIT; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 1); | |
+ window_set_bottom_bar_text_shown(view->window, 1); | |
discard_repetition_stack(); | |
- return (struct action){ACTION_GRABKEY, &ledit_command_key_handler}; | |
+ return (struct action){ACTION_GRABKEY, &command_key_handler}; | |
} | |
static struct action | |
enter_searchedit_forward(ledit_view *view, char *text, size_t len) { | |
(void)text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text(view->window, "/", -1); | |
- ledit_window_set_bottom_bar_min_pos(view->window, 1); | |
- ledit_window_set_bottom_bar_cursor(view->window, 1); | |
+ window_set_bottom_bar_text(view->window, "/", -1); | |
+ window_set_bottom_bar_min_pos(view->window, 1); | |
+ window_set_bottom_bar_cursor(view->window, 1); | |
view->cur_command_type = CMD_EDITSEARCH; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 1); | |
+ window_set_bottom_bar_text_shown(view->window, 1); | |
discard_repetition_stack(); | |
- return (struct action){ACTION_GRABKEY, &ledit_command_key_handler}; | |
+ return (struct action){ACTION_GRABKEY, &command_key_handler}; | |
} | |
static struct action | |
enter_searchedit_backward(ledit_view *view, char *text, size_t len) { | |
(void)text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text(view->window, "?", -1); | |
- ledit_window_set_bottom_bar_min_pos(view->window, 1); | |
- ledit_window_set_bottom_bar_cursor(view->window, 1); | |
+ window_set_bottom_bar_text(view->window, "?", -1); | |
+ window_set_bottom_bar_min_pos(view->window, 1); | |
+ window_set_bottom_bar_cursor(view->window, 1); | |
view->cur_command_type = CMD_EDITSEARCHB; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 1); | |
+ window_set_bottom_bar_text_shown(view->window, 1); | |
discard_repetition_stack(); | |
- return (struct action){ACTION_GRABKEY, &ledit_command_key_handler}; | |
+ return (struct action){ACTION_GRABKEY, &command_key_handler}; | |
} | |
/* FIXME: differentiate between jumping to line and index like nvi */ | |
static struct action | |
mark_line_cb(ledit_view *view, char *text, size_t len) { | |
grab_char_cb = NULL; | |
- ledit_buffer_insert_mark( | |
+ buffer_insert_mark( | |
view->buffer, text, len, view->cur_line, view->cur_index | |
); | |
return (struct action){ACTION_NONE, NULL}; | |
t@@ -1896,11 +1896,11 @@ jump_to_mark_cb(ledit_view *view, char *text, size_t l… | |
ledit_buffer_mark *m = &marklist->marks[i]; | |
if (m->line >= view->lines_num) { | |
line = view->lines_num - 1; | |
- ll = ledit_buffer_get_line(view->buffer, line); | |
+ ll = buffer_get_line(view->buffer, line); | |
index = ll->len; | |
} else { | |
line = m->line; | |
- ll = ledit_buffer_get_line(view->buffer, m->li… | |
+ ll = buffer_get_line(view->buffer, m->line); | |
if (m->byte >= ll->len) | |
index = ll->len; | |
else | |
t@@ -1983,7 +1983,7 @@ show_line(ledit_view *view, char *text, size_t len) { | |
int textlen = snprintf(NULL, 0, "Line %zu of %zu", view->cur_line + 1,… | |
char *str = ledit_malloc(textlen + 1); | |
snprintf(str, textlen + 1, "Line %zu of %zu", view->cur_line + 1, view… | |
- ledit_window_show_message(view->window, str, textlen); | |
+ window_show_message(view->window, str, textlen); | |
discard_repetition_stack(); | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -2101,7 +2101,7 @@ name##_cb(ledit_view *view, char *text, size_t len) { … | |
return err_invalid_key(view); … | |
if (num == 0) … | |
num = 1; … | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->cur_line); … | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->cur_line); … | |
size_t new_index = view->cur_index; … | |
int ret = -1; … | |
for (int i = 0; i < num; i++) { … | |
t@@ -2118,7 +2118,7 @@ name##_cb(ledit_view *view, char *text, size_t len) { … | |
); … | |
cb(view, view->cur_line, new_index, KEY_MOTION_CHAR); … | |
} else { … | |
- if (view->mode == VISUAL) { \ | |
+ if (view->mode == VISUAL) { … | |
view->cur_index = cur_funcv( … | |
view, view->cur_line, new_index, 1 … | |
); … | |
t@@ -2145,7 +2145,7 @@ name##_cb(ledit_view *view, char *text, size_t len) { … | |
… | |
static struct action … | |
name(ledit_view *view, char *text, size_t len) { … | |
- (void)view; … | |
+ (void)view; … | |
(void)text; … | |
(void)len; … | |
grab_char_cb = &name##_cb; … | |
t@@ -2215,7 +2215,7 @@ toggle_hard_line_based(ledit_view *view, char *text, siz… | |
int num = get_key_repeat(); | |
if (num != 0) | |
return err_invalid_key(view); | |
- ledit_buffer_set_hard_line_based(view->buffer, !view->buffer->hard_lin… | |
+ buffer_set_hard_line_based(view->buffer, !view->buffer->hard_line_base… | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
t@@ -2295,7 +2295,7 @@ basic_key_handler(ledit_view *view, XEvent *event, int l… | |
re->lang_index = lang_index; | |
/* FIXME: only hide when actually necessary */ | |
- ledit_window_hide_message(view->window); | |
+ window_hide_message(view->window); | |
int found = 0; | |
struct action act = handle_key(view, buf, (size_t)n, sym, key_state, l… | |
diff --git a/keys_command.c b/keys_command.c | |
t@@ -47,7 +47,7 @@ handle_write(ledit_view *view, char *cmd, size_t l1, size_t … | |
/* FIXME: Implement properly; handle error */ | |
char *errstr; | |
if (view->buffer->filename) | |
- ledit_buffer_write_to_file(view->buffer, view->buffer->filenam… | |
+ buffer_write_to_file(view->buffer, view->buffer->filename, &er… | |
return 0; | |
} | |
t@@ -68,7 +68,7 @@ create_view(ledit_view *view, char *cmd, size_t l1, size_t l… | |
(void)cmd; | |
(void)l1; | |
(void)l2; | |
- ledit_buffer_add_view(view->buffer, view->theme, view->mode, view->cur… | |
+ buffer_add_view(view->buffer, view->theme, view->mode, view->cur_line,… | |
return 0; | |
} | |
t@@ -79,7 +79,7 @@ close_view(ledit_view *view, char *cmd, size_t l1, size_t l2… | |
(void)l2; | |
/* FIXME: This will lead to problems if I add something that | |
requires access to the view after the command is handled. */ | |
- ledit_buffer_remove_view(view->buffer, view); | |
+ buffer_remove_view(view->buffer, view); | |
if (view->buffer->views_num == 0) { | |
ledit_cleanup(); | |
exit(0); | |
t@@ -264,8 +264,8 @@ substitute_no_all(ledit_view *view, char *key_text, size_t… | |
static int | |
edit_insert_text(ledit_view *view, char *key_text, size_t len) { | |
/* FIXME: overflow */ | |
- ledit_window_insert_bottom_bar_text(view->window, key_text, len); | |
- ledit_window_set_bottom_bar_cursor( | |
+ window_insert_bottom_bar_text(view->window, key_text, len); | |
+ window_set_bottom_bar_cursor( | |
view->window, ledit_window_get_bottom_bar_cursor(view->window) + l… | |
); | |
return 1; | |
t@@ -275,7 +275,7 @@ static int | |
edit_cursor_to_end(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_bottom_bar_cursor_to_end(view->window); | |
+ window_bottom_bar_cursor_to_end(view->window); | |
return 1; | |
} | |
t@@ -283,7 +283,7 @@ static int | |
edit_cursor_to_beginning(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_bottom_bar_cursor_to_beginning(view->window); | |
+ window_bottom_bar_cursor_to_beginning(view->window); | |
return 1; | |
} | |
t@@ -291,7 +291,7 @@ static int | |
edit_cursor_left(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_move_bottom_bar_cursor(view->window, -1); | |
+ window_move_bottom_bar_cursor(view->window, -1); | |
return 1; | |
} | |
t@@ -299,7 +299,7 @@ static int | |
edit_cursor_right(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_move_bottom_bar_cursor(view->window, 1); | |
+ window_move_bottom_bar_cursor(view->window, 1); | |
return 1; | |
} | |
t@@ -307,7 +307,7 @@ static int | |
edit_backspace(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_delete_bottom_bar_char(view->window, -1); | |
+ window_delete_bottom_bar_char(view->window, -1); | |
return 1; | |
} | |
t@@ -315,7 +315,7 @@ static int | |
edit_delete(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_delete_bottom_bar_char(view->window, 1); | |
+ window_delete_bottom_bar_char(view->window, 1); | |
return 1; | |
} | |
t@@ -323,9 +323,9 @@ static int | |
edit_submit(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 0); | |
+ window_set_bottom_bar_text_shown(view->window, 0); | |
/* FIXME: this is hacky */ | |
- return handle_cmd(view, ledit_window_get_bottom_bar_text(view->window)… | |
+ return handle_cmd(view, window_get_bottom_bar_text(view->window) + 1, … | |
} | |
/* FIXME: support visual mode, i.e. change selection to new place? */ | |
t@@ -335,7 +335,7 @@ search_next(ledit_view *view) { | |
enum ledit_search_state ret = ledit_search_next(view, &view->cur_line,… | |
view_set_line_cursor_attrs(view, view->cur_line, view->cur_index); | |
if (ret != SEARCH_NORMAL) | |
- ledit_window_show_message(view->window, ledit_search_state_to_… | |
+ window_show_message(view->window, search_state_to_str(ret), -1… | |
} | |
void | |
t@@ -344,15 +344,15 @@ search_prev(ledit_view *view) { | |
enum ledit_search_state ret = ledit_search_prev(view, &view->cur_line,… | |
view_set_line_cursor_attrs(view, view->cur_line, view->cur_index); | |
if (ret != SEARCH_NORMAL) | |
- ledit_window_show_message(view->window, ledit_search_state_to_… | |
+ window_show_message(view->window, search_state_to_str(ret), -1… | |
} | |
static int | |
editsearch_submit(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 0); | |
- ledit_set_search_forward(ledit_window_get_bottom_bar_text(view->window… | |
+ window_set_bottom_bar_text_shown(view->window, 0); | |
+ set_search_forward(window_get_bottom_bar_text(view->window) + 1); | |
search_next(view); | |
return 0; | |
} | |
t@@ -361,8 +361,8 @@ static int | |
editsearchb_submit(ledit_view *view, char *key_text, size_t len) { | |
(void)key_text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 0); | |
- ledit_set_search_backward(ledit_window_get_bottom_bar_text(view->windo… | |
+ window_set_bottom_bar_text_shown(view->window, 0); | |
+ set_search_backward(window_get_bottom_bar_text(view->window) + 1); | |
search_next(view); | |
return 0; | |
} | |
t@@ -372,12 +372,12 @@ edit_discard(ledit_view *view, char *key_text, size_t le… | |
(void)view; | |
(void)key_text; | |
(void)len; | |
- ledit_window_set_bottom_bar_text_shown(view->window, 0); | |
+ window_set_bottom_bar_text_shown(view->window, 0); | |
return 0; | |
} | |
struct action | |
-ledit_command_key_handler(ledit_view *view, XEvent *event, int lang_index) { | |
+command_key_handler(ledit_view *view, XEvent *event, int lang_index) { | |
char buf[64]; | |
KeySym sym; | |
int n; | |
t@@ -404,7 +404,7 @@ ledit_command_key_handler(ledit_view *view, XEvent *event,… | |
} | |
} | |
if (grabkey) | |
- return (struct action){ACTION_GRABKEY, &ledit_command_key_hand… | |
+ return (struct action){ACTION_GRABKEY, &command_key_handler}; | |
else | |
return (struct action){ACTION_NONE, NULL}; | |
} | |
diff --git a/keys_command.h b/keys_command.h | |
t@@ -2,4 +2,4 @@ | |
void search_next(ledit_view *view); | |
void search_prev(ledit_view *view); | |
-struct action ledit_command_key_handler(ledit_view *view, XEvent *event, int l… | |
+struct action command_key_handler(ledit_view *view, XEvent *event, int lang_in… | |
diff --git a/ledit.c b/ledit.c | |
t@@ -1,3 +1,6 @@ | |
+/* FIXME: On large files, expose event takes a long time for some reason | |
+ -> but somehow only sometimes... */ | |
+/* FIXME: generally optimize redrawing */ | |
/* FIXME: Just use int for everything? size_t just doesn't seem to be worth it… | |
/* FIXME: Make scrolling more smooth */ | |
/* FIXME: Document that everything is assumed to be utf8 */ | |
t@@ -119,23 +122,23 @@ mainloop(void) { | |
view->redraw = 1; | |
break; | |
case ConfigureNotify: | |
- ledit_window_register_resize(view->window, &ev… | |
+ window_register_resize(view->window, &event); | |
break; | |
case ButtonPress: | |
- ledit_window_register_button_press(view->windo… | |
+ window_register_button_press(view->window, &ev… | |
break; | |
case ButtonRelease: | |
- ledit_window_button_release(view->window, &eve… | |
+ window_button_release(view->window, &event); | |
break; | |
case MotionNotify: | |
- ledit_window_register_motion(window, &event); | |
+ window_register_motion(window, &event); | |
break; | |
case KeyPress: | |
key_press(view, &event); | |
break; | |
case ClientMessage: | |
if ((Atom)event.xclient.data.l[0] == view->win… | |
- ledit_buffer_remove_view(buffer, view); | |
+ buffer_remove_view(buffer, view); | |
if (buffer->views_num == 0) | |
running = 0; | |
} | |
t@@ -143,7 +146,7 @@ mainloop(void) { | |
case SelectionNotify: | |
case PropertyNotify: | |
case SelectionRequest: | |
- ledit_window_clipboard_event(view->window, &ev… | |
+ window_clipboard_event(view->window, &event); | |
break; | |
default: | |
break; | |
t@@ -151,7 +154,7 @@ mainloop(void) { | |
}; | |
for (size_t i = 0; i < buffer->views_num; i++) { | |
- ledit_window_handle_filtered_events(buffer->views[i]->… | |
+ window_handle_filtered_events(buffer->views[i]->window… | |
} | |
if (change_kbd) { | |
t@@ -229,12 +232,12 @@ setup(int argc, char *argv[]) { | |
common.depth = DefaultDepth(common.dpy, common.screen); | |
common.cm = DefaultColormap(common.dpy, common.screen); | |
- theme = ledit_theme_create(&common); | |
- buffer = ledit_buffer_create(&common); | |
+ theme = theme_create(&common); | |
+ buffer = buffer_create(&common); | |
/* FIXME: Support multiple buffers/files */ | |
if (argc > 1) { | |
char *load_err; | |
- if (ledit_buffer_load_file(buffer, argv[1], 0, &load_err)) { | |
+ if (buffer_load_file(buffer, argv[1], 0, &load_err)) { | |
fprintf(stderr, "Error opening file '%s': %s\n", argv[… | |
ledit_cleanup(); | |
exit(1); | |
t@@ -242,7 +245,7 @@ setup(int argc, char *argv[]) { | |
/* FIXME: encapsulate */ | |
buffer->filename = ledit_strdup(argv[1]); | |
} | |
- ledit_buffer_add_view(buffer, theme, NORMAL, 0, 0); | |
+ buffer_add_view(buffer, theme, NORMAL, 0, 0); | |
/* FIXME: don't access view directly here */ | |
ledit_view *view = buffer->views[0]; | |
view_set_line_cursor_attrs(view, view->cur_line, view->cur_index); | |
t@@ -253,12 +256,12 @@ setup(int argc, char *argv[]) { | |
void | |
ledit_cleanup(void) { | |
/* FIXME: check for other things to clean up */ | |
- ledit_search_cleanup(); | |
+ search_cleanup(); | |
basic_key_cleanup(); | |
if (buffer) | |
- ledit_buffer_destroy(buffer); | |
+ buffer_destroy(buffer); | |
if (theme) | |
- ledit_theme_destroy(&common, theme); | |
+ theme_destroy(&common, theme); | |
XCloseDisplay(common.dpy); | |
} | |
diff --git a/search.c b/search.c | |
t@@ -26,19 +26,19 @@ enum { | |
} last_dir = FORWARD; | |
void | |
-ledit_search_cleanup(void) { | |
+search_cleanup(void) { | |
free(last_search); | |
} | |
void | |
-ledit_set_search_forward(char *pattern) { | |
+set_search_forward(char *pattern) { | |
last_dir = FORWARD; | |
free(last_search); | |
last_search = ledit_strdup(pattern); | |
} | |
void | |
-ledit_set_search_backward(char *pattern) { | |
+set_search_backward(char *pattern) { | |
last_dir = BACKWARD; | |
free(last_search); | |
last_search = ledit_strdup(pattern); | |
t@@ -55,16 +55,16 @@ search_forward(ledit_view *view, size_t *line_ret, size_t … | |
note: since the string ends with '\0', this is always valid */ | |
size_t byte = view->cur_index + 1; | |
char *res; | |
- ledit_line *lline = ledit_buffer_get_line(view->buffer, line); | |
- ledit_buffer_normalize_line(lline); | |
+ ledit_line *lline = buffer_get_line(view->buffer, line); | |
+ buffer_normalize_line(lline); | |
if ((res = strstr(lline->text + byte, last_search)) != NULL) { | |
*line_ret = line; | |
*byte_ret = (size_t)(res - lline->text); | |
return SEARCH_NORMAL; | |
} | |
for (size_t i = line + 1; i < view->lines_num; i++) { | |
- lline = ledit_buffer_get_line(view->buffer, i); | |
- ledit_buffer_normalize_line(lline); | |
+ lline = buffer_get_line(view->buffer, i); | |
+ buffer_normalize_line(lline); | |
if ((res = strstr(lline->text, last_search)) != NULL) { | |
*line_ret = i; | |
*byte_ret = (size_t)(res - lline->text); | |
t@@ -72,16 +72,16 @@ search_forward(ledit_view *view, size_t *line_ret, size_t … | |
} | |
} | |
for (size_t i = 0; i < line; i++) { | |
- lline = ledit_buffer_get_line(view->buffer, i); | |
- ledit_buffer_normalize_line(lline); | |
+ lline = buffer_get_line(view->buffer, i); | |
+ buffer_normalize_line(lline); | |
if ((res = strstr(lline->text, last_search)) != NULL) { | |
*line_ret = i; | |
*byte_ret = (size_t)(res - lline->text); | |
return SEARCH_WRAPPED; | |
} | |
} | |
- lline = ledit_buffer_get_line(view->buffer, line); | |
- ledit_buffer_normalize_line(lline); | |
+ lline = buffer_get_line(view->buffer, line); | |
+ buffer_normalize_line(lline); | |
if ((res = strstr(lline->text, last_search)) != NULL) { | |
*line_ret = line; | |
*byte_ret = (size_t)(res - lline->text); | |
t@@ -100,8 +100,8 @@ search_backward(ledit_view *view, size_t *line_ret, size_t… | |
return SEARCH_NO_PATTERN; | |
size_t line = view->cur_line; | |
size_t byte = view->cur_index; | |
- ledit_line *lline = ledit_buffer_get_line(view->buffer, line); | |
- ledit_buffer_normalize_line(lline); | |
+ ledit_line *lline = buffer_get_line(view->buffer, line); | |
+ buffer_normalize_line(lline); | |
char *last = NULL, *res = lline->text; | |
while ((res = strstr(res, last_search)) != NULL && res < lline->text +… | |
last = res; | |
t@@ -114,8 +114,8 @@ search_backward(ledit_view *view, size_t *line_ret, size_t… | |
return SEARCH_NORMAL; | |
} | |
for (size_t i = line; i > 0; i--) { | |
- lline = ledit_buffer_get_line(view->buffer, i-1); | |
- ledit_buffer_normalize_line(lline); | |
+ lline = buffer_get_line(view->buffer, i-1); | |
+ buffer_normalize_line(lline); | |
res = lline->text; | |
while ((res = strstr(res, last_search)) != NULL) { | |
last = res; | |
t@@ -128,8 +128,8 @@ search_backward(ledit_view *view, size_t *line_ret, size_t… | |
} | |
} | |
for (size_t i = view->lines_num - 1; i > line; i--) { | |
- lline = ledit_buffer_get_line(view->buffer, i); | |
- ledit_buffer_normalize_line(lline); | |
+ lline = buffer_get_line(view->buffer, i); | |
+ buffer_normalize_line(lline); | |
res = lline->text; | |
while ((res = strstr(res, last_search)) != NULL) { | |
last = res; | |
t@@ -141,8 +141,8 @@ search_backward(ledit_view *view, size_t *line_ret, size_t… | |
return SEARCH_WRAPPED; | |
} | |
} | |
- lline = ledit_buffer_get_line(view->buffer, line); | |
- ledit_buffer_normalize_line(lline); | |
+ lline = buffer_get_line(view->buffer, line); | |
+ buffer_normalize_line(lline); | |
res = lline->text + byte; | |
while ((res = strstr(res, last_search)) != NULL) { | |
last = res; | |
t@@ -173,7 +173,7 @@ ledit_search_prev(ledit_view *view, size_t *line_ret, size… | |
} | |
char * | |
-ledit_search_state_to_str(enum ledit_search_state state) { | |
+search_state_to_str(enum ledit_search_state state) { | |
switch (state) { | |
case SEARCH_WRAPPED: | |
return "Search wrapped"; | |
diff --git a/search.h b/search.h | |
t@@ -5,9 +5,9 @@ enum ledit_search_state { | |
SEARCH_NO_PATTERN | |
}; | |
-void ledit_search_cleanup(void); | |
-void ledit_set_search_forward(char *pattern); | |
-void ledit_set_search_backward(char *pattern); | |
+void search_cleanup(void); | |
+void set_search_forward(char *pattern); | |
+void set_search_backward(char *pattern); | |
enum ledit_search_state ledit_search_next(ledit_view *view, size_t *line_ret, … | |
enum ledit_search_state ledit_search_prev(ledit_view *view, size_t *line_ret, … | |
-char *ledit_search_state_to_str(enum ledit_search_state state); | |
+char *search_state_to_str(enum ledit_search_state state); | |
diff --git a/theme.c b/theme.c | |
t@@ -9,7 +9,7 @@ | |
#include "theme_config.h" | |
ledit_theme * | |
-ledit_theme_create(ledit_common *common) { | |
+theme_create(ledit_common *common) { | |
ledit_theme *theme = ledit_malloc(sizeof(ledit_theme)); | |
theme->scrollbar_width = SCROLLBAR_WIDTH; | |
theme->scrollbar_step = SCROLLBAR_STEP; | |
t@@ -26,7 +26,7 @@ ledit_theme_create(ledit_common *common) { | |
} | |
void | |
-ledit_theme_destroy(ledit_common *common, ledit_theme *theme) { | |
+theme_destroy(ledit_common *common, ledit_theme *theme) { | |
XftColorFree(common->dpy, common->vis, common->cm, &theme->text_fg); | |
XftColorFree(common->dpy, common->vis, common->cm, &theme->text_bg); | |
XftColorFree(common->dpy, common->vis, common->cm, &theme->scrollbar_f… | |
diff --git a/theme.h b/theme.h | |
t@@ -12,5 +12,5 @@ typedef struct { | |
const char *scrollbar_bg_hex; | |
} ledit_theme; | |
-ledit_theme *ledit_theme_create(ledit_common *common); | |
-void ledit_theme_destroy(ledit_common *common, ledit_theme *theme); | |
+ledit_theme *theme_create(ledit_common *common); | |
+void theme_destroy(ledit_common *common, ledit_theme *theme); | |
diff --git a/undo.c b/undo.c | |
t@@ -40,16 +40,16 @@ typedef struct { | |
int mode_group; | |
} undo_elem; | |
-struct ledit_undo_stack { | |
+struct undo_stack { | |
/* FIXME: size_t? */ | |
int len, cur, cap; | |
undo_elem *stack; | |
int change_mode_group; | |
}; | |
-ledit_undo_stack * | |
-ledit_undo_stack_create(void) { | |
- ledit_undo_stack *undo = ledit_malloc(sizeof(ledit_undo_stack)); | |
+undo_stack * | |
+undo_stack_create(void) { | |
+ undo_stack *undo = ledit_malloc(sizeof(undo_stack)); | |
undo->len = undo->cap = 0; | |
undo->cur = -1; | |
undo->stack = NULL; | |
t@@ -58,14 +58,14 @@ ledit_undo_stack_create(void) { | |
} | |
void | |
-ledit_undo_stack_destroy(ledit_undo_stack *undo) { | |
+undo_stack_destroy(undo_stack *undo) { | |
free(undo->stack); | |
free(undo); | |
} | |
/* FIXME: resize text buffers when they aren't needed anymore */ | |
static undo_elem * | |
-push_undo_elem(ledit_undo_stack *undo) { | |
+push_undo_elem(undo_stack *undo) { | |
assert(undo->cur >= -1); | |
undo->cur++; | |
undo->len = undo->cur + 1; | |
t@@ -82,20 +82,20 @@ push_undo_elem(ledit_undo_stack *undo) { | |
} | |
static undo_elem * | |
-peek_undo_elem(ledit_undo_stack *undo) { | |
+peek_undo_elem(undo_stack *undo) { | |
if (undo->cur < 0) | |
return NULL; | |
return &undo->stack[undo->cur]; | |
} | |
void | |
-ledit_change_mode_group(ledit_undo_stack *undo) { | |
+undo_change_mode_group(undo_stack *undo) { | |
undo->change_mode_group = 1; | |
} | |
static void | |
push_undo( | |
- ledit_undo_stack *undo, txtbuf *text, | |
+ undo_stack *undo, txtbuf *text, | |
ledit_range insert_range, | |
ledit_range cursor_range, | |
int start_group, | |
t@@ -118,8 +118,8 @@ push_undo( | |
} | |
void | |
-ledit_push_undo_insert( | |
- ledit_undo_stack *undo, txtbuf *text, | |
+undo_push_insert( | |
+ undo_stack *undo, txtbuf *text, | |
ledit_range insert_range, ledit_range cursor_range, | |
int start_group, enum ledit_mode mode) { | |
push_undo( | |
t@@ -129,8 +129,8 @@ ledit_push_undo_insert( | |
} | |
void | |
-ledit_push_undo_delete( | |
- ledit_undo_stack *undo, txtbuf *text, | |
+undo_push_delete( | |
+ undo_stack *undo, txtbuf *text, | |
ledit_range insert_range, ledit_range cursor_range, | |
int start_group, enum ledit_mode mode) { | |
push_undo( | |
t@@ -139,8 +139,8 @@ ledit_push_undo_delete( | |
); | |
} | |
-ledit_undo_status | |
-ledit_undo(ledit_undo_stack *undo, enum ledit_mode mode, void *callback_data, | |
+undo_status | |
+ledit_undo(undo_stack *undo, enum ledit_mode mode, void *callback_data, | |
undo_insert_callback insert_cb, undo_delete_callback delete_cb, | |
size_t *cur_line_ret, size_t *cur_index_ret, size_t *min_line_ret) { | |
undo_elem *e; | |
t@@ -209,8 +209,8 @@ ledit_undo(ledit_undo_stack *undo, enum ledit_mode mode, v… | |
return UNDO_NORMAL; | |
} | |
-ledit_undo_status | |
-ledit_redo(ledit_undo_stack *undo, enum ledit_mode mode, void *callback_data, | |
+undo_status | |
+ledit_redo(undo_stack *undo, enum ledit_mode mode, void *callback_data, | |
undo_insert_callback insert_cb, undo_delete_callback delete_cb, | |
size_t *cur_line_ret, size_t *cur_index_ret, size_t *min_line_ret) { | |
undo_elem *e; | |
diff --git a/undo.h b/undo.h | |
t@@ -2,32 +2,32 @@ typedef enum { | |
UNDO_NORMAL, | |
UNDO_OLDEST_CHANGE, | |
UNDO_NEWEST_CHANGE | |
-} ledit_undo_status; | |
+} undo_status; | |
-typedef struct ledit_undo_stack ledit_undo_stack; | |
+typedef struct undo_stack undo_stack; | |
typedef void (*undo_insert_callback)(void *, size_t, size_t, char *, size_t); | |
typedef void (*undo_delete_callback)(void *, size_t, size_t, size_t, size_t); | |
-ledit_undo_stack *ledit_undo_stack_create(void); | |
-void ledit_undo_stack_destroy(ledit_undo_stack *undo); | |
-void ledit_change_mode_group(ledit_undo_stack *undo); | |
-void ledit_push_undo_insert( | |
- ledit_undo_stack *undo, txtbuf *text, | |
+undo_stack *undo_stack_create(void); | |
+void undo_stack_destroy(undo_stack *undo); | |
+void undo_change_mode_group(undo_stack *undo); | |
+void undo_push_insert( | |
+ undo_stack *undo, txtbuf *text, | |
ledit_range insert_range, ledit_range cursor_range, | |
int start_group, enum ledit_mode mode | |
); | |
-void ledit_push_undo_delete( | |
- ledit_undo_stack *undo, txtbuf *text, | |
+void undo_push_delete( | |
+ undo_stack *undo, txtbuf *text, | |
ledit_range insert_range, ledit_range cursor_range, | |
int start_group, enum ledit_mode mode | |
); | |
-ledit_undo_status ledit_undo( | |
- ledit_undo_stack *undo, enum ledit_mode mode, | |
+undo_status ledit_undo( | |
+ undo_stack *undo, enum ledit_mode mode, | |
void *callback_data, undo_insert_callback insert_cb, undo_delete_callback … | |
size_t *cur_line_ret, size_t *cur_index_ret, size_t *min_line_ret | |
); | |
-ledit_undo_status ledit_redo( | |
- ledit_undo_stack *undo, enum ledit_mode mode, | |
+undo_status ledit_redo( | |
+ undo_stack *undo, enum ledit_mode mode, | |
void *callback_data, undo_insert_callback insert_cb, undo_delete_callback … | |
size_t *cur_line_ret, size_t *cur_index_ret, size_t *min_line_ret | |
); | |
diff --git a/util.c b/util.c | |
t@@ -13,7 +13,7 @@ | |
#include "util.h" | |
ledit_draw * | |
-ledit_draw_create(ledit_window *window, int w, int h) { | |
+draw_create(ledit_window *window, int w, int h) { | |
ledit_draw *draw = ledit_malloc(sizeof(ledit_draw)); | |
draw->w = w; | |
draw->h = h; | |
t@@ -27,7 +27,7 @@ ledit_draw_create(ledit_window *window, int w, int h) { | |
} | |
void | |
-ledit_draw_grow(ledit_window *window, ledit_draw *draw, int w, int h) { | |
+draw_grow(ledit_window *window, ledit_draw *draw, int w, int h) { | |
/* FIXME: sensible default pixmap sizes here */ | |
/* FIXME: maybe shrink the pixmaps at some point */ | |
if (draw->w < w || draw->h < h) { | |
t@@ -43,7 +43,7 @@ ledit_draw_grow(ledit_window *window, ledit_draw *draw, int … | |
} | |
void | |
-ledit_draw_destroy(ledit_window *window, ledit_draw *draw) { | |
+draw_destroy(ledit_window *window, ledit_draw *draw) { | |
XFreePixmap(window->common->dpy, draw->pixmap); | |
XftDrawDestroy(draw->xftdraw); | |
free(draw); | |
diff --git a/util.h b/util.h | |
t@@ -6,6 +6,6 @@ typedef struct { | |
int w, h; | |
} ledit_draw; | |
-ledit_draw *ledit_draw_create(ledit_window *window, int w, int h); | |
-void ledit_draw_grow(ledit_window *window, ledit_draw *draw, int w, int h); | |
-void ledit_draw_destroy(ledit_window *window, ledit_draw *draw); | |
+ledit_draw *draw_create(ledit_window *window, int w, int h); | |
+void draw_grow(ledit_window *window, ledit_draw *draw, int w, int h); | |
+void draw_destroy(ledit_window *window, ledit_draw *draw); | |
diff --git a/view.c b/view.c | |
t@@ -71,8 +71,8 @@ static void invalidate_layout_line_helper(void *data, size_t… | |
void | |
view_set_mode(ledit_view *view, enum ledit_mode mode) { | |
view->mode = mode; | |
- ledit_change_mode_group(view->buffer->undo); | |
- ledit_window_set_mode(view->window, mode); | |
+ undo_change_mode_group(view->buffer->undo); | |
+ window_set_mode(view->window, mode); | |
} | |
ledit_view * | |
t@@ -88,13 +88,13 @@ view_create(ledit_buffer *buffer, ledit_theme *theme, enum… | |
ledit_view *view = ledit_malloc(sizeof(ledit_view)); | |
view->mode = mode; | |
view->buffer = buffer; | |
- view->window = ledit_window_create(buffer->common, theme, mode); | |
+ view->window = window_create(buffer->common, theme, mode); | |
view->theme = theme; | |
view->cache = cache_create(buffer->common->dpy); | |
view->cur_action = (struct action){ACTION_NONE, NULL}; | |
- ledit_window_set_scroll_callback(view->window, &view_scroll_handler, v… | |
- ledit_window_set_button_callback(view->window, &view_button_handler, v… | |
- ledit_window_set_resize_callback(view->window, &view_resize_textview, … | |
+ window_set_scroll_callback(view->window, &view_scroll_handler, view); | |
+ window_set_button_callback(view->window, &view_button_handler, view); | |
+ window_set_resize_callback(view->window, &view_resize_textview, view); | |
view->lines = ledit_reallocarray(NULL, buffer->lines_cap, sizeof(ledit… | |
view->lines_cap = buffer->lines_cap; | |
t@@ -235,7 +235,7 @@ view_notify_delete_lines(ledit_view *view, size_t index1, … | |
void | |
view_destroy(ledit_view *view) { | |
cache_destroy(view->cache); | |
- ledit_window_destroy(view->window); | |
+ window_destroy(view->window); | |
free(view->lines); | |
free(view); | |
} | |
t@@ -269,7 +269,7 @@ get_pango_attributes(ledit_view *view, size_t start_byte, … | |
/* this takes layout directly to possibly avoid infinite recursion */ | |
static void | |
set_line_layout_attrs(ledit_view *view, size_t line, PangoLayout *layout) { | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
ledit_view_line *vl = view_get_line(view, line); | |
PangoAttrList *list = NULL; | |
if (view->sel_valid) { | |
t@@ -375,7 +375,7 @@ view_render_line(ledit_view *view, size_t line_index) { | |
static void | |
init_line(ledit_view *view, ledit_view_line *line) { | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
line->view = view; | |
line->w = text_w; | |
line->h = 0; | |
t@@ -429,7 +429,7 @@ view_recalc_line(ledit_view *view, size_t line) { | |
set_pango_text_and_highlight(view, line); | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
/* if height changed, set height of current line | |
* and adjust offsets of all lines following it */ | |
if (l->h_dirty) { | |
t@@ -449,7 +449,7 @@ view_recalc_line(ledit_view *view, size_t line) { | |
l->y_offset + l->h >= view->display_offset) { | |
view->redraw = 1; | |
} | |
- ledit_window_set_scroll_max(view->window, view->total_height); | |
+ window_set_scroll_max(view->window, view->total_height); | |
view_scroll(view, view->display_offset); | |
} | |
t@@ -459,7 +459,7 @@ void | |
view_recalc_from_line(ledit_view *view, size_t line) { | |
ledit_view_line *l = view_get_line(view, line); | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
long off = l->y_offset; | |
if (off < view->display_offset + text_h) | |
view->redraw = 1; | |
t@@ -472,7 +472,7 @@ view_recalc_from_line(ledit_view *view, size_t line) { | |
off += l->h; | |
} | |
view->total_height = off; | |
- ledit_window_set_scroll_max(view->window, view->total_height); | |
+ window_set_scroll_max(view->window, view->total_height); | |
view_scroll(view, view->display_offset); | |
} | |
t@@ -487,7 +487,7 @@ view_recalc_all_lines(ledit_view *view) { | |
int | |
view_line_visible(ledit_view *view, size_t index) { | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
ledit_view_line *l = view_get_line(view, index); | |
return l->y_offset < view->display_offset + text_h && | |
l->y_offset + l->h > view->display_offset; | |
t@@ -498,7 +498,7 @@ view_line_visible(ledit_view *view, size_t index) { | |
size_t | |
view_next_cursor_pos(ledit_view *view, size_t line, size_t byte, int num) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
size_t c = line_byte_to_char(ll, byte); | |
size_t cur_byte = byte; | |
PangoLayout *layout = get_pango_layout(view, line); | |
t@@ -507,11 +507,11 @@ view_next_cursor_pos(ledit_view *view, size_t line, size… | |
if (num < 0) | |
return 0; /* FIXME: error */ | |
for (size_t i = 0; i < (size_t)num; i++) { | |
- cur_byte = ledit_line_next_utf8(ll, byte); | |
+ cur_byte = line_next_utf8(ll, byte); | |
for (c++; c < (size_t)nattrs; c++) { | |
if (attrs[c].is_cursor_position) | |
break; | |
- cur_byte = ledit_line_next_utf8(ll, cur_byte); | |
+ cur_byte = line_next_utf8(ll, cur_byte); | |
} | |
if (cur_byte >= ll->len) | |
break; | |
t@@ -522,7 +522,7 @@ view_next_cursor_pos(ledit_view *view, size_t line, size_t… | |
size_t | |
view_prev_cursor_pos(ledit_view *view, size_t line, size_t byte, int num) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
size_t c = line_byte_to_char(ll, byte); | |
size_t cur_byte = byte; | |
PangoLayout *layout = get_pango_layout(view, line); | |
t@@ -531,11 +531,11 @@ view_prev_cursor_pos(ledit_view *view, size_t line, size… | |
if (num < 0) | |
return 0; /* FIXME: error */ | |
for (int i = 0; i < num; i++) { | |
- cur_byte = ledit_line_prev_utf8(ll, cur_byte); | |
+ cur_byte = line_prev_utf8(ll, cur_byte); | |
for (; c > 0; c--) { | |
if (attrs[c-1].is_cursor_position) | |
break; | |
- cur_byte = ledit_line_prev_utf8(ll, cur_byte); | |
+ cur_byte = line_prev_utf8(ll, cur_byte); | |
} | |
if (cur_byte <= 0) | |
break; | |
t@@ -549,8 +549,8 @@ line_next_word( | |
size_t line, size_t byte, size_t char_index, int wrapped_line, | |
size_t *char_ret, size_t *byte_ret, size_t *real_byte_ret) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
- int cur_byte = wrapped_line ? byte : ledit_line_next_utf8(ll, byte); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
+ int cur_byte = wrapped_line ? byte : line_next_utf8(ll, byte); | |
PangoLayout *layout = get_pango_layout(view, line); | |
const PangoLogAttr *attrs = | |
pango_layout_get_log_attrs_readonly(layout, &nattrs); | |
t@@ -561,7 +561,7 @@ line_next_word( | |
*byte_ret = cur_byte; | |
return 0; | |
} | |
- cur_byte = ledit_line_next_utf8(ll, cur_byte); | |
+ cur_byte = line_next_utf8(ll, cur_byte); | |
} | |
return -1; | |
} | |
t@@ -572,8 +572,8 @@ line_prev_word( | |
size_t line, size_t byte, size_t char_index, | |
size_t *char_ret, size_t *byte_ret) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
- size_t cur_byte = ledit_line_prev_utf8(ll, byte); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
+ size_t cur_byte = line_prev_utf8(ll, byte); | |
PangoLayout *layout = get_pango_layout(view, line); | |
const PangoLogAttr *attrs = | |
pango_layout_get_log_attrs_readonly(layout, &nattrs); | |
t@@ -586,7 +586,7 @@ line_prev_word( | |
*byte_ret = cur_byte; | |
return 0; | |
} | |
- cur_byte = ledit_line_prev_utf8(ll, cur_byte); | |
+ cur_byte = line_prev_utf8(ll, cur_byte); | |
} | |
return -1; | |
} | |
t@@ -597,8 +597,8 @@ line_prev_bigword( | |
size_t line, size_t byte, size_t char_index, | |
size_t *char_ret, size_t *byte_ret) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
- size_t cur_byte = ledit_line_prev_utf8(ll, byte); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
+ size_t cur_byte = line_prev_utf8(ll, byte); | |
PangoLayout *layout = get_pango_layout(view, line); | |
const PangoLogAttr *attrs = | |
pango_layout_get_log_attrs_readonly(layout, &nattrs); | |
t@@ -623,7 +623,7 @@ line_prev_bigword( | |
next_cursorc = i-1; | |
next_cursorb = cur_byte; | |
} | |
- cur_byte = ledit_line_prev_utf8(ll, cur_byte); | |
+ cur_byte = line_prev_utf8(ll, cur_byte); | |
} | |
return -1; | |
} | |
t@@ -634,7 +634,7 @@ line_next_bigword_end( | |
size_t line, size_t byte, size_t char_index, int wrapped_line, | |
size_t *char_ret, size_t *byte_ret, size_t *real_byte_ret) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
PangoLayout *layout = get_pango_layout(view, line); | |
const PangoLogAttr *attrs = | |
pango_layout_get_log_attrs_readonly(layout, &nattrs); | |
t@@ -663,7 +663,7 @@ line_next_bigword_end( | |
last_cursorb = cur_byte; | |
last_cursor_valid = 1; | |
} | |
- cur_byte = ledit_line_next_utf8(ll, cur_byte); | |
+ cur_byte = line_next_utf8(ll, cur_byte); | |
} | |
return -1; | |
} | |
t@@ -674,8 +674,8 @@ line_next_word_end( | |
size_t line, size_t byte, size_t char_index, int wrapped_line, | |
size_t *char_ret, size_t *byte_ret, size_t *real_byte_ret) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
- size_t cur_byte = ledit_line_next_utf8(ll, byte); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
+ size_t cur_byte = line_next_utf8(ll, byte); | |
PangoLayout *layout = get_pango_layout(view, line); | |
const PangoLogAttr *attrs = | |
pango_layout_get_log_attrs_readonly(layout, &nattrs); | |
t@@ -700,7 +700,7 @@ line_next_word_end( | |
last_cursorb = cur_byte; | |
last_cursor_valid = 1; | |
} | |
- cur_byte = ledit_line_next_utf8(ll, cur_byte); | |
+ cur_byte = line_next_utf8(ll, cur_byte); | |
} | |
return -1; | |
} | |
t@@ -711,7 +711,7 @@ line_next_bigword( | |
size_t line, size_t byte, size_t char_index, int wrapped_line, | |
size_t *char_ret, size_t *byte_ret, size_t *real_byte_ret) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
size_t cur_byte = byte; | |
PangoLayout *layout = get_pango_layout(view, line); | |
const PangoLogAttr *attrs = | |
t@@ -726,7 +726,7 @@ line_next_bigword( | |
*byte_ret = cur_byte; | |
return 0; | |
} | |
- cur_byte = ledit_line_next_utf8(ll, cur_byte); | |
+ cur_byte = line_next_utf8(ll, cur_byte); | |
} | |
return -1; | |
} | |
t@@ -734,7 +734,7 @@ line_next_bigword( | |
size_t | |
view_line_next_non_whitespace(ledit_view *view, size_t line, size_t byte) { | |
int nattrs; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
size_t c = line_byte_to_char(ll, byte); | |
size_t cur_byte = byte; | |
PangoLayout *layout = get_pango_layout(view, line); | |
t@@ -743,7 +743,7 @@ view_line_next_non_whitespace(ledit_view *view, size_t lin… | |
for (; c < (size_t)nattrs; c++) { | |
if (!attrs[c].is_white) | |
return cur_byte; | |
- cur_byte = ledit_line_next_utf8(ll, cur_byte); | |
+ cur_byte = line_next_utf8(ll, cur_byte); | |
} | |
return ll->len; | |
} | |
t@@ -758,7 +758,7 @@ view_next_##name( … | |
size_t *line_ret, size_t *byte_ret, size_t *real_byte_ret) { … | |
size_t cur_line = line; … | |
size_t cur_byte = byte; … | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); … | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); … | |
size_t cur_char = line_byte_to_char(ll, byte); … | |
size_t real_byte = 0; … | |
int last_ret = -1; … | |
t@@ -777,7 +777,7 @@ view_next_##name( … | |
} … | |
if (last_ret == -1) { … | |
*line_ret = view->lines_num - 1; … | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, view->lin… | |
+ ledit_line *ll = buffer_get_line(view->buffer, view->lines_num… | |
*byte_ret = view_get_legal_normal_pos(view, view->lines_num - … | |
*real_byte_ret = ll->len; … | |
} else { … | |
t@@ -795,14 +795,14 @@ view_prev_##name( … | |
size_t *line_ret, size_t *byte_ret, size_t *real_byte_ret) { … | |
size_t cur_line = line; … | |
size_t cur_byte = byte; … | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); … | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); … | |
size_t cur_char = line_byte_to_char(ll, byte); … | |
int last_ret = -1; … | |
for (int i = 0; i < num_repeat; i++) { … | |
while ((last_ret = func(view, cur_line, cur_byte, cur_char, … | |
&cur_char, &cur_byte)) == -1 && cur_line > 0) { … | |
cur_line--; … | |
- ll = ledit_buffer_get_line(view->buffer, cur_line); … | |
+ ll = buffer_get_line(view->buffer, cur_line); … | |
cur_byte = ll->len; … | |
} … | |
if (last_ret == -1 && cur_line == 0) … | |
t@@ -831,7 +831,7 @@ view_get_pos_softline_bounds( | |
ledit_view *view, size_t line, size_t pos, | |
size_t *start_byte_ret, size_t *end_byte_ret) { | |
assert(line < view->lines_num); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
assert(pos <= ll->len); | |
PangoLayout *layout = get_pango_layout(view, line); | |
int x, sli; | |
t@@ -868,7 +868,7 @@ view_get_softline_count(ledit_view *view, size_t line) { | |
int | |
view_pos_to_softline(ledit_view *view, size_t line, size_t pos) { | |
assert(line < view->lines_num); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
assert(pos <= ll->len); | |
PangoLayout *layout = get_pango_layout(view, line); | |
int x, sli; | |
t@@ -881,7 +881,7 @@ view_pos_to_softline(ledit_view *view, size_t line, size_t… | |
void | |
view_get_cursor_pixel_pos(ledit_view *view, size_t line, size_t pos, int *x_re… | |
assert(line < view->lines_num); | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
assert(pos <= ll->len); | |
PangoLayout *layout = get_pango_layout(view, line); | |
PangoRectangle strong, weak; | |
t@@ -904,7 +904,7 @@ view_move_cursor_visually(ledit_view *view, size_t line, s… | |
err_overflow(); | |
/* FIXME: trailing */ | |
int trailing = 0; | |
- ledit_line *cur_line = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *cur_line = buffer_get_line(view->buffer, line); | |
PangoLayout *layout = get_pango_layout(view, line); | |
int tmp_index; | |
int new_index = (int)pos, last_index = (int)pos; | |
t@@ -942,7 +942,7 @@ view_move_cursor_visually(ledit_view *view, size_t line, s… | |
/* FIXME: spaces at end of softlines are weird in normal mode */ | |
while (trailing > 0) { | |
trailing--; | |
- new_index = ledit_line_next_utf8(cur_line, new_index); | |
+ new_index = line_next_utf8(cur_line, new_index); | |
} | |
if (new_index < 0) | |
new_index = 0; | |
t@@ -965,7 +965,7 @@ ledit_line_word_boundaries(ledit_line *line, int byte, int… | |
static void | |
set_pango_text_and_highlight(ledit_view *view, size_t line) { | |
cache_layout *cl; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
ledit_view_line *vl = view_get_line(view, line); | |
char old_valid = vl->cache_layout_valid; | |
if (!vl->cache_layout_valid) { | |
t@@ -983,7 +983,7 @@ set_pango_text_and_highlight(ledit_view *view, size_t line… | |
pango_layout_set_wrap(cl->layout, PANGO_WRAP_WORD_CHAR); | |
} | |
if (vl->text_dirty || !old_valid) { | |
- ledit_buffer_normalize_line(ll); | |
+ buffer_normalize_line(ll); | |
if (ll->len > INT_MAX) | |
err_overflow(); | |
pango_layout_set_text(cl->layout, ll->text, (int)ll->len); | |
t@@ -1064,10 +1064,10 @@ ledit_x_softline_to_pos(ledit_view *view, size_t line,… | |
/* if in insert mode, snap to the nearest border between graphemes */ | |
/* FIXME: add parameter for this instead of checking mode */ | |
if (view->mode == INSERT) { | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
while (trailing > 0) { | |
trailing--; | |
- *pos_ret = ledit_line_next_utf8(ll, *pos_ret); | |
+ *pos_ret = line_next_utf8(ll, *pos_ret); | |
} | |
} | |
} | |
t@@ -1076,7 +1076,7 @@ size_t | |
view_get_legal_normal_pos(ledit_view *view, size_t line, size_t pos) { | |
/* move back one grapheme if at end of line */ | |
size_t ret = pos; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line); | |
+ ledit_line *ll = buffer_get_line(view->buffer, line); | |
if (pos == ll->len && pos > 0) { | |
int nattrs; | |
PangoLayout *layout = get_pango_layout(view, line); | |
t@@ -1085,10 +1085,10 @@ view_get_legal_normal_pos(ledit_view *view, size_t lin… | |
if (nattrs < 2) | |
return 0; | |
size_t cur = nattrs - 2; | |
- ret = ledit_line_prev_utf8(ll, ret); | |
+ ret = line_prev_utf8(ll, ret); | |
while (ret > 0 && cur > 0 && !attrs[cur].is_cursor_position) { | |
cur--; | |
- ret = ledit_line_prev_utf8(ll, ret); | |
+ ret = line_prev_utf8(ll, ret); | |
} | |
} | |
return ret; | |
t@@ -1113,7 +1113,7 @@ view_delete_range( | |
size_t min = line_index1 < line_index2 ? line_index1 : line_index2; | |
/* FIXME: a bit ugly to do this here */ | |
for (size_t i = 0; i < view->buffer->views_num; i++) { | |
- ledit_buffer_recalc_all_views_from_line( | |
+ buffer_recalc_all_views_from_line( | |
view->buffer, min > 0 ? min - 1 : min | |
); | |
} | |
t@@ -1149,7 +1149,7 @@ view_delete_range_base( | |
l2 = line_index1; | |
} | |
size_t dell1 = l1, dell2 = l2; | |
- ledit_line *ll = ledit_buffer_get_line(view->buffer, line_inde… | |
+ ledit_line *ll = buffer_get_line(view->buffer, line_index1); | |
ledit_pos_to_x_softline(view, line_index1, byte_index1, &x, &s… | |
if (l1 > 0 && l2 < view->lines_num - 1) { | |
rgl1 = l1; | |
t@@ -1158,10 +1158,10 @@ view_delete_range_base( | |
rgb2 = 0; | |
} else if (l1 > 0) { | |
rgl1 = l1 - 1; | |
- ll = ledit_buffer_get_line(view->buffer, rgl1); | |
+ ll = buffer_get_line(view->buffer, rgl1); | |
rgb1 = ll->len; | |
rgl2 = l2; | |
- ll = ledit_buffer_get_line(view->buffer, rgl2); | |
+ ll = buffer_get_line(view->buffer, rgl2); | |
rgb2 = ll->len; | |
} else if (l2 < view->lines_num - 1) { | |
rgl1 = l1; | |
t@@ -1172,11 +1172,11 @@ view_delete_range_base( | |
rgl1 = l1; | |
rgb1 = 0; | |
rgl2 = l2; | |
- ll = ledit_buffer_get_line(view->buffer, rgl2); | |
+ ll = buffer_get_line(view->buffer, rgl2); | |
rgb2 = ll->len; | |
} | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, rgl2, rgb2 | |
); | |
t@@ -1200,17 +1200,17 @@ view_delete_range_base( | |
new_line = l1; | |
new_byte = 0; | |
/* happens when all lines are deleted, so one line has… | |
- ll = ledit_buffer_get_line(view->buffer, l1); | |
- ledit_buffer_delete_line_section_base( | |
+ ll = buffer_get_line(view->buffer, l1); | |
+ buffer_delete_line_section_base( | |
view->buffer, l1, 0, ll->len | |
); | |
} | |
if (dell1 <= dell2) { | |
- ledit_buffer_delete_line_entries_base(view->buffer, de… | |
+ buffer_delete_line_entries_base(view->buffer, dell1, d… | |
} | |
} else if (delmode == DELETE_SOFTLINE) { | |
int x, softline1, softline2; | |
- ledit_line *line1 = ledit_buffer_get_line(view->buffer, line_i… | |
+ ledit_line *line1 = buffer_get_line(view->buffer, line_index1); | |
ledit_view_line *vline1 = view_get_line(view, line_index1); | |
ledit_pos_to_x_softline(view, line_index1, byte_index1, &x, &s… | |
if (line_index1 == line_index2) { | |
t@@ -1242,7 +1242,7 @@ view_delete_range_base( | |
/* note: logically, line_index1 - 1 mu… | |
view->lines_num > 1 && line_index1 … | |
new_line = line_index1 - 1; | |
- ledit_line *prevline = ledit_buffer_ge… | |
+ ledit_line *prevline = buffer_get_line… | |
ledit_view_line *vprevline = view_get_… | |
if (vprevline->text_dirty) | |
set_pango_text_and_highlight(v… | |
t@@ -1253,26 +1253,26 @@ view_delete_range_base( | |
rgb2 = line1->len; | |
} | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_entry_base(view->buff… | |
+ buffer_delete_line_entry_base(view->buffer, li… | |
} else { | |
assert(pl2->start_index + pl2->length >= pl1->… | |
rgl1 = rgl2 = line_index1; | |
rgb1 = (size_t)pl1->start_index; | |
rgb2 = (size_t)(pl2->start_index + pl2->length… | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_section_base( | |
+ buffer_delete_line_section_base( | |
view->buffer, line_index1, rgb1, rgb2 - rg… | |
); | |
if (l2 == vline1->softlines - 1 && line_index1… | |
t@@ -1319,8 +1319,8 @@ view_delete_range_base( | |
l2 = line_index1; | |
b2 = byte_index1; | |
} | |
- ledit_line *ll1 = ledit_buffer_get_line(view->buffer, … | |
- ledit_line *ll2 = ledit_buffer_get_line(view->buffer, … | |
+ ledit_line *ll1 = buffer_get_line(view->buffer, l1); | |
+ ledit_line *ll2 = buffer_get_line(view->buffer, l2); | |
ledit_view_line *vl1 = view_get_line(view, l1); | |
ledit_view_line *vl2 = view_get_line(view, l2); | |
PangoLayout *layout1 = get_pango_layout(view, l1); | |
t@@ -1336,20 +1336,20 @@ view_delete_range_base( | |
rgb1 = 0; | |
rgb2 = ll2->len; | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtb… | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_section_base(… | |
- ledit_buffer_delete_line_entries_base(… | |
+ buffer_delete_line_section_base(view->… | |
+ buffer_delete_line_entries_base(view->… | |
new_line = 0; | |
new_byte = 0; | |
} else { | |
if (l2 == view->lines_num - 1) { | |
new_line = l1 - 1; | |
- ledit_line *new_lline = ledit_… | |
+ ledit_line *new_lline = buffer… | |
ledit_view_line *new_vline = v… | |
if (new_vline->text_dirty) | |
set_pango_text_and_hig… | |
t@@ -1369,13 +1369,13 @@ view_delete_range_base( | |
rgb2 = 0; | |
} | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtb… | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_entries_base(… | |
+ buffer_delete_line_entries_base(view->… | |
} | |
} else if (sl1 == 0) { | |
rgl1 = l1; | |
t@@ -1383,16 +1383,16 @@ view_delete_range_base( | |
rgl2 = l2; | |
rgb2 = (size_t)(pl2->start_index + pl2->length… | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_section_base(view->bu… | |
+ buffer_delete_line_section_base(view->buffer, … | |
new_line = l1; | |
ledit_x_softline_to_pos(view, l2, x, 0, &new_b… | |
- ledit_buffer_delete_line_entries_base(view->bu… | |
+ buffer_delete_line_entries_base(view->buffer, … | |
} else if (sl2 == vl2->softlines - 1) { | |
rgl1 = l1; | |
rgb1 = (size_t)pl1->start_index; | |
t@@ -1409,14 +1409,14 @@ view_delete_range_base( | |
); | |
} | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_section_base(view->bu… | |
- ledit_buffer_delete_line_entries_base(view->bu… | |
+ buffer_delete_line_section_base(view->buffer, … | |
+ buffer_delete_line_entries_base(view->buffer, … | |
} else { | |
/* FIXME: this could be made nicer by just usi… | |
delete all in one go at the end */ | |
t@@ -1425,19 +1425,19 @@ view_delete_range_base( | |
rgl2 = l2; | |
rgb2 = (size_t)(pl2->start_index + pl2->length… | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_section_base(view->bu… | |
- ledit_buffer_insert_text_from_line_base( | |
+ buffer_delete_line_section_base(view->buffer, … | |
+ buffer_insert_text_from_line_base( | |
view->buffer, | |
l1, rgb1, l2, rgb2, | |
ll2->len - rgb2, NULL | |
); | |
- ledit_buffer_delete_line_entries_base(view->bu… | |
+ buffer_delete_line_entries_base(view->buffer, … | |
new_line = l1; | |
set_pango_text_and_highlight(view, l1); | |
/* it's technically possible that the remainin… | |
t@@ -1462,13 +1462,13 @@ view_delete_range_base( | |
rgb2 = byte_index1; | |
} | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_buffer_delete_line_section_base(view->buffer, li… | |
+ buffer_delete_line_section_base(view->buffer, line_ind… | |
new_line = line_index1; | |
new_byte = rgb1; | |
} else { | |
t@@ -1484,21 +1484,21 @@ view_delete_range_base( | |
rgb2 = byte_index1; | |
} | |
if (text_ret) { | |
- ledit_buffer_copy_text_to_txtbuf( | |
+ buffer_copy_text_to_txtbuf( | |
view->buffer, text_ret, | |
rgl1, rgb1, | |
rgl2, rgb2 | |
); | |
} | |
- ledit_line *line1 = ledit_buffer_get_line(view->buffer… | |
- ledit_line *line2 = ledit_buffer_get_line(view->buffer… | |
- ledit_buffer_delete_line_section_base(view->buffer, rg… | |
- ledit_buffer_insert_text_from_line_base( | |
+ ledit_line *line1 = buffer_get_line(view->buffer, rgl1… | |
+ ledit_line *line2 = buffer_get_line(view->buffer, rgl2… | |
+ buffer_delete_line_section_base(view->buffer, rgl1, rg… | |
+ buffer_insert_text_from_line_base( | |
view->buffer, rgl1, rgb1, rgl2, rgb2, line2->len -… | |
); | |
new_line = rgl1; | |
new_byte = rgb1; | |
- ledit_buffer_delete_line_entries_base(view->buffer, rg… | |
+ buffer_delete_line_entries_base(view->buffer, rgl1 + 1… | |
} | |
/* FIXME: too much magic - maybe don't include this here */ | |
if (view->mode == NORMAL) | |
t@@ -1522,7 +1522,7 @@ view_resize_textview(void *data) { | |
ledit_view *view = (ledit_view *)data; | |
view->total_height = 0; | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
for (size_t i = 0; i < view->lines_num; i++) { | |
ledit_view_line *line = view_get_line(view, i); | |
line->w = text_w; | |
t@@ -1533,7 +1533,7 @@ view_resize_textview(void *data) { | |
line->h_dirty = 0; | |
view->total_height += line->h; | |
} | |
- ledit_window_set_scroll_max(view->window, view->total_height); | |
+ window_set_scroll_max(view->window, view->total_height); | |
if (view->display_offset > 0 && | |
view->display_offset + text_h > view->total_height) { | |
view_scroll(view, view->total_height - text_h); | |
t@@ -1543,13 +1543,13 @@ view_resize_textview(void *data) { | |
void | |
view_scroll(ledit_view *view, long new_offset) { | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
if (new_offset + text_h > view->total_height) | |
new_offset = view->total_height - text_h; | |
if (new_offset < 0) | |
new_offset = 0; | |
view->display_offset = new_offset; | |
- ledit_window_set_scroll_pos(view->window, view->display_offset); | |
+ window_set_scroll_pos(view->window, view->display_offset); | |
} | |
/* FIXME: there's gotta be a better/more efficient way to do this... */ | |
t@@ -1563,7 +1563,7 @@ view_get_nearest_legal_pos( | |
PangoRectangle strong, weak; | |
int text_w, text_h; | |
int x, sl_useless; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
ledit_view_line *vline = view_get_line(view, line); | |
PangoLayout *layout = get_pango_layout(view, line); | |
if (byte > INT_MAX) | |
t@@ -1669,10 +1669,10 @@ ledit_xy_to_line_byte(ledit_view *view, int x, int y, … | |
); | |
*byte_ret = (size_t)index; | |
if (snap_to_nearest) { | |
- ledit_line *ll = ledit_buffer_get_line(view->b… | |
+ ledit_line *ll = buffer_get_line(view->buffer,… | |
while (trailing > 0) { | |
trailing--; | |
- *byte_ret = ledit_line_next_utf8(ll, *… | |
+ *byte_ret = line_next_utf8(ll, *byte_r… | |
} | |
} | |
*line_ret = i; | |
t@@ -1686,7 +1686,7 @@ static void | |
scroll_to_pos(ledit_view *view, size_t line, size_t byte, int top) { | |
PangoRectangle strong, weak; | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
ledit_view_line *vl = view_get_line(view, line); | |
PangoLayout *layout = get_pango_layout(view, line); | |
if (byte > INT_MAX) | |
t@@ -1714,7 +1714,7 @@ void | |
view_ensure_cursor_shown(ledit_view *view) { | |
PangoRectangle strong, weak; | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
ledit_view_line *vline = view_get_line(view, view->cur_line); | |
PangoLayout *layout = get_pango_layout(view, view->cur_line); | |
if (view->cur_index > INT_MAX) | |
t@@ -1755,8 +1755,8 @@ view_sort_selection(size_t *line1, size_t *byte1, size_t… | |
static void | |
copy_selection_to_x_primary(ledit_view *view, size_t line1, size_t byte1, size… | |
/* FIXME: let window handle this */ | |
- txtbuf *primary = ledit_window_get_primary_clipboard_buffer(); | |
- ledit_buffer_copy_text_to_txtbuf(view->buffer, primary, line1, byte1, … | |
+ txtbuf *primary = window_get_primary_clipboard_buffer(); | |
+ buffer_copy_text_to_txtbuf(view->buffer, primary, line1, byte1, line2,… | |
XSetSelectionOwner(view->buffer->common->dpy, XA_PRIMARY, view->window… | |
/* | |
FIXME | |
t@@ -1889,7 +1889,8 @@ view_redraw_text(ledit_view *view) { | |
int cur_line_y = 0; | |
int cursor_displayed = 0; | |
int text_w, text_h; | |
- ledit_window_get_textview_size(view->window, &text_w, &text_h); | |
+ window_get_textview_size(view->window, &text_w, &text_h); | |
+ /* FIXME: use binary search here */ | |
for (size_t i = 0; i < view->lines_num; i++) { | |
ledit_view_line *vline = view_get_line(view, i); | |
if (h + vline->h > view->display_offset) { | |
t@@ -1931,7 +1932,7 @@ view_redraw_text(ledit_view *view) { | |
XSetForeground(view->buffer->common->dpy, view->window->gc, view->them… | |
PangoRectangle strong, weak; | |
- ledit_line *cur_line = ledit_buffer_get_line(view->buffer, view->cur_l… | |
+ ledit_line *cur_line = buffer_get_line(view->buffer, view->cur_line); | |
PangoLayout *layout = get_pango_layout(view, view->cur_line); | |
pango_layout_get_cursor_pos( | |
layout, (int)view->cur_index, &strong, &weak | |
t@@ -1999,16 +2000,16 @@ view_redraw_text(ledit_view *view) { | |
void | |
view_redraw(ledit_view *view) { | |
if (view->redraw || view->window->redraw) { | |
- ledit_window_clear(view->window); | |
+ window_clear(view->window); | |
view_redraw_text(view); | |
- ledit_window_redraw(view->window); | |
+ window_redraw(view->window); | |
} | |
} | |
static void | |
undo_insert_helper(void *data, size_t line, size_t byte, char *text, size_t te… | |
ledit_view *view = (ledit_view *)data; | |
- ledit_buffer_insert_text_with_newlines_base(view->buffer, line, byte, … | |
+ buffer_insert_text_with_newlines_base(view->buffer, line, byte, text, … | |
} | |
static void | |
t@@ -2033,7 +2034,7 @@ view_undo(ledit_view *view) { | |
view_wipe_line_cursor_attrs(view, old_line); | |
view_set_line_cursor_attrs(view, view->cur_line, view->cur_index); | |
if (min_line < view->lines_num) { | |
- ledit_buffer_recalc_all_views_from_line( | |
+ buffer_recalc_all_views_from_line( | |
view->buffer, min_line > 0 ? min_line - 1 : min_line | |
); | |
} | |
t@@ -2056,7 +2057,7 @@ view_redo(ledit_view *view) { | |
view_wipe_line_cursor_attrs(view, old_line); | |
view_set_line_cursor_attrs(view, view->cur_line, view->cur_index); | |
if (min_line < view->lines_num) { | |
- ledit_buffer_recalc_all_views_from_line( | |
+ buffer_recalc_all_views_from_line( | |
view->buffer, min_line > 0 ? min_line - 1 : min_line | |
); | |
} | |
t@@ -2070,13 +2071,13 @@ paste_callback(void *data, char *text, size_t len) { | |
ledit_range cur_range, ins_range; | |
cur_range.line1 = ins_range.line1 = view->cur_line; | |
cur_range.byte1 = ins_range.byte1 = view->cur_index; | |
- ledit_buffer_insert_text_with_newlines( | |
+ buffer_insert_text_with_newlines( | |
view->buffer, view->cur_line, view->cur_index, | |
text, len, &view->cur_line, &view->cur_index | |
); | |
cur_range.line2 = ins_range.line2 = view->cur_line; | |
cur_range.byte2 = ins_range.byte2 = view->cur_index; | |
- ledit_push_undo_insert( | |
+ undo_push_insert( | |
view->buffer->undo, &ins_buf, ins_range, cur_range, 1, view->mode | |
); | |
} | |
t@@ -2085,12 +2086,12 @@ paste_callback(void *data, char *text, size_t len) { | |
void | |
view_paste_clipboard(ledit_view *view) { | |
- ledit_window_set_paste_callback(view->window, &paste_callback, view); | |
+ window_set_paste_callback(view->window, &paste_callback, view); | |
clipboard_paste_clipboard(view->window); | |
} | |
void | |
view_paste_primary(ledit_view *view) { | |
- ledit_window_set_paste_callback(view->window, &paste_callback, view); | |
+ window_set_paste_callback(view->window, &paste_callback, view); | |
clipboard_paste_primary(view->window); | |
} | |
diff --git a/window.c b/window.c | |
t@@ -57,7 +57,7 @@ static void clipboard_selnotify(ledit_window *window, XEvent… | |
static void clipboard_selrequest(ledit_window *window, XEvent *e); | |
txtbuf * | |
-ledit_window_get_primary_clipboard_buffer(void) { | |
+window_get_primary_clipboard_buffer(void) { | |
/* FIXME: check if NULL */ | |
return xsel.primary; | |
} | |
t@@ -76,7 +76,7 @@ recalc_text_size(ledit_window *window) { | |
/* FIXME: allow lines longer than window width to be displayed properly */ | |
void | |
-ledit_window_insert_bottom_bar_text(ledit_window *window, char *text, int len)… | |
+window_insert_bottom_bar_text(ledit_window *window, char *text, int len) { | |
assert(len >= -1); | |
assert(window->bb->line_cur_pos <= window->bb->line_len); | |
t@@ -101,7 +101,7 @@ ledit_window_insert_bottom_bar_text(ledit_window *window, … | |
window->bb->line_text[window->bb->line_len] = '\0'; | |
pango_layout_set_text(window->bb->line, window->bb->line_text, window-… | |
pango_layout_get_pixel_size(window->bb->line, &window->bb->line_w, &wi… | |
- ledit_draw_grow(window, window->bb->line_draw, window->bb->line_w, win… | |
+ draw_grow(window, window->bb->line_draw, window->bb->line_w, window->b… | |
XftDrawRect(window->bb->line_draw->xftdraw, &window->theme->text_bg, 0… | |
pango_xft_render_layout(window->bb->line_draw->xftdraw, &window->theme… | |
recalc_text_size(window); | |
t@@ -109,7 +109,7 @@ ledit_window_insert_bottom_bar_text(ledit_window *window, … | |
} | |
void | |
-ledit_window_move_bottom_bar_cursor(ledit_window *window, int movement) { | |
+window_move_bottom_bar_cursor(ledit_window *window, int movement) { | |
assert(window->bb->line_cur_pos <= window->bb->line_len); | |
int trailing = 0; | |
int new_index = window->bb->line_cur_pos; | |
t@@ -135,25 +135,25 @@ ledit_window_move_bottom_bar_cursor(ledit_window *window… | |
} | |
void | |
-ledit_window_set_bottom_bar_min_pos(ledit_window *window, int pos) { | |
+window_set_bottom_bar_min_pos(ledit_window *window, int pos) { | |
window->bb->min_pos = pos; | |
} | |
void | |
-ledit_window_bottom_bar_cursor_to_beginning(ledit_window *window) { | |
+window_bottom_bar_cursor_to_beginning(ledit_window *window) { | |
window->bb->line_cur_pos = window->bb->min_pos; | |
window->redraw = 1; | |
} | |
void | |
-ledit_window_bottom_bar_cursor_to_end(ledit_window *window) { | |
+window_bottom_bar_cursor_to_end(ledit_window *window) { | |
window->bb->line_cur_pos = window->bb->line_len; | |
window->redraw = 1; | |
} | |
/* FIXME: respect PangoLogAttr.backspace_deletes_character */ | |
void | |
-ledit_window_delete_bottom_bar_char(ledit_window *window, int dir) { | |
+window_delete_bottom_bar_char(ledit_window *window, int dir) { | |
int byte = window->bb->line_cur_pos; | |
if (dir < 0) { | |
byte--; | |
t@@ -189,7 +189,7 @@ ledit_window_delete_bottom_bar_char(ledit_window *window, … | |
window->bb->line_text[window->bb->line_len] = '\0'; | |
pango_layout_set_text(window->bb->line, window->bb->line_text, window-… | |
pango_layout_get_pixel_size(window->bb->line, &window->bb->line_w, &wi… | |
- ledit_draw_grow(window, window->bb->line_draw, window->bb->line_w, win… | |
+ draw_grow(window, window->bb->line_draw, window->bb->line_w, window->b… | |
XftDrawRect(window->bb->line_draw->xftdraw, &window->theme->text_bg, 0… | |
pango_xft_render_layout(window->bb->line_draw->xftdraw, &window->theme… | |
recalc_text_size(window); | |
t@@ -197,7 +197,7 @@ ledit_window_delete_bottom_bar_char(ledit_window *window, … | |
} | |
void | |
-ledit_window_set_bottom_bar_cursor(ledit_window *window, int byte_pos) { | |
+window_set_bottom_bar_cursor(ledit_window *window, int byte_pos) { | |
/* FIXME: check if valid? */ | |
window->bb->line_cur_pos = byte_pos; | |
window->redraw = 1; | |
t@@ -209,7 +209,7 @@ ledit_window_get_bottom_bar_cursor(ledit_window *window) { | |
} | |
void | |
-ledit_window_set_bottom_bar_text_shown(ledit_window *window, int shown) { | |
+window_set_bottom_bar_text_shown(ledit_window *window, int shown) { | |
window->bottom_text_shown = shown; | |
window->redraw = 1; | |
} | |
t@@ -221,21 +221,21 @@ ledit_window_bottom_bar_text_shown(ledit_window *window)… | |
} | |
void | |
-ledit_window_set_bottom_bar_text(ledit_window *window, char *text, int len) { | |
+window_set_bottom_bar_text(ledit_window *window, char *text, int len) { | |
window->bb->line_len = 0; | |
window->bb->line_cur_pos = 0; | |
- ledit_window_insert_bottom_bar_text(window, text, len); | |
+ window_insert_bottom_bar_text(window, text, len); | |
window->redraw = 1; | |
} | |
char * | |
-ledit_window_get_bottom_bar_text(ledit_window *window) { | |
+window_get_bottom_bar_text(ledit_window *window) { | |
return window->bb->line_text; | |
} | |
void | |
-ledit_window_show_message(ledit_window *window, char *text, int len) { | |
- ledit_window_set_bottom_bar_text(window, text, len); | |
+window_show_message(ledit_window *window, char *text, int len) { | |
+ window_set_bottom_bar_text(window, text, len); | |
/* FIXME: rename these */ | |
window->bottom_text_shown = 0; | |
window->message_shown = 1; | |
t@@ -243,18 +243,18 @@ ledit_window_show_message(ledit_window *window, char *te… | |
} | |
int | |
-ledit_window_message_shown(ledit_window *window) { | |
+window_message_shown(ledit_window *window) { | |
return window->message_shown; | |
} | |
void | |
-ledit_window_hide_message(ledit_window *window) { | |
+window_hide_message(ledit_window *window) { | |
window->message_shown = 0; | |
window->redraw = 1; | |
} | |
void | |
-ledit_window_set_mode(ledit_window *window, enum ledit_mode mode) { | |
+window_set_mode(ledit_window *window, enum ledit_mode mode) { | |
window->mode = mode; | |
char *text; | |
switch (mode) { | |
t@@ -275,7 +275,7 @@ ledit_window_set_mode(ledit_window *window, enum ledit_mod… | |
pango_layout_set_text(window->bb->mode, final_text, -1); | |
free(final_text); | |
pango_layout_get_pixel_size(window->bb->mode, &window->bb->mode_w, &wi… | |
- ledit_draw_grow(window, window->bb->mode_draw, window->bb->mode_w, win… | |
+ draw_grow(window, window->bb->mode_draw, window->bb->mode_w, window->b… | |
XftDrawRect(window->bb->mode_draw->xftdraw, &window->theme->text_bg, 0… | |
pango_xft_render_layout(window->bb->mode_draw->xftdraw, &window->theme… | |
recalc_text_size(window); | |
t@@ -283,9 +283,9 @@ ledit_window_set_mode(ledit_window *window, enum ledit_mod… | |
} | |
void | |
-ledit_window_set_mode_extra_text(ledit_window *window, char *text) { | |
+window_set_mode_extra_text(ledit_window *window, char *text) { | |
window->mode_extra_text = ledit_strdup(text); | |
- ledit_window_set_mode(window, window->mode); | |
+ window_set_mode(window, window->mode); | |
window->redraw = 1; | |
} | |
t@@ -311,37 +311,37 @@ set_scroll_pos(ledit_window *window, double pos) { | |
} | |
void | |
-ledit_window_set_scroll_max(ledit_window *window, long max) { | |
+window_set_scroll_max(ledit_window *window, long max) { | |
window->scroll_max = max; | |
window->redraw = 1; | |
} | |
void | |
-ledit_window_set_scroll_pos(ledit_window *window, long pos) { | |
+window_set_scroll_pos(ledit_window *window, long pos) { | |
window->scroll_offset = pos; | |
window->redraw = 1; | |
} | |
void | |
-ledit_window_set_scroll_callback(ledit_window *window, void (*cb)(void *, long… | |
+window_set_scroll_callback(ledit_window *window, void (*cb)(void *, long), voi… | |
window->scroll_callback = cb; | |
window->scroll_cb_data = data; | |
} | |
void | |
-ledit_window_set_paste_callback(ledit_window *window, void (*cb)(void *, char … | |
+window_set_paste_callback(ledit_window *window, void (*cb)(void *, char *, siz… | |
window->paste_callback = cb; | |
window->paste_cb_data = data; | |
} | |
void | |
-ledit_window_set_button_callback(ledit_window *window, void (*cb)(void *, XEve… | |
+window_set_button_callback(ledit_window *window, void (*cb)(void *, XEvent *),… | |
window->button_callback = cb; | |
window->button_cb_data = data; | |
} | |
void | |
-ledit_window_set_resize_callback(ledit_window *window, void (*cb)(void *), voi… | |
+window_set_resize_callback(ledit_window *window, void (*cb)(void *), void *dat… | |
window->resize_callback = cb; | |
window->resize_cb_data = data; | |
} | |
t@@ -433,7 +433,7 @@ xximspot(ledit_window *window, int x, int y) { | |
} | |
ledit_window * | |
-ledit_window_create(ledit_common *common, ledit_theme *theme, enum ledit_mode … | |
+window_create(ledit_common *common, ledit_theme *theme, enum ledit_mode mode) { | |
XSetWindowAttributes attrs; | |
XGCValues gcv; | |
t@@ -500,10 +500,10 @@ ledit_window_create(ledit_common *common, ledit_theme *t… | |
window->bb->mode = pango_layout_new(window->context); | |
pango_layout_set_font_description(window->bb->mode, window->font); | |
/* FIXME: only create "dummy draw" at first and create with proper siz… | |
- window->bb->mode_draw = ledit_draw_create(window, 10, 10); | |
+ window->bb->mode_draw = draw_create(window, 10, 10); | |
window->bb->line = pango_layout_new(window->context); | |
pango_layout_set_font_description(window->bb->line, window->font); | |
- window->bb->line_draw = ledit_draw_create(window, 10, 10); | |
+ window->bb->line_draw = draw_create(window, 10, 10); | |
window->bb->line_w = window->bb->line_h = 10; | |
window->bb->line_text = NULL; | |
window->bb->line_alloc = window->bb->line_len = 0; | |
t@@ -554,13 +554,13 @@ ledit_window_create(ledit_common *common, ledit_theme *t… | |
} | |
void | |
-ledit_window_destroy(ledit_window *window) { | |
+window_destroy(ledit_window *window) { | |
/* FIXME: check what's still missing */ | |
g_object_unref(window->bb->mode); | |
/*g_object_unref(window->bb->ruler);*/ /* FIXME: implement ruler */ | |
g_object_unref(window->bb->line); | |
- ledit_draw_destroy(window, window->bb->mode_draw); | |
- ledit_draw_destroy(window, window->bb->line_draw); | |
+ draw_destroy(window, window->bb->mode_draw); | |
+ draw_destroy(window, window->bb->line_draw); | |
pango_font_description_free(window->font); | |
/* FIXME: The pango documentation says that the context must be freed, | |
t@@ -581,13 +581,13 @@ ledit_window_destroy(ledit_window *window) { | |
} | |
void | |
-ledit_window_cleanup(void) { | |
+window_cleanup(void) { | |
txtbuf_destroy(xsel.primary); | |
free(xsel.clipboard); | |
} | |
void | |
-ledit_window_clear(ledit_window *window) { | |
+window_clear(ledit_window *window) { | |
XSetForeground(window->common->dpy, window->gc, window->theme->text_bg… | |
XFillRectangle( | |
window->common->dpy, window->back_buf, window->gc, 0, 0, window->w… | |
t@@ -595,7 +595,7 @@ ledit_window_clear(ledit_window *window) { | |
} | |
void | |
-ledit_window_redraw(ledit_window *window) { | |
+window_redraw(ledit_window *window) { | |
ledit_theme *t = window->theme; | |
if (window->scroll_max > window->text_h) { | |
XSetForeground(window->common->dpy, window->gc, t->scrollbar_b… | |
t@@ -680,19 +680,19 @@ ledit_window_redraw(ledit_window *window) { | |
} | |
void | |
-ledit_window_get_textview_size(ledit_window *window, int *w_ret, int *h_ret) { | |
+window_get_textview_size(ledit_window *window, int *w_ret, int *h_ret) { | |
*w_ret = window->text_w; | |
*h_ret = window->text_h; | |
} | |
void | |
-ledit_window_handle_filtered_events(ledit_window *window) { | |
+window_handle_filtered_events(ledit_window *window) { | |
struct timespec now, elapsed; | |
if (window->last_motion_valid) { | |
clock_gettime(CLOCK_MONOTONIC, &now); | |
ledit_timespecsub(&now, &window->last_motion, &elapsed); | |
if (elapsed.tv_sec > 0 || elapsed.tv_nsec >= MOUSE_TICK) { | |
- ledit_window_drag_motion(window, &window->last_motion_… | |
+ window_drag_motion(window, &window->last_motion_event); | |
window->last_motion = now; | |
window->last_motion_valid = 0; | |
} | |
t@@ -701,7 +701,7 @@ ledit_window_handle_filtered_events(ledit_window *window) { | |
clock_gettime(CLOCK_MONOTONIC, &now); | |
ledit_timespecsub(&now, &window->last_scroll, &elapsed); | |
if (elapsed.tv_sec > 0 || elapsed.tv_nsec >= MOUSE_TICK) { | |
- ledit_window_button_press(window, &window->last_scroll… | |
+ window_button_press(window, &window->last_scroll_event… | |
window->last_scroll = now; | |
window->last_scroll_valid = 0; | |
} | |
t@@ -710,7 +710,7 @@ ledit_window_handle_filtered_events(ledit_window *window) { | |
clock_gettime(CLOCK_MONOTONIC, &now); | |
ledit_timespecsub(&now, &window->last_resize, &elapsed); | |
if (elapsed.tv_sec > 0 || elapsed.tv_nsec >= RESIZE_TICK) { | |
- ledit_window_resize( | |
+ window_resize( | |
window, | |
window->last_resize_event.xconfigure.width, | |
window->last_resize_event.xconfigure.height | |
t@@ -723,7 +723,7 @@ ledit_window_handle_filtered_events(ledit_window *window) { | |
} | |
void | |
-ledit_window_resize(ledit_window *window, int w, int h) { | |
+window_resize(ledit_window *window, int w, int h) { | |
window->w = w; | |
window->h = h; | |
recalc_text_size(window); | |
t@@ -908,7 +908,7 @@ clipboard_selrequest(ledit_window *window, XEvent *e) | |
} | |
void | |
-ledit_window_register_button_press(ledit_window *window, XEvent *event) { | |
+window_register_button_press(ledit_window *window, XEvent *event) { | |
int scroll_delta; | |
if (event->xbutton.button == Button4 || | |
event->xbutton.button == Button5) { | |
t@@ -921,25 +921,25 @@ ledit_window_register_button_press(ledit_window *window,… | |
window->scroll_num = scroll_delta; | |
} | |
} else { | |
- ledit_window_button_press(window, event, 0); | |
+ window_button_press(window, event, 0); | |
} | |
} | |
void | |
-ledit_window_register_resize(ledit_window *window, XEvent *event) { | |
+window_register_resize(ledit_window *window, XEvent *event) { | |
window->last_resize_event = *event; | |
window->last_resize_valid = 1; | |
} | |
void | |
-ledit_window_register_motion(ledit_window *window, XEvent *event) { | |
+window_register_motion(ledit_window *window, XEvent *event) { | |
window->last_motion_event = *event; | |
window->last_motion_valid = 1; | |
} | |
/* FIXME: improve set_scroll_pos; make it a bit clearer */ | |
void | |
-ledit_window_button_press(ledit_window *window, XEvent *event, int scroll_num)… | |
+window_button_press(ledit_window *window, XEvent *event, int scroll_num) { | |
int x, y; | |
double scroll_h, scroll_y; | |
switch (event->xbutton.button) { | |
t@@ -976,7 +976,7 @@ ledit_window_button_press(ledit_window *window, XEvent *ev… | |
} | |
void | |
-ledit_window_button_release(ledit_window *window, XEvent *event) { | |
+window_button_release(ledit_window *window, XEvent *event) { | |
if (event->xbutton.button == Button1) { | |
window->scroll_dragging = 0; | |
if (window->button_callback) | |
t@@ -986,7 +986,7 @@ ledit_window_button_release(ledit_window *window, XEvent *… | |
} | |
void | |
-ledit_window_drag_motion(ledit_window *window, XEvent *event) { | |
+window_drag_motion(ledit_window *window, XEvent *event) { | |
if (window->scroll_dragging) { | |
double scroll_h, scroll_y; | |
get_scroll_pos_height(window, &scroll_y, &scroll_h); | |
t@@ -1002,7 +1002,7 @@ ledit_window_drag_motion(ledit_window *window, XEvent *e… | |
} | |
void | |
-ledit_window_clipboard_event(ledit_window *window, XEvent *event) { | |
+window_clipboard_event(ledit_window *window, XEvent *event) { | |
/* FIXME: paste in bottom bar */ | |
switch (event->type) { | |
case SelectionNotify: | |
diff --git a/window.h b/window.h | |
t@@ -59,53 +59,53 @@ typedef struct { | |
char *mode_extra_text; | |
} ledit_window; | |
-ledit_window *ledit_window_create(ledit_common *common, ledit_theme *theme, en… | |
-void ledit_window_destroy(ledit_window *window); | |
-void ledit_window_cleanup(void); | |
+ledit_window *window_create(ledit_common *common, ledit_theme *theme, enum led… | |
+void window_destroy(ledit_window *window); | |
+void window_cleanup(void); | |
/* FIXME: this is a bit confusing because there's a difference between editable | |
text shown and non-editable message shown */ | |
-void ledit_window_move_bottom_bar_cursor(ledit_window *window, int movement); | |
-void ledit_window_delete_bottom_bar_char(ledit_window *window, int dir); | |
-void ledit_window_bottom_bar_cursor_to_beginning(ledit_window *window); | |
-void ledit_window_bottom_bar_cursor_to_end(ledit_window *window); | |
-void ledit_window_set_bottom_bar_min_pos(ledit_window *window, int pos); | |
-void ledit_window_set_bottom_bar_text_shown(ledit_window *window, int shown); | |
+void window_move_bottom_bar_cursor(ledit_window *window, int movement); | |
+void window_delete_bottom_bar_char(ledit_window *window, int dir); | |
+void window_bottom_bar_cursor_to_beginning(ledit_window *window); | |
+void window_bottom_bar_cursor_to_end(ledit_window *window); | |
+void window_set_bottom_bar_min_pos(ledit_window *window, int pos); | |
+void window_set_bottom_bar_text_shown(ledit_window *window, int shown); | |
int ledit_window_bottom_bar_text_shown(ledit_window *window); | |
-void ledit_window_set_bottom_bar_cursor(ledit_window *window, int byte_pos); | |
+void window_set_bottom_bar_cursor(ledit_window *window, int byte_pos); | |
int ledit_window_get_bottom_bar_cursor(ledit_window *window); | |
-void ledit_window_insert_bottom_bar_text(ledit_window *window, char *text, int… | |
-void ledit_window_set_bottom_bar_text(ledit_window *window, char *text, int le… | |
-char *ledit_window_get_bottom_bar_text(ledit_window *window); | |
-void ledit_window_show_message(ledit_window *window, char *text, int len); | |
-void ledit_window_hide_message(ledit_window *window); | |
-int ledit_window_message_shown(ledit_window *window); | |
-void ledit_window_set_mode(ledit_window *window, enum ledit_mode mode); | |
-void ledit_window_set_mode_extra_text(ledit_window *window, char *text); | |
+void window_insert_bottom_bar_text(ledit_window *window, char *text, int len); | |
+void window_set_bottom_bar_text(ledit_window *window, char *text, int len); | |
+char *window_get_bottom_bar_text(ledit_window *window); | |
+void window_show_message(ledit_window *window, char *text, int len); | |
+void window_hide_message(ledit_window *window); | |
+int window_message_shown(ledit_window *window); | |
+void window_set_mode(ledit_window *window, enum ledit_mode mode); | |
+void window_set_mode_extra_text(ledit_window *window, char *text); | |
-void ledit_window_set_scroll_max(ledit_window *window, long max); | |
-void ledit_window_set_scroll_pos(ledit_window *window, long pos); | |
-void ledit_window_set_scroll_callback(ledit_window *window, void (*cb)(void *,… | |
-void ledit_window_set_paste_callback(ledit_window *window, void (*cb)(void *, … | |
-void ledit_window_set_button_callback(ledit_window *window, void (*cb)(void *,… | |
-void ledit_window_set_resize_callback(ledit_window *window, void (*cb)(void *)… | |
-void ledit_window_register_resize(ledit_window *window, XEvent *event); | |
-void ledit_window_register_button_press(ledit_window *window, XEvent *event); | |
-void ledit_window_register_motion(ledit_window *window, XEvent *event); | |
-void ledit_window_handle_filtered_events(ledit_window *window); | |
+void window_set_scroll_max(ledit_window *window, long max); | |
+void window_set_scroll_pos(ledit_window *window, long pos); | |
+void window_set_scroll_callback(ledit_window *window, void (*cb)(void *, long)… | |
+void window_set_paste_callback(ledit_window *window, void (*cb)(void *, char *… | |
+void window_set_button_callback(ledit_window *window, void (*cb)(void *, XEven… | |
+void window_set_resize_callback(ledit_window *window, void (*cb)(void *), void… | |
+void window_register_resize(ledit_window *window, XEvent *event); | |
+void window_register_button_press(ledit_window *window, XEvent *event); | |
+void window_register_motion(ledit_window *window, XEvent *event); | |
+void window_handle_filtered_events(ledit_window *window); | |
-void ledit_window_clear(ledit_window *window); | |
-void ledit_window_redraw(ledit_window *window); | |
-void ledit_window_resize(ledit_window *window, int w, int h); | |
-void ledit_window_get_textview_size(ledit_window *window, int *w_ret, int *h_r… | |
+void window_clear(ledit_window *window); | |
+void window_redraw(ledit_window *window); | |
+void window_resize(ledit_window *window, int w, int h); | |
+void window_get_textview_size(ledit_window *window, int *w_ret, int *h_ret); | |
void clipboard_primary_to_clipboard(ledit_window *window); | |
void clipboard_paste_clipboard(ledit_window *window); | |
void clipboard_paste_primary(ledit_window *window); | |
-txtbuf *ledit_window_get_primary_clipboard_buffer(void); | |
+txtbuf *window_get_primary_clipboard_buffer(void); | |
-void ledit_window_button_press(ledit_window *window, XEvent *event, int scroll… | |
-void ledit_window_button_release(ledit_window *window, XEvent *event); | |
-void ledit_window_drag_motion(ledit_window *window, XEvent *event); | |
-void ledit_window_clipboard_event(ledit_window *window, XEvent *event); | |
+void window_button_press(ledit_window *window, XEvent *event, int scroll_num); | |
+void window_button_release(ledit_window *window, XEvent *event); | |
+void window_drag_motion(ledit_window *window, XEvent *event); | |
+void window_clipboard_event(ledit_window *window, XEvent *event); | |
void xximspot(ledit_window *window, int x, int y); |