mirror of
https://github.com/aljazceru/Android-nRF-Toolbox.git
synced 2025-12-23 09:24:23 +01:00
Update UART screen
This commit is contained in:
@@ -54,7 +54,6 @@ import no.nordicsemi.android.ui.view.SectionTitle
|
|||||||
@Composable
|
@Composable
|
||||||
internal fun ContentView(state: PRXData, onEvent: (PRXScreenViewEvent) -> Unit) {
|
internal fun ContentView(state: PRXData, onEvent: (PRXScreenViewEvent) -> Unit) {
|
||||||
Column(
|
Column(
|
||||||
modifier = Modifier.padding(16.dp),
|
|
||||||
horizontalAlignment = Alignment.CenterHorizontally
|
horizontalAlignment = Alignment.CenterHorizontally
|
||||||
) {
|
) {
|
||||||
SettingsSection(state, onEvent)
|
SettingsSection(state, onEvent)
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ package no.nordicsemi.android.rscs.view
|
|||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.Spacer
|
import androidx.compose.foundation.layout.Spacer
|
||||||
import androidx.compose.foundation.layout.height
|
import androidx.compose.foundation.layout.height
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.material3.Button
|
import androidx.compose.material3.Button
|
||||||
import androidx.compose.material3.Text
|
import androidx.compose.material3.Text
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
@@ -51,7 +50,6 @@ import no.nordicsemi.android.ui.view.BatteryLevelView
|
|||||||
internal fun RSCSContentView(state: RSCSData, onEvent: (RSCScreenViewEvent) -> Unit) {
|
internal fun RSCSContentView(state: RSCSData, onEvent: (RSCScreenViewEvent) -> Unit) {
|
||||||
Column(
|
Column(
|
||||||
horizontalAlignment = Alignment.CenterHorizontally,
|
horizontalAlignment = Alignment.CenterHorizontally,
|
||||||
modifier = Modifier.padding(16.dp)
|
|
||||||
) {
|
) {
|
||||||
SensorsReadingView(state = state)
|
SensorsReadingView(state = state)
|
||||||
|
|
||||||
|
|||||||
@@ -42,11 +42,12 @@ import androidx.compose.ui.unit.dp
|
|||||||
import no.nordicsemi.android.rscs.R
|
import no.nordicsemi.android.rscs.R
|
||||||
import no.nordicsemi.android.rscs.data.RSCSData
|
import no.nordicsemi.android.rscs.data.RSCSData
|
||||||
import no.nordicsemi.android.ui.view.KeyValueField
|
import no.nordicsemi.android.ui.view.KeyValueField
|
||||||
|
import no.nordicsemi.android.ui.view.ScreenSection
|
||||||
import no.nordicsemi.android.ui.view.SectionTitle
|
import no.nordicsemi.android.ui.view.SectionTitle
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
internal fun SensorsReadingView(state: RSCSData) {
|
internal fun SensorsReadingView(state: RSCSData) {
|
||||||
OutlinedCard {
|
ScreenSection {
|
||||||
SectionTitle(resId = R.drawable.ic_records, title = "Records")
|
SectionTitle(resId = R.drawable.ic_records, title = "Records")
|
||||||
|
|
||||||
Spacer(modifier = Modifier.height(16.dp))
|
Spacer(modifier = Modifier.height(16.dp))
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ import androidx.compose.foundation.layout.Row
|
|||||||
import androidx.compose.foundation.layout.Spacer
|
import androidx.compose.foundation.layout.Spacer
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.layout.height
|
import androidx.compose.foundation.layout.height
|
||||||
|
import androidx.compose.foundation.layout.heightIn
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.layout.size
|
import androidx.compose.foundation.layout.size
|
||||||
import androidx.compose.foundation.rememberScrollState
|
import androidx.compose.foundation.rememberScrollState
|
||||||
@@ -86,6 +87,7 @@ internal fun MacroSection(viewState: UARTViewState, onEvent: (UARTViewEvent) ->
|
|||||||
.fillMaxSize()
|
.fillMaxSize()
|
||||||
.verticalScroll(rememberScrollState())
|
.verticalScroll(rememberScrollState())
|
||||||
.padding(16.dp)
|
.padding(16.dp)
|
||||||
|
.heightIn(min = 400.dp)
|
||||||
) {
|
) {
|
||||||
ScreenSection {
|
ScreenSection {
|
||||||
Column(
|
Column(
|
||||||
|
|||||||
@@ -31,18 +31,19 @@
|
|||||||
|
|
||||||
package no.nordicsemi.android.uart.view
|
package no.nordicsemi.android.uart.view
|
||||||
|
|
||||||
|
import androidx.compose.foundation.layout.Box
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.Spacer
|
import androidx.compose.foundation.layout.Spacer
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.layout.fillMaxWidth
|
import androidx.compose.foundation.layout.fillMaxWidth
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.layout.size
|
import androidx.compose.foundation.layout.size
|
||||||
import androidx.compose.material3.Card
|
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import no.nordicsemi.android.uart.data.UARTData
|
import no.nordicsemi.android.uart.data.UARTData
|
||||||
|
import no.nordicsemi.android.ui.view.ScreenSection
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
internal fun UARTContentView(
|
internal fun UARTContentView(
|
||||||
@@ -56,18 +57,13 @@ internal fun UARTContentView(
|
|||||||
.fillMaxSize()
|
.fillMaxSize()
|
||||||
) {
|
) {
|
||||||
|
|
||||||
Card(
|
Box(modifier = Modifier.weight(1f)) {
|
||||||
modifier = Modifier
|
ScreenSection {
|
||||||
.weight(1f)
|
Column(modifier = Modifier.fillMaxWidth()) {
|
||||||
) {
|
|
||||||
Column(
|
|
||||||
modifier = Modifier
|
|
||||||
.fillMaxWidth()
|
|
||||||
.padding(start = 16.dp, top = 16.dp, end = 16.dp)
|
|
||||||
) {
|
|
||||||
OutputSection(state.displayMessages, onEvent)
|
OutputSection(state.displayMessages, onEvent)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Spacer(modifier = Modifier.size(16.dp))
|
Spacer(modifier = Modifier.size(16.dp))
|
||||||
|
|
||||||
|
|||||||
@@ -32,6 +32,8 @@
|
|||||||
package no.nordicsemi.android.uart.view
|
package no.nordicsemi.android.uart.view
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
|
import androidx.compose.foundation.layout.PaddingValues
|
||||||
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.rememberScrollState
|
import androidx.compose.foundation.rememberScrollState
|
||||||
import androidx.compose.foundation.verticalScroll
|
import androidx.compose.foundation.verticalScroll
|
||||||
@@ -39,6 +41,7 @@ import androidx.compose.material3.ExperimentalMaterial3Api
|
|||||||
import androidx.compose.material3.Scaffold
|
import androidx.compose.material3.Scaffold
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.collectAsState
|
import androidx.compose.runtime.collectAsState
|
||||||
|
import androidx.compose.runtime.remember
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
@@ -77,10 +80,7 @@ fun UARTScreen() {
|
|||||||
topBar = { AppBar(state, navigateUp) { viewModel.onEvent(it) } }
|
topBar = { AppBar(state, navigateUp) { viewModel.onEvent(it) } }
|
||||||
) {
|
) {
|
||||||
Column(
|
Column(
|
||||||
modifier = Modifier
|
modifier = Modifier.padding(it)
|
||||||
.padding(it)
|
|
||||||
.padding(16.dp)
|
|
||||||
.verticalScroll(rememberScrollState())
|
|
||||||
) {
|
) {
|
||||||
when (state.uartManagerState) {
|
when (state.uartManagerState) {
|
||||||
NoDeviceState -> DeviceConnectingView()
|
NoDeviceState -> DeviceConnectingView()
|
||||||
@@ -116,17 +116,23 @@ private fun AppBar(state: UARTViewState, navigateUp: () -> Unit, onEvent: (UARTV
|
|||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
private fun SuccessScreen(data: UARTData, state: UARTViewState, viewModel: UARTViewModel) {
|
private fun SuccessScreen(data: UARTData, state: UARTViewState, viewModel: UARTViewModel) {
|
||||||
val viewEntity = PagerViewEntity(
|
val input = stringResource(id = R.string.uart_input)
|
||||||
|
val macros = stringResource(id = R.string.uart_macros)
|
||||||
|
val viewEntity = remember { PagerViewEntity(
|
||||||
listOf(
|
listOf(
|
||||||
PagerViewItem(stringResource(id = R.string.uart_input)) {
|
PagerViewItem(input) {
|
||||||
UARTContentView(data) { viewModel.onEvent(it) }
|
UARTContentView(data) { viewModel.onEvent(it) }
|
||||||
},
|
},
|
||||||
PagerViewItem(stringResource(id = R.string.uart_macros)) {
|
PagerViewItem(macros) {
|
||||||
MacroSection(state) { viewModel.onEvent(it) }
|
MacroSection(state) { viewModel.onEvent(it) }
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
) }
|
||||||
|
PagerView(
|
||||||
|
viewEntity = viewEntity,
|
||||||
|
modifier = Modifier.fillMaxSize(),
|
||||||
|
itemSpacing = 16.dp
|
||||||
)
|
)
|
||||||
PagerView(viewEntity)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|||||||
Reference in New Issue
Block a user