mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
First implementation of Headless (#4392)
* Revert "#4377 Octave : Use RiaLogging for error messages instead of QErrorMessage " This reverts commitf758a8edb2. * Revert "#4380 Preferences : Changing scene font size when geo mech view is open causes crash" This reverts commitdf62a41397. * Revert "#4379 Documentation : Update command line parser for import of summary files" This reverts commitd0b5357ed4. * Unfinished WIP * Builds but crashes * Refactored code now builds and runs * ResInsight can now run the unittests headless * Can run some command files successfully * Build on Linux * Extra headless hack header * Moved PdmUiItem hack to cpp file * Fix headless crash in RimWellAllocationPlot * Handle error gracefully if ExportSnapshots command is executed from console * Add caf::QIconProvider and remove some hacks * Also made the greying out of disabled icons work for a couple of cases where it didn't. * Linux build fix * #4380 Reimplement fixdf62a41397by @magnesj on top of Headless code changes * #4379 Reintroduce kode fromd0b5357ed4by @magnesj * #4377 Restoref758a8edb2in new Headless code
This commit is contained in:
@@ -46,6 +46,7 @@
|
||||
#include "RiuViewer.h"
|
||||
|
||||
#include "cafPdmUiTreeOrdering.h"
|
||||
#include "cafQIconProvider.h"
|
||||
#include "cvfCamera.h"
|
||||
#include "cvfMatrix4.h"
|
||||
#include "cvfScene.h"
|
||||
@@ -396,31 +397,14 @@ bool RimViewLinker::isActive() const
|
||||
return viewLinkerCollection->isActive();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
/// Hande icon update locally as PdmUiItem::updateUiIconFromState works only for static icons
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimViewLinker::applyIconEnabledState(caf::PdmObject* obj, const QIcon& icon, bool disable)
|
||||
{
|
||||
QPixmap icPixmap;
|
||||
icPixmap = icon.pixmap(16, 16, QIcon::Normal);
|
||||
|
||||
if (disable)
|
||||
{
|
||||
QIcon temp(icPixmap);
|
||||
icPixmap = temp.pixmap(16, 16, QIcon::Disabled);
|
||||
}
|
||||
|
||||
QIcon newIcon(icPixmap);
|
||||
obj->setUiIcon(newIcon);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimViewLinker::updateUiNameAndIcon()
|
||||
{
|
||||
RimViewLinker::findNameAndIconFromView(&m_name.v(), &m_originalIcon, m_masterView);
|
||||
RimViewLinker::applyIconEnabledState(this, m_originalIcon, false);
|
||||
caf::QIconProvider iconProvider;
|
||||
RimViewLinker::findNameAndIconFromView(&m_name.v(), &iconProvider, m_masterView);
|
||||
setUiIcon(iconProvider);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -448,7 +432,7 @@ void RimViewLinker::scheduleCreateDisplayModelAndRedrawForDependentViews()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimViewLinker::findNameAndIconFromView(QString* name, QIcon* icon, RimGridView* view)
|
||||
void RimViewLinker::findNameAndIconFromView(QString* name, caf::QIconProvider* icon, RimGridView* view)
|
||||
{
|
||||
CVF_ASSERT(name && icon);
|
||||
|
||||
@@ -461,20 +445,20 @@ void RimViewLinker::findNameAndIconFromView(QString* name, QIcon* icon, RimGridV
|
||||
|
||||
if (dynamic_cast<RimGeoMechCase*>(rimCase))
|
||||
{
|
||||
*icon = QIcon(":/GeoMechCase48x48.png");
|
||||
*icon = caf::QIconProvider(":/GeoMechCase48x48.png");
|
||||
}
|
||||
else if (dynamic_cast<RimEclipseResultCase*>(rimCase))
|
||||
{
|
||||
*icon = QIcon(":/Case48x48.png");
|
||||
*icon = caf::QIconProvider(":/Case48x48.png");
|
||||
}
|
||||
else if (dynamic_cast<RimEclipseInputCase*>(rimCase))
|
||||
{
|
||||
*icon = QIcon(":/EclipseInput48x48.png");
|
||||
*icon = caf::QIconProvider(":/EclipseInput48x48.png");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
*icon = QIcon();
|
||||
*icon = caf::QIconProvider();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user