GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Cómo agregar casillas de verificación o botones de radio a una lista rápida de Unity?

He estado buscando cómo hacer que eso suceda, pero no puedo encontrarlo en ningún lado. Incluso adiviné cómo habilitar/deshabilitar el elemento de la lista rápida, y cómo agregar la función invocada después de hacer clic en el elemento, pero eso es todo. ¿Alguna idea?

Quiero hacer una lista rápida para mi aplicación que consistirá en casillas de verificación o botones de opción. Encontré información sobre cómo agregar elementos sin acción asociada a la lista rápida (tutorial), pero eso es todo lo que encontré, no hay información sobre cómo agregar otros tipos de elementos (casillas de verificación, botones de opción, divisores horizontales o elementos con acción asociada) que se mencionan allí.
Estoy tratando de conseguir algo como esto.

Respuesta aceptada:

No estoy seguro si es correcto, pero estoy usando algo como esto:

  • casilla de verificación:
def check_item_activated_callback (menuitem, a, b):
    if menuitem.property_get_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE) == Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED:
       menuitem.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_UNCHECKED)
    else:
       menuitem.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED)

check1 = Dbusmenu.Menuitem.new ()
check1.property_set (Dbusmenu.MENUITEM_PROP_LABEL, "Checkbox")
check1.property_set (Dbusmenu.MENUITEM_PROP_TOGGLE_TYPE, Dbusmenu.MENUITEM_TOGGLE_CHECK)
check1.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED)
check1.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
check1.connect (Dbusmenu.MENUITEM_SIGNAL_ITEM_ACTIVATED, check_item_activated_callback, None)
qucklist.child_append (check1)
  • botones de opción:
def radio_item_activated_callback (radioitem1, a, radioitem2):
    radioitem1.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED)
    radioitem2.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_UNCHECKED)

radio1 = Dbusmenu.Menuitem.new ()
radio1.property_set (Dbusmenu.MENUITEM_PROP_LABEL, "Radio Button 1")
radio1.property_set (Dbusmenu.MENUITEM_PROP_TOGGLE_TYPE, Dbusmenu.MENUITEM_TOGGLE_RADIO)
radio1.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_UNCHECKED)
radio1.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
quicklist.child_append (radio1)

radio2 = Dbusmenu.Menuitem.new()
radio2.property_set (Dbusmenu.MENUITEM_PROP_LABEL, "Radio Button 2")
radio2.property_set (Dbusmenu.MENUITEM_PROP_TOGGLE_TYPE, Dbusmenu.MENUITEM_TOGGLE_RADIO)
radio2.property_set_int (Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED)
radio2.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
quicklist.child_append (radio2)

radio1.connect (Dbusmenu.MENUITEM_SIGNAL_ITEM_ACTIVATED, radio_item_activated_callback, radio2)
radio2.connect (Dbusmenu.MENUITEM_SIGNAL_ITEM_ACTIVATED, radio_item_activated_callback, radio1)
  • separador (también conocido como "divisores horizontales"):
separator = Dbusmenu.Menuitem.new ();
separator.property_set (Dbusmenu.MENUITEM_PROP_TYPE, Dbusmenu.CLIENT_TYPES_SEPARATOR)
separator.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
quicklist.child_append (separator)
  • elementos de menú activados/desactivados:
item1 = Dbusmenu.Menuitem.new ()
item1.property_set (Dbusmenu.MENUITEM_PROP_LABEL, "Item Enabled")
item1.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
item1.property_set_bool (Dbusmenu.MENUITEM_PROP_ENABLED, True)
quicklist.child_append (item1)

item2 = Dbusmenu.Menuitem.new ()
item2.property_set (Dbusmenu.MENUITEM_PROP_LABEL, "Item Disabled")
item2.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
item2.property_set_bool (Dbusmenu.MENUITEM_PROP_ENABLED, False)
quicklist.child_append (item2)

Ubuntu
  1. Cómo agregar un archivo de intercambio en Ubuntu

  2. Cómo agregar una impresora en Ubuntu 11.10 | Agregar impresora en Ubuntu

  3. ¿Cómo Agregar Repositorios Ppa?

  4. Ubuntu 16.04:¿Cómo agregar/eliminar aplicaciones ancladas a Unity Launcher a través de la terminal?

  5. ¿Cómo instalar Kde en Unity?

Cómo probar Mir y Unity 8 en Ubuntu 16.04

Cómo agregar un usuario a Sudoers en Ubuntu

Cómo agregar un usuario a un grupo en Linux

Cómo agregar una impresora a Ubuntu

¿Cómo agregar múltiples espacios de trabajo en Unity 2d?

Cómo agregar un usuario a Sudoers en Ubuntu 22.04