00001 //=========================================================================== 00002 //= jed_btn.h Enero de 1999 = 00003 //=-------------------------------------------------------------------------= 00004 //= Definicion de GUI_BOTONERAs y GUI_SUB_BOTONERAs. = 00005 //=-------------------------------------------------------------------------= 00006 //= ADVERTENCIA: ESTE SOFTWARE NO ESTA CONCEBIDO NI DISENNADO PARA EL USO = 00007 //= EN EQUIPO DE CONTROL EN LINEA EN ENTORNOS PELIGROSOS QUE REQUIERAN UN = 00008 //= DESEMPENNO LIBRE DE FALLAS, COMO LA OPERACION DE PLANTAS NUCLEARES, = 00009 //= SISTEMAS DE NAVEGACION O COMUNICACION EN AVIONES, TRAFICO AEREO, = 00010 //= EQUIPO MEDICO DEL CUAL DEPENDAN VIDAS HUMANAS O SISTEMAS DE ARMAMENTO, = 00011 //= EN LOS CUALES UNA FALLA EN EL SOFTWARE PUEDA IMPLICAR DIRECTAMENTE LA = 00012 //= MUERTE, DANNOS PERSONALES O DANNOS FISICOS Y/O AMBIENTALES GRAVES = 00013 //= ("ACTIVIDADES DE ALGO RIESGO"). = 00014 //=-------------------------------------------------------------------------= 00015 //= Autor original: Oscar J. Chavarro G. A.K.A. JEDILINK. Copyright (c), = 00016 //= 1997 - 2003, oscarchavarro@hotmail.com = 00017 //= AQUYNZA es software libre, y se rige bajo los terminos de la licencia = 00018 //= LGPL de GNU (http://www.gnu.org). Para mayor informacion respecto a la = 00019 //= licencia de uso, consulte el archivo ./doc/LICENCIA en la distribucion. = 00020 //=========================================================================== 00021 00022 #ifndef __JED_BUTTON__ 00023 #define __JED_BUTTON__ 00024 00025 #include "jed_defs.h" 00026 #include "toolkits/util/parsero.h" 00027 00028 #ifdef MOTIF_ENABLED 00029 #include <Xm/Xm.h> 00030 #endif 00031 00032 class GUI_CONSTANTE_ENTERA; 00033 class GUI_COMANDO; 00034 00035 enum ENUM_ESTILOS_DE_GRUPO_DE_BOTONES { 00036 EGB_DEFAULT = 0x00, 00037 EGB_VERTICAL = 0x01, 00038 EGB_CON_SEPARADOR = 0x02, 00039 EGB_CON_TITULO = 0x04, 00040 EGB_ACTIVABLE = 0x08 00041 }; 00042 00043 class GUI_SUB_BOTONERA { 00044 private: 00045 LISTA <GUI_CONSTANTE_ENTERA *> *Tabla_idcs; 00046 LISTA <GUI_COMANDO *> *Lista_comandos; 00047 LISTA <GUI_COMANDO *> botones; 00048 LISTA <int *> idcs; 00049 char *nombre; 00050 public: 00051 GUI_SUB_BOTONERA(LISTA <GUI_CONSTANTE_ENTERA *> *tabla_constantes, 00052 LISTA <GUI_COMANDO *> *Comandos); 00053 00054 BOOLEAN leer(TOKENIZADOR *Sabiondo); 00055 void imprimir(void); 00056 00057 #ifdef MOTIF_ENABLED 00058 Widget crear_motif(Widget padre, BYTE estilo, int botones_por_fila); 00059 #endif 00060 }; 00061 00062 class GUI_BOTONERA { 00063 private: 00064 LISTA <GUI_SUB_BOTONERA *> lista_grupos; 00065 LISTA <GUI_CONSTANTE_ENTERA *> *Tabla_idcs; 00066 LISTA <GUI_COMANDO *> *Lista_comandos; 00067 char *_nombre; 00068 BYTE estilo; 00069 int botones_por_fila; 00070 00071 BOOLEAN leer_estilo(TOKENIZADOR *Sabiondo); 00072 public: 00073 GUI_BOTONERA(LISTA <GUI_CONSTANTE_ENTERA *> *tabla_constantes, 00074 LISTA <GUI_COMANDO *> *Comandos); 00075 00076 char *nombre(void); 00077 BOOLEAN leer(TOKENIZADOR *Sabiondo); 00078 void imprimir(void); 00079 00080 #ifdef MOTIF_ENABLED 00081 Widget crear_motif(Widget padre); 00082 #endif 00083 00084 }; 00085 00086 #ifndef VEL_ROSITA 00087 #include "framework/gui/jed_gui.h" 00088 #endif 00089 00090 #endif // __JED_BUTTON__ 00091 00092 //=========================================================================== 00093 //= EOF = 00094 //=========================================================================== 00095