2.12.2021, 9:00 - 11:00: Due to updates GitLab may be unavailable for some minutes between 09:00 and 11:00.

Commit dfec0e89 authored by Christian Schulte zu Berge's avatar Christian Schulte zu Berge
Browse files

Completed refactoring campvis-application package:

All classes in campvis-application now have the CAMPVIS_APPLICATION_API macro specifying dll export/import state. The executable is now called campvis-gui.
parent 4768160f
......@@ -25,6 +25,7 @@
#ifndef BUTTONPROPERTYWIDGET_H__
#define BUTTONPROPERTYWIDGET_H__
#include "application/applicationapi.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
#include "core/properties/buttonproperty.h"
......@@ -36,7 +37,7 @@ namespace campvis {
* Widget for a Camera.
* For now just offering read-access.
*/
class ButtonPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API ButtonPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -25,20 +25,22 @@
#ifndef COLORPROPERTYWIDGET_H__
#define COLORPROPERTYWIDGET_H__
#include "application/applicationapi.h"
#include "application/gui/adjusterwidgets/doubleadjusterwidget.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
#include "application/gui/qtcolortools.h"
#include "core/properties/floatingpointproperty.h"
#include "core/properties/colorproperty.h"
#include "application/gui/qtcolortools.h"
namespace campvis {
/**
* Widget for a ColorProperty
*/
class ColorPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API ColorPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT
public:
......
......@@ -42,7 +42,7 @@ namespace campvis {
/**
* Widget for a DataNameProperty
*/
class DataNamePropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API DataNamePropertyWidget : public AbstractPropertyWidget {
Q_OBJECT
public:
......
......@@ -34,7 +34,7 @@ namespace campvis {
/**
* Widget for a FloatProperty
*/
class FloatPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API FloatPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT
public:
......
......@@ -50,7 +50,7 @@ namespace campvis {
/**
* Editor widget for a Geometry1DTransferFunction.
*/
class Geometry1DTransferFunctionEditor : public AbstractTransferFunctionEditor, public cgt::EventListener, public cgt::Painter {
class CAMPVIS_APPLICATION_API Geometry1DTransferFunctionEditor : public AbstractTransferFunctionEditor, public cgt::EventListener, public cgt::Painter {
Q_OBJECT;
public:
......
......@@ -49,7 +49,7 @@ namespace campvis {
/**
* Editor widget for a Geometry2DTransferFunction.
*/
class Geometry2DTransferFunctionEditor : public AbstractTransferFunctionEditor, public cgt::EventListener, public cgt::Painter {
class CAMPVIS_APPLICATION_API Geometry2DTransferFunctionEditor : public AbstractTransferFunctionEditor, public cgt::EventListener, public cgt::Painter {
Q_OBJECT;
public:
......
......@@ -38,7 +38,7 @@ namespace campvis {
/**
* Widget for a IntProperty
*/
class IntPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API IntPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -27,6 +27,8 @@
#include "core/properties/metaproperty.h"
#include "application/applicationapi.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertycollectionwidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
......@@ -38,7 +40,7 @@ namespace campvis {
* Widget for a Camera.
* For now just offering read-access.
*/
class MetaPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API MetaPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -25,8 +25,10 @@
#ifndef OPTIONPROPERTYWIDGET_H__
#define OPTIONPROPERTYWIDGET_H__
#include "application/applicationapi.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
#include "core/properties/optionproperty.h"
class QComboBox;
......@@ -37,7 +39,7 @@ namespace campvis {
/**
* Widget for a IntProperty
*/
class OptionPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API OptionPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -26,6 +26,8 @@
#define PROPERTYCOLLECTIONWIDGET_H__
#include "sigslot/sigslot.h"
#include "application/applicationapi.h"
#include <QList>
#include <QVBoxLayout>
#include <QWidget>
......@@ -40,7 +42,7 @@ namespace campvis {
* Main Window for the CAMPVis application.
* Wraps a nice Qt GUI around the TumVisApplication instance given during creation.
*/
class PropertyCollectionWidget : public QWidget, public sigslot::has_slots {
class CAMPVIS_APPLICATION_API PropertyCollectionWidget : public QWidget, public sigslot::has_slots {
Q_OBJECT;
public:
......
......@@ -28,6 +28,8 @@
#include "cgt/logmanager.h"
#include "cgt/singleton.h"
#include "application/applicationapi.h"
#include <tbb/atomic.h>
#include <tbb/spin_mutex.h>
......@@ -51,7 +53,7 @@ namespace campvis {
*
* \note PropertyWidgetFactory is a thread-safe lazy-instantiated singleton.
*/
class PropertyWidgetFactory {
class CAMPVIS_APPLICATION_API PropertyWidgetFactory {
public:
/// Typedef for a function pointer to create a PropertyWidget if you know exactly its type.
typedef AbstractPropertyWidget* (*PropertyWidgetCreateFunctionPointer) (AbstractProperty*, DataContainer*, QWidget*);
......
......@@ -25,7 +25,9 @@
#ifndef SIMPLETRANSFERFUNCTIONEDITOR_H__
#define SIMPLETRANSFERFUNCTIONEDITOR_H__
#include "application/applicationapi.h"
#include "application/gui/properties/abstracttransferfunctioneditor.h"
#include <QWidget>
class QGridLayout;
......@@ -38,7 +40,7 @@ namespace campvis {
/**
* Editor widget for a SimpleTransferFunction.
*/
class SimpleTransferFunctionEditor : public AbstractTransferFunctionEditor {
class CAMPVIS_APPLICATION_API SimpleTransferFunctionEditor : public AbstractTransferFunctionEditor {
Q_OBJECT;
public:
......
......@@ -25,15 +25,17 @@
#ifndef STATUSPROPERTYWIDGET_H__
#define STATUSPROPERTYWIDGET_H__
#include "application/applicationapi.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
#include "core/properties/statusproperty.h"
namespace campvis {
/**
* Widget for a StringProperty
*/
class StatusPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API StatusPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -25,8 +25,10 @@
#ifndef STRINGPROPERTYWIDGET_H__
#define STRINGPROPERTYWIDGET_H__
#include "application/applicationapi.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
#include "core/properties/stringproperty.h"
class QLineEdit;
......@@ -36,7 +38,7 @@ namespace campvis {
/**
* Widget for a StringProperty
*/
class StringPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API StringPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -28,9 +28,12 @@
#include "cgt/vector.h"
#include "cgt/matrix.h"
#include "cgt/event/eventlistener.h"
#include "core/classification/tfgeometry1d.h"
#include "core/classification/tfgeometry2d.h"
#include "application/applicationapi.h"
namespace campvis {
class Geometry1DTransferFunction;
......@@ -40,7 +43,7 @@ namespace campvis {
* for manipulating the TFGeometry1D (which is handy e.g. for TF editors...). Therefore, it
* extends the cgt::EventListener class and should implement its methods as necessary.
*/
class AbstractTFGeometryManipulator : public cgt::EventListener {
class CAMPVIS_APPLICATION_API AbstractTFGeometryManipulator : public cgt::EventListener {
public:
/**
* Creates a new AbstractTFGeometryManipulator for the given Geometry1DTransferFunction.
......
......@@ -25,6 +25,8 @@
#ifndef TRANSFERFUNCTIONEDITORFACTORY_H__
#define TRANSFERFUNCTIONEDITORFACTORY_H__
#include "application/applicationapi.h"
namespace campvis {
class AbstractTransferFunction;
class AbstractTransferFunctionEditor;
......@@ -34,7 +36,7 @@ namespace campvis {
* Factory class offering the static method createEditor to create transfer function editors
* for a given transfer function (depending on its type).
*/
class TransferFunctionEditorFactory {
class CAMPVIS_APPLICATION_API TransferFunctionEditorFactory {
public:
/**
* Creates the corresponding TransferFunctionEditor for the given transfer function \a tf.
......
......@@ -25,6 +25,7 @@
#ifndef TRANSFERFUNCTIONPROPERTYWIDGET_H__
#define TRANSFERFUNCTIONPROPERTYWIDGET_H__
#include "application/applicationapi.h"
#include "application/gui/properties/abstractpropertywidget.h"
#include "application/gui/properties/propertywidgetfactory.h"
#include "core/properties/transferfunctionproperty.h"
......@@ -42,7 +43,7 @@ namespace campvis {
/**
* Widget for a TransferFunctionProperty
*/
class TransferFunctionPropertyWidget : public AbstractPropertyWidget {
class CAMPVIS_APPLICATION_API TransferFunctionPropertyWidget : public AbstractPropertyWidget {
Q_OBJECT;
public:
......
......@@ -26,6 +26,8 @@
#define QTCOLORTOOLS_H__
#include "cgt/vector.h"
#include "application/applicationapi.h"
#include <QColor>
#include <QLabel>
......@@ -33,7 +35,7 @@ namespace campvis {
/**
* Some helper methods for Qt colors.
*/
struct QtColorTools {
struct CAMPVIS_APPLICATION_API QtColorTools {
/**
* Converts the QColor \a color to a cgt::col4.
* \param color Color to convert
......@@ -53,7 +55,7 @@ namespace campvis {
* Qt widget for showing and editing a QColor.
* When clicking the widget a QColorDialog appears to change the color.
*/
class ColorPickerWidget : public QLabel {
class CAMPVIS_APPLICATION_API ColorPickerWidget : public QLabel {
Q_OBJECT
public:
......
......@@ -26,6 +26,8 @@
#define QTQtDataHandle_H__
#include "core/datastructures/datahandle.h"
#include "application/applicationapi.h"
#include <QMetaType>
namespace campvis {
......@@ -33,7 +35,7 @@ namespace campvis {
/**
* Wraps around a DataHandle to make it suitable for QVariant and queued connections.
*/
class QtDataHandle : public DataHandle {
class CAMPVIS_APPLICATION_API QtDataHandle : public DataHandle {
public:
/**
* Creates a new QtDataHandle for the given data.
......
......@@ -30,6 +30,7 @@
#include "cgt/painter.h"
#include "tbb/mutex.h"
#include "application/applicationapi.h"
#include "application/gui/completinglualineedit.h"
#include "application/tools/bufferinglog.h"
#include "application/gui/loghighlighter.h"
......@@ -50,7 +51,7 @@ namespace campvis {
/**
* Qt widget providing a console-like interface to the Lua VM of CampvisApplication.
*/
class ScriptingWidget : public QWidget, cgt::Log {
class CAMPVIS_APPLICATION_API ScriptingWidget : public QWidget, cgt::Log {
Q_OBJECT;
public:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment