Note.
わざわざマイナなツールキット/フレームワークを利用することはないように思う。GTK, Qt もしくは wxWidgets を利用すべき。
そもそも、objectcentral.com がなくなっている。もはやメンテナンスもされていない。
(2004.10.16更新。)
Vは,C++によるGUIツールキット。Windows, X11版がある。一つのソースからWindows版とX版を作れる、クロスプラットフォームなGUIツールキット。
configureコマンドはない。configsディレクトリにあるファイルのどれかをConfig.mkにコピーする。
Vバージョン1.90は、Makefileに誤りがある。make installLinuxでエラーになるので、適宜修正する。
--- home/vgui/Makefile 2003-01-29 03:13:40.000000000 +0900 +++ ../v-1.90/vgui/Makefile 2004-10-16 18:50:17.303927824 +0900 @@ -346,11 +346,11 @@ rm -f /usr/lib/$(LIBNAME).so ln -s /usr/lib/$(LIBNAME).so.$(VV) /usr/lib/$(LIBNAME).so else - -chmod 644 $(LibDir)/*.a - cp $(LibDir)/*.a /usr/lib + -chmod 644 lib/*.a + cp lib/*.a /usr/lib endif - -chmod 755 $(Bin)/* - cp $(Bin)/* /usr/$(Xdir11)/bin + -chmod 755 bin/* + cp bin/* /usr/$(Xdir11)/bin .PHONY: uninstalVlLinux uninstallVLinux:
インストール手順は次のとおり。これはAthenaウィジェットを使う場合。Motifを選ぶこともできる。
$ cp configs/ConfigX.mk Config.mk $ make $ su # make installLinux
アプリケーションを複数のプラットフォームで動かせるようになっているが、Windowsのみ、Xのみのクラスを使うと、当然クロスプラットフォームにはできない。
┌─────┐
│ vCmd │
└─────┘
△
├────┬───────┬───────┬────────┐
│ ┌──┴───┐┌──┴───┐┌──┴───┐┌───┴───┐
│ │vCheckBoxCmd││vSpinnerCmd ││vComboBoxCmd││vBoxedLabelCmd│
│ └──────┘└──────┘└──────┘└{Win版のみ} ─┘
│
├────┬──────┬──────┬──────┐
│ ┌──┴──┐┌──┴──┐┌──┴──┐┌──┴──┐
│ │ vTextCmd ││vTextInCmd││ vListCmd ││vFrameCmd │
│ └─────┘└─────┘└─────┘└─────┘
│
├────┬───────┬────────┐
│ ┌──┴──┐┌───┴────┐┌──┴───┐
│ │vSliderCmd││vRadioButtonCmd ││vProgressCmd│
│ └─────┘└────────┘└──────┘
│
├─────────┐
┌──┴──┐ ┌──┴──┐
│vButtonCmd│ │vLabelCmd │
└─────┘ └─────┘
△ △
│ │
┌───┴────┐┌───┴───┐
│vColorButtonCmd ││vColorLabelCmd│
└────────┘└───────┘
┌─────┐ ┌─────┐ ┌─────┐
│vBaseItem │ │vCmdParent│ │ vPane │
└─────┘ └─────┘ └─────┘
△ △ △
├───────┐ │ │
┌──┴───┐┌──┴──┐ │ │
│vBaseWindow ││ vApp │ │ │
└──────┘└─────┘ │ │
△ ┌──┬─────┘ │
├───┐ │ │ ┌─────┬──────┬───────┤
┌──┴──┐│ │┌─┴──┴─┐┌──┴──┐┌──┴───┐┌──┴───┐
│ vWindow ││ ││vCommandPane││vMenuPane ││vStatusPane ││vCanvasPane │
└─────┘│ │└──────┘└─────┘└{X11版のみ} ┘└──────┘
△ │ │ △
│ │ │ ┌─────────┤
┌──┴──┐│ │ ┌────┴────┐┌───┴────┐
│vCmdWindow││ │ │vBaseGLCanvasPane ││vTextCanvasPane │
└─────┘│ │ └─────────┘└────────┘
│ │ △
│ │ │
┌─┴─┴─┐ ┌──┴───┐
│ vDialog │ │vTextEditor │
└─────┘ └──────┘
△
│
┌──┴───┐
│vModalDialog│
└──────┘
△
┌─────┼─────────┬─────────┐
│ ┌───┴────┐┌───┴────┐┌───┴───┐
│ │ vFontSelect ││ vFileSelect ││vNoticeDialog │
│ └{X11版のみ派生} ┘└{X11版のみ派生} ┘└───────┘
│
├────┬────────┬───────┬───────┐
│ ┌──┴───┐┌───┴───┐┌──┴───┐┌──┴───┐
│ │vDebugDialog││vYNReplyDialog││vReplyDialog││vFindDialog │
│ └──────┘└───────┘└──────┘└──────┘
│
│
┌──┴───┐┌──────┐
│ vPSPrinter ││vWinPrinter │
└{X11版のみ} ┘└{Win版のみ} ┘
△ △
└───┬───┘
┌──┴──┐
│ vPrinter │
└─────┘
┌─────┐
│ vDC │
└─────┘
△
├───────┬────────┐
┌──┴───┐┌──┴───┐┌───┴───┐
│ v(X|Win)DC ││ vNullDC ││vPostScriptDC │
└{各UI版のみ}┘└{X11版のみ} ┘└{X11版のみ} ─┘
△
├───────┬───────┐
┌───┴───┐┌──┴──┐┌───┴───┐
│vCanvasPaneDC ││vMemoryDC ││vWinPrinterDC │
└───────┘└─────┘└{Win版のみ} ─┘
┌─────┐┌─────┐┌─────┐┌─────┐┌─────┐
│ vPen ││ vFont ││ vColor ││ vBrush ││ vIcon │
└─────┘└─────┘└─────┘└─────┘└─────┘
┌─────┐┌──────┐┌──────┐┌────────┐
│ vTimer ││vAppWinInfo ││ vTipWindow ││vTextEdCmdInterp│
└─────┘└──────┘└{X11版のみ} ┘└────────┘
┌──────┐┌──────┐┌─────┐┌──────┐
│vNullPrinter││ vFontList ││ vOS ││ vThisList │
└{X11版のみ} ┘└{X11版のみ} ┘└─────┘└{Win版のみ} ┘