@ -116,7 +116,7 @@ void yon_advanced_partition_set_from_section(advanced_partition *part, advanced_
if ( ! yon_char_is_empty ( part - > part ) ) part - > part_type = ADVANCED_PART_NEW ;
if ( ! yon_char_is_empty ( part - > part ) ) part - > part_type = ADVANCED_PART_NEW ;
else part - > part_type = ADVANCED_PART_EXISTING ;
else part - > part_type = ADVANCED_PART_EXISTING ;
if ( section - > format ) {
if ( section - > format ) {
gtk_switch_set_active ( GTK_SWITCH ( part - > Format Switch ) , 1 ) ;
gtk_switch_set_active ( GTK_SWITCH ( part - > Format Combo ) , 1 ) ;
if ( section - > size ) {
if ( section - > size ) {
gtk_spin_button_set_value ( GTK_SPIN_BUTTON ( part - > SizeSpin ) , section - > size ) ;
gtk_spin_button_set_value ( GTK_SPIN_BUTTON ( part - > SizeSpin ) , section - > size ) ;
gtk_combo_box_set_active ( GTK_COMBO_BOX ( part - > SizeCombo ) , yon_get_size_get_from_letter ( section - > size_letter ) - 1 ) ;
gtk_combo_box_set_active ( GTK_COMBO_BOX ( part - > SizeCombo ) , yon_get_size_get_from_letter ( section - > size_letter ) - 1 ) ;
@ -692,8 +692,11 @@ void yon_advanced_part_parameter_changed(GtkWidget *self, advanced_partition *pa
} else if ( self = = part - > EncryptionCombo | | self = = part - > EncryptionEntry ) {
} else if ( self = = part - > EncryptionCombo | | self = = part - > EncryptionEntry ) {
section - > encryption = yon_char_new ( gtk_combo_box_get_active_id ( GTK_COMBO_BOX ( part - > EncryptionCombo ) ) ) ;
section - > encryption = yon_char_new ( gtk_combo_box_get_active_id ( GTK_COMBO_BOX ( part - > EncryptionCombo ) ) ) ;
section - > encryption_password = yon_char_new ( gtk_entry_get_text ( GTK_ENTRY ( part - > EncryptionEntry ) ) ) ;
section - > encryption_password = yon_char_new ( gtk_entry_get_text ( GTK_ENTRY ( part - > EncryptionEntry ) ) ) ;
} else if ( self = = part - > FormatSwitch ) {
} else if ( self = = part - > FormatCombo ) {
if ( gtk_switch_get_active ( GTK_SWITCH ( part - > FormatSwitch ) ) ) {
int format_active = gtk_combo_box_get_active ( GTK_COMBO_BOX ( part - > FormatCombo ) ) ;
if ( format_active = = 2 ) {
section - > format = 2 ;
} else if ( format_active = = 1 ) {
section - > format = 1 ;
section - > format = 1 ;
} else {
} else {
section - > format = 0 ;
section - > format = 0 ;
@ -701,9 +704,15 @@ void yon_advanced_part_parameter_changed(GtkWidget *self, advanced_partition *pa
}
}
}
}
gboolean on_format_changed ( GtkWidget * self , gboolean , advanced_partition * part ) {
void on_format_changed ( GtkWidget * self , advanced_partition * part ) {
int active = gtk_combo_box_get_active ( GTK_COMBO_BOX ( self ) ) ;
switch ( active ) {
case 0 :
case 1 : gtk_revealer_set_reveal_child ( GTK_REVEALER ( part - > FormatRevealer ) , 0 ) ;
break ;
case 2 : gtk_revealer_set_reveal_child ( GTK_REVEALER ( part - > FormatRevealer ) , 1 ) ;
}
yon_advanced_part_parameter_changed ( self , part ) ;
yon_advanced_part_parameter_changed ( self , part ) ;
return 0 ;
}
}
advanced_partition * yon_advanced_partition_new ( ) {
advanced_partition * yon_advanced_partition_new ( ) {
@ -714,7 +723,7 @@ advanced_partition *yon_advanced_partition_new(){
part - > SystemSectionToggle = yon_gtk_builder_get_widget ( builder , " SystemSectionToggle " ) ;
part - > SystemSectionToggle = yon_gtk_builder_get_widget ( builder , " SystemSectionToggle " ) ;
part - > UserDataSectionToggle = yon_gtk_builder_get_widget ( builder , " UserDataSectionToggle " ) ;
part - > UserDataSectionToggle = yon_gtk_builder_get_widget ( builder , " UserDataSectionToggle " ) ;
part - > RemoveButton = yon_gtk_builder_get_widget ( builder , " RemoveButton " ) ;
part - > RemoveButton = yon_gtk_builder_get_widget ( builder , " RemoveButton " ) ;
part - > Format Switch = yon_gtk_builder_get_widget ( builder , " Format Switch " ) ;
part - > Format Combo = yon_gtk_builder_get_widget ( builder , " Format Combo " ) ;
part - > SizeSpin = yon_gtk_builder_get_widget ( builder , " SizeSpin " ) ;
part - > SizeSpin = yon_gtk_builder_get_widget ( builder , " SizeSpin " ) ;
part - > SizeCombo = yon_gtk_builder_get_widget ( builder , " SizeCombo " ) ;
part - > SizeCombo = yon_gtk_builder_get_widget ( builder , " SizeCombo " ) ;
part - > PartLabelEntry = yon_gtk_builder_get_widget ( builder , " PartLabelEntry " ) ;
part - > PartLabelEntry = yon_gtk_builder_get_widget ( builder , " PartLabelEntry " ) ;
@ -728,12 +737,22 @@ advanced_partition *yon_advanced_partition_new(){
part - > part = NULL ;
part - > part = NULL ;
part - > device = NULL ;
part - > device = NULL ;
yon_gtk_revealer_set_from_switch ( GTK_REVEALER ( part - > FormatRevealer ) , GTK_SWITCH ( part - > FormatSwitch ) ) ;
gtk_combo_box_text_append ( GTK_COMBO_BOX_TEXT ( part - > SizeCombo ) , " K " , _ ( " Kb " ) ) ;
gtk_combo_box_text_append ( GTK_COMBO_BOX_TEXT ( part - > SizeCombo ) , " M " , _ ( " Mb " ) ) ;
gtk_combo_box_text_append ( GTK_COMBO_BOX_TEXT ( part - > SizeCombo ) , " G " , _ ( " Gb " ) ) ;
gtk_combo_box_text_append ( GTK_COMBO_BOX_TEXT ( part - > SizeCombo ) , " T " , _ ( " Tb " ) ) ;
gtk_combo_box_set_active ( GTK_COMBO_BOX ( part - > SizeCombo ) , 0 ) ;
gtk_combo_box_text_append_text ( GTK_COMBO_BOX_TEXT ( part - > FormatCombo ) , DO_NOT_FORMAT_LABEL ) ;
gtk_combo_box_text_append_text ( GTK_COMBO_BOX_TEXT ( part - > FormatCombo ) , AUTOMATIC_FORMAT_LABEL ) ;
gtk_combo_box_text_append_text ( GTK_COMBO_BOX_TEXT ( part - > FormatCombo ) , FORMAT_LABEL ) ;
gtk_combo_box_set_active ( GTK_COMBO_BOX ( part - > FormatCombo ) , 0 ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionButton ) , " clicked " , G_CALLBACK ( on_advanced_password_clicked ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionButton ) , " clicked " , G_CALLBACK ( on_advanced_password_clicked ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionCombo ) , " changed " , G_CALLBACK ( yon_gtk_widget_set_sensitive_from_combo_box ) , part - > EncryptionButton ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionCombo ) , " changed " , G_CALLBACK ( yon_gtk_widget_set_sensitive_from_combo_box ) , part - > EncryptionButton ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionCombo ) , " changed " , G_CALLBACK ( yon_gtk_widget_set_sensitive_from_combo_box ) , part - > EncryptionEntry ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionCombo ) , " changed " , G_CALLBACK ( yon_gtk_widget_set_sensitive_from_combo_box ) , part - > EncryptionEntry ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionEntry ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionEntry ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > FormatSwitch ) , " state-set " , G_CALLBACK ( on_format_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > Format Combo) , " changed " , G_CALLBACK ( on_format_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > SizeCombo ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > SizeCombo ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > SizeSpin ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > SizeSpin ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > PartLabelEntry ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > PartLabelEntry ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
@ -741,7 +760,6 @@ advanced_partition *yon_advanced_partition_new(){
g_signal_connect ( G_OBJECT ( part - > FileSystemLabelEntry ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > FileSystemLabelEntry ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionCombo ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
g_signal_connect ( G_OBJECT ( part - > EncryptionCombo ) , " changed " , G_CALLBACK ( yon_advanced_part_parameter_changed ) , part ) ;
yon_fs_type_setup ( GTK_COMBO_BOX_TEXT ( part - > FileSystemTypeCombo ) ) ;
yon_fs_type_setup ( GTK_COMBO_BOX_TEXT ( part - > FileSystemTypeCombo ) ) ;
g_object_set_data ( G_OBJECT ( part - > MainBox ) , " advanced_partition " , part ) ;
g_object_set_data ( G_OBJECT ( part - > MainBox ) , " advanced_partition " , part ) ;