diff demos/browser/bookmarks.d @ 113:8636c819ce4d

more porting
author mandel
date Wed, 03 Jun 2009 14:35:25 +0000
parents dcd36d8db2da
children 4320ed0343dd
line wrap: on
line diff
--- a/demos/browser/bookmarks.d	Mon Jun 01 23:47:30 2009 +0000
+++ b/demos/browser/bookmarks.d	Wed Jun 03 14:35:25 2009 +0000
@@ -57,6 +57,7 @@
 import qt.gui.QIcon;
 import qt.gui.QMessageBox;
 import qt.gui.QToolButton;
+import qt.gui.QTreeView;
 import qt.xml.QXmlStreamReader;
 import qt.webkit.QWebSettings;
 
@@ -64,7 +65,6 @@
 
 //import qt.core.QDebug;
 
-import bookmarks;
 import autosaver;
 import browserapplication;
 import history;
@@ -540,9 +540,10 @@
 				break;
 			case Qt_ItemDataRole.DecorationRole:
 				if (index.column() == 0) {
+					//TODO: is cast(void*) ok?
 					if (bookmarkNode.type() == BookmarkNode.Type.Folder)
-						return new QVariant(QApplication.style().standardIcon(QStyle.SP_DirIcon));
-					return new QVariant(BrowserApplication.instance().icon(bookmarkNode.url));
+						return new QVariant(cast(void*) QApplication.style().standardIcon(QStyle.SP_DirIcon));
+					return new QVariant(cast(void*) BrowserApplication.instance().icon(new QUrl(bookmarkNode.url)));
 				}
 		}
 
