From cbde9a8af1afeae3635e634348306866e8a763b9 Mon Sep 17 00:00:00 2001 From: doryan Date: Sat, 3 Aug 2024 00:06:22 +0400 Subject: [PATCH] refactor: change import and function signature SignalReduce model import has been added instead Infobar. Return value in function signature has been changed (Option<[f64; 6]> -> Result). --- .../view_utils/signal_reduce_input_utils.rs | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/controller/view_utils/signal_reduce_input_utils.rs b/src/controller/view_utils/signal_reduce_input_utils.rs index 021a28e..92537f5 100644 --- a/src/controller/view_utils/signal_reduce_input_utils.rs +++ b/src/controller/view_utils/signal_reduce_input_utils.rs @@ -7,7 +7,7 @@ use gtk::{ TextBuffer, }; -use crate::view::components::{info_bar::InfoBar, input::Input}; +use crate::{model::models::SignalReduce, view::components::input::Input}; pub fn get_error_message(error_instance: ParseFloatError) -> Option<&'static str> { match error_instance.to_string().as_str() { @@ -17,11 +17,9 @@ pub fn get_error_message(error_instance: ParseFloatError) -> Option<&'static str } } -pub fn parse_fields(all_inputs: Vec) -> Option<[f64; 6]> { +pub fn parse_fields(all_inputs: Vec) -> Result { let mut values: [f64; 6] = [0f64; 6]; - let info_bar = InfoBar::get_instance(); - for (i, input) in all_inputs.iter().enumerate() { let input_text_buffer: TextBuffer = input.clone().get_input().buffer(); let try_extract_value = f64::from_str( @@ -36,16 +34,11 @@ pub fn parse_fields(all_inputs: Vec) -> Option<[f64; 6]> { ); match try_extract_value { Ok(value) => values[i] = value, - Err(error) => { - let error_kind: Option<&str> = get_error_message(error); - - info_bar.set_text_label(error_kind); - info_bar.show_infobar(5u64); - - return None; - } + Err(error) => return Err(error), } } - Some(values) + Ok(SignalReduce( + values[0], values[1], values[2], values[3], values[4], values[5], + )) }