Move SSD page dialog checks to typed Kotlin
ober
fccad6143637953d2c5559d94df8597d87a7523d
--- a/templates/ssd-review.ss +++ b/templates/ssd-review.ss @@ -4382,6 +4382,7 @@ requestIsSyncTree requestIsReadStorage clampPageIndex shiftPageIndex displayGroupCanvasLabel dropdownHeight dialogPageNumber dialogPageNumberText + nullablePageNumberPresent nullablePageNumberOrOne pageNumberText sessionIdFromUuid nullableLowercaseOrEmpty selectModeStatus selectionResultStatus detectStartStatus detectorSourceWithTruth detectionTruthNote detectionOcrNote @@ -5185,6 +5186,12 @@ (def (dialogPageNumberText (text : String) (pageCount : Int32)) : (Nullable Int32) (dialogPageNumber (string->int32-or-null text) pageCount)) + (def (nullablePageNumberPresent (page : (Nullable Int32))) : Bool + (not (nullable-null? page))) + (def (nullablePageNumberOrOne (page : (Nullable Int32))) : Int32 + (if (nullable-null? page) + (int32 1) + (nullable-get page))) (def (pageNumberText (pageIndex : Int32)) : String (int32->string (+ pageIndex (int32 1)))) (def (sessionIdFromUuid (uuid : String)) : String @@ -6589,8 +6596,9 @@ " .setView(input)" " .setNegativeButton(\"Cancel\", null)" " .setPositiveButton(\"Load\") { _, _ ->" - " val page = dialogPageNumberText(input.text.toString(), pageCount) ?: return@setPositiveButton" - " pageIndex = page - 1" + " val page = dialogPageNumberText(input.text.toString(), pageCount)" + " if (!nullablePageNumberPresent(page)) return@setPositiveButton" + " pageIndex = nullablePageNumberOrOne(page) - 1" " renderCurrentPage()" " }" " .show()"