mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-08-17 14:07:48 +00:00
1
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
//=============================================================================//
|
||||
|
||||
#ifndef ITREEITEM_H
|
||||
#define ITREEITEM_H
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
class CWorkspace;
|
||||
class CProject;
|
||||
class CScene;
|
||||
class CVCDFile;
|
||||
class CSoundEntry;
|
||||
class CWaveFile;
|
||||
class mxTreeView;
|
||||
|
||||
class ITreeItem
|
||||
{
|
||||
public:
|
||||
ITreeItem()
|
||||
{
|
||||
m_bExpanded = false;
|
||||
m_nOrdinal = -1;
|
||||
}
|
||||
|
||||
virtual char const *GetName() const = 0;
|
||||
|
||||
ITreeItem *GetParentItem();
|
||||
|
||||
virtual CWorkspace *GetWorkspace() = 0;
|
||||
virtual CProject *GetProject() = 0;
|
||||
virtual CScene *GetScene() = 0;
|
||||
virtual CVCDFile *GetVCDFile() = 0;
|
||||
virtual CSoundEntry *GetSoundEntry() = 0;
|
||||
virtual CWaveFile *GetWaveFile() = 0;
|
||||
|
||||
virtual int GetIconIndex() const = 0;
|
||||
|
||||
bool IsExpanded() const
|
||||
{
|
||||
return m_bExpanded;
|
||||
}
|
||||
|
||||
void SetExpanded( bool exp )
|
||||
{
|
||||
m_bExpanded = exp;
|
||||
}
|
||||
|
||||
mxTreeViewItem *FindItem( mxTreeView *tree, mxTreeViewItem *parent, bool recurse = false );
|
||||
|
||||
virtual void Checkout( bool updatestateicons = true ) = 0;
|
||||
virtual void Checkin( bool updatestateicons = true ) = 0;
|
||||
|
||||
virtual void MoveChildUp( ITreeItem *child ) = 0;
|
||||
virtual void MoveChildDown( ITreeItem *child ) = 0;
|
||||
|
||||
virtual bool IsFirstChild()
|
||||
{
|
||||
if ( !GetParentItem() )
|
||||
return false;
|
||||
|
||||
return GetParentItem()->IsChildFirst( this );
|
||||
}
|
||||
|
||||
virtual bool IsLastChild()
|
||||
{
|
||||
if ( !GetParentItem() )
|
||||
return false;
|
||||
|
||||
return GetParentItem()->IsChildLast( this );
|
||||
}
|
||||
|
||||
virtual bool IsChildFirst( ITreeItem *child ) = 0;
|
||||
virtual bool IsChildLast( ITreeItem *child ) = 0;
|
||||
|
||||
void SetOrdinal( int ordinal ) { m_nOrdinal = ordinal; }
|
||||
int GetOrdinal( void ) const { return m_nOrdinal; }
|
||||
|
||||
virtual void SetDirty( bool dirty ) = 0;
|
||||
private:
|
||||
bool m_bExpanded;
|
||||
int m_nOrdinal;
|
||||
};
|
||||
|
||||
#endif // ITREEITEM_H
|
||||
Reference in New Issue
Block a user