@@ -716,7 +717,7 @@
 
 		while (!stream.atEnd()) {
 			auto encodedData = new QByteArray;
-			stream >> encodedData;
+			//stream >> encodedData; //TODO
 			
 			auto buffer = new QBuffer(encodedData);
 			buffer.open(QBuffer.ReadOnly);
@@ -741,7 +742,7 @@
 	{
 		if (!parent.isValid())
 			return true;
-		const BookmarkNode parentNode = node(parent);
+		BookmarkNode parentNode = node(parent);
 		return (parentNode.type() == BookmarkNode.Type.Folder);
 	}
 
@@ -780,7 +781,7 @@
 	{
 		super(parent);	
 		m_bookmarksManager = null;
-		this.activated.connect(&this.activated);
+		this.activated.connect(&this.activatedIndex);
 		setMaxRows(-1);
 		setHoverRole(BookmarksModel.Roles.UrlStringRole);
 		setSeparatorRole(BookmarksModel.Roles.SeparatorRole);
@@ -811,7 +812,7 @@
 
 private:
 
-	void activated(QModelIndex index)
+	void activatedIndex(QModelIndex index)
 	{
 		openUrl.emit(index.data(BookmarksModel.Roles.UrlRole).toUrl());
 	}
@@ -859,7 +860,7 @@
 
 class AddBookmarkDialog : public QDialog //, public Ui_AddBookmarkDialog
 {
-	AddBookmarkDialog ui;
+	mixin Ui_AddBookmarkDialog;
 	
 public:
 
@@ -872,8 +873,8 @@
 		setWindowFlags(Qt.Sheet);
 		if (!m_bookmarksManager)
 			m_bookmarksManager = BrowserApplication.bookmarksManager();
-		ui.setupUi(this);
-		QTreeView view = new QTreeView(this);
+		setupUi(this);
+		auto view = new QTreeView(this);
 		m_proxyModel = new AddBookmarkProxyModel(this);
 		BookmarksModel model = m_bookmarksManager.bookmarksModel();
 		m_proxyModel.setSourceModel(model);
@@ -903,7 +904,7 @@
 		if (!index.isValid())
 			index = m_bookmarksManager.bookmarksModel().index(0, 0);
 		BookmarkNode parent = m_bookmarksManager.bookmarksModel().node(index);
-		BookmarkNode bookmark = new BookmarkNode(BookmarkNode.Bookmark);
+		BookmarkNode bookmark = new BookmarkNode(BookmarkNode.Type.Bookmark);
 		bookmark.url = m_url;
 		bookmark.title = name.text();
 		m_bookmarksManager.addBookmark(parent, bookmark);
@@ -922,7 +923,7 @@
 //class TreeProxyModel;
 class BookmarksDialog : public QDialog //, public Ui_BookmarksDialog
 {
-	BookmarksDialog ui;
+	mixin Ui_BookmarksDialog;
 	
 	mixin Signal!("openUrl", QUrl /*url*/);
 
@@ -934,7 +935,7 @@
 		m_bookmarksManager = manager;
 		if (!m_bookmarksManager)
 			m_bookmarksManager = BrowserApplication.bookmarksManager();
-		ui.setupUi(this);
+		setupUi(this);
 
 		tree.setUniformRowHeights(true);
 		tree.setSelectionBehavior(QAbstractItemView.SelectRows);
@@ -950,7 +951,7 @@
 		tree.setExpanded(m_proxyModel.index(0, 0), true);
 		tree.setAlternatingRowColors(true);
 		auto fm = new QFontMetrics(font());
-		int header = fm.width(QLatin1Char('m')) * 40;
+		int header = fm.width("m") * 40;
 		tree.header().resizeSection(0, header);
 		tree.header().setStretchLastSection(true);
 		tree.activated.connect(&this.open);
@@ -975,10 +976,14 @@
 		QModelIndex index = tree.indexAt(pos);
 		index = index.sibling(index.row(), 0);
 		if (index.isValid() && !tree.model().hasChildren(index)) {
-			menu.addAction(tr("Open"), this, SLOT(open()));
+			auto action = new QAction(tr("Open"), this);
+			action.triggered.connect(&this.open);
+			menu.addAction(action);
 			menu.addSeparator();
 		}
-		menu.addAction(tr("Delete"), tree, SLOT(removeOne()));
+		auto action = new QAction(tr("Delete"), this);
+		action.triggered.connect(&tree.removeOne);
+		menu.addAction(action);
 		menu.exec(QCursor.pos());
 	}
 	
@@ -1008,7 +1013,7 @@
 private:
 	void expandNodes(BookmarkNode node)
 	{
-		for (int i = 0; i < node.children().count(); ++i) {
+		for (int i = 0; i < node.children().length; ++i) {
 			BookmarkNode childNode = node.children()[i];
 			if (childNode.expanded) {
 				QModelIndex idx = m_bookmarksModel.index(childNode);
@@ -1049,7 +1054,7 @@
 
 class BookmarksToolBar : public QToolBar
 {
-mixin Signal!("openUrl", QUrl /*url*/);
+	mixin Signal!("openUrl", QUrl /*url*/);
 
 public:
 
@@ -1084,7 +1089,7 @@
 		QMimeData mimeData = event.mimeData();
 		if (mimeData.hasUrls())
 			event.acceptProposedAction();
-		QToolBar.dragEnterEvent(event);
+		super.dragEnterEvent(event);
 	}
 
 	void dropEvent(QDropEvent event)
@@ -1110,7 +1115,7 @@
 					break;
 				}
 			}
-			BookmarkNode bookmark = new BookmarkNode(BookmarkNode.Bookmark);
+			BookmarkNode bookmark = new BookmarkNode(BookmarkNode.Type.Bookmark);
 			bookmark.url = urls[0].toString();
 			bookmark.title = mimeData.text();
 
@@ -1127,7 +1132,7 @@
 	void triggered(QAction action)
 	{
 		QVariant v = action.data();
-		if (v.canConvert!(QUrl)()) {
+		if (v.canConvert(QVariant.Type.Url)) {
 			openUrl.emit(v.toUrl());
 		}
 	}
@@ -1166,5 +1171,5 @@
 private:
 
 	BookmarksModel m_bookmarksModel;
-	QPersistentModelIndex m_root;
+	/*TODO: needed? QPersistentModelIndex*/ QModelIndex m_root;
 }