19 #ifndef OST_GUI_SCENE_WIN_SCENE_WIN_MODEL_HH
20 #define OST_GUI_SCENE_WIN_SCENE_WIN_MODEL_HH
37 #include <QStringList>
40 #include <QAbstractItemModel>
41 namespace ost {
namespace gui {
58 virtual void Update();
60 SceneNode* GetItem(
const QModelIndex &index)
const;
71 QModelIndex GetIndexOf(
SceneNode* node,
int column=0);
74 QModelIndex index(
int row,
int col,
const QModelIndex& parent = QModelIndex())
const;
76 QModelIndex parent(
const QModelIndex& index)
const;
78 int rowCount(
const QModelIndex& parent=QModelIndex())
const;
80 int columnCount(
const QModelIndex& parent=QModelIndex())
const;
82 QVariant data(
const QModelIndex& index,
int role=Qt::DisplayRole)
const;
84 QVariant headerData(
int section, Qt::Orientation orientation,
85 int role=Qt::DisplayRole)
const;
87 virtual Qt::ItemFlags flags(
const QModelIndex& index=QModelIndex())
const;
89 virtual bool setData(
const QModelIndex& index=QModelIndex(),
90 const QVariant& value=QVariant(),
91 int role=Qt::DisplayRole);
93 virtual QStringList mimeTypes()
const;
94 Qt::DropActions supportedDragActions()
const;
95 virtual QMimeData* mimeData(
const QModelIndexList& indexes)
const;
104 QModelIndex GetIndex(
SceneNode* node, QModelIndex index,
int column);
109 QMap<gfx::GfxNodeP, RenderModesNode*> render_observers_;
110 QMap<gfx::GfxNode*, SceneNode*> node_map_;