Refactor code

This commit is contained in:
Dheepak Krishnamurthy 2021-04-05 14:06:18 -06:00
parent 025f780093
commit 7cbc20b43a
4 changed files with 30 additions and 27 deletions

View file

@ -2,12 +2,12 @@ use crate::calendar::Calendar;
use crate::config;
use crate::config::Config;
use crate::context::Context;
use crate::event::Key;
use crate::event::{Event, Events};
use crate::help::Help;
use crate::keyconfig::KeyConfig;
use crate::table::{Row, Table, TableMode, TableState};
use crate::task_report::TaskReportTable;
use crate::util::Key;
use crate::util::{Event, Events};
use std::cmp::Ordering;
use std::collections::{HashMap, HashSet};
@ -38,9 +38,7 @@ use anyhow::Result;
use async_std::prelude::*;
use async_std::stream::StreamExt;
use async_std::task;
use futures::future::join_all;
use futures::stream::FuturesOrdered;
use futures::{join, try_join};
use std::sync::{Arc, Mutex};

View file

@ -1,8 +1,7 @@
use crossterm::{
cursor,
event::{self, DisableMouseCapture, EnableMouseCapture, EventStream},
execute,
terminal::{disable_raw_mode, enable_raw_mode, Clear, ClearType, EnterAlternateScreen, LeaveAlternateScreen},
terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen},
};
use tui::{backend::CrosstermBackend, Terminal};
@ -51,21 +50,6 @@ pub enum Event<I> {
Tick,
}
pub fn setup_terminal() -> Terminal<CrosstermBackend<io::Stdout>> {
enable_raw_mode().unwrap();
let mut stdout = io::stdout();
execute!(stdout, EnterAlternateScreen).unwrap();
execute!(stdout, Clear(ClearType::All)).unwrap();
let backend = CrosstermBackend::new(stdout);
Terminal::new(backend).unwrap()
}
pub fn destruct_terminal() {
disable_raw_mode().unwrap();
execute!(io::stdout(), LeaveAlternateScreen, DisableMouseCapture).unwrap();
execute!(io::stdout(), cursor::Show).unwrap();
}
pub struct Events {
pub rx: async_std::channel::Receiver<Event<Key>>,
}

View file

@ -1,7 +1,6 @@
#![allow(clippy::eval_order_dependence)]
use crate::util::Key;
use crate::event::Key;
use anyhow::{anyhow, Result};
use futures::join;
use serde::{Deserialize, Serialize};
use std::collections::HashSet;
use std::error::Error;

View file

@ -6,19 +6,19 @@ mod app;
mod calendar;
mod config;
mod context;
mod event;
mod help;
mod history;
mod keyconfig;
mod table;
mod task_report;
mod util;
use crate::util::{destruct_terminal, setup_terminal, Event, EventConfig, Events};
use crate::event::{Event, EventConfig, Events, Key};
use anyhow::Result;
use clap::{App, Arg};
use std::env;
use std::error::Error;
use std::io::Write;
use std::io::{self, Write};
use std::panic;
use std::time::Duration;
@ -27,12 +27,34 @@ use async_std::sync::{Arc, Mutex};
use async_std::task;
use futures::stream::{FuturesUnordered, StreamExt};
use crate::util::Key;
use crossterm::{
cursor,
event::{DisableMouseCapture, EnableMouseCapture, EventStream},
execute,
terminal::{disable_raw_mode, enable_raw_mode, Clear, ClearType, EnterAlternateScreen, LeaveAlternateScreen},
};
use tui::{backend::CrosstermBackend, Terminal};
use app::{AppMode, TaskwarriorTuiApp};
const APP_VERSION: &str = env!("CARGO_PKG_VERSION");
const APP_NAME: &str = env!("CARGO_PKG_NAME");
pub fn setup_terminal() -> Terminal<CrosstermBackend<io::Stdout>> {
enable_raw_mode().unwrap();
let mut stdout = io::stdout();
execute!(stdout, EnterAlternateScreen).unwrap();
execute!(stdout, Clear(ClearType::All)).unwrap();
let backend = CrosstermBackend::new(stdout);
Terminal::new(backend).unwrap()
}
pub fn destruct_terminal() {
disable_raw_mode().unwrap();
execute!(io::stdout(), LeaveAlternateScreen, DisableMouseCapture).unwrap();
execute!(io::stdout(), cursor::Show).unwrap();
}
fn main() {
better_panic::install();
let matches = App::new(APP_NAME)