[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/khtml
From: Germain Garand <germain () ebooksfrance ! com>
Date: 2007-10-22 23:31:53
Message-ID: 1193095913.347435.18921.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 728325 by ggarand:
Port away from Qt3Support
with advices and review
kindly provided by Maksim Orlovich
Part 4. khtml/html and khtml/java
+port kjavaappletviewer to QTableWidget (please test)
CCBUG: 150931
M +40 -33 html/html_formimpl.cpp
M +2 -4 html/html_formimpl.h
M +14 -17 html/html_miscimpl.cpp
M +1 -1 java/kjavaappletserver.cpp
M +24 -15 java/kjavaappletviewer.cpp
M +2 -2 java/kjavaappletviewer.h
--- trunk/KDE/kdelibs/khtml/html/html_formimpl.cpp #728324:728325
@@ -94,12 +94,12 @@
if (getDocument() && getDocument()->view() && getDocument()->view()->part()) {
getDocument()->view()->part()->dequeueWallet(this);
}
- Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements);
- for (; it.current(); ++it)
- it.current()->m_form = 0;
- Q3PtrListIterator<HTMLImageElementImpl> it2(imgElements);
- for (; it2.current(); ++it2)
- it2.current()->m_form = 0;
+ QListIterator<HTMLGenericFormElementImpl*> it(formElements);
+ while (it.hasNext())
+ it.next()->m_form = 0;
+ QListIterator<HTMLImageElementImpl*> it2(imgElements);
+ while (it2.hasNext())
+ it2.next()->m_form = 0;
}
NodeImpl::Id HTMLFormElementImpl::id() const
@@ -126,9 +126,9 @@
long HTMLFormElementImpl::length() const
{
int len = 0;
- Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements);
- for (; it.current(); ++it)
- if (it.current()->isEnumeratable())
+ QListIterator<HTMLGenericFormElementImpl*> it(formElements);
+ while (it.hasNext())
+ if (it.next()->isEnumeratable())
++len;
return len;
@@ -274,8 +274,8 @@
QStringList fileUploads, fileNotUploads;
- for (Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements); \
it.current(); ++it) {
- HTMLGenericFormElementImpl* const current = it.current();
+ for (QListIterator<HTMLGenericFormElementImpl*> it(formElements); it.hasNext();) \
{ + HTMLGenericFormElementImpl* const current = it.next();
khtml::encodingList lst;
if (!current->disabled() && current->encoding(codec, lst, m_multipart))
@@ -468,9 +468,10 @@
if (w->readMap(key, map))
return; // failed, abort
- for (Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements); \
it.current(); ++it) {
- if (it.current()->id() == ID_INPUT) {
- HTMLInputElementImpl* const current = \
static_cast<HTMLInputElementImpl*>(it.current()); + for \
(QListIterator<HTMLGenericFormElementImpl*> it(formElements); it.hasNext();) { + \
HTMLGenericFormElementImpl* const cur = it.next(); + if (cur->id() == \
ID_INPUT) { + HTMLInputElementImpl* const current = \
static_cast<HTMLInputElementImpl*>(cur);
if ((current->inputType() == HTMLInputElementImpl::PASSWORD ||
current->inputType() == HTMLInputElementImpl::TEXT) &&
!current->readOnly() &&
@@ -489,15 +490,16 @@
// if there is none, do a submit anyway if not more
// than one <input type=text> or <input type=password>
unsigned int inputtext = 0;
- for (Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements); \
it.current(); ++it) {
- if (it.current()->id() == ID_BUTTON) {
- HTMLButtonElementImpl* const current = static_cast<HTMLButtonElementImpl \
*>(it.current()); + for (QListIterator<HTMLGenericFormElementImpl*> \
it(formElements); it.hasNext();) { + HTMLGenericFormElementImpl* const cur = \
it.next(); + if (cur->id() == ID_BUTTON) {
+ HTMLButtonElementImpl* const current = static_cast<HTMLButtonElementImpl \
*>(cur);
if (current->buttonType() == HTMLButtonElementImpl::SUBMIT && \
!current->disabled()) { current->click();
return;
}
- } else if (it.current()->id() == ID_INPUT) {
- HTMLInputElementImpl* const current = static_cast<HTMLInputElementImpl \
*>(it.current()); + } else if (cur->id() == ID_INPUT) {
+ HTMLInputElementImpl* const current = static_cast<HTMLInputElementImpl \
*>(cur); switch(current->inputType()) {
case HTMLInputElementImpl::SUBMIT:
case HTMLInputElementImpl::IMAGE:
@@ -530,9 +532,10 @@
m_haveTextarea = false;
const KUrl formUrl(getDocument()->URL());
if (view && !view->nonPasswordStorableSite(formUrl.host())) {
- for (Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements); \
it.current(); ++it) {
- if (it.current()->id() == ID_INPUT) {
- HTMLInputElementImpl* const c = static_cast<HTMLInputElementImpl*> \
(it.current()); + for (QListIterator<HTMLGenericFormElementImpl*> \
it(formElements); it.hasNext();) { + HTMLGenericFormElementImpl* const cur \
= it.next(); + if (cur->id() == ID_INPUT) {
+ HTMLInputElementImpl* const c = static_cast<HTMLInputElementImpl*> \
(cur); if ((c->inputType() == HTMLInputElementImpl::TEXT ||
c->inputType() == HTMLInputElementImpl::PASSWORD) &&
!c->readOnly()) {
@@ -542,7 +545,7 @@
m_havePassword = true;
}
}
- else if (it.current()->id() == ID_TEXTAREA)
+ else if (cur->id() == ID_TEXTAREA)
m_haveTextarea = true;
}
}
@@ -701,8 +704,8 @@
return;
}
- for (Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements); \
it.current(); ++it)
- it.current()->reset();
+ for (QListIterator<HTMLGenericFormElementImpl*> it(formElements); it.hasNext();)
+ it.next()->reset();
m_inreset = false;
}
@@ -780,8 +783,8 @@
void HTMLFormElementImpl::radioClicked( HTMLGenericFormElementImpl *caller )
{
- for (Q3PtrListIterator<HTMLGenericFormElementImpl> it(formElements); \
it.current(); ++it) {
- HTMLGenericFormElementImpl* const current = it.current();
+ for (QListIterator<HTMLGenericFormElementImpl*> it(formElements); it.hasNext();) \
{ + HTMLGenericFormElementImpl* const current = it.next();
if (current->id() == ID_INPUT &&
static_cast<HTMLInputElementImpl*>(current)->inputType() == \
HTMLInputElementImpl::RADIO &&
current != caller && current->form() == caller->form() && \
current->name() == caller->name()) @@ -796,7 +799,9 @@
void HTMLFormElementImpl::removeFormElement(HTMLGenericFormElementImpl *e)
{
- formElements.remove(e);
+ int i = formElements.indexOf(e);
+ if (i != -1)
+ formElements.removeAt(i);
}
void HTMLFormElementImpl::registerImgElement(HTMLImageElementImpl *e)
@@ -806,7 +811,9 @@
void HTMLFormElementImpl::removeImgElement(HTMLImageElementImpl *e)
{
- imgElements.remove(e);
+ int i = imgElements.indexOf(e);
+ if (i != -1)
+ imgElements.removeAt(i);
}
// -------------------------------------------------------------------------
@@ -2910,15 +2917,15 @@
void HTMLTextAreaElementImpl::setDefaultValue(DOMString _defaultValue)
{
// there may be comments - remove all the text nodes and replace them with one
- Q3PtrList<NodeImpl> toRemove;
+ QList<NodeImpl*> toRemove;
NodeImpl *n;
for (n = firstChild(); n; n = n->nextSibling())
if (n->isTextNode())
toRemove.append(n);
- Q3PtrListIterator<NodeImpl> it(toRemove);
+ QListIterator<NodeImpl*> it(toRemove);
int exceptioncode = 0;
- for (; it.current(); ++it) {
- removeChild(it.current(), exceptioncode);
+ while (it.hasNext()) {
+ removeChild(it.next(), exceptioncode);
}
insertBefore(getDocument()->createTextNode(_defaultValue.implementation()),firstChild(), \
exceptioncode); setValue(_defaultValue);
--- trunk/KDE/kdelibs/khtml/html/html_formimpl.h #728324:728325
@@ -29,8 +29,6 @@
#include "html/html_imageimpl.h"
#include "dom/html_element.h"
-#include <Qt3Support/Q3PtrList>
-
class QTextCodec;
namespace khtml
@@ -110,8 +108,8 @@
private:
void gatherWalletData();
- Q3PtrList<HTMLGenericFormElementImpl> formElements;
- Q3PtrList<HTMLImageElementImpl> imgElements;
+ QList<HTMLGenericFormElementImpl*> formElements;
+ QList<HTMLImageElementImpl*> imgElements;
DOMString m_target;
DOMString m_enctype;
QString m_boundary;
--- trunk/KDE/kdelibs/khtml/html/html_miscimpl.cpp #728324:728325
@@ -26,7 +26,6 @@
#include "html_tableimpl.h"
#include "html_formimpl.h"
#include "html_documentimpl.h"
-#include <Qt3Support/Q3Dict>
#include <misc/htmlhashes.h>
#include <dom/dom_node.h>
@@ -55,17 +54,14 @@
{
static Cache* make() { return new CollectionCache; }
- Q3Dict<QList<NodeImpl*> > nameCache;
+ QHash<QString,QList<NodeImpl*>* > nameCache;
- CollectionCache(): nameCache(127)
- {
- nameCache.setAutoDelete(true);
- }
+ CollectionCache(): nameCache(){}
virtual void clear(DocumentImpl* doc)
{
Cache::clear(doc);
- //qDeleteAll here in Qt4 when fully ported
+ qDeleteAll(nameCache);
nameCache.clear();
}
};
@@ -293,7 +289,7 @@
//remember stuff about elements we were asked for.
m_cache->updateNodeListInfo(m_refNode->getDocument());
CollectionCache* cache = static_cast<CollectionCache*>(m_cache);
- if (QList<NodeImpl*>* info = cache->nameCache.find(key)) {
+ if (QList<NodeImpl*>* info = cache->nameCache.value(key)) {
return *info;
}
else {
@@ -305,7 +301,7 @@
match = nextNamedItem(name);
}
- cache->nameCache.insert(key, newInfo);
+ cache->nameCache.insertMulti(key, newInfo);
return *newInfo;
}
}
@@ -328,8 +324,8 @@
strt = m_cache->current.index;
}
- Q3PtrList<HTMLGenericFormElementImpl>& l = static_cast<HTMLFormElementImpl*>( \
m_refNode )->formElements;
- for (unsigned i = strt; i < l.count(); i++)
+ QList<HTMLGenericFormElementImpl*>& l = static_cast<HTMLFormElementImpl*>( \
m_refNode )->formElements; + for (unsigned i = strt; i < (unsigned)l.count(); i++)
{
if (l.at( i )->isEnumeratable())
{
@@ -349,9 +345,10 @@
unsigned long HTMLFormCollectionImpl::calcLength(NodeImpl *start) const
{
+ Q_UNUSED(start);
unsigned length = 0;
- Q3PtrList<HTMLGenericFormElementImpl> l = static_cast<HTMLFormElementImpl*>( \
m_refNode )->formElements;
- for ( unsigned i = 0; i < l.count(); i++ )
+ QList<HTMLGenericFormElementImpl*> l = static_cast<HTMLFormElementImpl*>( \
m_refNode )->formElements; + for ( unsigned i = 0; i < (unsigned)l.count(); i++ )
if ( l.at( i )->isEnumeratable() )
++length;
return length;
@@ -367,10 +364,10 @@
NodeImpl *HTMLFormCollectionImpl::nextNamedItem( const DOMString &name ) const
{
- Q3PtrList<HTMLGenericFormElementImpl>& l = static_cast<HTMLFormElementImpl*>( \
m_refNode )->formElements; + QList<HTMLGenericFormElementImpl*>& l = \
static_cast<HTMLFormElementImpl*>( m_refNode )->formElements;
//Go through the list, trying to find the appropriate named form element.
- for ( ; currentNamePos < l.count(); ++currentNamePos )
+ for ( ; currentNamePos < (unsigned)l.count(); ++currentNamePos )
{
HTMLGenericFormElementImpl* el = l.at(currentNamePos);
if (el->isEnumeratable() &&
@@ -387,8 +384,8 @@
//but only if no input tags were matched
if (foundInput) return 0;
- Q3PtrList<HTMLImageElementImpl>& il = static_cast<HTMLFormElementImpl*>( \
m_refNode )->imgElements;
- for ( ; currentNameImgPos < il.count(); ++currentNameImgPos )
+ QList<HTMLImageElementImpl*>& il = static_cast<HTMLFormElementImpl*>( m_refNode \
)->imgElements; + for ( ; currentNameImgPos < (unsigned)il.count(); \
++currentNameImgPos ) {
HTMLImageElementImpl* el = il.at(currentNameImgPos);
if ((el->getAttribute(ATTR_ID) == name) ||
--- trunk/KDE/kdelibs/khtml/java/kjavaappletserver.cpp #728324:728325
@@ -762,7 +762,7 @@
killTimers();
startTimer(15000);
while (!frame->exit)
- QAbstractEventDispatcher::instance()->processEvents (QEventLoop::AllEvents | \
QEventLoop::WaitForMore); + QAbstractEventDispatcher::instance()->processEvents \
(QEventLoop::AllEvents | QEventLoop::WaitForMoreEvents); if (d->jsstack.size() <= 1)
killTimers();
kDebug(6100) << "<KJavaAppletServer::waitForReturnData stacksize:" << \
d->jsstack.size();
--- trunk/KDE/kdelibs/khtml/java/kjavaappletviewer.cpp #728324:728325
@@ -29,11 +29,11 @@
#undef Always
#endif
#include <QtCore/QDir>
-#include <Qt3Support/Q3Table>
#include <QtCore/QPair>
#include <QtCore/QTimer>
#include <QtCore/QPointer>
#include <QtGui/QLabel>
+#include <QtGui/QTableWidget>
#include <QtDBus/QtDBus>
#include <kauthorized.h>
@@ -132,31 +132,40 @@
setModal( true );
KJavaApplet* const applet = parent->applet ();
- table = new Q3Table (30, 2, this);
+ table = new QTableWidget (30, 2, this);
table->setMinimumSize (QSize (600, 400));
table->setColumnWidth (0, 200);
table->setColumnWidth (1, 340);
- Q3Header* const header = table->horizontalHeader();
- header->setLabel (0, i18n ("Parameter"));
- header->setLabel (1, i18n ("Value"));
- Q3TableItem * tit = new Q3TableItem (table, Q3TableItem::Never, i18n("Class"));
+ QTableWidgetItem* const header1 = new QTableWidgetItem(i18n ("Parameter"));
+ QTableWidgetItem* const header2 = new QTableWidgetItem(i18n ("Value"));
+ table->setHorizontalHeaderItem(1, header1);
+ table->setHorizontalHeaderItem(2, header2);
+ QTableWidgetItem * tit = new QTableWidgetItem(i18n("Class"));
+ tit->setFlags( tit->flags()^Qt::ItemIsEditable );
table->setItem (0, 0, tit);
- tit = new Q3TableItem(table, Q3TableItem::Always, applet->appletClass());
+ tit = new QTableWidgetItem(applet->appletClass());
+ tit->setFlags( tit->flags()|Qt::ItemIsEditable );
table->setItem (0, 1, tit);
- tit = new Q3TableItem (table, Q3TableItem::Never, i18n ("Base URL"));
+ tit = new QTableWidgetItem (i18n ("Base URL"));
+ tit->setFlags( tit->flags()^Qt::ItemIsEditable );
table->setItem (1, 0, tit);
- tit = new Q3TableItem(table, Q3TableItem::Always, applet->baseURL());
+ tit = new QTableWidgetItem(applet->baseURL());
+ tit->setFlags( tit->flags()|Qt::ItemIsEditable );
table->setItem (1, 1, tit);
- tit = new Q3TableItem (table, Q3TableItem::Never, i18n ("Archives"));
+ tit = new QTableWidgetItem(i18n ("Archives"));
+ tit->setFlags( tit->flags()^Qt::ItemIsEditable );
table->setItem (2, 0, tit);
- tit = new Q3TableItem(table, Q3TableItem::Always, applet->archives());
+ tit = new QTableWidgetItem(applet->archives());
+ tit->setFlags( tit->flags()|Qt::ItemIsEditable );
table->setItem (2, 1, tit);
QMap<QString,QString>::const_iterator it = applet->getParams().begin();
const QMap<QString,QString>::const_iterator itEnd = applet->getParams().end();
for (int count = 2; it != itEnd; ++it) {
- tit = new Q3TableItem (table, Q3TableItem::Always, it.key ());
+ tit = new QTableWidgetItem (it.key ());
+ tit->setFlags( tit->flags()|Qt::ItemIsEditable );
table->setItem (++count, 0, tit);
- tit = new Q3TableItem(table, Q3TableItem::Always, it.value ());
+ tit = new QTableWidgetItem(it.value());
+ tit->setFlags( tit->flags()|Qt::ItemIsEditable );
table->setItem (count, 1, tit);
}
setMainWidget (table);
@@ -164,12 +173,12 @@
}
void AppletParameterDialog::slotClose () {
- table->selectCells (0, 0, 0, 0);
+ table->setRangeSelected(QTableWidgetSelectionRange(0, 0, 0, 0), true);
KJavaApplet* const applet = m_appletWidget->applet ();
applet->setAppletClass (table->item (0, 1)->text ());
applet->setBaseURL (table->item (1, 1)->text ());
applet->setArchives (table->item (2, 1)->text ());
- const int lim = table->numRows();
+ const int lim = table->rowCount();
for (int i = 3; i < lim; ++i) {
if (table->item (i, 0) && table->item (i, 1) && !table->item (i, 0)->text \
().isEmpty ()) applet->setParameter (table->item (i, 0)->text (),
--- trunk/KDE/kdelibs/khtml/java/kjavaappletviewer.h #728324:728325
@@ -36,7 +36,7 @@
#include "kjavaappletwidget.h"
-class Q3Table;
+class QTableWidget;
class QLabel;
class KJavaProcess;
class KJavaAppletViewer;
@@ -141,7 +141,7 @@
void slotClose ();
private:
KJavaAppletWidget * m_appletWidget;
- Q3Table * table;
+ QTableWidget * table;
};
#endif
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic