diff --git a/src/ui/viewers/applesoftfiledetailviewer.ui b/src/ui/viewers/applesoftfiledetailviewer.ui index eba7e1c..1160faa 100644 --- a/src/ui/viewers/applesoftfiledetailviewer.ui +++ b/src/ui/viewers/applesoftfiledetailviewer.ui @@ -6,8 +6,8 @@ 0 0 - 588 - 397 + 766 + 515 diff --git a/src/ui/viewers/applesoftfileviewer.ui b/src/ui/viewers/applesoftfileviewer.ui index c589f10..d1c6a52 100644 --- a/src/ui/viewers/applesoftfileviewer.ui +++ b/src/ui/viewers/applesoftfileviewer.ui @@ -6,8 +6,8 @@ 0 0 - 857 - 469 + 294 + 270 diff --git a/src/ui/viewers/charsetviewer.cpp b/src/ui/viewers/charsetviewer.cpp index 3faa1cd..cb720e6 100644 --- a/src/ui/viewers/charsetviewer.cpp +++ b/src/ui/viewers/charsetviewer.cpp @@ -36,7 +36,7 @@ void CharSetViewer::setFile(BinaryFile *file) int ypos = 0; foreach (CharSetCharacter csc, m_charset.allCharacters()) { - CharacterWidget *cw = new CharacterWidget(this,csc,4); + CharacterWidget *cw = new CharacterWidget(this,csc); cw->showGrid(true); cw->enableBitShift(true); cw->setBgColor(Qt::white); diff --git a/src/ui/viewers/disassemblerviewer.ui b/src/ui/viewers/disassemblerviewer.ui index 0bf32e4..f374e85 100644 --- a/src/ui/viewers/disassemblerviewer.ui +++ b/src/ui/viewers/disassemblerviewer.ui @@ -6,8 +6,8 @@ 0 0 - 749 - 516 + 146 + 129 @@ -29,6 +29,14 @@ + + + FileViewerInterface + QWidget +
viewerbase.h
+ 1 +
+
diff --git a/src/ui/viewers/hexdumpviewer.ui b/src/ui/viewers/hexdumpviewer.ui index d565831..93de795 100644 --- a/src/ui/viewers/hexdumpviewer.ui +++ b/src/ui/viewers/hexdumpviewer.ui @@ -6,8 +6,8 @@ 0 0 - 836 - 540 + 107 + 117
@@ -35,6 +35,14 @@ + + + FileViewerInterface + QWidget +
viewerbase.h
+ 1 +
+
diff --git a/src/ui/viewers/hiresviewwidget.cxx b/src/ui/viewers/hiresviewwidget.cxx index aa347b0..5083b49 100644 --- a/src/ui/viewers/hiresviewwidget.cxx +++ b/src/ui/viewers/hiresviewwidget.cxx @@ -42,6 +42,8 @@ HiresViewWidget::HiresViewWidget(QWidget *parent) : perPixelColorAction->setChecked(false); formatGroup->addAction(perPixelColorAction); + + showScanLinesAction = new QAction("Show Scan Lines",this); showScanLinesAction->setCheckable(true); showScanLinesAction->setChecked(m_showScanLines); diff --git a/src/ui/viewers/mazeviewer.cpp b/src/ui/viewers/mazeviewer.cpp index ec22d6b..169d04e 100644 --- a/src/ui/viewers/mazeviewer.cpp +++ b/src/ui/viewers/mazeviewer.cpp @@ -7,7 +7,7 @@ MazeViewer::MazeViewer(QWidget *parent) : FileViewerInterface(parent) { - setMinimumSize(480,600); + //setMinimumSize(480,600); m_maze = QPixmap(width(),height()); drawMaze(); } @@ -25,7 +25,7 @@ void MazeViewer::paintEvent(QPaintEvent *event) Q_UNUSED(event); drawMaze(); QPainter painter(this); - painter.drawPixmap(0,0,m_maze); + painter.drawPixmap(0, 0, m_maze); } void MazeViewer::setFile(GenericFile *file) @@ -45,7 +45,6 @@ void MazeViewer::setFile(BinaryFile *file) quint16 address = file->address(); mem.addFile(file->data(), address); - } diff --git a/src/ui/viewers/texthexdumpviewer.ui b/src/ui/viewers/texthexdumpviewer.ui index b231910..9bd2a96 100644 --- a/src/ui/viewers/texthexdumpviewer.ui +++ b/src/ui/viewers/texthexdumpviewer.ui @@ -6,8 +6,8 @@ 0 0 - 836 - 540 + 152 + 121
@@ -26,6 +26,14 @@ + + + FileViewerInterface + QWidget +
viewerbase.h
+ 1 +
+
diff --git a/src/ui/viewers/viewerbase.cpp b/src/ui/viewers/viewerbase.cpp index f55764e..4fc7ae6 100644 --- a/src/ui/viewers/viewerbase.cpp +++ b/src/ui/viewers/viewerbase.cpp @@ -6,6 +6,7 @@ #include #include #include +#include #include "applesoftfileviewer.h" #include "hexdumpviewer.h" @@ -24,6 +25,12 @@ ViewerBase::ViewerBase(QWidget *parent) : m_stack = new QStackedWidget(this); ui->setupUi(this); + +// QScrollArea *scroller = new QScrollArea(this); +// scroller->setWidgetResizable(true); +// setCentralWidget(scroller); +// scroller->setWidget(m_stack); + setCentralWidget(m_stack); m_toolbar = new QToolBar(this); diff --git a/src/ui/viewers/viewerbase.ui b/src/ui/viewers/viewerbase.ui index 3e3b535..38ad91e 100644 --- a/src/ui/viewers/viewerbase.ui +++ b/src/ui/viewers/viewerbase.ui @@ -6,8 +6,8 @@ 0 0 - 954 - 614 + 919 + 609
@@ -19,7 +19,7 @@ 0 0 - 954 + 919 21 diff --git a/src/ui/widgets/characterwidget.cpp b/src/ui/widgets/characterwidget.cpp index 6308f20..30b1edc 100644 --- a/src/ui/widgets/characterwidget.cpp +++ b/src/ui/widgets/characterwidget.cpp @@ -5,14 +5,14 @@ #include #include -CharacterWidget::CharacterWidget(QWidget *parent, CharSetCharacter ch, int scale) - : QWidget(parent), m_character(ch), m_scale(scale) +CharacterWidget::CharacterWidget(QWidget *parent, CharSetCharacter ch) + : QWidget(parent), m_character(ch) { + m_dobitshift = true; m_showgrid = true; - resize(15*m_scale, 16*m_scale); - setMaximumSize(this->size()); - setMinimumSize(this->size()); + // setMaximumSize(this->size()); + // setMinimumSize(this->size()); m_pixmap = QPixmap(this->size()); setFgColor(Qt::black); setBgColor(Qt::white); @@ -25,10 +25,19 @@ CharacterWidget::CharacterWidget(QWidget *parent, CharSetCharacter ch, int scale doRepaint(); } +bool CharacterWidget::hasHeightForWidth() const { return true; } +int CharacterWidget::heightForWidth(int w) const { return w * 9 / 8; } + void CharacterWidget::doRepaint() { - m_pixmap.fill(m_bgcolor); + m_pixmap.fill(QColor(0,0,0,0)); QPainter painter(&m_pixmap); + float hscale = width() / 15; + float vscale = height() / 8; + + painter.setPen(m_bgcolor); + painter.setBrush(m_bgcolor); + painter.drawRect(0,0, hscale * 15, vscale * 8); painter.setPen(m_fgcolor); painter.setBrush(m_fgcolor); @@ -37,7 +46,7 @@ void CharacterWidget::doRepaint() for (quint8 yval = 0; yval < 8; yval++) { - int ypos = yval * m_scale*2; + int ypos = yval * vscale; quint8 line = chardata[yval]; @@ -61,8 +70,8 @@ void CharacterWidget::doRepaint() { if (bits.testBit(jdx)) { - painter.drawRect((jdx*2+shiftval)*m_scale, ypos, - m_scale*2, m_scale*2); + painter.drawRect((jdx*2+shiftval)*hscale, ypos, + hscale*2, vscale); } } } @@ -71,19 +80,21 @@ void CharacterWidget::doRepaint() { painter.setPen(QPen(m_gridcolor,1,Qt::DotLine)); painter.setBrush(Qt::NoBrush); - for (int idx = 0; idx < 8; idx++) - { - painter.drawLine(0, idx*m_scale*2, m_pixmap.width(), idx*m_scale*2); - } for (int idx = 0; idx < 9; idx++) { - painter.drawLine(idx*m_scale*2, 0, idx*m_scale*2, m_pixmap.width()); + painter.drawLine(0, idx*vscale, + hscale * 15, idx*vscale); + } + for (int idx = 0; idx < 8; idx++) + { + painter.drawLine(idx*hscale*2, 0, + idx*hscale*2, vscale * 8); } painter.setPen(QPen(m_gridcolor,2,Qt::SolidLine)); - painter.drawLine(0,0, 0,m_pixmap.height()); - painter.drawLine(0,m_pixmap.height(), m_pixmap.width(), m_pixmap.height()); - painter.drawLine(m_pixmap.width(), m_pixmap.height(), m_pixmap.width(),0); - painter.drawLine(m_pixmap.width(),0, 0,0); + painter.drawLine(0,0, 0, vscale * 8); + painter.drawLine(0,vscale * 8, hscale * 15, vscale * 8); + painter.drawLine(hscale * 15, vscale * 8, hscale * 15,0); + painter.drawLine(hscale * 15,0, 0,0); } repaint(); diff --git a/src/ui/widgets/characterwidget.h b/src/ui/widgets/characterwidget.h index 3f2cb40..560fbf6 100644 --- a/src/ui/widgets/characterwidget.h +++ b/src/ui/widgets/characterwidget.h @@ -12,11 +12,12 @@ class CharacterWidget : public QWidget public: CharacterWidget(QWidget *parent = 0, - CharSetCharacter ch = CharSetCharacter(), - int scale = 4); + CharSetCharacter ch = CharSetCharacter()); void doRepaint(); + bool hasHeightForWidth() const; + int heightForWidth(int w) const; protected: void resizeEvent(QResizeEvent *event); @@ -43,6 +44,5 @@ private: CharSetCharacter m_character; - int m_scale; };