Files
GoldenCheetah/src/SearchFilterBox.h
Mark Liversedge d0b009c922 Data Filter (Part 3 of 3)
Last part of the search/filter functionality;

* SearchBox now incorporates filter and search
  with a new widget. We can update this widget
  to include more fancy UI/Interactions without
  having to change the ride list or charts etc.

* Added search/filter widget to the relevant charts
  and screens; Metrics, TreeMap, CP, Histogram,
  Activity Log, Ride list (refactored out of MainWindow)

* Added namedsearches.xml and adding/selecting them
  from a drop down menu on the search box.

* Fixed some performance bugs related to duplicate
  signals and redraw/reprocessing. Also ensured that
  CLucene remains optional -- but means no search or
  filter functionality unless it is available.
2012-11-05 15:44:01 +00:00

53 lines
1.5 KiB
C++

/*
* Copyright (c) 2012 Mark Liversedge (liversedge@gmail.com)
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation; either version 2 of the License, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc., 51
* Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef _GC_SearchFilter_h
#define _GC_SearchFilter_h
#include "MainWindow.h"
#include "SearchBox.h" // for searchboxmode
class Lucene;
class DataFilter;
class SearchFilterBox : public QWidget
{
Q_OBJECT
public:
SearchFilterBox(QWidget *parent, MainWindow *main);
void setMode(SearchBox::SearchBoxMode x) { searchbox->setMode(x); }
QString filter();
void setFilter(QString); // filter:text or search:text
private slots:
signals:
void searchResults(QStringList); // what was search/filtered
void searchClear(); // we stopped search/filtering looking
private:
MainWindow *main;
Lucene *lucene;
DataFilter *datafilter;
SearchBox *searchbox;
};
#endif