-
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
#ifndef RKTWEBVIEW_H
|
||||
#define RKTWEBVIEW_H
|
||||
|
||||
#include "rktwebview_qt_global.h"
|
||||
#include "rktwebview_global.h"
|
||||
#include "rktwebview_types.h"
|
||||
|
||||
#define RKT_WEBVIEW_API_MAJOR 0
|
||||
#define RKT_WEBVIEW_API_MINOR 1
|
||||
@@ -9,122 +10,47 @@
|
||||
|
||||
extern "C" {
|
||||
|
||||
typedef int rktwebview_t;
|
||||
typedef int rkt_wv_context_t;
|
||||
RKTWEBVIEW_EXPORT void rkt_webview_init();
|
||||
RKTWEBVIEW_EXPORT void rkt_webview_cleanup();
|
||||
//RKTWEBVIEW_EXPORT void rkt_webview_process_events(int for_ms);
|
||||
|
||||
typedef struct {
|
||||
rktwebview_t wv;
|
||||
char *event;
|
||||
} rkt_event_t;
|
||||
RKTWEBVIEW_EXPORT void rkt_webview_free_data(rkt_data_t *d);
|
||||
RKTWEBVIEW_EXPORT rkt_data_t *rkt_webview_version();
|
||||
|
||||
typedef enum {
|
||||
no_result_yet = -1,
|
||||
oke = 0,
|
||||
set_html_failed = 1,
|
||||
set_navigate_failed = 2,
|
||||
eval_js_failed = 3,
|
||||
no_devtools_on_platform = 4,
|
||||
no_delegate_for_context = 5,
|
||||
webview_missing_dependency = 6,
|
||||
webview_canceled = 7,
|
||||
webview_invalid_state = 8,
|
||||
webview_invalid_argument = 9,
|
||||
webview_unspecified = 10,
|
||||
webview_dispatch_failed = 11,
|
||||
move_failed = 12,
|
||||
resize_failed = 13,
|
||||
choose_dir_failed = 14,
|
||||
open_file_failed = 15,
|
||||
save_file_failed = 16,
|
||||
failed = 17
|
||||
} result_t;
|
||||
RKTWEBVIEW_EXPORT int rkt_webview_events_waiting();
|
||||
RKTWEBVIEW_EXPORT rkt_data_t *rkt_webview_get_event();
|
||||
|
||||
typedef struct {
|
||||
result_t result;
|
||||
char *value;
|
||||
} rkt_js_result_t;
|
||||
RKTWEBVIEW_EXPORT rkt_wv_context_t rkt_webview_new_context(const char *boilerplate_js, const char *optional_server_cert_pem);
|
||||
RKTWEBVIEW_EXPORT int rkt_webview_create(rkt_wv_context_t context, rktwebview_t parent);
|
||||
|
||||
typedef enum {
|
||||
invalid = -1,
|
||||
normal = 0,
|
||||
minimized = 1,
|
||||
maximized = 2,
|
||||
hidden = 3,
|
||||
normal_active = 16,
|
||||
maximized_active = 18
|
||||
} window_state_t;
|
||||
RKTWEBVIEW_EXPORT void rkt_webview_close(rktwebview_t wv);
|
||||
RKTWEBVIEW_EXPORT bool rkt_webview_valid(rktwebview_t wv);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_set_title(rktwebview_t wv, const char *title);
|
||||
RKTWEBVIEW_EXPORT void rkt_webview_set_ou_token(rktwebview_t wv, const char *token);
|
||||
|
||||
typedef enum {
|
||||
info = 1,
|
||||
error = 2,
|
||||
warning = 3,
|
||||
yes_no = 4,
|
||||
oke_cancel = 5
|
||||
} rkt_messagetype_t;
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_set_url(rktwebview_t wv, const char *url);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_set_html(rktwebview_t wv, const char *html);
|
||||
|
||||
typedef struct {
|
||||
int qt_major;
|
||||
int qt_minor;
|
||||
int qt_patch;
|
||||
int api_major;
|
||||
int api_minor;
|
||||
int api_patch;
|
||||
} rkt_version_t;
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_run_js(rktwebview_t wv, const char *js);
|
||||
RKTWEBVIEW_EXPORT rkt_data_t *rkt_webview_call_js(rktwebview_t wv, const char *js);
|
||||
|
||||
typedef enum {
|
||||
version = 1,
|
||||
event = 2,
|
||||
js_result = 3
|
||||
} rkt_data_kind_t;
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_open_devtools(rktwebview_t wv);
|
||||
|
||||
typedef struct {
|
||||
rkt_data_kind_t kind;
|
||||
union {
|
||||
rkt_version_t version;
|
||||
rkt_event_t event;
|
||||
rkt_js_result_t js_result;
|
||||
} data;
|
||||
} rkt_data_t;
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_move(rktwebview_t w, int x, int y);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_resize(rktwebview_t w, int width, int height);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_hide(rktwebview_t w);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_show(rktwebview_t w);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_show_normal(rktwebview_t w);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_present(rktwebview_t w);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_maximize(rktwebview_t w);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_minimize(rktwebview_t w);
|
||||
RKTWEBVIEW_EXPORT window_state_t rkt_webview_window_state(rktwebview_t w);
|
||||
|
||||
typedef void (*event_cb_t)(rkt_data_t *);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_choose_dir(rktwebview_t w, const char *title, const char *base_dir);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_file_open(rktwebview_t w, const char *title, const char *base_dir, const char *permitted_exts);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_file_save(rktwebview_t w, const char *title, const char *base_dir, const char *permitted_exts);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT void rkt_webview_init();
|
||||
RKTWEBVIEW_QT_EXPORT void rkt_webview_cleanup();
|
||||
RKTWEBVIEW_QT_EXPORT void rkt_webview_process_events(int for_ms);
|
||||
RKTWEBVIEW_QT_EXPORT void rkt_webview_free_data(rkt_data_t *d);
|
||||
RKTWEBVIEW_QT_EXPORT rkt_data_t *rkt_webview_version();
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT rkt_wv_context_t rkt_webview_new_context(const char *boilerplate_js, const char *optional_server_cert_pem);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT int rkt_webview_create(rkt_wv_context_t context, rktwebview_t parent, event_cb_t js_event_cb);
|
||||
RKTWEBVIEW_QT_EXPORT void rkt_webview_close(rktwebview_t wv);
|
||||
RKTWEBVIEW_QT_EXPORT bool rkt_webview_valid(rktwebview_t wv);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_set_title(rktwebview_t wv, const char *title);
|
||||
RKTWEBVIEW_QT_EXPORT void rkt_webview_set_ou_token(rktwebview_t wv, const char *token);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_set_url(rktwebview_t wv, const char *url);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_set_html(rktwebview_t wv, const char *html);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_run_js(rktwebview_t wv, const char *js);
|
||||
RKTWEBVIEW_QT_EXPORT rkt_data_t *rkt_webview_call_js(rktwebview_t wv, const char *js);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_open_devtools(rktwebview_t wv);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_move(rktwebview_t w, int x, int y);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_resize(rktwebview_t w, int width, int height);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_hide(rktwebview_t w);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_show(rktwebview_t w);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_show_normal(rktwebview_t w);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_present(rktwebview_t w);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_maximize(rktwebview_t w);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_minimize(rktwebview_t w);
|
||||
RKTWEBVIEW_QT_EXPORT window_state_t rkt_webview_window_state(rktwebview_t w);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_choose_dir(rktwebview_t w, const char *title, const char *base_dir);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_file_open(rktwebview_t w, const char *title, const char *base_dir, const char *permitted_exts);
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_file_save(rktwebview_t w, const char *title, const char *base_dir, const char *permitted_exts);
|
||||
|
||||
RKTWEBVIEW_QT_EXPORT result_t rkt_webview_message_box(rktwebview_t w, const char *title, const char *message, const char *submessage, rkt_messagetype_t type);
|
||||
RKTWEBVIEW_EXPORT result_t rkt_webview_message_box(rktwebview_t w, const char *title, const char *message, const char *submessage, rkt_messagetype_t type);
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user