mirror of
https://github.com/Death916/deathclock.git
synced 2026-04-10 03:04:40 -07:00
wip push for remote
This commit is contained in:
parent
1cd2a75f4e
commit
1be170c037
1 changed files with 34 additions and 7 deletions
|
|
@ -11,7 +11,7 @@ use std::collections::HashMap;
|
||||||
use tokio::time::{Duration, sleep};
|
use tokio::time::{Duration, sleep};
|
||||||
|
|
||||||
pub fn main() -> iced::Result {
|
pub fn main() -> iced::Result {
|
||||||
iced::run(State::update, State::view)
|
iced::run(RustClock::update, RustClock::view)
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
|
|
@ -32,7 +32,7 @@ enum Message {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
struct State {
|
struct RustClock {
|
||||||
current_time: DateTime<Local>,
|
current_time: DateTime<Local>,
|
||||||
next_alarm: Option<DateTime<Local>>,
|
next_alarm: Option<DateTime<Local>>,
|
||||||
news: Vec<String>,
|
news: Vec<String>,
|
||||||
|
|
@ -45,7 +45,34 @@ struct State {
|
||||||
nba_logos: HashMap<String, Vec<u8>>,
|
nba_logos: HashMap<String, Vec<u8>>,
|
||||||
mlb_logos: HashMap<String, Vec<u8>>,
|
mlb_logos: HashMap<String, Vec<u8>>,
|
||||||
}
|
}
|
||||||
impl State {
|
impl RustClock {
|
||||||
|
|
||||||
|
fn new() -> Self {
|
||||||
|
let current_time = Local::now();
|
||||||
|
let next_alarm = None;
|
||||||
|
let news = Vec::new();
|
||||||
|
let weather = Vec::new();
|
||||||
|
let location = String::new();
|
||||||
|
let nba_scores = Vec::new();
|
||||||
|
let mlb_scores = Vec::new();
|
||||||
|
let panes = pane_grid::State::Default();
|
||||||
|
let nba_logos = HashMap::new();
|
||||||
|
let mlb_logos = HashMap::new();
|
||||||
|
|
||||||
|
Self {
|
||||||
|
current_time,
|
||||||
|
next_alarm,
|
||||||
|
news,
|
||||||
|
weather,
|
||||||
|
location,
|
||||||
|
nba_scores,
|
||||||
|
mlb_scores,
|
||||||
|
panes,
|
||||||
|
nba_logos,
|
||||||
|
mlb_logos,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fn update(&mut self, message: Message) {
|
fn update(&mut self, message: Message) {
|
||||||
match message {
|
match message {
|
||||||
Message::PaneDragged(pane_grid::DragEvent::Dropped { pane, target }) => {
|
Message::PaneDragged(pane_grid::DragEvent::Dropped { pane, target }) => {
|
||||||
|
|
@ -62,7 +89,7 @@ impl State {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn view(state: &State) -> Element<'_, Message> {
|
fn view(state: &RustClock) -> Element<'_, Message> {
|
||||||
pane_grid(&state.panes, |_panes, pane_state, _is_maximized| {
|
pane_grid(&state.panes, |_panes, pane_state, _is_maximized| {
|
||||||
let content: Element<'_, Message> = match pane_state {
|
let content: Element<'_, Message> = match pane_state {
|
||||||
PaneType::NbaPane => {
|
PaneType::NbaPane => {
|
||||||
|
|
@ -210,7 +237,7 @@ impl State {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for State {
|
impl Default for RustClock {
|
||||||
fn default() -> Self {
|
fn default() -> Self {
|
||||||
sports::get_mlb_logos();
|
sports::get_mlb_logos();
|
||||||
|
|
||||||
|
|
@ -225,7 +252,7 @@ impl Default for State {
|
||||||
let mlb_logos = sports::get_mlb_logos();
|
let mlb_logos = sports::get_mlb_logos();
|
||||||
let nba_logos = sports::get_nba_logos();
|
let nba_logos = sports::get_nba_logos();
|
||||||
|
|
||||||
State {
|
RustClock {
|
||||||
current_time: Local::now(),
|
current_time: Local::now(),
|
||||||
next_alarm: None,
|
next_alarm: None,
|
||||||
news: Vec::new(),
|
news: Vec::new(),
|
||||||
|
|
@ -266,7 +293,7 @@ impl Default for State {
|
||||||
|
|
||||||
async fn dash_updates() {
|
async fn dash_updates() {
|
||||||
loop {
|
loop {
|
||||||
let mut state = State::default();
|
let mut state = RustClock::default();
|
||||||
state.update(Message::RunSportsUpdate);
|
state.update(Message::RunSportsUpdate);
|
||||||
println!("Updated sports scores");
|
println!("Updated sports scores");
|
||||||
tokio::time::sleep(Duration::from_secs(60)).await;
|
tokio::time::sleep(Duration::from_secs(60)).await;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue