とにかくdat落ち必死なこの話題をどうかひとつ。
関連スレ:
【GUIライブラリ】wxWindowsでのひょーん
http://pc2.2ch.net/test/read.cgi/tech/1052186697/
【C++】マイナーGUIツールキット
■ このスレッドは過去ログ倉庫に格納されています
NGNG
512本田
2009/09/27(日) 20:39:01 >>508
Object Windows Library
http://en.wikipedia.org/wiki/Object_Windows_Library
In 1993 Borland launched Borland C++ 2.0 for OS/2 which included a version of OWL 2.0.
OWL 2.0 used BIDS, the newer template library for 'container' or 'class library'.
In January 1994 Borland launched Borland C++ 4.0 for Windows which also included OWL 2.0.
It added Doc/View support, VBX controls, OLE. Win16, Win32s and Win32 was supported
(Windows 95, the Win32 successor of Windows 3.x appeared in August 1995).
Late in 1994, Novell CEO Raymond Noorda resigned.
Novell expansion plans were reconsidered,
AppWare development was stopped and so was OWL for AppWare.
In 1995 a group of original team members bought AppBuilder.
In the same year, Software UNO (www.uno.com) offered a commercial port for OWL 2.0,
to several platforms:
AIX 3.2.5, DEC Alpha OSF/1, HP-UX 9.03, Linux 1.2, Solaris 2.x, Sun OS 4.1.x, and SVR4 fox x86,
it was called WM_MOTIF.
Object Windows Library
http://en.wikipedia.org/wiki/Object_Windows_Library
In 1993 Borland launched Borland C++ 2.0 for OS/2 which included a version of OWL 2.0.
OWL 2.0 used BIDS, the newer template library for 'container' or 'class library'.
In January 1994 Borland launched Borland C++ 4.0 for Windows which also included OWL 2.0.
It added Doc/View support, VBX controls, OLE. Win16, Win32s and Win32 was supported
(Windows 95, the Win32 successor of Windows 3.x appeared in August 1995).
Late in 1994, Novell CEO Raymond Noorda resigned.
Novell expansion plans were reconsidered,
AppWare development was stopped and so was OWL for AppWare.
In 1995 a group of original team members bought AppBuilder.
In the same year, Software UNO (www.uno.com) offered a commercial port for OWL 2.0,
to several platforms:
AIX 3.2.5, DEC Alpha OSF/1, HP-UX 9.03, Linux 1.2, Solaris 2.x, Sun OS 4.1.x, and SVR4 fox x86,
it was called WM_MOTIF.
513デフォルトの名無しさん
2009/09/27(日) 20:46:20 >>512
引用するなら翻訳しろカス
引用するなら翻訳しろカス
514デフォルトの名無しさん
2009/09/27(日) 20:46:37 10年以上昔の話とか、WINEでポーティングされているとか…
515本田
2009/09/27(日) 20:58:13 >>514
【レビュー】
Linux版一太郎と新しいATOKを試す
http://journal.mycom.co.jp/articles/2005/02/03/justlin/002.html
Windows版そのままの「一太郎 for Linux」
一太郎 for Linuxは、Win32 APIと互換のバイナリ実行環境をLinux上に実現する「WINE」を利用して動作する。
LinuxネイティブのELFバイナリではなく、
Windows PEバイナリの形で提供されるWindows用アプリケーションだ。
付属のインストーラ(シェルスクリプト)では隠蔽されていたが、
wineコマンドから直接インストーラ(SETUP.EXE)を起動したところ、
そのまま「一太郎2004のセットアップ」と題されたウィザード形式のダイアログが表示された。
【レビュー】
Linux版一太郎と新しいATOKを試す
http://journal.mycom.co.jp/articles/2005/02/03/justlin/002.html
Windows版そのままの「一太郎 for Linux」
一太郎 for Linuxは、Win32 APIと互換のバイナリ実行環境をLinux上に実現する「WINE」を利用して動作する。
LinuxネイティブのELFバイナリではなく、
Windows PEバイナリの形で提供されるWindows用アプリケーションだ。
付属のインストーラ(シェルスクリプト)では隠蔽されていたが、
wineコマンドから直接インストーラ(SETUP.EXE)を起動したところ、
そのまま「一太郎2004のセットアップ」と題されたウィザード形式のダイアログが表示された。
516デフォルトの名無しさん
2009/09/27(日) 21:00:40 4年以上昔の話とか、WINEでポーティングされているとか…
517デフォルトの名無しさん
2009/09/27(日) 21:12:41 >>515
それもどうかと思うけど、完成品とライブラリを一緒くたにするとか…
それもどうかと思うけど、完成品とライブラリを一緒くたにするとか…
518デフォルトの名無しさん
2009/10/02(金) 16:39:07519デフォルトの名無しさん
2009/10/23(金) 12:27:33 Win32++について「GUIがむずかしすぎる」スレから引っ越してきたヨ
>66 名前: 60 Mail: sage 投稿日: 2009/10/21(水) 14:38:51
>Win32++の翻訳文書を公開した。
>
>・Win32++概要
> http://www.h6.dion.ne.jp/~machan/win32pp/overview.txt
>
>Windowsプログラミングは未経験なので、不適切だったり誤っている箇所があると思う。
>特に、リバーコントロール(Rebar Control)/メッセージの反射(Message Reflection)/
>CWndオブジェクト/WndProc関数に関連した部分は、無理矢理に訳した感がある。
>Win32 APIに詳しい住人さん達からのツッコミに期待。
>66 名前: 60 Mail: sage 投稿日: 2009/10/21(水) 14:38:51
>Win32++の翻訳文書を公開した。
>
>・Win32++概要
> http://www.h6.dion.ne.jp/~machan/win32pp/overview.txt
>
>Windowsプログラミングは未経験なので、不適切だったり誤っている箇所があると思う。
>特に、リバーコントロール(Rebar Control)/メッセージの反射(Message Reflection)/
>CWndオブジェクト/WndProc関数に関連した部分は、無理矢理に訳した感がある。
>Win32 APIに詳しい住人さん達からのツッコミに期待。
520デフォルトの名無しさん
2009/10/26(月) 07:36:35521デフォルトの名無しさん
2009/10/26(月) 14:34:43 sage
522デフォルトの名無しさん
2009/11/03(火) 18:15:47523デフォルトの名無しさん
2009/11/03(火) 18:21:49524デフォルトの名無しさん
2009/11/03(火) 18:24:12 >>522
Last updated May 13, 2007
Last updated May 13, 2007
525本田
2009/11/04(水) 00:38:57526デフォルトの名無しさん
2009/11/04(水) 00:51:02 C++BuilderみたいにGUIでパーツを配置していけるライブラリって
何がありますか?
何がありますか?
527デフォルトの名無しさん
2009/11/04(水) 18:33:28 >>526
あなたが求めているのは,単なるGUIデザイナじゃなくて,IDEと一体になったいわゆるRADツールだよね?
(例えばフォームの上にボタンをGUIデザイナ上で配置しておいてダブルクリックすると,ボタンをクリックした
時のイベントルーチンのスケルトンが自動的に作成されて,後は中身を書けばいいってヤツ)
それだとWindows上のC++で俺の知ってる限りだと,QtとwxWidgets(両方ともマイナーじゃないけど)。
QtならQt CreatorというRADツールがあるし,wxWidgetsならCode::Blocks,DialogBlocks(有料),wxDev-C++,
VisualWxとRADツールはいろいろある。
WideStudioって日本製のもあるけど,デバッグがIDEのエディタ上ではできなくて(そもそもエディタは内蔵してなくて
外部エディタを使う),コマンドラインデバッガでやるってのが痛い。
あとUltimate++ってのもインストールしてみたけど,使い方がさっぱりわからなかった。
俺みたいな短気なアホには向いてないようだ。
どれがいいかは自分で評価するしかないと思うけど,俺はQt+Qt Creatorか,wxWidgets+Code::Blocksが
良いと思う。それぞれ別スレがあるので覗いてみたら?
俺もC++ Builderの将来に不安を抱いてて,いろいろ評価してるから気持ちはわかるなぁ。
あなたが求めているのは,単なるGUIデザイナじゃなくて,IDEと一体になったいわゆるRADツールだよね?
(例えばフォームの上にボタンをGUIデザイナ上で配置しておいてダブルクリックすると,ボタンをクリックした
時のイベントルーチンのスケルトンが自動的に作成されて,後は中身を書けばいいってヤツ)
それだとWindows上のC++で俺の知ってる限りだと,QtとwxWidgets(両方ともマイナーじゃないけど)。
QtならQt CreatorというRADツールがあるし,wxWidgetsならCode::Blocks,DialogBlocks(有料),wxDev-C++,
VisualWxとRADツールはいろいろある。
WideStudioって日本製のもあるけど,デバッグがIDEのエディタ上ではできなくて(そもそもエディタは内蔵してなくて
外部エディタを使う),コマンドラインデバッガでやるってのが痛い。
あとUltimate++ってのもインストールしてみたけど,使い方がさっぱりわからなかった。
俺みたいな短気なアホには向いてないようだ。
どれがいいかは自分で評価するしかないと思うけど,俺はQt+Qt Creatorか,wxWidgets+Code::Blocksが
良いと思う。それぞれ別スレがあるので覗いてみたら?
俺もC++ Builderの将来に不安を抱いてて,いろいろ評価してるから気持ちはわかるなぁ。
528デフォルトの名無しさん
2009/11/04(水) 20:17:00 GTK+のGladeは?
529デフォルトの名無しさん
2009/11/04(水) 23:30:39530デフォルトの名無しさん
2009/11/05(木) 00:35:35531デフォルトの名無しさん
2009/11/05(木) 07:57:30 >>529
GTK+はC言語専用じゃないよ。
いろんな言語のバインディングがあって、C++用のもの(gtkmm)もある。
と言いつつ、GTK+とかGladeは興味があるだけでまだやってないから
GUIデザイナ/RADのことはわかんない。スマソ
GTK+はC言語専用じゃないよ。
いろんな言語のバインディングがあって、C++用のもの(gtkmm)もある。
と言いつつ、GTK+とかGladeは興味があるだけでまだやってないから
GUIデザイナ/RADのことはわかんない。スマソ
532デフォルトの名無しさん
2009/11/05(木) 13:27:42 >>529
wxWidgets (wxPython) + XRCed
wxWidgets (wxPython) + XRCed
533527
2009/11/05(木) 14:48:06 >>532
wxPython+XRcedは面白そう。小さなアプリならいいかもね(何気にPython好きだったりする俺)。
出来上がったらpy2exeで実行ファイルにしてしまう手もありそうだし。
ただXRCedってXRCを出力するからC++にも使えるけど、C++ではRADツールにはなり
得ないんじゃないの? もう一つC::BみたいなIDEを組み合わせると似たようなことは出来るのかな...
wxPython+XRcedは面白そう。小さなアプリならいいかもね(何気にPython好きだったりする俺)。
出来上がったらpy2exeで実行ファイルにしてしまう手もありそうだし。
ただXRCedってXRCを出力するからC++にも使えるけど、C++ではRADツールにはなり
得ないんじゃないの? もう一つC::BみたいなIDEを組み合わせると似たようなことは出来るのかな...
534デフォルトの名無しさん
2009/11/05(木) 15:26:07 >>533
CodeBlocks + wxWidgets + XRCed
CodeBlocks + wxWidgets + XRCed
536デフォルトの名無しさん
2009/11/05(木) 17:42:30 GTKの事情は知らんけど、フツーはRADの吐いたコードは手でいじらず、
継承するなりラップするなりで、実装とデザインを分離するのでわ。
継承するなりラップするなりで、実装とデザインを分離するのでわ。
537デフォルトの名無しさん
2009/11/05(木) 18:35:20 そういうアプローチを取るツールもあるけど(Code::Blocks+wxFormBuilderとか),
一般的にRADツールといったら,実装とデザインを分離せず,マニュアルで書いたコード
を壊さずにGUIのデザインとコードの実装をシームレスにできるものを指すと思ってるんだが。
Visual Basic,C++ Builder/Delphi,VC++ .NET,wxDev-C++,CodeBlocks+wxSmith(内蔵),
Qt+Qt Creator...みんなそうだよ。
そうじゃないヤツはIDE+GUIデザイナだと思ってる。
なんか全然マイナーなGUIツールキットの話になってないな。
つーか,RADツールまで出来ると,メジャーになっていくんだろうな。
一般的にRADツールといったら,実装とデザインを分離せず,マニュアルで書いたコード
を壊さずにGUIのデザインとコードの実装をシームレスにできるものを指すと思ってるんだが。
Visual Basic,C++ Builder/Delphi,VC++ .NET,wxDev-C++,CodeBlocks+wxSmith(内蔵),
Qt+Qt Creator...みんなそうだよ。
そうじゃないヤツはIDE+GUIデザイナだと思ってる。
なんか全然マイナーなGUIツールキットの話になってないな。
つーか,RADツールまで出来ると,メジャーになっていくんだろうな。
538デフォルトの名無しさん
2009/11/05(木) 19:21:27 マイナーGUIツールキットって、Wikipediaにも載ってないようなものじゃないの?
539デフォルトの名無しさん
2009/11/05(木) 20:59:54 eric4
540デフォルトの名無しさん
2009/11/05(木) 22:54:33 マイナー杉るだろ……
541デフォルトの名無しさん
2009/11/06(金) 01:17:20 むしろ未だにUIデザイナの吐いたコード直接弄るのタイプのはレガシーな感じがするんだが。
まあ一応GTK+系でもMonoDevelop + Stetic GUI Designerがその「RAD系」だった希ガス。
まあ一応GTK+系でもMonoDevelop + Stetic GUI Designerがその「RAD系」だった希ガス。
542デフォルトの名無しさん
2009/11/06(金) 08:26:48 まぁ,どう思おうと勝手だが,歴史的にみるとそうじゃないな。
MicrosoftもVC++のMFCではできなかったものが,VC++ .NETやC#でできるようになったし,
QtなんかQt Designer(GUIデザイナ)しかなかったんだが,Qt Creatorが生まれたのは
今年のこと。
GUIデザイナの吐いたコードを直接弄ると,後でGUI変更したときにせっかく書いたコードが
上書きされると思ってるんじゃないの?
MicrosoftもVC++のMFCではできなかったものが,VC++ .NETやC#でできるようになったし,
QtなんかQt Designer(GUIデザイナ)しかなかったんだが,Qt Creatorが生まれたのは
今年のこと。
GUIデザイナの吐いたコードを直接弄ると,後でGUI変更したときにせっかく書いたコードが
上書きされると思ってるんじゃないの?
543デフォルトの名無しさん
2009/11/06(金) 08:51:40 541じゃないけど
ボタンがあってそれのクリック時のコードを書いてたとき
そのボタンそのものを削除したらコードはどうなるの?
ボタンがあってそれのクリック時のコードを書いてたとき
そのボタンそのものを削除したらコードはどうなるの?
544デフォルトの名無しさん
2009/11/06(金) 09:51:47 全部試したわけじゃないけど,少なくともC++ Builder,Qt Creator,Code::Blocks(wxSmith)だと
ボタンをクリックしたときのイベントハンドラの中味を記述した状態でボタンを削除しても,
コードはそのまま残るよ。ヘッダーファイル上では,ボタンのクラスのインスタンスポインタは
消えるけど,イベントハンドラ関数の宣言はそのまま残ってるし,.cppファイル上での
関数の実装もそのまま。
例えばボタンの種類を変えたいとき(文字だけのボタンからアイコンつきのボタンに代えた時)など
に配慮してるんだと思う。後で交換したボタンのクリックイベントルーチンとしてそのまま使える
ように。
ボタンをクリックしたときのイベントハンドラの中味を記述した状態でボタンを削除しても,
コードはそのまま残るよ。ヘッダーファイル上では,ボタンのクラスのインスタンスポインタは
消えるけど,イベントハンドラ関数の宣言はそのまま残ってるし,.cppファイル上での
関数の実装もそのまま。
例えばボタンの種類を変えたいとき(文字だけのボタンからアイコンつきのボタンに代えた時)など
に配慮してるんだと思う。後で交換したボタンのクリックイベントルーチンとしてそのまま使える
ように。
545本田
2009/11/12(木) 06:45:42546デフォルトの名無しさん
2009/11/20(金) 00:50:23 ttp://www.assembla.com/wiki/show/cppgui/
547デフォルトの名無しさん
2009/11/28(土) 20:19:35 Visual Studio 2005 で使えて、swing のような感じでお手軽にGUI を作成できるライブラリィってないでしょうか?
548デフォルトの名無しさん
2009/11/30(月) 04:34:12 .NET Framework
549デフォルトの名無しさん
2009/12/28(月) 20:41:11 >>547
俺はVC8でwxWidgets使ってるよ。サイザーとか手軽だよ
俺はVC8でwxWidgets使ってるよ。サイザーとか手軽だよ
550デフォルトの名無しさん
2010/01/08(金) 16:01:11 保守
551デフォルトの名無しさん
2010/02/16(火) 18:44:53 最近のFLTKは1.3の更新ばっかりで2.0は停滞しているなぁ
大きな問題に直面してるわけではないが
成熟もしていないのが・・・
大きな問題に直面してるわけではないが
成熟もしていないのが・・・
552デフォルトの名無しさん
2010/03/06(土) 16:18:00 fltk2はフォーラムでも「過去のバージョン」扱いだな
trunkなのにbranchとはこれいかに
1.3に移行するか
それとも1.3の修正を2.0にバックポート(?)するか
あるいはもう別のツールキットに乗り換えるか
trunkなのにbranchとはこれいかに
1.3に移行するか
それとも1.3の修正を2.0にバックポート(?)するか
あるいはもう別のツールキットに乗り換えるか
553デフォルトの名無しさん
2010/03/07(日) 06:14:16 うがー
fltk1.3をubuntu9.10で使おうとしたら日本語が入力できん。
ファイルから読み込んで表示はできるが、
ibus-anthyから入力しようとすると文字化けする。
せっかくパッケージにある1.1じゃなくて1.3を入れたのに。。。。
fltk1.3をubuntu9.10で使おうとしたら日本語が入力できん。
ファイルから読み込んで表示はできるが、
ibus-anthyから入力しようとすると文字化けする。
せっかくパッケージにある1.1じゃなくて1.3を入れたのに。。。。
554デフォルトの名無しさん
2010/03/07(日) 17:11:08555553
2010/03/07(日) 19:44:08 >>554
xtermにもfirefoxにも入力できるから、ximは動いてると思ってた。
やってみたけど駄目だった。
日本語入力がonにできないんじゃなくて文字化けするってのが、
どういう状況なのかわからない。
XIMプロトコルでは文字コードどうなってるの?
ibusが悪いのかとscim入れてそっちを使ってみたけど駄目。
fltk2.0いれてみたらdemoアプリでは入力できた。
が、APIが全然違うので目的のコードを動かすには相当な変更が必要そうだ。
fltk2.0 と fltk1.3 で、どこが違うのか比較するかな。
xtermにもfirefoxにも入力できるから、ximは動いてると思ってた。
やってみたけど駄目だった。
日本語入力がonにできないんじゃなくて文字化けするってのが、
どういう状況なのかわからない。
XIMプロトコルでは文字コードどうなってるの?
ibusが悪いのかとscim入れてそっちを使ってみたけど駄目。
fltk2.0いれてみたらdemoアプリでは入力できた。
が、APIが全然違うので目的のコードを動かすには相当な変更が必要そうだ。
fltk2.0 と fltk1.3 で、どこが違うのか比較するかな。
556553
2010/03/07(日) 21:00:14 printfしてみたら、そもそもXから来る文字コードがUTF-8じゃなさげ。
setlocale関係かなと思ったけど、差はないっぽいな。うーむ。
setlocale関係かなと思ったけど、差はないっぽいな。うーむ。
557553
2010/03/09(火) 23:53:34 fltk2.0も環境によっては入力できないみたい。
あんまり時間をかけられないので、俺は諦めます。
誰か解決してくれるとうれしいなぁ。
Fox-toolkitは日本語が入力できるんだろうか?
あんまり時間をかけられないので、俺は諦めます。
誰か解決してくれるとうれしいなぁ。
Fox-toolkitは日本語が入力できるんだろうか?
558デフォルトの名無しさん
2010/04/21(水) 02:12:07 ttps://svn.boost.org/svn/boost/sandbox/guigl/
559デフォルトの名無しさん
2010/05/15(土) 00:10:23 質問です。
自作のプログラミング言語処理系に組み込むのに向いているGUIツールキットを探しています。
ただ、その言語処理系の制限上、コールバックをする事ができません。
つまり、[その言語]->[C or C++]->[その言語]という呼び出しは行えません。
この問題を回避できるツールキットをご存知の方はいらっしゃいませんか?
自作のプログラミング言語処理系に組み込むのに向いているGUIツールキットを探しています。
ただ、その言語処理系の制限上、コールバックをする事ができません。
つまり、[その言語]->[C or C++]->[その言語]という呼び出しは行えません。
この問題を回避できるツールキットをご存知の方はいらっしゃいませんか?
560デフォルトの名無しさん
2010/05/16(日) 01:25:01 どういう使い方をしたいのかがさっぱり判らん
561デフォルトの名無しさん
2010/05/16(日) 19:20:55 イベントループをその言語から呼んではいかんということだな。
その言語はイベントループ手前で一旦終了、
Cの方でイベントループを呼び出す。
コールバックは毎回君言語を実行する形。とするのかな。
その言語はイベントループ手前で一旦終了、
Cの方でイベントループを呼び出す。
コールバックは毎回君言語を実行する形。とするのかな。
562559
2010/05/19(水) 23:12:46 一度終了して、後から呼ぶのも(不可能ではないですが)難しいです。
継続をサポートしているため、559の制限が発生していて、
一度終了し、イベント内で再開した場合も、同様に継続をサポートできません。
Windowsに話を絞ると、Windowsの標準メッセージループは次のようなのだと思います。
while (GetMessage(&msg,NULL,0,0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
この3つの関数呼び出しをまとめた、ProcessMessage関数を作り、
bool ProcessMessage(){
if(!GetMessage(&msg,NULL,0,0)) return false;
TranslateMessage(&msg); DispatchMessage(&msg); return true;
}
これを私の言語から、
while ProcessMessage() do
hogehoge()
end
のように使えば動くと思います。この場合、C側のイベントハンドラは発生したイベントをQueueに入れて、俺言語の中でそれを取り出して使う事になると思います。
Windows以外にも対応したいので、このような形を取れる、ツールキットはないでしょうか?
継続をサポートしているため、559の制限が発生していて、
一度終了し、イベント内で再開した場合も、同様に継続をサポートできません。
Windowsに話を絞ると、Windowsの標準メッセージループは次のようなのだと思います。
while (GetMessage(&msg,NULL,0,0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
この3つの関数呼び出しをまとめた、ProcessMessage関数を作り、
bool ProcessMessage(){
if(!GetMessage(&msg,NULL,0,0)) return false;
TranslateMessage(&msg); DispatchMessage(&msg); return true;
}
これを私の言語から、
while ProcessMessage() do
hogehoge()
end
のように使えば動くと思います。この場合、C側のイベントハンドラは発生したイベントをQueueに入れて、俺言語の中でそれを取り出して使う事になると思います。
Windows以外にも対応したいので、このような形を取れる、ツールキットはないでしょうか?
563デフォルトの名無しさん
2010/05/21(金) 14:59:44 >>559
もし実装言語がCなら、標準ライブラリのsetjmp/longjmpを使って、
インタプリタ側とコールバック関数側をコルーチンの形式で
交互にジャンプさせることで、擬似的な並行処理を実現するんだろうね。
もちろんジャンプバッファ(jmp_buf)は2個必要になる。
Rubyのスレッド(平行処理)も、インタプリタ内部ではスレッド単位に
ジャンプバッファを持って、スレッドのコンテキストを管理してる。
以下は、RHG(Ruby Hacking Guide)の該当する章へのリンク。
・ttp://www.loveruby.net/ja//rhg/book/thread.html
もし仮想マシンで実行しているなら、(setjmp/longjmpに相当する)
実行コンテキストを保存/復帰させる命令を仮想マシンの仕様に追加する。
というか、開発中の言語処理系が「ホントウ」に継続(countinuation)を
サポートしているなら、継続で互いのコンテキストを切り替え続ければいいはずなんだが....
もし実装言語がCなら、標準ライブラリのsetjmp/longjmpを使って、
インタプリタ側とコールバック関数側をコルーチンの形式で
交互にジャンプさせることで、擬似的な並行処理を実現するんだろうね。
もちろんジャンプバッファ(jmp_buf)は2個必要になる。
Rubyのスレッド(平行処理)も、インタプリタ内部ではスレッド単位に
ジャンプバッファを持って、スレッドのコンテキストを管理してる。
以下は、RHG(Ruby Hacking Guide)の該当する章へのリンク。
・ttp://www.loveruby.net/ja//rhg/book/thread.html
もし仮想マシンで実行しているなら、(setjmp/longjmpに相当する)
実行コンテキストを保存/復帰させる命令を仮想マシンの仕様に追加する。
というか、開発中の言語処理系が「ホントウ」に継続(countinuation)を
サポートしているなら、継続で互いのコンテキストを切り替え続ければいいはずなんだが....
564559
2010/05/21(金) 23:22:16 >>563
いやいやいや。継続をサポートしてるから駄目なんだよ。 てか、スレッドと継続を混ざってない?
[その言語part1]->[C or C++]->[その言語part2]
って呼び出しをしたとして、[その言語part2]から[その言語part1]に継続でジャンプすると、C 部分の関数は入って2度と出なくなる。
その時はデストラクタも呼ばれないし、それ以外もマズい事になる所がある。
で、今日、tcl/tkについて調べたら、Tk_MainLoop関数は、
void
Tk_MainLoop(void)
{
while (Tk_GetNumMainWindows() > 0) {
Tcl_DoOneEvent(0);
}
}
ってなってた。
この関数を俺言語に移植して、イベントキューを作ればうまくいくかな?
いやいやいや。継続をサポートしてるから駄目なんだよ。 てか、スレッドと継続を混ざってない?
[その言語part1]->[C or C++]->[その言語part2]
って呼び出しをしたとして、[その言語part2]から[その言語part1]に継続でジャンプすると、C 部分の関数は入って2度と出なくなる。
その時はデストラクタも呼ばれないし、それ以外もマズい事になる所がある。
で、今日、tcl/tkについて調べたら、Tk_MainLoop関数は、
void
Tk_MainLoop(void)
{
while (Tk_GetNumMainWindows() > 0) {
Tcl_DoOneEvent(0);
}
}
ってなってた。
この関数を俺言語に移植して、イベントキューを作ればうまくいくかな?
565デフォルトの名無しさん
2010/05/22(土) 02:27:44 中途半端な代物で「継続をサポートしてる」と名乗るあつかましさがそもそもの元凶では。
566559
2010/05/22(土) 02:49:17 >>565
うぐう。
継続のサポート自体は中途半端じゃないよ。俺言語で書かれたプログラム内で閉じてればフルに継続が使えるから。
Javaはメモリ破壊に対して安全だけど、Cで書かれた拡張ライブラリにバグがあったらメモリは破壊される、みたいな物だと思いねぇ。
その言語用のライブラリをCで作るときの制限の大小の話はあるかもしれないけど、
Emacs lispだと、GCがある事を考慮に入れてプログラムを書かないといけないが、Rubyだといらないとか、
継続にしたって、Luaとかは俺言語と同じ制限がある、Rubyとかは努力して回避してる。
ただ、Rubyとかが使ってる方法は黒魔術なので、環境依存する。違うプロセッサで動くとは限らない。
もちろん、努力が足りないと言われればそれ以外ないけど。
うぐう。
継続のサポート自体は中途半端じゃないよ。俺言語で書かれたプログラム内で閉じてればフルに継続が使えるから。
Javaはメモリ破壊に対して安全だけど、Cで書かれた拡張ライブラリにバグがあったらメモリは破壊される、みたいな物だと思いねぇ。
その言語用のライブラリをCで作るときの制限の大小の話はあるかもしれないけど、
Emacs lispだと、GCがある事を考慮に入れてプログラムを書かないといけないが、Rubyだといらないとか、
継続にしたって、Luaとかは俺言語と同じ制限がある、Rubyとかは努力して回避してる。
ただ、Rubyとかが使ってる方法は黒魔術なので、環境依存する。違うプロセッサで動くとは限らない。
もちろん、努力が足りないと言われればそれ以外ないけど。
567デフォルトの名無しさん
2010/05/22(土) 12:31:34 うぐぅとか聞いたの10年ぶりぐらいだ
568デフォルトの名無しさん
2010/05/22(土) 13:49:15 > 継続のサポート自体は中途半端じゃないよ。俺言語で書かれたプログラム内で閉じてればフルに継続が使えるから。
俺言語で閉じた利用だけを想定するならそういえるけど
しかし作者自身がその想定から外れた前提で質問した上で
そう言い張ってもなー
> Javaはメモリ破壊に対して安全だけど、Cで書かれた拡張ライブラリにバグがあったらメモリは破壊される、みたいな物だと思いねぇ。
それは違うだろ
たとえるならJNIでいうグローバル参照がないとかだな
> 継続にしたって、Luaとかは俺言語と同じ制限がある、Rubyとかは努力して回避してる。
LuaとRubyしか知らないの?
つか、この文を書けるなら当然LuaのGUIバインディングは調査済だと思うが
その結果はどうだったのさ
俺言語で閉じた利用だけを想定するならそういえるけど
しかし作者自身がその想定から外れた前提で質問した上で
そう言い張ってもなー
> Javaはメモリ破壊に対して安全だけど、Cで書かれた拡張ライブラリにバグがあったらメモリは破壊される、みたいな物だと思いねぇ。
それは違うだろ
たとえるならJNIでいうグローバル参照がないとかだな
> 継続にしたって、Luaとかは俺言語と同じ制限がある、Rubyとかは努力して回避してる。
LuaとRubyしか知らないの?
つか、この文を書けるなら当然LuaのGUIバインディングは調査済だと思うが
その結果はどうだったのさ
569デフォルトの名無しさん
2010/11/18(木) 00:01:22 保守
570デフォルトの名無しさん
2010/11/28(日) 02:58:15 FLTK 1.3.0年内リリースに向け追込み中の模様・・・
日本語入力関係で2.0.x使うようにしていたけど
もう一度1.3試してみようかな
日本語入力関係で2.0.x使うようにしていたけど
もう一度1.3試してみようかな
571デフォルトの名無しさん
2010/12/01(水) 00:30:01572デフォルトの名無しさん
2010/12/13(月) 05:36:57 FLTK v1.3.x-r7996
で日本語入力対応したっぽいage
で日本語入力対応したっぽいage
573デフォルトの名無しさん
2010/12/14(火) 15:27:23 FLTK v1.3.x-r7996
OpenXIM() を使っているようす。
kinput2+Canna では入力出来た。
scim+anthy だと漢字変換を起動させることが出来なかった。
OpenXIM() を使っているようす。
kinput2+Canna では入力出来た。
scim+anthy だと漢字変換を起動させることが出来なかった。
574デフォルトの名無しさん
2010/12/14(火) 20:41:43 >>573 s/OpenXIM/XOpenIM/
575デフォルトの名無しさん
2011/04/09(土) 18:17:04.88 fltk 2.0.xにいつの間にかalphaがついている
1.3.xが落ち着いて2.0.xに開発者が若干戻った感じ
しかし1.3.0はまだRC3のまま
1.3.xが落ち着いて2.0.xに開発者が若干戻った感じ
しかし1.3.0はまだRC3のまま
576デフォルトの名無しさん
2011/05/23(月) 17:22:35.29 OpenGL画面の上に数値入力コントロールを置きたいんだが
できるだけWin32のコントロールに近い挙動のGUIを作れるライブラリがあったら教えてくれ。
目的の対象プラットフォームはWin32のみ。
できるだけWin32のコントロールに近い挙動のGUIを作れるライブラリがあったら教えてくれ。
目的の対象プラットフォームはWin32のみ。
577デフォルトの名無しさん
2011/06/08(水) 21:12:08.03 qt
578デフォルトの名無しさん
2011/06/08(水) 21:17:00.94 qtはマイナーじゃないので別なのありませんか?
579デフォルトの名無しさん
2011/06/08(水) 22:23:27.48 WTL
今となってはマイナーだと思う。
今となってはマイナーだと思う。
580デフォルトの名無しさん
2011/06/11(土) 01:48:48.73 GLUI
581デフォルトの名無しさん
2011/06/11(土) 01:58:56.54 nacl
582デフォルトの名無しさん
2011/07/01(金) 03:03:24.17 FLTK 1.3.0 final version released!
……半月前だが
……半月前だが
583天使 ◆uL5esZLBSE
2011/07/02(土) 23:36:21.26 はいゴミ死ね
ゴミって意味わかってんのかなこいつら
ゴミって意味わかってんのかなこいつら
584デフォルトの名無しさん
2011/07/03(日) 01:49:35.93 >>582
それは良い事を聞いた!
それは良い事を聞いた!
585デフォルトの名無しさん
2011/07/05(火) 14:19:10.32 軽いGUIライブラリを探しています。
FLTK-2.0がベストなのですが、これって開発続けられていますか?
ホームページを見ると休眠中だけど再開したようなことも書いてあるし、
現状のステータスがよくわかりません。
Fl_というプレフィックスが見苦しい1.3ではなく2.0を使いたいのですが、
これ使って良いものでしょうか?
あるいは軽量ならFOXを使えとか...
どうするのがベストでしょうか。
FLTK-2.0がベストなのですが、これって開発続けられていますか?
ホームページを見ると休眠中だけど再開したようなことも書いてあるし、
現状のステータスがよくわかりません。
Fl_というプレフィックスが見苦しい1.3ではなく2.0を使いたいのですが、
これ使って良いものでしょうか?
あるいは軽量ならFOXを使えとか...
どうするのがベストでしょうか。
586585
2011/07/06(水) 20:25:06.63 勝手にFLTK2で行くことに決めました。
日本語化けます。対応してるはずです。助けて><
日本語化けます。対応してるはずです。助けて><
587デフォルトの名無しさん
2011/07/06(水) 23:59:41.55 コールバックが好きでない俺はFOXのメッセージがいいなぁと思った。
588デフォルトの名無しさん
2011/07/09(土) 18:29:38.71 ずっとクロスプラットフォームな GUI のライブラリで悩んでいたんだけど、
JavaScript を試してみたら結構サクサク動いたので、もう HTML5 で
行く事に決めたわ
Firefox だけで動けば良いから、クロスブラウザ問題も無いし
JavaScript を試してみたら結構サクサク動いたので、もう HTML5 で
行く事に決めたわ
Firefox だけで動けば良いから、クロスブラウザ問題も無いし
589デフォルトの名無しさん
2011/07/11(月) 00:47:19.54 >>586
FreeType有効にしてる?
FreeType有効にしてる?
590585
2011/07/11(月) 10:07:11.49 何それ美味しいの?
591585
2011/07/12(火) 20:20:19.69 FLTKだけど使い物にならないな。
一回メインウィンドウを作って閉じたら終了、なアプリはいいんだけど、
DLL化して何回も呼び出して(メインウィンドウを作っては消す)を繰り返すと、
10回に1回ぐらい不定期に強制終了する。何が起きるかはランダム。
おそらくFLTKのリソース管理がまずいか、メモリを破壊している。
2.0, 1.3, 1.1系列で確認。
ちょっと使い物にならない。
一回メインウィンドウを作って閉じたら終了、なアプリはいいんだけど、
DLL化して何回も呼び出して(メインウィンドウを作っては消す)を繰り返すと、
10回に1回ぐらい不定期に強制終了する。何が起きるかはランダム。
おそらくFLTKのリソース管理がまずいか、メモリを破壊している。
2.0, 1.3, 1.1系列で確認。
ちょっと使い物にならない。
592デフォルトの名無しさん
2011/07/12(火) 20:28:12.83593デフォルトの名無しさん
2011/07/12(火) 22:31:33.80 >>591
FLTKの作法は知らないけど、
ウィザード形式の紙芝居遷移をするなら、メインウィンドウの中でパネルを入れ替えたりするのが
王道のような。
それかメインウィンドウを1個どどんと置いて、そこを軸にサブ画面を表示ってスタイルとか。
(必ずメインウィンドウを最後に閉じる)
FLTKの作法は知らないけど、
ウィザード形式の紙芝居遷移をするなら、メインウィンドウの中でパネルを入れ替えたりするのが
王道のような。
それかメインウィンドウを1個どどんと置いて、そこを軸にサブ画面を表示ってスタイルとか。
(必ずメインウィンドウを最後に閉じる)
594585
2011/07/13(水) 09:42:00.04 他人の作ったアプリのプラグイン(DLL)として動くので、
自分で寿命を管理できないんだわ。
アプリ自体はずっと存在して、DLLのみ何回もロード/アンロードが繰り返される。
1回目で落ちたことはない。落ちるなら2回目以降。
サンプルを見てもメインウィンドウのdeleteはおこなわずにアプリを終了してるので、
FLTK自体こういう使い方(new/deleteを繰り返す)は想定してないようだ。
これではちょっと使えないので、また振り出しに戻ってツールキット探すぜ。
FOXは何かキモイからgtkmmあたりを攻めて見る。Gtkだから物は確かだろう。
自分で寿命を管理できないんだわ。
アプリ自体はずっと存在して、DLLのみ何回もロード/アンロードが繰り返される。
1回目で落ちたことはない。落ちるなら2回目以降。
サンプルを見てもメインウィンドウのdeleteはおこなわずにアプリを終了してるので、
FLTK自体こういう使い方(new/deleteを繰り返す)は想定してないようだ。
これではちょっと使えないので、また振り出しに戻ってツールキット探すぜ。
FOXは何かキモイからgtkmmあたりを攻めて見る。Gtkだから物は確かだろう。
595デフォルトの名無しさん
2011/07/13(水) 09:55:00.54596585
2011/07/13(水) 17:17:45.92 とは思えないなあ。DLLの初期化に関してはアプリがやってるので自分はノータッチ。
アプリ側が間違えている可能性はあるがクローズだからわかんね。
多分ほかの(FLTKを使わない)プラグインでそういうエラーは聞いたことがないので多分大丈夫だと思うよ。
そしてgtkmmデカすぎワロタ。いったいくつdllを同梱させる気だよ。
プラグイン単体で配布して、VisualStuidoの再配布可能パッケージと
gtkmmインストールしてね、というのもなあ...
どこかに理想のウィンドウツールキットはないものか。
アプリ側が間違えている可能性はあるがクローズだからわかんね。
多分ほかの(FLTKを使わない)プラグインでそういうエラーは聞いたことがないので多分大丈夫だと思うよ。
そしてgtkmmデカすぎワロタ。いったいくつdllを同梱させる気だよ。
プラグイン単体で配布して、VisualStuidoの再配布可能パッケージと
gtkmmインストールしてね、というのもなあ...
どこかに理想のウィンドウツールキットはないものか。
597デフォルトの名無しさん
2011/07/13(水) 20:29:43.25 GTKは糞
Qt4はイケメンだがデブ
wxWidgetsは不細工だがスマート
Qt4はイケメンだがデブ
wxWidgetsは不細工だがスマート
598デフォルトの名無しさん
2011/07/13(水) 23:53:55.93599デフォルトの名無しさん
2011/07/14(木) 00:02:03.57 あとDLLの場合に落ちるんなら
別プロセスで動かせばとりあえず動くんじゃね?
抜本的解決ではないが
別プロセスで動かせばとりあえず動くんじゃね?
抜本的解決ではないが
600デフォルトの名無しさん
2011/07/14(木) 07:32:38.51 Windows限定でならTkもいいな
601デフォルトの名無しさん
2011/07/14(木) 10:23:28.32 ポトペタがあるとないのでは雲泥の差。
C++Builder、Qtあたりがよさそう。
C++Builder、Qtあたりがよさそう。
602585
2011/07/14(木) 11:17:38.23 ここが俺の日記帳だ!
gtkmmでGUIを作ってみたけど、やはり2回目以降にアクセス違反その他のエラーが出る。
詳細は違うがFLTK2, FLTK1.3, gtkmm-2.6のすべてで2回目以降にエラーが出るので、
これはもうツールキットの問題ではなく呼び出し元のアプリが悪いようだ。
他人のプラグインは恐らくWin32API直叩きだが、それはめんどいので無理。
出るとしたら2回目以降だからあきらめるしかないだろう。
gtkmmでGUIを作ってみたけど、やはり2回目以降にアクセス違反その他のエラーが出る。
詳細は違うがFLTK2, FLTK1.3, gtkmm-2.6のすべてで2回目以降にエラーが出るので、
これはもうツールキットの問題ではなく呼び出し元のアプリが悪いようだ。
他人のプラグインは恐らくWin32API直叩きだが、それはめんどいので無理。
出るとしたら2回目以降だからあきらめるしかないだろう。
603デフォルトの名無しさん
2011/07/14(木) 11:39:25.59 どうせ君のプラグインは誰も使わないんだろうしね
604デフォルトの名無しさん
2011/07/15(金) 11:26:03.91 この板の住民にとっては Qt4 とか wxWidgets とかはマイナーじゃないと思う
605デフォルトの名無しさん
2011/07/15(金) 21:16:54.94 GUIはライブラリより開発環境のが重要
606デフォルトの名無しさん
2011/07/15(金) 21:27:24.92 ポトペタ使わないで全部手書きでやってるよ
607デフォルトの名無しさん
2011/07/16(土) 22:20:36.16 GUI の配置は XML で定義出来るのが一番良いなあ
608デフォルトの名無しさん
2011/07/16(土) 22:46:14.71 FLTKの欠点はGroupの子ウィジットの座標指定がGroupの相対座標にならないことだな。
(なぜかその上のWindow相対になる)
すでに改善項目としてあがっているが。。。
(なぜかその上のWindow相対になる)
すでに改善項目としてあがっているが。。。
609デフォルトの名無しさん
2011/07/21(木) 11:50:23.62 最近全部HTMLで済ませてるわ・・・
610デフォルトの名無しさん
2011/07/21(木) 11:50:41.24 GUIのデザインの話ね。
611デフォルトの名無しさん
2011/07/21(木) 19:23:37.25 俺も同じく。
元々テキストエディタだけでも作成出来るほど手軽だし、
これだけ広く使われているだけあって、ツールも沢山揃っているし、
ベンダーやフレームワークに依存したお作法を強制される事もないし、
ドキュメントも沢山あって、自分以外の人間がメンテするのも容易だし、
動かすのも簡単だから、誰が相手でも気軽に配布出来るし、
今後遠い将来を考えても無くなる事はないし、規格の更新も活発だし、
周辺インフラの充実具合も半端無いし、大抵のサービスはお金も掛からないし、
色々考えると良い事しかなくて、便利に使ってるわ。
元々テキストエディタだけでも作成出来るほど手軽だし、
これだけ広く使われているだけあって、ツールも沢山揃っているし、
ベンダーやフレームワークに依存したお作法を強制される事もないし、
ドキュメントも沢山あって、自分以外の人間がメンテするのも容易だし、
動かすのも簡単だから、誰が相手でも気軽に配布出来るし、
今後遠い将来を考えても無くなる事はないし、規格の更新も活発だし、
周辺インフラの充実具合も半端無いし、大抵のサービスはお金も掛からないし、
色々考えると良い事しかなくて、便利に使ってるわ。
612デフォルトの名無しさん
2011/07/22(金) 02:53:38.04■ このスレッドは過去ログ倉庫に格納されています
ニュース
- サナエノミクスについて力説 積極的な財政出動で「所得増える 消費マインド上がる 税収増える」片山さつき財務大臣 ★3 [少考さん★]
- 中国軍機のレーダー照射1週間 駆け引き続く 中国、米のレッドライン模索 日本、米以外の同志国とも連携探る 米は対立から距離置く★2 [ぐれ★]
- 鈴木農相「おこめ券はお米しか買えないわけではない。例えば卵、味噌、しょうゆ、こうした購入に利用可能」 ★4 [Hitzeschleier★]
- 【芸能】粗品、日本テレビに苦言 客のレベルが「かなり低い。あいつら分かってない」「拍手したいだけやねん」 [冬月記者★]
- 橋下徹氏「総理なら岡田さんに何を聴かれても耐えてほしかった」 高市首相の台湾有事めぐる答弁に# [jinjin★]
- 【静岡】伊東市長選、前市議の杉本氏初当選 学歴詐称疑惑の田久保氏は及ばず 市長選3700万円、市議選6300万円の計1億円費やされる [ぐれ★]
- 【DAZN/ABEMA】ブンデスリーガ・DFBポカール★7
- 【DAZN/ABEMA】リーグ・アン総合 ★5
- 競輪実況★1629 ゲロブスクソ雑魚蛯原
- こいせん 全レス転載禁止
- ハム専
- とらせん IP付き
- 【人権と意思】琉球は「万国津梁」と呼ばれ、かつては中国の藩属国であったが、日本は武力で琉球を併合した_大学教授 [979264442]
- pixivにイラスト投稿してまだ半日経ってないのに120ブクマ超えた
- ( つ・᷄ὢ・᷅ )つだっこ
- パチンコパチスロこてんぱんにやられたら3ヶ月くらい行かなくても平気になるんだが俺は依存症じゃないの?
- プロレスラーって場外に向かって飛ぶと受け止めようとするけど
- 着々とシンギュラリティに近づいてるよな
