1 package net.osdn.gokigen.cameratest.camtest;
3 import android.content.Context;
4 import android.graphics.Canvas;
5 import android.graphics.Color;
6 import android.graphics.Paint;
7 import android.util.AttributeSet;
8 import android.util.Log;
10 import androidx.appcompat.widget.AppCompatImageView;
12 import net.osdn.gokigen.cameratest.fuji.statuses.Properties;
13 import net.osdn.gokigen.cameratest.fuji.statuses.IFujiStatus;
15 public class InformationView extends AppCompatImageView
17 private final String TAG = toString();
18 private int focusPoint;
19 private int sd_remain_size;
20 private int shooting_mode;
21 private boolean focus_lock;
22 private int battery_level;
25 public InformationView(Context context) {
27 initComponent(context);
30 public InformationView(Context context, AttributeSet attrs) {
31 super(context, attrs);
32 initComponent(context);
35 public InformationView(Context context, AttributeSet attrs, int defStyleAttr) {
36 super(context, attrs, defStyleAttr);
37 initComponent(context);
40 private void initComponent(Context context) {
45 protected void onDraw(Canvas canvas)
51 private void drawCanvas(Canvas canvas)
54 canvas.drawARGB(255, 0, 0, 0);
57 int centerX = canvas.getWidth() / 2;
58 int centerY = canvas.getHeight() / 2;
60 Paint framePaint = new Paint();
61 framePaint.setStyle(Paint.Style.STROKE);
62 framePaint.setColor(Color.WHITE);
64 String message = "SD : " + sd_remain_size + " SHT : " + shooting_mode + " ISO : " + iso + " BATT: ";
65 if (battery_level < 0)
67 message = message + "???";
71 message = message + battery_level + "% ";
73 canvas.drawText(message, centerX, centerY - 50, framePaint);
77 message = "FOCUS : " + focusPoint;
80 message = message + " (LOCKED)";
82 canvas.drawText(message, centerX, centerY, framePaint);
92 public void drawInformation(IFujiStatus cameraStatus)
94 focusPoint = cameraStatus.getValue(Properties.FOCUS_POINT);
95 sd_remain_size = cameraStatus.getValue(Properties.SDCARD_REMAIN_SIZE);
96 shooting_mode = cameraStatus.getValue(Properties.SHOOTING_MODE);
97 focus_lock = cameraStatus.isFocusLocked();
98 battery_level = cameraStatus.getBatteryLevel();
99 iso = cameraStatus.getValue(Properties.ISO);