00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef COLOR_FLTK_MENU_H__
00010 #define COLOR_FLTK_MENU_H__
00011
00012 #include "VMDFltkMenu.h"
00013
00014 class VMDApp;
00015 class Fl_Hold_Browser;
00016 class Fl_Value_Slider;
00017 class Fl_Button;
00018 class Fl_Choice;
00019
00021 class ColorscaleImage;
00022
00024 class ColorFltkMenu : public VMDFltkMenu {
00025 public:
00026 ColorFltkMenu(VMDApp *);
00027 void update_scaleimage();
00028
00029 private:
00031 void reset_color_categories();
00032
00034 void reset_color_names();
00035
00037 void reset_color_scale();
00038
00042 void update_chosen_color();
00043
00045 void update_color_definition();
00046
00047 void make_window();
00048 Fl_Hold_Browser *categorybrowser;
00049 Fl_Hold_Browser *itembrowser;
00050 Fl_Hold_Browser *colorbrowser;
00051 Fl_Hold_Browser *colordefbrowser;
00052 Fl_Value_Slider *redscale;
00053 Fl_Value_Slider *greenscale;
00054 Fl_Value_Slider *bluescale;
00055 Fl_Button *grayscalebutton;
00056 Fl_Button *defaultbutton;
00057 Fl_Choice *scalemethod;
00058 Fl_Value_Slider *offsetvalue;
00059 Fl_Value_Slider *midpointvalue;
00060 ColorscaleImage *image;
00061
00062 static void category_cb(Fl_Widget *, void *);
00063 static void item_cb(Fl_Widget *, void *);
00064 static void color_cb(Fl_Widget *, void *);
00065 static void colordef_cb(Fl_Widget *, void *);
00066 static void rgb_cb(Fl_Widget *, void *);
00067 static void default_cb(Fl_Widget *, void *v);
00068 static void scalemethod_cb(Fl_Widget *, void *);
00069 static void scalesettings_cb(Fl_Widget *, void *);
00070
00071 protected:
00072 int act_on_command(int, Command *);
00073 };
00074 #endif