forked from eyelash/platon-core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathc_api.h
40 lines (35 loc) · 1.9 KB
/
c_api.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma once
#include <stddef.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct PlatonEditor PlatonEditor;
PlatonEditor* platon_editor_new(void);
PlatonEditor* platon_editor_new_from_file(const char* path);
void platon_editor_free(PlatonEditor* editor);
size_t platon_editor_get_total_lines(PlatonEditor* editor);
const char* platon_editor_render(PlatonEditor* editor, size_t first_line, size_t last_line);
void platon_editor_insert_text(PlatonEditor* editor, const char* text);
void platon_editor_insert_newline(PlatonEditor* editor);
void platon_editor_delete_backward(PlatonEditor* editor);
void platon_editor_delete_forward(PlatonEditor* editor);
void platon_editor_set_cursor(PlatonEditor* editor, size_t column, size_t line);
void platon_editor_toggle_cursor(PlatonEditor* editor, size_t column, size_t line);
void platon_editor_extend_selection(PlatonEditor* editor, size_t column, size_t line);
void platon_editor_move_left(PlatonEditor* editor, int extend_selection);
void platon_editor_move_right(PlatonEditor* editor, int extend_selection);
void platon_editor_move_up(PlatonEditor* editor, int extend_selection);
void platon_editor_move_down(PlatonEditor* editor, int extend_selection);
void platon_editor_move_to_beginning_of_word(PlatonEditor* editor, int extend_selection);
void platon_editor_move_to_end_of_word(PlatonEditor* editor, int extend_selection);
void platon_editor_move_to_beginning_of_line(PlatonEditor* editor, int extend_selection);
void platon_editor_move_to_end_of_line(PlatonEditor* editor, int extend_selection);
void platon_editor_select_all(PlatonEditor* editor);
const char* platon_editor_get_theme(const PlatonEditor* editor);
const char* platon_editor_copy(const PlatonEditor* editor);
const char* platon_editor_cut(PlatonEditor* editor);
void platon_editor_paste(PlatonEditor* editor, const char* text);
void platon_editor_save(PlatonEditor* editor, const char* path);
#ifdef __cplusplus
}
#endif