Skip to content

Commit d58d8ac

Browse files
committed
Fixed unaligned error msg.
1 parent 780f2e1 commit d58d8ac

File tree

1 file changed

+124
-125
lines changed

1 file changed

+124
-125
lines changed

crates/icy_draw/src/ui/tools/layer_view.rs

Lines changed: 124 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -122,152 +122,151 @@ impl LayerToolWindow {
122122
});
123123
});
124124

125-
CentralPanel::default().show_inside(ui, |ui| {
126-
let redraw_layer_views = self.view_cache_id != editor.buffer_view.lock().id || editor.undo_stack_len() != self.stack_len;
127-
if redraw_layer_views {
128-
self.view_cache_id = editor.buffer_view.lock().id;
129-
self.stack_len = editor.undo_stack_len();
130-
}
125+
let redraw_layer_views = self.view_cache_id != editor.buffer_view.lock().id || editor.undo_stack_len() != self.stack_len;
126+
if redraw_layer_views {
127+
self.view_cache_id = editor.buffer_view.lock().id;
128+
self.stack_len = editor.undo_stack_len();
129+
}
131130

132-
egui::ScrollArea::vertical().id_salt("layer_view_scroll_area").show(ui, |ui| {
133-
for i in (0..max).rev() {
134-
ui.horizontal(|ui| {
135-
ui.add_space(4.0);
136-
let dims = editor.buffer_view.lock().get_buffer().get_font_dimensions();
137-
let size = dims.height as f32 * 25.0;
138-
let scale = row_height / size;
139-
140-
ui.allocate_ui(Vec2::new(scale * dims.width as f32 * 80.0, row_height), |ui| {
141-
let opt = icy_engine_gui::TerminalOptions {
142-
filter: glow::LINEAR as i32,
143-
stick_to_bottom: false,
144-
scale: Some(Vec2::new(scale, scale)),
145-
use_terminal_height: false,
146-
hide_scrollbars: true,
147-
clip_rect: Some(ui.clip_rect()),
148-
..Default::default()
149-
};
150-
let view = self.get_buffer_view(i);
151-
if redraw_layer_views {
152-
view.lock().get_buffer_mut().layers.clear();
153-
let width = editor.buffer_view.lock().get_width();
154-
view.lock().get_buffer_mut().set_width(width);
155-
let lock = &editor.buffer_view.lock();
156-
if let Some(layer) = lock.get_buffer().layers.get(i) {
157-
let mut l = layer.clone();
158-
l.set_is_visible(true);
159-
view.lock().get_buffer_mut().set_font_table(lock.get_buffer().get_font_table());
160-
view.lock().get_buffer_mut().palette = lock.get_buffer().palette.clone();
161-
view.lock().get_buffer_mut().layers.push(l);
162-
view.lock().get_edit_state_mut().set_is_buffer_dirty();
163-
}
131+
egui::ScrollArea::vertical().id_salt("layer_view_scroll_area").show(ui, |ui| {
132+
for i in (0..max).rev() {
133+
ui.horizontal(|ui| {
134+
ui.add_space(4.0);
135+
let dims = editor.buffer_view.lock().get_buffer().get_font_dimensions();
136+
let size = dims.height as f32 * 25.0;
137+
let scale = row_height / size;
138+
139+
ui.allocate_ui(Vec2::new(scale * dims.width as f32 * 80.0, row_height), |ui| {
140+
let opt = icy_engine_gui::TerminalOptions {
141+
filter: glow::LINEAR as i32,
142+
stick_to_bottom: false,
143+
scale: Some(Vec2::new(scale, scale)),
144+
use_terminal_height: false,
145+
hide_scrollbars: true,
146+
clip_rect: Some(ui.clip_rect()),
147+
..Default::default()
148+
};
149+
let view = self.get_buffer_view(i);
150+
if redraw_layer_views {
151+
view.lock().get_buffer_mut().layers.clear();
152+
let width = editor.buffer_view.lock().get_width();
153+
view.lock().get_buffer_mut().set_width(width);
154+
let lock = &editor.buffer_view.lock();
155+
if let Some(layer) = lock.get_buffer().layers.get(i) {
156+
let mut l = layer.clone();
157+
l.set_is_visible(true);
158+
view.lock().get_buffer_mut().set_font_table(lock.get_buffer().get_font_table());
159+
view.lock().get_buffer_mut().palette = lock.get_buffer().palette.clone();
160+
view.lock().get_buffer_mut().layers.push(l);
161+
view.lock().get_edit_state_mut().set_is_buffer_dirty();
164162
}
163+
}
165164

166-
let (_, _) = icy_engine_gui::show_terminal_area(ui, view, opt);
167-
});
165+
let (_, _) = icy_engine_gui::show_terminal_area(ui, view, opt);
166+
});
168167

169-
let (is_visible, title, color) = {
170-
let lock = editor.buffer_view.lock();
171-
let layer = &lock.get_buffer().layers[i];
172-
(layer.get_is_visible(), layer.get_title().to_string(), layer.properties.color.clone())
173-
};
174-
let width = ui.available_width();
168+
let (is_visible, title, color) = {
169+
let lock = editor.buffer_view.lock();
170+
let layer = &lock.get_buffer().layers[i];
171+
(layer.get_is_visible(), layer.get_title().to_string(), layer.properties.color.clone())
172+
};
173+
let width = ui.available_width();
175174

176-
let (id, back_rect) = ui.allocate_space(Vec2::new(width, row_height));
177-
let mut response = ui.interact(back_rect, id, Sense::click());
175+
let (id, back_rect) = ui.allocate_space(Vec2::new(width, row_height));
176+
let mut response = ui.interact(back_rect, id, Sense::click());
178177

179-
let back_painter = ui.painter_at(back_rect);
178+
let back_painter = ui.painter_at(back_rect);
180179

181-
if response.hovered() {
182-
back_painter.rect_filled(back_rect, CornerRadius::ZERO, ui.style().visuals.widgets.active.bg_fill);
183-
} else if i == cur_layer {
184-
back_painter.rect_filled(back_rect, CornerRadius::ZERO, ui.style().visuals.extreme_bg_color);
185-
}
180+
if response.hovered() {
181+
back_painter.rect_filled(back_rect, CornerRadius::ZERO, ui.style().visuals.widgets.active.bg_fill);
182+
} else if i == cur_layer {
183+
back_painter.rect_filled(back_rect, CornerRadius::ZERO, ui.style().visuals.extreme_bg_color);
184+
}
186185

187-
let stroke_rect = Rect::from_min_size(back_rect.min + Vec2::new(0.0, (row_height - 22.0) / 2.0), Vec2::new(22.0, 22.0));
188-
let visible_icon_response = ui.interact(stroke_rect, id.with("visible"), Sense::click());
186+
let stroke_rect = Rect::from_min_size(back_rect.min + Vec2::new(0.0, (row_height - 22.0) / 2.0), Vec2::new(22.0, 22.0));
187+
let visible_icon_response = ui.interact(stroke_rect, id.with("visible"), Sense::click());
189188

190-
let painter = ui.painter_at(stroke_rect);
189+
let painter = ui.painter_at(stroke_rect);
191190

192-
if let Some(color) = color {
193-
let (r, g, b) = color.into();
194-
painter.rect_filled(stroke_rect, CornerRadius::ZERO, Color32::from_rgb(r, g, b));
195-
}
191+
if let Some(color) = color {
192+
let (r, g, b) = color.into();
193+
painter.rect_filled(stroke_rect, CornerRadius::ZERO, Color32::from_rgb(r, g, b));
194+
}
196195

197-
let image: Image<'static> = if is_visible { VISIBLE_SVG.clone() } else { INVISIBLE_SVG.clone() };
196+
let image: Image<'static> = if is_visible { VISIBLE_SVG.clone() } else { INVISIBLE_SVG.clone() };
198197

199-
let tint = if i == cur_layer {
200-
ui.visuals().widgets.active.fg_stroke.color
201-
} else {
202-
ui.visuals().widgets.inactive.fg_stroke.color
203-
};
204-
let image = image.tint(tint);
205-
image.paint_at(ui, stroke_rect);
198+
let tint = if i == cur_layer {
199+
ui.visuals().widgets.active.fg_stroke.color
200+
} else {
201+
ui.visuals().widgets.inactive.fg_stroke.color
202+
};
203+
let image = image.tint(tint);
204+
image.paint_at(ui, stroke_rect);
206205

207-
let color = if i == cur_layer {
208-
ui.style().visuals.strong_text_color()
209-
} else {
210-
ui.style().visuals.text_color()
211-
};
212-
let font_id = TextStyle::Button.resolve(ui.style());
206+
let color = if i == cur_layer {
207+
ui.style().visuals.strong_text_color()
208+
} else {
209+
ui.style().visuals.text_color()
210+
};
211+
let font_id = TextStyle::Button.resolve(ui.style());
213212

214-
back_painter.text(stroke_rect.right_center() + Vec2::new(4., 0.), Align2::LEFT_CENTER, title, font_id, color);
213+
back_painter.text(stroke_rect.right_center() + Vec2::new(4., 0.), Align2::LEFT_CENTER, title, font_id, color);
215214

216-
if visible_icon_response.clicked() {
217-
result = Some(Message::ToggleLayerVisibility(i));
218-
}
215+
if visible_icon_response.clicked() {
216+
result = Some(Message::ToggleLayerVisibility(i));
217+
}
219218

220-
if paste_mode.is_none() {
221-
let response_opt = response.context_menu(|ui| {
222-
ui.set_width(250.);
223-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_layer_properties")).clicked() {
224-
result = Some(Message::EditLayer(i));
225-
ui.close_kind(egui::UiKind::Menu);
226-
}
227-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_resize_layer")).clicked() {
228-
result = Some(Message::ResizeLayer(i));
229-
ui.close_kind(egui::UiKind::Menu);
230-
}
231-
ui.separator();
232-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_new_layer")).clicked() {
233-
result = Some(Message::AddNewLayer(i));
234-
ui.close_kind(egui::UiKind::Menu);
235-
}
236-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_duplicate_layer")).clicked() {
237-
result = Some(Message::DuplicateLayer(i));
238-
ui.close_kind(egui::UiKind::Menu);
239-
}
240-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_merge_layer")).clicked() {
241-
result = Some(Message::MergeLayerDown(i));
242-
ui.close_kind(egui::UiKind::Menu);
243-
}
244-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_delete_layer")).clicked() {
245-
result = Some(Message::RemoveLayer(i));
246-
ui.close_kind(egui::UiKind::Menu);
247-
}
248-
ui.separator();
249-
250-
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_clear_layer")).clicked() {
251-
result = Some(Message::ClearLayer(i));
252-
ui.close_kind(egui::UiKind::Menu);
253-
}
254-
});
255-
if let Some(response_opt) = response_opt {
256-
response = response_opt.response;
219+
if paste_mode.is_none() {
220+
let response_opt = response.context_menu(|ui| {
221+
ui.set_width(250.);
222+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_layer_properties")).clicked() {
223+
result = Some(Message::EditLayer(i));
224+
ui.close_kind(egui::UiKind::Menu);
257225
}
258-
}
226+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_resize_layer")).clicked() {
227+
result = Some(Message::ResizeLayer(i));
228+
ui.close_kind(egui::UiKind::Menu);
229+
}
230+
ui.separator();
231+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_new_layer")).clicked() {
232+
result = Some(Message::AddNewLayer(i));
233+
ui.close_kind(egui::UiKind::Menu);
234+
}
235+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_duplicate_layer")).clicked() {
236+
result = Some(Message::DuplicateLayer(i));
237+
ui.close_kind(egui::UiKind::Menu);
238+
}
239+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_merge_layer")).clicked() {
240+
result = Some(Message::MergeLayerDown(i));
241+
ui.close_kind(egui::UiKind::Menu);
242+
}
243+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_delete_layer")).clicked() {
244+
result = Some(Message::RemoveLayer(i));
245+
ui.close_kind(egui::UiKind::Menu);
246+
}
247+
ui.separator();
259248

260-
if paste_mode.is_none() && response.clicked() {
261-
result = Some(Message::SelectLayer(i));
249+
if ui.button(fl!(crate::LANGUAGE_LOADER, "layer_tool_menu_clear_layer")).clicked() {
250+
result = Some(Message::ClearLayer(i));
251+
ui.close_kind(egui::UiKind::Menu);
252+
}
253+
});
254+
if let Some(response_opt) = response_opt {
255+
response = response_opt.response;
262256
}
257+
}
263258

264-
if paste_mode.is_none() && response.double_clicked() {
265-
result = Some(Message::EditLayer(i));
266-
}
267-
});
268-
}
269-
});
259+
if paste_mode.is_none() && response.clicked() {
260+
result = Some(Message::SelectLayer(i));
261+
}
262+
263+
if paste_mode.is_none() && response.double_clicked() {
264+
result = Some(Message::EditLayer(i));
265+
}
266+
});
267+
}
270268
});
269+
271270
result
272271
}
273272
}

0 commit comments

Comments
 (0)