OSDN Git Service

overwriteDrawerを追加。
authorMRSa <mrsa@myad.jp>
Thu, 4 Nov 2021 13:27:55 +0000 (22:27 +0900)
committerMRSa <mrsa@myad.jp>
Thu, 4 Nov 2021 13:27:55 +0000 (22:27 +0900)
.idea/deploymentTargetDropDown.xml [deleted file]
app/build.gradle
app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/console/ConsolePanelControl.kt
app/src/main/java/jp/osdn/gokigen/gokigenassets/liveview/ILiveView.kt
app/src/main/java/jp/osdn/gokigen/gokigenassets/liveview/LiveImageView.kt

diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
deleted file mode 100644 (file)
index 0027920..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="deploymentTargetDropDown">
-    <runningDeviceTargetSelectedWithDropDown>
-      <Target>
-        <type value="RUNNING_DEVICE_TARGET" />
-        <deviceKey>
-          <Key>
-            <type value="SERIAL_NUMBER" />
-            <value value="3e50111c1220" />
-          </Key>
-        </deviceKey>
-      </Target>
-    </runningDeviceTargetSelectedWithDropDown>
-    <timeTargetWasSelectedWithDropDown value="2021-10-23T14:07:36.554401800Z" />
-  </component>
-</project>
\ No newline at end of file
index 1104cba..e1d9677 100644 (file)
@@ -33,7 +33,7 @@ android {
 dependencies {
     implementation fileTree(dir: "libs", include: ["*.jar"])
     implementation 'androidx.exifinterface:exifinterface:1.3.3'
-    implementation "androidx.core:core-ktx:1.6.0"
+    implementation "androidx.core:core-ktx:1.7.0"
     implementation 'androidx.appcompat:appcompat:1.3.1'
     implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
     implementation 'androidx.preference:preference-ktx:1.1.1'
index ab59644..542f250 100644 (file)
@@ -155,7 +155,7 @@ class ConsolePanelControl (private val context: AppCompatActivity, private val v
         try
         {
             this.refresher = refresher
-            imageView.setAnotherDrawer(this)
+            imageView.setAnotherDrawer(this, null)
             startConsoleRefresh()
         }
         catch (e : Exception)
index 6896235..6ea3b73 100644 (file)
@@ -6,7 +6,7 @@ import jp.osdn.gokigen.gokigenassets.liveview.message.IMessageDrawer
 interface ILiveView
 {
     fun setImageProvider(provider : IImageProvider)
-    fun setAnotherDrawer(drawer : IAnotherDrawer?)
+    fun setAnotherDrawer(drawer : IAnotherDrawer?, drawer2 : IAnotherDrawer?)
     fun updateImageRotation(degrees : Int)
     fun getMessageDrawer() : IMessageDrawer
     fun invalidate()
index bc4ae56..db9e59d 100644 (file)
@@ -51,6 +51,7 @@ class LiveImageView : View, ILiveView, ILiveViewRefresher, IShowGridFrame, OnSee
     private var focusFrameHideTimer: Timer? = null
     private var isRotationImage = false
     private var anotherDrawer : IAnotherDrawer? = null
+    private var overwriteDrawer : IAnotherDrawer? = null
 
     constructor(context: Context) : super(context)
     {
@@ -102,10 +103,11 @@ class LiveImageView : View, ILiveView, ILiveViewRefresher, IShowGridFrame, OnSee
         this.imageProvider = provider
     }
 
-    override fun setAnotherDrawer(drawer: IAnotherDrawer?)
+    override fun setAnotherDrawer(drawer: IAnotherDrawer?, drawer2: IAnotherDrawer?)
     {
         Log.v(TAG, " setAnotherDrawer() ")
         this.anotherDrawer = drawer
+        this.overwriteDrawer = drawer2
     }
 
     override fun updateImageRotation(degrees: Int)
@@ -144,6 +146,13 @@ class LiveImageView : View, ILiveView, ILiveViewRefresher, IShowGridFrame, OnSee
         this.drawFocusFrame(canvas,imageRectF.width(), imageRectF.height())
         informationDrawer.drawInformationMessages(canvas, imageRectF)
         informationDrawer.drawLevelGauge(canvas, imageRotationDegrees)
+
+        if (overwriteDrawer != null)
+        {
+            // 画面の上にデータを載せる場合...
+            overwriteDrawer?.onDraw(canvas)
+            return
+        }
     }
 
     override fun showGridFrame(isShowGrid: Boolean, color : Int)