comparison demos/browser/browserapplication.d @ 113:8636c819ce4d

more porting
author mandel
date Wed, 03 Jun 2009 14:35:25 +0000
parents 87bb4e622f9e
children a8d76a9a85aa
comparison
equal deleted inserted replaced
112:e416c5215366 113:8636c819ce4d
47 import qt.core.QLibraryInfo; 47 import qt.core.QLibraryInfo;
48 import qt.core.QSettings; 48 import qt.core.QSettings;
49 import qt.core.QTextStream; 49 import qt.core.QTextStream;
50 import qt.core.QTranslator; 50 import qt.core.QTranslator;
51 import qt.core.QUrl; 51 import qt.core.QUrl;
52 import qt.core.QTimer;
52 //import qt.core.QPointer; 53 //import qt.core.QPointer;
53 54
54 import qt.gui.QApplication; 55 import qt.gui.QApplication;
55 import qt.gui.QIcon; 56 import qt.gui.QIcon;
56 import qt.gui.QDesktopServices; 57 import qt.gui.QDesktopServices;
78 79
79 class BrowserApplication : public QApplication 80 class BrowserApplication : public QApplication
80 { 81 {
81 public: 82 public:
82 83
83 this(string[] args) 84 this(string[] arguments)
84 { 85 {
85 super(args); 86 super(arguments);
86 m_localServer = null; 87 m_localServer = null;
87 QCoreApplication.setOrganizationName("Trolltech"); 88 QCoreApplication.setOrganizationName("Trolltech");
88 QCoreApplication.setApplicationName("demobrowser"); 89 QCoreApplication.setApplicationName("demobrowser");
89 QCoreApplication.setApplicationVersion("0.1"); 90 QCoreApplication.setApplicationVersion("0.1");
90 version(Q_WS_QWS) 91 version(Q_WS_QWS)
100 socket.connectToServer(serverName); 101 socket.connectToServer(serverName);
101 if (socket.waitForConnected(500)) { 102 if (socket.waitForConnected(500)) {
102 auto stream = new QTextStream(&socket); 103 auto stream = new QTextStream(&socket);
103 string[] args = QCoreApplication.arguments(); 104 string[] args = QCoreApplication.arguments();
104 if (args.length > 1) 105 if (args.length > 1)
105 stream << args[$-1]; 106 stream.writeString(args[$-1]);
106 else 107 //else
107 stream << ""; 108 // stream << "";
108 stream.flush(); 109 stream.flush();
109 socket.waitForBytesWritten(); 110 socket.waitForBytesWritten();
110 return; 111 return;
111 } 112 }
112 113
126 } 127 }
127 } 128 }
128 129
129 version(QT_NO_OPENSSL) {} else { 130 version(QT_NO_OPENSSL) {} else {
130 if (!QSslSocket.supportsSsl()) { 131 if (!QSslSocket.supportsSsl()) {
131 QMessageBox.information(0, "Demo Browser", 132 QMessageBox.information(null, "Demo Browser",
132 "This system does not support OpenSSL. SSL websites will not be available."); 133 "This system does not support OpenSSL. SSL websites will not be available.");
133 } 134 }
134 } 135 }
135 136
136 QDesktopServices.setUrlHandler("http", this, "openUrl"); 137 QDesktopServices.setUrlHandler("http", this, "openUrl");
137 string localSysName = QLocale.system().name(); 138 string localSysName = QLocale.system().name();
138 139
139 installTranslator("qt_" ~ localSysName); 140 installTranslator("qt_" ~ localSysName);
140 141
141 QSettings settings; 142 auto settings = new QSettings;
142 settings.beginGroup("sessions"); 143 settings.beginGroup("sessions");
143 m_lastSession = settings.value("lastSession").toByteArray(); 144 m_lastSession = settings.value("lastSession").toByteArray();
144 settings.endGroup(); 145 settings.endGroup();
145 146
146 version(Q_WS_MAC) { 147 version(Q_WS_MAC) {
172 settings.beginGroup("websettings"); 173 settings.beginGroup("websettings");
173 174
174 QWebSettings defaultSettings = QWebSettings.globalSettings(); 175 QWebSettings defaultSettings = QWebSettings.globalSettings();
175 string standardFontFamily = defaultSettings.fontFamily(QWebSettings.StandardFont); 176 string standardFontFamily = defaultSettings.fontFamily(QWebSettings.StandardFont);
176 int standardFontSize = defaultSettings.fontSize(QWebSettings.DefaultFontSize); 177 int standardFontSize = defaultSettings.fontSize(QWebSettings.DefaultFontSize);
177 QFont standardFont = QFont(standardFontFamily, standardFontSize); 178 QFont standardFont = new QFont(standardFontFamily, standardFontSize);
178 standardFont = qVariantValue!(QFont)(settings.value("standardFont", standardFont)); 179 standardFont = qVariantValue!(QFont)(settings.value("standardFont", standardFont));
179 defaultSettings.setFontFamily(QWebSettings.StandardFont, standardFont.family()); 180 defaultSettings.setFontFamily(QWebSettings.StandardFont, standardFont.family());
180 defaultSettings.setFontSize(QWebSettings.DefaultFontSize, standardFont.pointSize()); 181 defaultSettings.setFontSize(QWebSettings.DefaultFontSize, standardFont.pointSize());
181 182
182 string fixedFontFamily = defaultSettings.fontFamily(QWebSettings.FixedFont); 183 string fixedFontFamily = defaultSettings.fontFamily(QWebSettings.FixedFont);