X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FWorkAreaManager.cpp;h=4149d2cab43ab98d8a832d603d5aae16be5cfb97;hb=6147f97dddd485523540be18dc693eea8acec7a6;hp=a8c90309fd7ee804fad56dbc65cb621d625f7dfb;hpb=f0402e69c6073175b37932a90056700f0a064753;p=lyx.git diff --git a/src/frontends/WorkAreaManager.cpp b/src/frontends/WorkAreaManager.cpp index a8c90309fd..4149d2cab4 100644 --- a/src/frontends/WorkAreaManager.cpp +++ b/src/frontends/WorkAreaManager.cpp @@ -11,11 +11,10 @@ #include -#include "WorkArea.h" - #include "WorkAreaManager.h" -using std::list; +#include "WorkArea.h" + namespace lyx { namespace frontend { @@ -32,25 +31,25 @@ void WorkAreaManager::remove(WorkArea * wa) } -void WorkAreaManager::redrawAll() +void WorkAreaManager::redrawAll(bool update_metrics) { - for (list::iterator it = work_areas_.begin(); - it != work_areas_.end(); ) { - (*it)->redraw(); - ++it; - } + for (iterator it = work_areas_.begin(); it != work_areas_.end(); ++it) + (*it)->redraw(update_metrics); } void WorkAreaManager::closeAll() { - for (list::iterator it = work_areas_.begin(); - it != work_areas_.end(); ) { - (*it)->close(); - if (work_areas_.empty()) - break; - ++it; - } + while (!work_areas_.empty()) + // WorkArea is de-registering itself. + (*work_areas_.begin())->close(); +} + + +void WorkAreaManager::updateTitles() +{ + for (iterator it = work_areas_.begin(); it != work_areas_.end(); ++it) + (*it)->updateWindowTitle(); } } // namespace frontend