From 699d5601f59938d62ec2506f319c25a656a403da Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Thu, 5 Jul 2007 23:16:13 -0400 Subject: git-gui: Refactor our ui_status_value update technique I'm really starting to dislike global variables. The ui_status_value global varible is just one of those that seems to appear in a lot of code and in many cases we didn't even declare it "global" within the proc that updates it so we haven't always been getting all of the updates we expected to see. This change introduces two new global procs: ui_status $msg; # Sets the status bar to show $msg. ui_ready; # Changes the status bar to show "Ready." The second (special) form is used because we often update the area with this message once we are done processing a block of work and want the user to know we have completed it. I'm not fixing the cases that appear in lib/branch.tcl right now as I'm actually in the middle of a huge refactoring of that code to support making a detached HEAD checkout. Signed-off-by: Shawn O. Pearce --- lib/index.tcl | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'lib/index.tcl') diff --git a/lib/index.tcl b/lib/index.tcl index 42742850e..7c175a96a 100644 --- a/lib/index.tcl +++ b/lib/index.tcl @@ -2,7 +2,7 @@ # Copyright (C) 2006, 2007 Shawn Pearce proc update_indexinfo {msg pathList after} { - global update_index_cp ui_status_value + global update_index_cp if {![lock_index update]} return @@ -12,7 +12,7 @@ proc update_indexinfo {msg pathList after} { set batch [expr {int($totalCnt * .01) + 1}] if {$batch > 25} {set batch 25} - set ui_status_value [format \ + ui_status [format \ "$msg... %i/%i files (%.2f%%)" \ $update_index_cp \ $totalCnt \ @@ -36,7 +36,7 @@ proc update_indexinfo {msg pathList after} { } proc write_update_indexinfo {fd pathList totalCnt batch msg after} { - global update_index_cp ui_status_value + global update_index_cp global file_states current_diff_path if {$update_index_cp >= $totalCnt} { @@ -67,7 +67,7 @@ proc write_update_indexinfo {fd pathList totalCnt batch msg after} { display_file $path $new } - set ui_status_value [format \ + ui_status [format \ "$msg... %i/%i files (%.2f%%)" \ $update_index_cp \ $totalCnt \ @@ -75,7 +75,7 @@ proc write_update_indexinfo {fd pathList totalCnt batch msg after} { } proc update_index {msg pathList after} { - global update_index_cp ui_status_value + global update_index_cp if {![lock_index update]} return @@ -85,7 +85,7 @@ proc update_index {msg pathList after} { set batch [expr {int($totalCnt * .01) + 1}] if {$batch > 25} {set batch 25} - set ui_status_value [format \ + ui_status [format \ "$msg... %i/%i files (%.2f%%)" \ $update_index_cp \ $totalCnt \ @@ -109,7 +109,7 @@ proc update_index {msg pathList after} { } proc write_update_index {fd pathList totalCnt batch msg after} { - global update_index_cp ui_status_value + global update_index_cp global file_states current_diff_path if {$update_index_cp >= $totalCnt} { @@ -144,7 +144,7 @@ proc write_update_index {fd pathList totalCnt batch msg after} { display_file $path $new } - set ui_status_value [format \ + ui_status [format \ "$msg... %i/%i files (%.2f%%)" \ $update_index_cp \ $totalCnt \ @@ -152,7 +152,7 @@ proc write_update_index {fd pathList totalCnt batch msg after} { } proc checkout_index {msg pathList after} { - global update_index_cp ui_status_value + global update_index_cp if {![lock_index update]} return @@ -162,7 +162,7 @@ proc checkout_index {msg pathList after} { set batch [expr {int($totalCnt * .01) + 1}] if {$batch > 25} {set batch 25} - set ui_status_value [format \ + ui_status [format \ "$msg... %i/%i files (%.2f%%)" \ $update_index_cp \ $totalCnt \ @@ -192,7 +192,7 @@ proc checkout_index {msg pathList after} { } proc write_checkout_index {fd pathList totalCnt batch msg after} { - global update_index_cp ui_status_value + global update_index_cp global file_states current_diff_path if {$update_index_cp >= $totalCnt} { @@ -217,7 +217,7 @@ proc write_checkout_index {fd pathList totalCnt batch msg after} { } } - set ui_status_value [format \ + ui_status [format \ "$msg... %i/%i files (%.2f%%)" \ $update_index_cp \ $totalCnt \ @@ -249,7 +249,7 @@ proc unstage_helper {txt paths} { update_indexinfo \ $txt \ $pathList \ - [concat $after {set ui_status_value {Ready.}}] + [concat $after [list ui_ready]] } } @@ -293,7 +293,7 @@ proc add_helper {txt paths} { update_index \ $txt \ $pathList \ - [concat $after {set ui_status_value {Ready to commit.}}] + [concat $after {ui_status {Ready to commit.}}] } } @@ -370,7 +370,7 @@ Any unadded changes will be permanently lost by the revert." \ checkout_index \ $txt \ $pathList \ - [concat $after {set ui_status_value {Ready.}}] + [concat $after [list ui_ready]] } else { unlock_index } -- cgit v1.2.1