Changeset f2d5ce for src/UIElements/Qt4
- Timestamp:
- Dec 26, 2025, 9:40:14 PM (2 weeks ago)
- Branches:
- Candidate_v1.7.1, stable
- Children:
- c8cb0d
- Parents:
- bdd1d0
- git-author:
- Frederik Heber <frederik.heber@…> (12/10/25 10:20:56)
- git-committer:
- Frederik Heber <frederik.heber@…> (12/26/25 21:40:14)
- Location:
- src/UIElements/Qt4
- Files:
-
- 2 added
- 3 edited
-
InstanceBoard/ObservedMaximumAtomTrajectorySize.cpp (added)
-
InstanceBoard/ObservedMaximumAtomTrajectorySize.hpp (added)
-
InstanceBoard/QtObservedInstanceBoard.cpp (modified) (9 diffs)
-
InstanceBoard/QtObservedInstanceBoard.hpp (modified) (6 diffs)
-
QtMainWindow.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/UIElements/Qt4/InstanceBoard/QtObservedInstanceBoard.cpp
rbdd1d0 rf2d5ce 51 51 #include "Descriptors/MoleculeIdDescriptor.hpp" 52 52 #include "molecule.hpp" 53 #include "UIElements/Qt4/InstanceBoard/ObservedMaximumAtomTrajectorySize.hpp" 53 54 #include "UIElements/Qt4/InstanceBoard/ObservedValuesContainer_impl.hpp" 54 55 #include "World.hpp" 56 #include "WorldTime.hpp" 57 58 // static entities 59 const Observable::channels_t 60 WorldTimeChannels(1, WorldTime::TimeChanged); 61 62 const Observable::channels_t 63 MaximumTrajectorySizeChannels(1, ObservedMaximumAtomTrajectorySize::MaximumChanged); 55 64 56 65 QtObservedInstanceBoard::QtObservedInstanceBoard(QWidget * _parent) : … … 58 67 Observer("QtObservedInstanceBoard"), 59 68 WorldSignedOn(false), 69 WorldTimeSignedOn(false), 70 MaximumAtomTrajectorySizeSignedOn(false), 60 71 atomObservedValues( 61 72 "atom", … … 69 80 "molecule", 70 81 *this, 71 boost::bind(&QtObservedInstanceBoard::moleculecountsubjectKilled, this, _1)) 82 boost::bind(&QtObservedInstanceBoard::moleculecountsubjectKilled, this, _1)), 83 worldTime( 84 WorldTime::getPointer(), 85 WorldTime::getTime, 86 "WorldTime", 87 0, 88 WorldTimeChannels), 89 maximumAtomTrajectorySize( 90 ObservedMaximumAtomTrajectorySize::getPointer(), 91 boost::bind( 92 &ObservedMaximumAtomTrajectorySize::GetMaximumAtomTrajectorySize, 93 boost::cref(ObservedMaximumAtomTrajectorySize::getConstInstance()) 94 ), 95 "MaximumAtomTrajectorySize", 96 0, 97 MaximumTrajectorySizeChannels) 72 98 { 73 99 qRegisterMetaType<ObservedValue_Index_t>("ObservedValue_Index_t"); … … 80 106 World::getInstance().signOn(this, World::MoleculeInserted, GlobalObservableInfo::PriorityLevel(int(-10))); 81 107 WorldSignedOn = true; 108 WorldTime::getInstance().signOn(this, WorldTime::TimeChanged); 109 WorldTimeSignedOn = true; 110 ObservedMaximumAtomTrajectorySize::getInstance().signOn(this, ObservedMaximumAtomTrajectorySize::MaximumChanged); 111 MaximumAtomTrajectorySizeSignedOn = true; 82 112 } 83 113 … … 87 117 World::getInstance().signOff(this, World::AtomInserted); 88 118 World::getInstance().signOff(this, World::MoleculeInserted); 119 } 120 if (WorldTimeSignedOn) { 121 WorldTime::getInstance().signOff(this, WorldTime::TimeChanged); 122 } 123 if (MaximumAtomTrajectorySizeSignedOn) { 124 ObservedMaximumAtomTrajectorySize::getInstance().signOff(this, ObservedMaximumAtomTrajectorySize::MaximumChanged); 89 125 } 90 126 // sign off from all remaining molecules, bonds, and atoms … … 121 157 MoleculeSignedOn.erase(iter); 122 158 } else { 123 ASSERT(0, 124 "QtObservedInstanceBoard::subjectKilled() - could not find signedOn for atom/molecule "+toString(publisher)); 159 if (static_cast<World *>(publisher) == World::getPointer()) { 160 WorldSignedOn = false; 161 } else if (static_cast<WorldTime *>(publisher) == WorldTime::getPointer()) { 162 WorldTimeSignedOn = false; 163 } else if (static_cast<ObservedMaximumAtomTrajectorySize *>(publisher) == ObservedMaximumAtomTrajectorySize::getPointer()) { 164 MaximumAtomTrajectorySizeSignedOn = false; 165 } else { 166 ASSERT(0, 167 "QtObservedInstanceBoard::subjectKilled() - could not find signedOn for atom/molecule "+toString(publisher)); 168 } 125 169 } 126 170 } … … 217 261 } 218 262 default: 219 ASSERT(0, "QtObservedInstanceBoard::recieveNotification() - we cannot get here .");263 ASSERT(0, "QtObservedInstanceBoard::recieveNotification() - we cannot get here for Molecule."); 220 264 break; 221 265 } … … 277 321 } 278 322 default: 279 ASSERT(0, "QtObservedInstanceBoard::recieveNotification() - we cannot get here."); 280 break; 323 ASSERT(0, "QtObservedInstanceBoard::recieveNotification() - we cannot get here for Atom."); 324 break; 325 } 326 } else if (static_cast<ObservedMaximumAtomTrajectorySize *>(publisher) == ObservedMaximumAtomTrajectorySize::getPointer()) { 327 switch (notification->getChannelNo()) { 328 case ObservedMaximumAtomTrajectorySize::MaximumChanged: 329 { 330 #ifdef LOG_OBSERVER 331 observerLog().addMessage() << "++ Observer " << observerLog().getName(static_cast<Observer *>(this)) << " received notification that maximum atom tractory size has changed."; 332 #endif 333 LOG(3, "DEBUG: InformationBoard got MaximumChanged signal from ObservedMaximumAtomTrajectorySize."); 334 emit MaximumAtomTrajectoryChanged(); 335 break; 336 } 337 default: 338 { 339 ASSERT(0, "QtObservedInstanceBoard::recieveNotification() - we cannot get here for ObservedMaximumAtomTrajectorySize."); 340 break; 341 } 342 } 343 } else if (static_cast<WorldTime *>(publisher) == WorldTime::getPointer()) { 344 switch (notification->getChannelNo()) { 345 case WorldTime::TimeChanged: 346 { 347 #ifdef LOG_OBSERVER 348 observerLog().addMessage() << "++ Observer " << observerLog().getName(static_cast<Observer *>(this)) << " received notification that WorldTime has changed."; 349 #endif 350 LOG(3, "DEBUG: InformationBoard got TimeChanged signal from WorldTime."); 351 emit WorldTimeChanged(); 352 break; 353 } 354 default: 355 { 356 ASSERT(0, "QtObservedInstanceBoard::recieveNotification() - we cannot get here for WorldTime."); 357 break; 358 } 281 359 } 282 360 } else { … … 373 451 } 374 452 453 const ObservedValue<unsigned int>& QtObservedInstanceBoard::getObservedWorldTime() 454 { 455 return worldTime; 456 } 457 458 const ObservedValue<int>& QtObservedInstanceBoard::getObservedMaximumAtomTrajectorySize() 459 { 460 return maximumAtomTrajectorySize; 461 } 462 375 463 void QtObservedInstanceBoard::markObservedAtomAsConnected(ObservedValue_Index_t _id) 376 464 { -
src/UIElements/Qt4/InstanceBoard/QtObservedInstanceBoard.hpp
rbdd1d0 rf2d5ce 25 25 #include <boost/function.hpp> 26 26 27 #include "CodePatterns/ObservedValue.hpp" 27 28 #include "CodePatterns/Observer/Observer.hpp" 28 29 … … 94 95 QtObservedMolecule::ptr getObservedMolecule(const moleculeId_t _id); 95 96 QtObservedMolecule::ptr getObservedMolecule(ObservedValue_Index_t _id); 97 const ObservedValue<unsigned int>& getObservedWorldTime(); 98 const ObservedValue<int>& getObservedMaximumAtomTrajectorySize(); 96 99 void markObservedAtomAsConnected(ObservedValue_Index_t _id); 97 100 void markObservedAtomAsDisconnected(ObservedValue_Index_t _id); … … 114 117 void moleculeRemoved(ObservedValue_Index_t _molid); 115 118 void moleculeIndexChanged(const moleculeId_t _oldid, const moleculeId_t _newid); 119 void WorldTimeChanged(); 120 void MaximumAtomTrajectoryChanged(); 116 121 117 122 private: … … 124 129 bool WorldSignedOn; 125 130 131 //!> indicating whether we are still signedOn to World or not 132 bool WorldTimeSignedOn; 133 134 //!> indicating whether we are still signedOn to MaximumAtomTrajectorySize observable 135 bool MaximumAtomTrajectorySizeSignedOn; 136 126 137 typedef std::multiset<Observable *> SignedOn_t; 127 138 //!> map indicating to which atom we are currently signed on … … 129 140 //!> map indicating to which molecule we are currently signed on 130 141 SignedOn_t MoleculeSignedOn; 142 131 143 132 144 //!> "templated typedef" for an id to index map. … … 173 185 //!> container with all ObservedValues for each molecule, associated by id 174 186 ObservedValuesContainer<QtObservedMolecule, ObservedValue_Index_t> moleculeObservedValues; 187 //!> observed value for the world's time 188 ObservedValue<unsigned int> worldTime; 189 //!> observed value for the largest atom trajectory siye (i.e., current number of world time steps) 190 ObservedValue<int> maximumAtomTrajectorySize; 175 191 }; 176 192 -
src/UIElements/Qt4/QtMainWindow.cpp
rbdd1d0 rf2d5ce 120 120 shapeController = new QtShapeController(worldTab); 121 121 122 timeline = new QtTimeLine( this);122 timeline = new QtTimeLine(InstanceBoard, this); 123 123 124 124 infoBox = new QtInfoBox(InstanceBoard);
Note:
See TracChangeset
for help on using the changeset viewer.
