Newer
Older
// ************************************************************************************************
//
// BornAgain: simulate and fit scattering at grazing incidence
//

Wuttke, Joachim
committed
//! @file GUI/coregui/utils/GUIHelpers.h

Wuttke, Joachim
committed
//! @brief Defines class GUIHelpers functions
//! @homepage http://www.bornagainproject.org
//! @license GNU General Public License v3 or higher (see COPYING)
//! @copyright Forschungszentrum Jülich GmbH 2018
//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
// ************************************************************************************************
#ifndef BORNAGAIN_GUI_COREGUI_UTILS_GUIHELPERS_H
#define BORNAGAIN_GUI_COREGUI_UTILS_GUIHELPERS_H
Van Herck, Walter
committed
#include <memory>
Van Herck, Walter
committed
Pospelov, Gennady
committed
class JobItem;
class RealDataItem;
namespace GUIHelpers {
class Error : public std::exception {
Van Herck, Walter
committed
public:
explicit Error(const QString& message) noexcept : m_messageAsLatin1(message.toLatin1()) {}
virtual ~Error() noexcept;
Van Herck, Walter
committed
Error(const Error&) = default;
Error& operator=(const Error&) = default;
Error(Error&&) = default;
Error& operator=(Error&&) = default;
const char* what() const noexcept override;
Van Herck, Walter
committed
private:
QByteArray m_messageAsLatin1;
Van Herck, Walter
committed
};
void information(QWidget* parent, const QString& title, const QString& text,
const QString& detailedText = "");
void warning(QWidget* parent, const QString& title, const QString& text,
const QString& detailedText = "");
bool question(QWidget* parent, const QString& title, const QString& text,
const QString& detailedText = "", const QString& yesText = "&Yes",
const QString& noText = "&No");
bool okToDelete(QWidget* parent, const QString& title, const QString& text,
const QString& detailedText = "");
QString getBornAgainVersionString();
QString getValidFileName(const QString& proposed_name);
Pospelov, Gennady
committed
QString fileDir(const QString& fileName);
QString baseName(const QString& fileName);
Pospelov, Gennady
committed
bool parseVersion(const QString& version, int& major_num, int& minor_num, int& patch_num);
int versionCode(const QString& version);
bool isVersionMatchMinimal(const QString& version, const QString& minimal_version);
QString currentDateTime();
Pospelov, Gennady
committed
QStringList fromStdStrings(const std::vector<std::string>& container);
QVector<double> fromStdVector(const std::vector<double>& data);
Pospelov, Gennady
committed
QString createUuid();
QString readTextFile(const QString& fileName);
Van Herck, Walter
committed
} // namespace GUIHelpers
inline std::ostream& operator<<(std::ostream& stream, const QString& str) {
#endif // BORNAGAIN_GUI_COREGUI_UTILS_GUIHELPERS_H