Add minimal similarity level (#129)
This commit is contained in:
parent
598aec345e
commit
5672431257
|
@ -35,6 +35,7 @@ pub enum Similarity {
|
|||
Medium,
|
||||
High,
|
||||
VeryHigh,
|
||||
Minimal,
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
|
@ -409,7 +410,8 @@ impl SimilarImages {
|
|||
Similarity::Medium => 2,
|
||||
Similarity::Small => 3,
|
||||
Similarity::VerySmall => 4,
|
||||
_ => panic!("0-4 similarity levels are allowed, check if not added more."),
|
||||
Similarity::Minimal => 5,
|
||||
_ => panic!("0-5 similarity levels are allowed, check if not added more."),
|
||||
};
|
||||
|
||||
// TODO
|
||||
|
@ -473,7 +475,8 @@ impl SimilarImages {
|
|||
2 => Similarity::Medium,
|
||||
3 => Similarity::Small,
|
||||
4 => Similarity::VerySmall,
|
||||
_ => panic!("0-4 similarity levels are allowed, check if not added more."),
|
||||
5 => Similarity::Minimal,
|
||||
_ => panic!("0-5 similarity levels are allowed, check if not added more."),
|
||||
},
|
||||
})
|
||||
.collect::<Vec<_>>()),
|
||||
|
@ -601,6 +604,7 @@ impl PrintResults for SimilarImages {
|
|||
|
||||
fn get_string_from_similarity(similarity: &Similarity) -> &str {
|
||||
match similarity {
|
||||
Similarity::Minimal => "Minimal",
|
||||
Similarity::VerySmall => "Very Small",
|
||||
Similarity::Small => "Small",
|
||||
Similarity::Medium => "Medium",
|
||||
|
|
|
@ -1621,7 +1621,7 @@ Author: Rafał Mikrut
|
|||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Similarity level </property>
|
||||
<property name="label" translatable="yes">Similarity </property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
@ -1629,6 +1629,22 @@ Author: Rafał Mikrut
|
|||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkRadioButton" id="radio_button_similar_images_minimal">
|
||||
<property name="label" translatable="yes">Minimal</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">radio_button_similar_images_very_high</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkRadioButton" id="radio_button_similar_images_very_small">
|
||||
<property name="label" translatable="yes">Very Small</property>
|
||||
|
@ -1641,7 +1657,7 @@ Author: Rafał Mikrut
|
|||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -1656,7 +1672,7 @@ Author: Rafał Mikrut
|
|||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -1671,7 +1687,7 @@ Author: Rafał Mikrut
|
|||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">3</property>
|
||||
<property name="position">4</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -1686,7 +1702,7 @@ Author: Rafał Mikrut
|
|||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">4</property>
|
||||
<property name="position">5</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -1701,7 +1717,7 @@ Author: Rafał Mikrut
|
|||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">5</property>
|
||||
<property name="position">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
|
|
|
@ -49,6 +49,7 @@ pub fn connect_button_search(
|
|||
let radio_button_duplicates_size = gui_data.radio_button_duplicates_size.clone();
|
||||
let radio_button_duplicates_hashmb = gui_data.radio_button_duplicates_hashmb.clone();
|
||||
let radio_button_duplicates_hash = gui_data.radio_button_duplicates_hash.clone();
|
||||
let radio_button_similar_images_minimal = gui_data.radio_button_similar_images_minimal.clone();
|
||||
let radio_button_similar_images_very_small = gui_data.radio_button_similar_images_very_small.clone();
|
||||
let radio_button_similar_images_small = gui_data.radio_button_similar_images_small.clone();
|
||||
let radio_button_similar_images_medium = gui_data.radio_button_similar_images_medium.clone();
|
||||
|
@ -263,7 +264,9 @@ pub fn connect_button_search(
|
|||
};
|
||||
|
||||
let similarity;
|
||||
if radio_button_similar_images_very_small.get_active() {
|
||||
if radio_button_similar_images_minimal.get_active() {
|
||||
similarity = similar_images::Similarity::Minimal;
|
||||
} else if radio_button_similar_images_very_small.get_active() {
|
||||
similarity = similar_images::Similarity::VerySmall;
|
||||
} else if radio_button_similar_images_small.get_active() {
|
||||
similarity = similar_images::Similarity::Small;
|
||||
|
|
|
@ -114,6 +114,7 @@ pub struct GuiData {
|
|||
pub radio_button_duplicates_hashmb: gtk::RadioButton,
|
||||
pub radio_button_duplicates_hash: gtk::RadioButton,
|
||||
|
||||
pub radio_button_similar_images_minimal: gtk::RadioButton,
|
||||
pub radio_button_similar_images_very_small: gtk::RadioButton,
|
||||
pub radio_button_similar_images_small: gtk::RadioButton,
|
||||
pub radio_button_similar_images_medium: gtk::RadioButton,
|
||||
|
@ -329,6 +330,7 @@ impl GuiData {
|
|||
let radio_button_duplicates_hashmb: gtk::RadioButton = builder.get_object("radio_button_duplicates_hashmb").unwrap();
|
||||
let radio_button_duplicates_hash: gtk::RadioButton = builder.get_object("radio_button_duplicates_hash").unwrap();
|
||||
|
||||
let radio_button_similar_images_minimal: gtk::RadioButton = builder.get_object("radio_button_similar_images_minimal").unwrap();
|
||||
let radio_button_similar_images_very_small: gtk::RadioButton = builder.get_object("radio_button_similar_images_very_small").unwrap();
|
||||
let radio_button_similar_images_small: gtk::RadioButton = builder.get_object("radio_button_similar_images_small").unwrap();
|
||||
let radio_button_similar_images_medium: gtk::RadioButton = builder.get_object("radio_button_similar_images_medium").unwrap();
|
||||
|
@ -473,6 +475,7 @@ impl GuiData {
|
|||
radio_button_duplicates_size,
|
||||
radio_button_duplicates_hashmb,
|
||||
radio_button_duplicates_hash,
|
||||
radio_button_similar_images_minimal,
|
||||
radio_button_similar_images_very_small,
|
||||
radio_button_similar_images_small,
|
||||
radio_button_similar_images_medium,
|
||||
|
|
|
@ -250,6 +250,7 @@ pub fn hide_all_buttons(buttons_array: &[gtk::Button]) {
|
|||
pub fn get_text_from_similarity(similarity: &Similarity) -> &str {
|
||||
match similarity {
|
||||
Similarity::None => "Original",
|
||||
Similarity::Minimal => "Original",
|
||||
Similarity::VerySmall => "Very Small",
|
||||
Similarity::Small => "Small",
|
||||
Similarity::Medium => "Medium",
|
||||
|
|
Loading…
Reference in a new issue