etc.negui.window.menu.ownerdraw


struct DRAWMENUITEM;

Text text;
表示文字列
Icon icon;
表示アイコン
KEY key;
アクセスキー。
class OwnerDrawMenu: etc.negui.window.menu.popup.PopUp;
オーナードローを少しだけ補助。 描画に必要そうなDRAWMENUITEMをIDと関連付けて保持と共にdwTypeDataにDRAWMENUITEMを設定。
History:
1.060: [B] たぶんIcon.FIXEDの依存から脱却。 1.021: [P] Icon.FIXEDに依存しすぎ。
protected DRAWMENUITEM[COMMAND_ID] DrawItems;
対GC。Killの対象注意
protected SIZE IconSize;
アイコンサイズに対応するピクセルサイズ。
DRAWMENUITEM[] GetKeyItem(wchar c );

this(ref const SIZE IconSize );
History:
1.021: 新規作成。
this(Icon.FIXED IconFixed );

void iconSize(ref const SIZE IconSize );

const SIZE iconSize();

void Kill();

bool insert(ref const(MENUITEM) MenuItem , DRAWMENUITEM* DrawItem );

DRAWMENUITEM* isDrawItem(COMMAND_ID Id );
History:
1.060: [P] 戻り値の型変更。
DRAWMENUITEM* opIndex(COMMAND_ID Id );
保持しているDRAWMENUITEM参照。
void measureItem(NeGui gui , MEASUREITEM* MeasureItem );
オーナードロー描画準備。
void drawItem(DRAWITEM* DrawItem );
オーナードロー描画。
BUGS:
無効アイテムの描画。
enum CLOSE;
History:
1.060: [S] 名前変更。
IGNORE
押されたキーを破棄し、警告音を鳴らす(デフォルト)
CLOSE
アクティブなメニューをクローズする
EXECUTE
戻り値の下位ワードで指定するメニュー項目を破棄しオーナーウィンドウにWM_COMMANDを送る
SELECT
戻り値の下位ワードで指定するメニュー項目を選択する