|
|
|
@ -155,6 +155,8 @@ class Browser: public QMainWindow, protected Ui::Browser { |
|
|
|
|
actionAddBookmark, SLOT(setDisabled(bool)))); |
|
|
|
|
assert(connect(_editbookmarks.get(), SIGNAL(endEdit(bool)), |
|
|
|
|
actionAddBookmark, SLOT(setEnabled(bool)))); |
|
|
|
|
assert(connect(_editbookmarks.get(), SIGNAL(accepted()), |
|
|
|
|
SLOT(saveBookmarks()))); |
|
|
|
|
} else { |
|
|
|
|
QLineEdit* label(new QLineEdit(_toolbar)); |
|
|
|
|
_url = label; |
|
|
|
@ -596,6 +598,7 @@ class Browser: public QMainWindow, protected Ui::Browser { |
|
|
|
|
QAction* a(_bookmarks->addAction(url->currentText())); |
|
|
|
|
a->setData(url->currentText()); |
|
|
|
|
connect(a, SIGNAL(triggered(bool)), SLOT(loadFromHistory())); |
|
|
|
|
saveBookmarks(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -858,13 +861,18 @@ class Browser: public QMainWindow, protected Ui::Browser { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void saveBookmarks() { |
|
|
|
|
LOG<<"Saving Bookmarks ..."; |
|
|
|
|
QStringList urls; |
|
|
|
|
if (qobject_cast<QComboBox*>(_url)) |
|
|
|
|
for (int i(0); i<qobject_cast<QComboBox*>(_url)->count(); ++i) |
|
|
|
|
urls<<qobject_cast<QComboBox*>(_url)->itemText(i); |
|
|
|
|
if (!(_bookmarkfile.writeable() && _bookmarkfile.write(urls)) |
|
|
|
|
&& _settings()) |
|
|
|
|
if (_bookmarkfile.writeable()) { |
|
|
|
|
LOG<<"write to bookmark file"; |
|
|
|
|
_bookmarkfile.write(urls); |
|
|
|
|
} else if (_settings()) { |
|
|
|
|
LOG<<"write to settings"; |
|
|
|
|
_settings()->setValue("Window/Urls", urls); |
|
|
|
|
} else LOG<<"bookmarks not saved"; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void loadWin() { |
|
|
|
@ -885,9 +893,15 @@ class Browser: public QMainWindow, protected Ui::Browser { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void loadBookmarks() { |
|
|
|
|
QStringList urls(_bookmarkfile.readable() |
|
|
|
|
?_bookmarkfile.read() |
|
|
|
|
:_settings()->value("Window/Urls").toStringList()); |
|
|
|
|
LOG<<"Loading Bookmarks ..."; |
|
|
|
|
QStringList urls; |
|
|
|
|
if (_bookmarkfile.readable()) { |
|
|
|
|
LOG<<"load from file"; |
|
|
|
|
urls = _bookmarkfile.read(); |
|
|
|
|
} else if (_settings()) { |
|
|
|
|
LOG<<"load from settings"; |
|
|
|
|
urls = _settings()->value("Window/Urls").toStringList(); |
|
|
|
|
} |
|
|
|
|
if (qobject_cast<QComboBox*>(_url)) { |
|
|
|
|
qobject_cast<QComboBox*>(_url)->clear(); |
|
|
|
|
qobject_cast<QComboBox*>(_url)->addItems(urls); |
|
|
|
|