X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin4_src%2FServer%2FCClient.cpp;h=2abcb9b5ed2714e4ca3e3b9b2bb839dfea684a3c;hb=8b72370eae1a3cfa8916136fd8ffc1460e9291ba;hp=6c9fe685a678202d58615c3b8e8ee3271fc19ef9;hpb=145dd00e5c5a36f844be327e16a00b2983245423;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin4_src/Server/CClient.cpp b/Usermode/Applications/axwin4_src/Server/CClient.cpp index 6c9fe685..2abcb9b5 100644 --- a/Usermode/Applications/axwin4_src/Server/CClient.cpp +++ b/Usermode/Applications/axwin4_src/Server/CClient.cpp @@ -8,11 +8,13 @@ #include #include #include +#include // for the fonts namespace AxWin { CClient::CClient(::AxWin::IIPCChannel& channel): - m_channel(channel) + m_channel(channel), + m_id(0) { } @@ -34,11 +36,24 @@ CWindow* CClient::GetWindow(int ID) void CClient::SetWindow(int ID, CWindow* window) { - _SysDebug("SetWindow(ID=%i,window=%p)", ID, window); - if( m_windows[ID] ) { - delete m_windows[ID]; + //_SysDebug("SetWindow(ID=%i,window=%p)", ID, window); + auto it = m_windows.find(ID); + if( it != m_windows.end() ) { + _SysDebug("CLIENT BUG: Window ID %i is already used by %p", ID, it->second); } - m_windows[ID] = window; + else { + m_windows[ID] = window; + } +} + +IFontFace& CClient::GetFont(unsigned int id) +{ + static CFontFallback fallback_font; + if( id == 0 ) { + _SysDebug("GetFont: %i = %p", id, &fallback_font); + return fallback_font; + } + assert(!"TODO: CClient::GetFont id != 0"); } void CClient::HandleMessage(CDeserialiser& message)