From: <zou...@us...> - 2008-02-29 18:58:48
|
Revision: 1018 http://dcplusplus.svn.sourceforge.net/dcplusplus/?rev=1018&view=rev Author: zouzou123gen Date: 2008-02-29 10:12:34 -0800 (Fri, 29 Feb 2008) Log Message: ----------- Fixed tabbing in hub windows Modified Paths: -------------- dcplusplus/trunk/changelog.txt dcplusplus/trunk/win32/HubFrame.cpp Modified: dcplusplus/trunk/changelog.txt =================================================================== --- dcplusplus/trunk/changelog.txt 2008-02-21 20:56:33 UTC (rev 1017) +++ dcplusplus/trunk/changelog.txt 2008-02-29 18:12:34 UTC (rev 1018) @@ -37,6 +37,7 @@ * Don't always show the tray icon after killing and re-opening explorer.exe (poy) * Updated links (thanks pietry) * Fixed clicking on active tab (poy) +* Fixed tabbing in hub windows (poy) -- 0.704 2007-12-14 -- * Hub lists added to utilize Coral's distributed network (ullner) Modified: dcplusplus/trunk/win32/HubFrame.cpp =================================================================== --- dcplusplus/trunk/win32/HubFrame.cpp 2008-02-21 20:56:33 UTC (rev 1017) +++ dcplusplus/trunk/win32/HubFrame.cpp 2008-02-29 18:12:34 UTC (rev 1018) @@ -100,19 +100,9 @@ message->onKeyDown(std::tr1::bind(&HubFrame::handleMessageKeyDown, this, _1)); message->onChar(std::tr1::bind(&HubFrame::handleMessageChar, this, _1)); } - + { WidgetTextBox::Seed cs = WinUtil::Seeds::textBox; - cs.style = WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | ES_MULTILINE | ES_NOHIDESEL | ES_READONLY; - chat = createTextBox(cs); - chat->setTextLimit(0); - addWidget(chat); - paned->setFirst(chat); - chat->onContextMenu(std::tr1::bind(&HubFrame::handleChatContextMenu, this, _1)); - } - - { - WidgetTextBox::Seed cs = WinUtil::Seeds::textBox; cs.style = WS_CHILD | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL; filter = createTextBox(cs); addWidget(filter); @@ -130,8 +120,18 @@ filterType->setSelectedIndex(COLUMN_LAST); filterType->onSelectionChanged(std::tr1::bind(&HubFrame::updateUserList, this, (UserInfo*)0)); } - + { + WidgetTextBox::Seed cs = WinUtil::Seeds::textBox; + cs.style = WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | ES_MULTILINE | ES_NOHIDESEL | ES_READONLY; + chat = createTextBox(cs); + chat->setTextLimit(0); + addWidget(chat); + paned->setFirst(chat); + chat->onContextMenu(std::tr1::bind(&HubFrame::handleChatContextMenu, this, _1)); + } + + { users = SmartWin::WidgetCreator<WidgetUsers>::create(this, WinUtil::Seeds::listView); addWidget(users); paned->setSecond(users); @@ -151,6 +151,7 @@ { WidgetCheckBox::Seed cs(_T("+/-")); + cs.style &= ~WS_TABSTOP; showUsers = createCheckBox(cs); showUsers->setChecked(BOOLSETTING(GET_USER_INFO)); } @@ -681,7 +682,7 @@ bool HubFrame::handleMessageChar(int c) { switch(c) { - case VK_TAB: + case VK_TAB: return true; break; case VK_RETURN: { if(!(isShiftPressed() || isControlPressed() || isAltPressed())) { return true; @@ -1292,7 +1293,8 @@ bool HubFrame::tab() { if(message->length() == 0) { - return false; + ::SetFocus(::GetNextDlgTabItem(handle(), message->handle(), isShiftPressed())); + return true; } HWND focus = GetFocus(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |