NDEVR
API Documentation
InitialSetupDialog.h
1#pragma once
2#include "DLLInfo.h"
3#include <NDEVR/String.h>
4#include <QWidget>
5class QBoxLayout;
6namespace NDEVR
7{
8 class ImageView;
10 class QCustomLabel;
11 class TranslationCombo;
12 class Button;
13 class UnitDialog;
15 class UnitsDialog;
16 class WindowManager;
17 class NDEVRActivationDialog;
22 class NDEVR_API InitialSetupDialog : public QWidget
23 {
24 Q_OBJECT
25 public:
31 InitialSetupDialog(WindowManager* manager, QWidget* parent = nullptr);
36 void addWidget(QWidget* widget);
41 void removeWidget(QWidget* widget);
51 bool hasContent() const;
52 protected:
81 QSize minimumSizeHint() const override;
86 QSize sizeHint() const override;
95 void setVisible(bool visible) override;
96 signals:
101 protected:
103 QWidget* m_first_page = nullptr;
104 QCustomLabel* m_text = nullptr;
105 ImageView* m_view = nullptr;
116 QBoxLayout* m_main_layout = nullptr;
121 NDEVRActivationDialog* m_activation_dialog = nullptr;
123
124 };
125}
A core widget that allows the user to click one of many button types.
Definition Button.h:68
Allows the user to adjust default folders or whether or not the software uses project folders or proj...
A widget that shows a raster image or icon.
Definition ImageView.h:44
void resetDialog()
Resets the dialog to its initial state, returning to the first page.
NDEVRActivationDialog * m_activation_dialog
The activation/registration dialog page.
QCustomLabel * m_touch_label
Label for the touch optimization setting.
void setupUnitsTab()
Creates the units configuration page.
void removeWidget(QWidget *widget)
Removes a previously added widget page from the setup wizard.
TranslationCombo * m_translation_combo
Combo box for selecting the application language.
void setupActivationTab()
Creates the activation/registration page.
WindowManager * m_window_manager
The window manager providing application context.
Button * m_touch_button
Button for toggling touch-optimized mode.
QCustomLabel * m_touch_info_label
Informational label describing touch optimization.
ImageView * m_view
The branding image view on the welcome page.
void finishedSignal()
Emitted when the user completes or dismisses the setup wizard.
void retranslate()
Re-translates all user-facing strings when the language changes.
UnitsDialog * m_unit_dialog
The units configuration dialog page.
FileAndFolderSettingsDialog * m_folder_dialog
The file and folder settings dialog page.
void setupInitialPage()
Creates the initial welcome page with language and theme options.
QBoxLayout * m_main_layout
The main layout for the dialog.
void setVisible(bool visible) override
Overrides visibility to handle setup completion logic.
Button * m_next_button
Button to advance to the next setup page.
void setupButtons()
Creates the navigation buttons (next/previous) at the bottom of the dialog.
InitialSetupDialog(WindowManager *manager, QWidget *parent=nullptr)
Constructs the initial setup dialog with the given window manager.
Button * m_previous_button
Button to return to the previous setup page.
QSize sizeHint() const override
Returns the recommended size for this dialog.
QCustomLabel * m_language_info_label
Informational label describing language selection.
void updateWidgets()
Updates the visibility and state of all widgets based on the current page.
QCustomLabel * m_language_label
Label for the language selection.
bool hasContent() const
Returns whether the dialog has any setup pages to display.
QSize minimumSizeHint() const override
Returns the minimum recommended size for this dialog.
bool m_language_changed
Whether the user changed the language during setup.
QCustomLabel * m_text
The welcome text label.
Button * m_lighting_button
Button for toggling the light/dark theme.
QCustomLabel * m_lighting_label
Label for the light/dark theme setting.
QCustomLabel * m_lighting_info_label
Informational label describing theme selection.
QWidget * m_first_page
The initial welcome page widget.
QCustomStackedWidget * m_stack
The stacked widget containing all setup pages.
void setupFolderTab()
Creates the file and folder settings page.
void addWidget(QWidget *widget)
Adds a custom widget page to the setup wizard.
Displays translated text.
The main class for a layout where all widgets occupy the same same and only one widget is shown at a ...
Provides possible translations via a combobox to allow the user to select a language for the software...
A dialog which can be used to set various units for different unit categories, such as selecting the ...
Definition UnitsDialog.h:54
Manages all windows and logic surrounding dialogs and views for displaying and managing any environme...
The primary namespace for the NDEVR SDK.