fun main()

in sample/src/main/kotlin/org/jetbrains/desktop/sample/macos/ApplicationMenuSampleMac.kt [15:49]


fun main() {
    KotlinDesktopToolkit.init()
    Logger.info { runtimeInfo() }
    GrandCentralDispatch.startOnMainThread {
        Application.init(
            Application.ApplicationConfig(
                //        disableDictationMenuItem = true,
                //        disableCharacterPaletteMenuItem = true
            ),
        )
        val window1 = Window.create(origin = LogicalPoint(100.0, 200.0), title = "Window1")
        val window2 = Window.create(origin = LogicalPoint(200.0, 300.0), title = "Window2")

        Application.runEventLoop { event ->
            when (event) {
                is Event.ApplicationDidFinishLaunching -> {
//                    AppMenuManager.setMainMenu(buildAppMenu())
                    thread(start = true) {
                        Thread.sleep(100)
                        while (true) {
                            GrandCentralDispatch.dispatchOnMain {
                                AppMenuManager.setMainMenu(buildAppMenu())
                            }
                            Thread.sleep(1000)
                        }
                    }
                }
                else -> {}
            }
            EventHandlerResult.Continue
        }
        window1.close()
        window2.close()
    }
}