anatomist 6.0.4
3D neuroimaging data viewer
qSelectFactory.h
Go to the documentation of this file.
1/* This software and supporting documentation are distributed by
2 * Institut Federatif de Recherche 49
3 * CEA/NeuroSpin, Batiment 145,
4 * 91191 Gif-sur-Yvette cedex
5 * France
6 *
7 * This software is governed by the CeCILL-B license under
8 * French law and abiding by the rules of distribution of free software.
9 * You can use, modify and/or redistribute the software under the
10 * terms of the CeCILL-B license as circulated by CEA, CNRS
11 * and INRIA at the following URL "http://www.cecill.info".
12 *
13 * As a counterpart to the access to the source code and rights to copy,
14 * modify and redistribute granted by the license, users are provided only
15 * with a limited warranty and the software's author, the holder of the
16 * economic rights, and the successive licensors have only limited
17 * liability.
18 *
19 * In this respect, the user's attention is drawn to the risks associated
20 * with loading, using, modifying and/or developing or reproducing the
21 * software by the user in light of its specific status of free software,
22 * that may mean that it is complicated to manipulate, and that also
23 * therefore means that it is reserved for developers and experienced
24 * professionals having in-depth computer knowledge. Users are therefore
25 * encouraged to load and test the software's suitability as regards their
26 * requirements in conditions enabling the security of their systems and/or
27 * data to be ensured and, more generally, to use and operate it in the
28 * same conditions as regards security.
29 *
30 * The fact that you are presently reading this means that you have had
31 * knowledge of the CeCILL-B license and that you accept its terms.
32 */
33
34
35#ifndef ANA_SELECTION_QSELECTFACTORY_H
36#define ANA_SELECTION_QSELECTFACTORY_H
37
38
41#include <qobject.h>
42#include <string>
43
44class QSelectMenu;
45class Graph;
46class Tree;
47
48
49namespace anatomist
50{
51
52 class AGraph;
53 class AGraphObject;
54}
55
56
60 : public QObject, public anatomist::SelectFactory
61{
62 Q_OBJECT
63public:
65 virtual ~QSelectFactory();
66
68 createSelectChooser( unsigned group,
69 const std::set<anatomist::AObject *> & objects ) const;
70 virtual void handleSelectionMenu( anatomist::AWindow* win, int x, int y,
71 const Tree* specific = 0 );
72 virtual void selectNeighbours( anatomist::AGraph* graph,
74 std::set<anatomist::AObject *>
75 & toselect ) const;
76 virtual void selectNodesWith( std::set<anatomist::AObject *> & tosel,
77 const Graph* gr, const std::string & attr,
78 const std::string & val );
79
80 // Restore the visibility of these virtual overloads
83public slots:
84 virtual void view( anatomist::AWindow* win );
85 virtual void unselect( anatomist::AWindow* win );
86 virtual void selectAll( anatomist::AWindow* win );
87 virtual void remove( anatomist::AWindow* win );
89 virtual void neighbours( anatomist::AWindow* win );
90 virtual void selAttrib( anatomist::AWindow* win );
91
92protected:
94
95private:
96};
97
98
99#endif
#define ANATOMIST_API
#define slots
QSelectMenu * _selMenu
virtual void selectNodesWith(std::set< anatomist::AObject * > &tosel, const Graph *gr, const std::string &attr, const std::string &val)
virtual void view(anatomist::AWindow *win)
virtual void remove(anatomist::AWindow *win)
virtual void neighbours(anatomist::AWindow *win)
virtual void unselect(anatomist::AWindow *win)
virtual void handleSelectionMenu(anatomist::AWindow *win, int x, int y, const Tree *specific=0)
draws / handles the selection menu (right click)
virtual anatomist::WSelectChooser * createSelectChooser(unsigned group, const std::set< anatomist::AObject * > &objects) const
Creates a selection choice window.
virtual void selectNeighbours(anatomist::AGraph *graph, anatomist::AGraphObject *go, std::set< anatomist::AObject * > &toselect) const
virtual void selectAll(anatomist::AWindow *win)
virtual void selAttrib(anatomist::AWindow *win)
virtual void removeFromThisWindow(anatomist::AWindow *win)
virtual ~QSelectFactory()
Selection menu widget.
Definition qSelMenu.h:97
Anatomist graph object: a list that manages destruction of its sub-elements.
Definition GraphObject.h:53
AGraph object class.
Definition Graph.h:57
Abstract base class Anatomist window.
Definition Window.h:59
Central selection center.
virtual void unselect(unsigned group, const std::set< AObject * > &obj) const
virtual void selectAll(AWindow *win, const HColor *col=0) const
Selects all selectable objects in a given window.
Base class for selection chooser windows.
Definition wSelChooser.h:51