Project

General

Profile

機能 #1200

mikutter CommandのEventオブジェクトにWorldなどをもたせる

Added by toshi_a 初音 over 2 years ago. Updated almost 2 years ago.

Status:
終了
Priority:
通常
Target version:
Start date:
2018-04-05
Due date:
% Done:

0%

プラグイン名:

Description

現在、mikutter Commandを呼び出す時には、 command イベントフィルタでmikutter Commandのリストを得て、Commandに与えるパラメータをまとめた Plugin::GUI::Event オブジェクトを引数にCommandを呼ぶ。
Plugin::GUI::Event をModelとして提供し、新たに呼び出し時に注目しているWorldをEventのプロパティに含めるようにすることで、以下の問題の解決を図る。

  • Commandのcondition呼び出し時と本体呼び出し時でCurrent Worldが異なる場合、conditionが成立しないときに本体を呼び出してしまう可能性がある
  • 注目すべきWorldが通知されないために、ほとんどのCommandはCurrent Worldを参照している

Commandの呼び出し側が注目すべきWorldを指定する場合、呼び出し側がCurrent Worldを参照することになり、CommandがCurrent Worldに依存する必要が無くなる。

また、コマンドを呼び出すプラグインは Plugin::GUI::Event のインスタンスを作る必要があるが、これをModelにすることで、GUIプラグインのモジュール空間に他のプラグインからアクセスするというダーティな方法を取らなくて良くなる。

Also available in: Atom PDF