tklib.tkplugin のソースコード

"""
tkpluginモジュール
==================

このモジュールは、Tkinterアプリケーションにおけるプラグインやモジュールを管理するための
基底クラスである `tkModule` を提供します。
`tklib.tkobject.tkObject` を継承し、モジュールのライフサイクル管理と
基本的なプロパティ設定を可能にします。

関連リンク: :doc:`tkplugin_usage`
"""
import sys


from tklib.tkobject import tkObject


[ドキュメント] class tkModule(tkObject): """ Tkinterアプリケーションのプラグインまたはモジュールの基本クラスです。 `tkObject` を継承し、モジュール名や内部参照を管理します。 `initialize` メソッドで初期化処理を実行します。 """ def __init__(self, name, module = None, **kwargs): """ `tkModule` の新しいインスタンスを初期化します。 モジュール名を設定し、オプションで親モジュールへの参照を保持します。 `update` と `initialize` メソッドを呼び出して、インスタンスの プロパティを更新し、追加の初期化処理を実行します。 :param name: str: このモジュールの名前。 :param module: tkModule or None: 親モジュールへの参照。デフォルトはNone。 :param kwargs: dict: `tkObject` および `initialize` メソッドに渡される追加のキーワード引数。 """ self.name = name self.module = module self.update(**kwargs) self.initialize(**kwargs)
[ドキュメント] def initialize(self, **kwargs): """ モジュールの追加の初期化処理を実行します。 このメソッドは `__init__` メソッドから呼び出され、`tkObject` の 初期化処理(`super().__init__(**kwargs)`)を実行します。 子クラスでオーバーライドすることで、カスタムの初期化ロジックを 追加することができます。 :param kwargs: dict: `super().__init__` に渡される追加のキーワード引数。 """ super().__init__(**kwargs)
# def __del__(self): # print("{} destroyed".format(self.name)) def __str__(self): """ モジュールの文字列表現を返します。 このモジュールの名前を返します。 :returns: str: このモジュールの名前。 """ return self.name