| 178 |
|
break; |
| 179 |
|
case 'e': /* exposure comp. */ |
| 180 |
|
i++; |
| 181 |
< |
if (!strcmp(argv[i], "auto")) { |
| 181 |
> |
if (argv[i][0] == 'a') { |
| 182 |
|
tmflags = TM_F_CAMERA; |
| 183 |
|
break; |
| 184 |
|
} |
| 185 |
< |
if (!strcmp(argv[i], "human")) { |
| 185 |
> |
if (argv[i][0] == 'h') { |
| 186 |
|
tmflags = TM_F_HUMAN; |
| 187 |
|
break; |
| 188 |
|
} |
| 733 |
|
return(0); |
| 734 |
|
case 't': /* trace */ |
| 735 |
|
return(traceray(ekey->x, ekey->y)); |
| 736 |
+ |
case 'a': /* auto exposure */ |
| 737 |
+ |
if (tmflags == TM_F_CAMERA) |
| 738 |
+ |
return(0); |
| 739 |
+ |
tmflags = TM_F_CAMERA; |
| 740 |
+ |
strcpy(buf, "auto exposure..."); |
| 741 |
+ |
goto remap; |
| 742 |
+ |
case 'h': /* human response */ |
| 743 |
+ |
if (tmflags == TM_F_HUMAN) |
| 744 |
+ |
return(0); |
| 745 |
+ |
tmflags = TM_F_HUMAN; |
| 746 |
+ |
strcpy(buf, "human exposure..."); |
| 747 |
+ |
goto remap; |
| 748 |
|
case '=': /* adjust exposure */ |
| 749 |
|
case '@': /* adaptation level */ |
| 750 |
|
if (avgbox(cval) == -1) |
| 770 |
|
} |
| 771 |
|
scale += n; |
| 772 |
|
sprintf(buf, "%+d", scale); |
| 773 |
+ |
remap: |
| 774 |
|
XDrawImageString(thedisplay, wind, ourgc, |
| 775 |
|
box.xmin, box.ymin+box.ysiz, buf, strlen(buf)); |
| 776 |
|
XFlush(thedisplay); |