Example #1
0
 //*************************************************************
 // This function is called when a user selects something
 // within this tree.  It also emits a signal that will
 // be picked up by the main nixnote program.
 //*************************************************************
 void LineEdit::buildSelection() {
     QLOG_TRACE() << "Inside LineEdit::buildSelection()";
     savedText = text().trimmed();

     // First, find out if we're already viewing history.  If we are we
     // chop off the end of the history & start a new one
     if (global.filterPosition+1 < global.filterCriteria.size()) {
         while (global.filterPosition+1 < global.filterCriteria.size())
             global.filterCriteria.removeLast();
     }

     filterPosition++;
     FilterCriteria *newFilter = new FilterCriteria();
     global.filterCriteria.push_back(newFilter);
     FilterCriteria *oldFilter = global.filterCriteria[global.filterPosition];
     global.filterPosition++;

     newFilter->setSearchString(text());
     newFilter->resetNotebook = true;
     newFilter->resetTags = true;
     newFilter->resetAttribute = true;
     newFilter->resetFavorite = true;
     newFilter->resetDeletedOnly = true;
     newFilter->resetSavedSearch = true;
     QList<qint32> oldLids;
     oldFilter->getSelectedNotes(oldLids);
     newFilter->setSelectedNotes(oldLids);
     newFilter->setLid(oldFilter->getLid());

     emit updateSelectionRequested();

     QLOG_TRACE() << "Leaving LineEdit::buildSelection()";
 }
