RedPanda-CPP/RedPandaIDE/systemconsts.h

46 lines
1.2 KiB
C
Raw Normal View History

2021-04-11 21:33:08 +08:00
#ifndef SYSTEMCONSTS_H
#define SYSTEMCONSTS_H
#include <QStringList>
2021-04-24 15:57:45 +08:00
#ifdef Q_OS_WIN
#define APP_SETTSINGS_FILENAME "redpandacpp.ini"
2021-04-15 11:18:14 +08:00
#define GCC_PROGRAM "gcc.exe"
#define GPP_PROGRAM "g++.exe"
#define GDB_PROGRAM "gdb.exe"
#define GDB32_PROGRAM "gdb32.exe"
#define MAKE_PROGRAM "mingw32-make.exe"
#define WINDRES_PROGRAM "windres.exe"
#define GPROF_PROGRAM "gprof.exe"
#define CLEAN_PROGRAM "rm.exe"
#define CPP_PROGRAM "cpp.exe"
2021-04-24 15:57:45 +08:00
#else
#error "Only support windows now!"
#endif
2021-04-15 11:18:14 +08:00
2021-04-20 22:24:33 +08:00
#ifdef Q_OS_WIN
# define PATH_SENSITIVITY Qt::CaseInsensitive
# define NULL_FILE "NUL"
# define EXECUTABE_EXT ".exe"
#elif Q_OS_LINUX
# define PATH_SENSITIVITY Qt::CaseSensitive
# define NULL_FILE "/dev/null"
# define EXECUTABE_EXT ""
#else
#error "Only support windows and linux now!"
#endif
2021-04-11 21:33:08 +08:00
class SystemConsts
{
public:
SystemConsts();
const QStringList& defaultFileFilters() const noexcept;
const QString& defaultFileFilter() const noexcept;
void addDefaultFileFilter(const QString& name, const QString& fileExtensions);
private:
QStringList mDefaultFileFilters;
};
extern SystemConsts* pSystemConsts;
#endif // SYSTEMCONSTS_H