Move SSD group save statuses to typed Kotlin
ober
3f6f222ac0801be1b3c97afafaeea5c78948eead
--- a/templates/ssd-review.ss +++ b/templates/ssd-review.ss @@ -3730,6 +3730,10 @@ manualGroupLabel manualCellCount editedGroupCount areaSelectionStatus detectedIdsCountText detectedBoxesTitle detectedBoxesMessage + approveSavingStatus approveSavedStatus + approveCountSavingStatus approveCountSavedStatus + appendSavingStatus appendSavedStatus + deleteSavingStatus deleteSavedStatus clampPageIndex shiftPageIndex displayGroupCanvasLabel dropdownHeight dialogPageNumber nullableLowercaseOrEmpty selectModeStatus selectionResultStatus detectStartStatus @@ -3907,6 +3911,52 @@ (if (> detectedCount (int32 0)) (detectedBoxesTitle detectedCount) "No detected boxes; enter manual count")) + (def (groupCountSuffix (count : Int32)) : String + (string-append + " (" + (string-append + (int32->string count) + " boxes)"))) + (def (approveSavingStatus (group : SsdGroup)) : String + (string-append + "Approved " + (string-append (groupDisplayLabel group) "; saving..."))) + (def (approveSavedStatus (group : SsdGroup)) : String + (string-append + "Approved and saved " + (groupDisplayLabel group))) + (def (approveCountSavingStatus (group : SsdGroup) (count : Int32)) : String + (string-append + "Approved " + (string-append + (groupDisplayLabel group) + (string-append (groupCountSuffix count) "; saving...")))) + (def (approveCountSavedStatus (group : SsdGroup) (count : Int32)) : String + (string-append + "Approved and saved " + (string-append (groupDisplayLabel group) (groupCountSuffix count)))) + (def (appendSavingStatus (group : SsdGroup) (added : Int32)) : String + (string-append + "Appended " + (string-append + (int32->string added) + (string-append + " boxes to " + (string-append (groupDisplayLabel group) "; saving..."))))) + (def (appendSavedStatus (group : SsdGroup)) : String + (string-append + "Appended and saved " + (string-append + (groupDisplayLabel group) + (groupCountSuffix (SsdGroup-count group))))) + (def (deleteSavingStatus (group : SsdGroup)) : String + (string-append + "Deleted " + (string-append (groupDisplayLabel group) "; saving..."))) + (def (deleteSavedStatus (group : SsdGroup)) : String + (string-append + "Deleted and saved " + (groupDisplayLabel group))) (def (dropdownHeight (screenHeight : Int32)) : Int32 (let ((third (/ screenHeight (int32 3)))) (if (> third (int32 620)) @@ -5425,8 +5475,8 @@ " reviewView.invalidate()" " saveSessionAsync(" " session," - " \"Approved ${groupDisplayLabel(group)}; saving...\"," - " \"Approved and saved ${groupDisplayLabel(group)}\"" + " approveSavingStatus(group)," + " approveSavedStatus(group)" " )" " }" "" @@ -5795,8 +5845,8 @@ " reviewView.invalidate()" " saveSessionAsync(" " session," - " \"Approved ${groupDisplayLabel(group)} (${ids.size} boxes); saving...\"," - " \"Approved and saved ${groupDisplayLabel(group)} (${ids.size} boxes)\"" + " approveCountSavingStatus(group, ids.size)," + " approveCountSavedStatus(group, ids.size)" " )" " }" "" @@ -5820,8 +5870,8 @@ " reviewView.invalidate()" " saveSessionAsync(" " session," - " \"Appended $added boxes to ${groupDisplayLabel(group)}; saving...\"," - " \"Appended and saved ${groupDisplayLabel(group)} (${group.count} boxes)\"" + " appendSavingStatus(group, added)," + " appendSavedStatus(group)" " )" " }" "" @@ -5919,8 +5969,8 @@ " reviewView.invalidate()" " saveSessionAsync(" " session," - " \"Deleted ${groupDisplayLabel(group)}; saving...\"," - " \"Deleted and saved ${groupDisplayLabel(group)}\"" + " deleteSavingStatus(group)," + " deleteSavedStatus(group)" " )" " }" ""