私はそれを実現する方法を探してきましたが、どこにも見つかりません。クイックリストアイテムを有効/無効にする方法も推測したので、アイテムをクリックした後に呼び出される関数を追加する方法も推測しましたが、それだけです。何か案は?
チェックボックスまたはラジオボタンで構成されるアプリのクイックリストを作成したいです。関連するアクションのないアイテムをクイックリストに追加する方法に関する情報を見つけました( tutorial )が、それだけですそこに記載されている関連アクションを含む)。 this のようなものを取得しようとしています。
私はそれが正しいかどうかわかりませんが、私はこのようなものを使用しています:
def check_item_activated_callback(menuitem、a、b): if menuitem.property_get_int(Dbusmenu.MENUITEM_PROP_TOGGLE_STATE)== Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED: D MENUITEM_TOGGLE_STATE_UNCHECKED) else: menuitem.property_set_int(Dbusmenu.MENUITEM_PROP_TOGGLE_STATE、Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED) check1 = Dbusmenu.Menuitem check1.property_set(Dbusmenu.MENUITEM_PROP_LABEL、 "チェックボックス") check1.property_set(Dbusmenu.MENUITEM_PROP_TOGGLE_TYPE、Dbusmenu.MENUITEM_TOGGLE_CHECK) check_ ] 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)
def radio_item_activated_callback(radioitem1、a、radioitem2): radioitem1.property_set_int(Dbusmenu.MENUITEM_PROP_TOGGLE_STATE、Dbusmenu.MENUITEM_TOGGLE_STATE_CHECKED)[.____。 .____。] radio1 = Dbusmenu.Menuitem.new() radio1.property_set(Dbusmenu.MENUITEM_PROP_LABEL、「ラジオボタン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_app ____________________。 。] radio2 = Dbusmenu.Menuitem.new() radio2.property_set(Dbusmenu.MENUITEM_PROP_LABEL、「ラジオボタン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) o .____。 .MENUITEM_SIGNAL_ITEM_ACTIVATED、radio_item_activated_callback、radio2) radio2.connect(Dbusmenu.MENUITEM_SIGNAL_ITEM_ACTIVATED、radio_item_activated_callback、radio1)
separator = Dbusmenu.Menuitem.new(); separator.property_set(Dbusmenu.MENUITEM_PROP_TYPE、Dbusmenu.CLIENT_TYPES_SEPARATOR) separator.property_set_bool(Dbusmenu.MENUITEM_PROP_VISIBLE_TrueI 。] quicklist.child_append(セパレータ)
item1 = Dbusmenu.Menuitem.new() item1.property_set(Dbusmenu.MENUITEM_PROP_LABEL、「アイテム有効」) 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、「アイテムが無効」) item2.property_set_bool(Dbusmenu.MENUITEM_PROP_VISIBLE、True) item2.property_set_bool(Dbusmenu.MENUITEM_PROP_ENABLED、False) quid )
チェックボックスタイプのクイックリストメニュー項目を作成する例を次に示します。
# Create toggle-able menu item for urgency
urgent_menu_item = Dbusmenu.Menuitem.new ()
# Set the tab's name as the menu item's name
urgent_menu_item.property_set (Dbusmenu.MENUITEM_PROP_LABEL, _('Urgent'))
# Make the menu item toggle-able
urgent_menu_item.property_set(Dbusmenu.MENUITEM_PROP_TOGGLE_TYPE, Dbusmenu.MENUITEM_TOGGLE_CHECK)
urgent_menu_item.property_set_int(Dbusmenu.MENUITEM_PROP_TOGGLE_STATE, Dbusmenu.MENUITEM_TOGGLE_STATE_UNCHECKED)
urgent_menu_item.connect('item_activated', self.urgent_menu_item_activated)
# Make the menu item visible
urgent_menu_item.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
# Add the section's menu item to the Quicklist menu
quicklist.child_append(urgent_menu_item)
そして、ここにラジオタイプのクイックリストメニューアイテムを作成するためのものがあります:
# Create a new item for this section
section_menu_item = Dbusmenu.Menuitem.new ()
# Set the tab's name as the menu item's name
section_menu_item.property_set (Dbusmenu.MENUITEM_PROP_LABEL, tab_name)
# Make the menu item toggle-able
section_menu_item.property_set(Dbusmenu.MENUITEM_PROP_TOGGLE_TYPE, Dbusmenu.MENUITEM_TOGGLE_RADIO)
# Make the menu item visible
section_menu_item.property_set_bool (Dbusmenu.MENUITEM_PROP_VISIBLE, True)
# When the menu item is clicked, make it call menu_item_activated
# with the tab id, which is used to make that the active tab
section_menu_item.connect('item_activated', self.section_menu_item_activated, tab_id)
# Add the section's menu item to the Quicklist menu
quicklist.child_append(section_menu_item)