2022年2月19日土曜日

GIMP 2.99.10 Python Procedure Dialog の改良

GIMP 2.99 系の Python Procedure Dialog が改良されます。
一部、非表示になっていたものが改善します。
次期開発版 GIMP 2.99.10 で お披露目 の予定です。
待ち遠しいですね。


GIMP 2.99 系 (ex. 2.99.8) の Python Procedure Dialog ですが、
以下の Bug Report に 改良点が 追記 されました。

https://gitlab.gnome.org/GNOME/gimp/-/issues/7301#note_1388721

其の中から、画像を引用し掲載します。
恐らく、Linux 上でのものと思われます。



Jehan さま、
ありがとう。
ありがとう。
ありがとう。
です。

複数の commits によって、問題解決に結び付きました。
主要なものは 先の報告にもある様に、
commit 81692874fc0565ed7db20ae1f97d40513b0753ed です。

libgimp や libgimpwidgets 等、広範囲に渡って、手が加えられています。

変更に対応する形で、Script (foggify.py) にも手が入りました。
以下に、 .patch ファイル形式 (diff.exe) を模倣します。
元データは 以下のページ です。  其の方が見易いと思います。

https://gitlab.gnome.org/GNOME/gimp/-/commit/65077a605fa9fcc963dc584c0010fdc1b8af1d03

  1   削除行  
  2   追加行  

@@ -36,7 +36,6 @@ def foggify(procedure, run_mode, image, n_drawables, drawables, args, data):
      if run_mode == Gimp.RunMode.INTERACTIVE:
          GimpUi.init('python-fu-foggify')
          dialog = GimpUi.ProcedureDialog(procedure=procedure, config=config)
-         dialog.get_color_widget('color', True, GimpUi.ColorAreaType.FLAT)
          dialog.fill(None)
          if not dialog.run():
              dialog.destroy()
@@ -122,7 +121,7 @@ class Foggify (Gimp.PlugIn):
      # work. I still leave it this way for now until we figure this out
      # as it should be the better syntax.
      color = GObject.Property(type =Gimp.RGB, default=_color,
-                              nick =_("Fog _color"),
+                              nick =_("_Fog color"),
                               blurb=_("Fog color"))
  
      ## GimpPlugIn virtual methods ##

此れを見ると、
以前は必要であった  dialog.get_color_widget('color', ...) が不要になっています。
class 宣言の中で、 .Property に type =Gimp.RGB とする事 のみ で、
必要な Widget を呼び出せる様になった様です。
とても、 すっきりした 記述に変貌している と思われます。
歓迎! の挙動でしょうね。

未だ、詳細を見ている訳では無いので、
詳しくは分かりませんが、
追って、 libgimp や libgimpwidgets 等の Source Codes を覗いて見る心算です。

何れにしても、感謝! ですね。

Dear Jehan, Thanks a lot !!! ;) ;) ;)


GIMP 2.99.10 が 待ち遠しい ですね。



0 件のコメント:

コメントを投稿