source: trunk/src/AdvHaliteDialog.cpp @ 387

Revision 387, 5.0 KB checked in by Eoin, 12 years ago (diff)

Tab presses in 'Advanced' tabs correctly pass to relevent dialogs.

Line 
1
2//         Copyright Eóin O'Callaghan 2006 - 2007.
3// Distributed under the Boost Software License, Version 1.0.
4//    (See accompanying file LICENSE_1_0.txt or copy at
5//          http://www.boost.org/LICENSE_1_0.txt)
6
7#include <algorithm>
8#include <boost/format.hpp>
9#include <boost/array.hpp>
10
11#include "stdAfx.hpp"
12#include "AdvHaliteDialog.hpp"
13
14#include "advtabs/ThemeTestDialog.hpp"
15
16LRESULT AdvHaliteDialog::onInitDialog(HWND, LPARAM)
17{       
18        resizeClass::DlgResize_Init(false, true, WS_CLIPCHILDREN);
19        SetDlgItemText(IDC_ADVDLG_VERSION, hal::app().res_wstr(HAL_VERSION_STRING).c_str());
20       
21        tabCtrl_.SubclassWindow(GetDlgItem(IDC_TAB));
22       
23/*      mp_dlg.reset(new ThemeTestDialog());
24        mp_dlg->Create(m_tabCtrl);
25       
26        m_tabCtrl.AddPage(*mp_dlg, L"Test1");
27*/     
28
29        hal::event().post(shared_ptr<hal::EventDetail>(
30                new hal::EventMsg(L"Creating torrent tab...")));       
31        m_torrent.Create(tabCtrl_);
32        tabCtrl_.AddPage(m_torrent, hal::app().res_wstr(HAL_TORRENT_TAB).c_str());
33       
34        hal::event().post(shared_ptr<hal::EventDetail>(
35                new hal::EventMsg(L"Creating peers tab..."))); 
36        m_peers.Create(tabCtrl_);
37        tabCtrl_.AddPage(m_peers, hal::app().res_wstr(HAL_PEERS_TAB).c_str());
38       
39        hal::event().post(shared_ptr<hal::EventDetail>(
40                new hal::EventMsg(L"Creating files tab..."))); 
41        m_files.Create(tabCtrl_);
42        tabCtrl_.AddPage(m_files, hal::app().res_wstr(HAL_FILES_TAB).c_str());
43       
44        hal::event().post(shared_ptr<hal::EventDetail>(
45                new hal::EventMsg(L"Creating tracker tab...")));       
46        m_tracker.Create(tabCtrl_);
47        tabCtrl_.AddPage(m_tracker, hal::app().res_wstr(HAL_TRACKER_TAB).c_str());
48       
49        hal::event().post(shared_ptr<hal::EventDetail>(
50                new hal::EventMsg(L"Creating log tab...")));   
51        m_debug.Create(tabCtrl_);
52        tabCtrl_.AddPage(m_debug, hal::app().res_wstr(HAL_DEBUG_TAB).c_str());
53       
54        tabCtrl_.SetCurrentPage(0);
55        hal::event().post(shared_ptr<hal::EventDetail>(
56                new hal::EventMsg(L"All tabs complete!")));     
57       
58        return 0;
59}
60
61void AdvHaliteDialog::OnSize(UINT type, CSize)
62{
63        RECT rect;
64        tabCtrl_.GetClientRect(&rect);
65        tabCtrl_.AdjustRect(false, &rect);
66       
67//      mp_dlg->SetWindowPos(HWND_TOP, 0, 0, rect.right-rect.left, rect.bottom-rect.top, SWP_NOMOVE);
68       
69        SetMsgHandled(false);
70}       
71
72void AdvHaliteDialog::onClose()
73{
74        hal::event().post(shared_ptr<hal::EventDetail>(
75                new hal::EventMsg(L"Closing Tabs!")));         
76
77        ::CloseWindow(m_torrent);
78        ::CloseWindow(m_peers);
79        ::CloseWindow(m_files);
80        ::CloseWindow(m_tracker);
81        ::CloseWindow(m_debug);
82
83        if(::IsWindow(m_hWnd)) 
84        {
85                ::DestroyWindow(m_hWnd);
86        }
87}
Note: See TracBrowser for help on using the repository browser.