Back to index

texmacs  1.0.7.15
button_widget.hpp
Go to the documentation of this file.
00001 
00002 /******************************************************************************
00003 * MODULE     : button_widget.hpp
00004 * DESCRIPTION: Buttons
00005 * COPYRIGHT  : (C) 1999  Joris van der Hoeven
00006 *******************************************************************************
00007 * This software falls under the GNU general public license version 3 or later.
00008 * It comes WITHOUT ANY WARRANTY WHATSOEVER. For details, see the file LICENSE
00009 * in the root directory or <http://www.gnu.org/licenses/gpl-3.0.html>.
00010 ******************************************************************************/
00011 
00012 #ifndef BUTTON_WIDGET_H
00013 #define BUTTON_WIDGET_H
00014 #include "Widkit/attribute_widget.hpp"
00015 
00016 /******************************************************************************
00017 * Abstract button_widgets
00018 ******************************************************************************/
00019 
00020 class button_widget_rep: public attribute_widget_rep {
00021 protected:
00022   SI     X1, Y1, X2, Y2;
00023   SI     extra_left;
00024   SI     extra_right;
00025   bool   rflag;
00026   int    style;
00027   bool   button_flag;
00028   bool   enabled;
00029   bool   centered;
00030   bool   has_pull_down;
00031 
00032 public:
00033   bool   status;
00034   bool   inside;
00035 
00036   button_widget_rep (wk_widget w, bool rflag=false, int style= 0);
00037   button_widget_rep (wk_widget lw, wk_widget rw, int style= 0);
00038   button_widget_rep (wk_widget lw, wk_widget cw, wk_widget rw, int style= 0);
00039   operator tree ();
00040 
00041   void handle_get_size (get_size_event ev);
00042   void handle_position (position_event ev);
00043   void handle_repaint (repaint_event ev);
00044   void handle_get_coord2 (get_coord2_event ev);
00045   void handle_set_coord2 (set_coord2_event ev);
00046 };
00047 
00048 #endif // defined BUTTON_WIDGET_H