Pythonを使用してxfceパネルアプレットを作成できますか?

Pythonを使用してxfceパネルアプレットを作成できますか?

Pythonを使用してxfceパネルアプレットを作成できますか?ほとんどのパネルアプレットはCを使用しているようで、これを行うことができるかどうか疑問です。

答え1

そうそうできます。たとえば、確認してください。Python/Javascriptを使用したXFCE-PANEL-PLUGINの開発

以下はGtkSocketとGtkPlugの例です:

#!/usr/bin/python
"""
General flow of program
Entry widget -> GtkPlug -> GtkSocket -> Window
"""

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
import sys


def perform_embed_event(widget):
    print("This will get called when plug will emit embedded signal")

# initialize GtkWindow
window = Gtk.Window()

# initialize GtkSocket
socket = Gtk.Socket()

# store socket id in socket_id variable
socket_id = socket.get_id()

print("socket", socket_id)

window.add(socket)
window.show()

# initialize GtkPlug
plug = Gtk.Plug.new(socket_id)

# Different Plug signals
plug.connect("embedded", perform_embed_event)
plug.connect("destroy", Gtk.main_quit)

print("Plug ID:", plug.get_id())

# Entry Widget
entry = Gtk.Entry()
entry.set_text("Xfce GSoC 2021")

# Add entry widget into plug
plug.add(entry)

plug.show_all()
Gtk.main()

関連情報