use gtk4 as gtk; use gtk::{*, prelude::*}; use crate::model::builder_traits::Product; use crate::view::{ properties::*, components::{ wrapper::*, input::Input, }, }; pub fn signal_reducing_page(wrapper: &Box) { let inputs_first_line = Box::new(Orientation::Horizontal, 5); inputs_first_line.set_valign(Align::Fill); let input_height : i32 = 20; let wire_length_input = Input::builder() .set_label("Длина провода (L = [м]):") .set_align(Align::Fill) .set_margins(MarginData::EqualsMargin(5)) .build(true, WrapMode::Word, input_height) .get(); let resistance_input = Input::builder() .set_label("Сопротивление (Rм = [Ом * м]):") .set_align(Align::Fill) .set_margins(MarginData::EqualsMargin(5)) .build(true, WrapMode::Word, input_height) .get(); let capacity_input = Input::builder() .set_label("Ёмкость (Cм = [пФ * м]):") .set_align(Align::Fill) .set_margins(MarginData::EqualsMargin(5)) .build(true, WrapMode::Word, input_height) .get(); let inputs_second_line = Box::new(Orientation::Horizontal, 5); inputs_second_line.set_valign(Align::Fill); let voltage_input = Input::builder() .set_label("Напряжение (Vи = [мВ]):") .set_align(Align::Fill) .set_margins(MarginData::EqualsMargin(5)) .build(true, WrapMode::Word, input_height) .get(); let source_implicit_resistance_input = Input::builder() .set_label("Сопротивление источника (R = [Ом]):") .set_align(Align::Fill) .set_margins(MarginData::EqualsMargin(5)) .build(true, WrapMode::Word, input_height) .get(); let freq_input = Input::builder() .set_label("Частота (f = [МГц]):") .set_align(Align::Fill) .set_margins(MarginData::EqualsMargin(5)) .build(true, WrapMode::Word, input_height) .get(); inputs_first_line.append(&wire_length_input); inputs_first_line.append(&resistance_input); inputs_first_line.append(&capacity_input); inputs_second_line.append(&voltage_input); inputs_second_line.append(&source_implicit_resistance_input); inputs_second_line.append(&freq_input); wrapper.append(&inputs_first_line); wrapper.append(&inputs_second_line); }