+ if (is_next_chunk != nullptr)
+ *is_next_chunk = (current_chunk_offset_ == 0);
+
+ uint8_t v = 0;
+ if (current_chunk_offset_ < current_chunk_.data.size())
+ v = current_chunk_.data[current_chunk_offset_];
+
+ current_offset_++;
+ current_chunk_offset_++;
+
+ if (current_offset_ > data_size_) {
+ qWarning() << "QHexView::get_next_byte() overran binary data boundary:" <<
+ current_offset_ << "of" << data_size_ << "bytes";
+ return 0xEE;
+ }
+
+ if ((current_chunk_offset_ == current_chunk_.data.size()) && (current_offset_ < data_size_)) {
+ current_chunk_id_++;
+ current_chunk_offset_ = 0;
+ current_chunk_ = data_->chunks[current_chunk_id_];
+ }
+
+ return v;
+}
+
+QSize QHexView::getFullSize() const
+{
+ size_t width = posAscii_ + (BYTES_PER_LINE * charWidth_) +
+ GAP_ASCII_SLIDER + verticalScrollBar()->width();
+
+ if (!data_)
+ return QSize(width, 0);