[shacrypt] push by Nightgunner5 - Fix up the GTK advanced encryption panel, change nonworking spin box t... on 2009-11-09 21:47 GMT

0 views
Skip to first unread message

shac...@googlecode.com

unread,
Nov 9, 2009, 4:50:55 PM11/9/09
to shac...@googlegroups.com
Revision: ba93caf38e
Author: Nightgunner5
Date: Mon Nov 9 13:47:30 2009
Log: Fix up the GTK advanced encryption panel, change nonworking spin box
to working slider.

update issue 2
http://code.google.com/p/shacrypt/source/detail?r=ba93caf38e

Modified:
/glade.c
/shacrypt.glade

=======================================
--- /glade.c Sun Nov 8 18:50:54 2009
+++ /glade.c Mon Nov 9 13:47:30 2009
@@ -46,13 +46,50 @@
}

G_MODULE_EXPORT void encrypt_step1_ok( GtkWidget* button, gpointer data ) {
+ // This part of the reset is here because Glade won't let me set
default values.
+ GtkToggleButton* sha1;
+ GtkToggleButton* sha224;
+ GtkToggleButton* sha256;
+ GtkToggleButton* sha384;
+ GtkToggleButton* sha512;
+ GtkToggleButton* md5;
+ GtkToggleButton* cubehash;
+ GtkToggleButton* whirlpool;
+ GtkToggleButton* randomseed;
+ GtkWidget* seed;
+
+ sha1 = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_sha1" ) );
+ sha224 = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_sha224" ) );
+ sha256 = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_sha256" ) );
+ sha384 = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_sha384" ) );
+ sha512 = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_sha512" ) );
+ md5 = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_md5" ) );
+ cubehash = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_cubehash" ) );
+ whirlpool = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "check_e2_whirlpool" ) );
+ randomseed = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "radio_e2_randomseed_off" ) );
+ seed = GTK_WIDGET( gtk_builder_get_object(
builder, "hscale_e2_randomseed" ) );
+
+ gtk_toggle_button_set_active( sha1, TRUE );
+ gtk_toggle_button_set_active( sha224, FALSE );
+ gtk_toggle_button_set_active( sha256, FALSE );
+ gtk_toggle_button_set_active( sha384, FALSE );
+ gtk_toggle_button_set_active( sha512, FALSE );
+ gtk_toggle_button_set_active( md5, FALSE );
+ gtk_toggle_button_set_active( cubehash, FALSE );
+ gtk_toggle_button_set_active( whirlpool, FALSE );
+ gtk_toggle_button_set_active( randomseed, TRUE );
+ gtk_widget_set_sensitive( seed, FALSE );
+ gtk_range_set_value( GTK_RANGE( seed ), 20.0 );
+
+ // Now on to the actual displaying part.
GtkWidget* step1;
GtkWidget* step2;
+
step1 = GTK_WIDGET( gtk_builder_get_object( builder, "encrypt_step1" )
);
step2 = GTK_WIDGET( gtk_builder_get_object( builder, "encrypt_step2" )
);

- gtk_widget_hide( step1 );
gtk_widget_show( step2 );
+ gtk_widget_hide( step1 );
}

