Skip to content

Commit

Permalink
Collapse OutputWithAssignment values back into one.
Browse files Browse the repository at this point in the history
  • Loading branch information
lgarron committed Jan 15, 2024
1 parent d3a603f commit 22f6060
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 18 deletions.
22 changes: 13 additions & 9 deletions src/icon_conversion.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,22 @@ const RETINA_SCALE: u32 = 2;
pub enum ProgressBarType {
Input,
Conversion,
OutputWithAssignmentDefault,
OutputWithAssignmentUsingRez,
OutputWithAssignment,
OutputIcns,
}

impl ProgressBarType {
pub fn num_steps(&self, includes_badge: bool) -> u64 {
pub fn num_steps(&self, options: &Options) -> u64 {
match self {
ProgressBarType::Input => 1,
ProgressBarType::Conversion => 13 + if includes_badge { 1 } else { 0 },
ProgressBarType::OutputWithAssignmentDefault => 2,
ProgressBarType::OutputWithAssignmentUsingRez => 7,
ProgressBarType::Conversion => 13 + if options.badge.is_some() { 1 } else { 0 },
ProgressBarType::OutputWithAssignment => {
2 + if matches!(options.set_icon_using, SetIconUsing::Rez) {
7
} else {
0
}
}
ProgressBarType::OutputIcns => 1,
}
}
Expand Down Expand Up @@ -78,11 +82,11 @@ impl WorkingDir {
progress_bar_type: ProgressBarType,
stage_description: &str,
multi_progress_bar: Option<MultiProgress>,
includes_badge: bool,
options: &Options,
) -> IconConversion {
let progress_bar = match multi_progress_bar {
Some(multi_progress_bar) => {
let progress_bar = ProgressBar::new(progress_bar_type.num_steps(includes_badge));
let progress_bar = ProgressBar::new(progress_bar_type.num_steps(options));
let progress_bar = match progress_bar_type {
ProgressBarType::Conversion => multi_progress_bar.insert(1, progress_bar),
_ => multi_progress_bar.insert_from_back(0, progress_bar),
Expand Down Expand Up @@ -468,7 +472,7 @@ impl IconConversion {
badge: Badge,
resolution: &IconResolution,
) -> Result<(), FolderifyError> {
self.step("Adding badge"); // TODO: increase maximum step counter.
self.step("Adding badge");

let badge_icon = get_badge_icon(badge, resolution);

Expand Down
15 changes: 6 additions & 9 deletions src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ fn main() {
icon_conversion::ProgressBarType::Input,
"(Input)",
multi_progress_bar.clone(),
false,
&options,
);
let full_mask_path = input_icon_conversion
.full_mask(
Expand All @@ -65,7 +65,7 @@ fn main() {
icon_conversion::ProgressBarType::Conversion,
&resolution.to_string(),
multi_progress_bar.clone(),
true,
&options,
);
let options = options.clone();
let full_mask_path = full_mask_path.clone();
Expand Down Expand Up @@ -96,18 +96,15 @@ fn main() {
};

// Deduplicate this `match` with the one that happens after handle joining.
let output_progress_bar_type = match (output_iconset_only, &options.set_icon_using) {
(Some(_), _) => icon_conversion::ProgressBarType::OutputIcns,
(None, options::SetIconUsing::Rez) => {
icon_conversion::ProgressBarType::OutputWithAssignmentUsingRez
}
(None, _) => icon_conversion::ProgressBarType::OutputWithAssignmentDefault,
let output_progress_bar_type = match output_iconset_only {
Some(_) => icon_conversion::ProgressBarType::OutputIcns,
None => icon_conversion::ProgressBarType::OutputWithAssignment,
};
let output_icon_conversion = working_dir.icon_conversion(
output_progress_bar_type,
"(Output)",
multi_progress_bar,
false,
&options,
);
output_icon_conversion.step_unincremented("Waiting…");

Expand Down

0 comments on commit 22f6060

Please sign in to comment.