comparison demos/browser/cookiejar.d @ 80:85c59c4e5f19

remove QLatin1String and other fixes
author mandel
date Sun, 24 May 2009 15:25:41 +0000
parents 0654fc9bac95
children 5c8c9c5d9ee1
comparison
equal deleted inserted replaced
79:957f549cfc65 80:85c59c4e5f19
67 import autosaver; 67 import autosaver;
68 68
69 69
70 static const uint JAR_VERSION = 23; 70 static const uint JAR_VERSION = 23;
71 71
72 QDataStream operator<<(QDataStream stream, QNetworkCookie[] list) 72 QDataStream opShl(QDataStream stream, QNetworkCookie[] list)
73 { 73 {
74 stream << JAR_VERSION; 74 stream << JAR_VERSION;
75 stream << cast(uint) list.length; 75 stream << cast(uint) list.length;
76 for (int i = 0; i < list.length; ++i) 76 for (int i = 0; i < list.length; ++i)
77 stream << list[i].toRawForm(); 77 stream << list[i].toRawForm();
78 return stream; 78 return stream;
79 } 79 }
80 80
81 QDataStream operator>>(QDataStream stream, ref QNetworkCookie[] list) 81 QDataStream opShr(QDataStream stream, ref QNetworkCookie[] list)
82 { 82 {
83 list.clear(); 83 list.clear();
84 84
85 uint version_; 85 uint version_;
86 stream >> version_; 86 stream >> version_;
87 87
88 if (version != JAR_VERSION) 88 if (version_ != JAR_VERSION)
89 return stream; 89 return stream;
90 90
91 uint count; 91 uint count;
92 stream >> count; 92 stream >> count;
93 for(uint i = 0; i < count; ++i) 93 for(uint i = 0; i < count; ++i)
301 } 301 }
302 302
303 void loadSettings() 303 void loadSettings()
304 { 304 {
305 QSettings settings; 305 QSettings settings;
306 settings.beginGroup(QLatin1String("cookies")); 306 settings.beginGroup("cookies");
307 QByteArray value = settings.value(QLatin1String("acceptCookies"), 307 QByteArray value = settings.value("acceptCookies",
308 QLatin1String("AcceptOnlyFromSitesNavigatedTo")).toByteArray(); 308 "AcceptOnlyFromSitesNavigatedTo").toByteArray();
309 QMetaEnum acceptPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("AcceptPolicy")); 309 QMetaEnum acceptPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("AcceptPolicy"));
310 m_acceptCookies = acceptPolicyEnum.keyToValue(value) == -1 ? 310 m_acceptCookies = acceptPolicyEnum.keyToValue(value) == -1 ?
311 AcceptOnlyFromSitesNavigatedTo : 311 AcceptOnlyFromSitesNavigatedTo :
312 cast(AcceptPolicy) acceptPolicyEnum.keyToValue(value); 312 cast(AcceptPolicy) acceptPolicyEnum.keyToValue(value);
313 313
314 value = settings.value(QLatin1String("keepCookiesUntil"), QLatin1String("KeepUntilExpire")).toByteArray(); 314 value = settings.value("keepCookiesUntil", "KeepUntilExpire").toByteArray();
315 QMetaEnum keepPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("KeepPolicy")); 315 QMetaEnum keepPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("KeepPolicy"));
316 m_keepCookies = keepPolicyEnum.keyToValue(value) == -1 ? 316 m_keepCookies = keepPolicyEnum.keyToValue(value) == -1 ?
317 KeepUntilExpire : 317 KeepUntilExpire :
318 cast(KeepPolicy) keepPolicyEnum.keyToValue(value); 318 cast(KeepPolicy) keepPolicyEnum.keyToValue(value);
319 319
331 if (!m_loaded) 331 if (!m_loaded)
332 return; 332 return;
333 purgeOldCookies(); 333 purgeOldCookies();
334 string directory = QDesktopServices.storageLocation(QDesktopServices.DataLocation); 334 string directory = QDesktopServices.storageLocation(QDesktopServices.DataLocation);
335 if (directory.isEmpty()) 335 if (directory.isEmpty())
336 directory = QDir.homePath() + QLatin1String("/.") + QCoreApplication.applicationName(); 336 directory = QDir.homePath() ~ "/." ~ QCoreApplication.applicationName();
337 if (!QFile.exists(directory)) { 337 if (!QFile.exists(directory)) {
338 QDir dir; 338 QDir dir;
339 dir.mkpath(directory); 339 dir.mkpath(directory);
340 } 340 }
341 auto cookieSettings = new QSettings(directory + QLatin1String("/cookies.ini"), QSettings.IniFormat); 341 auto cookieSettings = new QSettings(directory ~ "/cookies.ini", QSettings.IniFormat);
342 QNetworkCookie[] cookies = allCookies(); 342 QNetworkCookie[] cookies = allCookies();
343 for (int i = cookies.count() - 1; i >= 0; --i) { 343 for (int i = cookies.count() - 1; i >= 0; --i) {
344 if (cookies[i].isSessionCookie()) 344 if (cookies[i].isSessionCookie())
345 cookies.removeAt(i); 345 cookies.removeAt(i);
346 } 346 }
347 cookieSettings.setValue(QLatin1String("cookies"), qVariantFromValue<QNetworkCookie[] >(cookies)); 347 cookieSettings.setValue("cookies", qVariantFromValue<QNetworkCookie[] >(cookies));
348 cookieSettings.beginGroup(QLatin1String("Exceptions")); 348 cookieSettings.beginGroup("Exceptions");
349 cookieSettings.setValue(QLatin1String("block"), m_exceptions_block); 349 cookieSettings.setValue("block", m_exceptions_block);
350 cookieSettings.setValue(QLatin1String("allow"), m_exceptions_allow); 350 cookieSettings.setValue("allow", m_exceptions_allow);
351 cookieSettings.setValue(QLatin1String("allowForSession"), m_exceptions_allowForSession); 351 cookieSettings.setValue("allowForSession", m_exceptions_allowForSession);
352 352
353 // save cookie settings 353 // save cookie settings
354 QSettings settings; 354 QSettings settings;
355 settings.beginGroup(QLatin1String("cookies")); 355 settings.beginGroup("cookies");
356 QMetaEnum acceptPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("AcceptPolicy")); 356 QMetaEnum acceptPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("AcceptPolicy"));
357 settings.setValue(QLatin1String("acceptCookies"), QLatin1String(acceptPolicyEnum.valueToKey(m_acceptCookies))); 357 settings.setValue("acceptCookies", acceptPolicyEnum.valueToKey(m_acceptCookies));
358 358
359 QMetaEnum keepPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("KeepPolicy")); 359 QMetaEnum keepPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("KeepPolicy"));
360 settings.setValue(QLatin1String("keepCookiesUntil"), QLatin1String(keepPolicyEnum.valueToKey(m_keepCookies))); 360 settings.setValue("keepCookiesUntil", keepPolicyEnum.valueToKey(m_keepCookies));
361 } 361 }
362 362
363 private: 363 private:
364 364
365 void purgeOldCookies() 365 void purgeOldCookies()
383 { 383 {
384 if (m_loaded) 384 if (m_loaded)
385 return; 385 return;
386 // load cookies and exceptions 386 // load cookies and exceptions
387 qRegisterMetaTypeStreamOperators!(QNetworkCookie[])("QNetworkCookie[]"); 387 qRegisterMetaTypeStreamOperators!(QNetworkCookie[])("QNetworkCookie[]");
388 auto cookieSettings = new QSettings(QDesktopServices.storageLocation(QDesktopServices.DataLocation) + QLatin1String("/cookies.ini"), QSettings.IniFormat); 388 auto cookieSettings = new QSettings(QDesktopServices.storageLocation(QDesktopServices.DataLocation) ~ "/cookies.ini", QSettings.IniFormat);
389 setAllCookies(cast(QNetworkCookie[]) (cookieSettings.value(QLatin1String("cookies")))); 389 setAllCookies(cast(QNetworkCookie[]) (cookieSettings.value("cookies")));
390 cookieSettings.beginGroup(QLatin1String("Exceptions")); 390 cookieSettings.beginGroup("Exceptions");
391 m_exceptions_block = cookieSettings.value(QLatin1String("block")).toStringList(); 391 m_exceptions_block = cookieSettings.value("block").toStringList();
392 m_exceptions_allow = cookieSettings.value(QLatin1String("allow")).toStringList(); 392 m_exceptions_allow = cookieSettings.value("allow").toStringList();
393 m_exceptions_allowForSession = cookieSettings.value(QLatin1String("allowForSession")).toStringList(); 393 m_exceptions_allowForSession = cookieSettings.value("allowForSession").toStringList();
394 qSort(m_exceptions_block.begin(), m_exceptions_block.end()); 394 qSort(m_exceptions_block.begin(), m_exceptions_block.end());
395 qSort(m_exceptions_allow.begin(), m_exceptions_allow.end()); 395 qSort(m_exceptions_allow.begin(), m_exceptions_allow.end());
396 qSort(m_exceptions_allowForSession.begin(), m_exceptions_allowForSession.end()); 396 qSort(m_exceptions_allowForSession.begin(), m_exceptions_allowForSession.end());
397 397
398 loadSettings(); 398 loadSettings();
569 cookiesTable.verticalHeader().setMinimumSectionSize(-1); 569 cookiesTable.verticalHeader().setMinimumSectionSize(-1);
570 for (int i = 0; i < model.columnCount(); ++i){ 570 for (int i = 0; i < model.columnCount(); ++i){
571 int header = cookiesTable.horizontalHeader().sectionSizeHint(i); 571 int header = cookiesTable.horizontalHeader().sectionSizeHint(i);
572 switch (i) { 572 switch (i) {
573 case 0: 573 case 0:
574 header = fm.width(QLatin1String("averagehost.domain.com")); 574 header = fm.width("averagehost.domain.com");
575 break; 575 break;
576 case 1: 576 case 1:
577 header = fm.width(QLatin1String("_session_id")); 577 header = fm.width("_session_id");
578 break; 578 break;
579 case 4: 579 case 4:
580 header = fm.width(QDateTime.currentDateTime().toString(Qt.LocalDate)); 580 header = fm.width(QDateTime.currentDateTime().toString(Qt.LocalDate));
581 break; 581 break;
582 } 582 }
583 int buffer = fm.width(QLatin1String("xx")); 583 int buffer = fm.width("xx");
584 header += buffer; 584 header += buffer;
585 cookiesTable.horizontalHeader().resizeSection(i, header); 585 cookiesTable.horizontalHeader().resizeSection(i, header);
586 } 586 }
587 cookiesTable.horizontalHeader().setStretchLastSection(true); 587 cookiesTable.horizontalHeader().setStretchLastSection(true);
588 } 588 }
765 exceptionTable.verticalHeader().setMinimumSectionSize(-1); 765 exceptionTable.verticalHeader().setMinimumSectionSize(-1);
766 for (int i = 0; i < m_exceptionsModel.columnCount(); ++i) { 766 for (int i = 0; i < m_exceptionsModel.columnCount(); ++i) {
767 int header = exceptionTable.horizontalHeader().sectionSizeHint(i); 767 int header = exceptionTable.horizontalHeader().sectionSizeHint(i);
768 switch (i) { 768 switch (i) {
769 case 0: 769 case 0:
770 header = fm.width(QLatin1String("averagebiglonghost.domain.com")); 770 header = fm.width("averagebiglonghost.domain.com");
771 break; 771 break;
772 case 1: 772 case 1:
773 header = fm.width(QLatin1String("Allow For Session")); 773 header = fm.width("Allow For Session");
774 break; 774 break;
775 } 775 }
776 int buffer = fm.width(QLatin1String("xx")); 776 int buffer = fm.width("xx");
777 header += buffer; 777 header += buffer;
778 exceptionTable.horizontalHeader().resizeSection(i, header); 778 exceptionTable.horizontalHeader().resizeSection(i, header);
779 } 779 }
780 } 780 }
781 781