X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2bda0e173844e8e0f8acf4e8ad8b5c26e5c6fe5d..891ad68ff5ac338d81ea0c4ff176601761e73517:/src/msw/tabctrl.cpp diff --git a/src/msw/tabctrl.cpp b/src/msw/tabctrl.cpp index 49b924ccbf..e41562b853 100644 --- a/src/msw/tabctrl.cpp +++ b/src/msw/tabctrl.cpp @@ -21,24 +21,26 @@ #endif #ifndef WX_PRECOMP -#include "wx.h" +#include "wx/wx.h" #endif #if defined(__WIN95__) -#ifndef __GNUWIN32__ +#if !defined(__GNUWIN32__) && !defined(__SALFORDC__) #include "malloc.h" #endif #include -#ifndef __GNUWIN32__ +#if (defined(__WIN95__) && !defined(__GNUWIN32__)) || defined(__TWIN32__) #include #endif +#ifndef __TWIN32__ #ifdef __GNUWIN32__ #include "wx/msw/gnuwin32/extra.h" #endif +#endif #include "wx/msw/dib.h" #include "wx/msw/tabctrl.h" @@ -58,13 +60,13 @@ BEGIN_EVENT_TABLE(wxTabCtrl, wxControl) END_EVENT_TABLE() #endif -wxTabCtrl::wxTabCtrl(void) +wxTabCtrl::wxTabCtrl() { m_imageList = NULL; } -bool wxTabCtrl::Create(wxWindow *parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, - const long style, const wxString& name) +bool wxTabCtrl::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, + long style, const wxString& name) { m_imageList = NULL; @@ -72,10 +74,6 @@ bool wxTabCtrl::Create(wxWindow *parent, const wxWindowID id, const wxPoint& pos GetGValue(GetSysColor(COLOR_BTNFACE)), GetBValue(GetSysColor(COLOR_BTNFACE))); m_foregroundColour = *wxBLACK ; - m_defaultForegroundColour = *wxBLACK ; - m_defaultBackgroundColour = wxColour(GetRValue(GetSysColor(COLOR_BTNFACE)), - GetGValue(GetSysColor(COLOR_BTNFACE)), GetBValue(GetSysColor(COLOR_BTNFACE))); - SetName(name); int x = pos.x; @@ -136,7 +134,7 @@ bool wxTabCtrl::Create(wxWindow *parent, const wxWindowID id, const wxPoint& pos return TRUE; } -wxTabCtrl::~wxTabCtrl(void) +wxTabCtrl::~wxTabCtrl() { UnsubclassWin(); } @@ -145,50 +143,42 @@ void wxTabCtrl::Command(wxCommandEvent& event) { } -bool wxTabCtrl::MSWCommand(const WXUINT cmd, const WXWORD id) +bool wxTabCtrl::MSWCommand(WXUINT cmd, WXWORD id) { return FALSE; } -bool wxTabCtrl::MSWNotify(const WXWPARAM wParam, const WXLPARAM lParam) +bool wxTabCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result) { - wxTabEvent event(0, m_windowId); - int eventType = 0; + wxTabEvent event(wxEVT_NULL, m_windowId); + wxEventType eventType = wxEVT_NULL; NMHDR* hdr1 = (NMHDR*) lParam; switch ( hdr1->code ) { case TCN_SELCHANGE: - { eventType = wxEVT_COMMAND_TAB_SEL_CHANGED; - event.SetInt( (int) LOWORD(wParam) ) ; break; - } + case TCN_SELCHANGING: - { eventType = wxEVT_COMMAND_TAB_SEL_CHANGING; - event.SetInt( (int) LOWORD(wParam) ) ; break; - } + case TTN_NEEDTEXT: { // TODO // if (tool->m_shortHelpString != "") // ttText->lpszText = (char *) (const char *)tool->m_shortHelpString; - return wxControl::MSWNotify(wParam, lParam); - break; } default : - return wxControl::MSWNotify(wParam, lParam); - break; + return wxControl::MSWOnNotify(idCtrl, lParam, result); } event.SetEventObject( this ); event.SetEventType(eventType); + event.SetInt(idCtrl) ; - if ( !ProcessEvent(event) ) - return FALSE; - return TRUE; + return ProcessEvent(event); } // Responds to colour changes, and passes event on to children. @@ -196,8 +186,6 @@ void wxTabCtrl::OnSysColourChanged(wxSysColourChangedEvent& event) { m_backgroundColour = wxColour(GetRValue(GetSysColor(COLOR_BTNFACE)), GetGValue(GetSysColor(COLOR_BTNFACE)), GetBValue(GetSysColor(COLOR_BTNFACE))); - m_defaultBackgroundColour = wxColour(GetRValue(GetSysColor(COLOR_BTNFACE)), - GetGValue(GetSysColor(COLOR_BTNFACE)), GetBValue(GetSysColor(COLOR_BTNFACE))); // Remap the buttons // CreateTools(); @@ -211,37 +199,43 @@ void wxTabCtrl::OnSysColourChanged(wxSysColourChangedEvent& event) } // Delete all items -bool wxTabCtrl::DeleteAllItems(void) +bool wxTabCtrl::DeleteAllItems() { return ( TabCtrl_DeleteAllItems( (HWND) GetHWND() ) != FALSE ); } // Delete an item -bool wxTabCtrl::DeleteItem(const int item) +bool wxTabCtrl::DeleteItem(int item) { return ( TabCtrl_DeleteItem( (HWND) GetHWND(), item) != FALSE ); } // Get the selection -int wxTabCtrl::GetSelection(void) const +int wxTabCtrl::GetSelection() const { return (int) TabCtrl_GetCurSel( (HWND) GetHWND() ); } +// Get the tab with the current keyboard focus +int wxTabCtrl::GetCurFocus() const +{ + return (int) TabCtrl_GetCurFocus( (HWND) GetHWND() ); +} + // Get the associated image list -wxImageList* wxTabCtrl::GetImageList(void) const +wxImageList* wxTabCtrl::GetImageList() const { return m_imageList; } // Get the number of items -int wxTabCtrl::GetItemCount(void) const +int wxTabCtrl::GetItemCount() const { return (int) TabCtrl_GetItemCount( (HWND) GetHWND() ); } // Get the rect corresponding to the tab -bool wxTabCtrl::GetItemRect(const int item, wxRect& wxrect) const +bool wxTabCtrl::GetItemRect(int item, wxRect& wxrect) const { RECT rect; if ( !TabCtrl_GetItemRect( (HWND) GetHWND(), item, & rect) ) @@ -256,13 +250,13 @@ bool wxTabCtrl::GetItemRect(const int item, wxRect& wxrect) const } // Get the number of rows -int wxTabCtrl::GetRowCount(void) const +int wxTabCtrl::GetRowCount() const { return (int) TabCtrl_GetRowCount( (HWND) GetHWND() ); } // Get the item text -wxString wxTabCtrl::GetItemText(const int item) const +wxString wxTabCtrl::GetItemText(int item) const { char buf[256]; wxString str(""); @@ -278,7 +272,7 @@ wxString wxTabCtrl::GetItemText(const int item) const } // Get the item image -int wxTabCtrl::GetItemImage(const int item) const +int wxTabCtrl::GetItemImage(int item) const { TC_ITEM tcItem; tcItem.mask = TCIF_IMAGE; @@ -290,7 +284,7 @@ int wxTabCtrl::GetItemImage(const int item) const } // Get the item data -void* wxTabCtrl::GetItemData(const int item) const +void* wxTabCtrl::GetItemData(int item) const { TC_ITEM tcItem; tcItem.mask = TCIF_PARAM; @@ -321,7 +315,7 @@ int wxTabCtrl::HitTest(const wxPoint& pt, long& flags) } // Insert an item -int wxTabCtrl::InsertItem(const int item, const wxString& text, const int imageId, void* data) +bool wxTabCtrl::InsertItem(int item, const wxString& text, int imageId, void* data) { char buf[256]; TC_ITEM tcItem; @@ -340,11 +334,11 @@ int wxTabCtrl::InsertItem(const int item, const wxString& text, const int imageI tcItem.iImage = imageId; } - return (int) TabCtrl_InsertItem( (HWND) GetHWND(), item, & tcItem); + return (TabCtrl_InsertItem( (HWND) GetHWND(), item, & tcItem) != -1); } // Set the selection -int wxTabCtrl::SetSelection(const int item) +int wxTabCtrl::SetSelection(int item) { return (int) TabCtrl_SetCurSel( (HWND) GetHWND(), item ); } @@ -357,7 +351,7 @@ void wxTabCtrl::SetImageList(wxImageList* imageList) } // Set the text for an item -bool wxTabCtrl::SetItemText(const int item, const wxString& text) +bool wxTabCtrl::SetItemText(int item, const wxString& text) { char buf[256]; TC_ITEM tcItem; @@ -370,7 +364,7 @@ bool wxTabCtrl::SetItemText(const int item, const wxString& text) } // Set the image for an item -bool wxTabCtrl::SetItemImage(const int item, const int image) +bool wxTabCtrl::SetItemImage(int item, int image) { TC_ITEM tcItem; tcItem.mask = TCIF_IMAGE; @@ -380,7 +374,7 @@ bool wxTabCtrl::SetItemImage(const int item, const int image) } // Set the data for an item -bool wxTabCtrl::SetItemData(const int item, void* data) +bool wxTabCtrl::SetItemData(int item, void* data) { TC_ITEM tcItem; tcItem.mask = TCIF_PARAM; @@ -471,7 +465,7 @@ void wxMapBitmap(HBITMAP hBitmap, int width, int height) // Tab event IMPLEMENT_DYNAMIC_CLASS(wxTabEvent, wxCommandEvent) -wxTabEvent::wxTabEvent(WXTYPE commandType, int id): +wxTabEvent::wxTabEvent(wxEventType commandType, int id): wxCommandEvent(commandType, id) { }