This commit is contained in:
2026-08-09 19:56:06 +02:00
parent 37468d4fa0
commit cee2f452aa
15 changed files with 71 additions and 70 deletions
+36 -36
View File
@@ -1,6 +1,6 @@
#lang scribble/manual
@defmodule[racket-webview/c-api]
@bold{Interface:} @tt{racket-webview/c-api}
@author[@author+email["Hans Dijkema" "hans@dijkewijk.nl"]]
@@ -106,7 +106,7 @@ This applies to values returned by @tt{rkt_webview_info()},
@section{Environment and Runtime Control}
@defproc[(rkt_webview_env [env_cmds any/c]) void?]{
@defproc[#:link-target? #f (rkt_webview_env [env_cmds any/c]) void?]{
C signature:
@verbatim{
@@ -120,7 +120,7 @@ form @tt{"NAME=value"}.
Return value: none.
}
@defproc[(rkt_webview_init) void?]{
@defproc[#:link-target? #f (rkt_webview_init) void?]{
C signature:
@verbatim{
@@ -133,7 +133,7 @@ helper process.
Return value: none.
}
@defproc[(rkt_webview_cleanup) void?]{
@defproc[#:link-target? #f (rkt_webview_cleanup) void?]{
C signature:
@verbatim{
@@ -146,7 +146,7 @@ previously returned context and webview handles are invalid.
Return value: none.
}
@defproc[(rkt_webview_set_loglevel [l any/c]) void?]{
@defproc[#:link-target? #f (rkt_webview_set_loglevel [l any/c]) void?]{
C signature:
@verbatim{
@@ -158,7 +158,7 @@ Sets the backend log level.
Return value: none.
}
@defproc[(rkt_webview_info) any/c]{
@defproc[#:link-target? #f (rkt_webview_info) any/c]{
C signature:
@verbatim{
@@ -171,7 +171,7 @@ Returns a pointer to @tt{rkt_data_t}. The returned object has
Return value: @tt{rkt_data_t *}, caller-owned.
}
@defproc[(rkt_webview_version) any/c]{
@defproc[#:link-target? #f (rkt_webview_version) any/c]{
C signature:
@verbatim{
@@ -184,9 +184,9 @@ Returns a pointer to @tt{rkt_data_t}. The returned object has
Return value: @tt{rkt_data_t *}, caller-owned.
}
@subsection{Events}
@subsection[#:tag "rktwebview-c-api-events"]{Events}
@defproc[(rkt_webview_events_waiting) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_events_waiting) exact-integer?]{
C signature:
@verbatim{
@@ -198,7 +198,7 @@ Returns the number of events currently waiting in the event queue.
Return value: @tt{int}.
}
@defproc[(rkt_webview_get_event) any/c]{
@defproc[#:link-target? #f (rkt_webview_get_event) any/c]{
C signature:
@verbatim{
@@ -221,9 +221,9 @@ This keeps the event queue flowing, allows asynchronous operations such as
dialogs to complete in a timely manner, and avoids the impression that the system
has stalled while the Racket side is simply not looking.
@section{Contexts}
@section[#:tag "rktwebview-c-api-contexts"]{Contexts}
@defproc[(rkt_webview_new_context [boilerplate_js string?]
@defproc[#:link-target? #f (rkt_webview_new_context [boilerplate_js string?]
[optional_server_cert_pem string?])
exact-integer?]{
C signature:
@@ -241,7 +241,7 @@ Return value: @tt{rkt_wv_context_t}.
@section{Webviews}
@defproc[(rkt_webview_create [context exact-integer?]
@defproc[#:link-target? #f (rkt_webview_create [context exact-integer?]
[parent exact-integer?])
exact-integer?]{
C signature:
@@ -257,7 +257,7 @@ otherwise it is created as a top-level window.
Return value: webview handle as @tt{int}.
}
@defproc[(rkt_webview_close [wv exact-integer?]) void?]{
@defproc[#:link-target? #f (rkt_webview_close [wv exact-integer?]) void?]{
C signature:
@verbatim{
@@ -269,7 +269,7 @@ Closes the specified webview.
Return value: none.
}
@defproc[(rkt_webview_valid [wv exact-integer?]) boolean?]{
@defproc[#:link-target? #f (rkt_webview_valid [wv exact-integer?]) boolean?]{
C signature:
@verbatim{
@@ -281,7 +281,7 @@ Checks whether @tt{wv} is a valid webview handle.
Return value: @tt{bool}.
}
@defproc[(rkt_webview_set_title [wv exact-integer?] [title string?])
@defproc[#:link-target? #f (rkt_webview_set_title [wv exact-integer?] [title string?])
exact-integer?]{
C signature:
@@ -294,7 +294,7 @@ Sets the window title of the specified webview.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_set_ou_token [wv exact-integer?] [token string?]) void?]{
@defproc[#:link-target? #f (rkt_webview_set_ou_token [wv exact-integer?] [token string?]) void?]{
C signature:
@verbatim{
@@ -309,7 +309,7 @@ Return value: none.
@section{Navigation and JavaScript}
@defproc[(rkt_webview_set_url [wv exact-integer?] [url string?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_set_url [wv exact-integer?] [url string?]) exact-integer?]{
C signature:
@verbatim{
@@ -321,7 +321,7 @@ Navigates the specified webview to the given URL.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_set_html [wv exact-integer?] [html string?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_set_html [wv exact-integer?] [html string?]) exact-integer?]{
C signature:
@verbatim{
@@ -333,7 +333,7 @@ Loads raw HTML into the specified webview.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_run_js [wv exact-integer?] [js string?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_run_js [wv exact-integer?] [js string?]) exact-integer?]{
C signature:
@verbatim{
@@ -345,7 +345,7 @@ Executes JavaScript asynchronously in the specified webview.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_call_js [wv exact-integer?] [js string?]) any/c]{
@defproc[#:link-target? #f (rkt_webview_call_js [wv exact-integer?] [js string?]) any/c]{
C signature:
@verbatim{
@@ -365,7 +365,7 @@ result string.
Return value: @tt{rkt_data_t *}, caller-owned.
}
@defproc[(rkt_webview_open_devtools [wv exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_open_devtools [wv exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -379,7 +379,7 @@ Return value: @tt{result_t}.
@section{Window Management}
@defproc[(rkt_webview_move [w exact-integer?] [x exact-integer?] [y exact-integer?])
@defproc[#:link-target? #f (rkt_webview_move [w exact-integer?] [x exact-integer?] [y exact-integer?])
exact-integer?]{
C signature:
@@ -392,7 +392,7 @@ Moves the specified window to the given screen coordinates.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_resize [w exact-integer?]
@defproc[#:link-target? #f (rkt_webview_resize [w exact-integer?]
[width exact-integer?]
[height exact-integer?])
exact-integer?]{
@@ -407,7 +407,7 @@ Resizes the specified window.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_hide [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_hide [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -419,7 +419,7 @@ Hides the specified window.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_show [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_show [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -431,7 +431,7 @@ Shows the specified window.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_show_normal [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_show_normal [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -443,7 +443,7 @@ Restores the specified window to its normal state.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_present [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_present [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -455,7 +455,7 @@ Presents the specified window to the user.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_maximize [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_maximize [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -467,7 +467,7 @@ Maximizes the specified window.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_minimize [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_minimize [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -479,7 +479,7 @@ Minimizes the specified window.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_window_state [w exact-integer?]) exact-integer?]{
@defproc[#:link-target? #f (rkt_webview_window_state [w exact-integer?]) exact-integer?]{
C signature:
@verbatim{
@@ -491,7 +491,7 @@ Returns the current state of the specified window.
Return value: @tt{window_state_t}.
}
@section{Dialogs}
@section[#:tag "rktwebview-c-api-dialogs"]{Dialogs}
The dialog functions are asynchronous. They request that the dialog be opened on
the Qt side, but do not block the Racket side while the dialog is shown. This is
@@ -502,7 +502,7 @@ Completion of a dialog is therefore observed through events, not by blocking the
calling thread.
@defproc[(rkt_webview_choose_dir [w exact-integer?]
@defproc[#:link-target? #f (rkt_webview_choose_dir [w exact-integer?]
[title string?]
[base_dir string?])
exact-integer?]{
@@ -519,7 +519,7 @@ reported through events.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_file_open [w exact-integer?]
@defproc[#:link-target? #f (rkt_webview_file_open [w exact-integer?]
[title string?]
[base_dir string?]
[permitted_exts string?])
@@ -537,7 +537,7 @@ reported through events.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_file_save [w exact-integer?]
@defproc[#:link-target? #f (rkt_webview_file_save [w exact-integer?]
[title string?]
[base_dir string?]
[permitted_exts string?])
@@ -555,7 +555,7 @@ reported through events.
Return value: @tt{result_t}.
}
@defproc[(rkt_webview_message_box [w exact-integer?]
@defproc[#:link-target? #f (rkt_webview_message_box [w exact-integer?]
[title string?]
[message string?]
[submessage string?]