Krita Source Code Documentation
Loading...
Searching...
No Matches
RecorderProfileSettings Class Reference

#include <recorder_profile_settings.h>

+ Inheritance diagram for RecorderProfileSettings:

Signals

void requestPreview (QString arguments)
 

Public Member Functions

bool editProfile (RecorderProfile *profile, const RecorderProfile &defaultProfile)
 
 RecorderProfileSettings (QWidget *parent=nullptr)
 
void setPreview (const QString &preview)
 
 ~RecorderProfileSettings ()
 

Private Slots

void onInputChanged ()
 
void onLinkActivated (const QString &link)
 
void onPreviewToggled (bool checked)
 

Private Member Functions

void fillProfile (const RecorderProfile &profile)
 

Private Attributes

Ui::RecorderProfileSettings * ui
 

Detailed Description

Definition at line 19 of file recorder_profile_settings.h.

Constructor & Destructor Documentation

◆ RecorderProfileSettings()

RecorderProfileSettings::RecorderProfileSettings ( QWidget * parent = nullptr)
explicit

Definition at line 25 of file recorder_profile_settings.cpp.

26 : QDialog(parent)
27 , ui(new Ui::RecorderProfileSettings)
28{
29 ui->setupUi(this);
30
31 KGuiItem::assign(ui->buttonBox->button(QDialogButtonBox::Ok), KStandardGuiItem::ok());
32 KGuiItem::assign(ui->buttonBox->button(QDialogButtonBox::Cancel), KStandardGuiItem::cancel());
33
34 ui->buttonPresetRevert->setIcon(KisIconUtils::loadIcon("edit-undo"));
35 ui->stackedWidget->setCurrentIndex(ArgumentsPageIndex::PageEdit);
36
37 connect(ui->labelSupportedVariables, SIGNAL(linkActivated(QString)), this, SLOT(onLinkActivated(QString)));
38 connect(ui->checkPreview, SIGNAL(toggled(bool)), this, SLOT(onPreviewToggled(bool)));
39}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
void onLinkActivated(const QString &link)
Ui::RecorderProfileSettings * ui
QIcon loadIcon(const QString &name)

References connect(), KisIconUtils::loadIcon(), onLinkActivated(), onPreviewToggled(), and ui.

◆ ~RecorderProfileSettings()

RecorderProfileSettings::~RecorderProfileSettings ( )

Definition at line 41 of file recorder_profile_settings.cpp.

42{
43 delete ui;
44}

References ui.

Member Function Documentation

◆ editProfile()

bool RecorderProfileSettings::editProfile ( RecorderProfile * profile,
const RecorderProfile & defaultProfile )

Definition at line 46 of file recorder_profile_settings.cpp.

47{
48 fillProfile(*profile);
49
50 disconnect(ui->buttonPresetRevert);
51 connect(ui->buttonPresetRevert, &QPushButton::clicked, [&] { fillProfile(defaultProfile); });
52
53 if (exec() != QDialog::Accepted)
54 return false;
55
56 profile->name = ui->editProfileName->text();
57 profile->extension = ui->editFileExtension->text();
58 profile->arguments = ui->editFfmpegArguments->toPlainText();
59
60 return true;
61}
void fillProfile(const RecorderProfile &profile)

References RecorderProfile::arguments, connect(), RecorderProfile::extension, fillProfile(), RecorderProfile::name, and ui.

◆ fillProfile()

void RecorderProfileSettings::fillProfile ( const RecorderProfile & profile)
private

Definition at line 92 of file recorder_profile_settings.cpp.

93{
94 ui->editProfileName->setText(profile.name);
95 ui->editFileExtension->setText(profile.extension);
96 ui->editFfmpegArguments->setPlainText(profile.arguments);
97}

References RecorderProfile::arguments, RecorderProfile::extension, RecorderProfile::name, and ui.

◆ onInputChanged

void RecorderProfileSettings::onInputChanged ( )
privateslot

Definition at line 68 of file recorder_profile_settings.cpp.

69{
70 const QString &name = ui->editProfileName->text();
71 const QString &extension = ui->editFileExtension->text();
72 const QString &arguments = ui->editFfmpegArguments->toPlainText();
73
74 bool isValid = (!name.isEmpty()) && (!extension.isEmpty()) && (!arguments.isEmpty());
75 ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(isValid);
76}
const char * name(StandardAction id)

References ui.

◆ onLinkActivated

void RecorderProfileSettings::onLinkActivated ( const QString & link)
privateslot

Definition at line 78 of file recorder_profile_settings.cpp.

79{
80 ui->editFfmpegArguments->insertPlainText(link);
81 ui->editFfmpegArguments->setFocus();
82}

References ui.

◆ onPreviewToggled

void RecorderProfileSettings::onPreviewToggled ( bool checked)
privateslot

Definition at line 84 of file recorder_profile_settings.cpp.

85{
86 if (checked)
87 Q_EMIT requestPreview(ui->editFfmpegArguments->toPlainText());
88
89 ui->stackedWidget->setCurrentIndex(checked ? ArgumentsPageIndex::PagePreview : ArgumentsPageIndex::PageEdit);
90}
void requestPreview(QString arguments)

References requestPreview(), and ui.

◆ requestPreview

void RecorderProfileSettings::requestPreview ( QString arguments)
signal

◆ setPreview()

void RecorderProfileSettings::setPreview ( const QString & preview)

Definition at line 63 of file recorder_profile_settings.cpp.

64{
65 ui->editPreview->setPlainText(preview);
66}

References ui.

Member Data Documentation

◆ ui

Ui::RecorderProfileSettings* RecorderProfileSettings::ui
private

Definition at line 44 of file recorder_profile_settings.h.


The documentation for this class was generated from the following files: