mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-23 06:50:02 +02:00

- qt4->qt5 - in built qt5 6.1.5 because rhel7 is not upto date with qt5, removed findqwt.cmake - made a fix in qwt lib (qwt_plot_layout.h) to work with 5.15 and lower versions for qrect constr. - qt5 forms fixed, qt4 many hard coding forms switched to forms including qtabwidget, scrolls etc, fonts moved to forms - docking option enabled by default, removed option to disable docking feature from "Mode" - added qVersionResolve utility functions to handle compatibility before and after qt5.12 - qtplots (ian's code) takes in gain mode enable to set some settings within the class, with proper gain plot ticks - ensure gain plots have no zooming of z axis in 2d and y axis in 1d - removed placeholder text in qpalette in main window form as its not supportd until 5.12 (so using qt5.9 designer insted of qt5.15 to cope) - tab order Servers: - fixed some error messages that were empty for fail in funcs (mostly minor as if this error, major issues)
80 lines
1.9 KiB
C++
80 lines
1.9 KiB
C++
// SPDX-License-Identifier: LGPL-3.0-or-other
|
|
// Copyright (C) 2021 Contributors to the SLS Detector Package
|
|
#pragma once
|
|
#include "qDefs.h"
|
|
#include "sls/Detector.h"
|
|
#include "ui_form_detectormain.h"
|
|
class QResizeEvent;
|
|
|
|
namespace sls {
|
|
|
|
class qDrawPlot;
|
|
class qTabMeasurement;
|
|
class qTabDataOutput;
|
|
class qTabPlot;
|
|
class qTabAdvanced;
|
|
class qTabSettings;
|
|
class qTabDebugging;
|
|
class qTabDeveloper;
|
|
class qTabMessages;
|
|
|
|
class qDetectorMain : public QMainWindow, private Ui::DetectorMainObject {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
qDetectorMain(int multiId, const std::string &fname, bool isDevel);
|
|
~qDetectorMain();
|
|
|
|
private slots:
|
|
void EnableModes(QAction *action);
|
|
void ExecuteUtilities(QAction *action);
|
|
void ExecuteHelp(QAction *action);
|
|
void Refresh(int index);
|
|
|
|
/**
|
|
* Resizes the main window if the plot is docked/undocked
|
|
* @param b bool TRUE if undocked(outside main window), FALSE docked
|
|
*/
|
|
void ResizeMainWindow(bool b);
|
|
void EnableTabs(bool enable);
|
|
void SetZoomToolTip(bool disable);
|
|
|
|
protected:
|
|
void resizeEvent(QResizeEvent *event);
|
|
|
|
private:
|
|
void SetUpWidgetWindow();
|
|
void SetUpDetector(const std::string &config_file, int multiID);
|
|
void Initialization();
|
|
void LoadConfigFile(const std::string &config_file);
|
|
|
|
/** enumeration of the tabs */
|
|
enum {
|
|
MEASUREMENT,
|
|
SETTINGS,
|
|
DATAOUTPUT,
|
|
PLOT,
|
|
ADVANCED,
|
|
DEBUGGING,
|
|
DEVELOPER,
|
|
MESSAGES,
|
|
NumberOfTabs
|
|
};
|
|
slsDetectorDefs::detectorType detType;
|
|
std::unique_ptr<Detector> det;
|
|
qDrawPlot *plot;
|
|
qTabMeasurement *tabMeasurement;
|
|
qTabDataOutput *tabDataOutput;
|
|
qTabPlot *tabPlot;
|
|
qTabSettings *tabSettings;
|
|
qTabAdvanced *tabAdvanced;
|
|
qTabDebugging *tabDebugging;
|
|
qTabDeveloper *tabDeveloper;
|
|
qTabMessages *tabMessages;
|
|
int isDeveloper{false};
|
|
QString zoomToolTip;
|
|
QColor defaultTabColor;
|
|
};
|
|
|
|
} // namespace sls
|