static void gui_print_osd_dof_string_dist(const char * title, int value, short use_good_color, short is_hyp) { strcpy(osd_buf, title); int i=strlen(osd_buf); if (i<8) { draw_osd_string(conf.values_pos, 0, m, osd_buf, conf.osd_color, conf.values_scale); if (is_hyp) { sprintf_dist_hyp(osd_buf, value); } else { sprintf_dist(osd_buf, value); } sprintf(osd_buf+strlen(osd_buf), "%9s", ""); osd_buf[9-i]=0; draw_osd_string(conf.values_pos, i*FONT_WIDTH, m, osd_buf, use_good_color?((conf.osd_color & 0xff00) | COLOR_HISTO_G):conf.osd_color, conf.values_scale); } else { osd_buf[9]=0; draw_osd_string(conf.values_pos, 0, m, osd_buf, conf.osd_color,conf.values_scale); } m+=FONT_HEIGHT; }
static void gui_print_osd_dof_string_dist(const char * title, int value, short use_good_color, short is_hyp) { strcpy(osd_buf, title); int i=strlen(osd_buf); twoColors col = user_color(conf.osd_color); twoColors valid_col = MAKE_COLOR(BG_COLOR(col), COLOR_GREEN); if (i<8) { draw_osd_string(conf.values_pos, 0, m, osd_buf, col, conf.values_scale); if (is_hyp) { sprintf_dist_hyp(osd_buf, value); } else { sprintf_dist(osd_buf, value); } sprintf(osd_buf+strlen(osd_buf), "%9s", ""); osd_buf[9-i]=0; draw_osd_string(conf.values_pos, i*FONT_WIDTH, m, osd_buf, use_good_color?valid_col:col, conf.values_scale); } else { osd_buf[9]=0; draw_osd_string(conf.values_pos, 0, m, osd_buf, col,conf.values_scale); } m+=FONT_HEIGHT; }
void gui_osd_draw_dof(int is_osd_edit) { if (conf.show_dof != DOF_DONT_SHOW) shooting_update_dof_values(); if (is_osd_edit || (camera_info.state.mode_rec_or_review && ((conf.show_dof == DOF_SHOW_IN_DOF) || (conf.show_dof == DOF_SHOW_IN_DOF_EX)) && (((camera_info.state.is_shutter_half_press || camera_info.state.state_kbd_script_run || shooting_get_common_focus_mode()) && (camera_info.state.mode_photo || camera_info.state.mode_shooting==MODE_STITCH)) || ((camera_info.state.mode_video || is_video_recording()) && conf.show_values_in_video)))) { twoColors col = user_color(conf.osd_color); twoColors valid_col = MAKE_COLOR(BG_COLOR(col), COLOR_GREEN); int i = 8, j; short f_ex = (conf.show_dof==DOF_SHOW_IN_DOF_EX); draw_osd_string(conf.dof_pos, 0, 0, "S/NL/FL:", col, conf.dof_scale); sprintf_dist(osd_buf, camera_info.dof_values.subject_distance); j = strlen(osd_buf); draw_osd_string(conf.dof_pos, i*FONT_WIDTH, 0, osd_buf, (f_ex && (camera_info.dof_values.distance_valid || shooting_get_focus_mode()))?valid_col:col, conf.dof_scale); i = i+j; draw_osd_string(conf.dof_pos, i*FONT_WIDTH, 0, "/", col, conf.dof_scale); sprintf_dist(osd_buf, camera_info.dof_values.near_limit); j = strlen(osd_buf); draw_osd_string(conf.dof_pos, (++i)*FONT_WIDTH, 0, osd_buf, (f_ex && camera_info.dof_values.distance_valid)?valid_col:col, conf.dof_scale); i = i+j; draw_osd_string(conf.dof_pos, i*FONT_WIDTH, 0, "/", col, conf.dof_scale); sprintf_dist(osd_buf, camera_info.dof_values.far_limit); draw_osd_string(conf.dof_pos, (++i)*FONT_WIDTH, 0, osd_buf, (f_ex && camera_info.dof_values.distance_valid)?valid_col:col, conf.dof_scale); i = 8; draw_osd_string(conf.dof_pos, 0, FONT_HEIGHT, "DOF/HYP:", col, conf.dof_scale); sprintf_dist(osd_buf, camera_info.dof_values.depth_of_field); j = strlen(osd_buf); draw_osd_string(conf.dof_pos, i*FONT_WIDTH, FONT_HEIGHT, osd_buf, (f_ex && camera_info.dof_values.distance_valid)?valid_col:col, conf.dof_scale); i = i+j; draw_osd_string(conf.dof_pos, i*FONT_WIDTH, FONT_HEIGHT, "/", col, conf.dof_scale); sprintf_dist_hyp(osd_buf, camera_info.dof_values.hyperfocal_distance); draw_osd_string(conf.dof_pos, (++i)*FONT_WIDTH, FONT_HEIGHT, osd_buf, (f_ex && camera_info.dof_values.hyperfocal_valid)?valid_col:col, conf.dof_scale); } }