# ウィンドウ

> どのページも囲む枠です。ヘルプのキー、報告のボタン、テーマのキー、ユーザーチップを持つタイトルバー、ナビゲーションバーと各項目を出す条件、ステータスバーと操作ログ帯、ランタイム停止の帯、ヘルプのパネル、通知、クラッシュレポートの同意のダイアログ、接続が切れたときの画面、全画面、デスクトップの表示倍率、そして通知領域です。

Ganter Lab のどのページも、1 つの枠の中に描かれます。タイトルバー、左のナビゲーションバー、ページそのもの、そして下端のステータスバーです。枠はどのページでも同じで、ステーション自身のウィンドウでも、ネットワークのブラウザーでも同じです（[リモートアクセス](remote-access) を参照）。両者が違う数少ない点は、以下で個別に述べます。枠を見るのに権限は要りませんが、その中のいくつかの項目や印は、対応する権限を持つ身元にだけ描かれます。ページ自身と同じ扱いです。

## 枠のあらまし {#the-frame-at-a-glance}

| 部分 | 位置 | 中身 |
|---|---|---|
| タイトルバー | 上端 | ブランド、ヘルプのキー、報告のボタン、3 つのテーマのキー、ユーザーチップです。ステーション自身のウィンドウでは、表題（「Ganter Lab」と最小化、最大化、閉じる）はオペレーティングシステムが描き、Web のタイトルバーは畳まれ、ヘルプのキー、報告のボタン、テーマのキーとチップが右上の隅に収まります。ブランドの印と名前を左に置いた全体のバーは、ブラウザーではそのまま残ります。[ブランド](settings-branding)を決めると、表題はステーションの名前を言ってそのアイコンを付け、バーは印と名前の代わりにステーションのロゴを見せます。 |
| ランタイム停止の帯 | タイトルバーの下 | ランタイムが止まっている間だけ現れます（下記参照）。 |
| ナビゲーションバー | 左端 | 2 つの組に分かれた最大 11 項目。上が作業の組、下端に留められたのがステーションの組です。 |
| 内容 | 中央 | ページです。描画に失敗したページは 1 つの案内（「このパネルで問題が起きました」「画面のほかの部分は動き続けます。障害はイベントのページの「コンソール」に記録されました。」と **もう一度試す**）に落ち、枠は生きたままです。次に移動すると、きれいなページが得られます。 |
| スナックバー | 内容の上、右下 | 割り込む通知で、新しいものが上に重なります。 |
| ステータスバー | 下端 | 各種の表示（最後がリリースの印）、操作ログ帯、時計です。 |

