X Toolkit 教えてね。

このエントリーをはてなブックマークに追加
>>89
FAQも読めん奴にはどうせ使えんな。
http://gtkmm.sourceforge.net/docs/gtkmm-faq.html#AEN97

> Q: 継承や多態など C++ のおいしい部分は gtkmm でも使えるの?
>
> A: うん。gtkmm のオブジェクトはふつうの C++ オブジェクトで、
> GTK+ の継承モデルがそのまま C++ で実装されてる。ふつうの C++ クラスに
> できることはぜんぶ gtkmm ウィジェットにもできるよ。ただし、
> gtkmm のコード中で例外を投げるときは注意してね、これらの例外は
> C のコード中ではうまく伝わらないから。
91名無しさん@お腹いっぱい。:02/05/24 15:28
XWindowの、プログラミングの質問です。
XtoolkitでXIMを使いたいんですが、
イベントのプロシャージャでXmbLookupString()を使っても日本語が入ってきません。
それどころかkeysymまで入ってきません。
どうやったらIMが使えますか?
>>91
自分が何をどうしようとしているかもっと具体的に書いた方がいいんじゃない?
93名無しさん@お腹いっぱい。:02/05/24 15:56
具体的に書きます。XtにはAthenaでもMotifでも、元々日本語が入力できるウィジェットが
ついていると思いますが、私は自分でIMを使った入力を受け取りたいのです。
おそらくXt内部でIMの操作をしているため、イベントのプロシャージャが呼ばれた時点では
キーシンボルや入力された日本語の文字列などがXtに取られてしまっているのだと思います。
キーが入力された時、Xtを介さず直接呼ばれるようなコールバック関数を実装できれば
解決すると思うのですが、何かいい方法はないでしょうか?
9492:02/05/24 16:32
素の Xt では IM 使ってないし、Athena では XmbLookupString は使ってないよ。
X11R6.6 のソースの中では xterm が使っているみたい。みたところ処理の手順は

XOpenIM で IM を開く
XCreateIC で入力コンテクスト作成
XSetICFocus でフォーカスの設定
XmbLookupString で処理された文字列の所得

かなあ? やったことないけど。うまくいったらレポートしてくれ。俺も知りたい。藁
9589:02/05/24 18:15
>>90
ありがとう。
他言語のバインディングでもgtk+のOOって使えるのね。
9692:02/05/24 18:23
ちょっとやってみたらできたのでサンプルを張り付けておく。
X のプログラムはあんまりしたことないんで初歩的なとこで
突っ込みどころが多いかもしれんがそれはかんべんしてくれ。藁

