diff --git a/src/services/ui_service.rs b/src/services/ui_service.rs index 24d5d9c..598b770 100644 --- a/src/services/ui_service.rs +++ b/src/services/ui_service.rs @@ -64,10 +64,9 @@ impl UiService { fn init_refresh_com_button(&mut self) { let ui_rc = Rc::clone(&self.ui); - let ui_rc_clone = Rc::clone(&ui_rc); - ui_rc.borrow_mut().refresh_com_btn.set_callback(move |_| { + self.ui.borrow_mut().refresh_com_btn.set_callback(move |_| { let comports = WorkService::get_port_names(); - let mut ui = ui_rc_clone.borrow_mut(); + let mut ui = ui_rc.borrow_mut(); ui.com_choice.clear(); for com in comports { ui.com_choice.add_choice(&com); @@ -75,9 +74,8 @@ impl UiService { }); } fn init_exit_callback(&mut self) { - let ui_rc = Rc::clone(&self.ui); let work_service_rc = Rc::clone(&self.work_service); - ui_rc.borrow_mut().main_window.set_callback(move |_| { + self.ui.borrow_mut().main_window.set_callback(move |_| { let work_service = work_service_rc.borrow_mut(); work_service.save_config(); process::exit(0); @@ -86,10 +84,9 @@ impl UiService { fn init_set_line_btn(&mut self) { let ui_rc = Rc::clone(&self.ui); - let ui_rc_clone = Rc::clone(&ui_rc); let work_service_rc = Rc::clone(&self.work_service); - ui_rc.borrow_mut().set_lines_btn.set_callback(move |_| { - let ui_clone = ui_rc_clone.clone(); + self.ui.borrow_mut().set_lines_btn.set_callback(move |_| { + let ui_clone = ui_rc.clone(); let mut set_dialog = UserInterface1::make_set_line_window(); let work_service_rc_clone = work_service_rc.clone(); set_dialog.ok_btn.set_callback(move |_| { @@ -108,10 +105,9 @@ impl UiService { } fn init_start_btn(&mut self) { - let ui_rc = Rc::clone(&self.ui); - let ui_rc_clone = Rc::clone(&ui_rc); + let ui_rc_clone = Rc::clone(&self.ui); let work_service_rc = Rc::clone(&self.work_service); - ui_rc.borrow_mut().start_btn.set_callback(move |_| { + self.ui.borrow_mut().start_btn.set_callback(move |_| { let mut ui = ui_rc_clone.borrow_mut(); let mut work_service = work_service_rc.borrow_mut(); if let Some(mut buffer) = ui.log_content.buffer() { @@ -146,9 +142,8 @@ impl UiService { } fn init_log(&mut self) { - let ui_rc = Rc::clone(&self.ui); let text_buffer = TextBuffer::default(); - ui_rc.borrow_mut().log_content.set_buffer(text_buffer.clone()); + self.ui.borrow_mut().log_content.set_buffer(text_buffer.clone()); let text_buffer_arc = Arc::new(Mutex::new(text_buffer)); LOGGER.set_callback(move |msg| { let mut text_buffer = text_buffer_arc.lock().unwrap(); @@ -158,16 +153,15 @@ impl UiService { fn init_excel(&mut self) { let ui_rc = Rc::clone(&self.ui); - let ui_clone = Rc::clone(&self.ui); let work_service_clone = Rc::clone(&self.work_service); - ui_rc.borrow_mut().select_file_btn.set_callback(move |_| { - let mut ui = ui_clone.borrow_mut(); + self.ui.borrow_mut().select_file_btn.set_callback(move |_| { + let mut ui = ui_rc.borrow_mut(); let mut work_service = work_service_clone.borrow_mut(); let mut dialog = fltk::dialog::FileDialog::new(fltk::dialog::FileDialogType::BrowseFile); dialog.show(); let binding = dialog.filename(); let path = binding.to_str().unwrap(); - if path == "" {return;} + if path == "" { return; } work_service.init_excel_service(path.to_string()).unwrap(); let current_line = &work_service.get_current_line().to_string(); work_service.config_model.excel_path = path.to_string();