refactor: better packaging
This commit is contained in:
parent
ee6c2f6519
commit
8534c3ebc5
4 changed files with 50 additions and 39 deletions
|
@ -5,7 +5,7 @@ import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.window.Window
|
import androidx.compose.ui.window.Window
|
||||||
import androidx.compose.ui.window.application
|
import androidx.compose.ui.window.application
|
||||||
import androidx.compose.ui.window.rememberWindowState
|
import androidx.compose.ui.window.rememberWindowState
|
||||||
import xyz.atnrch.wrench.components.filemanager.WrenchScaffold
|
import xyz.atnrch.wrench.components.WrenchScaffold
|
||||||
import xyz.atnrch.wrench.logger.Logger
|
import xyz.atnrch.wrench.logger.Logger
|
||||||
import javax.swing.UIManager
|
import javax.swing.UIManager
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
package xyz.atnrch.wrench.components
|
||||||
|
|
||||||
|
import androidx.compose.foundation.layout.Column
|
||||||
|
import androidx.compose.material.Tab
|
||||||
|
import androidx.compose.material.TabRow
|
||||||
|
import androidx.compose.material.Text
|
||||||
|
import androidx.compose.runtime.Composable
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
import androidx.compose.ui.window.WindowState
|
||||||
|
import xyz.atnrch.wrench.components.filemanager.FileManagerDisplay
|
||||||
|
import xyz.atnrch.wrench.ui.UIColors
|
||||||
|
import xyz.atnrch.wrench.watcher.WatcherManager
|
||||||
|
import java.nio.file.Path
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
fun WatcherDisplay(
|
||||||
|
state: WindowState,
|
||||||
|
watcherManager: WatcherManager,
|
||||||
|
currentClick: Int,
|
||||||
|
outputs: MutableList<Path>,
|
||||||
|
onEntryClick: (id: Int) -> Unit,
|
||||||
|
tabIndex: Int,
|
||||||
|
tabTitles: List<String>,
|
||||||
|
onTabChange: (id: Int) -> Unit
|
||||||
|
) {
|
||||||
|
|
||||||
|
Column {
|
||||||
|
TabRow(
|
||||||
|
selectedTabIndex = tabIndex,
|
||||||
|
backgroundColor = UIColors.ORANGE,
|
||||||
|
contentColor = Color.White
|
||||||
|
) {
|
||||||
|
tabTitles.forEachIndexed { index, title ->
|
||||||
|
Tab(selected = tabIndex == index,
|
||||||
|
onClick = { onTabChange(index) },
|
||||||
|
text = { Text(text = title) })
|
||||||
|
}
|
||||||
|
}
|
||||||
|
when (tabIndex) {
|
||||||
|
0 -> FileManagerDisplay(state, watcherManager, currentClick, outputs, onEntryClick)
|
||||||
|
1 -> Text(
|
||||||
|
color = Color.White,
|
||||||
|
text = "Hello!"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package xyz.atnrch.wrench.components.filemanager
|
package xyz.atnrch.wrench.components
|
||||||
|
|
||||||
import androidx.compose.material.Scaffold
|
import androidx.compose.material.Scaffold
|
||||||
import androidx.compose.material.ScaffoldState
|
import androidx.compose.material.ScaffoldState
|
|
@ -4,53 +4,17 @@ import androidx.compose.foundation.layout.Arrangement
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.Row
|
import androidx.compose.foundation.layout.Row
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.material.Tab
|
|
||||||
import androidx.compose.material.TabRow
|
|
||||||
import androidx.compose.material.Text
|
|
||||||
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.graphics.Color
|
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.window.WindowState
|
import androidx.compose.ui.window.WindowState
|
||||||
import xyz.atnrch.wrench.components.filemanager.center.empty.DefaultDisplay
|
import xyz.atnrch.wrench.components.filemanager.center.empty.DefaultDisplay
|
||||||
import xyz.atnrch.wrench.components.filemanager.center.input.InputEntries
|
import xyz.atnrch.wrench.components.filemanager.center.input.InputEntries
|
||||||
import xyz.atnrch.wrench.components.filemanager.center.output.OutputEntries
|
import xyz.atnrch.wrench.components.filemanager.center.output.OutputEntries
|
||||||
import xyz.atnrch.wrench.ui.UIColors
|
|
||||||
import xyz.atnrch.wrench.watcher.WatcherManager
|
import xyz.atnrch.wrench.watcher.WatcherManager
|
||||||
import java.nio.file.Path
|
import java.nio.file.Path
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun WatcherDisplay(
|
|
||||||
state: WindowState,
|
|
||||||
watcherManager: WatcherManager,
|
|
||||||
currentClick: Int,
|
|
||||||
outputs: MutableList<Path>,
|
|
||||||
onEntryClick: (id: Int) -> Unit,
|
|
||||||
tabIndex: Int,
|
|
||||||
tabTitles: List<String>,
|
|
||||||
onTabChange: (id: Int) -> Unit
|
|
||||||
) {
|
|
||||||
|
|
||||||
Column {
|
|
||||||
TabRow(
|
|
||||||
selectedTabIndex = tabIndex,
|
|
||||||
backgroundColor = UIColors.ORANGE,
|
|
||||||
contentColor = Color.White
|
|
||||||
) {
|
|
||||||
tabTitles.forEachIndexed { index, title ->
|
|
||||||
Tab(selected = tabIndex == index,
|
|
||||||
onClick = { onTabChange(index) },
|
|
||||||
text = { Text(text = title) })
|
|
||||||
}
|
|
||||||
}
|
|
||||||
when (tabIndex) {
|
|
||||||
0 -> FileManagerDisplay(state, watcherManager, currentClick, outputs, onEntryClick)
|
|
||||||
1 -> TODO("Add Server Manager")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun FileManagerDisplay(
|
fun FileManagerDisplay(
|
||||||
state: WindowState,
|
state: WindowState,
|
Reference in a new issue