package wow.doge.chatto.controller import javafx.fxml.FXML import javafx.scene.control.MenuBar import com.sfxcode.sapphire.core.controller.ViewController import com.sfxcode.sapphire.core.scene.ContentManager import com.typesafe.scalalogging.LazyLogging import scalafx.Includes._ import javafx.scene.layout.HBox import javafx.scene.layout.Priority class MainViewController extends ViewController with LazyLogging { @FXML private var menuBar: MenuBar = _ // @FXML // var workspacePane: Pane = _ // @FXML // var statusPane: Pane = _ // @FXML // var navigationPane: Pane = _ @FXML private var mainPane: HBox = _ lazy val workspaceController = getController[WorkspaceController]() lazy val navigationController = getController[NavigationController]() lazy val statusBarController = getBean[StatusBarController]() lazy val loginController = getController[LoginController]() lazy val chatController = getController[ChatController]() var workspaceManager: ContentManager = _ var navigationManager: ContentManager = _ var statusBarManager: ContentManager = _ var mainManager: ContentManager = _ override def didGainVisibilityFirstTime() = { menuBar.setUseSystemMenuBar(true) // menuBar.setVisible(false) // navigationManager = // ContentManager(navigationPane, this, navigationController) // statusBarManager = ContentManager(statusPane, this, statusBarController) // workspaceManager = ContentManager(workspacePane, this, workspaceController) mainManager = ContentManager(mainPane, this) chatController.chatMainPane.hgrow = Priority.ALWAYS } def showChatController(): Unit = { mainManager.updatePaneContent(chatController) } }