LibrePCB Developers Documentation
directorylockhandlerdialog.h
Go to the documentation of this file.
1/*
2 * LibrePCB - Professional EDA for everyone!
3 * Copyright (C) 2013 LibrePCB Developers, see AUTHORS.md for contributors.
4 * https://librepcb.org/
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#ifndef LIBREPCB_EDITOR_DIRECTORYLOCKHANDLERDIALOG_H
21#define LIBREPCB_EDITOR_DIRECTORYLOCKHANDLERDIALOG_H
22
23/*******************************************************************************
24 * Includes
25 ******************************************************************************/
27
28#include <QtCore>
29#include <QtWidgets>
30
31/*******************************************************************************
32 * Namespace / Forward Declarations
33 ******************************************************************************/
34namespace librepcb {
35namespace editor {
36
37namespace Ui {
38class DirectoryLockHandlerDialog;
39}
40
41/*******************************************************************************
42 * Class DirectoryLockHandlerDialog
43 ******************************************************************************/
44
48class DirectoryLockHandlerDialog final : public QDialog {
49 Q_OBJECT
50
51public:
52 // Constructors / Destructor
55 DirectoryLockHandlerDialog(const FilePath& directory, const QString& user,
56 bool allowOverrideLock,
57 QWidget* parent = nullptr) noexcept;
59
60 // Operator Overloadings
62 delete;
63
64 static DirectoryLock::LockHandlerCallback createDirectoryLockCallback(
65 QWidget* parent = nullptr) noexcept;
66
67private: // Data
68 QScopedPointer<Ui::DirectoryLockHandlerDialog> mUi;
69};
70
71/*******************************************************************************
72 * End of File
73 ******************************************************************************/
74
75} // namespace editor
76} // namespace librepcb
77
78#endif
This class can be used to implement file-based directory locks.
Definition: directorylock.h:154
This class represents absolute, well-formatted paths to files or directories.
Definition: filepath.h:129
The DirectoryLockHandlerDialog class.
Definition: directorylockhandlerdialog.h:48
DirectoryLockHandlerDialog(const DirectoryLockHandlerDialog &other)=delete
QScopedPointer< Ui::DirectoryLockHandlerDialog > mUi
Definition: directorylockhandlerdialog.h:68
static DirectoryLock::LockHandlerCallback createDirectoryLockCallback(QWidget *parent=nullptr) noexcept
Definition: directorylockhandlerdialog.cpp:76
Definition: occmodel.cpp:77