move netplay_window to netplay.rs
This commit is contained in:
parent
31b4e7944b
commit
6ecb81fda1
@ -59,53 +59,6 @@ fn check_latest_version(weak: slint::Weak<AppWindow>) {
|
||||
});
|
||||
}
|
||||
|
||||
fn netplay_window(app: &AppWindow, controller_paths: &[Option<String>]) {
|
||||
let weak_create = app.as_weak();
|
||||
let weak_app = app.as_weak();
|
||||
let controller_paths_create = controller_paths.to_owned();
|
||||
app.on_create_session_button_clicked(move || {
|
||||
let controller_paths = controller_paths_create.clone();
|
||||
let weak_app = weak_app.clone();
|
||||
weak_create
|
||||
.upgrade_in_event_loop(move |handle| {
|
||||
let create_window = NetplayCreate::new().unwrap();
|
||||
save_settings(&handle, &controller_paths);
|
||||
ui::netplay::setup_create_window(
|
||||
&create_window,
|
||||
GameSettings {
|
||||
fullscreen: handle.get_fullscreen(),
|
||||
overclock: handle.get_overclock_n64_cpu(),
|
||||
disable_expansion_pak: handle.get_disable_expansion_pak(),
|
||||
},
|
||||
weak_app,
|
||||
);
|
||||
})
|
||||
.unwrap();
|
||||
});
|
||||
|
||||
let weak_join = app.as_weak();
|
||||
let weak_app = app.as_weak();
|
||||
let controller_paths_join = controller_paths.to_owned();
|
||||
app.on_join_session_button_clicked(move || {
|
||||
let controller_paths = controller_paths_join.clone();
|
||||
let weak_app = weak_app.clone();
|
||||
weak_join
|
||||
.upgrade_in_event_loop(move |handle| {
|
||||
let join_window = NetplayJoin::new().unwrap();
|
||||
save_settings(&handle, &controller_paths);
|
||||
ui::netplay::setup_join_window(&join_window, handle.get_fullscreen(), weak_app);
|
||||
})
|
||||
.unwrap();
|
||||
});
|
||||
|
||||
app.on_netplay_discord_button_clicked(move || {
|
||||
open::that_detached("https://discord.gg/JyW6ZgBUyS").unwrap();
|
||||
});
|
||||
app.on_netplay_feedback_button_clicked(move || {
|
||||
open::that_detached("https://github.com/gopher64/gopher64/discussions/453").unwrap();
|
||||
});
|
||||
}
|
||||
|
||||
fn local_game_window(app: &AppWindow, controller_paths: &[Option<String>]) {
|
||||
let dirs = ui::get_dirs();
|
||||
let weak = app.as_weak();
|
||||
@ -262,7 +215,7 @@ fn controller_window(
|
||||
});
|
||||
}
|
||||
|
||||
fn save_settings(app: &AppWindow, controller_paths: &[Option<String>]) {
|
||||
pub fn save_settings(app: &AppWindow, controller_paths: &[Option<String>]) {
|
||||
let mut config = ui::config::Config::new();
|
||||
config.video.integer_scaling = app.get_integer_scaling();
|
||||
config.video.fullscreen = app.get_fullscreen();
|
||||
@ -331,7 +284,7 @@ pub fn app_window() {
|
||||
controller_window(&app, &game_ui.config, &controller_names, &controller_paths);
|
||||
}
|
||||
local_game_window(&app, &controller_paths);
|
||||
netplay_window(&app, &controller_paths);
|
||||
ui::netplay::netplay_window(&app, &controller_paths);
|
||||
app.run().unwrap();
|
||||
save_settings(&app, &controller_paths);
|
||||
}
|
||||
|
||||
@ -4,7 +4,7 @@ use crate::device;
|
||||
use crate::ui;
|
||||
use crate::ui::gui::{
|
||||
AppWindow, GameSettings, GbPaths, NetplayCreate, NetplayDevice, NetplayDialog, NetplayJoin,
|
||||
NetplayWait, VruChannel, run_rom,
|
||||
NetplayWait, VruChannel, run_rom, save_settings,
|
||||
};
|
||||
use futures::{SinkExt, StreamExt};
|
||||
use sha2::{Digest, Sha256};
|
||||
@ -937,3 +937,50 @@ pub fn setup_join_window(
|
||||
|
||||
join_window.show().unwrap();
|
||||
}
|
||||
|
||||
pub fn netplay_window(app: &AppWindow, controller_paths: &[Option<String>]) {
|
||||
let weak_create = app.as_weak();
|
||||
let weak_app = app.as_weak();
|
||||
let controller_paths_create = controller_paths.to_owned();
|
||||
app.on_create_session_button_clicked(move || {
|
||||
let controller_paths = controller_paths_create.clone();
|
||||
let weak_app = weak_app.clone();
|
||||
weak_create
|
||||
.upgrade_in_event_loop(move |handle| {
|
||||
let create_window = NetplayCreate::new().unwrap();
|
||||
save_settings(&handle, &controller_paths);
|
||||
ui::netplay::setup_create_window(
|
||||
&create_window,
|
||||
GameSettings {
|
||||
fullscreen: handle.get_fullscreen(),
|
||||
overclock: handle.get_overclock_n64_cpu(),
|
||||
disable_expansion_pak: handle.get_disable_expansion_pak(),
|
||||
},
|
||||
weak_app,
|
||||
);
|
||||
})
|
||||
.unwrap();
|
||||
});
|
||||
|
||||
let weak_join = app.as_weak();
|
||||
let weak_app = app.as_weak();
|
||||
let controller_paths_join = controller_paths.to_owned();
|
||||
app.on_join_session_button_clicked(move || {
|
||||
let controller_paths = controller_paths_join.clone();
|
||||
let weak_app = weak_app.clone();
|
||||
weak_join
|
||||
.upgrade_in_event_loop(move |handle| {
|
||||
let join_window = NetplayJoin::new().unwrap();
|
||||
save_settings(&handle, &controller_paths);
|
||||
ui::netplay::setup_join_window(&join_window, handle.get_fullscreen(), weak_app);
|
||||
})
|
||||
.unwrap();
|
||||
});
|
||||
|
||||
app.on_netplay_discord_button_clicked(move || {
|
||||
open::that_detached("https://discord.gg/JyW6ZgBUyS").unwrap();
|
||||
});
|
||||
app.on_netplay_feedback_button_clicked(move || {
|
||||
open::that_detached("https://github.com/gopher64/gopher64/discussions/453").unwrap();
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user