1
0
Fork 0
x64dbg/x64_dbg_gui/Project/Src/QHexEdit/QHexEdit.h

65 lines
1.8 KiB
C++

#ifndef QHEXEDIT_H
#define QHEXEDIT_H
#include <QScrollArea>
#include <QHBoxLayout>
#include "QHexEditPrivate.h"
class QHexEdit : public QScrollArea
{
Q_OBJECT
public:
QHexEdit(QWidget* parent = 0);
//data management
void setData(const QByteArray & data, const QByteArray & mask);
void setData(const QByteArray & data);
void setData(const QString & pattern);
QByteArray applyMaskedData(const QByteArray & data);
QByteArray data();
QByteArray mask();
QString pattern(bool space = false);
void insert(int i, const QByteArray & ba, const QByteArray & mask);
void insert(int i, char ch, char mask);
void remove(int pos, int len = 1);
void replace(int pos, int len, const QByteArray & after, const QByteArray & mask);
void fill(int index, const QString & pattern);
//properties
void setCursorPosition(int cusorPos);
int cursorPosition();
void setOverwriteMode(bool overwriteMode);
bool overwriteMode();
void setWildcardEnabled(bool enabled);
bool wildcardEnabled();
void setKeepSize(bool enabled);
bool keepSize();
void setHorizontalSpacing(int x);
int horizontalSpacing();
void setTextColor(QColor color);
QColor textColor();
void setWildcardColor(QColor color);
QColor wildcardColor();
void setBackgroundColor(QColor color);
QColor backgroundColor();
void setSelectionColor(QColor color);
QColor selectionColor();
void setEditFont(const QFont & font);
public slots:
void redo();
void undo();
signals:
void currentAddressChanged(int address);
void currentSizeChanged(int size);
void dataChanged();
void overwriteModeChanged(bool state);
private:
QHexEditPrivate* qHexEdit_p;
};
#endif