Ignore:
Timestamp:
Jul 12, 2017, 7:11:51 PM (8 years ago)
Author:
Frederik Heber <frederik.heber@…>
Branches:
Action_Thermostats, Adding_MD_integration_tests, Adding_StructOpt_integration_tests, AutomationFragmentation_failures, Candidate_v1.6.1, Candidate_v1.7.0, Candidate_v1.7.1, ChemicalSpaceEvaluator, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Exclude_Hydrogens_annealWithBondGraph, Fix_Verbose_Codepatterns, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, Gui_displays_atomic_force_velocity, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, PythonUI_with_named_parameters, Recreated_GuiChecks, StoppableMakroAction, TremoloParser_IncreasedPrecision, stable
Children:
4c6f0d
Parents:
b10593
git-author:
Frederik Heber <frederik.heber@…> (07/12/17 12:20:23)
git-committer:
Frederik Heber <frederik.heber@…> (07/12/17 19:11:51)
Message:

FIX: several Qt...Lists required mutex to control refill triggered by observable update.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/UIElements/Views/Qt4/QtStatusBar.cpp

    rb10593 r7516f6  
    9999}
    100100
    101 void QtStatusBar::update(Observable *subject){
     101void QtStatusBar::paintEvent(QPaintEvent * event)
     102{
     103  boost::recursive_mutex::scoped_lock lock(refill_mutex);
     104
     105  QStatusBar::paintEvent(event);
     106}
     107
     108void QtStatusBar::update(Observable *subject)
     109{
    102110  if (subject == World::getPointer()){
    103111    atomCount = World::getInstance().numAtoms();
     
    133141void QtStatusBar::updateStatusMessage()
    134142{
     143  boost::recursive_mutex::scoped_lock lock(refill_mutex);
     144
    135145  if (StatusList.size() != 0) {
    136146    // get oldest message from the StatusList
     
    177187}
    178188
    179 void QtStatusBar::redrawStatus(){
     189void QtStatusBar::redrawStatus()
     190{
     191  boost::recursive_mutex::scoped_lock lock(refill_mutex);
     192
    180193  stringstream sstr;
    181194  sstr << "You have " << atomCount << " atom" << PLURAL_S(atomCount)
     
    190203    const bool StopStatus)
    191204{
     205  boost::recursive_mutex::scoped_lock lock(refill_mutex);
     206
    192207  progressIndicator *ind=0;
    193208  progressBars_t::iterator iter = progressBars.find(name);
     
    216231
    217232
    218 QtStatusBar::progressIndicator::progressIndicator(const std::string &name){
     233QtStatusBar::progressIndicator::progressIndicator(const std::string &name)
     234{
    219235  stringstream sstr;
    220236  sstr << "Busy (" << name << ")";
Note: See TracChangeset for help on using the changeset viewer.