// Find an item given the Macintosh Menu Reference
-#if KEY_wxList_DEPRECATED
-wxList wxWinMacMenuList(wxKEY_INTEGER);
-wxMenu *wxFindMenuFromMacMenu(MenuRef inMenuRef)
-{
- wxNode *node = wxWinMacMenuList.Find((long)inMenuRef);
- if (!node)
- return NULL;
- return (wxMenu *)node->GetData();
-}
-
-void wxAssociateMenuWithMacMenu(MenuRef inMenuRef, wxMenu *menu) ;
-void wxAssociateMenuWithMacMenu(MenuRef inMenuRef, wxMenu *menu)
-{
- // adding NULL MenuRef is (first) surely a result of an error and
- // (secondly) breaks menu command processing
- wxCHECK_RET( inMenuRef != (MenuRef) NULL, wxT("attempt to add a NULL MenuRef to menu list") );
-
- if ( !wxWinMacMenuList.Find((long)inMenuRef) )
- wxWinMacMenuList.Append((long)inMenuRef, menu);
-}
-
-void wxRemoveMacMenuAssociation(wxMenu *menu) ;
-void wxRemoveMacMenuAssociation(wxMenu *menu)
-{
- wxWinMacMenuList.DeleteObject(menu);
-}
-#else
-
WX_DECLARE_HASH_MAP(MenuRef, wxMenu*, wxPointerHash, wxPointerEqual, MacMenuMap);
static MacMenuMap wxWinMacMenuList;
}
}
}
-#endif // deprecated wxList
// ============================================================================
// implementation
// Find an item given the Macintosh Window Reference
-#if KEY_wxList_DEPRECATED
-wxList wxWinMacWindowList(wxKEY_INTEGER);
-wxTopLevelWindowMac *wxFindWinFromMacWindow(WindowRef inWindowRef)
-{
- wxNode *node = wxWinMacWindowList.Find((long)inWindowRef);
- if (!node)
- return NULL;
- return (wxTopLevelWindowMac *)node->GetData();
-}
-
-void wxAssociateWinWithMacWindow(WindowRef inWindowRef, wxTopLevelWindowMac *win) ;
-void wxAssociateWinWithMacWindow(WindowRef inWindowRef, wxTopLevelWindowMac *win)
-{
- // adding NULL WindowRef is (first) surely a result of an error and
- // (secondly) breaks menu command processing
- wxCHECK_RET( inWindowRef != (WindowRef) NULL, wxT("attempt to add a NULL WindowRef to window list") );
-
- if ( !wxWinMacWindowList.Find((long)inWindowRef) )
- wxWinMacWindowList.Append((long)inWindowRef, win);
-}
-
-void wxRemoveMacWindowAssociation(wxTopLevelWindowMac *win) ;
-void wxRemoveMacWindowAssociation(wxTopLevelWindowMac *win)
-{
- wxWinMacWindowList.DeleteObject(win);
-}
-#else
-
WX_DECLARE_HASH_MAP(WindowRef, wxTopLevelWindowMac*, wxPointerHash, wxPointerEqual, MacWindowMap);
static MacWindowMap wxWinMacWindowList;
}
}
}
-#endif // deprecated wxList
// ----------------------------------------------------------------------------
// wxTopLevelWindowMac creation
// implementation
// ===========================================================================
-#if KEY_wxList_DEPRECATED
-wxList wxWinMacControlList(wxKEY_INTEGER);
-
-wxWindow *wxFindControlFromMacControl(ControlRef inControl )
-{
- wxNode *node = wxWinMacControlList.Find((long)inControl);
- if (!node)
- return NULL;
- return (wxControl *)node->GetData();
-}
-
-void wxAssociateControlWithMacControl(ControlRef inControl, wxWindow *control)
-{
- // adding NULL ControlRef is (first) surely a result of an error and
- // (secondly) breaks native event processing
- wxCHECK_RET( inControl != (ControlRef) NULL, wxT("attempt to add a NULL WindowRef to window list") );
-
- if ( !wxWinMacControlList.Find((long)inControl) )
- wxWinMacControlList.Append((long)inControl, control);
-}
-
-void wxRemoveMacControlAssociation(wxWindow *control)
-{
- // remove all associations pointing to us
- while ( wxWinMacControlList.DeleteObject(control) )
- {}
-}
-#else
-
WX_DECLARE_HASH_MAP(ControlRef, wxWindow*, wxPointerHash, wxPointerEqual, MacControlMap);
static MacControlMap wxWinMacControlList;
}
}
}
-#endif // deprecated wxList
// ----------------------------------------------------------------------------
// constructors and such