pub mod authoring;
pub mod builder;
pub mod builder_editor;
pub mod code;
pub mod code_undo;
pub mod console;
pub mod data;
pub mod data_editor;
pub mod data_undo;
pub mod dungeon;
pub mod log;
pub mod organic;
pub mod palette;
pub mod particle_preview;
pub mod text_play;
pub mod tilemap;
pub mod tiles;
pub mod tiles_editor;
pub mod tiles_editor_undo;
pub mod visual_code;
pub mod visual_code_undo;
pub use crate::prelude::*;
use codegridfx::DebugModule;
#[derive(Clone, Copy, PartialEq)]
pub enum DockDefaultState {
Minimized,
Maximized,
}
#[derive(Clone, Copy, PartialEq)]
pub enum DockMaximizedState {
Maximized,
Editor,
}
#[allow(unused)]
pub trait Dock: Send + Sync {
fn new() -> Self
where
Self: Sized;
fn setup(&mut self, ctx: &mut TheContext) -> TheCanvas;
fn activate(
&mut self,
ui: &mut TheUI,
ctx: &mut TheContext,
project: &Project,
server_ctx: &mut ServerContext,
) {
}
fn minimized(&mut self, ui: &mut TheUI, ctx: &mut TheContext) {}
fn supports_actions(&self) -> bool {
true
}
fn default_state(&self) -> DockDefaultState {
DockDefaultState::Minimized
}
fn maximized_state(&self) -> DockMaximizedState {
DockMaximizedState::Maximized
}
fn import(
&mut self,
content: String,
ui: &mut TheUI,
ctx: &mut TheContext,
project: &mut Project,
server_ctx: &mut ServerContext,
) {
}
fn export(&self) -> Option<String> {
None
}
fn handle_event(
&mut self,
event: &TheEvent,
ui: &mut TheUI,
ctx: &mut TheContext,
project: &mut Project,
server_ctx: &mut ServerContext,
) -> bool {
false
}
fn supports_undo(&self) -> bool {
false
}
fn has_changes(&self) -> bool {
false
}
fn mark_saved(&mut self) {}
fn set_undo_state_to_ui(&self, ctx: &mut TheContext) {}
fn undo(
&mut self,
ui: &mut TheUI,
ctx: &mut TheContext,
project: &mut Project,
server_ctx: &mut ServerContext,
) {
}
fn redo(
&mut self,
ui: &mut TheUI,
ctx: &mut TheContext,
project: &mut Project,
server_ctx: &mut ServerContext,
) {
}
fn editor_tools(&self) -> Option<Vec<Box<dyn EditorTool>>> {
None
}
fn draw_minimap(
&self,
buffer: &mut TheRGBABuffer,
project: &Project,
ctx: &mut TheContext,
server_ctx: &ServerContext,
) -> bool {
false
}
fn supports_minimap_animation(&self) -> bool {
false
}
fn apply_debug_data(
&mut self,
ui: &mut TheUI,
ctx: &mut TheContext,
project: &Project,
server_ctx: &ServerContext,
debug: &DebugModule,
) {
}
}