mirror of
https://github.com/Cyrix126/gupaxx.git
synced 2024-12-22 22:59:27 +00:00
feat: add megahash option to slider
This commit is contained in:
parent
9759b5677c
commit
caf3c62227
3 changed files with 31 additions and 23 deletions
|
@ -527,7 +527,7 @@ impl App {
|
||||||
// Set saved Hero mode to runtime.
|
// Set saved Hero mode to runtime.
|
||||||
debug!("Setting runtime_mode & runtime_manual_amount");
|
debug!("Setting runtime_mode & runtime_manual_amount");
|
||||||
app.xvb_api.lock().unwrap().stats_priv.runtime_mode = app.state.xvb.mode.clone().into();
|
app.xvb_api.lock().unwrap().stats_priv.runtime_mode = app.state.xvb.mode.clone().into();
|
||||||
app.xvb_api.lock().unwrap().stats_priv.runtime_manual_amount = app.state.xvb.amount;
|
app.xvb_api.lock().unwrap().stats_priv.runtime_manual_amount = app.state.xvb.manual_amount_raw;
|
||||||
// Check if [P2pool.node] exists
|
// Check if [P2pool.node] exists
|
||||||
info!("App Init | Checking if saved remote node still exists...");
|
info!("App Init | Checking if saved remote node still exists...");
|
||||||
app.state.p2pool.node = RemoteNode::check_exists(&app.state.p2pool.node);
|
app.state.p2pool.node = RemoteNode::check_exists(&app.state.p2pool.node);
|
||||||
|
|
|
@ -168,12 +168,12 @@ impl crate::disk::state::Xvb {
|
||||||
ui.add_space(space_h);
|
ui.add_space(space_h);
|
||||||
|
|
||||||
let mut is_slider_enabled = true;
|
let mut is_slider_enabled = true;
|
||||||
let mut hashrate_xmrig = {
|
let hashrate_xmrig = {
|
||||||
if lock!(gui_api_xmrig).hashrate_raw_15m > 0.0 {
|
if lock!(gui_api_xmrig).hashrate_raw_15m > 0.0 {
|
||||||
lock!(gui_api_xmrig).hashrate_raw_15m
|
lock!(gui_api_xmrig).hashrate_raw_15m
|
||||||
} else if lock!(gui_api_xmrig).hashrate_raw_1m > 0.0 {
|
} else if lock!(gui_api_xmrig).hashrate_raw_1m > 0.0 {
|
||||||
lock!(gui_api_xmrig).hashrate_raw_1m
|
lock!(gui_api_xmrig).hashrate_raw_1m
|
||||||
} else if lock!(gui_api_xmrig).hashrate_raw {
|
} else if lock!(gui_api_xmrig).hashrate_raw > 0.0 {
|
||||||
lock!(gui_api_xmrig).hashrate_raw
|
lock!(gui_api_xmrig).hashrate_raw
|
||||||
} else {
|
} else {
|
||||||
is_slider_enabled = false;
|
is_slider_enabled = false;
|
||||||
|
@ -181,10 +181,7 @@ impl crate::disk::state::Xvb {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if self.manual_donation_metric == ManualDonationMetric::Kilo {
|
|
||||||
hashrate_xmrig /= 1000.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
let slider_help_text = if self.mode == XvbMode::ManualXvb {
|
let slider_help_text = if self.mode == XvbMode::ManualXvb {
|
||||||
XVB_MANUAL_SLIDER_MANUAL_XVB_HELP
|
XVB_MANUAL_SLIDER_MANUAL_XVB_HELP
|
||||||
} else {
|
} else {
|
||||||
|
@ -196,21 +193,22 @@ impl crate::disk::state::Xvb {
|
||||||
ui.spacing_mut().slider_width = width * 0.5;
|
ui.spacing_mut().slider_width = width * 0.5;
|
||||||
ui.add_sized(
|
ui.add_sized(
|
||||||
[width, text_edit],
|
[width, text_edit],
|
||||||
egui::Slider::new(&mut self.amount, 0.0..=(hashrate_xmrig as f64))
|
egui::Slider::new(&mut self.manual_slider_amount, 0.0..=(hashrate_xmrig as f64))
|
||||||
).on_hover_text(slider_help_text);
|
).on_hover_text(slider_help_text);
|
||||||
|
|
||||||
if ui.add(egui::SelectableLabel::new(self.manual_donation_metric == ManualDonationMetric::Hash, "H/s")).clicked() &&
|
if ui.add(egui::SelectableLabel::new(self.manual_donation_metric == ManualDonationMetric::Hash, "H/s")).clicked() {
|
||||||
self.manual_donation_metric != ManualDonationMetric::Hash
|
|
||||||
{
|
|
||||||
self.amount *= 1000.0;
|
|
||||||
self.manual_donation_metric = ManualDonationMetric::Hash;
|
self.manual_donation_metric = ManualDonationMetric::Hash;
|
||||||
|
self.manual_slider_amount = self.manual_amount_raw;
|
||||||
}
|
}
|
||||||
if ui.add(egui::SelectableLabel::new(self.manual_donation_metric == ManualDonationMetric::Kilo, "kH/s")).clicked() &&
|
if ui.add(egui::SelectableLabel::new(self.manual_donation_metric == ManualDonationMetric::Kilo, "kH/s")).clicked() {
|
||||||
self.manual_donation_metric != ManualDonationMetric::Kilo
|
|
||||||
{
|
|
||||||
self.amount /= 1000.0;
|
|
||||||
self.manual_donation_metric = ManualDonationMetric::Kilo;
|
self.manual_donation_metric = ManualDonationMetric::Kilo;
|
||||||
|
self.manual_slider_amount = self.manual_amount_raw / 1000.0;
|
||||||
};
|
};
|
||||||
|
if ui.add(egui::SelectableLabel::new(self.manual_donation_metric == ManualDonationMetric::Mega, "MH/s")).clicked() {
|
||||||
|
self.manual_donation_metric = ManualDonationMetric::Mega;
|
||||||
|
self.manual_slider_amount = self.manual_amount_raw / 1_000_000.0;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -233,14 +231,22 @@ impl crate::disk::state::Xvb {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
match self.manual_donation_metric {
|
||||||
|
ManualDonationMetric::Hash => {
|
||||||
|
self.manual_amount_raw = self.manual_slider_amount;
|
||||||
|
},
|
||||||
|
ManualDonationMetric::Kilo => {
|
||||||
|
self.manual_amount_raw = self.manual_slider_amount * 1000.0;
|
||||||
|
},
|
||||||
|
ManualDonationMetric::Mega => {
|
||||||
|
self.manual_amount_raw = self.manual_slider_amount * 1_000_000.0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Set runtime_mode & runtime_manual_amount
|
// Set runtime_mode & runtime_manual_amount
|
||||||
lock!(api).stats_priv.runtime_mode = self.mode.clone().into();
|
lock!(api).stats_priv.runtime_mode = self.mode.clone().into();
|
||||||
if self.manual_donation_metric == ManualDonationMetric::Hash {
|
lock!(api).stats_priv.runtime_manual_amount = self.manual_amount_raw;
|
||||||
lock!(api).stats_priv.runtime_manual_amount = self.amount;
|
|
||||||
} else {
|
|
||||||
lock!(api).stats_priv.runtime_manual_amount = self.amount * 1000.0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ui.add_space(space_h);
|
ui.add_space(space_h);
|
||||||
|
|
|
@ -249,7 +249,8 @@ pub struct Xvb {
|
||||||
pub token: String,
|
pub token: String,
|
||||||
pub simple_hero_mode: bool,
|
pub simple_hero_mode: bool,
|
||||||
pub mode: XvbMode,
|
pub mode: XvbMode,
|
||||||
pub amount: f64,
|
pub manual_amount_raw: f64,
|
||||||
|
pub manual_slider_amount: f64,
|
||||||
pub manual_donation_level: ManualDonationLevel,
|
pub manual_donation_level: ManualDonationLevel,
|
||||||
pub manual_donation_metric: ManualDonationMetric,
|
pub manual_donation_metric: ManualDonationMetric,
|
||||||
}
|
}
|
||||||
|
@ -258,9 +259,9 @@ pub struct Xvb {
|
||||||
pub enum XvbMode {
|
pub enum XvbMode {
|
||||||
#[default]
|
#[default]
|
||||||
Auto,
|
Auto,
|
||||||
|
Hero,
|
||||||
ManualXvb,
|
ManualXvb,
|
||||||
ManualP2pool,
|
ManualP2pool,
|
||||||
Hero,
|
|
||||||
ManualDonationLevel,
|
ManualDonationLevel,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -278,6 +279,7 @@ pub enum ManualDonationMetric {
|
||||||
#[default]
|
#[default]
|
||||||
Hash,
|
Hash,
|
||||||
Kilo,
|
Kilo,
|
||||||
|
Mega
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug, Deserialize, Serialize)]
|
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||||||
|
|
Loading…
Reference in a new issue