mirror of https://github.com/AxioDL/metaforce.git
Move Node to Outliner class
This commit is contained in:
parent
aa0ae06532
commit
4197cd69dc
|
@ -3,38 +3,41 @@
|
||||||
|
|
||||||
namespace Specter
|
namespace Specter
|
||||||
{
|
{
|
||||||
class Node : public View
|
class Outliner
|
||||||
{
|
{
|
||||||
struct INodeController
|
class Node : public View
|
||||||
{
|
{
|
||||||
virtual boo::ITexture* icon() const { return nullptr; }
|
struct INodeController
|
||||||
virtual const std::string* text() const { return nullptr; }
|
{
|
||||||
virtual size_t subNodeCount() const { return 0; }
|
virtual boo::ITexture* icon() const { return nullptr; }
|
||||||
virtual INodeController* subNode(size_t idx) { return nullptr; }
|
virtual const std::string* text() const { return nullptr; }
|
||||||
virtual void activated(const boo::SWindowCoord& coord) {}
|
virtual size_t subNodeCount() const { return 0; }
|
||||||
|
virtual INodeController* subNode(size_t idx) { return nullptr; }
|
||||||
|
virtual void activated(const boo::SWindowCoord& coord) {}
|
||||||
|
};
|
||||||
|
|
||||||
|
std::string m_description;
|
||||||
|
std::vector<std::unique_ptr<Node>> m_children;
|
||||||
|
bool m_collapsible;
|
||||||
|
bool m_collapsed;
|
||||||
|
|
||||||
|
public:
|
||||||
|
class Resources
|
||||||
|
{
|
||||||
|
friend class ViewResources;
|
||||||
|
|
||||||
|
void init(boo::IGraphicsDataFactory* factory, const IThemeData& theme);
|
||||||
|
};
|
||||||
|
|
||||||
|
Node(ViewResources& res, View& parentView, const std::string& description);
|
||||||
|
void mouseDown(const boo::SWindowCoord&, boo::EMouseButton, boo::EModifierKey);
|
||||||
|
void mouseUp(const boo::SWindowCoord&, boo::EMouseButton, boo::EModifierKey);
|
||||||
|
void mouseEnter(const boo::SWindowCoord&);
|
||||||
|
void mouseLeave(const boo::SWindowCoord&);
|
||||||
|
void resized(const boo::SWindowRect& root, const boo::SWindowRect& sub);
|
||||||
|
void draw(boo::IGraphicsCommandQueue* gfxQ);
|
||||||
|
void think();
|
||||||
};
|
};
|
||||||
|
|
||||||
std::string m_description;
|
|
||||||
std::vector<std::unique_ptr<Node>> m_children;
|
|
||||||
bool m_collapsible;
|
|
||||||
bool m_collapsed;
|
|
||||||
|
|
||||||
public:
|
|
||||||
class Resources
|
|
||||||
{
|
|
||||||
friend class ViewResources;
|
|
||||||
|
|
||||||
void init(boo::IGraphicsDataFactory* factory, const IThemeData& theme);
|
|
||||||
};
|
|
||||||
|
|
||||||
Node(ViewResources& res, View& parentView, const std::string& description);
|
|
||||||
void mouseDown(const boo::SWindowCoord&, boo::EMouseButton, boo::EModifierKey);
|
|
||||||
void mouseUp(const boo::SWindowCoord&, boo::EMouseButton, boo::EModifierKey);
|
|
||||||
void mouseEnter(const boo::SWindowCoord&);
|
|
||||||
void mouseLeave(const boo::SWindowCoord&);
|
|
||||||
void resized(const boo::SWindowRect& root, const boo::SWindowRect& sub);
|
|
||||||
void draw(boo::IGraphicsCommandQueue* gfxQ);
|
|
||||||
void think();
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue