virtual void OnPanelDropped( CUtlVector< KeyValues * >& msglist ) { PropertySheet *sheet = IsDroppingSheet( msglist ); if ( sheet ) { Panel *target = GetParent()->GetDropTarget( msglist ); if ( target ) { // Fixme, mouse pos could be wrong... target->OnPanelDropped( msglist ); } } // Defer to active page... Panel *active = m_pParent->GetActivePage(); if ( !active || !active->IsDroppable( msglist ) ) return; active->OnPanelDropped( msglist ); }
virtual bool IsDroppable( CUtlVector< KeyValues * >&msglist ) { // It's never droppable, but should activate FireActionSignal(); SetSelected(true); Repaint(); if ( !GetParent() ) return false; PropertySheet *sheet = IsDroppingSheet( msglist ); if ( sheet ) { return GetParent()->IsDroppable( msglist ); } // Defer to active page... Panel *active = m_pParent->GetActivePage(); if ( !active || !active->IsDroppable( msglist ) ) return false; return active->IsDroppable( msglist ); }