Blame synfig-studio/src/gui/widgets/widget_value.h

Nikita Kitaev 254e11
/* === S Y N F I G ========================================================= */
Nikita Kitaev 3c2324
/*!	\file widgets/widget_value.h
Nikita Kitaev 254e11
**	\brief Template File
Nikita Kitaev 254e11
**
Nikita Kitaev 254e11
**	$Id$
Nikita Kitaev 254e11
**
Nikita Kitaev 254e11
**	\legal
Nikita Kitaev 254e11
**	Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
Nikita Kitaev 254e11
**
Nikita Kitaev 254e11
**	This package is free software; you can redistribute it and/or
Nikita Kitaev 254e11
**	modify it under the terms of the GNU General Public License as
Nikita Kitaev 254e11
**	published by the Free Software Foundation; either version 2 of
Nikita Kitaev 254e11
**	the License, or (at your option) any later version.
Nikita Kitaev 254e11
**
Nikita Kitaev 254e11
**	This package is distributed in the hope that it will be useful,
Nikita Kitaev 254e11
**	but WITHOUT ANY WARRANTY; without even the implied warranty of
Nikita Kitaev 254e11
**	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Nikita Kitaev 254e11
**	General Public License for more details.
Nikita Kitaev 254e11
**	\endlegal
Nikita Kitaev 254e11
*/
Nikita Kitaev 254e11
/* ========================================================================= */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
/* === S T A R T =========================================================== */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
#ifndef __SYNFIG_GTKMM_VALUE_H
Nikita Kitaev 254e11
#define __SYNFIG_GTKMM_VALUE_H
Nikita Kitaev 254e11
Nikita Kitaev 254e11
/* === H E A D E R S ======================================================= */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
//#include <gtk gtk.h=""></gtk>
Nikita Kitaev 254e11
//#include <gtkmm arrow.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gtkmm image.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gdkmm pixbufloader.h=""></gdkmm>
Nikita Kitaev 254e11
//#include <gtkmm viewport.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm adjustment.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gtkmm scrolledwindow.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm table.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gtkmm statusbar.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm button.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm label.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gtkmm paned.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gtkmm treeview.h=""></gtkmm>
Nikita Kitaev 254e11
//#include <gtkmm treestore.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm box.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm spinbutton.h=""></gtkmm>
Nikita Kitaev 10b0de
//#include <gtkmm cellrenderer="" cellrenderer.h=""></gtkmm>
Nikita Kitaev 254e11
#include <gtkmm checkbutton.h=""></gtkmm>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
//#include <gtkmm colorselection.h=""></gtkmm>
96d8e3
#include <gtkmm combobox.h=""></gtkmm>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
//#include <synfig synfig.h=""></synfig>
Nikita Kitaev 254e11
#include <synfig paramdesc.h=""></synfig>
Nikita Kitaev dc5e35
#include <synfigapp value_desc.h=""></synfigapp>
Nikita Kitaev 254e11
#include <synfig value.h=""></synfig>
Nikita Kitaev 254e11
#include <synfig canvas.h=""></synfig>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
Nikita Kitaev 254e11
/* === M A C R O S ========================================================= */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
/* === T Y P E D E F S ===================================================== */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
/* === C L A S S E S & S T R U C T S ======================================= */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
namespace studio {
Nikita Kitaev 254e11
Nikita Kitaev dc5e35
class Widget_BoneChooser;
Nikita Kitaev 254e11
class Widget_ColorEdit;
Nikita Kitaev 254e11
class Widget_CanvasChooser;
Nikita Kitaev 254e11
class Widget_Enum;
Max May d35916
class Widget_Sublayer;
Nikita Kitaev 254e11
class Widget_Filename;
Nikita Kitaev 254e11
class Widget_Vector;
Nikita Kitaev 254e11
class Widget_Time;
Nikita Kitaev 254e11
class Widget_Distance;
Nikita Kitaev 254e11
Nikita Kitaev 254e11
class Widget_ValueBase : public Gtk::HBox
Nikita Kitaev 254e11
{
Nikita Kitaev 254e11
	Gtk::Label *label;
Nikita Kitaev 254e11
	synfig::ValueBase value;
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	Widget_Vector *vector_widget;
Nikita Kitaev 254e11
	Gtk::SpinButton *real_widget;
536d22
	Glib::RefPtr<gtk::adjustment> real_adjustment;</gtk::adjustment>
Nikita Kitaev 254e11
	Gtk::SpinButton *integer_widget;
536d22
	Glib::RefPtr<gtk::adjustment> integer_adjustment;</gtk::adjustment>
Nikita Kitaev 254e11
	Gtk::SpinButton *angle_widget;
536d22
	Glib::RefPtr<gtk::adjustment> angle_adjustment;</gtk::adjustment>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	Gtk::CheckButton *bool_widget;
Nikita Kitaev 254e11
	//Gtk::ColorSelection *color_widget;
Nikita Kitaev dc5e35
	Widget_BoneChooser *bone_widget;
Nikita Kitaev 254e11
	Widget_ColorEdit *color_widget;
Nikita Kitaev 254e11
	Widget_CanvasChooser *canvas_widget;
Nikita Kitaev 254e11
	Widget_Enum *enum_widget;
Max May d35916
	Widget_Sublayer *sublayer_widget;
Nikita Kitaev 254e11
	Widget_Filename *filename_widget;
Nikita Kitaev 254e11
	Widget_Time *time_widget;
Nikita Kitaev 254e11
	Gtk::Entry *string_widget;
Nikita Kitaev 254e11
	Widget_Distance *distance_widget;
Nikita Kitaev 254e11
Nikita Kitaev 254e11
//	std::string hint;
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	synfig::ParamDesc param_desc;
Nikita Kitaev dc5e35
	synfigapp::ValueDesc value_desc;
Carlos Lopez ae598c
	synfig::ParamDesc child_param_desc;
Nikita Kitaev 254e11
	etl::handle<synfig::canvas> canvas;</synfig::canvas>
Nikita Kitaev 254e11
	sigc::signal<void> signal_value_changed_;</void>
Nikita Kitaev 254e11
	sigc::signal<void> signal_activate_;</void>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
public:
Nikita Kitaev 254e11
	sigc::signal<void> &signal_value_changed() { return signal_value_changed_; }</void>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	void activate();
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	sigc::signal<void>& signal_activate() { return signal_activate_; }</void>
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	void set_value(const synfig::ValueBase &data);
Nikita Kitaev 254e11
	const synfig::ValueBase &get_value();
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	void on_grab_focus();
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	void set_param_desc(const synfig::ParamDesc &x) { param_desc=x; }
Nikita Kitaev 254e11
	const synfig::ParamDesc &get_param_desc() { return param_desc; }
Nikita Kitaev 254e11
Nikita Kitaev dc5e35
	void set_value_desc(const synfigapp::ValueDesc &x) { value_desc=x; }
Nikita Kitaev dc5e35
	const synfigapp::ValueDesc &get_value_desc() { return value_desc; }
Nikita Kitaev dc5e35
Carlos Lopez ae598c
	void set_child_param_desc(const synfig::ParamDesc &x) { child_param_desc=x; }
Carlos Lopez ae598c
	const synfig::ParamDesc &get_child_param_desc() { return child_param_desc; }
Carlos Lopez ae598c
Nikita Kitaev 254e11
	void set_sensitive(bool x);
Nikita Kitaev 254e11
Nikita Kitaev 254e11
	//void set_hint(std::string x) { hint=x; }
Nikita Kitaev 254e11
//	std::string get_hint() { return hint; }
Nikita Kitaev 254e11
2e482a
	void set_canvas(etl::handle<synfig::canvas> x);</synfig::canvas>
Nikita Kitaev 254e11
	void inside_cellrenderer();
Nikita Kitaev 254e11
	Widget_ValueBase();
Nikita Kitaev 254e11
	~Widget_ValueBase();
Nikita Kitaev 254e11
};
Nikita Kitaev 254e11
Nikita Kitaev 254e11
}; // END of namespace studio
Nikita Kitaev 254e11
Nikita Kitaev 254e11
/* === E N D =============================================================== */
Nikita Kitaev 254e11
Nikita Kitaev 254e11
#endif