リリース・ノート - バージョン 5.0 > コードの変更 > Views ファンデーション・クラス
 
Views ファンデーション・クラス
Views ファンデーション・クラスでは、次のコード変更が行われました。
IlvColorMap
*IlvIndexedBitmapData では、IlvColorMap を使用するようになりました。
*量子化はモジュール化され、IlvColorMap を使用するようになりました。
IlvDisplay
メソッド IlvDisplay::getBitmap に、2 番目のパラメーターが加わりました。プロトタイプは次のようになります。
IlvBitmap* getBitmap(const char* name, IlBoolean read = IlFalse) const;
IlTrue に設定すると、read パラメーターは、ビットマップが内部表示キャッシュ・リストにない場合、IlvDisplay::readBitmap メソッドを使用して読み込む必要があることを示します。
IlvPort
Windows プラットフォームでは、IlvPort::drawTransformedString メソッドが表示バグに対処するよう振る舞いが変更になりました。これによって、短い文字列が表示される場合があります。二次作用として、このメソッドを使用する IlvZoomableLabel オブジェクトの描画が、同じように変更になることがあります。
IlvBitmap
Views 5.0 以降、Windows プラットフォームでは、ディスプレイの奥行きが > 8 の場合、IlvBitmapData を内部で受け入れる IlvBitmap コンストラクターは、IlvBitmapData の奥行きの DIBSection を使用するようになりました。これによって、以下のようになります。
*IlvIndexedBitmapData を使用する場合、割り当てられたメモリーは、Views 5.0 に割り当てられたメモリーの ? になります。
*作成された IlvBitmap インスタンスのサイズおよび数は、使用可能なシステム・メモリーによってのみ制限されます。以前の Views のバージョンでは、システムによる制限 (IlvBitmap では約 48 MB、および Windows NT のすべての IlvBitmap インスタンスでは 192 MB の制限) がありました。
*IlvIndexedBitmapData を使用すると、トゥルー・カラーへの変換が必要ないため、パフォーマンスがはるかに向上します。
*IlvBitmap の奥行きは、ディスプレイの奥行きと常に等しくなるとは限りません。そのため、奥行き 8 の IlvBitmap で Views を使用して描画することによって、基底となる DIBSection のカラーマップが、描画に使用するカラーに正確には一致しないため、予期せぬ結果を招くことがあります。
IlvView
Windows の場合、以下のメソッドで、タスク・バーを考慮しないようになりました。
*IlvView::ensureInScreen
*IlvView::moveToScreen
IlvWindowsDevice
IlvWindowsDevice コンストラクターは、タイプ IlvWindowsPrinterFactory の追加のオプション・パラメーターを備えています。
IlvWindowsVirtualDevice
*IlvWindowsVirtualDevice::getHDC の戻り値タイプは、現在では HDC であり、unsigned long ではありません。
*IlvWindowsVirtualDevice::setHDC のパラメーターのタイプは、現在では HDC であり、unsigned long ではありません。
Typedef の変更
IlvWindowProc の typedef は、将来的にポートを Windows 64 ビットで使用できるように変更されました。現在は以下のとおりです。
typedef IlBoolean (* IlvWindowProc)(IlvAbstractView* view,
IlvSystemView hWnd,
IlvMsgParam iMessage,
IlvWParam wParam,
IlvLParam lParam,
IlAny& returned,
IlAny userArg);
IlvMsgParamIlvWParam、および IlvLParam は新しい 3 つの typedef であり、Windows 32 ビット用ではそれぞれ unsigned int、unsigned int、and long となります。つまり、以前のバージョンの Views 用に書かれたコードは、まだコンパイルでき、動作することを意味します。ただし、このタイプは、Windows 64 ビット用とは異なり、移植可能な新しいタイプを使用する必要があります。
ポートは Windows64 ビットではまだ使用できないことに注意してください。詳細は未定です。

Version 5.6
Copyright © 2012, Rogue Wave Software, Inc. All Rights Reserved.