mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-01-22 05:30:06 -05:00
5cdfe0b6b9
--User changes -Add many tooltips to help clarify functionality. -Select multiple flames in library for del/move. Still only one allowed to be set as the current. -Show checkbox for current flame. Remember this is not necessarily what's selected. -User can now drag a square to select xforms, which keeps in sync with checkboxes. -Remove --nframes from command line. Replace with new params: --loopframes, --interpframes, --interploops. -Add two new options to EmberGenome: --cwloops --cwinterploops to specify whether rotation should go clockwise instead of the default counter clockwise. -Add these to Fractorium as checkboxes. -Apply All now also works for toggling animate flag on xforms. -Options dialog now allows user to set whether double click toggles spinners, or right click does. --Bug fixes -Selecting final and non-final xforms, and then dragging the non-final did not drag the final with it. -Selecting all xforms when a final was present, then deleting crashed the program. -Remove support for ppm files in the command line programs, it's an outdated format. -Switching between SP and DP kept reapplying the palette adjustments. --Code changes -Move build system to Visual Studio 2015 and Qt 5.6. -SSE used during addition of points to the histogram. -Remove last remnants of old flam3 C code and replace with C++. -Remove unused code involving tbb::task_group. -Make settings object a global shared_ptr singleton, so it doesn't have to be passed around.
65 lines
1.5 KiB
C++
65 lines
1.5 KiB
C++
#pragma once
|
|
|
|
#include "ui_OptionsDialog.h"
|
|
#include "FractoriumSettings.h"
|
|
#include "SpinBox.h"
|
|
|
|
/// <summary>
|
|
/// FractoriumOptionsDialog class.
|
|
/// </summary>
|
|
|
|
class Fractorium;//Forward declaration since Fractorium uses this dialog.
|
|
|
|
/// <summary>
|
|
/// The options dialog allows the user to save various preferences
|
|
/// between program runs.
|
|
/// It has a pointer to a FractoriumSettings object which is assigned
|
|
/// in the constructor. The main window holds the object as a member and the
|
|
/// pointer to it here is just for convenience.
|
|
/// </summary>
|
|
class FractoriumOptionsDialog : public QDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
friend Fractorium;
|
|
|
|
public:
|
|
FractoriumOptionsDialog(QWidget* p = nullptr, Qt::WindowFlags f = 0);
|
|
|
|
public slots:
|
|
void OnOpenCLCheckBoxStateChanged(int state);
|
|
void OnDeviceTableCellChanged(int row, int col);
|
|
void OnDeviceTableRadioToggled(bool checked);
|
|
virtual void accept() override;
|
|
virtual void reject() override;
|
|
|
|
protected:
|
|
virtual void showEvent(QShowEvent* e) override;
|
|
|
|
private:
|
|
bool EarlyClip();
|
|
bool YAxisUp();
|
|
bool AlphaChannel();
|
|
bool Transparency();
|
|
bool ContinuousUpdate();
|
|
bool OpenCL();
|
|
bool Double();
|
|
bool ShowAllXforms();
|
|
bool ToggleType();
|
|
bool AutoUnique();
|
|
uint ThreadCount();
|
|
uint RandomCount();
|
|
void DataToGui();
|
|
void GuiToData();
|
|
|
|
Ui::OptionsDialog ui;
|
|
shared_ptr<OpenCLInfo> m_Info;
|
|
SpinBox* m_XmlTemporalSamplesSpin;
|
|
SpinBox* m_XmlQualitySpin;
|
|
SpinBox* m_XmlSupersampleSpin;
|
|
QLineEdit* m_IdEdit;
|
|
QLineEdit* m_UrlEdit;
|
|
QLineEdit* m_NickEdit;
|
|
shared_ptr<FractoriumSettings> m_Settings;
|
|
};
|