adds rustfmt config, formats current code

This commit is contained in:
2019-06-07 09:05:12 +02:00
parent 664c10359d
commit b476da7371
4 changed files with 94 additions and 124 deletions

View File

@@ -1,13 +1,13 @@
extern crate gtk;
extern crate gio;
extern crate gdk;
extern crate gio;
extern crate glib;
extern crate gtk;
use std::cell::RefCell;
use std::rc::Rc;
use gtk::prelude::*;
use gio::prelude::*;
use gtk::prelude::*;
use std::env::args;
use std::process;
@@ -16,7 +16,7 @@ mod pawn;
/// Content of the Application state
///
#[derive(Debug,Clone,Default)]
#[derive(Debug, Clone, Default)]
pub struct AppData {
/// A slot for any pawn waiting for placement
pending: Option<pawn::PawnData>,
@@ -25,7 +25,7 @@ pub struct AppData {
}
/// A sharable state for the whole application
#[derive(Debug,Clone,Default)]
#[derive(Debug, Clone, Default)]
pub struct AppState(Rc<RefCell<AppData>>);
impl std::ops::Deref for AppState {
@@ -40,17 +40,16 @@ struct App {
state: AppState,
}
impl App {
fn new<'a>() -> Result<Self, &'a str> {
let app =
App {
inner: gtk::Application::new(
"home.local.PlayMat",
gio::ApplicationFlags::FLAGS_NONE
).expect("Failed to build Application"),
state: Default::default(),
};
let app = App {
inner: gtk::Application::new(
"home.local.PlayMat",
gio::ApplicationFlags::FLAGS_NONE,
)
.expect("Failed to build Application"),
state: Default::default(),
};
app.connect_all();
Ok(app)
}
@@ -58,45 +57,39 @@ impl App {
fn connect_all(&self) {
let app_state = self.state.clone();
self.inner.connect_startup(|_| {});
self.inner.connect_activate(
move |app| {
println!("Activate App");
let main_src = include_str!("../res/main.glade");
let builder = gtk::Builder::new_from_string(main_src);
let win: gtk::ApplicationWindow =
builder
.get_object("app")
.unwrap();
win.set_application(app);
// Set up a simple switch for the Pawn list panel
let panel: gtk::Paned = builder.get_object("panel").unwrap();
Self::new_action(app, "panel_switch", move |_,_| {
if panel.get_position() == 0 {
panel.set_position(360);
} else {
panel.set_position(0);
}
});
// Pawn list
let pawn_list = builder.get_object("pawn_list").unwrap();
let pawn_list = pawn::PawnList::init(pawn_list);
for pawn in pawn::pawn_factory() {
pawn_list.add(&pawn);
pawn.connect_place(app_state.clone());
pawn.connect_stats();
app_state.borrow_mut().pawns.push(pawn);
self.inner.connect_activate(move |app| {
println!("Activate App");
let main_src = include_str!("../res/main.glade");
let builder = gtk::Builder::new_from_string(main_src);
let win: gtk::ApplicationWindow = builder.get_object("app").unwrap();
win.set_application(app);
// Set up a simple switch for the Pawn list panel
let panel: gtk::Paned = builder.get_object("panel").unwrap();
Self::new_action(app, "panel_switch", move |_, _| {
if panel.get_position() == 0 {
panel.set_position(360);
} else {
panel.set_position(0);
}
win.show_all(); // Before grid because we want to hide some widgets there
// Initialize grid
let grid: gtk::Grid = builder.get_object("map").unwrap();
// TODO: implement drag-drop events
// * From pawn_list to cell : place pawn on dest cell
// * From cell to cell : move pawn from source to dest cell
let _grid = grid::Grid::init(grid, 10, app_state.clone());
});
// Pawn list
let pawn_list = builder.get_object("pawn_list").unwrap();
let pawn_list = pawn::PawnList::init(pawn_list);
for pawn in pawn::pawn_factory() {
pawn_list.add(&pawn);
pawn.connect_place(app_state.clone());
pawn.connect_stats();
app_state.borrow_mut().pawns.push(pawn);
}
);
win.show_all(); // Before grid because we want to hide some widgets there
// Initialize grid
let grid: gtk::Grid = builder.get_object("map").unwrap();
// TODO: implement drag-drop events
// * From pawn_list to cell : place pawn on dest cell
// * From cell to cell : move pawn from source to dest cell
let _grid = grid::Grid::init(grid, 10, app_state.clone());
});
}
/// Creates a simple action and connects the given handler to its activate signal.
@@ -119,13 +112,13 @@ impl App {
fn main() {
if gtk::init().is_err() {
println!("Failed to initialize Gtk");
return
return;
}
let exit_code = match App::new() {
Err(e) => {
println!("Error !\n{}", e);
1
},
}
Ok(app) => app.run(&args().collect::<Vec<_>>()),
};
process::exit(exit_code);