@@ -66,10 +66,10 @@ pub(super) fn ui_family_and_params(app: &mut CurveFitApp, ui: &mut egui::Ui) {
6666 ) )
6767 . show ( ui, |ui| {
6868 ui. horizontal ( |ui| {
69- ui. label (
69+ let formula_label_response = ui. label (
7070 egui:: RichText :: new ( tr ( language, "Model Formula" , "Формула модели" ) ) . strong ( ) ,
7171 ) ;
72- CurveFitApp :: info_tooltip ( ui , formula_help. as_str ( ) ) ;
72+ let _ = CurveFitApp :: info_hover ( formula_label_response , formula_help. as_str ( ) ) ;
7373 ui. with_layout ( egui:: Layout :: right_to_left ( egui:: Align :: Center ) , |ui| {
7474 if ui
7575 . add ( egui:: Button :: image ( open_formula_icon_image ( icon_tint) ) )
@@ -87,8 +87,9 @@ pub(super) fn ui_family_and_params(app: &mut CurveFitApp, ui: &mut egui::Ui) {
8787 let mut method_to_apply = None ;
8888 let mut apply_fitted_init = false ;
8989 ui. horizontal_wrapped ( |ui| {
90- ui. label ( tr ( language, "Initial parameters" , "Начальные параметры" ) ) ;
91- CurveFitApp :: info_tooltip ( ui, parametric_init_hint ( language) ) ;
90+ let init_label_response =
91+ ui. label ( tr ( language, "Initial parameters" , "Начальные параметры" ) ) ;
92+ let _ = CurveFitApp :: info_hover ( init_label_response, parametric_init_hint ( language) ) ;
9293 ui. add_enabled_ui ( can_edit_params, |ui| {
9394 ui. menu_button (
9495 tr ( language, "+ Initialize" , "+ Инициализация" ) ,
@@ -123,11 +124,16 @@ pub(super) fn ui_family_and_params(app: &mut CurveFitApp, ui: &mut egui::Ui) {
123124 ui. close ( ) ;
124125 }
125126 } else {
126- ui. add_enabled (
127- false ,
128- egui:: Button :: new ( param_init_method_disabled_label (
129- language, method,
130- ) ) ,
127+ let unavailable_label = format ! (
128+ "{} ({})" ,
129+ param_init_method_label( language, method) ,
130+ tr( language, "not available" , "недоступно" )
131+ ) ;
132+ let unavailable_response =
133+ ui. add_enabled ( false , egui:: Button :: new ( unavailable_label) ) ;
134+ let _ = CurveFitApp :: info_hover (
135+ unavailable_response,
136+ param_init_method_disabled_label ( language, method) ,
131137 ) ;
132138 }
133139 }
@@ -166,8 +172,9 @@ pub(super) fn ui_family_and_params(app: &mut CurveFitApp, ui: &mut egui::Ui) {
166172 let mut spline_method_to_apply = None ;
167173
168174 ui. horizontal_wrapped ( |ui| {
169- ui. label ( tr ( language, "Initial parameters" , "Начальные параметры" ) ) ;
170- CurveFitApp :: info_tooltip ( ui, spline_init_hint ( language) ) ;
175+ let init_label_response =
176+ ui. label ( tr ( language, "Initial parameters" , "Начальные параметры" ) ) ;
177+ let _ = CurveFitApp :: info_hover ( init_label_response, spline_init_hint ( language) ) ;
171178 ui. add_enabled_ui ( can_edit_params, |ui| {
172179 ui. menu_button (
173180 tr ( language, "+ Initialize" , "+ Инициализация" ) ,
@@ -250,7 +257,7 @@ pub(super) fn ui_family_and_params(app: &mut CurveFitApp, ui: &mut egui::Ui) {
250257 } ) ;
251258 app. sync_spline_initial_knot_y_inputs ( app. spline_knots ) ;
252259 ui. horizontal_wrapped ( |ui| {
253- ui. label ( format ! (
260+ let spline_sampling_response = ui. label ( format ! (
254261 "{}: {}" ,
255262 tr(
256263 language,
@@ -259,7 +266,8 @@ pub(super) fn ui_family_and_params(app: &mut CurveFitApp, ui: &mut egui::Ui) {
259266 ) ,
260267 app. spline_knots
261268 ) ) ;
262- CurveFitApp :: info_tooltip ( ui, spline_sampling_hint ( language) ) ;
269+ let _ =
270+ CurveFitApp :: info_hover ( spline_sampling_response, spline_sampling_hint ( language) ) ;
263271 } ) ;
264272 ui. label ( tr (
265273 language,
0 commit comments