スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 原因はアトムにあった | トップページ | 処理コードを追加しつつ »

ダイアログを作成中

今は、Mirror-DTC for Ubuntu Ver1.4.1の開発中で、今回の開発では、Windows版に続いてトランスポーターを追加する予定なので、ここ数日は、その関連開発を行っている。今日は、そのメインダイアログを実装していたのだが、例によって時間がかかる。

メインダイアログを構成する主な部品としては、Gtk::Label / Gtk::ListViewText / Gtk::Button / Gtk::Entryがあるのだが、それらとは別に、Gtk::ScrolledWindowとGtk::Fixedも使っている。

上記については、ネットを検索すれば色々と出てくる筈なのだが、一般的なGUI部品になるので、その使い方は、別段、難しいという事はない。

もっとも、ダイアログ上の配置については、数値指定しているので、一度で位置決めが上手く行くと言うことは、まず、無いので、そこで時間がかかる事になるし、例えば、ボタンを押した時に動作させる処理関数の登録についても、関数自体を作成する以外に、その関数をイベントと結びつける処理を記述する必要がある。

Windows版を開発しているVisualStudioでは、ダイアログの作成は、GUIを使って見た目通りに部品を配置しつつ、そのイベント関数の追加も、そのGUIから行えるのに対し、Ubuntu版の開発では、そういったGUIツールは使っていない分、ダイアログの開発は大変になるのだが、作者的には、既に、過去に幾つも、そういったダイアログは作成してきているので、そのコードをコピーして持ってきて、微変更すれば、新しいダイアログの作成も可能な状況ではある。

なので、今日も、そういった作業を行っていたのだが、少なくとも、作者製のUbuntu版ソフトの中では、リストを使っているモノは少ないので、今日、参考にした既存ソフトというのは、Mirror-DTCクライアントのUDP-Clientになった。

つまり、UDP-Clientダイアログでは、Gtk::ListViewTextを使っていたので、その使い方を参考にしていたのだが、UDP-Clientでは、これを使うに当たって、Gtk::ScrolledWindowも合わせて使っていたので、Transporterでも、同様の使い方をした。

と、言うことで、メインダイアログの見た目とイベント処理関数の枠組みは完成したのだが、まだ、実際の処理コードは実装できていないので、ダイアログの作成作業は明日も続くことになる。

ちなみに、Transporterでは、メインダイアログ以外に、起動直後に表示する設定ダイアログの作成も必要だ。

なので、その作成時には、また、時間がかかりそうなのだが、今日、それを合わせて作成しなかったのは、Ubuntu版では、設定する事になる詳細仕様を変更する可能性が大だからだ。

具体的には、転送対象とするデスクトップ上のウインドウの隠し方については、Windows版とは異なる形式にする可能性が高いので、まだ、その仕様を決定していない現時点では、設定ダイアログを作成しても、後で変更が入る可能性が高いので、今日の時点では、まだ、作成はしなかった訳だ。

と、言うことなので、Ubuntu版トランスポーターについては、まだ、詳細仕様は決定していないのだが、とりあえず、メインダイアログの枠組みは出来たので、順次、各種コードを動作させながら、詳細仕様は、追々、決めていく事になる筈だ。

もっとも、やる事は大してない筈なので、詳細仕様についても、2,3日中には決定している筈ではある。

« 原因はアトムにあった | トップページ | 処理コードを追加しつつ »

2019年11月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google