cturtle/studio
include "cturtle/studio";
Types
StudioDocumentSnapshot
Object
| Field | Type | Writable | Description |
|---|---|---|---|
uri | string | yes | |
revision | int | yes | |
source | string | yes |
StudioDocumentSaveResult
Object
| Field | Type | Writable | Description |
|---|---|---|---|
uri | string | yes | |
revision | int | yes | |
saved | bool | yes | |
conflicted | bool | yes | |
error | string | yes |
StudioSourceLocation
Object
| Field | Type | Writable | Description |
|---|---|---|---|
uri | string | yes | |
line | int | yes | |
column | int | yes |
StudioTextEdit
Object
| Field | Type | Writable | Description |
|---|---|---|---|
start | int | yes | |
length | int | yes | |
replacement | string | yes |
StudioDocumentTransaction
Object
| Field | Type | Writable | Description |
|---|---|---|---|
uri | string | yes | |
revision | int | yes | |
label | string | yes | |
edits | array<StudioTextEdit> | yes |
StudioDocumentChange
Object
| Field | Type | Writable | Description |
|---|---|---|---|
uri | string | yes | |
revision | int | yes | |
closed | bool | yes |
StudioDocumentSubscription
Object
| Field | Type | Writable | Description |
|---|---|---|---|
handle | int | yes | |
initial | StudioDocumentSnapshot | yes |
next
fn next() -> StudioDocumentChange
close
fn close()
StudioToolContribution
Object
| Field | Type | Writable | Description |
|---|---|---|---|
id | string | yes | |
title | string | yes | |
defaultRegion | int | yes | |
surface | UiSurface | yes |
StudioViewContext
Object
| Field | Type | Writable | Description |
|---|---|---|---|
uri | string | yes | |
assetKind | string | yes |
StudioViewResult
Object
| Field | Type | Writable | Description |
|---|---|---|---|
tool | int | yes | |
matched | bool | yes | |
error | string | yes |
StudioLazyToolContribution
Object
| Field | Type | Writable | Description |
|---|---|---|---|
id | string | yes | |
title | string | yes | |
defaultRegion | int | yes | |
create | fn(StudioViewContext) -> UiSurface | yes |
StudioDocumentEditorContribution
Object
| Field | Type | Writable | Description |
|---|---|---|---|
id | string | yes | |
title | string | yes | |
supports | fn(StudioViewContext) -> bool | yes | |
create | fn(StudioViewContext) -> UiSurface | yes |
Functions
studio_plugin_sdk_root
fn studio_plugin_sdk_root() -> string
studio_plugin_open
fn studio_plugin_open(
string projectRoot,
string source,
string sdkRoot,
int generation) -> task<int>
studio_plugin_reset
fn studio_plugin_reset(int generation) -> task<void>
studio_plugin_register_tool
fn studio_plugin_register_tool(
string id,
string title,
int region,
UiSurface surface)
studio_plugin_register_lazy_tool
fn studio_plugin_register_lazy_tool(
string id,
string title,
int region,
fn(StudioViewContext) -> UiSurface create)
studio_plugin_register_editor
fn studio_plugin_register_editor(
string id,
string title,
fn(StudioViewContext) -> bool supports,
fn(StudioViewContext) -> UiSurface create)
studio_plugin_factory_count
fn studio_plugin_factory_count(int plugin) -> int
studio_plugin_factory_at
fn studio_plugin_factory_at(int plugin, int index) -> int
studio_plugin_factory_id
fn studio_plugin_factory_id(int factory) -> string
studio_plugin_factory_title
fn studio_plugin_factory_title(int factory) -> string
studio_plugin_factory_region
fn studio_plugin_factory_region(int factory) -> int
studio_plugin_factory_is_editor
fn studio_plugin_factory_is_editor(int factory) -> bool
studio_plugin_create_view
fn studio_plugin_create_view(
int factory,
string uri,
string assetKind) -> task<StudioViewResult>
studio_plugin_match_document
fn studio_plugin_match_document(
int factory,
string uri,
string assetKind) -> task<StudioViewResult>
studio_plugin_create_reply
fn studio_plugin_create_reply(int request, UiSurface surface, string error) -> bool
studio_plugin_match_reply
fn studio_plugin_match_reply(int request, bool matched, string error) -> bool
studio_plugin_activate
fn studio_plugin_activate()
studio_plugin_bind
fn studio_plugin_bind(int tool, UiElement element) -> task<void>
studio_plugin_unbind
fn studio_plugin_unbind(int tool) -> task<void>
studio_plugin_bind_tools
fn studio_plugin_bind_tools(int plugin, array<UiElement> elements) -> task<void>
studio_plugin_close
fn studio_plugin_close(int plugin) -> task<void>
studio_plugin_tool_count
fn studio_plugin_tool_count(int plugin) -> int
studio_plugin_tool_at
fn studio_plugin_tool_at(int plugin, int index) -> int
studio_plugin_tool_id
fn studio_plugin_tool_id(int tool) -> string
studio_plugin_tool_title
fn studio_plugin_tool_title(int tool) -> string
studio_plugin_tool_region
fn studio_plugin_tool_region(int tool) -> int
studio_document_read
fn studio_document_read(string uri) -> task<StudioDocumentSnapshot>
studioProjectImage
fn studioProjectImage(string uri) -> string
studio_game_run
fn studio_game_run(string uri) -> task<int>
studio_game_run_reply
fn studio_game_run_reply(int request, int revision, bool accepted) -> bool
studio_document_replace
fn studio_document_replace(string uri, int revision, string source) -> task<int>
studio_document_apply_edits
fn studio_document_apply_edits(
string uri,
int revision,
string label,
array<StudioTextEdit> edits) -> task<int>
studio_document_save
fn studio_document_save(string uri, int revision) -> task<StudioDocumentSaveResult>
studio_source_reveal
fn studio_source_reveal(string uri, int line, int column) -> task<int>
studio_document_request_edits
fn studio_document_request_edits(int request) -> array<StudioTextEdit>
studio_document_subscribe
fn studio_document_subscribe(string uri) -> int
studio_document_subscribe_lifecycle
fn studio_document_subscribe_lifecycle(string uri) -> int
studio_document_next_change
fn studio_document_next_change(int subscription) -> task<StudioDocumentChange>
studio_document_unsubscribe
fn studio_document_unsubscribe(int subscription)
studio_document_publish_change
fn studio_document_publish_change(string uri, int revision, bool closed)
studio_document_read_reply
fn studio_document_read_reply(
int request,
string uri,
int revision,
string source,
bool accepted) -> bool
studio_document_replace_reply
fn studio_document_replace_reply(int request, int revision, bool accepted) -> bool
studio_document_save_reply
fn studio_document_save_reply(
int request,
string uri,
int revision,
bool saved,
bool conflicted,
string error,
bool accepted) -> bool
studio_source_reveal_reply
fn studio_source_reveal_reply(int request, int revision, bool accepted) -> bool
studio_plugin_request_active
fn studio_plugin_request_active(int request) -> bool
studio_plugin_pointer_down
fn studio_plugin_pointer_down(
int tool,
int button,
float x,
float y,
int modifiers)
studio_plugin_pointer_up
fn studio_plugin_pointer_up(int tool, int button, float x, float y)
studio_plugin_pointer_move
fn studio_plugin_pointer_move(int tool, float x, float y)
studio_plugin_scroll
fn studio_plugin_scroll(int tool, float x, float y, float dx, float dy)
studio_plugin_key
fn studio_plugin_key(int tool, int key, int modifiers)
studio_plugin_key_up
fn studio_plugin_key_up(int tool, int key, int modifiers)
studio_plugin_focus
fn studio_plugin_focus(int tool, bool focused)
studio_plugin_char
fn studio_plugin_char(int tool, int codepoint)
studio_plugin_paste
fn studio_plugin_paste(int tool, string text)
studioSaveDocument
fn studioSaveDocument(string uri, int revision) -> StudioDocumentSaveResult
studioRevealSource
fn studioRevealSource(StudioSourceLocation location) -> int
studioRunGame
fn studioRunGame(string manifestUri) -> int
studioSubscribeDocument
fn studioSubscribeDocument(string uri) -> StudioDocumentSubscription
studioSubscribeDocumentLifecycle
fn studioSubscribeDocumentLifecycle(string uri) -> StudioDocumentSubscription
studioApplyDocumentEdits
fn studioApplyDocumentEdits(StudioDocumentTransaction transaction) -> int
studioRegionLeft infallible
infallible fn studioRegionLeft() -> int
studioRegionDocument infallible
infallible fn studioRegionDocument() -> int
studioRegionRight infallible
infallible fn studioRegionRight() -> int
studioRegionBottom infallible
infallible fn studioRegionBottom() -> int
studioRegisterTool
fn studioRegisterTool(StudioToolContribution tool)
studioRegisterLazyTool
fn studioRegisterLazyTool(StudioLazyToolContribution tool)
studioRegisterDocumentEditor
fn studioRegisterDocumentEditor(StudioDocumentEditorContribution editor)
studioPluginRunFactory
fn studioPluginRunFactory(
int request,
fn(StudioViewContext) -> UiSurface create,
StudioViewContext context)
studioPluginRunMatch
fn studioPluginRunMatch(
int request,
fn(StudioViewContext) -> bool supports,
StudioViewContext context)
studioCreateView
fn studioCreateView(int factory, StudioViewContext context) -> int
studioMatchDocument
fn studioMatchDocument(int factory, StudioViewContext context) -> bool