X Toolkit 教えてね。
1名無しさん@お腹いっぱい。
NGNG いや、ほんと。
21
NGNG 一生懸勉強したけど、わかんないんだ。
widgetは、オブジェクト思考なんだろ? そんで、継承とかするんだ。
widgetの使い方は、わかるんだけど、widgetの本質がいまいち分かんないんだ。
既存のwidgetを使わずに、新しいwidgetをつくるには、どうすればいいんだよ。
widgetは、オブジェクト思考なんだろ? そんで、継承とかするんだ。
widgetの使い方は、わかるんだけど、widgetの本質がいまいち分かんないんだ。
既存のwidgetを使わずに、新しいwidgetをつくるには、どうすればいいんだよ。
33
NGNG xli
43
NGNG ミスった
xlib
xlib
5名無しさん@Emacs
NGNG XFree86 から xclock あたりのソースをひっぱってきて真似しろ。
新しい widget (たとえば Giko) を作るには、基本的には
・ export 用に Giko.h をつくって定数を定義。
・ 内部用に GikoP.h をつくって構造体を定義。
・ Giko.c にresource定義とコールバックを書いてできあがり。
そんなにむずかしくない。とにかく最初は人のソースを見よう見まねでやれば
いい。Xt 自身のソースもわりとわかりやすいぞ。
でもなんでいまさら Xt?
新しい widget (たとえば Giko) を作るには、基本的には
・ export 用に Giko.h をつくって定数を定義。
・ 内部用に GikoP.h をつくって構造体を定義。
・ Giko.c にresource定義とコールバックを書いてできあがり。
そんなにむずかしくない。とにかく最初は人のソースを見よう見まねでやれば
いい。Xt 自身のソースもわりとわかりやすいぞ。
でもなんでいまさら Xt?
6名無しさん@お腹いっぱい。
NGNG Widget の諸機能は基本的な Widget の構造に依存するので、
既存の Widget を全く使わずに作るのは無理。
枠組みごと作るなら別だが。
Xt の場合、一般的には子を持たない Widget は Core を、
子を持つ Widget は Composite か Constraint を継承して
作る。基本的は >>5 が言ってくれてるとおりだ。
Xaw ってサンプルもあるんだから実際のコード読んでみるべし。
しかしたしかになんでいまさら Xt?
既存の Widget を全く使わずに作るのは無理。
枠組みごと作るなら別だが。
Xt の場合、一般的には子を持たない Widget は Core を、
子を持つ Widget は Composite か Constraint を継承して
作る。基本的は >>5 が言ってくれてるとおりだ。
Xaw ってサンプルもあるんだから実際のコード読んでみるべし。
しかしたしかになんでいまさら Xt?
71
NGNG81
NGNG >>5
そんで、質問の続きなんだけどよお、 widgetのクラスを作るには、
3つのファイルが必要なのは分かった。 けど、widgetってインスタンス
として画面上に実現されたら、当然グラフィカルなLooK&Feelを持つわけじゃん?
その複雑な性質はどうやって記述するの? 構造体を作って、メンバにデータを入力
するだけじゃ出来ないでしょ? widget自身の画像や、その動作はどうやって記述す
るんだ? もし、C言語で書くんなら、Xlib使って書くのか? 例えば、widgetのルックス
を記録したビットマップを何枚か容易しといて、特定のイベントは発生したら、あらかじめ
用意しておいた何枚かのビットマップを交互に表示することで、widgetの動作を実現したり
してるわけ? そんで、それを記述してるのが、3つのヘッダファイルのうちの、拡張子が
c のファイルなのか?
そんで、質問の続きなんだけどよお、 widgetのクラスを作るには、
3つのファイルが必要なのは分かった。 けど、widgetってインスタンス
として画面上に実現されたら、当然グラフィカルなLooK&Feelを持つわけじゃん?
その複雑な性質はどうやって記述するの? 構造体を作って、メンバにデータを入力
するだけじゃ出来ないでしょ? widget自身の画像や、その動作はどうやって記述す
るんだ? もし、C言語で書くんなら、Xlib使って書くのか? 例えば、widgetのルックス
を記録したビットマップを何枚か容易しといて、特定のイベントは発生したら、あらかじめ
用意しておいた何枚かのビットマップを交互に表示することで、widgetの動作を実現したり
してるわけ? そんで、それを記述してるのが、3つのヘッダファイルのうちの、拡張子が
c のファイルなのか?
NGNG
NGNG
NGNG
>>8
Xt は基本的に描画周りはいじらんのよ。
X Toolkit Intrinsics っていう名前が示すとおり、
どっちかといえば Toolkit を作るためのメタクラスの
集まりなんだね。
Look & Feel な部分は、Xaw とか Motif みたいな Widget Set
のほうで Xt の Widget Class から派生させて実装するんだが、
それは Xlib とかのプリミティブな描画関数でガリガリ書いてるわけさ。
Xt は基本的に描画周りはいじらんのよ。
X Toolkit Intrinsics っていう名前が示すとおり、
どっちかといえば Toolkit を作るためのメタクラスの
集まりなんだね。
Look & Feel な部分は、Xaw とか Motif みたいな Widget Set
のほうで Xt の Widget Class から派生させて実装するんだが、
それは Xlib とかのプリミティブな描画関数でガリガリ書いてるわけさ。
121
NGNG >>10
やっぱ、喋り方でばれちゃうね、えへ。
やっぱ、喋り方でばれちゃうね、えへ。
NGNG
>>7
> オレは、勉教も何事も、低レベルに拘るの。
> 例えば、微分積分を勉強したときは、表面的な知識に囚われず、実数の公理からみっちり
Xtなんて全然高レベルだと思うんですが...
というつっこみは無しですか?
ひょっとして、物理/数学 -> 電気/機械 -> (略) -> Xtって
今まさにたどりついたところ?
カコイイ..
> オレは、勉教も何事も、低レベルに拘るの。
> 例えば、微分積分を勉強したときは、表面的な知識に囚われず、実数の公理からみっちり
Xtなんて全然高レベルだと思うんですが...
というつっこみは無しですか?
ひょっとして、物理/数学 -> 電気/機械 -> (略) -> Xtって
今まさにたどりついたところ?
カコイイ..
141
NGNG >>11
ほう、なるほど。 やっぱ、ボタンとかスクロールバーの、イベント発生時の
挙動(例えばボタンがへこんだり)ってのは、Xlib使って書くわけだ。
ってことは、1つ1つのwidgetは、ウィンドウか、ウィンドウの集合体に、統一的な
デザインのビットマップを貼りつけたものに過ぎない訳だろ? んじゃあ、オレにも
作れそうだな。
ほう、なるほど。 やっぱ、ボタンとかスクロールバーの、イベント発生時の
挙動(例えばボタンがへこんだり)ってのは、Xlib使って書くわけだ。
ってことは、1つ1つのwidgetは、ウィンドウか、ウィンドウの集合体に、統一的な
デザインのビットマップを貼りつけたものに過ぎない訳だろ? んじゃあ、オレにも
作れそうだな。
151
NGNG >>13
>Xtなんて全然高レベル、、、、
まあ、高レベルなのは分かるよ。 けど、Xlib使っても美しくないもんね。
ほんとなら、アセンブリ使ってX-Windowのプログラム作りたいんだけど、
どう考えても、不可能に近いので、Xlibつかってんだよ。 けど、それじゃあ
美しいインターフェースが作れないから、しかたなくXtoolkitに手を出したわけだ。
けど、オレは、XlibとかXtoolkitを使ってプログラム作ってる時でも、常に低レベル
を頭の中で意識する。 たとえば、頭の中でアセンブリ言語に直してみたり、CPUやメモリ
内部での、MOS−FETの動作までも想像する。
>Xtなんて全然高レベル、、、、
まあ、高レベルなのは分かるよ。 けど、Xlib使っても美しくないもんね。
ほんとなら、アセンブリ使ってX-Windowのプログラム作りたいんだけど、
どう考えても、不可能に近いので、Xlibつかってんだよ。 けど、それじゃあ
美しいインターフェースが作れないから、しかたなくXtoolkitに手を出したわけだ。
けど、オレは、XlibとかXtoolkitを使ってプログラム作ってる時でも、常に低レベル
を頭の中で意識する。 たとえば、頭の中でアセンブリ言語に直してみたり、CPUやメモリ
内部での、MOS−FETの動作までも想像する。
NGNG
XtVaCreateManagedWidghtさげ
185
NGNG なんか何がやりたいんだかわからない、ネタくさい 1 だなあ…まあいい。
>>11 もいっているとおり、Xt はたんなる枠組みを提供するにすぎないよ。
実際のプログラミングはわりと低レベルだな。ピクセル座標を
もろにいじらなきゃなんない。まあ、そういうのが好きなら楽しいかもしれない。
直 Xlib に比べて楽なのは、イベントハンドリングだな。
これについてはあまり考えなくてもいいようになってる。
だから Xaw だけで間に合うようなプログラムを作っているかぎりは、
ある程度エレガントにできる。ただしリアルタイムで状態を
変化させようとか、ルートウインドウに文字を書こうとかすると
途端にエレガントじゃなくなるな。
>>11 もいっているとおり、Xt はたんなる枠組みを提供するにすぎないよ。
実際のプログラミングはわりと低レベルだな。ピクセル座標を
もろにいじらなきゃなんない。まあ、そういうのが好きなら楽しいかもしれない。
直 Xlib に比べて楽なのは、イベントハンドリングだな。
これについてはあまり考えなくてもいいようになってる。
だから Xaw だけで間に合うようなプログラムを作っているかぎりは、
ある程度エレガントにできる。ただしリアルタイムで状態を
変化させようとか、ルートウインドウに文字を書こうとかすると
途端にエレガントじゃなくなるな。
191
NGNG206
NGNG おろ、伸びてるや。
>>19
それはかなり違うとおもう(苦笑)>メソッドとオブジェクト
Xt-Intrinsic は、Cでオブジェクト指向するための仕組みと、
それからいくつかのWindowプログラミングに必要な基底クラスを
提供してくれてるのだ。
Cでオブジェクト指向的なプログラミングをするには、ポインタを
駆使しまくって、いろいろがんばる必要があるんだけど、Xt は、
X からのイベントの基本的な流れを処理してくれる仕組みを一通り
準備してあって、きめられた構造体にきめられた手順で関数を
くみこんでいくだけで、それを必要に応じて自動的に呼び出して
くれるようになっている。継承までサポートだ。それから、
ショートカット処理とかイベント変換とかタイマ処理とかコールバック
処理とか、そういった基本的なウインドウプログラミングの技術も
一通り組みあがったものが入ってる。
でもそこまで。Xtは、スクロールバーも画像表示してくれるものも、
テキスト表示してくれるラベルも無い。本当に裸の最低限の Widgetのみなわけ。
とういうことで、Widget Set をつくって足さないと実用にはならんってことね。
WidgetSet はけっきょくそれぞれの独自仕様組み込んでつくられるのが
通例なので、「いろいろ入れかえる」なんて器用なことは現実には無理だよん。
Xaw3D が一応 Xaw 互換をうたってるけど、作った人が互換性の保ち方を
知らなかったのか、作り方おもいきり間違えてるので、実は
互換性が無い。
組み込みとか配置とかそういった基本的な部分は Xt の
範疇だから、そのレベルだと互換性はあるので「混ぜて使う」ってのは
できるけどねん。
>>19
それはかなり違うとおもう(苦笑)>メソッドとオブジェクト
Xt-Intrinsic は、Cでオブジェクト指向するための仕組みと、
それからいくつかのWindowプログラミングに必要な基底クラスを
提供してくれてるのだ。
Cでオブジェクト指向的なプログラミングをするには、ポインタを
駆使しまくって、いろいろがんばる必要があるんだけど、Xt は、
X からのイベントの基本的な流れを処理してくれる仕組みを一通り
準備してあって、きめられた構造体にきめられた手順で関数を
くみこんでいくだけで、それを必要に応じて自動的に呼び出して
くれるようになっている。継承までサポートだ。それから、
ショートカット処理とかイベント変換とかタイマ処理とかコールバック
処理とか、そういった基本的なウインドウプログラミングの技術も
一通り組みあがったものが入ってる。
でもそこまで。Xtは、スクロールバーも画像表示してくれるものも、
テキスト表示してくれるラベルも無い。本当に裸の最低限の Widgetのみなわけ。
とういうことで、Widget Set をつくって足さないと実用にはならんってことね。
WidgetSet はけっきょくそれぞれの独自仕様組み込んでつくられるのが
通例なので、「いろいろ入れかえる」なんて器用なことは現実には無理だよん。
Xaw3D が一応 Xaw 互換をうたってるけど、作った人が互換性の保ち方を
知らなかったのか、作り方おもいきり間違えてるので、実は
互換性が無い。
組み込みとか配置とかそういった基本的な部分は Xt の
範疇だから、そのレベルだと互換性はあるので「混ぜて使う」ってのは
できるけどねん。
NGNG
正直、低レベルということを言うためにアセンブラと
言ってしまう時点で「Xの基本からやり直せ」と
煽ってしまいたくなるのは私だけ?
言ってしまう時点で「Xの基本からやり直せ」と
煽ってしまいたくなるのは私だけ?
NGNG
「メソッドと、オブジェクトの関係」でかなり萎えたね。
>>1 よ、元気なのはいいんだが、あまり思いつきの
質問はするなよ。自分がちゃんと考えてから質問して、
相手の答えから学ぶ能力があるということを示さなきゃ。
でないと答えるほうも疲れるし、いずれ相手にされなくなるぞ。
>>1 よ、元気なのはいいんだが、あまり思いつきの
質問はするなよ。自分がちゃんと考えてから質問して、
相手の答えから学ぶ能力があるということを示さなきゃ。
でないと答えるほうも疲れるし、いずれ相手にされなくなるぞ。
23名無しさん@お腹いっぱい。
NGNG PerlTkとかTcl/Tkで手っ取り早く動かすのが楽。
NGNG
X Window Systemってのもまた、Unix系文化の象徴的な存在だよなぁ。
いつまでたってもプリミティブ部分しか無いから、似たような物(ここ
ではToolkit)がいくつも作られては消えると。
まぁ「選択の自由がある」と言えば聞こえはいいけど、「単に統一性が
無い」とも言えるし。元々QTにライセンス問題があったとは言え、今の
「GNOME/KDEの2大勢力とその他」みたいな状態もなんだかなー。
どっちでもいいから1つに絞れよって感じ。
って事で俺は(Toolkitが何であっても)X上でGUIのプログラムは書く気に
ならんし、X自体がどうにかならん限り、GUIとしてWindows並かそれ以上
の存在にはなれんだろ、とか思ってたりするんだけどどうか。
いつまでたってもプリミティブ部分しか無いから、似たような物(ここ
ではToolkit)がいくつも作られては消えると。
まぁ「選択の自由がある」と言えば聞こえはいいけど、「単に統一性が
無い」とも言えるし。元々QTにライセンス問題があったとは言え、今の
「GNOME/KDEの2大勢力とその他」みたいな状態もなんだかなー。
どっちでもいいから1つに絞れよって感じ。
って事で俺は(Toolkitが何であっても)X上でGUIのプログラムは書く気に
ならんし、X自体がどうにかならん限り、GUIとしてWindows並かそれ以上
の存在にはなれんだろ、とか思ってたりするんだけどどうか。
25名無しさん@Emacs
NGNG >>24
正直同意だね。標準化したってのは偉いと思うけど。
> って事で俺は(Toolkitが何であっても)X上でGUIのプログラムは書く気に
> ならんし、X自体がどうにかならん限り、GUIとしてWindows並かそれ以上
> の存在にはなれんだろ、とか思ってたりするんだけどどうか。
Xもそうだし、いーかげん C で全てをやるのにも無理がでてきた
(とくに Xt なんか見てると「よくがんばったね、でも…」と言いたくなる)。
どっかの団体がドカンと標準を普及させてくれればいいとは思ってるものの、
フリーでやってる連中にそんなおカネはないし、
いまのUNIXベンダはどこも元気なさそうだし。もうしばらくは
このままずるずるとマイナーOSの道を行くんじゃないかな。
MacOSX for 86 とかが出れくれれば、案外 Cocoa + ObjC とか
普及するかもしれないよ? でもApple があの調子じゃなあ。。。
正直同意だね。標準化したってのは偉いと思うけど。
> って事で俺は(Toolkitが何であっても)X上でGUIのプログラムは書く気に
> ならんし、X自体がどうにかならん限り、GUIとしてWindows並かそれ以上
> の存在にはなれんだろ、とか思ってたりするんだけどどうか。
Xもそうだし、いーかげん C で全てをやるのにも無理がでてきた
(とくに Xt なんか見てると「よくがんばったね、でも…」と言いたくなる)。
どっかの団体がドカンと標準を普及させてくれればいいとは思ってるものの、
フリーでやってる連中にそんなおカネはないし、
いまのUNIXベンダはどこも元気なさそうだし。もうしばらくは
このままずるずるとマイナーOSの道を行くんじゃないかな。
MacOSX for 86 とかが出れくれれば、案外 Cocoa + ObjC とか
普及するかもしれないよ? でもApple があの調子じゃなあ。。。
NGNG
>>25
GNUstepは?
GNUstepは?
NGNG
>>20
「ポリシーは提供せず、メカニズムのみ提供する」
「ポリシーは提供せず、メカニズムのみ提供する」
NGNG
> Xaw3D が一応 Xaw 互換をうたってるけど、作った人が互換性の保ち方を
> 知らなかったのか、作り方おもいきり間違えてるので、実は
> 互換性が無い。
あれはしょうがないんじゃないかな?
instance record の互換性を崩さずに拡張データを持たせようと思うと
めんどくさいことになるんだよね。class record の方は extension で
なんとかならなくもないのだが。
現在のオブジェクト指向の語法を知ってると、
Xt のデザインはすごくもどかしい。
結局、構造体を並べるという静的なクラス継承を用いて、
インターフェースだけではなく実装の方も拡張しようとしてしまう方法の
限界なんだよね。
今のオブジェクト指向の考え方だと「あまりうまくない」ってことになる。
まあそれは結果論だが。
結局、Interviews に期待しろってこった<大嘘
> 知らなかったのか、作り方おもいきり間違えてるので、実は
> 互換性が無い。
あれはしょうがないんじゃないかな?
instance record の互換性を崩さずに拡張データを持たせようと思うと
めんどくさいことになるんだよね。class record の方は extension で
なんとかならなくもないのだが。
現在のオブジェクト指向の語法を知ってると、
Xt のデザインはすごくもどかしい。
結局、構造体を並べるという静的なクラス継承を用いて、
インターフェースだけではなく実装の方も拡張しようとしてしまう方法の
限界なんだよね。
今のオブジェクト指向の考え方だと「あまりうまくない」ってことになる。
まあそれは結果論だが。
結局、Interviews に期待しろってこった<大嘘
2928
NGNG > 結局、Interviews に期待しろってこった<大嘘
それでですな、Interviews はその辺をどう解決してるかというと、
MVC モデルになるわけですな。
View と Control を分離したクラスにして、
この 2 つを動的にバインドできれば、
あるいはもうちょっとまともだったかもねん。
でも、結局さぁ、Xaw3D の非互換性が問題になるのって、
アプリケーションが独自にウィジェット拡張してる時だけだし、
MVC にしたとしても View の方で結局同じ問題が起こると思うんだが…。
感覚的な話をすれば、Xaw の平板なルックを期待した拡張ウィジェットが
そのままじゃ Xaw3D の立体なルックにあわないことを考えれば、
やっぱり完全な互換性なんて持てないっていう結論になると思うんだが、
拡張ってのがいつもがいつもルックの問題ってわけでもないので、
そういうところでは MVC を使えると、なんぼか救いようがある気はしますね。
それでですな、Interviews はその辺をどう解決してるかというと、
MVC モデルになるわけですな。
View と Control を分離したクラスにして、
この 2 つを動的にバインドできれば、
あるいはもうちょっとまともだったかもねん。
でも、結局さぁ、Xaw3D の非互換性が問題になるのって、
アプリケーションが独自にウィジェット拡張してる時だけだし、
MVC にしたとしても View の方で結局同じ問題が起こると思うんだが…。
感覚的な話をすれば、Xaw の平板なルックを期待した拡張ウィジェットが
そのままじゃ Xaw3D の立体なルックにあわないことを考えれば、
やっぱり完全な互換性なんて持てないっていう結論になると思うんだが、
拡張ってのがいつもがいつもルックの問題ってわけでもないので、
そういうところでは MVC を使えると、なんぼか救いようがある気はしますね。
3029
NGNG スレと全然関係ないけどさぁ、MVC って観点だと XUL おもしろいよ :D
311
NGNG >>All excluding me
レスいっぱいありがとさん。 あんたら、なかなか親切だよね。 オレ様、ジーンときちゃったよ。
どうもありがとう。 けど、やっぱ、いまいちわかんねーんだよなあ。 掲示板で聞いたり、理解
するのは限界があるとおもうんで、やっぱ何冊か本買って勉強しる。
レスいっぱいありがとさん。 あんたら、なかなか親切だよね。 オレ様、ジーンときちゃったよ。
どうもありがとう。 けど、やっぱ、いまいちわかんねーんだよなあ。 掲示板で聞いたり、理解
するのは限界があるとおもうんで、やっぱ何冊か本買って勉強しる。
321
NGNG >>All excluding me
レスいっぱいありがとさん。 あんたら、なかなか親切だよね。 オレ様、ジーンときちゃったよ。
どうもありがとう。 けど、やっぱ、いまいちわかんねーんだよなあ。 掲示板で聞いたり、理解
するのは限界があるとおもうんで、やっぱ何冊か本買って勉強しる。
レスいっぱいありがとさん。 あんたら、なかなか親切だよね。 オレ様、ジーンときちゃったよ。
どうもありがとう。 けど、やっぱ、いまいちわかんねーんだよなあ。 掲示板で聞いたり、理解
するのは限界があるとおもうんで、やっぱ何冊か本買って勉強しる。
33名無しさん@お腹いっぱい。
NGNG 実は勉強になるスレだな。
1よ、これからも良質なネタを提供してくれな。
1よ、これからも良質なネタを提供してくれな。
341
NGNG >>33
まかしときな。 クソスレいっぱい立ててやっからよ。 後で、泣いたら、腹蹴るから。
ところで、やっと分かったわ。 本読んで分かった。 ウィジェットのカラクリが。
何で、ウィジェットを実現するファイルが3分割されてるかもわかった。
Xtの関数は、実は、ウィジェットを定義してるプライベートの方の構造体に登録されてる
メソッド関数を呼び出してる訳だね。 ってことは、このメソッド関数を自分で、予め定めら
れたフォーマットで定義しなおせば、好き勝手にウィジェットのlook&feelを実現できちゃう
訳だ。 引いては、自分でウィジェットのクラスも作れちゃうってことなのね。
まかしときな。 クソスレいっぱい立ててやっからよ。 後で、泣いたら、腹蹴るから。
ところで、やっと分かったわ。 本読んで分かった。 ウィジェットのカラクリが。
何で、ウィジェットを実現するファイルが3分割されてるかもわかった。
Xtの関数は、実は、ウィジェットを定義してるプライベートの方の構造体に登録されてる
メソッド関数を呼び出してる訳だね。 ってことは、このメソッド関数を自分で、予め定めら
れたフォーマットで定義しなおせば、好き勝手にウィジェットのlook&feelを実現できちゃう
訳だ。 引いては、自分でウィジェットのクラスも作れちゃうってことなのね。
35名無しさん@お腹いっぱい。
NGNGレスを投稿する
ニュース
- 自民 国会議員の歳費 月額5万円引き上げ 今国会での成立目指す [どどん★]
- 「クラウンに乗りたかった」東京・足立の車暴走 男性、容疑を否認★2 [七波羅探題★]
- 相次ぐ中国公演中止に、シンガーソングライターらが続々高市首相に怒り表明「隣国の仲間たちに対して申し訳ない」★3 [muffin★]
- 東京・足立区の盗難車死亡ひき逃げ事件 11人死傷のうち死亡した男女の身元を発表 80代の男性と20代フィリピン国籍の女性 警視庁 [どどん★]
- 志らく、高市首相を批判する人々は「日本人じゃないの?」SNSで賛否 野党議員が一斉批判「差別発言」「非国民扱いするコメンテーター」 [muffin★]
- 《降板の申し出が》「平手友梨奈は出ません」ムロツヨシの「弁護士ドラマ」から“バディ”が消える!連ドラ撮影中にも遅刻、欠席… [Ailuropoda melanoleuca★]
- 中国「中国と米国はともにファシズム(日本)と軍国主義(日本)と戦ってきた。二次世界大戦の勝利の成果をともに守る」高市 [931948549]
- 赤ちゃんとかいうすぐ泣くコミュ障ハゲwww
- 寝れなくて困ってる
- スクリプトに乗っ取られた
- ( ・᷄ὢ・᷅ )おはぎに黄色いソースをかければさらに美味しくなるよ
- 【動画】慶應准教授の有野氏、高市答弁の問題点を理路整然と指摘しまいネトウヨ発狂wwwwwwwwwwww [271912485]
