status_t QueryAddOnServer(int32 msgCode, request_data* request, size_t requestSize, reply_data* reply, size_t replySize) { return QueryPort(sMediaAddonServerPort, msgCode, request, requestSize, reply, replySize); }
MRESULT EXPENTRY fnwpClient(HWND hwnd,USHORT msg,MPARAM mp1,MPARAM mp2) { RECTL rcl; USHORT Command; ULONG *pulPtr; switch(msg) { case WM_CREATE: stCell.cy = 12; stCell.cx = 8; hdcPs = WinOpenWindowDC(hwnd); /****************************************************************/ /* Set the size and position of the frame window by making the */ /* client area width and height integral numbers of AVIO cell */ /* units. Calculate the frame window values necessary to */ /* achieve this. */ /****************************************************************/ rcl.yBottom = 0L; rcl.xLeft = 0L; rcl.yTop = 20 * stCell.cy; rcl.xRight = 40 * stCell.cx; WinCalcFrameRect(WinQueryWindow(hwnd,QW_PARENT),&rcl,FALSE); WinSetWindowPos(WinQueryWindow(hwnd,QW_PARENT), 0, 7 * stCell.cx, 2 * stCell.cy, (SHORT)(rcl.xRight - rcl.xLeft), (SHORT)(rcl.yTop - rcl.yBottom), SWP_MOVE | SWP_SIZE); WinPostMsg(hwnd,UM_INIT,0L,0L); break; case WM_ACTIVATE: if(LOUSHORT(LONGFROMMP(mp1))) WinSetFocus(HWND_DESKTOP,hwnd); break; case UM_INIT: if (szPortName[0] != 0) WinSetWindowText(hwndFrame,szPortName); else MenuItemEnable(hwndFrame,IDM_PROCESS,FALSE); WinShowWindow(hwndFrame,TRUE); WinQueryWindowRect(hwndClient,&rcl); ulWindowWidth = rcl.xRight; ulWindowHeight = rcl.yTop; ClearScreen(); break; case WM_PAINT: Paint(); break; case WM_SIZE: WndSize(hwnd,mp2); ClearScreen(); return WinDefWindowProc(hwnd,msg,mp1,mp2); case WM_COMMAND: switch (SHORT1FROMMP(mp1)) { case IDM_SELECT: if (WinDlgBox(HWND_DESKTOP, hwnd, (PFNWP)fnwpSelectPortDlg, (USHORT)NULL, PS_DLG, NULL)) WinSetWindowText(hwndFrame,szPortDesc); break; case IDM_RECOVER_USER_INI: RecoverProfile(HINI_USERPROFILE); break; case IDM_RECOVER_SYS_INI: RecoverProfile(HINI_SYSTEMPROFILE); break; case IDM_EXIT: WinPostMsg(hwnd,WM_QUIT,0L,0L); break; case IDM_SETUP: SetupPort(); break; case IDM_REMOVE: RemovePort(); break; case IDM_INSTALL: InstallPort(); break; case IDM_INIT: InitializePort(); break; case IDM_TERM: TerminatePort(); // TerminatePort(szPortName); break; case IDM_QUERY: ulItemCount = QueryPort(achBuffer,4096); break; default: return WinDefWindowProc(hwnd,msg,mp1,mp2); } break; case WM_CLOSE: WinPostMsg(hwnd,WM_QUIT,0L,0L); /* Cause termination */ break; default: return WinDefWindowProc(hwnd,msg,mp1,mp2); } return(FALSE); }