casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ViewerPreferences.qo.h
Go to the documentation of this file.
1 //# ViewerPreferences.qo.h: dialog which allows user to set and reset viewer preferences
2 //# Copyright (C) 2012
3 //# Associated Universities, Inc. Washington DC, USA.
4 //#
5 //# This library is free software; you can redistribute it and/or modify it
6 //# under the terms of the GNU Library General Public License as published by
7 //# the Free Software Foundation; either version 2 of the License, or (at your
8 //# option) any later version.
9 //#
10 //# This library is distributed in the hope that it will be useful, but WITHOUT
11 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 //# License for more details.
14 //#
15 //# You should have received a copy of the GNU Library General Public License
16 //# along with this library; if not, write to the Free Software Foundation,
17 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18 //#
19 //# Correspondence concerning AIPS++ should be addressed as follows:
20 //# Internet email: aips2-request@nrao.edu.
21 //# Postal address: AIPS++ Project Office
22 //# National Radio Astronomy Observatory
23 //# 520 Edgemont Road
24 //# Charlottesville, VA 22903-2475 USA
25 //#
26 //# $Id$
27 
28 #ifndef QTVIEWER_PREFERENCES_H_
29 #define QTVIEWER_PREFERENCES_H_
30 
31 #include <set>
32 #include <string>
33 #include <QSignalMapper>
34 #include <QDialog>
35 #include <display/QtViewer/ViewerPreferences.ui.h>
37 
38 namespace casa {
39  namespace viewer {
40 
41  class ViewerPreferences : public QDialog, protected Ui::ViewerPreferences {
42  Q_OBJECT
43  public:
44  ViewerPreferences( QWidget *parent=0 );
46 
47  protected slots:
48  void reset_edits( );
49  void cancel_edits( );
50  void apply_edits( );
51 
52  protected:
53  void showEvent( QShowEvent* );
54 
55  private:
56  typedef std::map<std::string,std::vector<std::string> > tokenized_type;
57  typedef std::map<std::string,std::set<std::string> > branch_count_type;
58 
59  void init( );
60 
61  // returns the number of configuration options...
62  int tokenize( tokenized_type & );
63  // returns the number of root nodes...
65  // calculate tree depth...
66  int find_tree_depth( bool, const tokenized_type &, const branch_count_type & );
67  static const char *init_state[];
68 
69  QSignalMapper *sigmap;
70  typedef std::map<std::string,QValidator*> validate_map_type;
72 
73  typedef std::map<std::string,std::string> rcvalues_type;
74  typedef std::map<std::string,std::string> tooltips_type;
75  typedef std::map<std::string,QLineEdit*> rcedits_type;
76  // tool tips for leaves & nodes...
78  // initial viewer default values...
80  // rc values to edit boxes...
82 
83  const int init_fields;
84  const int tip_offset;
85  const int role_offset;
86  const int default_offset;
87  const int validate_offset;
88 
89  // connection to rc file
91  };
92 
93  }
94 }
95 
96 #endif
97 
int find_tree_depth(bool, const tokenized_type &, const branch_count_type &)
calculate tree depth...
std::map< std::string, std::vector< std::string > > tokenized_type
std::map< std::string, QLineEdit * > rcedits_type
int tokenize(tokenized_type &)
returns the number of configuration options...
std::map< std::string, QValidator * > validate_map_type
rcvalues_type defaults
initial viewer default values...
ViewerPreferences(QWidget *parent=0)
int countbranches(const tokenized_type &, branch_count_type &)
returns the number of root nodes...
std::map< std::string, std::set< std::string > > branch_count_type
tooltips_type tips
tool tips for leaves &amp; nodes...
std::map< std::string, std::string > tooltips_type
casacore::Casarc & rc
connection to rc file
std::map< std::string, std::string > rcvalues_type
void showEvent(QShowEvent *)
rcedits_type edits
rc values to edit boxes...