void gg_dialog_init(gg_dialog_t *dialog, gg_widget_t *child, char *title, gg_dialog_t *parent, int flags) { gg_bin_init((gg_bin_t *) dialog, child); dialog->input = gg_dialog_input; dialog->destroy = gg_dialog_destroy; dialog->id = gg_dialog_get_class_id(); dialog->flags = flags; dialog->dialog_state = 0; dialog->parent_dialog = parent; dialog->modal = 0; if (title) { dialog->title = malloc(strlen(title) + 1); strcpy(dialog->title, title); } else dialog->title = NULL; child->get_requested_size(child, &dialog->width, &dialog->height); child->set_size(child, dialog->width, dialog->height); gg_dialog_set_position(dialog, SCREEN_WIDTH / 2, SCREEN_HEIGHT / 2, 0.5f, 0.5f); //dialog_reset_transition(1); }
void gg_scrollbox_init(gg_scrollbox_t *scrollbox, gg_widget_t *widget) { gg_bin_init((gg_bin_t *) scrollbox, widget); scrollbox->render = gg_scrollbox_render; scrollbox->input = gg_scrollbox_input; scrollbox->id = gg_scrollbox_get_class_id(); scrollbox->enabled = 1; scrollbox->grabbed=FALSE; scrollbox->width = widget->width+scrollbar_width; /* FIXME */ scrollbox->height = widget->height; /* FIXME */ }