X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d84afea9d1ec41ee4e2ebb3bf6b87926cf5f04d1..3570a1c6e596c358848c77c5b37d724097340ce8:/src/mac/carbon/accel.cpp diff --git a/src/mac/carbon/accel.cpp b/src/mac/carbon/accel.cpp index 798aa72026..f33bbe28e0 100644 --- a/src/mac/carbon/accel.cpp +++ b/src/mac/carbon/accel.cpp @@ -1,33 +1,33 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: accel.cpp +// Name: src/mac/carbon/accel.cpp // Purpose: wxAcceleratorTable -// Author: AUTHOR +// Author: Stefan Csomor // Modified by: -// Created: ??/??/98 +// Created: 1998-01-01 // RCS-ID: $Id$ -// Copyright: (c) AUTHOR +// Copyright: (c) Stefan Csomor // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -#pragma implementation "accel.h" -#endif +#include "wx/wxprec.h" -#include "wx/setup.h" #include "wx/accel.h" -#include "wx/string.h" -#if !USE_SHARED_LIBRARIES -IMPLEMENT_DYNAMIC_CLASS(wxAcceleratorTable, wxObject) +#ifndef WX_PRECOMP + #include "wx/string.h" #endif +#ifndef __WXUNIVERSAL__ + +IMPLEMENT_DYNAMIC_CLASS(wxAcceleratorTable, wxObject) + // ---------------------------------------------------------------------------- // wxAccelList: a list of wxAcceleratorEntries // ---------------------------------------------------------------------------- WX_DECLARE_LIST(wxAcceleratorEntry, wxAccelList); #include "wx/listimpl.cpp" -WX_DEFINE_LIST(wxAccelList); +WX_DEFINE_LIST(wxAccelList) // ---------------------------------------------------------------------------- // wxAccelRefData: the data used by wxAcceleratorTable @@ -35,10 +35,10 @@ WX_DEFINE_LIST(wxAccelList); class WXDLLEXPORT wxAcceleratorRefData: public wxObjectRefData { - friend class WXDLLEXPORT wxAcceleratorTable; + friend class wxAcceleratorTable; public: wxAcceleratorRefData(); - ~wxAcceleratorRefData(); + virtual ~wxAcceleratorRefData(); wxAccelList m_accels; }; @@ -52,7 +52,7 @@ wxAcceleratorRefData::wxAcceleratorRefData() wxAcceleratorRefData::~wxAcceleratorRefData() { - m_accels.DeleteContents( TRUE ); + WX_CLEAR_LIST( wxAccelList, m_accels ); } wxAcceleratorTable::wxAcceleratorTable() @@ -65,7 +65,7 @@ wxAcceleratorTable::~wxAcceleratorTable() } // Create from an array -wxAcceleratorTable::wxAcceleratorTable(int n, wxAcceleratorEntry entries[]) +wxAcceleratorTable::wxAcceleratorTable(int n, const wxAcceleratorEntry entries[]) { m_refData = new wxAcceleratorRefData; @@ -79,7 +79,7 @@ wxAcceleratorTable::wxAcceleratorTable(int n, wxAcceleratorEntry entries[]) } } -bool wxAcceleratorTable::Ok() const +bool wxAcceleratorTable::IsOk() const { return (m_refData != NULL); } @@ -88,21 +88,22 @@ int wxAcceleratorTable::GetCommand( wxKeyEvent &event ) { if (!Ok()) return -1; - wxNode *node = M_ACCELDATA->m_accels.First(); + wxAccelList::compatibility_iterator node = M_ACCELDATA->m_accels.GetFirst(); while (node) { - wxAcceleratorEntry *entry = (wxAcceleratorEntry*)node->Data(); + wxAcceleratorEntry *entry = node->GetData(); if ((event.m_keyCode == entry->GetKeyCode()) && - (((entry->GetFlags() & wxACCEL_CTRL) == 0) || event.ControlDown()) && - (((entry->GetFlags() & wxACCEL_SHIFT) == 0) || event.ShiftDown()) && - (((entry->GetFlags() & wxACCEL_ALT) == 0) || event.AltDown() || event.MetaDown())) + (((entry->GetFlags() & wxACCEL_CTRL) != 0) == event.ControlDown()) && + (((entry->GetFlags() & wxACCEL_SHIFT) != 0) == event.ShiftDown()) && + (((entry->GetFlags() & wxACCEL_ALT) != 0) == event.AltDown()) && + (((entry->GetFlags() & wxACCEL_CMD) != 0) == event.CmdDown())) { return entry->GetCommand(); } - node = node->Next(); + node = node->GetNext(); } return -1; } - +#endif \ No newline at end of file