a?adida b?squeda por directorios

falta resetear adecuadamente el modelo interno cuando se cambia de base de datos
falta hacer scroll automatico al hacer click en uno de los resultados de b?squeda
falta a?adir soporte a la b?squeda con nombres de c?mics
This commit is contained in:
Luis Ángel San Martín
2012-06-01 23:49:28 +02:00
parent c3ed550793
commit b551c9484a
6 changed files with 176 additions and 14 deletions

View File

@ -32,8 +32,8 @@ void LibraryWindow::setupUI()
packageManager = new PackageManager();
doModels();
doLayout();
doDialogs();
doLayout();
createActions();
createToolBars();
createMenus();
@ -72,7 +72,7 @@ void LibraryWindow::doLayout()
foldersView = new QTreeView;
//-------------------------------------------------------------------------
//CONFIG FLOW/COMICS-------------------------------------------------------
//CONFIG FOLDERS/COMICS-------------------------------------------------------
/*sVertical->setStretchFactor(0,1);
sVertical->setStretchFactor(1,0);
*/
@ -586,7 +586,9 @@ void LibraryWindow::loadCovers(const QModelIndex & mi)
{
if(foldersFilter->text()!="")
{
setFoldersFilter("");
//setFoldersFilter("");
row = static_cast<TreeItem *>(mi.internalPointer())->originalRow;
column = static_cast<TreeItem *>(mi.internalPointer())->originalColumn;
foldersFilter->clear();
}
unsigned long long int folderId = 0;
@ -991,6 +993,20 @@ void LibraryWindow::setFoldersFilter(QString filter)
foldersView->scrollTo(foldersView->currentIndex(),QAbstractItemView::PositionAtTop);
foldersView->collapseAll();
}*/
if(filter.isEmpty() && dm->isFilterEnabled())
{
dm->resetFilter();
foldersView->collapseAll();
foldersView->scrollTo(dm->index(row,column),QAbstractItemView::PositionAtTop);
}
else
{
if(!filter.isEmpty())
{
dm->setFilter(filter, false);
foldersView->expandAll();
}
}
}
void LibraryWindow::showProperties()