Skip to content

Commit

Permalink
Revert "build test"
Browse files Browse the repository at this point in the history
This reverts commit ab47e7b.
  • Loading branch information
darrellcolehill committed May 22, 2024
1 parent ab47e7b commit 3f1cdf5
Show file tree
Hide file tree
Showing 5 changed files with 71 additions and 51 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,33 @@
*/
package org.wycliffeassociates.otter.common.data

import javafx.scene.paint.Color

const val WAV_COLOR_LIGHT = "#66768B"
const val WAV_BACKGROUND_COLOR_LIGHT = "#FFFFFF"
const val WAV_COLOR_DARK = "#808080"
const val WAV_BACKGROUND_COLOR_DARK = "#343434"

enum class ColorTheme(val titleKey: String, val styleClass: String = "") {
LIGHT("light", "light-theme"),
DARK("dark", "dark-theme"),
SYSTEM("system");
}

data class WaveformColors(val wavColor: Color, val backgroundColor: Color)

fun getWaveformColors(theme: ColorTheme): WaveformColors {
return when (theme) {
ColorTheme.LIGHT -> {
WaveformColors(Color.web(WAV_COLOR_LIGHT), Color.web(WAV_BACKGROUND_COLOR_LIGHT))
}

ColorTheme.DARK -> {
WaveformColors(Color.web(WAV_COLOR_DARK), Color.web(WAV_BACKGROUND_COLOR_DARK))
}

else -> {
WaveformColors(Color.web(WAV_COLOR_LIGHT), Color.web(WAV_BACKGROUND_COLOR_LIGHT))
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ import javafx.scene.image.PixelWriter
import javafx.scene.image.WritableImage
import javafx.scene.paint.Color
import org.wycliffeassociates.otter.common.data.ColorTheme
import org.wycliffeassociates.otter.common.data.getWaveformColors
import org.wycliffeassociates.otter.common.domain.narration.AudioScene
import tornadofx.c
import tornadofx.runLater
import java.nio.ByteBuffer

Expand All @@ -39,10 +39,7 @@ class NarrationWaveformRenderer(
val renderHeight: Int,
colorThemeObservable: Observable<ColorTheme>,
) {
private var backgroundColor: Color = c("#E5E8EB")
private var waveformColor: Color = c("#66768B")

// private var waveformColors = getWaveformColors(ColorTheme.SYSTEM)
private var waveformColors = getWaveformColors(ColorTheme.SYSTEM)
private val writableImage = WritableImage(renderWidth, renderHeight)
var pixelFormat: PixelFormat<ByteBuffer> = PixelFormat.getByteRgbInstance()
private val imageData = ByteArray(renderWidth * renderHeight * 3)
Expand All @@ -57,7 +54,7 @@ class NarrationWaveformRenderer(
}

fun updateWaveformColors(theme: ColorTheme) {
// waveformColors = getWaveformColors(theme)
waveformColors = getWaveformColors(theme)
}

fun draw(
Expand Down Expand Up @@ -121,9 +118,9 @@ class NarrationWaveformRenderer(
var i = 0
for (y in 0 until renderHeight) {
for (x in 0 until renderWidth) {
imageData[i] = (backgroundColor.red * 255).toInt().toByte()
imageData[i + 1] = (backgroundColor.green * 255).toInt().toByte()
imageData[i + 2] = (backgroundColor.blue * 255).toInt().toByte()
imageData[i] = (waveformColors.backgroundColor.red * 255).toInt().toByte()
imageData[i + 1] = (waveformColors.backgroundColor.green * 255).toInt().toByte()
imageData[i + 2] = (waveformColors.backgroundColor.blue * 255).toInt().toByte()
i += 3
}
}
Expand All @@ -138,9 +135,9 @@ class NarrationWaveformRenderer(
val y2 = scaleAmplitude(buffer[x * 2 + 1].toDouble(), canvasHeight)

for (y in minOf(y1.toInt(), y2.toInt())..maxOf(y1.toInt(), y2.toInt())) {
imageData[(x + y * renderWidth) * 3] = (waveformColor.red * 255).toInt().toByte()
imageData[(x + y * renderWidth) * 3 + 1] = (waveformColor.green * 255).toInt().toByte()
imageData[(x + y * renderWidth) * 3 + 2] = (waveformColor.blue * 255).toInt().toByte()
imageData[(x + y * renderWidth) * 3] = (waveformColors.wavColor.red * 255).toInt().toByte()
imageData[(x + y * renderWidth) * 3 + 1] = (waveformColors.wavColor.green * 255).toInt().toByte()
imageData[(x + y * renderWidth) * 3 + 2] = (waveformColors.wavColor.blue * 255).toInt().toByte()
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ import javafx.beans.property.SimpleIntegerProperty
import javafx.beans.property.SimpleObjectProperty
import javafx.beans.property.SimpleStringProperty
import javafx.scene.image.Image
import javafx.scene.paint.Color
import org.slf4j.LoggerFactory
import org.wycliffeassociates.otter.common.audio.AudioFileFormat
import org.wycliffeassociates.otter.common.audio.wav.IWaveFileCreator
Expand Down Expand Up @@ -526,18 +525,18 @@ class ChapterReviewViewModel : ViewModel(), IMarkerViewModel {
private fun createWaveformImages(audio: OratureAudioFile) {
imageWidthProperty.set(computeImageWidth(width, SECONDS_ON_SCREEN))

// val waveformColors = getWaveformColors(settingsViewModel.appColorMode.value)
//
// waveformColors?.let {
builder.cancel()
waveform = builder.buildAsync(
audio.reader(),
width = imageWidthProperty.value.toInt(),
height = height,
wavColor = Color.web("#999999"),
background = Color.web("#999999")
)
// }
val waveformColors = getWaveformColors(settingsViewModel.appColorMode.value)

waveformColors?.let {
builder.cancel()
waveform = builder.buildAsync(
audio.reader(),
width = imageWidthProperty.value.toInt(),
height = height,
wavColor = waveformColors.wavColor,
background = waveformColors.backgroundColor
)
}
}

private fun onUndoableAction() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ import javafx.beans.property.SimpleDoubleProperty
import javafx.beans.property.SimpleIntegerProperty
import javafx.beans.property.SimpleObjectProperty
import javafx.scene.image.Image
import javafx.scene.paint.Color
import org.wycliffeassociates.otter.common.data.audio.ChunkMarker
import org.wycliffeassociates.otter.common.data.getWaveformColors
import javax.inject.Inject
Expand Down Expand Up @@ -273,18 +272,18 @@ class ChunkingViewModel : ViewModel(), IMarkerViewModel {
private fun createWaveformImages(audio: OratureAudioFile) {
imageWidthProperty.set(computeImageWidth(width, SECONDS_ON_SCREEN))

// val waveformColors = getWaveformColors(settingsViewModel.appColorMode.value)
//
// waveformColors?.let {
builder.cancel()
waveform = builder.buildAsync(
audio.reader(),
width = imageWidthProperty.value.toInt(),
height = height,
wavColor = Color.web("#999999"),
background = Color.web("#999999")
)
// }
val waveformColors = getWaveformColors(settingsViewModel.appColorMode.value)

waveformColors?.let {
builder.cancel()
waveform = builder.buildAsync(
audio.reader(),
width = imageWidthProperty.value.toInt(),
height = height,
wavColor = waveformColors.wavColor,
background = waveformColors.backgroundColor
)
}
}

private fun onUndoableAction() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ import javafx.beans.property.SimpleDoubleProperty
import javafx.beans.property.SimpleIntegerProperty
import javafx.beans.property.SimpleObjectProperty
import javafx.scene.image.Image
import javafx.scene.paint.Color
import org.wycliffeassociates.otter.common.data.audio.VerseMarker
import org.wycliffeassociates.otter.common.data.getWaveformColors
import org.wycliffeassociates.otter.common.device.IAudioPlayer
import org.wycliffeassociates.otter.common.domain.audio.OratureAudioFile
import org.wycliffeassociates.otter.jvm.controls.controllers.AudioPlayerController
Expand Down Expand Up @@ -154,18 +154,18 @@ class ConsumeViewModel : ViewModel(), IMarkerViewModel {
private fun createWaveformImages(audio: OratureAudioFile) {
imageWidthProperty.set(computeImageWidth(width, SECONDS_ON_SCREEN))

// val waveformColors = getWaveformColors(settingsViewModel.appColorMode.value)
//
// waveformColors?.let {
builder.cancel()
waveform = builder.buildAsync(
audio.reader(),
width = imageWidthProperty.value.toInt(),
height = height,
wavColor = Color.web("#999999"),
background = Color.web("#999999")
)
// }
val waveformColors = getWaveformColors(settingsViewModel.appColorMode.value)

waveformColors?.let {
builder.cancel()
waveform = builder.buildAsync(
audio.reader(),
width = imageWidthProperty.value.toInt(),
height = height,
wavColor = waveformColors.wavColor,
background = waveformColors.backgroundColor
)
}
}

fun cleanup() {
Expand Down

0 comments on commit 3f1cdf5

Please sign in to comment.