/* Password scoring method adapted from
@@ -202,15 +239,15 @@
GtkToggleButton* randomseed;
randomseed = GTK_TOGGLE_BUTTON( gtk_builder_get_object(
builder, "radio_e2_randomseed_off" ) );

- GtkSpinButton* seed;
- seed = GTK_SPIN_BUTTON( gtk_builder_get_object(
builder, "spin_e2_randomseed" ) );
+ GtkWidget* seed;
+ seed = GTK_WIDGET( gtk_builder_get_object(
builder, "hscale_e2_randomseed" ) );

if ( gtk_toggle_button_get_active( randomseed ) ) {
- gtk_entry_set_editable( GTK_ENTRY( seed ), FALSE );
-
- gtk_spin_button_set_value( seed, (gdouble)seedlen );
+ gtk_widget_set_sensitive( seed, FALSE );
+
+ gtk_range_set_value( GTK_RANGE( seed ), (gdouble)seedlen );
} else {
- gtk_entry_set_editable( GTK_ENTRY( seed ), TRUE );
+ gtk_widget_set_sensitive( seed, TRUE );
}
}

@@ -233,7 +270,7 @@
unsigned long i, n,
size;
SHACrypt_Context s;
- unsigned char algos = '\x01';
+ unsigned char algos = encrypt_step2_get_algos();
static char fbuf[256] = {0},
obuf[256] = {0},
tmp[1024] = {0};
@@ -253,7 +290,11 @@

o = fopen( tmp, "wb" );

- n = SHACrypt_GetLength( algos );
+ GtkRange* seedlen;
+ seedlen = GTK_RANGE( gtk_builder_get_object(
builder, "hscale_e2_randomseed" ) );
+
+ n = (int)gtk_range_get_value( seedlen );
+
for ( i = 0; i < n; i++ )
fbuf[i] = g_random_int_range( 0, 255 );

@@ -325,8 +366,8 @@
step2 = GTK_WIDGET( gtk_builder_get_object(
builder, "encrypt_step2" ) );
step3 = GTK_WIDGET( gtk_builder_get_object(
builder, "encrypt_step3" ) );

- gtk_widget_hide( step2 );
gtk_widget_show( step3 );
+ gtk_widget_hide( step2 );

GThread* enc;
enc = g_thread_create( encrypt_step3, NULL, FALSE, NULL );
=======================================
--- /shacrypt.glade Sun Nov 8 18:50:54 2009
+++ /shacrypt.glade Mon Nov 9 13:47:30 2009
@@ -22,7 +22,7 @@
<object class="GtkLabel" id="label_welcome">
<property name="visible">True</property>
<property name="label" translatable="yes">Welcome to
-SHACrypt 1.2</property>
+SHACrypt 1.2.1</property>
<property name="justify">center</property>
<attributes>
<attribute name="size" value="25000"/>
@@ -121,11 +121,14 @@
<property name="border_width">5</property>
<property name="title" translatable="yes">Encrypt a file (Step 1 of
3)</property>
<property name="modal">True</property>
+ <property name="window_position">center-on-parent</property>
<property name="default_width">500</property>
<property name="default_height">400</property>
<property name="type_hint">dialog</property>
+ <property name="transient_for">main</property>
<property name="has_separator">False</property>
- <signal name="close" handler="encrypt_step1_cancel"/>
+ <signal name="delete_event" handler="encrypt_step1_cancel"/>
+ <signal name="delete_event" handler="gtk_widget_hide_on_delete"/>
<child internal-child="vbox">
<object class="GtkVBox" id="dialog-vbox4">
<property name="visible">True</property>
@@ -211,9 +214,12 @@
<property name="border_width">5</property>
<property name="title" translatable="yes">Encrypt a file (Step 2 of
3)</property>
<property name="modal">True</property>
+ <property name="window_position">center-on-parent</property>
<property name="type_hint">dialog</property>
+ <property name="transient_for">encrypt_step1</property>
<property name="has_separator">False</property>
- <signal name="close" handler="encrypt_step2_cancel"/>
+ <signal name="delete_event" handler="encrypt_step2_cancel"/>
+ <signal name="delete_event" handler="gtk_widget_hide_on_delete"/>
<child internal-child="vbox">
<object class="GtkVBox" id="dialog-vbox3">
<property name="visible">True</property>
@@ -509,20 +515,17 @@
<signal name="toggled"
handler="encrypt_step2_check_hashalgo"/>
</object>
<packing>
+ <property
name="expand">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkSpinButton"
id="spin_e2_randomseed">
+ <object class="GtkHScale"
id="hscale_e2_randomseed">
<property
name="visible">True</property>
<property
name="can_focus">True</property>
- <property
name="max_length">3</property>
- <property
name="invisible_char">&#x25CF;</property>
- <property
name="truncate_multiline">True</property>
<property
name="adjustment">adjustment_e2_randomseed</property>
- <property
name="snap_to_ticks">True</property>
- <property
name="numeric">True</property>
- <property
name="update_policy">if-valid</property>
+ <property name="digits">0</property>
+ <property
name="value_pos">left</property>
</object>
<packing>
<property name="position">1</property>
@@ -631,8 +634,10 @@
<property name="border_width">5</property>
<property name="title" translatable="yes">Encrypt a file (Step 3 of
3)</property>
<property name="modal">True</property>
+ <property name="window_position">center-on-parent</property>
<property name="type_hint">dialog</property>
<property name="deletable">False</property>
+ <property name="transient_for">encrypt_step2</property>
<signal name="delete_event" handler="gtk_widget_hide_on_delete"/>
<child>
<object class="GtkVBox" id="vbox2">

Reply all
Reply to author
Forward
0 new messages