void viewport_add_controls( t_viewport *viewport) { t_context *C = ctx_get(); scene_add_ref(C->scene,"struct_ref","viewport","width",&viewport->width,viewport); scene_add_ref(C->scene,"struct_ref","viewport","height",&viewport->height,viewport); scene_add_ref(C->scene,"struct_ref","viewport","x",&viewport->x,viewport); scene_add_ref(C->scene,"struct_ref","viewport","y",&viewport->y,viewport); scene_add_ref(C->scene,"struct_ref","viewport","fullscreen",&viewport->fullscreen,viewport); scene_add_ref(C->scene,"struct_ref","viewport","show_outline",&viewport->show_outline,viewport); t_block *block = add_block_block( C, "viewport_controls"); viewport->controls = block; set_draw_plug = 0; block->pos[0] = 0; block->pos[1] = 1; add_brick_slider_int( C, block, "width", &viewport->width,NULL); add_brick_slider_int( C, block, "height", &viewport->height,NULL); add_brick_slider_int( C, block, "x", &viewport->x,NULL); add_brick_slider_int( C, block, "y", &viewport->y,NULL); add_brick_switch( C, block, "fullscreen", &viewport->fullscreen, NULL); add_brick_switch( C, block, "outline", &viewport->show_outline, NULL); viewport_add_trigger( C, viewport, "A4", op_viewport_set_dimensions); viewport_add_trigger( C, viewport, "center", op_viewport_center); viewport_add_trigger( C, viewport, "full height", op_viewport_full_height); set_draw_plug = 1; }
t_block *glint_makemenu_view( t_context *C) { t_block *block = add_menu_block( C, "menu_view"); add_brick_slider_int(C,block,"win width",&C->app->window->width_def,op_window); add_brick_slider_int(C,block,"win height",&C->app->window->height_def,op_window); add_brick_slider_int(C,block,"vp width",&C->app->window->viewport_width,NULL); add_brick_switch(C,block,"viewport controls",&opt_viewport_show_controls, NULL); return block; }
t_node *add_part_slider_int_positive(t_context *C,t_block *block,const char *name,void *data_target) { t_node *node=add_brick_slider_int(C,block,name,data_target,op_slider_positive); t_brick *brick = ( t_brick *) node->data; brick->brick_state.draw_outline=0; return node; }
t_node *add_brick_slider_int_even_positive_strict( t_context *C, t_block *block, const char *name, void *data_target) { t_node *node = add_brick_slider_int( C, block, name, data_target,NULL); t_brick *brick = node->data; brick->act = op_slider_even_positive_strict; return node; }
t_node *add_brick_slider_add_bricks(t_context *C,t_block *block,const char *name,int offset,void *data_target) { t_node *node = add_brick_slider_int( C, block, name, data_target,NULL); t_brick *brick = ( t_brick *) node->data; brick->act = _op_brick_add; brick->var.offset = offset; return node; }
t_block *glint_makemenu_ui( t_context *C) { t_block *block = add_menu_block( C, "menu_ui"); add_brick_switch(C,block,"realtime",&C->ui->realtime, NULL); add_brick_switch(C,block,"update links",&C->ui->update_links, NULL); add_brick_switch(C,block,"fixed menu",&C->ui->fixed_menu, NULL); add_brick_switch(C,block,"selection",&C->ui->object_selection, NULL); add_brick_switch(C,block,"bitmap font",&C->ui->use_bitmap_font, NULL); add_brick_switch(C,block,"show states",&C->ui->show_states, NULL); add_brick_switch(C,block,"show step",&C->ui->show_step, NULL); add_brick_switch(C,block,"show brick step",&C->ui->show_brick_step, NULL); add_brick_switch(C,block,"video build",&C->app->video_build, NULL); add_brick_slider_int(C,block,"video offset",&C->app->video_offset,NULL); add_brick_slider_int(C,block,"mouse size",&C->ui->mouse_size,NULL); add_brick_switch(C,block,"show mouse",&C->ui->show_mouse_rec, NULL); add_brick_switch(C,block,"draw plug state",&C->ui->show_plug_state, NULL); return block; }
t_node *add_part_slider_add( t_context *C, t_block *block, const char *name, void *data_target) { t_node *node = add_brick_slider_int( C, block, name, data_target,NULL); t_brick *brick = ( t_brick *) node->data; brick->brick_state.draw_outline = 0; brick->plug_out.state.flow_out = 0; brick->plug_out.state.open_out = 0; brick->plug_in.state.open_in = 0; brick->plug_in.state.flow_in = 0; return node; }
t_node *make_menu_view(void) { t_context *C=ctx_get(); t_node *menu=block_make("menu_view","menu"); t_block *block=menu->data; add_brick_slider_int_custom(C,block,"win width",&C->app->window->width,op_window); add_brick_slider_int_custom(C,block,"win height",&C->app->window->height,op_window); add_brick_slider_int(C,block,"vp width",&C->app->window->viewport_width); return menu; }
t_node *make_menu_skt(void) { t_context *C=ctx_get(); t_node *menu=block_make("menu_sketch","menu"); t_block *block=menu->data; add_brick_slider_int(C,block,"line width",&C->skt->line_width); add_brick_slider_float(C,block,"point size",&C->skt->point_size); add_brick_switch(C,block,"with scale",&C->event->sketch_with_scale); return menu; }
t_node *add_brick_operator(t_context *C,t_block *block,const char *name) { t_node *node_brick=add_brick_slider_int(C,block,name,NULL,NULL); t_brick *brick = ( t_brick *) node_brick->data; brick->brick_state.draw_name=1; brick->brick_state.draw_outline=0; // PLUG set_plug_option(brick); return node_brick; }
t_node *add_brick_int(t_context *C,t_block *block,const char *name,void *data_target) { void *ptr=add_brick_data(dt_int,data_target); // NEW BRICK t_node *node_brick=add_brick_slider_int(C,block,name,ptr,NULL); t_brick *brick = ( t_brick *) node_brick->data; // ACTION brick->exe=op_int; // PLUG set_plug_option(brick); return node_brick; }
t_node *add_slider_int_custom(t_context *C,const char *name,void *target_data,void*(* f)(t_brick *b)) { // NEW BLOCK t_node *node_block = add_block(C,name); t_block *block = ( t_block *) node_block->data; // NEW BRICK t_node *node_brick=add_brick_slider_int(C,block,name,target_data,NULL); t_brick *brick = ( t_brick *) node_brick->data; // SET ACTION brick->exe=f; brick->brick_state.is_versatil=1; return node_block; }