Skip to main content

cturtle/studio

include "cturtle/studio";

Types​

StudioDocumentSnapshot​

Object

FieldTypeWritableDescription
uristringyes
revisionintyes
sourcestringyes

StudioDocumentSaveResult​

Object

FieldTypeWritableDescription
uristringyes
revisionintyes
savedboolyes
conflictedboolyes
errorstringyes

StudioSourceLocation​

Object

FieldTypeWritableDescription
uristringyes
lineintyes
columnintyes

StudioTextEdit​

Object

FieldTypeWritableDescription
startintyes
lengthintyes
replacementstringyes

StudioDocumentTransaction​

Object

FieldTypeWritableDescription
uristringyes
revisionintyes
labelstringyes
editsarray<StudioTextEdit>yes

StudioDocumentChange​

Object

FieldTypeWritableDescription
uristringyes
revisionintyes
closedboolyes

StudioDocumentSubscription​

Object

FieldTypeWritableDescription
handleintyes
initialStudioDocumentSnapshotyes

next​

fn next() -> StudioDocumentChange

close​

fn close()

StudioToolContribution​

Object

FieldTypeWritableDescription
idstringyes
titlestringyes
defaultRegionintyes
surfaceUiSurfaceyes

StudioViewContext​

Object

FieldTypeWritableDescription
uristringyes
assetKindstringyes

StudioViewResult​

Object

FieldTypeWritableDescription
toolintyes
matchedboolyes
errorstringyes

StudioLazyToolContribution​

Object

FieldTypeWritableDescription
idstringyes
titlestringyes
defaultRegionintyes
createfn(StudioViewContext) -> UiSurfaceyes

StudioDocumentEditorContribution​

Object

FieldTypeWritableDescription
idstringyes
titlestringyes
supportsfn(StudioViewContext) -> boolyes
createfn(StudioViewContext) -> UiSurfaceyes

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