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.application
|
||||
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 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.ScaffoldState
|
|
@ -4,53 +4,17 @@ import androidx.compose.foundation.layout.Arrangement
|
|||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.Row
|
||||
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.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.window.WindowState
|
||||
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.output.OutputEntries
|
||||
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 -> TODO("Add Server Manager")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun FileManagerDisplay(
|
||||
state: WindowState,
|
||||
|
@ -93,4 +57,4 @@ fun DisplayEntries(
|
|||
InputEntries(minmode, watcherManager, onEntryClick)
|
||||
OutputEntries(minmode, watcherManager, currentClick, outputs)
|
||||
}
|
||||
}
|
||||
}
|
Reference in a new issue