From c008748638679f10746c70a7f677c0e8906ffa9e Mon Sep 17 00:00:00 2001 From: reinelt Date: Sat, 6 Mar 2004 20:31:16 +0000 Subject: [lcd4linux @ 2004-03-06 20:31:16 by reinelt] Complete rewrite of the evaluator to get rid of the code from mark Morley (because of license issues). The new Evaluator does a pre-compile of expressions, and stores them in trees. Therefore it should be reasonable faster... git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@387 3ae390bd-cb1e-0410-b409-cd5a39f66f1f --- widget_text.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'widget_text.h') diff --git a/widget_text.h b/widget_text.h index d3e20c5..4fa9518 100644 --- a/widget_text.h +++ b/widget_text.h @@ -1,4 +1,4 @@ -/* $Id: widget_text.h,v 1.2 2004/01/15 07:47:03 reinelt Exp $ +/* $Id: widget_text.h,v 1.3 2004/03/06 20:31:16 reinelt Exp $ * * simple text widget handling * @@ -23,6 +23,12 @@ * * * $Log: widget_text.h,v $ + * Revision 1.3 2004/03/06 20:31:16 reinelt + * Complete rewrite of the evaluator to get rid of the code + * from mark Morley (because of license issues). + * The new Evaluator does a pre-compile of expressions, and + * stores them in trees. Therefore it should be reasonable faster... + * * Revision 1.2 2004/01/15 07:47:03 reinelt * debian/ postinst and watch added (did CVS forget about them?) * evaluator: conditional expressions (a?b:c) added @@ -44,10 +50,13 @@ typedef enum { ALIGN_LEFT, ALIGN_CENTER, ALIGN_RIGHT, ALIGN_MARQUEE } ALIGN; typedef struct WIDGET_TEXT { char *prefix; // expression for label on the left side + void *pretree; // pre-compiled expression for label on the left side char *preval; // value for label on the left side char *postfix; // expression for label on the right side + void *posttree; // pre-compiled expression for label on the right side char *postval; // value for label on the right side char *expression; // expression that delivers the value + void *tree; // pre-compiled expression that delivers the value char *value; // evaluated value from expression char *buffer; // string with 'width+1' bytes allocated int width; // field width -- cgit v1.2.3