]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - plugins/entity/model.h
Revert partially (auto) "reformat code! now the code is only ugly on the *inside*"
[xonotic/netradiant.git] / plugins / entity / model.h
index 5e5dc116310e77bd62096ee922ec832ce08d86f6..75e442f1af068ff97241e9b27d59980ab3c44f5e 100644 (file)
 #include "os/path.h"
 #include "moduleobserver.h"
 
-class EModel : public ModuleObserver {
-    ResourceReference m_resource;
-    scene::Traversable &m_traverse;
-    scene::Node *m_node;
-    Callback<void()> m_modelChanged;
+class EModel : public ModuleObserver
+{
+ResourceReference m_resource;
+scene::Traversable& m_traverse;
+scene::Node* m_node;
+Callback<void()> m_modelChanged;
 
 public:
-    EModel(scene::Traversable &traversable, const Callback<void()> &modelChanged)
-            : m_resource(""), m_traverse(traversable), m_node(0), m_modelChanged(modelChanged)
-    {
-        m_resource.attach(*this);
-    }
-
-    ~EModel()
-    {
-        m_resource.detach(*this);
-    }
-
-    void realise()
-    {
-        m_resource.get()->load();
-        m_node = m_resource.get()->getNode();
-        if (m_node != 0) {
-            m_traverse.insert(*m_node);
-        }
-    }
-
-    void unrealise()
-    {
-        if (m_node != 0) {
-            m_traverse.erase(*m_node);
-        }
-    }
-
-    void modelChanged(const char *value)
-    {
-        StringOutputStream cleaned(string_length(value));
-        cleaned << PathCleaned(value);
-        m_resource.detach(*this);
-        m_resource.setName(cleaned.c_str());
-        m_resource.attach(*this);
-        m_modelChanged();
-    }
-
-    typedef MemberCaller<EModel, void(const char *), &EModel::modelChanged> ModelChangedCaller;
-
-    const char *getName() const
-    {
-        return m_resource.getName();
-    }
-
-    scene::Node *getNode() const
-    {
-        return m_node;
-    }
+EModel( scene::Traversable& traversable, const Callback<void()>& modelChanged )
+       : m_resource( "" ), m_traverse( traversable ), m_node( 0 ), m_modelChanged( modelChanged ){
+       m_resource.attach( *this );
+}
+~EModel(){
+       m_resource.detach( *this );
+}
+
+void realise(){
+       m_resource.get()->load();
+       m_node = m_resource.get()->getNode();
+       if ( m_node != 0 ) {
+               m_traverse.insert( *m_node );
+       }
+}
+void unrealise(){
+       if ( m_node != 0 ) {
+               m_traverse.erase( *m_node );
+       }
+}
+
+void modelChanged( const char* value ){
+       StringOutputStream cleaned( string_length( value ) );
+       cleaned << PathCleaned( value );
+       m_resource.detach( *this );
+       m_resource.setName( cleaned.c_str() );
+       m_resource.attach( *this );
+       m_modelChanged();
+}
+typedef MemberCaller<EModel, void(const char*), &EModel::modelChanged> ModelChangedCaller;
+
+const char* getName() const {
+       return m_resource.getName();
+}
+scene::Node* getNode() const {
+       return m_node;
+}
 };
 
-class SingletonModel {
-    TraversableNode m_traverse;
-    EModel m_model;
+class SingletonModel
+{
+TraversableNode m_traverse;
+EModel m_model;
 public:
-    SingletonModel()
-            : m_model(m_traverse, Callback<void()>())
-    {
-    }
-
-    void attach(scene::Traversable::Observer *observer)
-    {
-        m_traverse.attach(observer);
-    }
-
-    void detach(scene::Traversable::Observer *observer)
-    {
-        m_traverse.detach(observer);
-    }
-
-    scene::Traversable &getTraversable()
-    {
-        return m_traverse;
-    }
-
-    void modelChanged(const char *value)
-    {
-        m_model.modelChanged(value);
-    }
-
-    typedef MemberCaller<SingletonModel, void(const char *), &SingletonModel::modelChanged> ModelChangedCaller;
-
-    scene::Node *getNode() const
-    {
-        return m_model.getNode();
-    }
+SingletonModel()
+       : m_model( m_traverse, Callback<void()>() ){
+}
+
+void attach( scene::Traversable::Observer* observer ){
+       m_traverse.attach( observer );
+}
+void detach( scene::Traversable::Observer* observer ){
+       m_traverse.detach( observer );
+}
+
+scene::Traversable& getTraversable(){
+       return m_traverse;
+}
+
+void modelChanged( const char* value ){
+       m_model.modelChanged( value );
+}
+typedef MemberCaller<SingletonModel, void(const char*), &SingletonModel::modelChanged> ModelChangedCaller;
+
+scene::Node* getNode() const {
+       return m_model.getNode();
+}
 };
 
 #endif