Example #2
0
// Open a selected note.  This is not done via the context menu.
void NTableView::openSelectedLids(bool newWindow) {

    QList<qint32> lids;
    getSelectedLids(lids);
    if (lids.size() == 0)
        return;

    // First, find out if we're already viewing history.  If we are we
    // chop off the end of the history & start a new one
    if (global.filterPosition+1 < global.filterCriteria.size()) {
        while (global.filterPosition+1 < global.filterCriteria.size())
            delete global.filterCriteria.takeAt(global.filterCriteria.size()-1);
    }

    FilterCriteria *newFilter = new FilterCriteria();
    global.filterCriteria.at(global.filterPosition)->duplicate(*newFilter);

    newFilter->setSelectedNotes(lids);
    if (lids.size() > 0)
        newFilter->setLid(lids.at(0));
    global.filterCriteria.push_back(newFilter);
    global.filterPosition++;


    if (lids.size() > 0) {
        emit openNote(newWindow);
    }
}
Example #3
0
void FilterCriteria::duplicate(FilterCriteria &newFilter) {
    if (attributeIsSet)
        newFilter.setAttribute(*attribute);

    if (contentIsSet)
        newFilter.setContent(content);

    if (deletedOnlyIsSet)
        newFilter.setDeletedOnly(deletedOnly);

    if (selectedNotesIsSet)
        newFilter.setSelectedNotes(selectedNotes);

    if (tagsIsSet)
        newFilter.setTags(tags);

    if (savedSearch)
        newFilter.setSavedSearch(*savedSearch);

    if (searchStringIsSet)
        newFilter.setSearchString(searchString);

    if (attributeIsSet)
        newFilter.setAttribute(*attribute);

    newFilter.resetNotebook = resetNotebook;
    newFilter.resetTags = resetTags;
    newFilter.resetSavedSearch = resetSavedSearch;
    newFilter.resetAttribute = resetAttribute;
    newFilter.resetDeletedOnly = resetDeletedOnly;
    newFilter.resetContent = resetContent;
    newFilter.resetSearchString = resetSearchString;

}
Example #4
0
//*************************************************************
// This function is called when a user selects something
// within this tree.  It also emits a signal that will
// be picked up by the main nixnote program.
//*************************************************************
void NNotebookView::buildSelection() {
    QLOG_TRACE() << "Inside NNotebookView::buildSelection()";

    QList<QTreeWidgetItem*> selectedItems = this->selectedItems();
    if (selectedItems.size() > 0 && selectedItems[0]->data(0,Qt::UserRole).toString().startsWith("root"), Qt::CaseInsensitive)
        return;

    // First, find out if we're already viewing history.  If we are we
    // chop off the end of the history & start a new one
    if (global.filterPosition+1 < global.filterCriteria.size()) {
        while (global.filterPosition+1 < global.filterCriteria.size())
            global.filterCriteria.removeLast();
    }

    int currentCount = global.filterCriteria.size();
    FilterCriteria *newFilter = new FilterCriteria();
    if (currentCount > 0) {
        FilterCriteria *currentFilter = global.filterCriteria[currentCount-1];
        if (currentFilter->isLidSet()) {
            newFilter->setLid(currentFilter->getLid());
        }
        if (currentFilter->isSelectedNotesSet()) {
            QList<qint32> lids;
            currentFilter->getSelectedNotes(lids);
            newFilter->setSelectedNotes(lids);
        }
    }
    global.filterCriteria.push_back(newFilter);
    filterPosition++;
    global.filterPosition++;

    if (selectedItems.size() > 0) {
        newFilter->setNotebook(*(selectedItems[0]));
    }
    qint32 notebookLid = 0;
    if (selectedItems.size() > 0)
        notebookLid = selectedItems[0]->data(NAME_POSITION, Qt::UserRole).toInt();
    newFilter->resetAttribute = true;
    newFilter->resetDeletedOnly = true;
    newFilter->resetFavorite = true;
    newFilter->resetNotebook = true;
    newFilter->resetSavedSearch = true;
    newFilter->resetTags = true;
    newFilter->resetSearchString = true;

    emit updateSelectionRequested();
    emit notebookSelectionChanged(notebookLid);

    QLOG_TRACE() << "Leaving NNotebookView::buildSelection()";
}
Example #5
0
void FilterCriteria::duplicate(FilterCriteria &newFilter) {
    if (attributeIsSet)
        newFilter.setAttribute(*attribute);

    if (contentIsSet)
        newFilter.setLid(content);

    for (int i=0; i<selectedNotes.size(); i++) {
        newFilter.selectedNotes.append(selectedNotes[i]);
    }

    if (deletedOnlyIsSet)
        newFilter.setDeletedOnly(deletedOnly);

    if (selectedNotesIsSet)
        newFilter.setSelectedNotes(selectedNotes);

    if (tagsIsSet)
        newFilter.setTags(tags);

    if (savedSearch)
        newFilter.setSavedSearch(*savedSearch);

    if (searchStringIsSet)
        newFilter.setSearchString(searchString);

    if (attributeIsSet)
        newFilter.setAttribute(*attribute);

    newFilter.resetNotebook = resetNotebook;
    newFilter.resetTags = resetTags;
    newFilter.resetSavedSearch = resetSavedSearch;
    newFilter.resetAttribute = resetAttribute;
    newFilter.resetDeletedOnly = resetDeletedOnly;
    newFilter.resetLid = resetLid;
    newFilter.resetSearchString = resetSearchString;
}
Example #6
0
// A user asked to open new notes via the context menu.
void NTableView::openNoteContextMenuTriggered() {
    QList<qint32> lids;
    getSelectedLids(lids);
    if (lids.size() == 0)
        return;

    // First, find out if we're already viewing history.  If we are we
    // chop off the end of the history & start a new one
    if (global.filterPosition+1 < global.filterCriteria.size()) {
        while (global.filterPosition+1 < global.filterCriteria.size())
            delete global.filterCriteria.takeAt(global.filterCriteria.size()-1);
    }

    for (int i=0; i<lids.size(); i++) {
        FilterCriteria *newFilter = new FilterCriteria();
        global.filterCriteria.at(global.filterPosition)->duplicate(*newFilter);

        newFilter->setSelectedNotes(lids);
        newFilter->setLid(lids.at(i));
        global.filterCriteria.push_back(newFilter);
        global.filterPosition++;
        emit openNote(true);
    }
}