root ratio complete
This commit is contained in:
parent
44334bb034
commit
97488672e8
@ -3,7 +3,7 @@ use crate::installer_stack_page;
|
|||||||
use gtk::{prelude::*, glib as glib};
|
use gtk::{prelude::*, glib as glib};
|
||||||
use crate::partitioning_page::{get_block_devices};
|
use crate::partitioning_page::{get_block_devices};
|
||||||
use adw::{prelude::*};
|
use adw::{prelude::*};
|
||||||
use glib::{clone, closure_local};
|
use glib::{clone, closure_local, ffi::gboolean};
|
||||||
use std::{rc::Rc, cell::RefCell};
|
use std::{rc::Rc, cell::RefCell};
|
||||||
|
|
||||||
const BOOT_AND_EFI_BYTE_SIZE: f64 = 1611661312.0;
|
const BOOT_AND_EFI_BYTE_SIZE: f64 = 1611661312.0;
|
||||||
@ -64,13 +64,23 @@ pub fn automatic_partitioning_page(
|
|||||||
//
|
//
|
||||||
|
|
||||||
let advanced_home_part_ratio_selection_box = gtk::Box::builder()
|
let advanced_home_part_ratio_selection_box = gtk::Box::builder()
|
||||||
.orientation(gtk::Orientation::Horizontal)
|
.orientation(gtk::Orientation::Vertical)
|
||||||
.homogeneous(true)
|
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
let advanced_home_part_ratio_label_root = gtk::Label::builder()
|
||||||
|
.build();
|
||||||
|
|
||||||
|
advanced_home_part_ratio_label_root.add_css_class("accent-text");
|
||||||
|
|
||||||
|
let advanced_home_part_ratio_label_home = gtk::Label::builder()
|
||||||
|
.build();
|
||||||
|
|
||||||
|
advanced_home_part_ratio_label_home.add_css_class("green-text");
|
||||||
|
|
||||||
let advanced_home_part_ratio_selection_frame = gtk::Frame::builder()
|
let advanced_home_part_ratio_selection_frame = gtk::Frame::builder()
|
||||||
.label("/ to /home ratio")
|
.label("/ to /home ratio")
|
||||||
.child(&advanced_home_part_ratio_selection_box)
|
.child(&advanced_home_part_ratio_selection_box)
|
||||||
|
.hexpand(true)
|
||||||
.margin_top(5)
|
.margin_top(5)
|
||||||
.margin_bottom(5)
|
.margin_bottom(5)
|
||||||
.build();
|
.build();
|
||||||
@ -79,6 +89,18 @@ pub fn automatic_partitioning_page(
|
|||||||
.draw_value(false)
|
.draw_value(false)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
advanced_home_part_ratio_selection_slider.add_css_class("green-trough");
|
||||||
|
|
||||||
|
let advanced_home_part_ratio_label_root_clone0 = advanced_home_part_ratio_label_root.clone();
|
||||||
|
let advanced_home_part_ratio_label_home_clone0 = advanced_home_part_ratio_label_home.clone();
|
||||||
|
|
||||||
|
advanced_home_part_ratio_selection_slider.connect_change_value(move |slider, _, value| {
|
||||||
|
let home_size: f64 = slider.adjustment().upper() + 10000000000.0 - value;
|
||||||
|
advanced_home_part_ratio_label_root_clone0.set_label(&format!("{}: {}", t!("Root Part Size"), pretty_bytes::converter::convert(value.into())));
|
||||||
|
advanced_home_part_ratio_label_home_clone0.set_label(&format!("{}: {}", t!("Home Part Size"), pretty_bytes::converter::convert(home_size.into())));
|
||||||
|
glib::Propagation::Proceed
|
||||||
|
});
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
let advanced_home_seperation_selection_box = gtk::Box::builder()
|
let advanced_home_seperation_selection_box = gtk::Box::builder()
|
||||||
@ -357,8 +379,9 @@ pub fn automatic_partitioning_page(
|
|||||||
} else {
|
} else {
|
||||||
MINIMUM_ROOT_BYTE_SIZE
|
MINIMUM_ROOT_BYTE_SIZE
|
||||||
};
|
};
|
||||||
advanced_home_part_ratio_selection_slider.set_range(MINIMUM_ROOT_BYTE_SIZE, device.block_size);
|
advanced_home_part_ratio_selection_slider.set_range(MINIMUM_ROOT_BYTE_SIZE, device.block_size - 10000000000.0);
|
||||||
advanced_home_part_ratio_selection_slider.set_value(default_root_size);
|
advanced_home_part_ratio_selection_slider.set_value(default_root_size);
|
||||||
|
advanced_home_part_ratio_selection_slider.emit_by_name_with_values("change_value", &[gtk::ScrollType::None.into(), default_root_size.into()]);
|
||||||
*partition_method_automatic_target_refcell.borrow_mut() = String::from(&device.block_name);
|
*partition_method_automatic_target_refcell.borrow_mut() = String::from(&device.block_name);
|
||||||
if check_for_errors(&error_labels) {
|
if check_for_errors(&error_labels) {
|
||||||
automatic_partitioning_page.set_next_sensitive(true)
|
automatic_partitioning_page.set_next_sensitive(true)
|
||||||
@ -482,6 +505,8 @@ pub fn automatic_partitioning_page(
|
|||||||
advanced_filesystem_selection_box.append(&advanced_filesystem_selection_checkbutton_xfs);
|
advanced_filesystem_selection_box.append(&advanced_filesystem_selection_checkbutton_xfs);
|
||||||
|
|
||||||
advanced_home_part_ratio_selection_box.append(&advanced_home_part_ratio_selection_slider);
|
advanced_home_part_ratio_selection_box.append(&advanced_home_part_ratio_selection_slider);
|
||||||
|
advanced_home_part_ratio_selection_box.append(&advanced_home_part_ratio_label_root);
|
||||||
|
advanced_home_part_ratio_selection_box.append(&advanced_home_part_ratio_label_home);
|
||||||
|
|
||||||
advanced_box.append(&advanced_home_seperation_selection_frame);
|
advanced_box.append(&advanced_home_seperation_selection_frame);
|
||||||
advanced_box.append(&advanced_filesystem_selection_frame);
|
advanced_box.append(&advanced_filesystem_selection_frame);
|
||||||
|
@ -84,4 +84,18 @@
|
|||||||
border-top-left-radius: 0px;
|
border-top-left-radius: 0px;
|
||||||
border-bottom-right-radius: 0px;
|
border-bottom-right-radius: 0px;
|
||||||
border-bottom-left-radius: 0px;
|
border-bottom-left-radius: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.green-trough trough {
|
||||||
|
background-color:green;
|
||||||
|
color:green;
|
||||||
|
}
|
||||||
|
|
||||||
|
.green-text {
|
||||||
|
color:green;
|
||||||
|
}
|
||||||
|
|
||||||
|
.accent-text {
|
||||||
|
color: @accent_bg_color;;
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user