私はおもちゃのプロジェクトに取り組んでおり、人気のカード ゲーム Dominion のデスクトップ クライアントを実装しています。ncurses ライブラリを使用して、端末に UI を表示するのは面白いと思いました。
プレイヤーの手札、プレイしたカード、購入できるカードなどを表示する必要があります。これらを ncurses メニューとして表示し、画面上にインラインで配置することを想定しました。
私が理解できないのは、ユーザーにフォーカスを伝える方法です。例えば、
| | | |
| Copper | | >Adventurer< |
| Copper | | Chapel |
| Copper | | Moat |
| >Copper< | | Thief |
| Copper | | |
| | | |
| | | |
メニューが表示されている場合、入力されたメニューにはカーソルがアクティブになります (> < エントリで記号化されます)。ワークフローを構築できる 1 つの可視カーソルまたは特別なカーソルを使用して、一度に 1 つのメニューをアクティブにできるようにしたいと考えています。
これどうやってするの?最上位レベルでは、ユーザーが設定したロジックに基づいて選択できるように、画面にアイテムのリストを表示する必要があります。