Changeset 1917


Ignore:
Timestamp:
06/16/12 22:06:02 (11 months ago)
Author:
philmoz
Message:

Merged revision(s) 1916 from trunk:
Update for script '@range' parameter option to support signed and unsigned ranges.

Location:
branches/release-1_0
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/release-1_0

    • Property svn:mergeinfo changed
      /trunkmerged: 1916
  • branches/release-1_0/core/gui.c

    r1905 r1917  
    13831383            if (script_range_values[n] != 0) 
    13841384            { 
    1385                 if (script_range_values[n] == MENU_MINMAX(0,1)) 
    1386                 { 
    1387                     script_submenu_items[p].type = MENUITEM_BOOL; 
    1388                 } 
    1389                 else 
    1390                 { 
    1391                     script_submenu_items[p].type |= MENUITEM_F_MINMAX; 
    1392                     script_submenu_items[p].arg = script_range_values[n]; 
    1393                 } 
     1385                script_submenu_items[p].type = script_range_types[n]; 
     1386                script_submenu_items[p].arg = script_range_values[n]; 
    13941387            } 
    13951388            else if (script_named_counts[n] != 0) 
  • branches/release-1_0/core/script.c

    r1905 r1917  
    105105 
    106106char script_params[SCRIPT_NUM_PARAMS][28];                  // Parameter title 
    107 int script_param_order[SCRIPT_NUM_PARAMS];                  // Ordered as_in_script list of variables ( [idx] = id_of_var ) 
     107short script_param_order[SCRIPT_NUM_PARAMS];                // Ordered as_in_script list of variables ( [idx] = id_of_var ) 
    108108                                                            // to display in same order in script 
    109109int script_range_values[SCRIPT_NUM_PARAMS];                 // Min/Max values for param validation 
     110short script_range_types[SCRIPT_NUM_PARAMS];                // Specifies if range values is signed (-9999-32767) or unsigned (0-65535) 
     111                                                            // Note: -9999 limit on negative values is due to current gui_menu code (and because menu only displays chars) 
    110112const char **script_named_values[SCRIPT_NUM_PARAMS];        // Array of list values for named parameters 
    111113int script_named_counts[SCRIPT_NUM_PARAMS];                 // Count of # of entries in each script_list_values array 
     
    211213        if (!update || script_params_update[n]) 
    212214        { 
    213             short min = strtol(ptr,NULL,0); 
     215            int min = strtol(ptr,NULL,0); 
    214216            ptr = skip_whitespace(skip_token(ptr)); 
    215             short max = strtol(ptr,NULL,0); 
     217            int max = strtol(ptr,NULL,0); 
    216218            script_range_values[n] = MENU_MINMAX(min,max); 
     219            if ((min == 0) && (max == 1)) 
     220                script_range_types[n] = MENUITEM_BOOL; 
     221            else if ((min >= 0) && (max >= 0))  
     222                script_range_types[n] = MENUITEM_INT|MENUITEM_F_MINMAX|MENUITEM_F_UNSIGNED; 
     223            else 
     224                script_range_types[n] = MENUITEM_INT|MENUITEM_F_MINMAX; 
    217225        } 
    218226    } // ??? else produce error message 
  • branches/release-1_0/include/script.h

    r1905 r1917  
    2121extern char script_params[SCRIPT_NUM_PARAMS][28]; 
    2222extern int script_range_values[SCRIPT_NUM_PARAMS]; 
    23 extern int script_param_order[SCRIPT_NUM_PARAMS]; 
     23extern short script_range_types[SCRIPT_NUM_PARAMS]; 
     24extern short script_param_order[SCRIPT_NUM_PARAMS]; 
    2425extern const char **script_named_values[SCRIPT_NUM_PARAMS]; 
    2526extern int script_named_counts[SCRIPT_NUM_PARAMS]; 
Note: See TracChangeset for help on using the changeset viewer.