mirror of
https://github.com/rizinorg/cutter.git
synced 2024-12-18 19:06:10 +00:00
Splitted Cutter.h and moved everything in core (#1201)
Sometimes it is not necessary to include the whole Cutter.h file Hence, it's been splitted so you can include only what you require E.g. #include "core/CutterCommon.h" to have access to the common types
This commit is contained in:
parent
2d2b9c8a28
commit
ab27e09b91
@ -42,6 +42,11 @@ project(Cutter VERSION "${CUTTER_VERSION_FULL}")
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/core")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/widgets")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/common")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/plugins")
|
||||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
@ -136,9 +141,6 @@ if(CUTTER_ENABLE_PYTHON_BINDINGS)
|
||||
set_property(SOURCE ${BINDINGS_SOURCE} PROPERTY SKIP_AUTOGEN ON)
|
||||
|
||||
include_directories("${BINDINGS_BUILD_DIR}/CutterBindings")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/widgets")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/common")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/plugins")
|
||||
|
||||
add_custom_command(OUTPUT ${BINDINGS_SOURCE}
|
||||
COMMAND "${SHIBOKEN_BINARY}" --project-file="${BINDINGS_BUILD_DIR}/bindings.txt"
|
||||
|
@ -90,7 +90,7 @@ CUTTER_ENABLE_QTWEBENGINE {
|
||||
message("QtWebEngine support disabled. (requires CUTTER_ENABLE_JUPYTER=true)")
|
||||
}
|
||||
|
||||
INCLUDEPATH *= . widgets dialogs common plugins
|
||||
INCLUDEPATH *= . core widgets dialogs common plugins
|
||||
|
||||
win32 {
|
||||
# Generate debug symbols in release mode
|
||||
@ -194,7 +194,7 @@ QMAKE_SUBSTITUTES += CutterConfig.h.in
|
||||
|
||||
SOURCES += \
|
||||
Main.cpp \
|
||||
Cutter.cpp \
|
||||
core/Cutter.cpp \
|
||||
widgets/DisassemblerGraphView.cpp \
|
||||
widgets/OverviewView.cpp \
|
||||
common/RichTextPainter.cpp \
|
||||
@ -205,7 +205,7 @@ SOURCES += \
|
||||
dialogs/FlagDialog.cpp \
|
||||
dialogs/RenameDialog.cpp \
|
||||
dialogs/XrefsDialog.cpp \
|
||||
MainWindow.cpp \
|
||||
core/MainWindow.cpp \
|
||||
common/Helpers.cpp \
|
||||
common/HexAsciiHighlighter.cpp \
|
||||
common/HexHighlighter.cpp \
|
||||
@ -213,7 +213,7 @@ SOURCES += \
|
||||
common/MdHighlighter.cpp \
|
||||
dialogs/preferences/AsmOptionsWidget.cpp \
|
||||
dialogs/NewFileDialog.cpp \
|
||||
AnalTask.cpp \
|
||||
common/AnalTask.cpp \
|
||||
widgets/CommentsWidget.cpp \
|
||||
widgets/ConsoleWidget.cpp \
|
||||
widgets/Dashboard.cpp \
|
||||
@ -293,7 +293,7 @@ SOURCES += \
|
||||
common/CutterSeekable.cpp \
|
||||
common/RefreshDeferrer.cpp \
|
||||
dialogs/WelcomeDialog.cpp \
|
||||
RunScriptTask.cpp \
|
||||
common/RunScriptTask.cpp \
|
||||
dialogs/EditMethodDialog.cpp \
|
||||
dialogs/LoadNewTypesDialog.cpp \
|
||||
widgets/SdbWidget.cpp \
|
||||
@ -302,7 +302,9 @@ SOURCES += \
|
||||
common/BasicBlockHighlighter.cpp
|
||||
|
||||
HEADERS += \
|
||||
Cutter.h \
|
||||
core/Cutter.h \
|
||||
core/CutterCommon.h \
|
||||
core/CutterDescriptions.h \
|
||||
widgets/DisassemblerGraphView.h \
|
||||
widgets/OverviewView.h \
|
||||
common/RichTextPainter.h \
|
||||
@ -317,12 +319,12 @@ HEADERS += \
|
||||
common/Helpers.h \
|
||||
common/HexAsciiHighlighter.h \
|
||||
common/HexHighlighter.h \
|
||||
MainWindow.h \
|
||||
core/MainWindow.h \
|
||||
common/Highlighter.h \
|
||||
common/MdHighlighter.h \
|
||||
dialogs/InitialOptionsDialog.h \
|
||||
dialogs/NewFileDialog.h \
|
||||
AnalTask.h \
|
||||
common/AnalTask.h \
|
||||
widgets/CommentsWidget.h \
|
||||
widgets/ConsoleWidget.h \
|
||||
widgets/Dashboard.h \
|
||||
@ -406,7 +408,7 @@ HEADERS += \
|
||||
common/CutterSeekable.h \
|
||||
common/RefreshDeferrer.h \
|
||||
dialogs/WelcomeDialog.h \
|
||||
RunScriptTask.h \
|
||||
common/RunScriptTask.h \
|
||||
common/Json.h \
|
||||
dialogs/EditMethodDialog.h \
|
||||
dialogs/LoadNewTypesDialog.h \
|
||||
@ -426,7 +428,7 @@ FORMS += \
|
||||
dialogs/NewfileDialog.ui \
|
||||
dialogs/InitialOptionsDialog.ui \
|
||||
dialogs/EditFunctionDialog.ui \
|
||||
MainWindow.ui \
|
||||
core/MainWindow.ui \
|
||||
widgets/CommentsWidget.ui \
|
||||
widgets/ConsoleWidget.ui \
|
||||
widgets/Dashboard.ui \
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QList>
|
||||
#include <QProxyStyle>
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
|
||||
class CutterApplication : public QApplication
|
||||
|
@ -1,6 +1,6 @@
|
||||
|
||||
#include "CutterApplication.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
/*!
|
||||
* \brief Migrate Settings used before Cutter 1.8
|
||||
|
@ -2,9 +2,9 @@
|
||||
#ifndef CUTTER_BINDINGS_H
|
||||
#define CUTTER_BINDINGS_H
|
||||
|
||||
#include "../Cutter.h"
|
||||
#include "../core/Cutter.h"
|
||||
#include "../common/Configuration.h"
|
||||
#include "../MainWindow.h"
|
||||
#include "../core/MainWindow.h"
|
||||
#include "../widgets/CutterDockWidget.h"
|
||||
#include "../plugins/CutterPlugin.h"
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "Cutter.h"
|
||||
#include "AnalTask.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/AnalTask.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "dialogs/InitialOptionsDialog.h"
|
||||
#include <QJsonArray>
|
||||
#include <QDebug>
|
@ -2,7 +2,7 @@
|
||||
#define ANALTHREAD_H
|
||||
|
||||
#include "common/AsyncTask.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/InitialOptions.h"
|
||||
|
||||
class CutterCore;
|
@ -1,7 +1,7 @@
|
||||
#ifndef COLORS_H
|
||||
#define COLORS_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/RichTextPainter.h"
|
||||
#include <r_anal.h>
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
#define COMMANDTASK_H
|
||||
|
||||
#include "common/AsyncTask.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class CommandTask : public AsyncTask
|
||||
{
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <QSettings>
|
||||
#include <QFont>
|
||||
#include <Cutter.h>
|
||||
#include <core/Cutter.h>
|
||||
|
||||
#define Config() (Configuration::instance())
|
||||
#define ConfigColor(x) Config()->getColor(x)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "CutterSeekable.h"
|
||||
|
||||
#include <QPlainTextEdit>
|
||||
|
@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class MainWindow;
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
#define FUNCTIONSTASK_H
|
||||
|
||||
#include "common/AsyncTask.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class FunctionsTask : public AsyncTask
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "Highlighter.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
#include <QtGui>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#ifndef HIGHLIGHTER_H
|
||||
#define HIGHLIGHTER_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
#include <QSyntaxHighlighter>
|
||||
#include <QHash>
|
||||
|
@ -2,7 +2,7 @@
|
||||
#ifndef CUTTER_INITIALOPTIONS_H
|
||||
#define CUTTER_INITIALOPTIONS_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
struct InitialOptions
|
||||
{
|
||||
|
@ -2,7 +2,7 @@
|
||||
#ifndef CUTTER_JSON_H
|
||||
#define CUTTER_JSON_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
#include <QJsonValue>
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <Python.h>
|
||||
#include <csignal>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "NestedIPyKernel.h"
|
||||
#include "QtResImporter.h"
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
#ifdef CUTTER_ENABLE_PYTHON
|
||||
|
||||
#include "PythonAPI.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
#include "CutterConfig.h"
|
||||
|
||||
@ -198,4 +198,4 @@ PyObject *PyInit_api_internal()
|
||||
|
||||
#endif // CUTTER_ENABLE_JUPYTER
|
||||
|
||||
#endif // CUTTER_ENABLE_PYTHON
|
||||
#endif // CUTTER_ENABLE_PYTHON
|
||||
|
@ -2,7 +2,7 @@
|
||||
#ifndef R2TASK_H
|
||||
#define R2TASK_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class R2Task: public QObject
|
||||
{
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "Cutter.h"
|
||||
#include "RunScriptTask.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/RunScriptTask.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
RunScriptTask::RunScriptTask() :
|
||||
AsyncTask()
|
@ -2,7 +2,7 @@
|
||||
#define RUNSCRIPTTHREAD_H
|
||||
|
||||
#include "common/AsyncTask.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class RunScriptTask : public AsyncTask
|
||||
{
|
@ -3,7 +3,7 @@
|
||||
#define STRINGSASYNCTASK_H
|
||||
|
||||
#include "common/AsyncTask.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class StringsTask : public AsyncTask
|
||||
{
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
#include <cassert>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "TempConfig.h"
|
||||
|
||||
TempConfig::~TempConfig()
|
||||
|
@ -9,7 +9,7 @@
|
||||
#include "common/AsyncTask.h"
|
||||
#include "common/R2Task.h"
|
||||
#include "common/Json.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "sdb.h"
|
||||
|
||||
Q_GLOBAL_STATIC(CutterCore, uniqueInstance)
|
@ -1,13 +1,8 @@
|
||||
#ifndef CUTTER_H
|
||||
#define CUTTER_H
|
||||
|
||||
#include "r_core.h"
|
||||
|
||||
// Workaround for compile errors on Windows
|
||||
#ifdef _WIN32
|
||||
#undef min
|
||||
#undef max
|
||||
#endif //_WIN32
|
||||
#include "core/CutterCommon.h"
|
||||
#include "core/CutterDescriptions.h"
|
||||
|
||||
#include <QMap>
|
||||
#include <QDebug>
|
||||
@ -17,37 +12,13 @@
|
||||
#include <QJsonDocument>
|
||||
#include <QErrorMessage>
|
||||
|
||||
#define CutterRListForeach(list, it, type, x) \
|
||||
if (list) for (it = list->head; it && ((x=static_cast<type*>(it->data))); it = it->n)
|
||||
|
||||
#define CutterRVectorForeach(vec, it, type) \
|
||||
if ((vec) && (vec)->a) \
|
||||
for (it = (type *)(vec)->a; (char *)it != (char *)(vec)->a + ((vec)->len * (vec)->elem_size); it = (type *)((char *)it + (vec)->elem_size))
|
||||
|
||||
#define APPNAME "Cutter"
|
||||
|
||||
#define Core() (CutterCore::instance())
|
||||
|
||||
/*!
|
||||
* \brief Type to be used for all kinds of addresses/offsets in r2 address space.
|
||||
*/
|
||||
typedef ut64 RVA;
|
||||
|
||||
/*!
|
||||
* \brief Maximum value of RVA. Do NOT use this for specifying invalid values, use RVA_INVALID instead.
|
||||
*/
|
||||
#define RVA_MAX UT64_MAX
|
||||
|
||||
/*!
|
||||
* \brief Value for specifying an invalid RVA.
|
||||
*/
|
||||
#define RVA_INVALID RVA_MAX
|
||||
|
||||
class AsyncTaskManager;
|
||||
class CutterCore;
|
||||
#include "plugins/CutterPlugin.h"
|
||||
#include "common/BasicBlockHighlighter.h"
|
||||
|
||||
#define Core() (CutterCore::instance())
|
||||
|
||||
class RCoreLocked
|
||||
{
|
||||
RCore *core;
|
||||
@ -62,352 +33,6 @@ public:
|
||||
RCore *operator->() const;
|
||||
};
|
||||
|
||||
inline QString RAddressString(RVA addr)
|
||||
{
|
||||
return QString::asprintf("%#010llx", addr);
|
||||
}
|
||||
|
||||
inline QString RSizeString(RVA size)
|
||||
{
|
||||
return QString::asprintf("%lld", size);
|
||||
}
|
||||
|
||||
inline QString RHexString(RVA size)
|
||||
{
|
||||
return QString::asprintf("%#llx", size);
|
||||
}
|
||||
|
||||
struct FunctionDescription {
|
||||
RVA offset;
|
||||
RVA size;
|
||||
RVA nargs;
|
||||
RVA nbbs;
|
||||
RVA nlocals;
|
||||
RVA cc;
|
||||
QString calltype;
|
||||
QString name;
|
||||
RVA edges;
|
||||
RVA cost;
|
||||
RVA calls;
|
||||
RVA stackframe;
|
||||
|
||||
bool contains(RVA addr) const
|
||||
{
|
||||
return addr >= offset && addr < offset + size;
|
||||
}
|
||||
};
|
||||
|
||||
struct ImportDescription {
|
||||
RVA plt;
|
||||
int ordinal;
|
||||
QString bind;
|
||||
QString type;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct ExportDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA size;
|
||||
QString type;
|
||||
QString name;
|
||||
QString flag_name;
|
||||
};
|
||||
|
||||
struct HeaderDescription
|
||||
{
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
QString value;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct ZignatureDescription
|
||||
{
|
||||
QString name;
|
||||
QString bytes;
|
||||
RVA cc;
|
||||
RVA nbbs;
|
||||
RVA edges;
|
||||
RVA ebbs;
|
||||
RVA offset;
|
||||
QStringList refs;
|
||||
};
|
||||
|
||||
struct TypeDescription {
|
||||
QString type;
|
||||
int size;
|
||||
QString format;
|
||||
QString category;
|
||||
};
|
||||
|
||||
struct SearchDescription {
|
||||
RVA offset;
|
||||
int size;
|
||||
QString code;
|
||||
QString data;
|
||||
};
|
||||
|
||||
struct SymbolDescription {
|
||||
RVA vaddr;
|
||||
QString bind;
|
||||
QString type;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct CommentDescription {
|
||||
RVA offset;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct RelocDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
QString type;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct StringDescription {
|
||||
RVA vaddr;
|
||||
QString string;
|
||||
QString type;
|
||||
QString section;
|
||||
ut32 length;
|
||||
ut32 size;
|
||||
};
|
||||
|
||||
struct FlagspaceDescription {
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct FlagDescription {
|
||||
RVA offset;
|
||||
RVA size;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct SectionDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA size;
|
||||
RVA vsize;
|
||||
QString name;
|
||||
QString flags;
|
||||
QString entropy;
|
||||
};
|
||||
|
||||
struct SegmentDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA size;
|
||||
RVA vsize;
|
||||
QString name;
|
||||
QString perm;
|
||||
};
|
||||
|
||||
struct EntrypointDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA baddr;
|
||||
RVA laddr;
|
||||
RVA haddr;
|
||||
QString type;
|
||||
};
|
||||
|
||||
struct XrefDescription {
|
||||
RVA from;
|
||||
QString from_str;
|
||||
RVA to;
|
||||
QString to_str;
|
||||
QString type;
|
||||
};
|
||||
|
||||
struct RBinPluginDescription {
|
||||
QString name;
|
||||
QString description;
|
||||
QString license;
|
||||
QString type;
|
||||
};
|
||||
|
||||
struct RIOPluginDescription {
|
||||
QString name;
|
||||
QString description;
|
||||
QString license;
|
||||
QString permissions;
|
||||
};
|
||||
|
||||
struct RCorePluginDescription {
|
||||
QString name;
|
||||
QString description;
|
||||
};
|
||||
|
||||
struct RAsmPluginDescription {
|
||||
QString name;
|
||||
QString architecture;
|
||||
QString author;
|
||||
QString version;
|
||||
QString cpus;
|
||||
QString description;
|
||||
QString license;
|
||||
};
|
||||
|
||||
struct DisassemblyLine {
|
||||
RVA offset;
|
||||
QString text;
|
||||
};
|
||||
|
||||
struct BinClassBaseClassDescription {
|
||||
QString name;
|
||||
RVA offset;
|
||||
};
|
||||
|
||||
struct BinClassMethodDescription {
|
||||
QString name;
|
||||
RVA addr = RVA_INVALID;
|
||||
st64 vtableOffset = -1;
|
||||
};
|
||||
|
||||
struct BinClassFieldDescription {
|
||||
QString name;
|
||||
RVA addr = RVA_INVALID;
|
||||
};
|
||||
|
||||
struct BinClassDescription {
|
||||
QString name;
|
||||
RVA addr = RVA_INVALID;
|
||||
RVA vtableAddr = RVA_INVALID;
|
||||
ut64 index = 0;
|
||||
QList<BinClassBaseClassDescription> baseClasses;
|
||||
QList<BinClassMethodDescription> methods;
|
||||
QList<BinClassFieldDescription> fields;
|
||||
};
|
||||
|
||||
struct AnalMethodDescription {
|
||||
QString name;
|
||||
RVA addr;
|
||||
st64 vtableOffset;
|
||||
};
|
||||
|
||||
struct AnalBaseClassDescription {
|
||||
QString id;
|
||||
RVA offset;
|
||||
QString className;
|
||||
};
|
||||
|
||||
struct AnalVTableDescription {
|
||||
QString id;
|
||||
ut64 offset;
|
||||
ut64 addr;
|
||||
};
|
||||
|
||||
struct ResourcesDescription {
|
||||
int name;
|
||||
RVA vaddr;
|
||||
ut64 index;
|
||||
QString type;
|
||||
ut64 size;
|
||||
QString lang;
|
||||
};
|
||||
|
||||
struct VTableDescription {
|
||||
RVA addr;
|
||||
QList<BinClassMethodDescription> methods;
|
||||
};
|
||||
|
||||
struct BlockDescription {
|
||||
RVA addr;
|
||||
RVA size;
|
||||
int flags;
|
||||
int functions;
|
||||
int inFunctions;
|
||||
int comments;
|
||||
int symbols;
|
||||
int strings;
|
||||
ut8 rwx;
|
||||
};
|
||||
|
||||
struct BlockStatistics {
|
||||
RVA from;
|
||||
RVA to;
|
||||
RVA blocksize;
|
||||
QList<BlockDescription> blocks;
|
||||
};
|
||||
|
||||
struct MemoryMapDescription {
|
||||
RVA addrStart;
|
||||
RVA addrEnd;
|
||||
QString name;
|
||||
QString fileName;
|
||||
QString type;
|
||||
QString permission;
|
||||
};
|
||||
|
||||
struct BreakpointDescription {
|
||||
RVA addr;
|
||||
int size;
|
||||
QString permission;
|
||||
bool hw;
|
||||
bool trace;
|
||||
bool enabled;
|
||||
};
|
||||
|
||||
struct ProcessDescription {
|
||||
int pid;
|
||||
int uid;
|
||||
QString status;
|
||||
QString path;
|
||||
};
|
||||
|
||||
struct RegisterRefDescription {
|
||||
QString reg;
|
||||
QString value;
|
||||
QString ref;
|
||||
};
|
||||
|
||||
struct VariableDescription {
|
||||
enum class RefType { SP, BP, Reg };
|
||||
RefType refType;
|
||||
QString name;
|
||||
QString type;
|
||||
};
|
||||
|
||||
Q_DECLARE_METATYPE(FunctionDescription)
|
||||
Q_DECLARE_METATYPE(ImportDescription)
|
||||
Q_DECLARE_METATYPE(ExportDescription)
|
||||
Q_DECLARE_METATYPE(SymbolDescription)
|
||||
Q_DECLARE_METATYPE(CommentDescription)
|
||||
Q_DECLARE_METATYPE(RelocDescription)
|
||||
Q_DECLARE_METATYPE(StringDescription)
|
||||
Q_DECLARE_METATYPE(FlagspaceDescription)
|
||||
Q_DECLARE_METATYPE(FlagDescription)
|
||||
Q_DECLARE_METATYPE(XrefDescription)
|
||||
Q_DECLARE_METATYPE(EntrypointDescription)
|
||||
Q_DECLARE_METATYPE(RBinPluginDescription)
|
||||
Q_DECLARE_METATYPE(RIOPluginDescription)
|
||||
Q_DECLARE_METATYPE(RCorePluginDescription)
|
||||
Q_DECLARE_METATYPE(RAsmPluginDescription)
|
||||
Q_DECLARE_METATYPE(BinClassMethodDescription)
|
||||
Q_DECLARE_METATYPE(BinClassFieldDescription)
|
||||
Q_DECLARE_METATYPE(BinClassDescription)
|
||||
Q_DECLARE_METATYPE(const BinClassDescription *)
|
||||
Q_DECLARE_METATYPE(const BinClassMethodDescription *)
|
||||
Q_DECLARE_METATYPE(const BinClassFieldDescription *)
|
||||
Q_DECLARE_METATYPE(AnalBaseClassDescription)
|
||||
Q_DECLARE_METATYPE(AnalMethodDescription)
|
||||
Q_DECLARE_METATYPE(AnalVTableDescription)
|
||||
Q_DECLARE_METATYPE(ResourcesDescription)
|
||||
Q_DECLARE_METATYPE(VTableDescription)
|
||||
Q_DECLARE_METATYPE(TypeDescription)
|
||||
Q_DECLARE_METATYPE(HeaderDescription)
|
||||
Q_DECLARE_METATYPE(ZignatureDescription)
|
||||
Q_DECLARE_METATYPE(SearchDescription)
|
||||
Q_DECLARE_METATYPE(SectionDescription)
|
||||
Q_DECLARE_METATYPE(SegmentDescription)
|
||||
Q_DECLARE_METATYPE(MemoryMapDescription)
|
||||
Q_DECLARE_METATYPE(BreakpointDescription)
|
||||
Q_DECLARE_METATYPE(ProcessDescription)
|
||||
Q_DECLARE_METATYPE(RegisterRefDescription)
|
||||
Q_DECLARE_METATYPE(VariableDescription)
|
||||
|
||||
class CutterCore: public QObject
|
||||
{
|
||||
@ -787,7 +412,6 @@ private:
|
||||
|
||||
bool emptyGraph = false;
|
||||
BasicBlockHighlighter *bbHighlighter;
|
||||
|
||||
};
|
||||
|
||||
#endif // CUTTER_H
|
59
src/core/CutterCommon.h
Normal file
59
src/core/CutterCommon.h
Normal file
@ -0,0 +1,59 @@
|
||||
/** \file CutterCommon.h
|
||||
* This file contains any definition that is useful in the whole project.
|
||||
* For example, it may contain custom types (RVA, ut64), list iterators, etc.
|
||||
*/
|
||||
#ifndef CUTTERCORE_H
|
||||
#define CUTTERCORE_H
|
||||
|
||||
#include "r_core.h"
|
||||
#include <QtCore/QtCore>
|
||||
|
||||
// Workaround for compile errors on Windows
|
||||
#ifdef _WIN32
|
||||
#undef min
|
||||
#undef max
|
||||
#endif //_WIN32
|
||||
|
||||
// radare2 list iteration macros
|
||||
#define CutterRListForeach(list, it, type, x) \
|
||||
if (list) for (it = list->head; it && ((x=static_cast<type*>(it->data))); it = it->n)
|
||||
|
||||
#define CutterRVectorForeach(vec, it, type) \
|
||||
if ((vec) && (vec)->a) \
|
||||
for (it = (type *)(vec)->a; (char *)it != (char *)(vec)->a + ((vec)->len * (vec)->elem_size); it = (type *)((char *)it + (vec)->elem_size))
|
||||
|
||||
// Global information for Cutter
|
||||
#define APPNAME "Cutter"
|
||||
|
||||
/*!
|
||||
* \brief Type to be used for all kinds of addresses/offsets in r2 address space.
|
||||
*/
|
||||
typedef ut64 RVA;
|
||||
|
||||
/*!
|
||||
* \brief Maximum value of RVA. Do NOT use this for specifying invalid values, use RVA_INVALID instead.
|
||||
*/
|
||||
#define RVA_MAX UT64_MAX
|
||||
|
||||
/*!
|
||||
* \brief Value for specifying an invalid RVA.
|
||||
*/
|
||||
#define RVA_INVALID RVA_MAX
|
||||
|
||||
inline QString RAddressString(RVA addr)
|
||||
{
|
||||
return QString::asprintf("%#010llx", addr);
|
||||
}
|
||||
|
||||
inline QString RSizeString(RVA size)
|
||||
{
|
||||
return QString::asprintf("%lld", size);
|
||||
}
|
||||
|
||||
inline QString RHexString(RVA size)
|
||||
{
|
||||
return QString::asprintf("%#llx", size);
|
||||
}
|
||||
|
||||
#endif // CUTTERCORE_H
|
||||
|
340
src/core/CutterDescriptions.h
Normal file
340
src/core/CutterDescriptions.h
Normal file
@ -0,0 +1,340 @@
|
||||
/** \file CutterDescriptions.h
|
||||
* This file contains every structure description that are used in widgets.
|
||||
* The descriptions are used for the Qt metatypes.
|
||||
*/
|
||||
#ifndef DESCRIPTIONS_H
|
||||
#define DESCRIPTIONS_H
|
||||
|
||||
struct FunctionDescription {
|
||||
RVA offset;
|
||||
RVA size;
|
||||
RVA nargs;
|
||||
RVA nbbs;
|
||||
RVA nlocals;
|
||||
RVA cc;
|
||||
QString calltype;
|
||||
QString name;
|
||||
RVA edges;
|
||||
RVA cost;
|
||||
RVA calls;
|
||||
RVA stackframe;
|
||||
|
||||
bool contains(RVA addr) const
|
||||
{
|
||||
return addr >= offset && addr < offset + size;
|
||||
}
|
||||
};
|
||||
|
||||
struct ImportDescription {
|
||||
RVA plt;
|
||||
int ordinal;
|
||||
QString bind;
|
||||
QString type;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct ExportDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA size;
|
||||
QString type;
|
||||
QString name;
|
||||
QString flag_name;
|
||||
};
|
||||
|
||||
struct HeaderDescription
|
||||
{
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
QString value;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct ZignatureDescription
|
||||
{
|
||||
QString name;
|
||||
QString bytes;
|
||||
RVA cc;
|
||||
RVA nbbs;
|
||||
RVA edges;
|
||||
RVA ebbs;
|
||||
RVA offset;
|
||||
QStringList refs;
|
||||
};
|
||||
|
||||
struct TypeDescription {
|
||||
QString type;
|
||||
int size;
|
||||
QString format;
|
||||
QString category;
|
||||
};
|
||||
|
||||
struct SearchDescription {
|
||||
RVA offset;
|
||||
int size;
|
||||
QString code;
|
||||
QString data;
|
||||
};
|
||||
|
||||
struct SymbolDescription {
|
||||
RVA vaddr;
|
||||
QString bind;
|
||||
QString type;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct CommentDescription {
|
||||
RVA offset;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct RelocDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
QString type;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct StringDescription {
|
||||
RVA vaddr;
|
||||
QString string;
|
||||
QString type;
|
||||
QString section;
|
||||
ut32 length;
|
||||
ut32 size;
|
||||
};
|
||||
|
||||
struct FlagspaceDescription {
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct FlagDescription {
|
||||
RVA offset;
|
||||
RVA size;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct SectionDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA size;
|
||||
RVA vsize;
|
||||
QString name;
|
||||
QString flags;
|
||||
QString entropy;
|
||||
};
|
||||
|
||||
struct SegmentDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA size;
|
||||
RVA vsize;
|
||||
QString name;
|
||||
QString perm;
|
||||
};
|
||||
|
||||
struct EntrypointDescription {
|
||||
RVA vaddr;
|
||||
RVA paddr;
|
||||
RVA baddr;
|
||||
RVA laddr;
|
||||
RVA haddr;
|
||||
QString type;
|
||||
};
|
||||
|
||||
struct XrefDescription {
|
||||
RVA from;
|
||||
QString from_str;
|
||||
RVA to;
|
||||
QString to_str;
|
||||
QString type;
|
||||
};
|
||||
|
||||
struct RBinPluginDescription {
|
||||
QString name;
|
||||
QString description;
|
||||
QString license;
|
||||
QString type;
|
||||
};
|
||||
|
||||
struct RIOPluginDescription {
|
||||
QString name;
|
||||
QString description;
|
||||
QString license;
|
||||
QString permissions;
|
||||
};
|
||||
|
||||
struct RCorePluginDescription {
|
||||
QString name;
|
||||
QString description;
|
||||
};
|
||||
|
||||
struct RAsmPluginDescription {
|
||||
QString name;
|
||||
QString architecture;
|
||||
QString author;
|
||||
QString version;
|
||||
QString cpus;
|
||||
QString description;
|
||||
QString license;
|
||||
};
|
||||
|
||||
struct DisassemblyLine {
|
||||
RVA offset;
|
||||
QString text;
|
||||
};
|
||||
|
||||
struct BinClassBaseClassDescription {
|
||||
QString name;
|
||||
RVA offset;
|
||||
};
|
||||
|
||||
struct BinClassMethodDescription {
|
||||
QString name;
|
||||
RVA addr = RVA_INVALID;
|
||||
st64 vtableOffset = -1;
|
||||
};
|
||||
|
||||
struct BinClassFieldDescription {
|
||||
QString name;
|
||||
RVA addr = RVA_INVALID;
|
||||
};
|
||||
|
||||
struct BinClassDescription {
|
||||
QString name;
|
||||
RVA addr = RVA_INVALID;
|
||||
RVA vtableAddr = RVA_INVALID;
|
||||
ut64 index = 0;
|
||||
QList<BinClassBaseClassDescription> baseClasses;
|
||||
QList<BinClassMethodDescription> methods;
|
||||
QList<BinClassFieldDescription> fields;
|
||||
};
|
||||
|
||||
struct AnalMethodDescription {
|
||||
QString name;
|
||||
RVA addr;
|
||||
st64 vtableOffset;
|
||||
};
|
||||
|
||||
struct AnalBaseClassDescription {
|
||||
QString id;
|
||||
RVA offset;
|
||||
QString className;
|
||||
};
|
||||
|
||||
struct AnalVTableDescription {
|
||||
QString id;
|
||||
ut64 offset;
|
||||
ut64 addr;
|
||||
};
|
||||
|
||||
struct ResourcesDescription {
|
||||
int name;
|
||||
RVA vaddr;
|
||||
ut64 index;
|
||||
QString type;
|
||||
ut64 size;
|
||||
QString lang;
|
||||
};
|
||||
|
||||
struct VTableDescription {
|
||||
RVA addr;
|
||||
QList<BinClassMethodDescription> methods;
|
||||
};
|
||||
|
||||
struct BlockDescription {
|
||||
RVA addr;
|
||||
RVA size;
|
||||
int flags;
|
||||
int functions;
|
||||
int inFunctions;
|
||||
int comments;
|
||||
int symbols;
|
||||
int strings;
|
||||
ut8 rwx;
|
||||
};
|
||||
|
||||
struct BlockStatistics {
|
||||
RVA from;
|
||||
RVA to;
|
||||
RVA blocksize;
|
||||
QList<BlockDescription> blocks;
|
||||
};
|
||||
|
||||
struct MemoryMapDescription {
|
||||
RVA addrStart;
|
||||
RVA addrEnd;
|
||||
QString name;
|
||||
QString fileName;
|
||||
QString type;
|
||||
QString permission;
|
||||
};
|
||||
|
||||
struct BreakpointDescription {
|
||||
RVA addr;
|
||||
int size;
|
||||
QString permission;
|
||||
bool hw;
|
||||
bool trace;
|
||||
bool enabled;
|
||||
};
|
||||
|
||||
struct ProcessDescription {
|
||||
int pid;
|
||||
int uid;
|
||||
QString status;
|
||||
QString path;
|
||||
};
|
||||
|
||||
struct RegisterRefDescription {
|
||||
QString reg;
|
||||
QString value;
|
||||
QString ref;
|
||||
};
|
||||
|
||||
struct VariableDescription {
|
||||
enum class RefType { SP, BP, Reg };
|
||||
RefType refType;
|
||||
QString name;
|
||||
QString type;
|
||||
};
|
||||
|
||||
Q_DECLARE_METATYPE(FunctionDescription)
|
||||
Q_DECLARE_METATYPE(ImportDescription)
|
||||
Q_DECLARE_METATYPE(ExportDescription)
|
||||
Q_DECLARE_METATYPE(SymbolDescription)
|
||||
Q_DECLARE_METATYPE(CommentDescription)
|
||||
Q_DECLARE_METATYPE(RelocDescription)
|
||||
Q_DECLARE_METATYPE(StringDescription)
|
||||
Q_DECLARE_METATYPE(FlagspaceDescription)
|
||||
Q_DECLARE_METATYPE(FlagDescription)
|
||||
Q_DECLARE_METATYPE(XrefDescription)
|
||||
Q_DECLARE_METATYPE(EntrypointDescription)
|
||||
Q_DECLARE_METATYPE(RBinPluginDescription)
|
||||
Q_DECLARE_METATYPE(RIOPluginDescription)
|
||||
Q_DECLARE_METATYPE(RCorePluginDescription)
|
||||
Q_DECLARE_METATYPE(RAsmPluginDescription)
|
||||
Q_DECLARE_METATYPE(BinClassMethodDescription)
|
||||
Q_DECLARE_METATYPE(BinClassFieldDescription)
|
||||
Q_DECLARE_METATYPE(BinClassDescription)
|
||||
Q_DECLARE_METATYPE(const BinClassDescription *)
|
||||
Q_DECLARE_METATYPE(const BinClassMethodDescription *)
|
||||
Q_DECLARE_METATYPE(const BinClassFieldDescription *)
|
||||
Q_DECLARE_METATYPE(AnalBaseClassDescription)
|
||||
Q_DECLARE_METATYPE(AnalMethodDescription)
|
||||
Q_DECLARE_METATYPE(AnalVTableDescription)
|
||||
Q_DECLARE_METATYPE(ResourcesDescription)
|
||||
Q_DECLARE_METATYPE(VTableDescription)
|
||||
Q_DECLARE_METATYPE(TypeDescription)
|
||||
Q_DECLARE_METATYPE(HeaderDescription)
|
||||
Q_DECLARE_METATYPE(ZignatureDescription)
|
||||
Q_DECLARE_METATYPE(SearchDescription)
|
||||
Q_DECLARE_METATYPE(SectionDescription)
|
||||
Q_DECLARE_METATYPE(SegmentDescription)
|
||||
Q_DECLARE_METATYPE(MemoryMapDescription)
|
||||
Q_DECLARE_METATYPE(BreakpointDescription)
|
||||
Q_DECLARE_METATYPE(ProcessDescription)
|
||||
Q_DECLARE_METATYPE(RegisterRefDescription)
|
||||
Q_DECLARE_METATYPE(VariableDescription)
|
||||
|
||||
#endif // DESCRIPTIONS_H
|
@ -1,5 +1,5 @@
|
||||
#include "common/PythonManager.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "ui_MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
#include "CutterConfig.h"
|
||||
@ -94,7 +94,7 @@
|
||||
#include "widgets/BreakpointWidget.h"
|
||||
#include "widgets/RegisterRefsWidget.h"
|
||||
|
||||
#include "RunScriptTask.h"
|
||||
#include "common/RunScriptTask.h"
|
||||
|
||||
// Graphics
|
||||
#include <QGraphicsEllipseItem>
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h" // only needed for ut64
|
||||
#include "core/Cutter.h" // only needed for ut64
|
||||
#include "widgets/DisassemblyWidget.h"
|
||||
#include "widgets/GraphWidget.h"
|
||||
#include "widgets/OverviewWidget.h"
|
@ -1,8 +1,9 @@
|
||||
#include <Cutter.h>
|
||||
#include "r_version.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "AboutDialog.h"
|
||||
|
||||
#include "ui_AboutDialog.h"
|
||||
#include "R2PluginsDialog.h"
|
||||
#include "r_version.h"
|
||||
#include "common/Configuration.h"
|
||||
|
||||
#include <QUrl>
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "MainWindow.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "AttachProcDialog.h"
|
||||
#include "ui_AttachProcDialog.h"
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include <QDialog>
|
||||
#include <memory>
|
||||
#include <QAbstractListModel>
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "EditInstructionDialog.h"
|
||||
#include "ui_EditInstructionDialog.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
EditInstructionDialog::EditInstructionDialog(QWidget *parent, InstructionEditMode editMode) :
|
||||
QDialog(parent),
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class EditMethodDialog;
|
||||
|
@ -1,7 +1,7 @@
|
||||
#ifndef EDITVARIABLESDIALOG_H
|
||||
#define EDITVARIABLESDIALOG_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include <QDialog>
|
||||
|
||||
namespace Ui {
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <QDialog>
|
||||
#include <QIntValidator>
|
||||
#include <memory>
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class FlagDialog;
|
||||
|
@ -1,7 +1,7 @@
|
||||
#ifndef HEXDUMPRANGEDIALOG_H
|
||||
#define HEXDUMPRANGEDIALOG_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
#include <QDialog>
|
||||
#include <QRegExpValidator>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include "InitialOptionsDialog.h"
|
||||
#include "ui_InitialOptionsDialog.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "dialogs/NewFileDialog.h"
|
||||
#include "dialogs/AsyncTaskDialog.h"
|
||||
#include "common/Helpers.h"
|
||||
|
@ -6,8 +6,8 @@
|
||||
#include <QTimer>
|
||||
#include <QElapsedTimer>
|
||||
#include <memory>
|
||||
#include "Cutter.h"
|
||||
#include "AnalTask.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/AnalTask.h"
|
||||
#include "common/InitialOptions.h"
|
||||
|
||||
namespace Ui {
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "dialogs/LoadNewTypesDialog.h"
|
||||
#include "ui_LoadNewTypesDialog.h"
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/Configuration.h"
|
||||
#include "common/SyntaxHighlighter.h"
|
||||
#include "widgets/TypesWidget.h"
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "InitialOptionsDialog.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "dialogs/NewFileDialog.h"
|
||||
#include "dialogs/AboutDialog.h"
|
||||
#include "ui_NewfileDialog.h"
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <QDialog>
|
||||
#include <memory>
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class OpenFileDialog;
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "R2PluginsDialog.h"
|
||||
#include "ui_R2PluginsDialog.h"
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/Helpers.h"
|
||||
#include "plugins/PluginManager.h"
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <QDialog>
|
||||
#include <QAbstractTableModel>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class R2PluginsDialog;
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
#include <QFileDialog>
|
||||
|
||||
#include <Cutter.h>
|
||||
#include "core/Cutter.h"
|
||||
#include "SaveProjectDialog.h"
|
||||
#include "ui_SaveProjectDialog.h"
|
||||
#include "common/TempConfig.h"
|
||||
|
@ -2,7 +2,7 @@
|
||||
#define SETTODATADIALOG_H
|
||||
|
||||
#include <QDialog>
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class SetToDataDialog;
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <QDialog>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class VersionInfoDialog;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "CutterConfig.h"
|
||||
|
||||
#include "common/Helpers.h"
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "common/TempConfig.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
#include <QJsonArray>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include <QTreeWidgetItem>
|
||||
#include <memory>
|
||||
#include "common/Highlighter.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class MainWindow;
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QPushButton>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class PreferencesDialog;
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QPushButton>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class PreferencesDialog;
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class PreferencesDialog;
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QPushButton>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class PreferencesDialog;
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include <QTreeWidget>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
namespace Ui {
|
||||
class PreferencesDialog;
|
||||
|
@ -1,7 +1,7 @@
|
||||
#ifndef DISASSEMBLYCONTEXTMENU_H
|
||||
#define DISASSEMBLYCONTEXTMENU_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include <QMenu>
|
||||
#include <QKeySequence>
|
||||
|
||||
|
@ -83,6 +83,7 @@ if get_option('enable_python')
|
||||
shiboken_exe = shiboken_dep.get_pkgconfig_variable('generator_location')
|
||||
qt5core_dep = dependency('Qt5Core', method: 'pkg-config')
|
||||
bindings_generate_inc = [meson.current_source_dir(),
|
||||
join_paths(meson.current_source_dir(), 'core'),
|
||||
join_paths(meson.current_source_dir(), 'common'),
|
||||
join_paths(meson.current_source_dir(), 'widgets'),
|
||||
join_paths(meson.current_source_dir(), 'plugins'),
|
||||
@ -127,6 +128,6 @@ cutter_exe = executable(
|
||||
moc_files,
|
||||
gui_app: true,
|
||||
sources: sources,
|
||||
include_directories: [include_directories('common', 'widgets', 'plugins'), platform_inc, conf_inc],
|
||||
include_directories: [include_directories('core', 'common', 'widgets', 'plugins'), platform_inc, conf_inc],
|
||||
dependencies: deps,
|
||||
)
|
||||
|
@ -4,7 +4,7 @@
|
||||
class CutterPlugin;
|
||||
class MainWindow;
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "widgets/CutterDockWidget.h"
|
||||
|
||||
class CutterPlugin
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "ui_BacktraceWidget.h"
|
||||
#include "common/JsonModel.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
BacktraceWidget::BacktraceWidget(MainWindow *main, QAction *action) :
|
||||
CutterDockWidget(main, action),
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include <QStandardItem>
|
||||
#include <QTableView>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
|
||||
class MainWindow;
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "BreakpointWidget.h"
|
||||
#include "ui_BreakpointWidget.h"
|
||||
#include "dialogs/BreakpointsDialog.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
#include <QMenu>
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
|
||||
#include <QAbstractListModel>
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include <QList>
|
||||
|
||||
#include "ClassesWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "ui_ClassesWidget.h"
|
||||
#include "common/Helpers.h"
|
||||
#include "dialogs/EditMethodDialog.h"
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
|
||||
#include <QAbstractListModel>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include "CommentsWidget.h"
|
||||
#include "ui_CommentsWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
CommentsModel::CommentsModel(QList<CommentDescription> *comments,
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include <QAbstractItemModel>
|
||||
#include <QSortFilterProxyModel>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "CutterTreeWidget.h"
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QStringListModel>
|
||||
#include <QTimer>
|
||||
#include <iostream>
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "ConsoleWidget.h"
|
||||
#include "ui_ConsoleWidget.h"
|
||||
#include "common/Helpers.h"
|
||||
|
@ -2,7 +2,7 @@
|
||||
#define CONSOLEWIDGET_H
|
||||
|
||||
#include <memory>
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "common/CommandTask.h"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "CutterDockWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
|
||||
CutterDockWidget::CutterDockWidget(MainWindow *main, QAction *action) :
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "CutterTreeWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
CutterTreeWidget::CutterTreeWidget(QObject *parent) :
|
||||
QObject(parent),
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include "common/TempConfig.h"
|
||||
#include "dialogs/VersionInfoDialog.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "CutterTreeView.h"
|
||||
|
||||
#include <QDebug>
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "DebugActions.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "dialogs/AttachProcDialog.h"
|
||||
|
||||
#include <QAction>
|
||||
|
@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class MainWindow;
|
||||
class QToolBar;
|
||||
|
@ -17,7 +17,7 @@
|
||||
#include <QClipboard>
|
||||
#include <QApplication>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/Colors.h"
|
||||
#include "common/Configuration.h"
|
||||
#include "common/CachedFontMetrics.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#ifndef DISASSEMBLYWIDGET_H
|
||||
#define DISASSEMBLYWIDGET_H
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "common/CutterSeekable.h"
|
||||
#include "common/RefreshDeferrer.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "EntrypointWidget.h"
|
||||
#include "ui_EntrypointWidget.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
#include <QTreeWidget>
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "ExportsWidget.h"
|
||||
#include "ui_ExportsWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
#include "WidgetShortcuts.h"
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "CutterTreeWidget.h"
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
#include "FlagsWidget.h"
|
||||
#include "ui_FlagsWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "dialogs/RenameDialog.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include <QAbstractItemModel>
|
||||
#include <QSortFilterProxyModel>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "CutterTreeWidget.h"
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "FunctionsWidget.h"
|
||||
#include "ui_FunctionsWidget.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
#include "dialogs/CommentsDialog.h"
|
||||
#include "dialogs/RenameDialog.h"
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
#include <QSortFilterProxyModel>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "CutterTreeWidget.h"
|
||||
#include "CutterTreeView.h"
|
||||
|
@ -13,7 +13,7 @@
|
||||
#include <unordered_set>
|
||||
#include <queue>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
|
||||
class GraphView : public QAbstractScrollArea
|
||||
{
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "GraphWidget.h"
|
||||
#include "DisassemblerGraphView.h"
|
||||
#include "WidgetShortcuts.h"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "HeadersWidget.h"
|
||||
#include "ui_HeadersWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
HeadersModel::HeadersModel(QList<HeaderDescription> *headers, QObject *parent)
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
|
||||
#include <QAbstractListModel>
|
||||
|
@ -9,7 +9,7 @@
|
||||
#include <array>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "common/CutterSeekable.h"
|
||||
#include "dialogs/HexdumpRangeDialog.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "ImportsWidget.h"
|
||||
#include "ui_ImportsWidget.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
#include "WidgetShortcuts.h"
|
||||
|
@ -10,7 +10,7 @@
|
||||
#include <QTreeWidgetItem>
|
||||
|
||||
#include "CutterDockWidget.h"
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterTreeWidget.h"
|
||||
|
||||
class MainWindow;
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "MemoryMapWidget.h"
|
||||
#include "ui_MemoryMapWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
|
||||
MemoryMapModel::MemoryMapModel(QList<MemoryMapDescription> *memoryMaps, QObject *parent)
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
|
||||
#include <QAbstractListModel>
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "Omnibar.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
#include <QStringListModel>
|
||||
#include <QCompleter>
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include <QPainter>
|
||||
#include <QMouseEvent>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "common/Colors.h"
|
||||
#include "common/Configuration.h"
|
||||
#include "common/TempConfig.h"
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "OverviewWidget.h"
|
||||
#include "OverviewView.h"
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
|
||||
namespace Ui {
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "RegisterRefsWidget.h"
|
||||
#include "ui_RegisterRefsWidget.h"
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
#include "common/Helpers.h"
|
||||
#include <QMenu>
|
||||
#include <QClipboard>
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "core/Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "CutterTreeWidget.h"
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "ui_RegistersWidget.h"
|
||||
#include "common/JsonModel.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
#include "core/MainWindow.h"
|
||||
|
||||
#include <QLabel>
|
||||
#include <QLineEdit>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user