SDK Multiplataforma en C logo

SDK Multiplataforma en C

Combo

❮ Anterior
Siguiente ❯

Cabecera

#include <gui/combo.h>


Funciones

Combo*combo_create (void)
voidcombo_OnFilter (...)
voidcombo_OnChange (...)
voidcombo_OnFocus (...)
voidcombo_OnSelect (...)
voidcombo_min_width (...)
voidcombo_text (...)
voidcombo_align (...)
voidcombo_passmode (...)
voidcombo_editable (...)
voidcombo_autoselect (...)
voidcombo_select (...)
voidcombo_tooltip (...)
voidcombo_color (...)
voidcombo_color_focus (...)
voidcombo_bgcolor (...)
voidcombo_bgcolor_focus (...)
voidcombo_phtext (...)
voidcombo_phcolor (...)
voidcombo_phstyle (...)
voidcombo_copy (...)
voidcombo_cut (...)
voidcombo_paste (...)
voidcombo_add_elem (...)
voidcombo_set_elem (...)
voidcombo_ins_elem (...)
voidcombo_del_elem (...)
voidcombo_clear (...)
uint32_tcombo_count (...)
voidcombo_list_height (...)
voidcombo_selected (...)
uint32_tcombo_get_selected (...)
const char_t*combo_get_text (...)

Los ComboBox son cajas de edición de texto con lista desplegable (Figura 1). Por tanto, combinan la funcionalidad de los controles Edit y PopUp. En ¡Hola PopUp y Combo! tienes un ejemplo de uso.

  • Utiliza combo_create parar crear un combo.
  • Utiliza combo_text para establecer el texto de edición.
  • Utiliza combo_color para establecer el color del texto.
  • Utiliza combo_bgcolor para establecer el color del fondo.
  • Utiliza combo_add_elem para añadir un elemento a la lista.
  • Captura de varios controles ComboBox en una ventana.
    Figura 1: Combos en Windows, macOS y Linux.
❮ Anterior
Siguiente ❯

combo_create ()

Crea un control combo.

Combo*
combo_create(void);

Retorna

El combo.


combo_OnFilter ()

Establece un manejador para filtrar el texto mientras se edita.

void
combo_OnFilter(Combo *combo,
               Listener *listener);
combo

El combo.

listener

Función callback que se llamará tras cada pulsación de tecla. En EvTextFilter de event_result se devolverá el texto filtrado.

Observaciones

Ver Filtrar textos y Eventos GUI.


combo_OnChange ()

Establece un manejador para detectar cuando el texto ha cambiado.

void
combo_OnChange(Combo *combo,
               Listener *listener);
combo

El combo.

listener

Función callback que se llamará cuando el control pierda el foco del teclado, lo que indicará el final de la edición.

Observaciones

Ver Validar textos y Eventos GUI.


combo_OnFocus ()

Establece un manejador para el foco del teclado.

void
combo_OnFocus(Combo *combo,
              Listener *listener);
combo

El combo.

listener

Función callback que se llamará cuando se reciba o se pierda el foco del teclado.

Observaciones

Ver Eventos GUI.


combo_OnSelect ()

Establece un manejador para la selección de un nuevo elemento.

void
combo_OnSelect(Combo *combo,
               Listener *listener);
1
2
3
4
5
6
7
static void i_OnSelect(App *app, Event *e)
{
    const EvButton *p = event_params(e, EvButton);
    do_something_onselect(app, p->index);
}
...
combo_OnSelect(combo, listener(app, i_OnSelect, App));
combo

El combo.

listener

Función callback que se llamará tras seleccionar un nuevo elemento de la lista.

Observaciones

Ver Eventos GUI.


combo_min_width ()

Establece el ancho mínimo del control.

void
combo_min_width(Combo *combo,
                const real32_t width);
combo

El combo.

width

El ancho mínimo.

Observaciones

El ancho por defecto de un Combo será 100px. Ese valor puede ser modificado por esta función.


combo_text ()

Establece el texto del control de edición.

void
combo_text(Combo *combo,
           const char_t *text);
combo

El combo.

text

Cadena C UTF8 terminada en carácter nulo '\0'.


combo_align ()

Establece la alineación del texto.

void
combo_align(Combo *combo,
            const align_t align);
combo

El combo.

align

La alineación.


combo_passmode ()

Activa el modo contraseña, que ocultará los caracteres tecleados.

void
combo_passmode(Combo *combo,
               const bool_t passmode);
combo

El combo.

passmode

Activa o desactiva el modo contraseña.


combo_editable ()

Activa o desactiva la edición en el control.

void
combo_editable(Combo *combo,
               const bool_t is_editable);
combo

El combo.

is_editable

TRUE permitirá editar el texto (por defecto).


combo_autoselect ()

Activa o desactiva la autoselección del texto.

void
combo_autoselect(Combo *combo,
                 const bool_t autoselect);
combo

El combo.

autoselect

TRUE el texto del control será totalmente seleccionado cuando reciba el foco. Por defecto es FALSE.

Observaciones

Ver Selección del texto.


combo_select ()

Selecciona texto.

void
combo_select(Combo *combo,
             const int32_t start,
             const int32_t end);
combo

El combo.

start

Posición del carácter inicial.

end

Posición del carácter final.

Observaciones

Ver Selección del texto.


combo_tooltip ()

Asigna un tooltip al control combo.

void
combo_tooltip(Combo *combo,
              const char_t *text);
combo

El combo.

