LightwaveのPythonプラグイン

LightwaveのPluginをPythonで作ってみている。

import lwsdk

__lwver__ = "11"

class hello_world(lwsdk.IGeneric):
    def __init__(self, context):
        super(hello_world, self).__init__()

    def process(self, generic_access):
        ui = lwsdk.LWPanels()
        panel = ui.create('Test')

        if panel.open(lwsdk.PANF_BLOCKING | lwsdk.PANF_CANCEL) == 0:
            ui.destroy(panel)
            return lwsdk.AFUNC_OK

        ui.destroy(panel)
        return lwsdk.AFUNC_OK

ServerTagInfo = [
    ( "Python Hello World!", lwsdk.SRVTAG_USERNAME | lwsdk.LANGID_USENGLISH ),
    ( "Hello, World!", lwsdk.SRVTAG_BUTTONNAME | lwsdk.LANGID_USENGLISH ),
    ( "Utilities/Python", lwsdk.SRVTAG_MENU | lwsdk.LANGID_USENGLISH )]
ServerRecord = { lwsdk.GenericFactory("LW_PyHelloWorld", hello_world) : ServerTagInfo }

[Utilities]タブの[Plugins]-[Add Plugins]で上記のPythonスクリプトを読み込む。
[Plugins]-[Adittional]に"Python Hello World!"というものが一番下?に追加されているので、呼び出すと、OKとCancelボタンがあるダイアログが表示される。