+// registers a floating frame with this manager (see header)
+void wxAuiManager::RegisterFloatingFrame(wxAuiFloatingFrame* frame)
+{
+ frame->SetOwnerManager(this);
+ int i, count = m_floating_frames.GetCount();
+ for (i = 0; i < count; ++i)
+ {
+ wxAuiFloatingFrame* f = m_floating_frames.Item(i);
+ if (f == frame)
+ // this frame is already registered
+ return;
+ }
+ m_floating_frames.Add(frame);
+}
+
+// unregisters a floating frame from this manager (see header)
+void wxAuiManager::UnregisterFloatingFrame(wxAuiFloatingFrame* frame)
+{
+ frame->SetOwnerManager(NULL);
+ int i, count = m_floating_frames.GetCount();
+ for (i = 0; i < count; ++i)
+ {
+ wxAuiFloatingFrame* f = m_floating_frames.Item(i);
+ if (f == frame)
+ {
+ m_floating_frames.Remove(f);
+ return;
+ }
+ }
+}
+