immutable DIALOG_ID MAINLOOP_KEY;
特に指定しない場合の親ウィンドウID。
モードレスダイアログの親ウィンドID。
class DialogException: etc.negui.window.window.WindowException;
template Message()
ウィンドウのメッセージループ開始点設置用テンプレート。
- Note:
-
キーボードアクセラレータをNeWindowへ移動予定。
INT loop(DIALOG_ID DialogID
= MAINLOOP_KEY);
モーダルループの開始。
- Params:
- DIALOG_ID DialogID
- モーダルループ時の親。
同じ親を介す場合は同じIDに(たしかその設計)。
abstract class Dialog: etc.negui.window.newindow.NeWindow;
ダイアログ基底。
immutable DIALOG_ID loopOwnerID;
- History:
- 1.00β17
- source先頭を小文字に変更。
- source属性変更(protected -> public)。
protected this(ref NEGUIINFO NeGuiInfo
, DIALOG_ID LoopOwnerID
= (DIALOG_ID).init);
const NeGui parent();
親取得。
NeGui.parentと違いNeWindowへアップキャスト可能であることが保障されている。
enum WINDOWTYPE;
void toChild();
enum ACCELERATOR_DEFKEY;
Push defButton();
void defButton(Push button
);
protected void OnCreate();
protected void OnDestroy();
protected bool OnAccelerator(COMMAND_ID Id
);
class ModalDialogException: etc.negui.window.dialog.dialog.DialogException;
abstract class ModalDialog: etc.negui.window.dialog.dialog.Dialog;
protected this(ref NEGUIINFO NeGuiInfo
, DIALOG_ID LoopOwnerID
= (DIALOG_ID).init);
this(NeGui Owner
, DIALOG_ID LoopOwnerID
);
protected void ModalQuit(int ExitCode
= 0);
protected void OnCreate();
protected void OnDestroy();
INT messageLoop(CENTER Center
= (CENTER).WINDOW);
class ModelessDialogException: etc.negui.window.dialog.dialog.DialogException;
struct Modeless;
モードレス用構造体。
曖昧な知識と変に汎用性を求めてよく分からないものの出来上がり。
static void keyRegist(DIALOG_ID LoopOwnerID
, Dialog DialogWindow
);
static void keyUnRegist(DIALOG_ID LoopOwnerID
);
static bool isDialogMessage(DIALOG_ID LoopOwnerID
, MSG* Message
);
static void onActive(DIALOG_ID LoopOwnerID
, ModelessDialog dialog
, WINDOW_ACTIVE Active
);
abstract class ModelessDialog: etc.negui.window.dialog.dialog.Dialog;
this(NEGUIINFO NeGuiInfo
, DIALOG_ID LoopOwnerID
);
this(NeGui Owner
, DIALOG_ID LoopOwnerID
);
protected void OnCreate();
protected void OnActive(WINDOW_ACTIVE Active
, bool NotSmall
, HWND NextWnd
);
protected void OnDestroy();