ウィンドウは 880 × 520 ピクセルより小さくは開かず、起動の間で前回の位置、大きさ、最大化の状態を覚えています。[初回起動](app-install#first-launch) を参照してください。

## タイトルバー {#title-bar}

### ヘルプのキー {#the-help-key}

タイトルバー右側の組の左端にある疑問符で、テーマのキーとは細い区切りで隔てられています。[文脈に沿ったヘルプ](#contextual-help) で説明するヘルプのパネルを開き、パネルが開いている間は自分に印を付けます。どの経路でも、どの身元にも、ランタイムが止まっている間も描かれます。

### 報告のボタン {#the-report-button}

ヘルプのキーの右にある報告のボタンは、不具合、提案、ドライバーの要望を、ウィンドウの画面のキャプチャを付けて Ganter へのご報告として書きます。ヘルプのキーと同じ大きさの、アイコンだけのボタンです。ツールチップはその名前 **報告** と、その下に何をするかを示し、スクリーンリーダーはその名前で読み上げます。押すとまずウィンドウをキャプチャし、そのあとで初めてページの上のダイアログにご報告のフォームを開くので、フォームが自分の画像に写ることはありません。フォーム、送られるもの、サーバーの答えは [フィードバック](account-feedback#the-report-button) にあります。ロールが Ganter へのご報告の送信を持っているアイデンティティには、どの経路でも描かれます。管理者が無効にするまで、すべてのロールがこれを持っています。ロールが持っていないアイデンティティには、まったく描かれません。状況がご報告を拒んでいる間は、描かれたまま灰色になり、理由をツールチップの名前の下で伝えます。ステーションのウィンドウではなくブラウザーであるとき、送れないセッション（デモのプロファイル、またはやり直しが必要なステーションの Ganter アカウントへのサインイン）のとき、キャプチャをすでに撮っているときです。Ganter アカウントにサインインしていないステーションは拒まれません。そのご報告はアカウントなしで送られ、Ganter から返信できないことをフォームが伝えます。公開デモは描きません。

### テーマのキー {#theme-keys}

3 つのキーが横に並びます。順に、それぞれ名前を述べるツールチップが付きます。

| キー | ツールチップ | 何をするか |
|---|---|---|
| システムに合わせる（モニターの記号） | テーマ：システムに合わせる | Windows の外観に従います。ステーションのウィンドウではホストがそれを解決し、Windows がライトとダークを切り替えた瞬間に適用し直します。ブラウザーは自分のライトまたはダークの設定に照らして解決します。 |
| ライト（太陽の記号） | テーマ：ライト | Windows が何と言おうと、明るい外観です。 |
| ダーク（月の記号） | テーマ：ダーク | Windows が何と言おうと、暗い外観です。 |

浮き上がっているキーは効いている **選択** であって、解決された外観ではありません。「システムに合わせる」は、見た目がライトでもダークでも「システムに合わせる」の印のままです。ステーション自身のウィンドウでキーを押すと、その場で適用され、ステーションの設定として構成データベースに保存されます。自分のテーマを選んでいないブラウザーは、すぐにそれに従います。ブラウザーでキーを押すと、変わるのはそのブラウザーだけです。選択はそのブラウザーに保存されてページを読み込み直しても残り、ステーションには何も届かず、それ以降そのブラウザーはステーションのテーマに従いません。キーは権限を求めません。ブラウザーの選択はほかのどの画面にも届かないからです。[設定の「外観」](settings-appearance) は同じ 3 つの値を同じ条件で示し、変更します。

### ユーザーチップ {#the-user-chip}

テーマのキーの右、細い区切りの向こうにあるチップは、**この画面** で誰がサインインしているかを名乗ります。誰もサインインしていない間は **サインイン**、誰かがサインインすると表示名になります。人の記号に付いた点は、サインイン中は緑、そうでなければ灰色です。チップはどの経路でも、どの画面でも、常に描かれます。ロールは常に有効であり、サインインしていないこともまた 1 つの身元（「未サインイン」のロール）だからです。

押すとサインインのダイアログが開きます。

- 表題は **サインイン** です。すでに誰かがサインインしていて一覧が出ているときは **ユーザーを切り替える** になります。その場合、見出しの行「サインイン中のユーザー *名前*」に **サインアウト** のボタンが付きます。
- 一覧には、すべてのローカルユーザーが 2 文字の記号、名前、そして印とともに並びます。PIN を持つユーザーには錠前（ツールチップは「PIN が必要です」）、持たないユーザーには矢印（ツールチップは「タップでサインインします」）が付き、後者は行を押した時点でサインインします。
- PIN を持つユーザーを選ぶと PIN の段に進みます。そのユーザーの記号と名前、**戻る**、見出し「PIN を入力」、そして 4 桁から 6 桁を受け付けるキーパッドです。チェックのキーか Enter で送信します。
- 拒否はキーパッドの上にそのまま残ります。「その PIN は正しくありません。」または「PIN の誤りが多すぎます。*n* 秒/分 後にやり直してください。」です。5 回続けて誤ると 1 分間閉ざされ、さらに 5 回ごとに待ち時間が倍になり、最大 15 分になります。
- ステーションにローカルユーザーがまだ 1 人もいないときは、空の一覧を出す代わりにそう述べます。「このステーションには、ローカルユーザーがまだありません。最初のユーザーである主管理者は、ユーザーのページで作ります。」

ステーション自身のウィンドウでは、チップはステーションのセッション、つまりそのウィンドウのすべてのコマンドが実行される身元を変えます。ブラウザーでは、その接続だけをサインインさせます。どちらの場合も結果はステータスバーの操作ログ帯にも届きます（「Ana としてサインインしました。」「Ana がサインアウトしました。」「サインインを拒否しました。引き続き Ana としてサインインしています。」）。誰がサインインしているかが、ほかのすべてのコマンドにできることを決めるからです。この流れ全体は [サインイン](users-signing-in) で説明します。

## ナビゲーションバー {#navigation-rail}

バーの幅は 64 ピクセルで、項目ごとに記号とラベルがあり、有効な項目が強調されます。各項目は、この画面の身元が、挙げた権限の少なくとも 1 つを持つときにだけ描かれます。ページ自身も開かれたときに改めて確認するので、バーはどのみち拒否されるものを削るだけです。権限はロールの編集画面のスイッチです。[権限](users-permissions) を参照してください。

| 項目 | 組 | 開くもの | 描かれる条件 |
|---|---|---|---|
| ようこそ | 上 | ようこそのページ（`/welcome`）。プログラムのすべての領域を 1 ステップずつ説明します | ステーションでは、ステーションがページを残している間だけ（[ようこそ](welcome) を参照）。そのうえで Connector の構成、Logic の構成、Process の管理、ダッシュボードの編集、ローカルユーザーの管理、エージェント（MCP）の管理のいずれか。公開のデモでは、どの訪問者にも常に描かれます。 |
| View | 上 | ダッシュボードのページ（`/view`。`/`、`/home`、ダッシュボード自身のアドレス `/d/…` でも点灯します） | 常に。ダッシュボードを見ることは決して取り上げられません |
| Process | 上 | Process のワークスペース。履歴もここに含まれます（`/histories` でも点灯します） | モデルの閲覧、手順の実行、レシピと判定の編集、Process の管理、履歴の表示のいずれか |
| Logic | 上 | Logic のページ | Logic の表示 |
| Connector | 上 | Connector のページ | Connector の表示 |
| ユーザー | 上 | ユーザーのページ | 実際のステーションでは常に（管理者でない人には、管理がロックされていることをページ自身が伝えます）。公開のデモではこの項目を出しません。 |
| 検証 | 下 | 検証のページ | 検証の表示 |
| イベント | 下 | イベントのページ | イベントの表示 |
| エージェント | 下 | エージェントのページ | エージェント（MCP）の管理 |
| リモートアクセス | 下 | リモートアクセスのページ | リモートアクセスの表示 |
| 設定 | 下 | 設定のページ | 設定の変更 |
| アカウント | 下 | アカウントのページ。記号ではなくブランドの G で描かれる唯一の項目です。 | 実際のステーションでは常に。公開のデモではこの項目を出しません。 |

誰もサインインしていないときは、「未サインイン」のロールが決めます。工場出荷時のこのロールの権限は、ローカルユーザーの管理とリモートアクセス（LAN）以外のすべてなので、新規のステーションでは、管理者が [ロール](users-roles) でそのロールを絞るまで、すべての項目が描かれます。ロールの変更によって、今いるページの項目が描かれなくなったときは、シェルがまだ描いている最初の項目へ移します。

2 つの項目には印が付きます。

- **検証** は、修復が必要な項目の数（99 を超えると 99+）を注意のピルとして掲げ、設定に問題がない間は隠れます。これは検証器の背後での再スキャンに従うので、編集するそばから変わります。[検証](validation) を参照してください。
- **アカウント** は、ライセンスに注意が必要なときだけ感嘆符を掲げます。サブスクリプションの支払いが遅れているとき、14 日以内に終了するとき、終了する設定なのに終了日が分からないときは黄色、サブスクリプションが解約されたとき、またはライセンス枠を与えられるのにこのステーションが 1 つも持っていないときは赤です。印の付いた項目を押すと、ページの先頭ではなくサブスクリプションの節に着きます。[サブスクリプション](account-subscription) を参照してください。中立の「接続済み」の点はありません。

## ステータスバー {#status-bar}

バーは左から右へ、リリースの印で終わる各種の表示の組、伸び縮みする中央の操作ログ帯、そして右端にひとつだけ置かれた時計と読みます。1 秒ごとに更新されます。

### 各種の表示 {#the-indicators}

| 表示 | 何を読むか | 出る条件 | クリック |
|---|---|---|---|
| 無償モードの残り時間 | 数えている間は「無償 · 12:34」、尽きると「無償 · ランタイム停止中」、残りが分からない間は「無償」。ナビゲーションバーのアカウント項目の G が黄色で付きます。ツールチップは「無償モード：時間切れになるとランタイムが停止します。サインインするかライセンスを追加すると、制限がなくなります。 クリックするとアカウントが開きます。」 | ステーションにライセンスがないとき（[無償モードとライセンス](app-free-mode) を参照） | アカウント（開始画面に固定された機器では、伝えるだけです） |
| 稼働状態 | ナビゲーションバーの Connector のマークを Connector の稼働状態で色づけしたものと、Connector で始まる文字です。最も悪い機器は「Connector：*名前* が通信していません」（赤）または「Connector：*名前* が不安定です」（黄）。すべての機器が読めていれば「Connector：オンライン」（緑）、Connector 自身が動いていない間は「Connector：停止」（灰色）です。組み込みの OPC UA サーバーはここに含まれません。サーバーが停止している間も Connector は機器を読み、サーバーの状態は [状態](connector-opcua-server) にあります。ツールチップは「Connector の稼働状態（クリックで開く）」。 | 常に | Connector |
| 警報 | ベルと「警報：発生中 *n* 件（未確認 *m* 件）」で、記号と文字はその中で最も重い優先度の色になります（Logic のツリーとイベントが使うのと同じ尺度です）。ツールチップは「警報（クリックで警報の一覧を開く）」。 | 発生中の警報があるか、確認待ちの警報が残っているとき | イベントの「警報」 |
| 記録 | 「Process：記録中 *n* 件」、「Process：一時停止 *n* 件」、または「Process：記録中 *n* 件 · 一時停止 *m* 件」。ナビゲーションバーの Process のマークが緑で付き、一時停止した実行があると黄になります（各実行は状態ごとに 1 回だけ数えます。一時停止中の実行は記録中としては数えません。止まるのは時計だけで、データ収集は続きます）。ツールチップは「進行中の記録（クリックで Process を開く）」。 | 少なくとも 1 台のユニットが記録中または一時停止中のとき | Process |
| 新しいリリース | アクセントの色の矢印の字形と「更新があります」、重要な修正を含むと示されているリリースなら注意の色合いで「重要な修正を含む更新があります」です。バージョン番号は出しません。ツールチップは新しいバージョンを利用できることを伝え、すでにダウンロード済みかどうか（「ダウンロードは終わっており、次に Ganter Lab を再起動したときにインストールされます。」）を添え、「クリックすると設定の「更新」が開きます。」で終わります。 | より新しいリリースが取り込まれるのを待っていて、[設定の「更新」](settings-updates) で無視されていないとき。設定の変更を持つ身元にだけ描かれるので、離れたタブレットの操作員が自分のものでない決定を目にすることはありません。更新の配信元がないビルドでは描かれません | 設定の「更新」 |

どの表示も、それが語る領域のマークを付け、その言葉はその領域の名前で始まります。ですから、ひと目でステーションのどの部分が正常でどの部分がそうでないかが分かります。Connector と Process のマークはナビゲーションバーのものと同じで、残り時間にはアカウント項目の G が付き、警報はベルのままです。警報を押すと開くのは Logic ではなく、イベントの警報の一覧だからです。色はアプリのすべての状態の点と同じです。健全なら緑、低下中か起動中なら黄、故障かオフラインなら赤、中立なら灰色です。通知領域のアイコンも同じ Connector の稼働状態を示します（下記）。

### 操作ログ帯 {#the-action-feed}

バーの中央は、今おこなったことの結果が届く唯一の場所です。保存、削除、名前の変更、インポート、印刷、スキャン、警報の確認のいずれもここに届きます。状態を変えるすべてのコマンドは、うまくいったときも拒否されたときも、両方を報告します。

- 成功は 6 秒でひとりでに消えます。失敗は赤い印を残し、約 10 秒でひとりでに消えます。その前に次の結果に置き換わるか、**閉じる**（×）を押したときは、そこで消えます。Connector の機器、シリアル回線、MQTT ブローカーについての拒否（まだ足りない項目、またはステーションが受け付けなかった編集）は、この画面で同じ機器、回線、ブローカーのその後の保存が通った時点でも消えます。そのときページは保存されている内容をそのまま示しているからです。
- 文字は時計に向かって省略され、全文はツールチップで読めます。
- 1 つの記載には、その隣に **1 つだけ** 追いかけの操作が付くことがあります。たとえばダッシュボードのコンポーネントを削除したあとの **元に戻す** です。これは記載と生死をともにします。記載の期限、次の結果、閉じる操作、そして押すこと自体がそれを取り去るので、バーが、隣の文にもう答えない操作を出したままになることはありません。
- 帯は接続に属します。この画面が行ったことの結果をこの画面が示すのであって、どこかのブラウザーが行ったことは決して示しません。ステーション自身のウィンドウはそれに加えて、どの画面も頼んでいない仕事（自動のバックアップ、ひとりでに作られたレポート、ホストの失敗）も載せます。
- 唯一の例外は、ダッシュボードのコンポーネント（ボタン、トグル、入力）の中で押されたコマンドです。これはそのコンポーネントの下で答えます。全画面のダッシュボードがこのバーを隠しても、その面は残るからです。

ページが「保存しました」の点滅や独自の状態の行を持つことはありません。押したことへの返事を探しているなら、それはここにあります。

### 時計 {#the-clock}

**時計** は、[設定の「言語と形式」](settings-localization) で選んだ形式（たとえば `dd/MM/yyyy HH:mm:ss`）による地域の日付と時刻で、1 秒ごとに進みます。ツールチップは「設定：言語と形式」で、そこがこれらの形式を決める節です。

バーにはバージョンを出しません。今動いているバージョンは [この製品について](settings-about) と、[設定の「更新」](settings-updates) の見出しの下にあります。

### ランタイムが止まっている間 {#while-the-runtime-is-stopped}

何も読み取っていない間は、稼働状態、警報、記録を言い切ることができません。そこで各種の表示の組は、役に立つ場所へ導く 1 つのメッセージに変わります。「サインインすると無償で使える時間が延びます」または「ライセンスを追加すると制限がなくなります」（どちらもアカウントのページを開きます）、そして買うものが残っていないときは、ステーションのウィンドウでは「続けるにはランタイムを再起動してください」、ブラウザーでは「再起動は、Ganter Lab が動いているコンピューター、つまりステーションで行います。」です。残り時間は左端に残り、「無償 · ランタイム停止中」と読みます。

## ランタイム停止の帯と一時停止したページ {#the-stopped-runtime-band-and-the-paused-page}

無償モードの時間が尽きるとランタイムが止まり（[無償モードとライセンス](app-free-mode) を参照）、シェルはそれを一度だけ、どの経路でも、どの画面でも同じやり方で述べます。

- タイトルバーの下の帯です。**ランタイム停止中**、「データ収集、Logic、記録が一時停止しています。構成と記録済みの実行記録はそのまま残っています。」、そして **ランタイムを再起動** のボタンが 1 つ。このボタンはステーション自身のウィンドウにしかありません。ブラウザーはその場所に「再起動は、Ganter Lab が動いているコンピューター、つまりステーションで行います。」と読みます。無償モードの動作時間をネットワークから戻すことはできません。
- アカウント以外のすべてのページは、一時停止の案内に置き換わります。**この画面は一時停止しています**、「この画面はステーションを実時間で読み取りますが、ランタイムが停止している間は何も読み取れません。すでに正しくない値を映す代わりに、ここで待ちます。」、そしてステーションでは「再起動はすぐに行え、回数の制限もありません。指示した時点でランタイムは戻ります。」、それ以外の画面では「ステーションの操作者はいつでも、回数の制限なく再起動できます。この画面は自動で元に戻ります。」です。アカウントはページを保ちます。サインインやライセンスの追加こそが、制限を取り除くものだからです。
- 全画面のダッシュボードは全画面をやめます。帯とバーが画面に出るようにするためです。
- ステーションを変えるコマンドはすべて、同じ言葉「ランタイム停止中」で拒否されます。ツールバーでも、メニューでも、スナックバーのボタン（そのツールチップを付けて灰色になります）でも、エージェントの endpoint でも同じです。

再起動に失敗すると警告の通知が上がります。「ランタイムの再起動に失敗しました：ランタイムを完全には再起動できませんでした。イベントを確認してから、もう一度お試しください。」ボタンはもう一度試すために残ります。

## 文脈に沿ったヘルプ {#contextual-help}

ヘルプのキーは、ページの上にではなくページの隣に、右側のパネルを開きます。ページは動き続けるので、書かれていることを、それが説明している画面の上でそのまま実行できます。狭い画面（スマートフォンや縦向きのタブレット）では、パネルがウィンドウ全体を取ります。Escape でも、パネル自身の閉じるキーでも閉じ、焦点はヘルプのキーに戻ります。

パネルが示すのは、目の前にあるものについてのドキュメントのページです。決めるのは経路なので、Logic でパネルを開けばこのドキュメントの Logic のページが開きます。1 本の長い列として読むページ（設定、エージェント、アカウント）では、代わりに今巻き取っている節が決めるので、設定の「バックアップ」で開けばバックアップが開きます。別のページへ移ったときも、同じページの別の節へ移ったときも、前の記事を出したままにせず、今画面にあるものに対応するページを持ってきます。

パネルは、そのページの表題、要約、節の一覧、そして全文を載せます。ドキュメントのほかのページや節へのリンクはパネルの中で開きます。ドキュメントの外へ出るリンクは、ブラウザーで開きます。パネル自身の **ドキュメント全体を開く** のキーは、同じページを Web サイトで、同じ言語で、このステーションが動かしているバージョンのものとして開きます。ここでネットワークが要るのは、これだけです。

パネルの一番上、記事の上にある **ツアーを始める** は、プログラムのすべての領域を回るツアーを始め、各ページを開いて実際の操作部を指し示しますが、何も変更しません（[プログラムのツアー](tour) を参照）。ここから始めると、まずパネルが閉じ、吹き出しがウィンドウ全体を使えるようになります。このボタンは、バーがようこその項目を描く身元に、ステーションがそのページを残しているかどうかにかかわらず、どのページでも描かれます。パネルに表示できるヘルプがないときも残ります。ツアーが指し示すのは記事ではなく、ページだからです。

ドキュメントはアプリケーションと一緒にインストールされ、取りに行くものではありません。今動かしているバージョンの、ステーションの言語のドキュメントであり、インターネット接続がまったくなくても開きます。ネットワークのブラウザーも同じページをステーションから読むので、現場の画面がドキュメントなしになることはありません。パッケージが、動いているバージョンやステーションの言語のヘルプを持っていないときは、パネルはほかのものを開く代わりに、どのバージョンとどの言語を探したのかを述べ、同じ 1 行が [イベントの「コンソール」](events-console) にも書かれます。

## 通知 {#notifications}

### スナックバー {#snackbars}

割り込む知らせは、ページの上、右下に積まれ、新しいものが上に来ます。カードにはそれぞれ、重大さ（情報、警告、エラー）を表す色の帯、任意の表題、本文、必要なら操作のボタン、そして **閉じる**（×）が付きます。カードは、上げた側が期限を与えていない限り、そのまま残ります。ランタイムが止まっている間、ステーションを変えるカードのボタンは「ランタイム停止中」のツールチップとともに灰色になります。

これを上げるものには、たとえば次があります。

| カード | ボタン | 残り方 |
|---|---|---|
| 警報の発生（表題は警報の名前、本文はその発生時の文）。通知の種類が「ステータスバー」でないすべての警報について | **確認**（ほかの場所と同じ確認です）と **警報を開く**（イベントの警報の一覧） | そのまま残ります。「時限」の警報では 8 秒です。確認するか正常に戻ると閉じます。カードを閉じることは確認では **ありません**。 |
| 「無償モードの時間制限」：「ランタイムはあと約 *n* 分で停止します。サインインするかライセンスを追加すると、制限がなくなります。」 | なし | 12 秒 |
| 「ランタイム停止中」：「無償モードの時間制限に達したため、ランタイムが停止しました。サインインするかライセンスを追加すると制限がなくなります。ステーションでランタイムを再起動することもできます。」 | なし | ランタイムが戻るまで |
| 「サーバーを起動できませんでした」（組み込みの OPC UA サーバー。たいていはポートがすでに使われています） | **Connector を開く** | そのまま残ります |
| 「構成を復元しました」「警告付きで構成を復元しました」「構成の復元を延期しました」「構成の復元に失敗しました」。予約したバックアップの復元のあとに出ます | なし | そのまま残ります |
| 「エージェントアクセス（MCP）を起動できませんでした」「リモートのダッシュボードを利用できません」「Web のダッシュボードを起動できませんでした」 | なし | そのまま残ります |
| 「更新を延期しました」：記録の最中に、再起動して更新するよう指示されたとき | なし | そのまま残ります |
| ユニットのインターロックの作動、OPC UA のクライアントや設備が証明書の承認を待っているとき | それに答えるページを開くボタン | そのまま残ります |

スナックバーは割り込むもののためにあります。自分の操作の結果がカードになることはありません（上の操作ログ帯を参照）。

### Windows の通知 {#windows-notifications}

カードはウィンドウの中に出るので、ウィンドウが通知領域にしまわれているか最小化されている間は、同じ場面が Windows の通知も上げます。警報の発生（「*優先度* 優先度の警報：*名前*」）、インターロックの作動、無償モードの警告と停止、隠れたまま起動したときのサーバーや復元の失敗、そして初めてしまったときの 1 回だけの案内です。通知をクリックするとウィンドウが開き、そこにカードが待っています。これらの通知はインストールしたビルドにだけあります。持ち運びの版や開発中のコピーでは、ウィンドウの中のカードだけになります。

## クラッシュレポートの同意のダイアログ {#the-crash-consent-dialog}

Ganter Lab が予期せず終了していた場合、次にウィンドウを表示する起動で **クラッシュレポートを送信しますか？** がページの上に開きます（通知領域に隠れたままの起動は、次に表示される起動まで待ちます）。

- 「前回、Ganter Lab が予期せず終了しました。このレポートを送っていただくと修正に役立ちます。内容はエラーと、直近のログの短い抜粋です。送信する前に下でご確認ください。」
- **クラッシュの詳細**：送られる内容の全体で、**コピー** のボタン（押すとしばらく「コピーしました」になります）が付きます。内容は、取得した時刻、状況、アプリのバージョン、オペレーティングシステム、例外とそのスタック、そしてログの最後の 60 行から Windows のユーザー名とプロファイルの場所を取り除いたものです。ほかには何もステーションから出ません。
- **クラッシュレポートを常に自動で送信する**：これから先のクラッシュを、たずねずに送ることに同意します（[設定の「クラッシュレポート」](settings-crash-reports) と同じスイッチです）。ランタイムが止まっている間は、同意を保存できないため「ランタイム停止中」で灰色になります。
- **送信しない** は、取得したクラッシュを消すので、もう出てきません。**レポートを送信** は送信します。送信に失敗した場合はクラッシュを残し、次の起動でまたたずねます。ステーションがサインインしているときは、レポートはお使いの Ganter アカウントに結び付けられ、そうでないときは匿名で受け付けられます。

クラッシュは、送信されるか断られるまで、データフォルダーの下に `crash\pending-crash.json` として保存されます。

## 画面がステーションを見失ったとき {#when-the-screen-loses-the-station}

ページはステーションが実時間で配るので、画面がそれを見失うことがあります。接続が切れる、ステーションが再起動する、ページが障害に当たる、といった場合です。これらの画面に多く出会うのはネットワークのブラウザーですが、ステーション自身のウィンドウも同じ配られ方をするので、同じ画面を出すことがあります。

- **回線の通知バー。** 動いている画面の中で失敗したページは、下端に静かな帯を出します。「このページで問題が起きましたが、アプリは動き続けています。詳細はイベントのページにあります。」と **再読み込み**、そして閉じる印です。失われるものはなく、読み込み直せばつながり直します。
- **再接続のカード** は、接続が失われている間、画面全体を取ります。

| 状態 | 表題 | 何を述べ、何を出すか |
|---|---|---|
| 再接続中 | ステーションに再接続しています | 「この画面は Ganter Lab が動いているコンピューター、つまりステーションを実時間で読み取っていますが、接続が切れました。再接続は自動で行われ、構成と記録済みの実行記録はそのまま残っています。」進み具合は「*m* 回中 *n* 回目」で、待ちの間は「次は *s* 秒後」が付きます。 |
| 失敗 | ステーションが応答していません | 「この画面は何度か試したあと、再接続をやめました。ステーション（Ganter Lab が動いているコンピューター）で Ganter Lab が閉じられている可能性があります。ここで失われるものはありません。ステーションが応答すれば、画面はそのまま元に戻ります。」**もう一度試す** と **この画面を再読み込みする**。タブが隠れている間にあきらめた画面は、また見られた瞬間にもう一度試します。 |
| 保留 | この画面は保留されています | 「ステーションはこの画面をいったん脇に置き、表示していた内容をすべて保持しています。再開すると、元のままの状態で戻ります。」**再開** と **この画面を再読み込みする**。再開が通らなかったあとは「再開できませんでした。もう一度指示するか、画面を再読み込みしてください。」 |
| 拒否 | この画面は再読み込みが必要です | 「ステーションは再び応答していますが、この画面の内容はもう保持していないため、途中から続けることはできません。再読み込みすると実時間の表示に戻ります。構成と記録済みの実行記録はそのまま残っています。」**この画面を再読み込みする**。再読み込みは必ず利用者のクリックであり、画面が勝手に置き換わることはありません。 |

- **ウィンドウを配れなかったとき。** ステーション自身のウィンドウは、機械の内側のポートから配られます。そのポートを開けないとき（ほとんどの場合、Ganter Lab の 2 つ目のコピーがすでに動いています）、ウィンドウは白紙の代わりに自分で案内を描きます。**Ganter Lab は画面を開けませんでした**、「アプリは動いており、機器も読み取られ続けています。足りないのは画面です…」、そのポート、システムが報告した内容、ログのフォルダーです。5 秒ごとに試し、ポートが空けばひとりでに開きます。
- **見つかりません。** どのページにも一致しないアドレスは、枠の中に着きます。**この画面はこのステーションにはありません**、「そのアドレスに一致する画面はここにはありません。名前が変わったか、削除された可能性があります。」、そして **View へ移動** です。
- **見るにはサインインしてください。** リモートアクセス（LAN）を持たない身元のネットワークのブラウザーや、頼んだページを開けないロールのすべての画面は、ページの代わりにサインインのカードを受け取り（「ネットワークからこのステーションを見るには、サインインしてください。」または「このページを開くには、サインインしてください。」）、拒否された身元を名乗ります。サインインすると、頼んだページが描かれます。ステーション自身のウィンドウと、ステーションの機械の上のブラウザーが、リモートアクセスで制限されることはありません。

## 全画面と拡大表示 {#full-screen-and-expand}

View のダッシュボードと、Process のユニットのパネルや画面は、2 通りのやり方で枠を隠せます。どちらもダッシュボードのバーの末尾の組にあります。

| 操作 | ツールチップ | 何をするか |
|---|---|---|
| 拡大表示 | ウィンドウ全体を使います | タイトルバーとバーを隠し、ダッシュボードがウィンドウ全体を取ります。 |
| 全画面 | 全画面（F11） | 本物の全画面です。ステーションのウィンドウはモニター全体になり、ブラウザーは文書の全画面を要求します（断るブラウザーでも、枠は隠れます）。 |

どちらの操作も、ダッシュボードが開いていない間は灰色になり、ダッシュボードを編集している間は描かれません。編集中にどちらかへ入ると、何も言わずに編集が終わってしまうからです。どちらの方式でも下端にステータスバーが残るかどうかは、そのダッシュボード自身の設定です（[ダッシュボードの設定](view-settings) を参照）。2 つの方式は排他です。拡大表示のときに全画面を押すと、切り替えではなく格上げになります。

キー操作です。**F11** は全画面を入り切りします（編集中とフォルダーが開いている間は何もしません）。**Esc** は内側から順に抜けます。名前を変えている途中のフォルダー、次にナビゲーションの重ね表示、次に全画面、次に拡大表示です。ブラウザー自身の操作で全画面を抜けると、方式も一緒に抜けます。ダッシュボードの経路を離れると枠が戻り、ランタイムが止まると全画面を抜けて帯とバーが戻ります。グラフ自身の **全画面** のツールも、同じようにモニターを埋めます（[グラフ](view-charts) を参照）。その場合、Esc はまずグラフを閉じます。詳しくは [全画面](view-fullscreen) にあります。

## デスクトップの表示倍率 {#desktop-zoom}

ステーション自身のウィンドウでは、**Ctrl + マウスホイール** が面全体を、ブラウザーエンジン本来の刻み（1 段で 1.2 倍、25 % から 500 % まで）で拡大縮小し、**Ctrl + 0** で 100 % に戻ります。変更はすべて操作ログ帯で知らされ（「表示倍率：120%」）、その場でインストールごとに、データフォルダーの下の `window-placement.json` に保存されます（構成データベースには入らず、バックアップにも入りません）。[設定の「外観」](settings-appearance) が今の倍率を示し、元に戻します。ブラウザーは自分の表示倍率を持ちます。

## 通知領域 {#the-system-tray}

Ganter Lab は常に動いています。ウィンドウを閉じると隠れるだけで、組み込みサーバー、データ収集、記録は動き続けます（[設定の「起動」](settings-startup) で「閉じたあとも背後で動かし続ける」が切のときは別で、その場合は × で終了します）。通知領域のアイコンはブランドのタイルに稼働状態の点を添えたもので、Connector を映します。ステータスバーの稼働状態と同じ読みで同じ言葉を使い、オンラインなら緑、不安定なら黄、通信していなければ赤、停止なら灰色です。ツールチップは「Ganter Lab: *稼働状態*」で、ステータスバーの行と同じです。実行が記録している間は「（記録中）」が付きます（15 秒ごとに確認します）。[設定のブランド](settings-branding)でアイコンと名前を決めると、アイコンは同じ点を添えたステーションのアイコンになり、ツールチップとメニューの開く項目は Ganter Lab の代わりにステーションの名前を言います。

- 左クリックでウィンドウが開き、右クリックでメニューが開きます。**Ganter Lab を開く**、ステータスバーの稼働状態を示す読み取り専用の行（実行が記録している間は「（記録中）」が付きます）、そして **終了** です。メニューに開始や停止の操作はありません。誤ったクリックで、サーバーを読んでいるクライアントを落としてはならないからです。
- × で初めてウィンドウが隠れるとき、その前にアプリ自身の小さなウィンドウ **Ganter Lab は動作を続けています** がその上に開きます。サーバー、機器の読み取り、進行中の記録はそのまま続くこと、アイコンは時計の近くの通知領域に残り (Windows が隠しているときはタスクバーの ^ の矢印の中)、アイコンのメニューの **終了** でアプリが終わること、そして [設定の「起動」](settings-startup) の「閉じたあとも背後で動かし続ける」をオフにすると × で毎回終了することを伝えます。**背後で動かし続ける** が既定で (Enter、Esc、小さなウィンドウを閉じる操作でもこちらが選ばれます)、ウィンドウを隠します。**今すぐ終了する** はメニューと同じ終了で今回だけ終了するので、記録の最中なら先に確認を求め、切り替えはオンのままです。どちらを選んでも、このステーションで再び表示されることはありません。Windows の通知ではなくアプリ自身のウィンドウなので、アプリをどう起動したかに関係なく表示されます。
- **終了** は 1 つの手順ですべてを止めます。エージェントアクセス、Web のホスト、監視、Process のランタイム（実行記録は再開できるまま残ります）、組み込みサーバー、Logic のランタイム（保持している値は書き出されます）、イベントの記録、そしてホストです。記録の最中は、まずウィンドウが戻り、落ち着いた確認 **記録が進行中です** が出ます。「終了するとデータ収集が止まります。ここまでに記録した内容はすべて保存され、次に Ganter Lab を起動したときにそのまま開きますが、アプリを閉じている間は新しい記録は残りません。」**動かしたままにする** が既定で、**それでも終了する** が進めます。ダウンロード済みの更新は、この終了の途中でインストールされます。

## 枠がしないこと {#what-the-frame-does-not-do}

- 管理者でない人からユーザーのページを隠すことはありません。代わりに、ページ自身が案内を持ちます。
- 帯以外の場所でランタイムの再起動を出すことはなく、ブラウザーで出すこともありません。
- ほかの画面の操作の結果を示すことはなく、操作の結果をカードにすることもありません。
- ブラウザーからほかの画面のテーマを変えることはありません。ブラウザーで押したキーは、そのブラウザーにだけ効きます。
- ヘルプのパネルが記事を出すために Web サイトへ出ていくことはなく、別のバージョン向けに書かれたページを開くこともなく、インストールされたヘルプが持っていない言語のために英語に落ちることもありません。
- ヘルプのキー、報告のボタン、テーマのキー、チップ、バー、ステータスバーが枠の持つすべての操作部です。設定しているものに働きかける操作は、すべてそのもののページに属します（[ページの共通の作法](app-conventions) を参照）。
