1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
// ************************************************************************************************
//
// BornAgain: simulate and fit reflection and scattering
//
//! @file GUI/View/Job/JobViewActivities.cpp
//! @brief Implements class JobViewActivities.
//!
//! @homepage http://www.bornagainproject.org
//! @license GNU General Public License v3 or higher (see COPYING)
//! @copyright Forschungszentrum Jülich GmbH 2018
//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
//
// ************************************************************************************************
#include "GUI/View/Job/JobViewActivities.h"
#include "Base/Util/Assert.h"
#include <QMap>
namespace {
const QMap<JobViewActivity, QVector<JobViewFlags::Dock>> activityToDocks = {
{JobViewActivity::JobView, {JobViewFlags::JOB_LIST_DOCK}},
{JobViewActivity::RealTime, {JobViewFlags::JOB_LIST_DOCK, JobViewFlags::REAL_TIME_DOCK}},
{JobViewActivity::Fitting,
{JobViewFlags::JOB_LIST_DOCK, JobViewFlags::REAL_TIME_DOCK, JobViewFlags::FIT_PANEL_DOCK,
JobViewFlags::JOB_MESSAGE_DOCK}}};
const QMap<JobViewActivity, QString> activityNames = {
{JobViewActivity::JobView, "Job View Activity"},
{JobViewActivity::RealTime, "Real Time Activity"},
{JobViewActivity::Fitting, "Fitting Activity"}};
} // namespace
//! Returns list of all available activities.
QVector<JobViewActivity> JobViewActivities::all()
{
return activityNames.keys();
}
//! Returns name of activity.
QString JobViewActivities::nameFromActivity(JobViewActivity activity)
{
QMap<JobViewActivity, QString>::const_iterator it = activityNames.find(activity);
ASSERT(it != activityNames.end());
return it.value();
}
//! Returns activity by its name.
JobViewActivity JobViewActivities::activityFromName(QString name)
{
ASSERT(activityNames.values().contains(name));
return activityNames.key(name);
}
//! Returns vector of JobView's dockId which have to be shown for given activity.
QVector<JobViewFlags::Dock> JobViewActivities::activeDocks(JobViewActivity activity)
{
QMap<JobViewActivity, QVector<JobViewFlags::Dock>>::const_iterator it =
activityToDocks.find(activity);
ASSERT(it != activityToDocks.end());
return it.value();
}
|