#include WORD LoginDialog::performLogin(void) { DialogTemplate dlgTemplate; DialogItemTemplate userEdit; DialogItemTemplate passEdit; DialogItemTemplate userStatic; DialogItemTemplate passStatic; dlgTemplate.titleText("Login to host..."); dlgTemplate.posRect(Rect(8,19,197,76)); dlgTemplate.pointSize(8); dlgTemplate.typeFace("Helv"); dlgTemplate.style(DS_MODALFRAME|WS_TABSTOP|WS_VISIBLE|WS_CAPTION|WS_SYSMENU|DS_3DLOOK|DS_SETFONT|WS_POPUP); userEdit.className("EDIT"); userEdit.titleText(""); userEdit.style(WS_BORDER|WS_TABSTOP|WS_VISIBLE|WS_CHILD|ES_AUTOHSCROLL); userEdit.posRect(Rect(56,19,98,12)); userEdit.itemID(UserNameID); passEdit.className("EDIT"); passEdit.style(WS_BORDER|WS_TABSTOP|ES_PASSWORD|WS_CHILD|WS_VISIBLE); passEdit.posRect(Rect(56,35,98,12)); passEdit.itemID(PasswordID); userStatic.className("STATIC"); userStatic.titleText("User Name :"); userStatic.style(WS_CHILD|WS_VISIBLE); userStatic.posRect(Rect(2,20,39,8)); userStatic.itemID(-1); passStatic.className("STATIC"); passStatic.titleText("Password :"); passStatic.style(WS_CHILD|WS_VISIBLE); passStatic.posRect(Rect(2,36,39,8)); passStatic.itemID(-1); dlgTemplate+=userEdit; dlgTemplate+=passEdit; dlgTemplate+=userStatic; dlgTemplate+=passStatic; createDialog(::GetTopWindow((HWND)0),dlgTemplate); if(userName().isNull()&&password().isNull())return FALSE; return TRUE; } WORD LoginDialog::dlgCommand(DWORD commandID,CallbackData &/*someCallbackData*/) { switch(commandID) { case IDOK : getText(UserNameID,mUserName); getText(PasswordID,mPassword); if(mUserName.isNull()||mPassword.isNull()){::MessageBeep(0);return TRUE;} break; case IDCANCEL : mUserName.reserve(String::MaxString); mPassword.reserve(String::MaxString); break; } return FALSE; } BOOL LoginDialog::dlgInitDialog(CallbackData &/*someCallbackData*/) { if(!userName().isNull())setText(UserNameID,userName()); if(!password().isNull())setText(PasswordID,password()); setFocus(); return TRUE; } void LoginDialog::dlgDestroyDialog(CallbackData &/*someCallbackData*/) { }