グローバル イベント
グローバル イベントは、どのプログラムが前面にあるかにかかわらず、何かが起こったときにスクリプトを実行します。イベントは 13 個で、常に同じ 13 個です。それぞれを設定し、オンまたはオフにしますが、追加や削除はできません。アクションとは異なり、グローバル イベントはアプリ グループに属しません。
詳細モード。 グローバル イベント ページはナビゲーションの エンジン セクションにあり、構成ウィンドウはこのセクションを詳細モードでだけ表示します。
イベントを設定する
| イベント | スクリプト | 発生するタイミング |
|---|---|---|
| 中ボタン | ステップ、1 ステップ | 押下と解放 |
| 右ボタン | 未設定 | 押下のみ |
| ホイール — 垂直 | 未設定 | 1 目盛りごと |
- イベントの行を見つけます。スイッチ ① をオンにして有効にします。
- 設定する → (既にスクリプトがある場合は スクリプトを編集 →) ② をクリックします。行がその場で開きます。一度に開ける行は 1 つだけです。
- マウス ボタンやホイールの場合は、入力を消費する ③ かどうかを選びます (入力を消費する)。
- 実行方法 ④ で、ステップ または スクリプト (全般設定で AutoHotkey がオンの場合は AutoHotkey も) を選び、実行内容を記述します (アクション)。
- 完了 をクリックしてから保存します。
行の中央の列には、ステップ、3 ステップ や 未設定 のように、スクリプトの概要が表示されます。オンなのに何も設定されていないイベントは、その概要が警告として表示されます。何も実行されないためです。ナビゲーションのバッジには、有効なイベントの数が表示されます。
13 個のイベント
| イベント | カード | 発生するタイミング |
|---|---|---|
| 左ボタン、中ボタン、右ボタン、サイド ボタン 1、サイド ボタン 2 | マウスとホイール | ボタンが押されたとき、および離されたときにもう一度 (押下と解放)。描画ボタンの場合は、押されたときだけ (押下のみ)。 |
| ホイール — 垂直 | マウスとホイール | ホイールの 1 目盛りごと (1 目盛りごと)。 |
| ホイール — 水平 | マウスとホイール | チルト ホイールまたは横スクロールの 1 目盛りごと (1 目盛りごと)。 |
| 描画ボタンを離したとき | ジェスチャの結果 | ジェスチャを開始した描画ボタンが離されたとき (各キャプチャの後)。 |
| 一致なし | ジェスチャの結果 | 描いたジェスチャがどのアクションも実行しなかったとき (ジェスチャの終了後)。 |
| 構成の読み込み | システムとライフサイクル | エンジンの起動時、およびすべての保存と 構成の再読み込み の後にもう一度 (起動、保存、再読み込み時)。 |
| エンジンのシャットダウン | システムとライフサイクル | エンジンの終了時 (時間超過時に確認)。 |
| ハードウェアの追加または削除 | システムとライフサイクル | デバイスが接続されたとき、または取り外されたとき (実際の接続のみ)。 |
| フォアグラウンド ウィンドウの変更 | システムとライフサイクル | 別のウィンドウが前面に来るたび (無効時はスキップ)。 |
スクリプトは、Context 組み込み関数を使って、何によって発生したか (たとえばマウス ボタンが押されたのか離されたのか、どのボタンとウィンドウが関係したか) を知ることができます (組み込み関数)。
マウス ボタン
マウス ボタンのイベントは、ポインターがどこにあっても、そのボタンが押されるたびに発生します。無視されているプログラムの上、除外ゾーンの中、ジェスチャ中 (ジェスチャ中に押したボタンはジェスチャの修飾キーにもなります) でも発生します。Input.Observer 自身のスクリプトが送るクリックでは決して発生しません。
描画ボタンでもあるボタン (全般、描画ボタン) の場合、イベントはボタンが押されたときだけ発生します。行には 押下のみ と表示され、そのボタンがジェスチャの描画に使われていることが示されます。押下は通常どおりジェスチャを開始します。解放に反応するには、描画ボタンを離したとき を使います。
Windows でマウス ボタンが入れ替えられている場合、ボタンの名前は Windows に従います。右ボタン はコンテキスト メニューを開くボタンです。
ホイール
ホイールのイベントは、ポインターの下のプログラムにかかわらず、ジェスチャ中も含めて、1 目盛りごとに発生します。そのホイールを対象とする除外ゾーンの中では発生しません。
1 つのホイール イベントのスクリプトは、1 つずつ順番に実行されます。スクリプトが終わるより速く目盛りが届く場合は、最大 8 個まで順番を待ち、それを超える目盛りは破棄されます。
目盛り間の最小間隔 (詳細モード、開いた行の中、既定値 0) は、スクリプトを実行する 2 つの目盛りの間の最短時間を設定します。0 にすると、すべての目盛りで実行されます。間隔を設定すると、最後に受け付けた目盛りから間隔内に届いた目盛りは破棄され、キューには入りません。垂直と水平のホイールにはそれぞれ独自の間隔があります。同じ 2 つの値は 全般 ページに ホイールの間引き として表示され、一方を変更するともう一方も変わります。
入力を消費する
5 つのマウス ボタンと 2 つのホイールでは、入力を消費する を使えます。クリックやスクロールはどのプログラムにも届かず、代わりに行うべき処理はスクリプトが担当します。消費された押下は、その解放も消費します。
- 描画ボタンの押下は常にジェスチャのキャプチャに届く必要があるため、描画ボタンは消費できません。スイッチは使えず、理由が表示されます。構成ファイルでオンになっていても、エンジンは読み込み時にオフにし、ここでもオフにするまで行に警告が表示されます。
- スクリプトなしで消費することもできますが、行に警告が表示されます。クリックやスクロールは単に消えてしまいます。
- 最小間隔を設定したホイールを消費する場合: 間隔内の目盛りは消費 され、かつ 破棄されます。スクロールもスクリプトの実行も行われません。これについても行に警告が表示されます。
ジェスチャの結果
描画ボタンを離したとき は、押下でジェスチャを開始した描画ボタンが離されたときに、何が起こったかにかかわらず発生します。ジェスチャがアクションを実行した場合、何にも一致しなかった場合、単純なクリックとして渡された場合、トレーニング用に描かれた場合のいずれでもです。押下がジェスチャを開始しなかった場合 (無視されているプログラム、除外ゾーン、無視する修飾キーを押していた場合) や、解放の前にジェスチャが既に終わっていた場合 (キャンセルのタイムアウト) は発生しません。
一致なし は、ジェスチャを描いた (ジェスチャの最小移動量以上動かした) のに、ウィンドウのアプリ グループでもグローバルでもどのアクションにも一致しなかったときに発生します。単純なクリックや、ジェスチャのトレーニング中は発生しません。
システムとライフサイクルのイベント
- 構成の読み込み はエンジンの起動時に実行されます。起動時と終了時の待機 (スクリプト ページ、既定値 10 秒) を過ぎても実行中の場合は、待ち続けるかどうかを尋ねられます。構成ウィンドウからの保存と 構成の再読み込み のたびに、実行中のスクリプトが停止された後で再び実行されます。その実行には時間制限も確認もなく、エンジンが無効になっている間はスキップされます。
- エンジンのシャットダウン はエンジンの終了時に実行され、再読み込み時には実行されません。起動時と終了時の待機 を過ぎても実行中の場合は、待ち続けるか、エンジンを終了させるかを尋ねられます。確認なしに打ち切られることはありません。
- ハードウェアの追加または削除 は、デバイスが実際に接続または取り外されたときに発生し、その間に Windows が送る日常的なデバイス通知では発生しません。エンジンが無効になっている間はスキップされます。
- フォアグラウンド ウィンドウの変更 は、別のウィンドウが前面に来るたびに発生します。エンジンが無効になっている間はスキップされます。
ウィンドウ (たとえばメッセージ ボックス) を表示する フォアグラウンド ウィンドウの変更 のスクリプトは、そのウィンドウを前面に出すため、イベントが何度も繰り返し発生します。そうなった場合は、すべてのアクションを停止するホットキー (全般 ページ) を押してください。すべてのスクリプトが停止し、トレイ メニューで 構成の再読み込み を選ぶまで、入力の処理とこのイベントがオフになります。
グローバル イベントが発生しないとき
- トレイからエンジンが無効にされている間、または フォーカス中はすべて一時停止 が設定されたウィンドウにフォーカスがあるため一時停止している間 (無視グループ)。構成の読み込み は起動時には引き続き実行されます。
- セーフ モードの間。セーフ モードでは、設定したスクリプトは実行されません。
- Input.Observer 自身のスクリプトが送った入力。
無視グループ、アプリ グループ、プロファイルは、グローバル イベントに影響しません。