text

Cadena C UTF8 terminada en carácter nulo '\0'.


combo_color ()

Establece el color del texto.

void
combo_color(Combo *combo,
            const color_t color);
combo

El combo.

color

El color del texto.

Observaciones

Los valores RGB puede que no sean del todo portables. Ver Colores.


combo_color_focus ()

Establece el color del texto, cuando el control tiene el foco del teclado.

void
combo_color_focus(Combo *combo,
                  const color_t color);
combo

El combo.

color

El color del texto.

Observaciones

Los valores RGB puede que no sean del todo portables. Ver Colores.


combo_bgcolor ()

Establece el color de fondo.

void
combo_bgcolor(Combo *combo,
              const color_t color);
combo

El combo.

color

El color de fondo.

Observaciones

Los valores RGB puede que no sean del todo portables. Ver Colores.


combo_bgcolor_focus ()

Establece el color de fondo, cuando el control tiene el foco del teclado.

void
combo_bgcolor_focus(Combo *combo,
                    const color_t color);
combo

El combo.

color

El color de fondo.

Observaciones

Los valores RGB puede que no sean del todo portables. Ver Colores.


combo_phtext ()

Establece un texto explicativo para cuando el control está en blanco (placeholder).

void
combo_phtext(Combo *combo,
             const char_t *text);
combo

El combo.

text

Cadena C UTF8 terminada en carácter nulo '\0'.


combo_phcolor ()

Establece el color del texto placeholder.

void
combo_phcolor(Combo *combo,
              const color_t color);
combo

El combo.

color

El color del texto.

Observaciones

Los valores RGB puede que no sean del todo portables. Ver Colores.


combo_phstyle ()

Establece el estilo de la fuente para el placeholder.

void
combo_phstyle(Combo *combo,
              const uint32_t fstyle);
combo

El combo.

fstyle

Combinación de valores de fstyle_t.


combo_copy ()

Copia al portapapeles el texto seleccionado.

void
combo_copy(const Combo *combo);
combo

El combo.

Observaciones

Ver Operaciones con el portapapeles.


combo_cut ()

Corta el texto seleccionado, copiándolo al portapapeles.

void
combo_cut(Combo *combo);
combo

El combo.

Observaciones

Ver Operaciones con el portapapeles.


combo_paste ()

Pega el texto del portapapeles en la posición del caret.

void
combo_paste(Combo *combo);
combo

El combo.

Observaciones

Ver Operaciones con el portapapeles.


combo_add_elem ()

Añade un nuevo elemento a la lista desplegable.

void
combo_add_elem(Combo *combo,
               const char_t *text,
               const Image *image);
combo

El combo.

text

El texto del elemento en UTF-8 o el identificador del recurso. Recursos.

image

Icono asociado al elemento o el identificador del recurso. Por cuestión de espacio, se escalará a un alto máximo de 16 píxeles. El control conservará una copia de la image. La imagen original debe ser destruida, a no ser que se obtuviese con image_from_resource.


combo_set_elem ()

Edita un elemento de la lista desplegable.

void
combo_set_elem(Combo *combo,
               const uint32_t index,
               const char_t *text,
               const Image *image);
combo

El combo.

index

El índice del elemento a sustituir.

text

El texto del elemento en UTF-8 o el identificador del recurso. Recursos.

image

Icono asociado al elemento o el identificador del recurso. Por cuestión de espacio, se escalará a un alto máximo de 16 píxeles.


combo_ins_elem ()

Inserta un elemento en la lista desplegable.

void
combo_ins_elem(Combo *combo,
               const uint32_t index,
               const char_t *text,
               const Image *image);
combo

El combo.

index

El índice del elemento a insertar.

text

El texto del elemento en UTF-8 o el identificador del recurso. Recursos.

image

Icono asociado al elemento o el identificador del recurso. Por cuestión de espacio, se escalará a un alto máximo de 16 píxeles.

Observaciones

Funciona igual que combo_add_elem, pero insertando en una posición arbitraria, en lugar de al final de la lista.


combo_del_elem ()

Elimina un elemento de la lista desplegable.

void
combo_del_elem(Combo *combo,
               const uint32_t index);
combo

El combo.

index

El índice del elemento a eliminar.


combo_clear ()

Elimina todos los elementos de la lista desplegable.

void
combo_clear(Combo *combo);
combo

El combo.


combo_count ()

Obtiene el número de elementos de la lista.

uint32_t
combo_count(const Combo *combo);
combo

El combo.

Retorna

El número de elementos.


combo_list_height ()

Establece el tamaño de la lista desplegable.

void
combo_list_height(Combo *combo,
                  const uint32_t elems);
combo

El combo.

elems

Número de elementos visibles. Si el control tiene más, aparecerá una barra de scroll.


combo_selected ()

Establece el elemento seleccionado del popup.

void
combo_selected(Combo *combo,
               const uint32_t index);
combo

El combo.

index

El elemento a seleccionar. Si pasamos UINT32_MAX se quita la selección.


combo_get_selected ()

Obtiene el elemento seleccionado del popup.

uint32_t
combo_get_selected(const Combo *combo);
combo

El combo.

Retorna

El elemento seleccionado.


combo_get_text ()

Obtiene el texto de un elemento del popup.

const char_t*
combo_get_text(const Combo *combo,
               const uint32_t index);
combo

El combo.

index

El índice del elemento.

Retorna

El texto del elemento.

❮ Anterior
Siguiente ❯