/
githubmirror
/
x64dbg
Обзор
Документация
Войти
/
githubmirror
/
x64dbg
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
development
src/cross/hex_viewer/MiniHexDump.cpp
69 строк
2 KB
Duncan Ogilvie
Implement accessibility in cross-platform tools
19 июл 2026, 21:49
19 июл 2026, 21:49
4080766
Код
Авторство
О чём код?
#include "MiniHexDump.h" #include "GotoDialog.h" #include "Bridge.h" MiniHexDump::MiniHexDump(Navigation* navigation, Architecture* architecture, QWidget* parent) : HexDump(architecture, parent) , mNavigation(navigation) { setAccessibleName(tr("Hex Dump")); mPointerUnderliningEnabled = false; mSelectionUnderliningEnabled = true; hexAsciiSlot(); setupMenu(); } void MiniHexDump::loadFile(File* file) { mFile = file; mMemPage->setAttributes(0, 0); setRowCount(0); reloadData(); } void MiniHexDump::hexAsciiSlot() { int charwidth = getCharWidth(); ColumnDescriptor wColDesc; DataDescriptor dDesc; wColDesc.isData = true; //hex byte wColDesc.itemCount = 16; wColDesc.separator = mAsciiSeparator ? mAsciiSeparator : 4; dDesc.itemSize = Byte; dDesc.byteMode = HexByte; wColDesc.data = dDesc; appendResetDescriptor(8 + charwidth * 47, tr("Hex"), false, wColDesc); wColDesc.isData = true; //ascii byte wColDesc.itemCount = 16; wColDesc.separator = 0; dDesc.itemSize = Byte; dDesc.byteMode = AsciiByte; wColDesc.data = dDesc; appendDescriptor(8 + charwidth * 16, tr("ASCII"), false, wColDesc); wColDesc.isData = false; //empty column wColDesc.itemCount = 0; wColDesc.separator = 0; dDesc.itemSize = Byte; dDesc.byteMode = AsciiByte; wColDesc.data = dDesc; appendDescriptor(0, "", false, wColDesc); reloadData(); } void MiniHexDump::setupMenu() { addMenuAction(TableAction(TR("Goto Address"), "G"), [this]() { GotoDialog gotoDialog(this); if(gotoDialog.exec() == QDialog::Accepted) emit mNavigation->gotoAddress(Navigation::Dump, gotoDialog.address()); }); addMenuAction(TR("Copy Address"), [this]() { Bridge::CopyToClipboard(ToPtrString(rvaToVa(getInitialSelection()))); }); }