4

ファイルを右クリックしたときに表示されるメニューに項目を追加する nautilus の拡張機能を作成しようとしています (画像を参照)。

代替テキスト

ただし、カスタム メニュー項目にサブメニューを追加したいと考えています。

Nautilus の拡張機能を作成する方法の例を含む「nautilus-python」パッケージをダウンロードしました (これまでのところ、私が見つけた最高の/唯一のドキュメントであることが判明しました)。その中には、次の内容を含む submenu.py というファイルがあります。

import nautilus

class ExampleMenuProvider(nautilus.MenuProvider):

    def get_file_items(self, window, files):
        menuitem = nautilus.MenuItem('ExampleMenuProvider::Foo', 'Foo', '')

        submenu = nautilus.Menu()
        menuitem.set_submenu(submenu)

        menuitem = nautilus.MenuItem('ExampleMenuProvider::Bar','Bar','')
        submenu.append_item(menuitem)

        return menuitem,

    # FIXME: Why isn't this working?
    def get_background_items(self, window, file):
        submenu = nautilus.Menu()
        submenu.append_item(nautilus.MenuItem('ExampleMenuProvider::Bar', 'Bar', ''))

        menuitem = nautilus.MenuItem('ExampleMenuProvider::Foo', 'Foo', '')
        menuitem.set_submenu(submenu)

        return menuitem,

ps: 「# FIX ME: なぜこれが機能しないのですか?」を追加しませんでした。それは実際に例に含まれています

コードが機能しません。2 番目の関数を取り出して最初の関数だけを残しても、機能しません。

どんな助けでも感謝します、ありがとう。

4

1 に答える 1