##// END OF EJS Templates
Spectrogram segfault should be fixed now, added ability to provide Spectrogram min sampling time to avoid computation when possible...
Spectrogram segfault should be fixed now, added ability to provide Spectrogram min sampling time to avoid computation when possible Spectrogram visu is still broken... Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>

File last commit:

r1328:eb278710ae3b
r1467:da44adcd99e4
Show More
SelectionZoneAction.cpp
77 lines | 2.3 KiB | text/x-c | CppLexer
/ gui / src / Actions / SelectionZoneAction.cpp
#include <Actions/SelectionZoneAction.h>
#include <Visualization/VisualizationSelectionZoneItem.h>
Q_LOGGING_CATEGORY(LOG_SelectionZoneAction, "SelectionZoneAction")
struct SelectionZoneAction::SelectionZoneActionPrivate {
explicit SelectionZoneActionPrivate(const QString &name, const QStringList &subMenuList,
SelectionZoneAction::ExecuteFunction fun)
: m_Name{name}, m_SubMenuList{subMenuList}, m_Fun{std::move(fun)}
{
}
QString m_Name;
QStringList m_SubMenuList;
QKeySequence m_DisplayedShortcut;
SelectionZoneAction::ExecuteFunction m_Fun;
SelectionZoneAction::EnableFunction m_EnableFun = [](auto zones) { return true; };
bool m_FilteringAllowed = true;
};
SelectionZoneAction::SelectionZoneAction(const QString &name, ExecuteFunction fun)
: impl{spimpl::make_unique_impl<SelectionZoneActionPrivate>(name, QStringList{},
std::move(fun))}
{
}
SelectionZoneAction::SelectionZoneAction(const QStringList &subMenuList, const QString &name,
SelectionZoneAction::ExecuteFunction fun)
: impl{spimpl::make_unique_impl<SelectionZoneActionPrivate>(name, subMenuList,
std::move(fun))}
{
}
void SelectionZoneAction::setEnableFunction(EnableFunction fun)
{
impl->m_EnableFun = std::move(fun);
}
void SelectionZoneAction::setDisplayedShortcut(const QKeySequence &shortcut)
{
impl->m_DisplayedShortcut = shortcut;
}
QKeySequence SelectionZoneAction::displayedShortcut() const
{
return impl->m_DisplayedShortcut;
}
QString SelectionZoneAction::name() const noexcept
{
return impl->m_Name;
}
QStringList SelectionZoneAction::subMenuList() const noexcept
{
return impl->m_SubMenuList;
}
void SelectionZoneAction::setAllowedFiltering(bool value)
{
impl->m_FilteringAllowed = value;
}
bool SelectionZoneAction::isFilteringAllowed() const
{
return impl->m_FilteringAllowed;
}
void SelectionZoneAction::execute(const QVector<VisualizationSelectionZoneItem *> &item)
{
impl->m_Fun(item);
}
bool SelectionZoneAction::isEnabled(const QVector<VisualizationSelectionZoneItem *> &item)
{
return impl->m_EnableFun(item);
}