2002-01-21 23:30:43 +03:00
|
|
|
/*=========================================================================
|
|
|
|
|
|
|
|
Program: Insight Segmentation & Registration Toolkit
|
|
|
|
Module: $RCSfile$
|
|
|
|
Language: C++
|
|
|
|
Date: $Date$
|
|
|
|
Version: $Revision$
|
|
|
|
|
|
|
|
Copyright (c) 2002 Insight Consortium. All rights reserved.
|
|
|
|
See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
|
|
|
|
|
|
|
|
This software is distributed WITHOUT ANY WARRANTY; without even
|
|
|
|
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
|
|
PURPOSE. See the above copyright notices for more information.
|
|
|
|
|
|
|
|
=========================================================================*/
|
2001-06-13 02:44:07 +04:00
|
|
|
|
|
|
|
#ifndef FLTKPropertyItemRow_h
|
|
|
|
#define FLTKPropertyItemRow_h
|
|
|
|
|
2001-06-11 02:23:54 +04:00
|
|
|
#include "FLTKPropertyList.h"
|
|
|
|
|
2001-06-14 22:32:20 +04:00
|
|
|
#include <FL/Fl_Tile.H>
|
|
|
|
#include <FL/Fl_Input.H>
|
2001-06-21 15:37:49 +04:00
|
|
|
#include <FL/Fl_Button.H>
|
2001-06-11 02:23:54 +04:00
|
|
|
|
2001-06-13 08:16:35 +04:00
|
|
|
|
2001-06-21 16:41:14 +04:00
|
|
|
class CMakeSetupGUIImplementation;
|
|
|
|
|
|
|
|
|
2001-06-11 02:23:54 +04:00
|
|
|
namespace fltk {
|
|
|
|
|
2001-06-13 02:44:07 +04:00
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
Class to manage a GUI row corresponding to a property
|
|
|
|
|
|
|
|
*/
|
|
|
|
class PropertyItemRow : public Fl_Tile
|
2001-06-11 02:23:54 +04:00
|
|
|
{
|
2001-06-13 02:44:07 +04:00
|
|
|
|
|
|
|
// Helper class for passing data to callbacks
|
2001-06-11 02:23:54 +04:00
|
|
|
struct ItemValue
|
|
|
|
{
|
|
|
|
PropertyItem * m_PropertyItem;
|
|
|
|
Fl_Input * m_InputText;
|
|
|
|
};
|
|
|
|
|
2001-06-13 02:44:07 +04:00
|
|
|
|
2001-06-11 02:23:54 +04:00
|
|
|
public:
|
2001-06-13 02:44:07 +04:00
|
|
|
|
2001-06-21 16:41:14 +04:00
|
|
|
PropertyItemRow( PropertyItem *);
|
2001-06-11 02:23:54 +04:00
|
|
|
~PropertyItemRow();
|
2001-06-21 16:41:14 +04:00
|
|
|
|
2001-06-11 02:23:54 +04:00
|
|
|
private:
|
2001-06-13 02:44:07 +04:00
|
|
|
|
2001-06-11 02:23:54 +04:00
|
|
|
PropertyItem * m_PropertyItem;
|
|
|
|
ItemValue * m_ItemValue;
|
2001-06-21 15:37:49 +04:00
|
|
|
Fl_Button * m_NameButton;
|
2001-06-13 02:44:07 +04:00
|
|
|
|
2001-06-21 16:41:14 +04:00
|
|
|
static CMakeSetupGUIImplementation * m_CMakeSetup;
|
2001-06-13 08:16:35 +04:00
|
|
|
|
2001-06-11 02:23:54 +04:00
|
|
|
static void CheckButtonCallback( Fl_Widget *, void *);
|
2001-06-21 15:37:49 +04:00
|
|
|
static void NameButtonCallback( Fl_Widget *, void *);
|
2001-06-11 02:23:54 +04:00
|
|
|
static void InputTextCallback( Fl_Widget *, void *);
|
|
|
|
static void BrowsePathCallback( Fl_Widget *, void *);
|
2001-06-13 08:16:35 +04:00
|
|
|
static void ColorSelectionCallback( Fl_Widget * widget, void * data);
|
2001-06-13 02:44:07 +04:00
|
|
|
|
2001-10-31 02:32:34 +03:00
|
|
|
|
|
|
|
static void FillCacheManagerFromCacheGUI( void );
|
2001-06-21 16:41:14 +04:00
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
static void SetCMakeSetupGUI( CMakeSetupGUIImplementation * );
|
2001-06-11 02:23:54 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
} // end namespace fltk
|
2001-06-13 02:44:07 +04:00
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|