Changeset 531 for trunk/core/gui.c


Ignore:
Timestamp:
10/09/08 17:09:04 (5 years ago)
Author:
phyrephox
Message:
  • increased version number to reflect for latest changes from previous revisions

+ added zoom override. first installment allows you to set a specific zoom value (on s3is for example between 0 and 128, on a620 between 0 and 8) that will be set upon starting the cam in record mode. Extra Photo Operations -> Zoom Override. You can disable and enable it there (default: off), also you can set the startup behaviour (there isnt much working right now :D). In the future: Not only set the zoom steps (in accurate int) but maybe set it using mm & factor (much like the shutter override menu stuff to allow for easing setting using "mnemonics"). Also will implement ZOOM BRACKETING. could be done via script, but then again everything could be done via script ;) Also i am wondering if i should focus after zooming. Also the zoom override should work like this, that no matter what value of zoom you set using the zoom lever, before each pic is taken the zoom will be set to the value you specified in the menu (much like shutter & aperture override). Also maybe implement the feature so that it remembers the actual zoom value you set (via lever/button) before shutting off the cam - and restore it when you power it on again!?
This feature works a) as somehow a "C" (custom mode in which you can save a few settings that will be remembered even when you shut off the cam) mode for cameras that dont have it and b) for studio photogs or other situations where you need the zoom in a fixed value over a long period of time. Noticed a bug: when you use this feature to zet zoom upon startup, you cant zoom out using the zoomlever, unless you zoom out before - i guess it is because the camera thinks you are still in wide (zoom 0). i guess one can fix that, dunno how though (yet).

+ added czech language file

  • fixed russian lang file - pethead updated it in the wiki (there are a lot of outdated lang files in the wiki, come on people!)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/core/gui.c

    r524 r531  
    168168static const char* gui_bracket_type_enum(int change, int arg); 
    169169static const char* gui_av_override_enum(int change, int arg); 
     170static const char* gui_zoom_override_enum(int change, int arg); 
    170171static const char* gui_iso_override_koef_enum(int change, int arg); 
    171172static const char* gui_tv_override_koef_enum(int change, int arg); 
     
    502503          {0x74,LANG_MENU_OVERRIDE_ISO_VALUE,      MENUITEM_INT|MENUITEM_F_UNSIGNED|MENUITEM_F_MINMAX,  &conf.iso_override_value, MENU_MINMAX(0, 800)},  
    503504          {0x5f,LANG_MENU_OVERRIDE_ISO_KOEF,        MENUITEM_ENUM,    (int*)gui_iso_override_koef_enum}, 
     505    {0x5c,LANG_MENU_OVERRIDE_ZOOM,         MENUITEM_BOOL,    &conf.zoom_override}, 
     506    {0x5f,LANG_MENU_OVERRIDE_ZOOM_VALUE,          MENUITEM_ENUM,    (int*)gui_zoom_override_enum },    
     507           
     508          {0x5c,LANG_MENU_CLEAR_ZOOM_OVERRIDE_VALUES,    MENUITEM_BOOL,    (int*)&conf.clear_zoom_override}, 
     509 
    504510          {0x2c,LANG_MENU_BRACKET_IN_CONTINUOUS,           MENUITEM_SUBMENU, (int*)&bracketing_in_continuous_submenu },  
    505511          {0x2d,LANG_MENU_AUTOISO,                  MENUITEM_SUBMENU, (int*)&autoiso_submenu }, 
    506512      //{LANG_MENU_EXPOSURE,               MENUITEM_SUBMENU, (int*)&exposure_submenu }, 
    507513          {0x5b,LANG_MENU_CLEAR_OVERRIDE_VALUES,    MENUITEM_BOOL,    (int*)&conf.clear_override}, 
     514  
    508515      {0x5c,LANG_MENU_MISC_FAST_EV,         MENUITEM_BOOL,    &conf.fast_ev }, 
    509516      {0x5f,LANG_MENU_MISC_FAST_EV_STEP,    MENUITEM_ENUM,    (int*)gui_fast_ev_step }, 
     
    15491556} 
    15501557 
     1558const char* gui_zoom_override_enum(int change, int arg) { 
     1559    static char buf[3]; 
     1560    conf.zoom_override_value+=change; 
     1561    if (conf.zoom_override_value<0) conf.zoom_override_value=zoom_points-1; 
     1562    else if (conf.zoom_override_value>zoom_points-1) conf.zoom_override_value=0; 
     1563                sprintf(buf,"%i",conf.zoom_override_value); 
     1564                return buf;  
     1565} 
     1566 
    15511567const char* gui_user_menu_show_enum(int change, int arg) { 
    15521568    static const char* modes[]={ "Off", "On","On Direct", "Edit" }; 
     
    17761792    curve_load(conf.curve_file); // load curve upon init  
    17771793    drcurve_load("A/CHDK/SYSCURVES.CVF"); // load system L curves 
     1794                shooting_set_zoom(conf.zoom_override_value); 
    17781795} 
    17791796 
     
    18231840        if (gui_splash>(SPLASH_TIME-4)) { 
    18241841            gui_draw_splash(); 
    1825                 conf.show_osd = 0; 
     1842           //   conf.show_osd = 0; 
    18261843        } else if (gui_splash==1 && (mode_get()&MODE_MASK) == gui_splash_mode && (gui_mode==GUI_MODE_NONE || gui_mode==GUI_MODE_ALT)) { 
    18271844            draw_restore(); 
    1828             conf.show_osd = 1; 
     1845           // conf.show_osd = 1; //had to uncomment in order to fix a bug with disappearing osd... 
    18291846        } 
    18301847        --gui_splash; 
Note: See TracChangeset for help on using the changeset viewer.