H4sICNUD7jwAA3NhbXBsZWltLmMApVZtU9tGEP6Mf8UOGahMlMZ0+qEDgZnghNRTTGgdEk0pw5yl
lX3j853m7mSjBv579+5kW9QY6PSLLe3t7T779qxecZmKMkN4Z2zG1Y/j49arpSjZ33+bCD5cl/ak
1Vwanq4fDdzJ6APm5hFjzKrpI1fGKIQTt9Ix07CXMyGGLJ3caDSq1Cmaq2s4gu+wPUBjuJLhwgjV
FK2uDmD/p87tL53tGM4vz87g/rCV9Lpwy1O65CSHrdZM8Qx+ZTITOECBqf3GZabm0TeejdDCPIbE
XiguLWpIBUdpbzJmGYk/zugF9jCGE6UEMgl7Wbv1vQVg5tymY4jwzbGtCmyDE6bMIHx0ds6V5Xl1
QDKA5JNmw9+wGiqmsyixH7gpBKuieds5rrG4ly+6xLi1teX0+yrD96aSaQz/eu2WWhOqL3yK7cPg
YIC21z1VaWkiCryWDjWyyeEC1RmyGT5AdSlHm3E94uRSmifd3LfuH6SaLF9QDc3/SrPviWGZX51c
ng56f147R2R4UE1hgpWppk4wsMyWBoz/o3oD8HxZGTg6ggWUUCWKZTo8U2pSFqFfXTQxRMlCDbMa
UJsQkXOC5b3HsBuc0kNwVudg0Qy1sPbi856clHmO+vMMdS7UPOQeIC/Isc3pRoZax7A99GqgSA+c
4l9yuzbeSPHCZgB/riRutCcVcFmUFiq0L7DVpTybjcYaOk1ba3o77tin7Dl/oYbPOKyVYCfzZkPu
n7N8ouz4GbteZYPVp2KnO08GmGHOSmE3ei/lRKq5XKXwfjE2pAdTxmXkHpgeUTsGNqTn2dV1mIXE
vi+KrqL5uSWlorhJw7OzVc+YVYXAGQonSnp9osHpkga9ZGArgQZgj05ujH9xJ84t95OTWCKTMyZH
JRvhhVZp5G4Hcg2/HvvCEVlP7Ff2uUBJ4ARPmSWKjnYb8Jp3Y+g4gtvagt0QpYsvhnXOr7VMg/JD
iF3BjFkCIST1tEch1MQh6fUbbLZA2n6IwxtoO3LwT/XIrpXslHGBGYULigzXI0WLZ6yyVRk12lJL
2A8sGPAkn4gs+1+ZKNGxJVFGcv57ibrqORO+DMQiqyrUiOrWubuD1dGzIJuoIFNo5A8WTFkUSlOj
yAq8nRXepCuUQcoS+dgQwpoPMqfIHOUieAvQDiDYzJWGiFP+O4cQlfRtMJKkacZ0o83hXSOYN8ep
Kon5694D/vr1xrh2Oj/fAo1b83YdFma15IpftzeCDiH7rv4DmeB/Y2iiVVMst0UUvhiSLo2zxV7X
14yaMNSDitesGw0SLQrMuKWNOqYNAndhuBz916IHl7t+3YVV31j6q95sKvsN+yLdFzVxo4dTH1xd
wXo8/0NbBA7KwnYMS14vccXhwyeg7TMzoZz4j46VJIZTJgwuAlj/ImsQzFOOFnt6o82FQpMnPHv2
iWOJ0IuowU90fN/6B215Q6sLCwAA
9791:02/05/25 00:34
どうもありがとうございました。xtermのソースを読んでみたところ、
イベントの処理はコールバックでもプロシージャでもなく、
XtAppAddActions()で登録するアクションで行っていたんですね。
これは盲点でしたが、このソースを参考にしたところ私の方でもできました。
age
99名無しさん:02/10/10 22:24
Xの設定に関しては腐るほど本がでてるのに、プログラミング
に関してはほとんど見当たらないんですね。
大学生協に「X Windowで遊ぶ本」てのが売ってたYO!
http://www.amazon.co.jp/exec/obidos/ASIN/487593288X/
>>99
昔はイーパイ売ってたんだが、いまや素のXtやってるのはヲタだけ。
うちにも見なくなってホコリかぶってるのが数冊ある。
まぁねぇ。
そこそこポータビリティがある上に
てきとーに枯れてて、
しかも今や無料ソース付き。
本と格闘しながらグラフィック周りやGUIの作り方の基礎を勉強するには
結構いい題材だよねぇ

売ってる本は大きな本屋に行かないとなかなかないんだけど、
会社とか図書館とかなら結構あるとこにはまだあると思う。
結構古い本でも使えるのがいいところ。
いま働いてる会社の物置きロッカーの中も、手垢のついたその手の本が山積みになってるよ。
103山崎渉:03/01/15 13:28
(^^)
104名無しさん@お腹いっぱい。:03/01/20 01:11
cc -I/usr/X11R6/include -o hoge hoge.c -L/usr/X11R6/lib -lXt -lm
105山崎渉:03/04/17 12:33
(^^)
106あぼーん:あぼーん
あぼーん
107あぼーん:あぼーん
あぼーん
108あぼーん:あぼーん
あぼーん
109あぼーん:あぼーん
あぼーん
110あぼーん:あぼーん
あぼーん
まれにみる良スレであるにもかかわらず、
山崎6連発の屈辱は見るに耐えない。
したがってageる。
renice +19 sage
113名無しさん@お腹いっぱい。:03/09/28 15:37
わけあってXtでプログラムを組むことになったのですが、
タイトルバーや枠などが無いウィンドウを作るにはどうすればいいのでしょうか?
何かリソースに書くんでしょうか?
114名無しさん@お腹いっぱい。:03/10/02 16:12
>>113
もちろん。タイトルバーや枠の描画はウィンドウシステムの仕事だから、その
干渉を受けないためにはウィンドウのリソースにそう書かないとね。

