pub struct PartProperties;Expand description
Defines what the part is called and ordered as, its colours, and what
it is made of: its properties. The colour is the run’s input
COLOR where it is given one.
Its colours of faces name faces later steps make, and it comes first in
most programs, so it reads none of them: it holds their names, and the
viewer asks for a face’s colour by the face’s name. A name no face has
now fails nothing, and its dialog says so; a colour changed builds
nothing again. It is edited with the whole part built and picks in that
(OperationInfo::picks_whole).
Trait Implementations§
Source§impl Clone for PartProperties
impl Clone for PartProperties
Source§fn clone(&self) -> PartProperties
fn clone(&self) -> PartProperties
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for PartProperties
Source§impl Debug for PartProperties
impl Debug for PartProperties
Source§impl Default for PartProperties
impl Default for PartProperties
Source§fn default() -> PartProperties
fn default() -> PartProperties
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for PartProperties
impl<'de> Deserialize<'de> for PartProperties
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Editable for PartProperties
impl Editable for PartProperties
const INFO: OperationInfo = <PartProperties as ::geop_core_editor::part_operation::PartOperation>::INFO
Source§type EditingState = FormState<<PartProperties as PartOperation>::Session>
type EditingState = FormState<<PartProperties as PartOperation>::Session>
What the editor keeps about a step while it is edited, beyond its
arguments, starting from the default whenever a step is opened.
Source§fn new_args(context: &Context<'_>) -> Self::Args
fn new_args(context: &Context<'_>) -> Self::Args
The arguments of a new step: sensible defaults, taking the part it
is inserted into into account.
Source§fn presentation(
context: &Context<'_>,
args: &Self::Args,
editing: &Self::EditingState,
) -> Form
fn presentation( context: &Context<'_>, args: &Self::Args, editing: &Self::EditingState, ) -> Form
What the editor shows while the step is edited. Never fails: an
editor needs the form most exactly when the arguments do not build,
so whatever is wrong is said in it.
Source§fn process_user_event(
context: &Context<'_>,
args: &Self::Args,
editing: &Self::EditingState,
event: Event,
) -> (Self::Args, Self::EditingState)
fn process_user_event( context: &Context<'_>, args: &Self::Args, editing: &Self::EditingState, event: Event, ) -> (Self::Args, Self::EditingState)
The step’s arguments and editing state after
event.Source§impl Operation for PartProperties
impl Operation for PartProperties
Source§const KIND: &'static str = <PartProperties as ::geop_core_editor::part_operation::PartOperation>::KIND
const KIND: &'static str = <PartProperties as ::geop_core_editor::part_operation::PartOperation>::KIND
The name programs store its steps under.
Source§type Args = <PartProperties as PartOperation>::Args
type Args = <PartProperties as PartOperation>::Args
What a step of the operation is given. It is saved with the program,
so it names targets and elements, never holds their internal ids.
Source§fn run(ctx: &mut StepContext<'_>, args: &Self::Args) -> __GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &Self::Args) -> __GeopResult<()>
Declares what the step produces, through
ctx (see
StepContext::produce): cheap, since it runs in every run. What
takes work is done in the makes, which run only when what they read
changed.Source§impl PartOperation for PartProperties
impl PartOperation for PartProperties
Source§fn form<'a>(
context: &'a Context<'a>,
args: &PartPropertiesArgs,
_: &FormState<()>,
) -> EditForm<'a, PartPropertiesArgs>
fn form<'a>( context: &'a Context<'a>, args: &PartPropertiesArgs, _: &FormState<()>, ) -> EditForm<'a, PartPropertiesArgs>
Its title and designation typed, its colour picked, some faces in
colours of their own, and its material chosen from the list
(Material::listed), or none, or any other by its name and
density.
const INFO: OperationInfo
Source§type Args = PartPropertiesArgs
type Args = PartPropertiesArgs
What a step is given. It is saved with the program, so it names
targets and elements, never holds their internal ids.
Source§type Session = ()
type Session = ()
What the editor keeps while a step is edited besides its arguments
and the visuals selected:
() for most.Source§fn new_args(_: &Context<'_>) -> PartPropertiesArgs
fn new_args(_: &Context<'_>) -> PartPropertiesArgs
The arguments of a new step: sensible defaults, taking the part it
is inserted into into account.
Source§fn run(ctx: &mut StepContext<'_>, args: &PartPropertiesArgs) -> GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &PartPropertiesArgs) -> GeopResult<()>
Declares what the step produces, through
ctx (see
StepContext::produce).Source§fn begin_event(session: &mut Self::Session)
fn begin_event(session: &mut Self::Session)
What the session forgets at the start of every event, before the
event is handled: nothing, by default.
Source§impl PartialEq for PartProperties
impl PartialEq for PartProperties
Source§impl Serialize for PartProperties
impl Serialize for PartProperties
impl StructuralPartialEq for PartProperties
Auto Trait Implementations§
impl Freeze for PartProperties
impl RefUnwindSafe for PartProperties
impl Send for PartProperties
impl Sync for PartProperties
impl Unpin for PartProperties
impl UnsafeUnpin for PartProperties
impl UnwindSafe for PartProperties
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more