Skip to main content

LauncherApp

Struct LauncherApp 

Source
pub(crate) struct LauncherApp {
    pub(crate) status_msg: String,
    pub(crate) show_kernel_console: bool,
    pub(crate) show_gui_console: bool,
    pub(crate) system: System,
}
Expand description

Primary state structure for the Launcher GUI application.

Fields§

§status_msg: String

Human-readable status message displayed in the UI for user feedback.

§show_kernel_console: bool

Whether to open a visible console window when spawning the Kernel.

§show_gui_console: bool

Whether to open a visible console window when spawning the GUI client.

§system: System

System monitor instance used for querying running processes.

Implementations§

Source§

impl LauncherApp

Source

pub(crate) fn new(_ctx: Context) -> Self

Creates a new LauncherApp instance with default state, initializes the [System] monitor, and resolves the workspace directory.

§Arguments
  • _ctx - The egui context used for UI rendering and state configuration.
Source

pub(crate) fn draw_kernel_group(&mut self, ui: &mut Ui)

Renders the UI section for configuring and launching the REKTAL Kernel.

Includes a live status indicator (green/red dot), a checkbox for toggling the terminal console, and a button to spawn the process if not already running.

§Arguments
  • ui - The egui UI builder used to draw the controls.
Source

pub(crate) fn draw_gui_group(&mut self, ui: &mut Ui)

Renders the UI section for configuring and launching the REKTAL GUI client.

Includes a live status indicator (green/red dot), a checkbox for toggling the terminal console, and a button to spawn the process.

§Arguments
  • ui - The egui UI builder used to draw the controls.
Source

pub(crate) fn is_kernel_active(&self) -> bool

Checks whether a REKTAL Kernel process is currently active on the host system.

Iterates through the active system processes cached in [System] to check if any process name begins with "kernel".

§Returns

true if a matching Kernel process is active, false otherwise.

Source

pub(crate) fn is_gui_active(&self) -> bool

Checks whether a REKTAL GUI client process is currently active on the host system.

Iterates through the active system processes cached in [System] to check if any process name begins with "gui".

§Returns

true if a matching GUI client process is active, false otherwise.

Trait Implementations§

Source§

impl App for LauncherApp

Source§

fn update(&mut self, ctx: &Context, _frame: &mut Frame)

Primary update function called once per UI frame by eframe.

Renders the central panel with side-by-side controls and live status dots for Kernel and GUI, presents active status messages, refreshes the OS process list, and schedules automatic repaints every 500ms.

§

fn save(&mut self, _storage: &mut dyn Storage)

Called on shutdown, and perhaps at regular intervals. Allows you to save state. Read more
§

fn on_exit(&mut self, _gl: Option<&Context>)

Called once on shutdown, after [Self::save]. Read more
§

fn auto_save_interval(&self) -> Duration

Time between automatic calls to [Self::save]
§

fn clear_color(&self, _visuals: &Visuals) -> [f32; 4]

Background color values for the app, e.g. what is sent to gl.clearColor. Read more
§

fn persist_egui_memory(&self) -> bool

Controls whether or not the egui memory (window positions etc) will be persisted (only if the “persistence” feature is enabled).
§

fn raw_input_hook(&mut self, _ctx: &Context, _raw_input: &mut RawInput)

A hook for manipulating or filtering raw input before it is processed by [Self::update]. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more