Merge pull request #741 from gianlucafiore/feature/objectscale-dialog
Add annotation object scale access from Properties
This commit is contained in:
commit
d76dcd8426
1 changed files with 29 additions and 0 deletions
|
|
@ -633,6 +633,9 @@ impl PropertiesPanel {
|
||||||
PropValue::BoolToggle { field, value } => render_bool_row(label, *field, *value),
|
PropValue::BoolToggle { field, value } => render_bool_row(label, *field, *value),
|
||||||
PropValue::Stepper { display, .. } => render_stepper_row(label, display),
|
PropValue::Stepper { display, .. } => render_stepper_row(label, display),
|
||||||
PropValue::EditText(val) => self.render_edit_row(label, prop.field, val),
|
PropValue::EditText(val) => self.render_edit_row(label, prop.field, val),
|
||||||
|
PropValue::ReadOnly(val) if prop.field == "annotative_scale" => {
|
||||||
|
render_annotative_scale_row(label, val)
|
||||||
|
}
|
||||||
PropValue::ReadOnly(val) => render_ro_row(label, val),
|
PropValue::ReadOnly(val) => render_ro_row(label, val),
|
||||||
PropValue::HatchPatternChoice(current) => {
|
PropValue::HatchPatternChoice(current) => {
|
||||||
self.render_hatch_pattern_row(label, current)
|
self.render_hatch_pattern_row(label, current)
|
||||||
|
|
@ -1633,7 +1636,33 @@ fn render_group_row(
|
||||||
})
|
})
|
||||||
.into()
|
.into()
|
||||||
}
|
}
|
||||||
|
fn render_annotative_scale_row<'a>(
|
||||||
|
label: &'a str,
|
||||||
|
value: &'a str,
|
||||||
|
) -> Element<'a, Message> {
|
||||||
|
let field = text_input("", value)
|
||||||
|
.on_input(|_| Message::Noop)
|
||||||
|
.size(FONT_SZ)
|
||||||
|
.style(ro_input_style)
|
||||||
|
.padding([3, 6])
|
||||||
|
.width(Length::Fill);
|
||||||
|
|
||||||
|
let manage = button(text("...").size(FONT_SZ))
|
||||||
|
.on_press(Message::AnnoObjectScaleOpen)
|
||||||
|
.style(button::secondary)
|
||||||
|
.padding([2, 7]);
|
||||||
|
|
||||||
|
let controls = row![
|
||||||
|
field,
|
||||||
|
manage,
|
||||||
|
iced::widget::space().width(10)
|
||||||
|
]
|
||||||
|
.spacing(2)
|
||||||
|
.align_y(iced::Center)
|
||||||
|
.width(Length::Fill);
|
||||||
|
|
||||||
|
prop_row_widget(label, controls.into())
|
||||||
|
}
|
||||||
fn render_ro_row<'a>(label: &'a str, value: &'a str) -> Element<'a, Message> {
|
fn render_ro_row<'a>(label: &'a str, value: &'a str) -> Element<'a, Message> {
|
||||||
// A read-only value is shown as a non-editable but selectable text field:
|
// A read-only value is shown as a non-editable but selectable text field:
|
||||||
// the user can select the text (which carries the full, un-truncated
|
// the user can select the text (which carries the full, un-truncated
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue