Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/UIElements/Views/Qt4/Qt3D/GLMoleculeObject_molecule.hpp

    r9a7ef9 rd6203a  
    2222class atom;
    2323class bond;
    24 class GLMoleculeObject_atom;
    25 class GLWorldScene;
    2624class molecule;
    2725
     
    3028  Q_OBJECT
    3129public:
    32   GLMoleculeObject_molecule(QObject *parent, const molecule *molref);
    3330  GLMoleculeObject_molecule(QGLSceneNode *mesh[], QObject *parent, const molecule *molref);
    3431  virtual ~GLMoleculeObject_molecule();
     
    4138  void recieveNotification(Observable *publisher, Notification_ptr notification);
    4239
    43   void initialize(QGLView *view, QGLPainter *painter);
    44   void draw(QGLPainter *painter, const QVector4D &cameraPlane);
    45 
    46   typedef std::pair< atomId_t, atomId_t> BondIds;
    47   friend std::ostream &operator<<(std::ostream &ost, const BondIds &t);
    48 
    49   static BondIds getBondIds(
    50       const bond::ptr _bond,
    51       const enum GLMoleculeObject_bond::SideOfBond side);
    52 
    53   void selected(const bool _isSelected)
    54   { isSelected = _isSelected; }
    55 
    56 signals:
    57   void changed();
    58   void changeOccured();
    59   void hoverChanged(const atom&);
    60   void hoverChanged(const molecule&, int);
    61   void atomClicked(atomId_t no);
    62   void moleculeClicked(moleculeId_t no);
    63   void changeAtomId(GLMoleculeObject_atom *, int, int);
    64 
    65 private slots:
    66   //!> grant GLWorldScene access to private slots
    67   friend class GLWorldScene;
    68 
    69   void wasClicked();
    70   void atomInserted(const atomicNumber_t _id);
    71   void atomRemoved(const atomicNumber_t _id);
    72   void bondInserted(const bond::ptr _bond, const GLMoleculeObject_bond::SideOfBond side);
    73   void bondRemoved(const atomId_t leftnr, const atomId_t rightnr);
    74   void hoverChangedSignalled(GLMoleculeObject *ob);
    75 
    76   void setVisible(bool value);
    77 
    7840private:
    79   void init();
    80   void reinit();
    81 
    82   void addAtomBonds(
    83       const bond::ptr &_bond,
    84       const GLMoleculeObject_bond::SideOfBond _side
    85       );
    86   void addAtomBonds(const atom *_atom);
    87 
    88   void updateTesselationHull();
    89 
    90   //!> states whether selection box is additionally drawn or not
    91   bool isSelected;
    92   bool isBoundingBoxUptodate;
    93 
    94   //!> whether we are signed on to the associated molecule
    95   bool isSignedOn;
    9641
    9742  const molecule *_molecule;
    98 
    99   bool TesselationHullUptodate;
    100 
    101   typedef std::map< atomId_t, GLMoleculeObject_atom* > AtomNodeMap;
    102   typedef std::map< BondIds , GLMoleculeObject_bond* > BondNodeMap;
    103   AtomNodeMap AtomsinSceneMap;
    104   BondNodeMap BondsinSceneMap;
    105 
    106   const atom *hoverAtom;
    10743};
    10844
    109 std::ostream &operator<<(std::ostream &ost, const GLMoleculeObject_molecule::BondIds &t);
    11045
    11146
Note: See TracChangeset for help on using the changeset viewer.