bool IndicesList::addDefault(docstring const & n) { if (findShortcut(from_ascii("idx")) != 0) // we already have a default return false; return add(n, from_ascii("idx")); }
bool IndicesList::add(docstring const & n, docstring const & s) { bool added = false; size_t i = 0; while (true) { size_t const j = n.find_first_of(separator_, i); docstring name; if (j == docstring::npos) name = n.substr(i); else name = n.substr(i, j - i); // Is this name already in the list? bool const already = find_if(list.begin(), list.end(), IndexNamesEqual(name)) != list.end(); if (!already) { added = true; Index in; in.setIndex(name); docstring sc = s.empty() ? trim(lowercase(name.substr(0, 3))) : s; if (findShortcut(sc) != 0) { int i = 1; docstring scn = sc + convert<docstring>(i); while (findShortcut(scn) != 0) { ++i; scn = sc + convert<docstring>(i); } in.setShortcut(scn); } else in.setShortcut(sc); list.push_back(in); } if (j == docstring::npos) break; i = j + 1; } return added; }
ExternalBrowse::ExternalBrowse(qint32 lid, QWidget *parent) : QMdiSubWindow(parent) { setAttribute(Qt::WA_QuitOnClose, false); this->setWindowTitle(tr("NixNote")); setWindowIcon(global.getIconResource(":windowIcon")); browser = new NBrowserWindow(this); setWidget(browser); // Setup shortcuts focusTitleShortcut = new QShortcut(this); focusTitleShortcut->setContext(Qt::WidgetShortcut); this->setupShortcut(focusTitleShortcut, "Focus_Title"); connect(focusTitleShortcut, SIGNAL(activated()), &browser->noteTitle, SLOT(setFocus())); focusNoteShortcut = new QShortcut(this); focusNoteShortcut->setContext(Qt::WidgetShortcut); this->setupShortcut(focusNoteShortcut, "Focus_Note"); connect(focusNoteShortcut, SIGNAL(activated()), browser->editor, SLOT(setFocus())); fileSaveShortcut = new QShortcut(this); fileSaveShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusNoteShortcut, "File_Save_Content"); connect(fileSaveShortcut, SIGNAL(activated()), browser, SLOT(saveNoteContent())); focusTagShortcut = new QShortcut(this); focusTagShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusTagShortcut, "Focus_Tag"); connect(focusTagShortcut, SIGNAL(activated()), browser, SLOT(newTagFocusShortcut())); focusUrlShortcut = new QShortcut(this); focusUrlShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusUrlShortcut, "Focus_Url"); connect(focusUrlShortcut, SIGNAL(activated()), browser, SLOT(urlFocusShortcut())); focusAuthorShortcut = new QShortcut(this); focusAuthorShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusAuthorShortcut, "Focus_Author"); connect(focusAuthorShortcut, SIGNAL(activated()), browser, SLOT(authorFocusShortcut())); focusNotebookShortcut = new QShortcut(this); focusNotebookShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusNotebookShortcut, "Focus_Notebook"); connect(focusNotebookShortcut, SIGNAL(activated()), browser, SLOT(notebookFocusShortcut())); focusFontShortcut = new QShortcut(this); focusFontShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusFontShortcut, "Focus_Font"); connect(focusFontShortcut, SIGNAL(activated()), browser, SLOT(fontFocusShortcut())); focusFontSizeShortcut = new QShortcut(this); focusFontSizeShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(focusFontSizeShortcut, "Focus_Font_Size"); connect(focusFontSizeShortcut, SIGNAL(activated()), browser, SLOT(fontSizeFocusShortcut())); findShortcut = new QShortcut(this); findShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(findShortcut, "Edit_Search_Find"); connect(findShortcut, SIGNAL(activated()), browser, SLOT(findShortcut())); findReplaceShortcut = new QShortcut(this); findReplaceShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(findReplaceShortcut, "Edit_Search_Find_Replace"); connect(findReplaceShortcut, SIGNAL(activated()), browser, SLOT(findReplaceShortcut())); findNextShortcut = new QShortcut(this); findNextShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(findNextShortcut, "Edit_Search_Find_Next"); connect(findNextShortcut, SIGNAL(activated()), browser, SLOT(findNextShortcut())); findPrevShortcut = new QShortcut(this); findPrevShortcut->setContext(Qt::WidgetWithChildrenShortcut); this->setupShortcut(findPrevShortcut, "Edit_Search_Find_Prev"); connect(findPrevShortcut, SIGNAL(activated()), browser, SLOT(findPrevShortcut())); // Load actual note browser->setContent(lid); }