Skip to content

Commit fdb54e9

Browse files
author
Ruben Kharel
committed
add tidy up button
1 parent ec21365 commit fdb54e9

File tree

7 files changed

+67
-77
lines changed

7 files changed

+67
-77
lines changed

src/custom_widgets.rs

+13
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,16 @@ pub fn footer(ui: &mut egui::Ui) {
2828
});
2929
}
3030

31+
pub fn organize_items(ui: &mut egui::Ui) {
32+
// ui.with_layout(egui::Layout::right_to_left(egui::Align::TOP), |ui| {
33+
if ui
34+
.add(
35+
egui::Button::new("Tidy up")
36+
)
37+
.clicked()
38+
{
39+
ui.ctx().memory_mut(|mem| mem.reset_areas());
40+
ui.close_menu();
41+
}
42+
// });
43+
}

src/pages/app.rs

-71
This file was deleted.

src/pages/blog.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use egui_commonmark::{CommonMarkCache, CommonMarkViewer};
22
use include_dir::{include_dir, Dir};
33

4-
use crate::custom_widgets::{powered_by_egui_and_eframe, footer};
4+
use crate::custom_widgets::{powered_by_egui_and_eframe, footer, organize_items};
55

66
#[derive(Debug, serde::Deserialize, serde::Serialize)]
77
pub struct Blogs {

src/pages/mod.rs

+5-2
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,8 @@ pub use resume::ResumePage;
44
mod blog;
55
pub use blog::BlogPage;
66

7-
mod app;
8-
pub use app::TemplateApp;
7+
// mod app;
8+
// pub use app::TemplateApp;
9+
10+
mod playground;
11+
pub use playground::Playground;

src/pages/playground.rs

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#[derive(serde::Deserialize, serde::Serialize)]
2+
pub struct Playground;
3+
4+
impl Default for Playground {
5+
fn default() -> Self {
6+
Self
7+
}
8+
}
9+
10+
impl eframe::App for Playground {
11+
fn update(&mut self, _ctx: &egui::Context, _frame: &mut eframe::Frame) {
12+
egui::CentralPanel::default().show(_ctx, |ui| {
13+
ui.heading("Playground");
14+
ui.label("This is a playground page.");
15+
});
16+
}
17+
18+
fn save(&mut self, _storage: &mut dyn eframe::Storage) {}
19+
}

src/pages/resume.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ mod interests;
1616
pub use self::links::Links;
1717
mod links;
1818

19-
pub use crate::custom_widgets::powered_by_egui_and_eframe;
19+
pub use crate::custom_widgets::{powered_by_egui_and_eframe, footer, organize_items};
2020

2121
#[derive(Debug, serde::Deserialize, serde::Serialize)]
2222
struct Resume {
@@ -177,9 +177,9 @@ impl eframe::App for ResumePage {
177177
fn update(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) {
178178

179179
egui::CentralPanel::default().show(ctx, |ui| {
180+
footer(ui);
180181
powered_by_egui_and_eframe(ui);
181-
// insert everything inside drag and drop
182-
182+
183183
egui::Window::new(format!(
184184
"{} | {}",
185185
self.resume.header.name, self.resume.header.current_title

src/wrap_pages.rs

+26
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
use std::fmt;
2+
use crate::custom_widgets::organize_items;
23

34
#[derive(Default)]
45
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
56
#[cfg_attr(feature = "serde", serde(default))]
67
pub struct State {
78
resume_page: crate::pages::ResumePage,
89
blog_page: crate::pages::BlogPage,
10+
playground_page: crate::pages::Playground,
911

1012
selected_anchor: Anchor,
1113
}
@@ -15,6 +17,7 @@ pub struct State {
1517
enum Anchor {
1618
Blog,
1719
Resume,
20+
Playground
1821
// Clear,
1922
}
2023

@@ -24,6 +27,19 @@ enum Command {
2427
Nothing,
2528
}
2629

30+
31+
32+
33+
//██████╗ ██╗ █████╗ ██╗ ██╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗ ███╗ ██╗ ██████╗
34+
//██╔══██╗ ██║ ██╔══██╗ ╚██╗ ██╔╝ ██╔════╝ ██╔══██╗ ██╔═══██╗ ██║ ██║ ████╗ ██║ ██╔══██╗
35+
//██████╔╝ ██║ ███████║ ╚████╔╝ ██║ ███╗ ██████╔╝ ██║ ██║ ██║ ██║ ██╔██╗ ██║ ██║ ██║
36+
//██╔═══╝ ██║ ██╔══██║ ╚██╔╝ ██║ ██║ ██╔══██╗ ██║ ██║ ██║ ██║ ██║╚██╗██║ ██║ ██║
37+
//██║ ███████╗ ██║ ██║ ██║ ╚██████╔╝ ██║ ██║ ╚██████╔╝ ╚██████╔╝ ██║ ╚████║ ██████╔╝
38+
//╚═╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═════╝
39+
40+
41+
42+
2743
impl Anchor {
2844
#[cfg(target_arch = "wasm32")]
2945
fn all() -> Vec<Self> {
@@ -82,6 +98,11 @@ impl WrapPages {
8298
Anchor::Resume,
8399
&mut self.state.resume_page as &mut dyn eframe::App,
84100
),
101+
(
102+
"Playground",
103+
Anchor::Playground,
104+
&mut self.state.playground_page as &mut dyn eframe::App,
105+
),
85106
];
86107

87108
vec.into_iter()
@@ -114,6 +135,10 @@ impl WrapPages {
114135
}
115136
}
116137
}
138+
139+
ui.separator();
140+
141+
organize_items(ui);
117142
self.state.selected_anchor = selected_anchor;
118143
}
119144
}
@@ -122,6 +147,7 @@ impl eframe::App for WrapPages {
122147
fn save(&mut self, storage: &mut dyn eframe::Storage) {
123148
eframe::set_value(storage, eframe::APP_KEY, &self.state.blog_page);
124149
eframe::set_value(storage, eframe::APP_KEY, &self.state.resume_page);
150+
eframe::set_value(storage, eframe::APP_KEY, &self.state.playground_page);
125151
}
126152

127153
fn clear_color(&self, visuals: &egui::Visuals) -> [f32; 4] {

0 commit comments

Comments
 (0)