20 lines
505 B
Kotlin
20 lines
505 B
Kotlin
|
package io.gitlab.jfronny.inceptum.gtk.menu
|
||
|
|
||
|
import org.gnome.gio.MenuItem
|
||
|
import org.gnome.gio.SimpleAction
|
||
|
import org.gnome.glib.Variant
|
||
|
|
||
|
class BuiltToggleItem(action: SimpleAction, menuItem: MenuItem?) : BuiltMenuItem(action, menuItem) {
|
||
|
var state: Boolean
|
||
|
get() = action.getState()!!.boolean
|
||
|
set(state) {
|
||
|
action.state = Variant.newBoolean(state)
|
||
|
}
|
||
|
|
||
|
fun toggle(): Boolean {
|
||
|
val toggled = !state
|
||
|
state = toggled
|
||
|
return toggled
|
||
|
}
|
||
|
}
|