pub struct AddDatum;Expand description
Adds a datum to the part, named by the operation’s id: a point, an
axis, a plane or a coordinate system built from the selected entities by
one of the
Constructions. Like a sketch’s plane, it is built when the step runs
and stays where it was, whatever later steps do to what it was built
from.
Trait Implementations§
impl Copy for AddDatum
Source§impl<'de> Deserialize<'de> for AddDatum
impl<'de> Deserialize<'de> for AddDatum
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 AddDatum
impl Editable for AddDatum
const INFO: OperationInfo = <AddDatum as ::geop_core_editor::part_operation::PartOperation>::INFO
Source§type EditingState = FormState<<AddDatum as PartOperation>::Session>
type EditingState = FormState<<AddDatum 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 AddDatum
impl Operation for AddDatum
Source§const KIND: &'static str = <AddDatum as ::geop_core_editor::part_operation::PartOperation>::KIND
const KIND: &'static str = <AddDatum as ::geop_core_editor::part_operation::PartOperation>::KIND
The name programs store its steps under.
Source§type Args = <AddDatum as PartOperation>::Args
type Args = <AddDatum 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 AddDatum
impl PartOperation for AddDatum
Source§fn new_args(_: &Context<'_>) -> AddDatumArgs
fn new_args(_: &Context<'_>) -> AddDatumArgs
Nothing selected yet, and the first construction.
Source§fn run(ctx: &mut StepContext<'_>, args: &AddDatumArgs) -> GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &AddDatumArgs) -> GeopResult<()>
Adds the datum named after the step to the part’s datums.
Source§fn form<'a>(
context: &'a Context<'a>,
args: &AddDatumArgs,
_: &FormState<()>,
) -> EditForm<'a, AddDatumArgs>
fn form<'a>( context: &'a Context<'a>, args: &AddDatumArgs, _: &FormState<()>, ) -> EditForm<'a, AddDatumArgs>
Picking the selection, choosing among the constructions that fit
it, and offsets as handles and a gizmo: see [crate::editor].
const INFO: OperationInfo
Source§type Args = AddDatumArgs
type Args = AddDatumArgs
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 canvas(
context: &Context<'_>,
edit: Edit<'_, AddDatumArgs, ()>,
event: &CanvasEvent,
)
fn canvas( context: &Context<'_>, edit: Edit<'_, AddDatumArgs, ()>, event: &CanvasEvent, )
What the pointer or a key did on the canvas: nothing, by default.
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.
impl StructuralPartialEq for AddDatum
Auto Trait Implementations§
impl Freeze for AddDatum
impl RefUnwindSafe for AddDatum
impl Send for AddDatum
impl Sync for AddDatum
impl Unpin for AddDatum
impl UnsafeUnpin for AddDatum
impl UnwindSafe for AddDatum
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