void vibrate(final int vibratePattern);
+ void setEnabledOperation(boolean operation, boolean suppress);
}
// ライブビューの開始 & タッチ/ボタンの操作を可能にする
coordinator.startLiveView();
coordinator.setRecViewMode(false);
- listener.setEnableOperation(true);
+ listener.setEnableOperation(true, false);
setMessage(IShowInformation.AREA_C, Color.WHITE, "");
coordinator.updateStatusAll();
}
{
Log.v(TAG, "onCameraDisconnected()");
setMessage(IShowInformation.AREA_C, Color.YELLOW, getString(R.string.camera_disconnected));
- listener.setEnableOperation(false);
+ listener.setEnableOperation(false, false);
cameraDisconnectedHappened = true;
}
{
Log.v(TAG, "onCameraOccursException()");
setMessage(IShowInformation.AREA_C, Color.YELLOW, message);
- listener.setEnableOperation(false);
+ listener.setEnableOperation(false, false);
cameraDisconnectedHappened = true;
}
e.printStackTrace();
}
}
+
+ @Override
+ public void setEnabledOperation(boolean operation, boolean suppress)
+ {
+ if (listener != null)
+ {
+ listener.setEnableOperation(operation, suppress);
+ }
+ }
}
import android.graphics.PointF;
import android.graphics.Rect;
import android.graphics.RectF;
+import android.graphics.Typeface;
import android.media.ExifInterface;
import android.os.Looper;
import android.preference.PreferenceManager;
paint.setColor(messageHolder.getColor(ShowMessageHolder.MessageArea.CENTER));
paint.setTextSize(messageHolder.getSize(ShowMessageHolder.MessageArea.CENTER));
paint.setAntiAlias(true);
+ paint.setShadowLayer(5.0f, 3.0f, 3.0f, Color.BLACK); // これで文字に影をつけたい
Paint.FontMetrics fontMetrics = paint.getFontMetrics();
float cx = (canvas.getWidth() / 2.0f) - (paint.measureText(message) / 2.0f);
float cy = (canvas.getHeight() / 2.0f) - ((fontMetrics.ascent + fontMetrics.descent) / 2.0f);
* 操作の可否を設定する。
*
* @param operation true: 操作可能, false: 操作不可
- *
+ * @param suppress true: 操作不可, false: 接続操作実施 (操作不可時のコマンド受付)
*/
- public void setEnableOperation(boolean operation)
+ public void setEnableOperation(boolean operation, boolean suppress)
{
prohibitOperation = !operation;
+ suppressOperation = suppress;
}
/**
public void run()
{
isBracketingAction = true;
- updateMessage("INT");
+ updateMessage("BRACKET");
try
{
startBracket();
}
PointF afPoint = camera.getActualAutoFocusPoint();
+ statusDrawer.setEnabledOperation(false, true); // 画面のタッチ操作を禁止
for (int index = 0; index < bracketCount; index++)
{
// 撮影条件を更新する
{
e.printStackTrace();
}
+ statusDrawer.setEnabledOperation(true, false); // 画面のタッチ操作を有効化する
}
/**
try
{
// BKT表示(撮影枚数表示と待ち時間)を変える
- updateMessage("WAIT " + count + "s.");
+ updateMessage("WAIT " + count + "sec.");
Thread.sleep(1000);
}
catch (Exception e)
retryUpdateBracketingStatus = 0;
// 撮影枚数表示を変える
- updateMessage("INT " + (index + 1) + "/" + bracketCount);
+ updateMessage("BRACKET " + (index + 1) + "/" + bracketCount);
}
/**