Port from std::vector to QList

This commit is contained in:
Gavin MacGregor
2025-03-18 19:03:45 +00:00
parent 4a15d9a206
commit 8751783cb2
2 changed files with 14 additions and 16 deletions

View File

@@ -18,7 +18,7 @@
*/ */
#include <QAbstractListModel> #include <QAbstractListModel>
#include <vector> #include <QList>
#include "document.h" #include "document.h"
@@ -63,7 +63,7 @@ TeletextDocument::TeletextDocument()
m_description.clear(); m_description.clear();
m_pageFunction = PFLevelOnePage; m_pageFunction = PFLevelOnePage;
m_packetCoding = Coding7bit; m_packetCoding = Coding7bit;
m_subPages.push_back(new LevelOnePage); m_subPages.append(new LevelOnePage);
m_currentSubPageIndex = 0; m_currentSubPageIndex = 0;
m_undoStack = new QUndoStack(this); m_undoStack = new QUndoStack(this);
m_cursorRow = 1; m_cursorRow = 1;
@@ -97,9 +97,7 @@ bool TeletextDocument::isEmpty() const
void TeletextDocument::clear() void TeletextDocument::clear()
{ {
LevelOnePage *blankSubPage = new LevelOnePage; m_subPages.prepend(new LevelOnePage);
m_subPages.insert(m_subPages.begin(), blankSubPage);
emit aboutToChangeSubPage(); emit aboutToChangeSubPage();
m_currentSubPageIndex = 0; m_currentSubPageIndex = 0;
@@ -110,7 +108,7 @@ void TeletextDocument::clear()
for (int i=m_subPages.size()-1; i>0; i--) { for (int i=m_subPages.size()-1; i>0; i--) {
delete(m_subPages[i]); delete(m_subPages[i]);
m_subPages.erase(m_subPages.begin()+i); m_subPages.remove(i);
} }
} }
@@ -177,9 +175,9 @@ void TeletextDocument::insertSubPage(int beforeSubPageIndex, bool copySubPage)
insertedSubPage = new LevelOnePage; insertedSubPage = new LevelOnePage;
if (beforeSubPageIndex == m_subPages.size()) if (beforeSubPageIndex == m_subPages.size())
m_subPages.push_back(insertedSubPage); m_subPages.append(insertedSubPage);
else else
m_subPages.insert(m_subPages.begin()+beforeSubPageIndex, insertedSubPage); m_subPages.insert(beforeSubPageIndex, insertedSubPage);
} }
void TeletextDocument::deleteSubPage(int subPageToDelete) void TeletextDocument::deleteSubPage(int subPageToDelete)
@@ -187,19 +185,19 @@ void TeletextDocument::deleteSubPage(int subPageToDelete)
m_clutModel->setSubPage(nullptr); m_clutModel->setSubPage(nullptr);
delete(m_subPages[subPageToDelete]); delete(m_subPages[subPageToDelete]);
m_subPages.erase(m_subPages.begin()+subPageToDelete); m_subPages.remove(subPageToDelete);
} }
void TeletextDocument::deleteSubPageToRecycle(int subPageToRecycle) void TeletextDocument::deleteSubPageToRecycle(int subPageToRecycle)
{ {
m_recycleSubPages.push_back(m_subPages[subPageToRecycle]); m_recycleSubPages.append(m_subPages[subPageToRecycle]);
m_subPages.erase(m_subPages.begin()+subPageToRecycle); m_subPages.remove(subPageToRecycle);
} }
void TeletextDocument::unDeleteSubPageFromRecycle(int subPage) void TeletextDocument::unDeleteSubPageFromRecycle(int subPage)
{ {
m_subPages.insert(m_subPages.begin()+subPage, m_recycleSubPages.back()); m_subPages.insert(subPage, m_recycleSubPages.last());
m_recycleSubPages.pop_back(); m_recycleSubPages.removeLast();
} }
void TeletextDocument::setPageNumber(int pageNumber) void TeletextDocument::setPageNumber(int pageNumber)

View File

@@ -21,9 +21,9 @@
#define DOCUMENT_H #define DOCUMENT_H
#include <QAbstractListModel> #include <QAbstractListModel>
#include <QList>
#include <QObject> #include <QObject>
#include <QUndoStack> #include <QUndoStack>
#include <vector>
#include "levelonepage.h" #include "levelonepage.h"
@@ -121,8 +121,8 @@ private:
int m_pageNumber, m_currentSubPageIndex; int m_pageNumber, m_currentSubPageIndex;
PageFunctionEnum m_pageFunction; PageFunctionEnum m_pageFunction;
PacketCodingEnum m_packetCoding; PacketCodingEnum m_packetCoding;
std::vector<LevelOnePage *> m_subPages; QList<LevelOnePage *> m_subPages;
std::vector<LevelOnePage *> m_recycleSubPages; QList<LevelOnePage *> m_recycleSubPages;
QUndoStack *m_undoStack; QUndoStack *m_undoStack;
int m_cursorRow, m_cursorColumn, m_selectionCornerRow, m_selectionCornerColumn; int m_cursorRow, m_cursorColumn, m_selectionCornerRow, m_selectionCornerColumn;
bool m_rowZeroAllowed; bool m_rowZeroAllowed;