Comments (1)
I found a solution that does not require any changes to the code. It may be a bit hacky but seems to work well. This example assumes version 5.0 is used.
#include <QCursor>
#include <QComboBox>
#include <QVBoxLayout>
#include <QApplication>
#include <qhexview.h>
#include <qmemorybuffer.h>
// This demonstratets insertion of QWidget into the QHexView.
// What is left out is automatically resizing the inserted widget upon changes in QHexView's size
// and connection of QComboBox with QHexView to change QHexCursor's mode.
int main (int argc, char *argv[])
{
QApplication application (argc, argv);
QComboBox* box = new QComboBox;
// Some cursor needs to be set because there would be
// problems from switching from text cursor to any other
// when moving mouse from bottom to this widget.
box->setCursor(QCursor(Qt::PointingHandCursor));
box->addItems({"Overwrite", "Insert"});
QHexDocument* document = QHexDocument::fromMemory<QMemoryBuffer>(QByteArray (128, 0x00));
QHexOptions options;
options.asciilabel = "";
QHexView hex_view;
hex_view.setAutoWidth(true);
hex_view.setDocument(document);
hex_view.setOptions(options);
QVBoxLayout* layout = new QVBoxLayout;
layout->setContentsMargins(0,0,0,0);
layout->setAlignment(Qt::AlignTop | Qt::AlignRight);
// This seems like a hack,
// because I am not sure if one is ever supposed to set layout on the viewport widget.
// But everything appears to be fine.
hex_view.viewport()->setLayout(layout);
layout->addWidget(box);
box->setFixedHeight(QFontMetrics(hex_view.font()).height());
hex_view.show();
return application.exec();
}
from qhexview.
Related Issues (20)
- Hex display width and comments HOT 7
- Unsymmetric page-up vs page-down HOT 1
- Render artefacts on top right of Hex Table HOT 6
- Possible error
- Fractional QFont width on a Pi HOT 4
- Horizontal scroll bar issues HOT 4
- QHexView cannot build HOT 4
- QHexview displays the extension HOT 4
- support change font size using setFont(...) HOT 5
- Renderer does not work well with widget’s width HOT 5
- Add dataChanged signal HOT 1
- Configurable mouse wheel scroll speed HOT 1
- Non-blinking cursor HOT 2
- Incorrect cursor selection rendering in ASCII area HOT 8
- QHexView does not support Qt5.7 HOT 5
- QHexDocument::searchForward does not move the cursor past the first result
- QHexView 5.0 Development HOT 94
- Qt6 compatibility (5.0 branch) HOT 2
- 5.0 branch and Qt5 cmake compatibility HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from qhexview.