自分もtoolkit勉強してきたけど、その総括としては、
Widgetの本体は、クラスソースファイルでこれはあらかじめコンパイルされ必要に
応じてクライアントプログラムに静的にリンクされる。 そしてインスタンスとして
実現されるWidgetの属性・個性を定義するのは、プロセスが動作するローカルホストの
メモリ上に確保されるインスタンスレコード構造体型の変数で、これのメモリ上の配置
と初期化は、イントリンシックス関数によって行われる。 そしてイントリンシックス関数
は必要に応じて、クライアントプラグラムに静的にリンクされたクラスソースファイル中の
あらかじめ初期化されてるクラスレコード構造体変数に登録されているメソッド関数を呼び出す。
そしてこのメソッド関数は、先に述べたローカルホストのメモリ上の対応するインスタンスレコード
構造体型変数の情報に基づきその挙動を決定する。 これであっているのかな。
Widgetのクラスソースライブラリ静的にリンクされるのか、動的にリンク可能なのかは分らないけど。
だいたい合ってるでしょ?
>>113
WMの干渉を受けないようにするにはウィンドゥに
OverrideRedirect属性をつければいい

実際にはXChangeWindowAttributesを使うか、Xtなら
overrideShellWidgetClassで新たにWidgetをつくるか。
116113:03/10/05 00:52
どうもありがとうございます。
デスクトップマスコットのようなものを作っているんですよ。
ある程度できたら公開してみますね。
117113:03/10/05 01:03
Xtのクラスは初めて見た時は驚きました。
構造体なのに関数を持っているんですからね。C++のクラスみたいです。

