1read 100read
2012年07月プログラム194: 【C++】マイナーGUIツールキット (670)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
■暗号技術【ROUNDsurea】■ (542)
36歳のオッサンがC言語を始めたいのだが・・・ (969)
<XML総合 part="3"/> (757)
Google App Engine for java (266)
プログラム板 自治スレッド Part5 (821)
MFC相談室 mfc22d.dll (304)
【C++】マイナーGUIツールキット
1 :03/10/09 〜 最終レス :2012/11/01 とにかくdat落ち必死なこの話題をどうかひとつ。 関連スレ: 【GUIライブラリ】wxWindowsでのひょーん http://pc2.2ch.net/test/read.cgi/tech/1052186697/
2 : Fox http://www.fox-toolkit.org/ SOL++ http://home.att.ne.jp/green/atlan/index.html たけのこ http://www5.plala.or.jp/antun/bamboo/shoot/index.html
3 : GUI Toolkit Framework Page http://www.geocities.com/SiliconValley/Vista/7184/guitool.html
4 : OpenAmulet http://www.openip.org/ Fltk http://www.fltk.org/ V http://www.objectcentral.com/vgui/vgui.htm
5 : An embedded Linux application environment. Chosen by IBM and Sharp. http://www.trolltech.com/products/qtopia/ 組み込み用Qt
6 : 人が来なくたってsage保守し続けるからな! ネタがないときは俺がサンプルコード書きまくるからな!
7 : 【Qtopia関連】 SLライブラリドキュメント http://more.sbc.co.jp/sl_j/doc/reference.htm Qtopia (パームトップ環境) ttp://www.trolltech.com/developer/download/qtopia.html Qt/Embedded (GUIツールキット) ttp://www.trolltech.com/developer/download/qt-embedded.html Qt Reference Documentation ttp://doc.trolltech.com/2.3/ Qt リファレンス翻訳 ttp://www.kde.gr.jp/~ichi/qtdoc-ja.html 【開発環境整備】 ZaurusZone Howtos ttp://www.zauruszone.com/howtos/ Unofficial Zaurus FAQ ttp://www.newbreedsoftware.com/zaurus-faq/ Zaurus Development Version of DemoLinux bootable CDROM (人柱募集中) ttp://www.pellicosystems.com/devolinux/zdevolinux/
8 : 【開発プロジェクト】 Zaurus-ja (日本語環境整備) http://zaurus-ja.sourceforge.jp/ Zaurus Open Source Development http://sourceforge.net/projects/zaurus/ OpenZaurus http://openzaurus.sourceforge.net/ Open Palmtop Integrated Environment (Opie) ttp://opie.handhelds.org/ GPE: The GPE Palmtop Environment ttp://gpe.handhelds.org/ Debian Zaurus ttp://people.debian.org/~mdz/zaurus/ 【ソフトウェア】 IpkgFind (バイナリパッケージ検索) ttp://ipkgfind.handhelds.org/ Zaurus Software Index ttp://killefiz.de/zaurus/ Konqueror/Embedded (Webブラウザ) ttp://www.konqueror.org/embedded.html 布目 for Qtopia 1.0 (日本語手書き入力) ttp://www.sikigami.com/nunome-Qtopia-1.0/ 【その他】 Zaurus.LovesLinux.com (ニュース) ttp://zaurus.loveslinux.com/ Linux Links (リンク集) ttp://www.linuxlinks.com/PDA/Zaurus/
9 : 知らんのもいくつかあるな。 是非続けてくれ。
10 : NTK http://ntk.yi.org/
11 : GUI Toolkits for The X Window System http://freshmeat.net/articles/view/928 X Development Tools http://cbbrowne.com/info/xlibs.html WindowMaker の GUI widget セット WINGs http://members.ozemail.com.au/~crn/wm/wings.html C++ じゃなくてスマソ。WINGs 単体で使えないかな。
12 : 期待age Non-GUI の、フレームワーク系ライブラリって混ぜちゃダメ? MUSCLE: Multi User Server Client Linkage Environment http://www.lcscanada.com/muscle/
13 : 皆様情報サンクストン 非C++、Non-GUIもщ(・д・)щバッチコイ!!
14 : JLIB - A C++ porting of java.awt.* http://codeproject.com/library/jlib.asp
15 : winBe: The BeOS API on Win32 http://homepage.ntlworld.com/nathaniel.cross/
16 : >>1 そろそろネタ切れだろ そろそろ話題振ってくれよ
17 : >>16 まぁ基本的に>>1 は脇役だからな! コード例とか追加情報が欲しいライブラリをリクエストしてくれると助かるな! そしたら>>1 が勝手に色々知らべてくるからな! 更に>>16 が理想のGUIライブラリなんかについて 語ってくれたりすると嬉しいかもな!
18 : ちなみに>>1 はboostのようなモダン設計のGUIライブラリを 探しているのだが、中々見付からないんだよな!
19 : >>18 MLで話題にはなっているみたい。 詳しくは見てないので、どなたか結論教えて〜。 [boost] GUI/GDI template library http://lists.boost.org/MailArchives/boost/msg49854.php
20 : >>19 Boost infoにも載ってたな! http://user.ecc.u-tokyo.ac.jp/~s31552/wp/boost/memo/ その後E. Gladyshevはサンプルコードを書いて、 (http://lists.boost.org/MailArchives/boost/msg50043.php) さらにそいつを↓のプロジェクトに発展させた模様だ! Notus http://sourceforge.net/projects/notus/ >Modern GUI/GDI template library. >Notus is an attempt to build a portable GUI framework >using design concepts of modern C++ libraries such as STL and boost. policyは今のところWin32とwxWindowsが用意されてるみたいだな! まだまだ発展途上だが、wxのモダンなラッパーとしても期待できるかもな! こいつは要チェックや!サンプルコードはしばし待て!
21 : GUI ツールキットのイベントループの実装を説明している資料って無いでしょうか。 コールバックの登録とか、イベントの通知とか。 fltk と fox のソースを試しに眺めてみましたが、select とか poll してるなぁー って感じで、いまいちよく分からなかった。。。 唯一見つけたのがこれです。 ttp://www.asahi-net.or.jp/~cv8t-hdk/fox/fox-doc.ja/faq.ja.html#CALLBACKS
22 : >>21 と絡むのかな?絡まないのかな? GUIからのイベントを捕まえるのに、大きく分けて ・リスナインタフェース登録型 ・コールバック関数登録型 ・IDディスパッチ型 ・派生してオーバーライド型 があると思う。 C++的には、どれが適しているんだろう? GCがないからハンドラの寿命を管理する必要があるんだが、 循環参照が生じやすいため、参照カウント法との相性が悪いのが気になっている。 イベントの送受信構成が動的に変わらないんだったら、 それほど問題にはならないかもしれないけど。
23 : >>22 ATL/WTL の「インタフェイス登録式+デフォルト実装提供式」は「使う側」にとっては 結構便利ですよ。なぜテンプレートベースかというと、標準実装においてインタフェイスに 出さない内部的な処理( 以下の例だと IUIAdonerImplWindowless::CreateFont ) を仮想関数 無しで置き換えられるのと、標準実装においては定義していないメンバ変数、メンバ関数も 利用して実装が書けるから( 同 IUIAdonerImplWindoid::GetWindow )。 以下は単純化した例。 class IUIAdoner { public: virtual font get_textFont(void) = 0; }; template class<T> class IUIAdonerImplWindowless { protected: font m_font; void CreateFont(font& f) { f = SysCreateFont(); }; public: IUIAdonerImpl() { T::CreateFont(m_font); } virtual font get_textFont(void) { return m_font; } }; template class<T> class IUIAdonerImplWindoid { public: IUIAdonerImplWindoid() {} virtual font get_textFont(void) { return SysGetWindowFont(T::GetWindow()); } };
24 : >>23 テンプレートうんぬんの部分は、 abstruct class と本質的に変わらないんじゃ? class IUIAdonerImplWindowless : public IUIAdoner { protected: virtual void CreateFont(font& f) { f = SysCreateFont(); } ... }; 効率性とか、コンストラクタで呼べるとかは抜きにして。 ATL/WTLの自己言及的テンプレートって、結局はvtableケチってるだけでしょ?
25 : >>24 vtbl だけじゃなくて abstruct class の個数が増えるのも嫌ってるんじゃない? IUIAdonerImplWindoid の方を abstruct class でやろうとすると、IWindow なんてのを使って、 T::GetWindow() のところで (dynamic_cast<IWindow*>(this))->GetWindow() とすることになる。 効率性とか記述性とか抜きにして本質を比べたら、UIイベントを特定のスレッドにシリアライズ するかしないか、くらいしか手法の違いって無くなっちゃうような。。。
26 : >>25 確かに記述性はいいね。 継承リストに、付け加えるだけで、オーバーライドの効果があるわけだし。 ただ、WTLの方法って、やっぱり最上位のラッパーなんだよな。 WTLの場合はWindowsコモンコントロールにあたる、 きちんとした下層ライブラリがあってこそ生きてくる。
27 : Chain of Responsibility. ttp://homepage.mac.com/mkino2/oop/chainOfResp/index.html ttp://www.kmonos.net/wlog/sub/cpp_cor.php
28 : >>21 私も探してみましたが、やはりまとまった資料は見当たらないですね… 各種ツールキットの実装に関する資料を一つ一つ巡るしかないかもです。
29 : FLTK っていつの間に UTF-8 サポートしたの? http://www.fltk.org/poll.php?r16
30 : サポートしてないから投票してるんじゃ?
31 : なる。excite about って言うくらいだからもう実装したのかと思ったよ。 今しばらく Xlib 直叩きが続きそう・・・。
32 : ていうかUnicodeサポートしてるGUIツールキットって何があるの?けっこうあるの?
33 : 有名どころでは Gtk+, Qt, Tcl/Tk がそう。FOX は次のメジャーアップデートでサポート 予定。FLTK も 2.0 からは UTF-8 にしたい
34 : ありゃ、途中で送信しちゃった。 FLTK も 2.0 からは UTF-8 にしたいという話は何度も出ている。アンオフィシャルで UTF-8 パッチもあるよ。
35 : wxWindows もだべ。
36 : Unicode サポートは要らないからマルチバイトサポートくらいはして欲しい。 下層ライブラリでせっかく用意されているのに、、、
37 : GUI部品図鑑 ttp://white.sakura.ne.jp/~rryu/gui-book/ 他にもGUI部品の解説サイトってありませんか?
38 : http://white.sakura.ne.jp/~rryu/gui-book/
39 : いいのないかねえ
40 : Windows ルックアンドフィールで、モダンなGUITKがあると、助かるが、 いろいろやろうと思ったときは、結局ATL/WTLに行き着いたりして。
41 : >>40 細かいことをやろうとすると、やっぱり生のWin32を使いたくなることも多いよな。 LinuxでQt/GTKなんかでGUIプログラミングしているひとは、生のXlibを叩きたくなることはあるんだろうか?
42 : >>41 Athena/Motifでは日常茶飯事だけど Qt/GTK+ではプロトコル拡張とかしない限りほぼない
43 : widestudioってどうですか?
44 : widestudioが一番簡単かも。VBやDelphiより簡単。 MLのメンバーにも初心者が多い。 ただしもっさりしていて、 メインウインドウの出ないソフトは起動できない。
45 : widestudioか。 個人的にちょっとした道具を作りたいという人には便利かもしれないが、 そのプログラムを不特定多数に使ってもらう、という段階で無理が生じる気がする。 結局、ランタイムが・・・。
46 : Windowsネイティヴで、 フリーで、 肥大してないコンパクトな大きさで、 いざとなればWin32API叩きもできて、 Windowsのユニコード版APIに対応してる やつってないかなあ。
47 : >>46 > いざとなればWin32API叩きもできて、 が、ウィンドウ関連のAPIだったら、 それこそ MFC/WTL くらいになってしまうと思うが…。 マルチプラットホームのツールキットって、ネイティブハンドルを公開しないものが多いし。
48 : というか、Win32APIはXのToolkitレベルの処理も含むんだよな。
49 : >>46 Windowsの直API叩きたいならWideStudio。 SetWindowLong/GetWindowLongでthisを渡してるシンプルな実装。 独自のウインドウ出しててもWINMAINマクロいじって メッセージポンプカスタマイズしてれば大丈夫。
50 : WideStudioおとしてみたけどUIがWinネイティヴじゃない感ありありなので萎え。 WTLのフリー版みたいなのがあればいいのになあ
51 : >>50 nmでシンボルを抽出すると、 「WinMain」は「プロジェクト名.o」の中にある。 ソースファイル名「プロジェクト名.cpp」の先頭の辺りに WinMainを実行するマクロがある。 #ifdef MSW WS_WINMAIN #endif このマクロの中身は、WIN32APIの入門書のサンプルにある メッセージポンプそのもの。イベントが起きたらGetWindowsLong でthisをとって、メッセージパッシング。 ネイティブ感ありあり。
52 : よくわかんない
53 : >>50 WTLってフリーじゃん? …と思ったけど、ATLがVC++にしか付いてこないのか。 それこそ >>49 の方法で簡易版CWindowImplつくって、その上でWTL使うとか。
54 : SWT なら、頑張れば C++に移植できそうな気がする。 SWTのソースを見るとネイティブのAPI叩きまくっているし。
55 : >>54 gcjでコンパイルしたSWTはg++(のC++)から操作できるよ。 Managed C++みたいな感じって言えばいいかな。
56 : >>33 Unicodeに対応してもIMEやXIMに対応しなきゃあんまり意味がない。。。
57 : >>56 対応してるよ。
58 : >>55 ほえー。興味有り。情報 Thanks。
59 : >>58 gcjについては、 Cygwinでの/usr/include/java以下を見てみるといいよ きっと萌えるから(w これはCNIっていうJNIの独自版みたいなやつで JavaをC++に自動でマップしてるヘッダ CNIとかgcjでのSWTとか詳しいことは以下を見てちょ ttp://page.freett.com/gikob/gcj/
60 : http://page.freett.com/gikob/gcj/
61 : SwingみたいなライトウエイトなGUIツールキットってないのかな。 まぁ需要なさげといえばそれまでなんだが。
62 : >>61 Fltk?
63 : >>61 Qt FOX
64 : あるのかtnx 今から調べてみるよ
65 : 全然ライトウエイトじゃなかったぞゴルァ
66 : FLTK = The Fast Light Toolkit
67 : いや、要するにSkinでLook&FeelをかえられるGUIツールキットがほしかったわけなんだが・・・
68 : >>67 http://themes.freshmeat.net/
69 : うーんさらにクロスプラットフォームという条件がつくんだが・・・ないかな
70 : ライトウエイトって、ネイティブGUIを使ってないという意味で、 動作が軽いっていう意味ではなかったはず。
71 : >>70 スタティックリンクしてもファイルサイズが小さい事が売りじゃなかった? 実際速いし。 スキンは次のバージョンかららしい。
72 : ttp://www.fltk.org/news.php?V230 > The FLTK Team has begun the next phase in the evolution of FLTK. > The 1.2 series will focus on adding UTF-8, print, basic style support, > custom cursor support, true alpha-blending of images, Quartz support > on OSX, and updating the menu widgets to the FLTK 2.0 implementation. > The new series will also include new widgets such as Fl_Combobox, > Fl_Dock, Fl_Image_Browser, Fl_Image_Display, Fl_Spinbox, Fl_Table, > Fl_Toolbar_Window, and Fl_View. XIM サポートしてくれたら嬉しいな。
73 : FLTKのXIMパッチってまだ入手できるの?
74 : http://www.fltk.org/news.php?V230
75 : Dat落ち回避age
76 : notusいいよね ttp://sourceforge.net/projects/notus
77 : >>76 たしかに notus のアプローチも面白いんだけど、 GUIの細かい構成は外部設定ファイルに追い出して、動的に構成するのが流行りっぽくね?
78 : >>77 たとえばツールで見た目つくって 実行時にライブラリ側で画面構築してもらうみたいな? それもお手軽でいいよね。 そういうアプローチのツールキットってなにかある?
79 : GTKをはじめとしていろいろあるだろ。
80 : gtkってgnome界隈で使う分にはいいけど 他のplatformに持っていくと浮いちゃうよね なんだかなー
81 : Windows 用のツールキットなら、CodeProject 。 jlib が最近のお気に入り。
82 : codeprojectって中途半端じゃね? 漢ならstringray
83 : さいきん話題ないな
84 : >>79 GTKみたいに大掛かりなものじゃなくて、 レイアウトファイルから情報を読み込んで、 あとはプログラム側で好きなようにウィジェットを作成していくようなものはありますか? XML とか YAML を使えばいいとは思うんだけど、 GUI を記述する標準スキーマみたいなものがあれば、それを使いたいのです。
85 : >GUI を記述する標準スキーマ そんなもん無い。 あえて上げるとすればhtml
86 : いちおう、XULがあるのか? Mozillaも漏れなく付いて来てしまうが。
87 : GLUIはまだでてないかな。 私のまわりではちらほら見ます。
88 : http://sourceforge.net/projects/notus
89 : WTL ・・・ ステキ!!
90 : Motif/UILだろやっぱ
91 : An introduction to using Fluid 8.5Megs 16 Minutes Running Time http://seriss.com/people/erco/fltk-videos/
92 : >>73 ↓のことを言ってるのか? http://sourceforge.net/project/showfiles.php?group_id=36627 放置プレイになってる。
93 : http://www.nigels.com/glt/glui/
94 : GUIツールキットはLGPLのやつばっかりだな。BSD系ってTkくらいか。
95 : >>94 Visual Basicでも使えたらよかったのにね
96 : >>73 >>92 http://www.oksid.ch/fltk-utf/ ここのfltk-utf8ならXIM使えるっぽいけど
97 : VBって特定のライセンスのライブラリ使えないの??
98 : >>94 LGPL だけど、スタティックリンクに関して例外を設けている事が多いね。
99 : >>53 遅レスだけどATLはC++BuilderXのフリー版にもついてくる。
100read 1read
1read 100read TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
C++でXML(主にxerces)やろう! (674)
Microsoft Silverlight その9 (379)
【モダン推奨】Perlについての質問箱 50箱目 (378)
Pythonのお勉強 Part47 (804)
雑談スレ 4 (778)
Pythonのお勉強 Part47 (804)
--log9.info------------------
【仙台】センダイガールズプロレスリングvol.7【女子】 (374)
九州のプロレス事情 ラウンド3 (465)
俺達の時代 第13部〜昭和を「生きた」最終世代 (925)
1972〜77年の新日本プロレス (406)
金本浩二!`ン付いてんのか!! (874)
川田利明の試合が糞な件 (250)
【盲目信者】三沢を殺したのはノアヲタ【垂直落下】 (474)
ノアヲタの特徴 (227)
【ブル北斗】90年代の全女Part12【アジャ豊田京子】 (450)
(´c_,` ) WWEのHHH選手が質問に答えるスレ48 (367)
戸井のスレ (849)
武藤全日はドラゴンゲートのまねごと (665)
魁!男塾はヤオ (666)
どインディ総合スレ2 (619)
プロレスリングWRE・7 (839)
1983〜85年の新日本プロレスPART2 (636)
--log55.com------------------
【ブラウザ版】itest.2ch.net【2ちゃんねる】
iOS広告ブロック総合スレ
iPhone 4sであと一年頑張るスレ Part33
iPad Pro 総合 Part21
迷惑メール part6
【VIDEO】動画再生プレイヤーアプリ Part2【MOVIE】
secure MSGってどうなの?
SoftBank iPhone7 Plus オンライン一択 part3