更新履歴
以下の情報は古くなっており、参考の目的のみで残してあるものです。
GrWin の最新版はこちらから利用できます。
- Ver 0.99.9b
- gwd フォーマットでファイル保存( *.gwd )する場合,使用しているビットマップを gwd ファイルに埋め込み可能(デフォルト)とした。
- GWMODE(および,GWmode )の仕様を拡張して,終了時にウィンドウを閉じないモードと,ビットマップを gwd ファイルに埋め込むモードの設定と解除ができるようにした。
- 2度目以降の'ジョイン'(GWjoin 参照)に失敗するバグを修正した。
- その他の修正を行った。
- Ver 0.99.9a
- タートル・グラフィクスのためのルーチン群 (GWTxxxxx, 及び倍精度版の GWDTxxxxx) を追加した。これらのルーチン群は再描画のための座標情報をワールド座標として,実数 (GWTxxxxx) または倍精度実数 (GWDTxxxxx) で保持するので,相対座標による描画でも誤差の蓄積がほとんど生じない。
- Intel(R) C++/Fortran Compiler をサポート対象に加えた。
- OpenWatcom の C/C++/Fortran77 をサポート対象に加えた。
- Intel(R) C++, Borland C/C++, Microsoft Visual C++, Digital Mars C/C++ Compilers 用の f2c ライブラリを用意することによって,これらの環境で Fortran コンパイラを所有していない場合でも Fortran 77 によるプログラミングが可能になった(含,pgplot ドライバ)。
- 使用環境ごとのインストーラを用意することでインストールが簡単になった。
- GWINDOW(および,GWindow)の仕様を拡張して,ビューポートのワールド座標系における幅または高さの一方のみが 0 となる設定を行うと,0 でない高さまたは幅を参照して,アスペクト比が 1:1 の等方的座標系が得られるようにした。ワールド座標系を論理デバイス座標系と同じにする場合は,幅と高さの両方が 0 になるように設定すればよい。幅か高さの一方のみを 0 とする設定を行っていた場合に限って,ソースコードの変更が必要。
- GWSIZE と GWVMODE(および,GWsize と GWvmode)の仕様を拡張して,
GWinit による初期化後なら,ウィンドウのオープン以前でも,
種々(ウィンドウと無関係のものに限る)のサイズやデフォルトのビュー(表示)モードについて,設定や問い合わせを可能にした。ソースコードの変更は不要。
- ディスプレイ上のピクセル・サイズの現在の値をワールド座標系で取得するための GWPXLSIZ (および,GWpxlsiz) を追加した。
- GWSLEEP2(および,GWsleep2)の仕様を拡張して,呼び出し時の内部時計の時刻
を成功時の戻り値として返すようにした。これによりラップタイムの計測が容易になった。
ソースコードの変更は不要。
- GWSETMRK(および,GWsetmrk)の仕様を拡張して,ビュー(表示)モードによらずピクセル値でサイズを指定できるマーク(塗りつぶされた正方形)を新設した。
これにより内部の座標変換によるサイズの乱れのないきれいな点のプロットが可能になった。
ソースコードの変更は不要。
- GWPUTCMB(および,GWputcmb)の仕様を拡張した。
ソースコードの変更は不要。
- ビットマップの登録削除を行うための GWDELBMP (および,GWdelbmp) を追加した。
- コンボを多数作ろうとすると失敗してしまうことのあるバグを修正。
- OGN(オブジェクト・グループ番号)に大きな値を設定しようとすると失敗してしまうバグを修正。
- フラッシュ描画で描画オブジェクト数が0の場合に古いオブジェクトの消去がなされないバグの修正。
- 多種類(500程度)のオブジェクトを作成すると grwnd.exe 内部でループしてしまうことのあるバグの修正。
- VF 環境で KBHIT が使えなかったバグの修正。
- Ver 0.99.9
- ウィンドウを閉じないで終了するための GWLEAVE(および GWleave)を加えた。
- 開いているウィンドウに追加書きするための GWJOIN, GWJOINX(および GWjoin, GWjoinx)を加えた。
- Calcomp ライブラリのさまざまな「方言」に柔軟に対応できるように,Calcomp のライブラリ・ファイル libcalcomp.a ( VC++ / BC では calcomp.lib) を独立させた,libGrWin0.a ( VC++ / BC では GrWin0.lib) を用意した。
GrWin0 ライブラリとともに従来どおり Calcomp ライブラリを使用する場合にはリンク時のオプションとして -lGrWin0 だけでなく -lcalcomp を加える必要がある( VC++ / BC では GrWin0.lib と calcomp.lib) 。
- GWOPEN, GWOPENX (および GWopen, GWopenx) の仕様を変更して,
必要な場合に GWINIT (GWinit) を呼び出すように変更した。
したがって,オプション指定が必要な場合等を除いて明示的に GWINIT
を呼び出す必要はない。
また,最近の高解像度プリンタに対応しデバイス非依存とするため,
内部「用紙」サイズを指定するときの単位をピクセル値から 0.1 mm へ変更した。
「用紙」サイズの指定を行っている場合はソースコードの修正が必要。
その他の場合はこの変更に伴うソースコードの修正は不要。
- GWSIZE (および GWsize) の仕様を変更して,
プリンタ関連の長さの単位をピクセル値(マージンの場合は mm )から 0.1 mm へ変更した。
- GWPRINT (および GWprint) の仕様を変更して,印刷時のビュー(表示)モードを現在のウィンドウのビューモードとは独立に設定できるようにした。このルーチンの呼び出しを行っている場合はソースコードの修正が必要。
- GWINITX(および GWinitx)の仕様拡張を行い,プログラムから grwnd.exe のすべての起動オプションを指定可能にした。
これらを使用している場合はソースコードの修正が必要。
- grwnd.exe のすべての起動オプションを設定ファイル *.ini で設定可能にした。
- 起動オプションの設定ファイル *.ini を編集するためのダイアログを新設した。
- 「名前を付けて保存」のダイアログを変更した。
- GWPORT (および GWport) を使うと上下が反転してしまうバグをフィックスした。
- 保存モードが OFF のときでもクリップボードへのコピーが可能になった。
- GWMODE(および GWmode)の仕様拡張を行った。この変更に伴うソースコードの修正は不要。
- Ver 0.99.8b で判明した Windows のバグ(マイクロソフト サポート技術情報 - Q156696)に対応した。これにより,Windows 9x でもメモリーリークなしに GWSETRGN (および GWsetrgn) が正常に機能するようになった。
- 試験的に, Digital Mars C/C++ Compilers をサポート対象に加えた。
- その他の修正を行った。
- Ver 0.99.8b
- Windows 9x のみで,リソースリークが発生してフリーズしてしまうことがあるバグ(Windows 9x のバグと思われる)に対応した。このため,Windows 9x では GWSETRGN (および GWsetrgn) が正常に機能しなくなった(Windows Me/NT/2k/Xp では問題なし)。
- その他の修正を行った。
- Ver 0.99.8a
- Windows XP に対応した。
- MinGW 最新版の MinGW-1.1 に対応した。
- Cygwin 最新版の Cygwin-1.3.x に対応した。
- UWIN 最新版の UWIN-2.9 に対応した。
- 1次元配列に格納されたデータを折れ線グラフや棒グラフなどとして一括してプロットする GWPLOT1 (および GWplot1) を加えた。
- インターバルタイマーを起動/停止する GWTIMER (および GWtimer) を加えた。
- インターバルタイマーが生成するタイマー・イベント情報を取得するために GWEVENT (および GWevent) の仕様を拡張した。
- GWSLEEP2(および GWsleep2)の仕様を拡張した(マニュアルを修正した)。
- 内部時計の現在時刻を取得する GWCTIME(および GWctime)を加えた。
- 0.99.8 のリリース後に発見されたバグのフィックスを行った。
- Ver 0.99.8
- 保存時のファイル・フォーマットや表示モードを変更できるように GWSAVE (および GWsave) の仕様を拡張するとともに,ルーチン名を GWSAVEAS (および GWsaveas) に変更した。GWSAVE (および GWsave) は将来的に廃止の予定。
- 特定のディスプレー・モードでビットマップ関連の警告が出るバグを修正。
- マークで使われるペンの色が常に黒色になってしまうバグを修正した。
- ビットマップ縮小時にモアレ様のノイズが出るバグを修正。
- GWLOADEMF (および GWloadEMF) と GWSAVEEMF (および GWsaveEMF) のルーチン名をそれぞれGWLOADCMB (および GWloadcmb),GWSAVECMB (および GWsavecmb) に変更した。これらを使っているソースコードは要修正。
- GWSETBMP (および GWsetbmp) の仕様を拡張した。
- GWPOLYGON,GWPOLYLIN,GWBEZIER (および GWpolygon,GWpolylin,GWbezier) にあったセグメント数の上限(256)を撤廃した。
- GWSETTXT と GWSETSYM (および GWsettxt と GWsetsym) の仕様変更および拡張を行った。これらを使用している場合には,ソースコードの変更が必要。
- GWSIZE (および GWsize) の仕様変更および拡張を行った。これらを使用している場合には,指定しているパラメータによってはソースコードの変更が必要な場合がある。
- ワールド座標系でビューポートを設定する GWPORT (および GWport) を追加した。
- ビューモード名の「スクロール」を「ビットマップ」に改めた。
- 出力可能なファイルの種類に,ビットマップ (*.bmp) 形式を追加した。
- 出力のファイル形式として,旧形式である Windows メタファイル (*.wmf) 形式をサポート対象から除外した。
- pgplot ライブラリからの移植例として,回転する多面体のデモ demo/gwdemo17.f を加えた 。
- grwnd.exe のコマンドラインから,プリンタ用紙の横置き(ランドスケープ)モードの設定/解除のためのオプション( -l, -L )を追加した。
- GWINITX (および GWsize) の仕様拡張を行い,プログラムから,プリンタ用紙の横置き(ランドスケープ)モードの設定/解除を可能にした。
- Ver 0.99.7x
- Ver 0.99.7 の再描画やフラッシュ描画に関係したバグを fix。Ver 0.99.7 からは grwnd.exe のみを入れ替えればよい。
- Ver 0.99.7
- 描画オブジェクトの集合としての`コンボ'を導入した。コンボは任意の大きさで何度でも描画に使うことができ,emf ファイル(拡張メタファイル)として外部ファイルに保存/読み込みも可能。
- ビットマップの内部処理を大幅変更し,バッファリング・モードでもアニメーションが可能になった。また,これにより,GWFLUSH を利用することでちらつきの少ないアニメーションを実現できる(サンプルプログラムの bounce, dp, soliton 等を参照)。
- バッファリング・モードをデフォルトにした。
- 再描画を高速に行うために背景を登録する GWSETBK (および GWsetbk) を追加した。
- GWKYBRD (および GWkybrd) の仕様を変更した。これらを使用している場合はソースコードの変更が必要 (ほとんどの場合,引数の並びの最後に ', -1' を加えればよいはず) 。
- アイドル処理のための GWIDLE, GWIDLE2 (および GWidle, GWidle2) を追加した。アイドル処理中にはキーボードの矢印キーでマウスカーソルを移動することができる。
- 時間待ち処理のための GWSLEEP2 (および GWsleep2) を追加した。
- 低レベルの関数群 GW_xxxxxx を公開した。これらは,基本的に「論理デバイス座標系」を使うので,ワールド座標系から変換するときの丸め誤差の影響を排除することができ,1ピクセル単位の操作をしたいときなどに利用できる。引数の並びについては GrWin.h を,機能についてはマニュアルの,対応する関数の項を参照。各低レベルの関数の第1引数 int nDoc には,GWopen または GWopenx が返すウィンドウ番号を指定する。
- GWCAPIMG,GWCLIPIMG (および GWcapimg,GWclipimg) の仕様を拡張した。
- GWVPORT (および GWvport) の仕様を拡張した。
- GWLOAD (および GWload) の仕様を拡張/変更した。
- GWANCHOR (および GWanchor) の仕様を拡張/変更した。とくに,GWanchor(0) の意味が変更されたので,これを使っているソースコードは要修正。
- GWSIZE (および GWsize) の仕様を拡張/変更し,'用紙サイズ' 以外,例えば,フレーム・ウィンドウの大きさも変更可能になった。これらを使用している場合はソースコードの変更が必要。
- GWARRANGE (および GWarrange) の仕様を拡張した。
- フレーム・ウィンドウの表示モードを設定する GWSHOWFR (および GWshowfr) を追加した。
- grwnd.exe の起動オプションの指定が可能な GWINITX (および GWinitx) を追加した。
- ループ処理中にもキーボードやマウスからの割り込みを検出するこのできる GWEVENT (および GWevent) を追加した。
- ハッチパターンの指定がマニュアルの記述とずれていたバグを修正。
- メニューに [ウィンドウ(W)]->[フィット(F)] を追加した。機能は GWsize(-3,0,0) と同じ。
- メニューに [ウィンドウ(W)]->[最前面(T)] を追加した。機能は GWshowfr(11) と同じ。
- grwnd.exe の起動オプションが利用可能になった。
- その他,多数の修正を行った。
- Ver 0.99.6x
- 印刷のプレビューとemf ファイル出力におけるクリッピングに関係したバグと,
他の小さなバグを修正。
- mingw32 で,gcc-2.95.2-msvcrt にも対応した。
- 他に大きな変更はないが,
データ構造の変更を行ったために Ver 0.99.5 以前で作成した *.gwd ファイルとの互換性が失われたのでバージョン番号を更新した。
- Ver 0.99.5
- 旧版に較べてある程度の高速化を達成した。
- [ビュー] のアクセラレー・テータキーを一部変更した。
- GWCLEAR (および GWclear) の引数 K に関する仕様の一部を修正した。
新しい仕様では K = -1 を指定するとメモリに保存されているすべてのオブジェクトが消去され,これは,メニューから [ビュー] => [消去] を選択したのと同じ。
古いソースで K = -1 (背景色による塗りつぶし) としていて,オブジェクトが消去されると都合が悪い場合には K = -3 に変更する必要がある。
- 塗りつぶされた四角形を描画するための GWSRECT (および GWsrect) を加えた。
同じことは GWSETPEN+GWSETBRS+GWRECT でも実現できるが,GWSRECT の方が高速。
- オブジェクトの保護に利用できる GWANCHOR を加えた。
- 回転など,描画時に2次元の座標変換を行う行列の設定と取得のための GWSETXFRM と GWGETXFRM を加えた(Windows Me/9x では正しく動作しない)。
- クリッピングのための GWSETRGN を加えた。
- ヘッダファイル GrWin.h を C++ に対応し,gpp (GNU の C++) のためのバッチファイルを配布に加えた。
- GWPUTTXT で,用紙の範囲から大きく外れた点を文字列の左下の点の座標として指定すると,文字列は以前の出力の直後に出力されるように変更した。
- 対応する開発環境に Borland C++ Compiler 5.5 を加えた。
- Ver 0.99.4C
- Ver 0.99.5 公開前のカレント版として,複数の版が存在。
- Ver 0.99.3
- GWsavevp と GWselvp に関係した grwnd.exe のバグを修正。
- GWkybrd の動作を変更し、キーが放されるまで制御を戻さないモードを選択できるようにした。GWkybrd の第2引数 NCNT に -1 または NULL (C の場合) を指定していた場合にはソースコードの修正の必要がある。
- GWASPECT のバグ (Fortran のみ) を修正。
- サポートする開発環境に Cygwin 1.1.0 を加えた。
- コンソール・ウィンドウで使用可能な,C の getch() や getche() に相当する Fortran の関数 KBGETCH を加えた。
- ソースコード・チェッカー f77chk.pl の組み込み関数に関係するバグを修正し,f77chk.pl のバージョンを 1.2.2 に更新した。
- GWSIZE (と GWsize ) で現在のビューポートのサイズをピクセル単位で取得できるようにした。
- Ver 0.99.2
- 上記 Ver 0.99.3 の公開前のカレント版として,Ver 0.99.2 には複数の版が存在した。
- Ver 0.99.1
- Ver 0.99.0
- βバージョンの候補として一部に試験的に公開
- 対応する開発環境に Microsoft Visual C++ Version 6.0 (スタティック・ライブラリのみ) を加えた 。
- 対応する開発環境に Compaq (旧 DIGITAL) Visual Fortran 6 (同上) を加えた。
- メタファイル(*.emf, *.wmf)による出力が可能となった。これにより、MS-Word など、メタファイルをサポートしているワープロ,たとえば MS-Word などへの出力図形の貼り付けが容易になった。
- 高速化のため,GWerase (および GWERASE) の仕様を変更して,オブジェクトの消去のみで,画面の更新を行わないことができるようにした。
- GWaspect の仕様を変更して,各種アスペクト比を取得できるようにした。
- GWversion の仕様を変更した。
- Ver 0.98.2
- 背景色などの設定が機能しないバグを修正した。
- GWopenx (および GWOPENX) の仕様を変更して,前景色と背景色の初期値を設定できるようにした。
- GWsetogn の仕様を変更して,描画の保留を可能にした。保留を解除することで計算に時間がかかる描画を一気に行うことができる。
- 描画の保留の解除と描画図形の切り替えを行う GWflush を加えた。
- GWRDRWMOD を廃止して,新設の GWMODE に統合した。
- grwnd.exe の機能を強化した。
- Ver 0.98.1
- Windows 9X で grwnd.exe が GDI リソースを消費し尽くしてしまうことがあるバグを修正した。
- grwnd.exe の他の不具合を修正した。
- GWerase (および GWERASE) の仕様を変更して,描画のリワインドを可能にした。
- GWrdrwmod (および GWRDRWMOD) の仕様を変更して,再描画モードだけでなく,バッファリングを行うかどうかの切り替えをアプリケーションから行えるようにした。
- Ver 0.98.0
- 角度の指定を "度"(deg) から "度/360" に変更した。
- バッファ描画モードを改善した。
- オブジェクト・グループを導入して,選択的にオブジェクト(図形データ)を消去できるようにした。
これに伴い,GWERASE (と GWerase ) の仕様を変更した。
- C の関数について,必要のない出力変数のポインタに NULL を使用することができるようにした(GWsize を除く)。
- Fortran のサブルーチンの第一引数に C の関数の戻り値と同じ値を返すようにした.
これに伴い,ほとんどすべてのサブルーチンの引数の並びが変更されたが,
GWOPEN などの入力パラメータに定数が使えるようになった。
旧版用のFortranソース・コードをこの版に合わせて書き換えた場合には,
同梱の f77chk で引数の並びの整合性等のチェックが可能。
- ライブラリの開発環境を最新の GCC-2.95.2 ( mingw32 / cygb20 / uwin20) に変更した。
- ビットマップ関連の機能を充実するとともに,内部座標系(論理デバイス座標系)の原点を従来の左下から,左上へと変更した。
- 記号を「ビットマップ」として描画するモードを廃止し,そのかわり,フォント(任意の TrueType フォント)をビットマップに変換する GWfnt2bmp を加えた。
- ウィンドウごとに設定されるアニメーション・モード (GWanmmod) を廃止し,
ビットマップの属性として背景モードを設定できるようにした。
背景モードを制御することによって従来のアニメーション・モードと同等(以上)の機能を実現することができる。
- 配列として与えられたビットマップ・データからビットマップを作成する GWmakebmp を加えた。作成されたビットマップは GWsavebmp で bmp ファイルに保存すれば,他のアプリケーションからも利用できる。
- ライブラリのバージョン番号などの文字列を取得する GWversion を加えた。
- 現在のワールド座標系を取得する GWgetwn を加えた。
- 複数のウィンドウを開いているときに,GWsavevp/GWselvp が正常に働かないバグを修正した.
- マーク・サイズの指定を,フォントの場合に合わせて,ワールド座標系の高さ(旧版では幅)で与えるように変更した。
- grwnd.exe で [ヘルプ] メニューを変更し,ライブラリ・マニュアルを参照できるようにした。
- フォント生成関係のバグの修正を行った。
- 変更のあった C の関数:
- 廃止:
- GWanmmod
- 追加:
- GWarc, GWchord, GWfnt2bmp, GWgetwn, GWldcpos, GWldcsiz, GWmakebmp, GWpie, GWpolylin, GWrrect, GWsetogn, GWversion
- 変更:
- GWcapimg, GWcappnt, GWcopybmp, GWerase, GWfiledlg, GWgetbmp, GWgettxt, GWinput, GWkybrd, GWloadbmp, GWmouse, GWopen, GWopenx, GWgetpxl, GWputbmp, GWrdrwmod, GWsetbmp, GWsetmrk, GWsetsym, GWsettxt, GWvwmod
- その他の変更を行った。
- これらの変更により,旧版で作成した exe ファイルと gwd ファイル (出力データ) の互換性が失われたので,古いソースを利用するにはコンパイル(exe)やデータ作成(gwd)のし直しが必要。
フォートランの場合,ソース・コードのチェックには同梱の f77chk を利用してください。
- Ver 0.97.2
- 各種パラメ−タをデフォルト値に戻す GWreset を加えた。
- 新たに GWsavevp と GWselvp,GWgetvp を加え,現在のビューポート情報を保存/復帰/取得できるようにした。これにより,単一ウィンドウ内での複数のビューポートの操作が容易になった。
- GWclear の仕様を一部変更して,現在のビューポートの内部を単一色 (背景色) で塗りつぶすようにした。
- その他の小修正を行った。
- Ver 0.97.1
- GWkybrd の仕様を一部変更して,仮想キー・コードだけでなく最後に押された非システムキーの文字コードも取得できるようにした。
- 全体を単一色で塗りつぶす GWclear を追加した。
- 再描画関係のバグ修正。
- サポート対象に AT&T UWIN 2.0 を加えた (配布ファイル名 lGrWn0971A 以降)。
- Ver 0.97.0
- ライブラリの開発環境を最新の GCC-2.95 ( mingw32 / cygb20 ) に変更した
- 単一の主ウィンドウでのボトルネックを解消するために,アプリケーションごとに独立した主ウィンドウを開くようにした。
- [ファイル] -> [印刷] の見直しを行い,ディスプレィ上の表示に近い出力が得られるようにした。
- 文字列の幅と高さを取得する GWgettxt を追加した。
- アプリケーションから表示モードを変更する GWvwmod を追加した。
- アプリケーションからウィンドウ配置を変更する GWarrange を追加した。
- アプリケーションからウィンドウの表示状態を設定する GWshowwn を追加した。
- GWopenx の仕様を一部変更して,オープン時のウィンドウの表示状態を設定できるようにした。
- バックグラウンドで描画ができるように,GWselect でカレント・ウィンドウを変更してもアクティブなウィンドウは変わらないようにした。
- その他の小修正を行った。
- これらの変更により,旧版で作成した exe ファイルと gwd ファイル (出力データ) の互換性が失われたので,古いソースを利用するにはコンパイル(exe)やデータ作成(gwd)のし直しが必要。
フォートランの場合,ソース・コードのチェックには同梱の f77chk を利用してください。
- Ver 0.96.0
- 国際化版として,日本語環境ではメニューが漢字で表示されるようになった。
非日本語環境では旧版と同じ英語。
- アプリケーションから漢字が使えるようになった。
これに対応して,日本語環境でのデフォルト・フォントを "MS ゴシック" に変更した。
非日本語環境では旧版と同じ "Arial"。
- 表示モードの設定を [View] から分離して,新設の [表示モード] メニューから行うように変更した。
- [ファイル] -> [印刷] の見直しを行った。
- GUI 環境でキーボードより文字列を入力するための新しいルーチン GWinput を追加した。
- GWonanm と GWoffanm を GWanmmode へ統合した。
- GWonrdrw と GWoffrdrw を GWrdrwmode へ統合した。
- GWcapvec, GWcaplin, GWcaprect の仕様を変更した。
- アプリケーションと grwnd.exe の間の通信方法を見直して,効率化を達成した。
- これらの変更により,旧版で作成した exe ファイルと gwd ファイル (出力データ) の互換性が失われたので,古いソースを利用するにはコンパイル(exe)やデータ作成(gwd)のし直しが必要。
フォートランの場合,ソース・コードのチェックには同梱の f77chk を利用してください。
- Windows アプリケーション (GUI) に対応した。
- その他の小修正を行った。
- Ver 0.95.2
- Fortran77 用のソース・コード・チェッカー f77chk を配布ファイルに含めた。
これを利用すると,古いバージョン用に書かれたソース・コードを最新版に対応させるために必要な変更箇所の発見が容易になる。
- GWMOVE2 と GWLINE2 の仕様を変更し,GWMOVE2 でペン位置を初期化しないでも,
ペンの初期位置が未定義であることによる余分な直線を描かないようにした。
- libGrWin.[ah]と grwnd.exe で,バージョン番号の最後の桁 (0.95.X なら X)
だけが異なる場合には,警告を出さないようにした。
- grwnd.exe を Visual C++ Ver.6.0 (SP2) でコンパイルした。
- 保存ファイル (*.GWD) のドラッグ&ドロップをサポートした。
- 起動時のコマンドラインで,アプリケーション名以外のオプションなどが指定されていると "failed to get current directory" というメッセージを出してしまうバグを fix した。
- その他の小修正を行った。
- Ver 0.95.1
- ライブラリを egcs-1.1.2-mingw32 / egcs-1.1.2-cygb20 でコンパイルし直した。
- クリップボードに関連したバグを fix した。
- Ver 0.95
- 多機能化と速度面での改良がなされた。
- ファイルへの保存(GWSAVE),ファイルからの読み込み(GWSAVE),印刷(GWPRINT),多角形の描画(GWPOLYGON),ベジエスプラインの描画(GWBEZIER)のための機能を追加した。
- 再描画の高速化の試みとして,バッファ描画モードを新設した。ただし、この機能は Windows NT4 においてのみ動作確認がされていて、Windows 9x では機能しない模様。
- 以上の変更に伴い grwnd.exe のメニューバーの再構成を行った。
- 旧版では各種ラスター・オペレーション(混合モード)に対応するために記号フォントを一旦ビットマップに変換してから描画していたが,リソースの節約と高速化のため,これに加えて単純な描画方法を選択できるようにした。
- 同様に、旧版ではマークを内部的にビットマップとして扱っていたが,これを改め,ペンとブラシで描画するようにした。これに伴い,マークの混合モードの指定方法が変わった。
- アニメーション・モードに設定するとメモリー・リークが発生していた点を修正
- リソースの節約のために,再描画のためのデータを保存しないモードを設定(再描画モード解除)する GWOFFRDRW と,その逆(再描画モード設定)の GWONRDRW を新設した。
- その他,多数のバグ修正と,コマンド体系の見直しを行った。旧版からの移行にはソース・コードの関連部分の変更が必要(以下参照)。
- ・新たに加えられたルーチン:
- GWSETBMP, GWGETBMP, GWGETPXL, GWSETPXL, GWOFFRDRW, GWONRDRW, GWGETPOS, GWSLEEP, GWLOAD, GWSAVE, GWPRINT, GWPOLYGON, GWBEZIER, GWCAPVEC
- ・名前(と仕様)が変更されたルーチン:
- GWSETFNT=>GWSETTXT, GWSYMBOL=>GWPUTSYM, MKCOLOR=>GWCOLOR, GWBMPINFO=>GWGETBMP, GWPUTMSG=>GWSETMSG, GWCPYBMP=>GWCOPYBMP, GWARATIO=>GWASPECT, GWCAPREC=>GWCAPRECT
- ・仕様が変更されたルーチン:
- GWPUTTXT, GWSETSYM, GWCAPPNT, GWSETMRK, GWPUTMRK, GWGETMRK, GWPUTBMP, GWSETSYM, GWSIZE
- Ver 0.94
- 「混合モードの取得」のための gwgetmix(GWgetmix) と「混合モードの指定」のための gwsetmix(GWsetmix) を廃止し,それぞれ gwgetpen(GWgetpen) と gwsetpen(GWsetpen) に統合した。旧版からの移行にはソース・コードの関連部分の変更が必要。
- Ver 0.93
- grwnd.exe のメニューバーに,表示の「中断と強制終了」のための項目 [View] -> [Puse/Abort] を新設した。
- TrueType フォントが使われている場合でも保存ファイル(デフォールトの拡張子は *.gwd )の読み込みができるようになった。
- grwnd.exe の起動時にコマンドラインに保存ファイル名(同上)を指定することでも保存ファイルの内容をを表示できるようになった。これにより,拡張子 .gwd にアプリケーション grwnd.exe を関係付けすることで,保存ファイルの内容の確認が容易になる。
- [View] -> [Isotropic] 表示モードの仕様を一部変更して,
アスペクト比を保ったままビューポートをウィンドウ内で最大表示するモードとした。
- C から GWselct (ウィンドウの選択) を呼び出した場合に,パラメターの切り替えが正常に行われなかったバグを修正した。
- ビューポートの原点が (0,0) でないときに,
[Isotropic] 及び [Fit] の表示モード でビューが正しく表示されないバグを修正。
- バージョンの異なるライブラリをリンクした実行ファイルについても,警告を表示するだけでそのまま続行するようにした。
- 内部座標(ライブラリの仕様とは無関係)の見直しと,その他の小修正を行った。
- Ver 0.92
- ライブラリを egcs-1.1.1-mingw32 でコンパイルした。
- egcs-1.1.1-cygb20 でコンパイルしたライブラリを用意した。
- 使用条件を変更し,完全なフリーソフトとした。
- その他,いくつかの小修正
- Ver 0.91+
- Ver 0.91
- ライブラリの開発環境を egcs-1.0.2-mingw32 に変更した
- Ver 0.9 のライブラリに加えられていなかったカルコンプ系のサブルーチン等を実装した
- 文字列の基準点を左上から左下に変更した
- グラフィクス・ウィンドウ上でキーボードの状態を取得するサブルーチンGWKYBRD を追加
- その他,いくつかのバグ修正
- Ver 0.9

Tsuguhiro TAMARIBUCHI <tamari@grwin.com>
Last modified: Mon Jul 21 16:54:16 JST 2003