From 9002e6f23ecffff97e2c7e4b00077ef335285bae Mon Sep 17 00:00:00 2001
From: Johann Kandani <13521138@std.stei.itb.ac.id>
Date: Sat, 4 May 2024 06:34:14 +0000
Subject: [PATCH] refactoring: konten omr dipindah ke json config

---
 app/src/main/assets/omr_config.json           |  5 ++++
 .../data/models/OMRBaseConfiguration.kt       |  2 ++
 .../data/view_models/ImageDataViewModel.kt    | 23 +++++++++----------
 3 files changed, 18 insertions(+), 12 deletions(-)

diff --git a/app/src/main/assets/omr_config.json b/app/src/main/assets/omr_config.json
index 06a7714..bc4515a 100644
--- a/app/src/main/assets/omr_config.json
+++ b/app/src/main/assets/omr_config.json
@@ -1,6 +1,11 @@
 {
   "omrConfigs": {
     "102": {
+      "contents": {
+        "FIRST": "Anis",
+        "SECOND": "Bowo",
+        "THIRD": "Janggar"
+      },
       "contourOMRHelperConfig": {
         "darkIntensityThreshold": 200,
         "darkPercentageThreshold": 0.9,
diff --git a/app/src/main/java/com/k2_9/omrekap/data/models/OMRBaseConfiguration.kt b/app/src/main/java/com/k2_9/omrekap/data/models/OMRBaseConfiguration.kt
index c985d83..f5cc6f3 100644
--- a/app/src/main/java/com/k2_9/omrekap/data/models/OMRBaseConfiguration.kt
+++ b/app/src/main/java/com/k2_9/omrekap/data/models/OMRBaseConfiguration.kt
@@ -1,6 +1,7 @@
 package com.k2_9.omrekap.data.models
 
 import com.k2_9.omrekap.data.configs.omr.ContourOMRHelperConfig
+import com.k2_9.omrekap.data.configs.omr.OMRSection
 import com.k2_9.omrekap.data.configs.omr.TemplateMatchingOMRHelperConfig
 
 /**
@@ -11,6 +12,7 @@ data class OMRBaseConfiguration(
 )
 
 data class OMRConfigurationParameter(
+	val contents: Map<OMRSection, String>,
 	val contourOMRHelperConfig: ContourOMRHelperConfig,
 	val templateMatchingOMRHelperConfig: TemplateMatchingOMRHelperConfig,
 )
diff --git a/app/src/main/java/com/k2_9/omrekap/data/view_models/ImageDataViewModel.kt b/app/src/main/java/com/k2_9/omrekap/data/view_models/ImageDataViewModel.kt
index 45b01a0..3f3696f 100644
--- a/app/src/main/java/com/k2_9/omrekap/data/view_models/ImageDataViewModel.kt
+++ b/app/src/main/java/com/k2_9/omrekap/data/view_models/ImageDataViewModel.kt
@@ -62,7 +62,8 @@ class ImageDataViewModel : ViewModel() {
 			loadedConfig.templateMatchingOMRHelperConfig.setTemplate(circleTemplateLoader)
 
 			val contourOMRHelper = ContourOMRHelper(loadedConfig.contourOMRHelperConfig)
-			val templateMatchingOMRHelper = TemplateMatchingOMRHelper(loadedConfig.templateMatchingOMRHelperConfig)
+			val templateMatchingOMRHelper =
+				TemplateMatchingOMRHelper(loadedConfig.templateMatchingOMRHelperConfig)
 
 			val result: MutableMap<OMRSection, Int?> = mutableMapOf()
 
@@ -78,21 +79,19 @@ class ImageDataViewModel : ViewModel() {
 				}
 			}
 
-			// TODO: move this to april tag
-			val customMap = mutableMapOf<OMRSection, String>()
-
-			customMap[OMRSection.FIRST] = "Anis"
-			customMap[OMRSection.SECOND] = "Bowo"
-			customMap[OMRSection.THIRD] = "Janggar"
-
+			val pageContent = loadedConfig.contents
 			val stringKeyResult = mutableMapOf<String, Int?>()
 
 			result.let {
 				for ((section, value) in it) {
-					stringKeyResult[customMap[section]!!] = value
-
-					annotatedImage = ImageAnnotationHelper.annotateOMR(annotatedImage, contourOMRHelper.getSectionPosition(section), value)
-					Log.d("Result", "${customMap[section]}: $value")
+					stringKeyResult[pageContent[section]!!] = value
+
+					annotatedImage = ImageAnnotationHelper.annotateOMR(
+						annotatedImage,
+						contourOMRHelper.getSectionPosition(section),
+						value
+					)
+					Log.d("Result", "${pageContent[section]}: $value")
 				}
 			}
 
-- 
GitLab