added connection-info to the status-bar.

This commit is contained in:
Erik Faye-Lund 2008-02-27 15:50:39 +00:00
parent da96ca4262
commit 2c077a7fe2
3 changed files with 17 additions and 8 deletions

View File

@ -213,9 +213,9 @@ static LRESULT CALLBACK mainWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARA
NULL // window data NULL // window data
); );
int statwidths[] = { 100, -1 }; int statwidths[] = { 150, -1 };
SendMessage(statusBarWin, SB_SETPARTS, sizeof(statwidths) / sizeof(int), (LPARAM)statwidths); SendMessage(statusBarWin, SB_SETPARTS, sizeof(statwidths) / sizeof(int), (LPARAM)statwidths);
SendMessage(statusBarWin, SB_SETTEXT, 0, (LPARAM)_T("Hi there :)")); SendMessage(statusBarWin, SB_SETTEXT, 0, (LPARAM)_T("Not connected"));
SendMessage(statusBarWin, SB_SETTEXT, 1, (LPARAM)_T("Hi there :)")); SendMessage(statusBarWin, SB_SETTEXT, 1, (LPARAM)_T("Hi there :)"));
} }
break; break;
@ -425,16 +425,20 @@ int _tmain(int argc, _TCHAR* argv[])
// look for new clients // look for new clients
if (select(0, &fds, NULL, NULL, &timeout) > 0) if (select(0, &fds, NULL, NULL, &timeout) > 0)
{ {
puts("accepting..."); SendMessage(statusBarWin, SB_SETTEXT, 0, (LPARAM)_T("Accepting..."));
clientSocket = clientConnect(serverSocket); sockaddr_in client;
clientSocket = clientConnect(serverSocket, &client);
if (INVALID_SOCKET != clientSocket) if (INVALID_SOCKET != clientSocket)
{ {
puts("connected."); TCHAR temp[256];
_sntprintf_s(temp, 256, _T("Connected to %s"), inet_ntoa(client.sin_addr));
SendMessage(statusBarWin, SB_SETTEXT, 0, (LPARAM)temp);
document.clientSocket = clientSocket; document.clientSocket = clientSocket;
document.clientRemap.clear(); document.clientRemap.clear();
document.sendPauseCommand(true); document.sendPauseCommand(true);
document.sendSetRowCommand(trackView->getEditRow()); document.sendSetRowCommand(trackView->getEditRow());
} }
else SendMessage(statusBarWin, SB_SETTEXT, 0, (LPARAM)_T("Not Connected."));
} }
} }
@ -452,6 +456,7 @@ int _tmain(int argc, _TCHAR* argv[])
document.clientSocket = INVALID_SOCKET; document.clientSocket = INVALID_SOCKET;
document.clientRemap.clear(); document.clientRemap.clear();
InvalidateRect(trackViewWin, NULL, FALSE); InvalidateRect(trackViewWin, NULL, FALSE);
SendMessage(statusBarWin, SB_SETTEXT, 0, (LPARAM)_T("Not Connected."));
break; break;
} }
else else

View File

@ -39,9 +39,11 @@ void closeNetwork()
static const char *clientGreeting = "hello, synctracker!"; static const char *clientGreeting = "hello, synctracker!";
static const char *serverGreeting = "hello, demo!"; static const char *serverGreeting = "hello, demo!";
SOCKET clientConnect(SOCKET serverSocket) SOCKET clientConnect(SOCKET serverSocket, sockaddr_in *host)
{ {
SOCKET clientSocket = accept(serverSocket, NULL, NULL); sockaddr_in hostTemp;
int hostSize = sizeof(sockaddr_in);
SOCKET clientSocket = accept(serverSocket, (sockaddr*)&hostTemp, &hostSize);
if (INVALID_SOCKET == clientSocket) return INVALID_SOCKET; if (INVALID_SOCKET == clientSocket) return INVALID_SOCKET;
const char *expectedGreeting = clientGreeting; const char *expectedGreeting = clientGreeting;
@ -58,6 +60,7 @@ SOCKET clientConnect(SOCKET serverSocket)
const char *greeting = serverGreeting; const char *greeting = serverGreeting;
send(clientSocket, greeting, int(strlen(greeting)), 0); send(clientSocket, greeting, int(strlen(greeting)), 0);
if (NULL != host) *host = hostTemp;
return clientSocket; return clientSocket;
} }

View File

@ -24,7 +24,8 @@
bool initNetwork(); bool initNetwork();
void closeNetwork(); void closeNetwork();
SOCKET clientConnect(SOCKET serverSocket); // SOCKET clientConnect(SOCKET serverSocket);
SOCKET clientConnect(SOCKET serverSocket, sockaddr_in *host = NULL);
SOCKET serverConnect(struct sockaddr_in *addr); SOCKET serverConnect(struct sockaddr_in *addr);
bool pollRead(SOCKET socket); bool pollRead(SOCKET socket);