[gnumeric] GUI: Handle strings is tooltip parser.



commit 218c33702275719a9612b8b6b5ebe713eeb620aa
Author: Morten Welinder <terra gnome org>
Date:   Fri Jun 18 10:22:31 2010 -0400

    GUI: Handle strings is tooltip parser.

 src/widgets/ChangeLog             |    3 ++-
 src/widgets/gnumeric-expr-entry.c |   15 +++++++++++++++
 2 files changed, 17 insertions(+), 1 deletions(-)
---
diff --git a/src/widgets/ChangeLog b/src/widgets/ChangeLog
index d3818e2..46479c2 100644
--- a/src/widgets/ChangeLog
+++ b/src/widgets/ChangeLog
@@ -1,7 +1,8 @@
 2010-06-18  Morten Welinder  <terra gnome org>
 
 	* gnumeric-expr-entry.c (gee_check_tooltip): Make this work for
-	"ATAN", "g_product", "log2" and similar functions.
+	"ATAN", "g_product", "log2" and similar functions.  Handle strings
+	and sheet names.
 
 2010-06-17  Jean Brefort  <jean brefort normalesup org>
 
diff --git a/src/widgets/gnumeric-expr-entry.c b/src/widgets/gnumeric-expr-entry.c
index 79750a1..59c5a17 100644
--- a/src/widgets/gnumeric-expr-entry.c
+++ b/src/widgets/gnumeric-expr-entry.c
@@ -795,8 +795,23 @@ gee_check_tooltip (GnmExprEntry *gee)
 			args++;
 		} else if (*prefix != ' ')
 			stuff++;
+
+		if (*prefix == '\'' || *prefix == '"') {
+			char quote = *prefix--;
+
+			while (*prefix != quote ||
+			       (prefix > str && prefix[-1] == '\\')) {
+				if (prefix == str)
+					goto not_found;
+				prefix--;
+			}
+
+			if (prefix == str)
+				goto not_found;
+		}
 		prefix--;
 	}
+ not_found:
 	g_free (str);
 	gee_delete_tooltip (gee);
 	return;



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