[gnumeric] Show all ranges while editing. [#166653]



commit 185e7be088238baf3423f4c6faeded70ffd48002
Author: Andreas J Guelzow <aguelzow pyrshep ca>
Date:   Fri Jun 11 14:22:02 2010 -0600

     Show all ranges while editing. [#166653]
    
    2010-06-11  Andreas J. Guelzow <aguelzow pyrshep ca>
    
    	* gnumeric-expr-entry.c (gee_is_editing): new
    	(gee_scan_for_range): use gee_is_editing

 NEWS                              |    2 +-
 src/widgets/ChangeLog             |    5 +++++
 src/widgets/gnumeric-expr-entry.c |   13 ++++++++-----
 3 files changed, 14 insertions(+), 6 deletions(-)
---
diff --git a/NEWS b/NEWS
index 12ac94d..5866665 100644
--- a/NEWS
+++ b/NEWS
@@ -17,7 +17,7 @@ Andreas:
 	* Improve ACCRINT and its description. [#611436]
 	* Fix tests for homogeneity and independence for non-square
 	  tables. [#621227]
-	* Show all ranges while editing a range.
+	* Show all ranges while editing. [#166653]
 
 Jean:
 	* Do not ungrab a not grabbed item. [#620369]
diff --git a/src/widgets/ChangeLog b/src/widgets/ChangeLog
index 252332c..72df2d1 100644
--- a/src/widgets/ChangeLog
+++ b/src/widgets/ChangeLog
@@ -1,5 +1,10 @@
 2010-06-11  Andreas J. Guelzow <aguelzow pyrshep ca>
 
+	* gnumeric-expr-entry.c (gee_is_editing): new
+	(gee_scan_for_range): use gee_is_editing
+
+2010-06-11  Andreas J. Guelzow <aguelzow pyrshep ca>
+
 	* gnumeric-expr-entry.c (gee_scan_for_range): remove warning
 
 2010-06-11  Andreas J. Guelzow <aguelzow pyrshep ca>
diff --git a/src/widgets/gnumeric-expr-entry.c b/src/widgets/gnumeric-expr-entry.c
index f57d4d9..8bfa0a3 100644
--- a/src/widgets/gnumeric-expr-entry.c
+++ b/src/widgets/gnumeric-expr-entry.c
@@ -117,6 +117,12 @@ static void     cb_gee_notify_cursor_position (GnmExprEntry *gee);
 
 static GtkObjectClass *parent_class = NULL;
 
+static gboolean
+gee_is_editing (GnmExprEntry *gee)
+{
+	return (gee != NULL && gee->wbcg != NULL && wbcg_is_editing (gee->wbcg));
+}
+
 static GnmConventions const *
 gee_convs (const GnmExprEntry *gee)
 {
@@ -499,11 +505,7 @@ gee_scan_for_range (GnmExprEntry *gee)
 	parse_pos_init_editpos (&gee->pp, scg_view (gee->scg));
 	gee_destroy_feedback_range (gee);
 	if (!gee->feedback_disabled) {
-		gnm_expr_entry_find_range (gee);
-		in_editing = gnm_expr_entry_get_rangesel (gee, &range, &parse_sheet);
-#warning This is only tells us we are editing if we are even in a range.
-
-		if (in_editing) {
+		if (gee_is_editing (gee)) {
 			char const *text = gtk_entry_get_text (gee->entry);
 			GnmParsePos pp;
 			GnmExprTop const *texpr;
@@ -536,6 +538,7 @@ gee_scan_for_range (GnmExprEntry *gee)
 				gnm_expr_top_unref (texpr);
 			}
 		}
+		gnm_expr_entry_find_range (gee);
 		if (gnm_expr_entry_get_rangesel (gee, &range, &parse_sheet) &&
 		    parse_sheet == sheet) {
 			GnmRange const *merge; /* [#127415] */			



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]