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

The KisRecoverNamedAutosaveDialog class is a dialog to recover already existing files from autosave. More...

#include <KisRecoverNamedAutosaveDialog.h>

+ Inheritance diagram for KisRecoverNamedAutosaveDialog:

Public Types

enum  ResultType { OpenAutosave , OpenMainFile , Cancel }
 The ResultType enum represents three possible decisions for the user. More...
 

Public Member Functions

 KisRecoverNamedAutosaveDialog (QWidget *parent=0, QString mainFile="", QString autosaveFile="")
 KisRecoverNamedAutosaveDialog basic constructor.
 
 ~KisRecoverNamedAutosaveDialog () override
 ~KisRecoverNamedAutosaveDialog basic destructor
 

Private Slots

void slotCancelRequested ()
 slotCancelRequested sets the correct result of the dialog in case the user pressed Cancel button and closes the dialog
 
void slotOkRequested ()
 slotOkRequested sets the correct result of the dialog in case the user pressed OK button and closes the dialog
 

Private Attributes

Ui::KisRecoverNamedAutosaveDialog * ui
 

Detailed Description

The KisRecoverNamedAutosaveDialog class is a dialog to recover already existing files from autosave.

When the user saves a file, then works on it a bit more, and then Krita crashes or something else unexpected happens that makes it impossible to close Krita correctly, often there is an autosave left behind in the directory of the file. This dialog allows choosing whether to open the autosaved file or the original file.

Definition at line 24 of file KisRecoverNamedAutosaveDialog.h.

Member Enumeration Documentation

◆ ResultType

The ResultType enum represents three possible decisions for the user.

OpenAutosave = open the autosaved file OpenMainFile = discard the autosave and open the original file Cancel = Do nothing

Enumerator
OpenAutosave 
OpenMainFile 
Cancel 

Definition at line 36 of file KisRecoverNamedAutosaveDialog.h.

Constructor & Destructor Documentation

◆ KisRecoverNamedAutosaveDialog()

KisRecoverNamedAutosaveDialog::KisRecoverNamedAutosaveDialog ( QWidget * parent = 0,
QString mainFile = "",
QString autosaveFile = "" )
explicit

KisRecoverNamedAutosaveDialog basic constructor.

Parameters
parentparent widget
mainFilepath to the main file (used to create a thumbnail)
autosaveFilepath to the autosaved file (used to create a thumbnail)

Definition at line 19 of file KisRecoverNamedAutosaveDialog.cpp.

20 : QDialog(parent),
21 ui(new Ui::KisRecoverNamedAutosaveDialog)
22{
23
24 ui->setupUi(this);
25
26 connect(ui->btOk, SIGNAL(clicked()), this, SLOT(slotOkRequested()));
27 connect(ui->btCancel, SIGNAL(clicked()), this, SLOT(slotCancelRequested()));
28
29 ui->lblExplanation->setText(i18nc("Recover an autosave for an already existing file: explanation in the recovery dialog",
30 "An autosave for this file exists. How do you want to proceed?\n"
31 "Warning: if you discard the autosave now, it will be removed."));
32
33 KisFileIconCreator creator;
34 QIcon mainFileIcon, autosaveFileIcon;
35
36 QSize size = ui->rbOpenAutosave->iconSize();
37 size = size*4;
38 bool success = creator.createFileIcon(mainFile, mainFileIcon, devicePixelRatioF(), size);
39 if (success) {
40 ui->rbDiscardAutosave->setIcon(mainFileIcon);
41 ui->rbDiscardAutosave->setIconSize(size);
42 }
43 success = creator.createFileIcon(autosaveFile, autosaveFileIcon, devicePixelRatioF(), size);
44 if (success) {
45 ui->rbOpenAutosave->setIcon(autosaveFileIcon);
46 ui->rbOpenAutosave->setIconSize(size);
47 }
48
49 ui->rbOpenAutosave->setChecked(true); // it should be selected by default
50
51}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
The KisFileIconCreator class creates a thumbnail from a file on disk.
bool createFileIcon(QString path, QIcon &icon, qreal devicePixelRatioF, QSize iconSize) override
createFileIcon creates an icon from the file on disk
Ui::KisRecoverNamedAutosaveDialog * ui
void slotCancelRequested()
slotCancelRequested sets the correct result of the dialog in case the user pressed Cancel button and ...
void slotOkRequested()
slotOkRequested sets the correct result of the dialog in case the user pressed OK button and closes t...
int size(const Forest< T > &forest)
Definition KisForest.h:1232

References connect(), KisFileIconCreator::createFileIcon(), slotCancelRequested(), slotOkRequested(), and ui.

◆ ~KisRecoverNamedAutosaveDialog()

KisRecoverNamedAutosaveDialog::~KisRecoverNamedAutosaveDialog ( )
override

~KisRecoverNamedAutosaveDialog basic destructor

Definition at line 53 of file KisRecoverNamedAutosaveDialog.cpp.

54{
55 delete ui;
56}

References ui.

Member Function Documentation

◆ slotCancelRequested

void KisRecoverNamedAutosaveDialog::slotCancelRequested ( )
privateslot

slotCancelRequested sets the correct result of the dialog in case the user pressed Cancel button and closes the dialog

This is a slot for button pressed signal for the Cancel button. It sets the result to Cancel. Then it closes the dialog.

Definition at line 64 of file KisRecoverNamedAutosaveDialog.cpp.

65{
66 close();
67 setResult(Cancel);
68}
QAction * close(const QObject *recvr, const char *slot, QObject *parent)

References Cancel.

◆ slotOkRequested

void KisRecoverNamedAutosaveDialog::slotOkRequested ( )
privateslot

slotOkRequested sets the correct result of the dialog in case the user pressed OK button and closes the dialog

This is a slot for button pressed signal for the OK button. It sets the result to either OpenMainFile or OpenAutosave, depending on which radio button is checked. Then it closes the dialog.

Definition at line 58 of file KisRecoverNamedAutosaveDialog.cpp.

59{
60 close();
61 setResult(ui->rbOpenAutosave->isChecked() ? OpenAutosave : OpenMainFile);
62}

References OpenAutosave, OpenMainFile, and ui.

Member Data Documentation

◆ ui

Ui::KisRecoverNamedAutosaveDialog* KisRecoverNamedAutosaveDialog::ui
private

Definition at line 75 of file KisRecoverNamedAutosaveDialog.h.


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