ところでXt用のクラスを集めているようなサイトってありませんでしょうか。
マルチカラム(テーブル)のウィジェットが欲しいんです。
こうですか!?わかりません!
121こっちも保守:04/05/05 23:18
122名無しさん@お腹いっぱい。:04/10/08 21:15:20
出来たか?
123名無しさん@お腹いっぱい。:04/10/09 16:22:33
こんなもん今更発掘してどうすんだ?
UNIXはXしかすがるものないから不幸だよね(w
124名無しさん@お腹いっぱい。:05/02/21 21:19:50
.NETスタイルのawt互換ライブラリ一緒に作りませんか?
awtじゃなくてxawでした。
126名無しさん@お腹いっぱい。:2005/08/25(木) 00:17:55
いまさらXaw の互換と言われてもなぁ
127名無しさん@お腹いっぱい。:2006/07/15(土) 18:59:42
、、、  ○/'ー´ヽ
、、.≡≡ (, `●´ )
、、≡≡〜( O┯O
、、≡ (☆)ヽ_/(★)
128名無しさん@お腹いっぱい。:2006/08/19(土) 15:36:29
dayomon Toolkit
129名無しさん@お腹いっぱい。:2006/08/21(月) 23:52:08
 
130名無しさん@お腹いっぱい:2009/10/21(水) 01:44:32
       
┳┻| 
┻┳| 
┳┻|ヘ_∧ 
┻┳| _Φ) 
┳┻|⊂ノ 
┻┳|J 
¨¨¨¨¨¨¨
131名無しさん@お腹いっぱい。:2010/02/23(火) 13:09:42
なつかしい
なにもかも
132名無しさん@お腹いっぱい。:2010/03/22(月) 12:06:53
            _
        r-、' ´   `ヽr-、
       ィ7 /l: ハヽハ トヾ    駄スレを沈めることはこの俺が許さん!
        '|l |'´_` ´_ `| ||    信念に基づいて行動する。
        | |´ヒ}   ヒ}`! l|   それを人は正義と言う。
   __ノ゙). 从 l,  _'_.  |从   今俺が行ってることは保守ではない、
 ,_'(_ ノ_ヽ ヾl.> - ,イ;リ    正義という名の粛清だぁ!
 { f:テ} {'f:テ}',/\ヽ--//ヽ    
 ヽ,r─‐ 、ィ .、、 i l>Y<! i '、    バーニング!
 / iゝ_ノ iヽ /l   |l  l   ',
 lンヽ/ムノじ
133名無しさん@お腹いっぱい。:2011/09/21(水) 17:58:03.71
Xのツールキットオプションの -geometry で、
-geometry 200x100-0-0 (画面右下)
みたいに画面の端からの相対座標で指定することは出来ますが、
そうじゃなくて、画面の中央からの相対座標で指定するオプションはありませんか?

今は、画面のXY解像度を取得してそれを2で割って中央座標を計算してとか
しなければなりませんが、もっと簡単に、画面の中央座標を1発で指定したいのです。
134名無しさん@お腹いっぱい。:2012/07/15(日) 14:17:53.53
今月はじめ、職場に新しいPC(Core i7の結構ハイエンド構成)が入りました。
多分私が運用保守をまかされそうな雰囲気です。業務的にとある構造分析や
シミュレーションなど行う必要があり、X Window System上のアプリケーションを
使用するのは聞いていたのですが、OSを起動して黒いバックに白い文字だけの
英語の画面に表示されていたのはlogin:というプロンプトでした。

「うへぇ〜、よりによってxinit方式かよ」

CUIログインなんて古い、コマンド入力なんて古い、今の奴は日本語入力設定大丈夫
なのか(XMODIFIERS)、今時のマルチシート環境に対応できるのか不安はつきませんし、
xinitユーザーが少ないのでネット上の情報も少なく調べるのも大変です。
おそらく導入に際して、大学など教育機関で最初にxinitに触れて刷りこまれた人間が
強気の知ったかぶりをして発言権を得て「俺流」をつらぬき紛れ込ませたのでしょう。

昔、当時、X11で唯一$HOME/.xinitrcを手書きするというCUI的方法で環境設定できた
xinit方式は大学など教育機関に浸透していて、日本のX11界に多くのバカが輩出しました。

これから私は、おそらくそういうバカが、GNOME/KDEはどうやって起動するのか、
ウィンドウマネージャを終了したらXごと落ちたとか、ck-xinit-sessionはないのか
などと、X11通気取りの偏ったどうでもいい我侭を言い出し(だからxinit方式にするん
じゃねーよ)それと戦わなければならないのでしょう。そして時代によって
決着している、過去25年のX11界隈のくだらないそれらの議論が再現され、
それに巻き込まれるのでしょう。もう今からうんざりです。

だからお願いです。教育現場ではgdmでもkdmでもwdmでも
xdmでもなんでもいいですがグラフィカルなディスプレイマネージャにしてください。

教育機関で懐古趣味のバカを量産されると現場が非常に苦労するのです。
135名無しさん@お腹いっぱい。:2012/07/15(日) 22:37:07.28
もうそのコピペいいよ。
136名無しさん@お腹いっぱい。:2012/08/17(金) 21:36:08.95
UNIX+Xでは持て余すGPU資源を、

(1) 装飾以外で活用する→有意義
(2) Xやデスクトップの装飾/イルミネーションで活用する→無意味つーかバカ氏んでほしい
(3) 携帯端末のUIで活用する→有意義
137名無しさん@お腹いっぱい。:2013/09/28(土) 22:17:30.44
X Toolkit 教えてね。
138名無しさん@お腹いっぱい。:2013/09/30(月) 21:10:06.80
firefoxってgtkだよね。
なのにlibXtともリンクしてるんだが、
libXtを何に使ってるの? (XawやMotifじゃあるまいし)
少なくともXのリソース(.Xdefaultsとか)を読んだりはしていないみたいだが。
139名無しさん@お腹いっぱい。
Xの設定でキーボードを日本語にすると繋がらなくなるのがわかんねぇ。
ユーザーでキーボード変更した時点で落ちる→root以外の全一般ユーザーが繋がらなくなる→rootでキーボード変更→rootでも繋がらなくなる。
ここでわからんのが、ユーザー別の設定で不具合が起こってるなら、キーボードを変更したユーザーだけが繋がらなくなると思うんだが、他のユーザーも繋がらなくなるんだよなぁ。
だからと言ってrootは繋がるから、システム全体に不具合が起こってるわけでもなさそうだし。
キーマップのファイルはちゃんと置いてあると思う。