Use the foreach macro to iterate through pages

This commit is contained in:
Matthew Horan 2012-04-05 18:49:55 -04:00
parent 8f8c95d980
commit d154a65fe8
4 changed files with 6 additions and 13 deletions

View File

@ -8,14 +8,11 @@ GetWindowHandles::GetWindowHandles(WebPageManager *manager, QStringList &argumen
} }
void GetWindowHandles::start() { void GetWindowHandles::start() {
QListIterator<WebPage *> pageIterator = manager()->iterator();
QString handles = "["; QString handles = "[";
QStringList stringList; QStringList stringList;
while (pageIterator.hasNext()) { foreach(WebPage *page, manager()->pages())
stringList.append("\"" + pageIterator.next()->uuid() + "\""); stringList.append("\"" + page->uuid() + "\"");
}
handles += stringList.join(",") + "]"; handles += stringList.join(",") + "]";

View File

@ -11,8 +11,8 @@ void WebPageManager::append(WebPage *value) {
m_pages.append(value); m_pages.append(value);
} }
QListIterator<WebPage *> WebPageManager::iterator() { QList<WebPage *> WebPageManager::pages() {
return QListIterator<WebPage *>(m_pages); return m_pages;
} }
void WebPageManager::setCurrentPage(WebPage *page) { void WebPageManager::setCurrentPage(WebPage *page) {

View File

@ -11,7 +11,7 @@ class WebPageManager : public QObject {
public: public:
WebPageManager(QObject *parent = 0); WebPageManager(QObject *parent = 0);
void append(WebPage *value); void append(WebPage *value);
QListIterator<WebPage *> iterator(); QList<WebPage *> pages();
void setCurrentPage(WebPage *); void setCurrentPage(WebPage *);
WebPage *currentPage(); WebPage *currentPage();
WebPage *createPage(QObject *parent); WebPage *createPage(QObject *parent);

View File

@ -21,11 +21,7 @@ void WindowFocus::success(WebPage *page) {
} }
void WindowFocus::focusWindow(QString selector) { void WindowFocus::focusWindow(QString selector) {
QListIterator<WebPage *> pageIterator = manager()->iterator(); foreach(WebPage *page, manager()->pages()) {
while (pageIterator.hasNext()) {
WebPage *page = pageIterator.next();
if (page->matchesWindowSelector(selector)) { if (page->matchesWindowSelector(selector)) {
success(page); success(page);
return; return;