Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages

MetaInfoVisualizer.h (Maintainer: Marc Sturm)

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // --------------------------------------------------------------------------
00005 //                   OpenMS Mass Spectrometry Framework
00006 // --------------------------------------------------------------------------
00007 //  Copyright (C) 2003-2008 -- Oliver Kohlbacher, Knut Reinert
00008 //
00009 //  This library is free software; you can redistribute it and/or
00010 //  modify it under the terms of the GNU Lesser General Public
00011 //  License as published by the Free Software Foundation; either
00012 //  version 2.1 of the License, or (at your option) any later version.
00013 //
00014 //  This library is distributed in the hope that it will be useful,
00015 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017 //  Lesser General Public License for more details.
00018 //
00019 //  You should have received a copy of the GNU Lesser General Public
00020 //  License along with this library; if not, write to the Free Software
00021 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00022 //
00023 // --------------------------------------------------------------------------
00024 // $Maintainer: Marc Sturm $
00025 // --------------------------------------------------------------------------
00026  
00027 #ifndef OPENMS_VISUAL_VISUALIZER_METAINFOVISUALIZER_H
00028 #define OPENMS_VISUAL_VISUALIZER_METAINFOVISUALIZER_H
00029 
00030 //OpenMS
00031 #include <OpenMS/VISUAL/VISUALIZER/BaseVisualizer.h>
00032 #include <OpenMS/METADATA/MetaInfoInterface.h>
00033 
00034 //STL
00035 #include <vector>
00036 #include <utility>
00037 
00038 class QLabel;
00039 class QLineEdit;
00040 class QAbstractButton;
00041 class QButtonGroup;
00042 
00043 namespace OpenMS {
00049   class MetaInfoVisualizer : public BaseVisualizer
00050   {
00051     Q_OBJECT
00052 
00053   public: 
00055     MetaInfoVisualizer(bool editable= FALSE, QWidget *parent =0);
00056     
00058     void load(MetaInfoInterface &m);
00059     
00060     
00061   private slots:
00063     void add_();
00065     void clear_();
00067     void remove_(int);
00069     void store_();
00071     void reject_();
00072 
00073   private: 
00075     void loadData_(UInt index); 
00076       
00080     QLineEdit* newkey_;
00081     QLineEdit* newvalue_;
00082     QLineEdit* newdescription_;
00084     
00088     std::vector< std::pair<UInt,QLineEdit*> > metainfoptr_;
00089     std::vector< std::pair<UInt,QLabel*> > metalabels_;
00090     std::vector< std::pair<UInt,QAbstractButton*> > metabuttons_;
00092     
00096     QPushButton* addbutton_;
00097     QPushButton* clearbutton_;
00098     QButtonGroup* buttongroup_;
00100     
00102     int nextrow_;
00103     
00105     QGridLayout* viewlayout_;   
00106     
00108     MetaInfoInterface* ptr_;
00110     MetaInfoInterface tempmeta_;
00111     
00113     std::vector<UInt> keys_;
00114     
00115   };
00116 
00117 
00118 }
00119 #endif

Generated Tue Apr 1 15:36:36 2008 -- using doxygen 1.5.4 OpenMS / TOPP 1.1