Files
Jungfraujoch/viewer/JFJochViewerSidePanel.h
Filip Leonarski a6b5cb5629
All checks were successful
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 8m0s
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 7m30s
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 7m54s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 8m41s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 8m19s
Build Packages / build:rpm (rocky8) (push) Successful in 8m8s
Build Packages / Generate python client (push) Successful in 13s
Build Packages / build:rpm (ubuntu2204) (push) Successful in 7m57s
Build Packages / Create release (push) Has been skipped
Build Packages / Build documentation (push) Successful in 30s
Build Packages / build:rpm (rocky9) (push) Successful in 9m0s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 6m54s
Build Packages / Unit tests (push) Successful in 1h10m42s
v1.0.0-rc.105 (#10)
This is an UNSTABLE release.

* jfjoch_viewer: Clean-up widgets slightly
* jfjoch_viewer: Limit right panel to 600 pixels
* jfjoch_viewer: Parse crystal symmetry type
* jfjoch_viewer: Grid scan view takes color map and can be fit to zoom

Reviewed-on: #10
Co-authored-by: Filip Leonarski <filip.leonarski@psi.ch>
Co-committed-by: Filip Leonarski <filip.leonarski@psi.ch>
2025-11-20 09:46:25 +01:00

64 lines
2.0 KiB
C++

// SPDX-FileCopyrightText: 2025 Filip Leonarski, Paul Scherrer Institute <filip.leonarski@psi.ch>
// SPDX-License-Identifier: GPL-3.0-only
#ifndef JFJOCH_JFJOCHVIEWERSIDEPANEL_H
#define JFJOCH_JFJOCHVIEWERSIDEPANEL_H
#include <QLabel>
#include <QWidget>
#include <QLineEdit>
#include <QCheckBox>
#include "widgets/JFJochViewerImageROIStatistics.h"
#include "../reader/JFJochReader.h"
#include "charts/JFJochSimpleChartView.h"
#include "widgets/JFJochViewerSidePanelChart.h"
#include "widgets/ResolutionRingWidget.h"
class JFJochViewerSidePanel : public QWidget {
Q_OBJECT
JFJochViewerSidePanelChart *chart = nullptr;
JFJochViewerImageROIStatistics *roi = nullptr;
ResolutionRingWidget *res_rings = nullptr;
signals:
void showSpots(bool input);
void setFeatureColor(QColor input);
void setSpotColor(QColor input);
void showHighestPixels(int32_t v);
void showSaturatedPixels(bool input);
void showPredictions(bool input);
void highlightIceRings(bool input);
void findBeamCenter(const UnitCell &input, bool guess);
void analyze();
void imageLoaded(std::shared_ptr<const JFJochReaderImage> image);
void ROIBoxConfigured(QRect box);
void ROICircleConfigured(double center_x, double center_y, double radius);
void AddROIToUserMask();
void SubtractROIFromUserMask();
void writeStatusBar(QString string, int timeout_ms = 0);
void ringModeSet(JFJochDiffractionImage::RingMode mode);
void resRingsSet(QVector<float> v);
public:
JFJochViewerSidePanel(QWidget *parent);
public slots:
void loadImage(std::shared_ptr<const JFJochReaderImage> image);
void SetROIBox(QRect box);
void SetROICircle(double x, double y, double radius);
void SetROIResult(ROIMessage msg);
void SetRings(QVector<float> v);
private slots:
void spotsToggled(bool input);
void predictionsToggled(bool input);
void highlightIceRingsToggled(bool input);
void saturatedPixelsToggled(bool input);
};
#endif //JFJOCH_JFJOCHVIEWERSIDEPANEL_H