Example #1
0
t_node *make_menu_brick_add(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_brick_add","menu");

	t_node *menu_num=make_menu_num();
	add_brick_submenu(C,menu,menu_num,"number");

	t_node *menu_operators=make_menu_operators();
	add_brick_submenu(C,menu,menu_operators,"operators");

	t_node *menu_time=make_menu_time();
	add_brick_submenu(C,menu,menu_time,"time");
	
	t_node *menu_cam=make_menu_cam();
	add_brick_submenu(C,menu,menu_cam,"camera");

	t_node *menu_mouse=make_submenu_mouse();
	add_brick_submenu(C,menu,menu_mouse,"mouse");

	t_node *menu_node=make_menu_node();
	add_brick_submenu_contextual(C,menu,menu_node,"object",nt_object);

	return menu;
}
Example #2
0
t_node *add_block(t_context *C,const char *name)
{
	// Get Set
	t_set *set = get_current_set(C);

	// New Block
	t_node *node_block=block_make(name,"block");
	t_block *block = ( t_block *) node_block->data;

	// Draw Outline
	block->block_state.draw_outline = 1;

	// Add to Set
	set_block_push(set,block);

	// Set Block Pos

	if(current_frame != C->app->frame)
	{
		current_frame = C->app->frame;
		block_pos_offset = 0;
	}

	float p[2];
	ctx_get_mouse_pos(C,p);

	if( opt_op_use_random) vset3f(block->pos,p[0] * _rnd() ,p[1] * _rnd() ,0);
	else vset3f(block->pos,p[0],p[1]+block_pos_offset,0);

	return node_block;
}
Example #3
0
File: block.c Project: rvba/minuit
t_block *block_copy(t_block *block)
{
	t_context *C=ctx_get();
	scene_store(C->scene,1);

	t_node *clone_node = block_make(block->id.name,block->type);
	t_block *clone_block = clone_node->data;

	clone_block->block_state.draw_outline = block->block_state.draw_outline;

	_add_block(C,clone_block);

	vcp(clone_block->pos,block->pos);

	t_link *l;
	t_brick *b;

	for(l=block->bricks->first;l;l=l->next)
	{
		b=l->data;
		brick_copy(clone_block,b);
	}

	scene_store(C->scene,0);

	return clone_block;
}
Example #4
0
t_node *make_menu_node(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_brick_node","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"pos x",op_brick_add);
	add_brick_trigger(C,block,"pos y",op_brick_add);
	add_brick_trigger(C,block,"pos z",op_brick_add);

	add_brick_trigger(C,block,"rot x",op_brick_add);
	add_brick_trigger(C,block,"rot y",op_brick_add);
	add_brick_trigger(C,block,"rot z",op_brick_add);

	add_brick_trigger(C,block,"scl x",op_brick_add);
	add_brick_trigger(C,block,"scl y",op_brick_add);
	add_brick_trigger(C,block,"scl z",op_brick_add);

	add_brick_trigger(C,block,"red",op_brick_add);
	add_brick_trigger(C,block,"green",op_brick_add);
	add_brick_trigger(C,block,"blue",op_brick_add);
	add_brick_trigger(C,block,"alpha",op_brick_add);

	add_brick_trigger(C,block,"mesh",op_brick_add);

	return menu;
}
Example #5
0
t_block *block_clone(t_block *block)
{
	t_context *C=ctx_get();
	C->scene->store=1;

	t_node *clone_node=block_make(block->name,block->type);
	t_block *clone_block=clone_node->data;

	clone_block->state.draw_outline = block->state.draw_outline;

	_add_block(C,clone_block);

	t_link *l;
	t_brick *b;

	for(l=block->bricks->first;l;l=l->next)
	{
		b=l->data;
		brick_clone(clone_block,b);
	}

	C->scene->store=0;

	return clone_block;
}
Example #6
0
t_node *make_menu_brick_object(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_brick_object","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"delete",op_delete);
	
	return menu;
}
Example #7
0
t_node *make_menu_app(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_app","menu");
	t_block *block=menu->data;

	add_brick_switch(C,block,"loop",&C->app->loop);
	add_brick_switch(C,block,"rec save",&C->event->rec_save);

	return menu;
}
Example #8
0
t_node *make_menu_lst(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_lst","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"last?",op_brick_add);
	add_brick_trigger(C,block,"rewind",op_brick_add);

	return menu;
}
Example #9
0
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;
}
Example #10
0
t_block *add_default_menu(t_context *C, const char *name)
{
	t_node *menu_root = scene_get_node_by_type_name( C->scene, dt_block, "menu_mouse");
	t_block *block_root = ( t_block *) menu_root->data;

	t_node *menu = block_make(name,"menu");
	t_block *block = ( t_block *) menu->data;

	add_brick_submenu(C, block_root, block, name);

	return block;
}
Example #11
0
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;
}
Example #12
0
t_node *make_submenu_mouse(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_mouse","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"mouse_x",op_brick_add);
	add_brick_trigger(C,block,"mouse_y",op_brick_add);
	add_brick_trigger(C,block,"keyboard",op_brick_add);

	return menu;
}
Example #13
0
t_node *make_menu_time(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_time","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"sec",op_brick_add);
	add_brick_trigger(C,block,"msec",op_brick_add);
	add_brick_trigger(C,block,"frame",op_brick_add);
	add_brick_trigger(C,block,"timer",op_brick_add);

	return menu;
}
Example #14
0
t_node *make_menu_debug(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_debug","menu");
	t_block *block=menu->data;

	add_brick_switch(C,block,"show terminal",&C->ui->show_term);
	add_brick_switch(C,block,"debug mouse",&C->event->debug_mouse);
	add_brick_switch(C,block,"debug keyboard",&C->app->debug_keyboard);
	add_brick_switch(C,block,"debug select",&C->event->debug_select);

	return menu;
}
Example #15
0
t_node *make_menu_cam(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_cam","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"cam_pos_x",op_brick_add);
	add_brick_trigger(C,block,"cam_pos_y",op_brick_add);
	add_brick_trigger(C,block,"cam_pos_z",op_brick_add);
	add_brick_trigger(C,block,"cam_rot_xy",op_brick_add);
	add_brick_trigger(C,block,"cam_rot_z",op_brick_add);

	return menu;
}
Example #16
0
t_node *make_menu_logic(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_logic","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,">",op_brick_add);
	add_brick_trigger(C,block,"<",op_brick_add);
	add_brick_trigger(C,block,"=",op_brick_add);
	add_brick_trigger(C,block,"not",op_brick_add);
	add_brick_trigger(C,block,"and",op_brick_add);

	return menu;
}
Example #17
0
t_node *add_menu_process(void)
{
	t_context *C=ctx_get();
	t_node *menu_main=scene_node_get(C->scene,"block","menu_set");
	t_node *menu=block_make("menu_process","menu");
	t_block *block=menu->data;

	add_brick_switch(C,block,"debug process",&C->event->debug_process);
	add_brick_slider_float(C,block,"limit",&C->engine->global_limit);
	add_brick_slider_float(C,block,"freq",&C->engine->global_freq);
	add_brick_switch(C,block,"limit process",&C->engine->with_global_limit);

	add_brick_submenu(C,menu_main,menu,"process");

	return menu;
}
Example #18
0
t_node *make_menu_ops(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_logic","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"get",op_brick_add);
	add_brick_trigger(C,block,"clone",op_brick_add);
	add_brick_trigger(C,block,"pipe",op_brick_add);
	add_brick_trigger(C,block,"for",op_brick_add);
	add_brick_trigger(C,block,"vector",op_brick_add);
	add_brick_trigger(C,block,"bang",op_brick_add);
	add_brick_trigger(C,block,"quit",op_brick_add);

	return menu;
}
Example #19
0
t_node *make_menu_maths(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_logic","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"cos",op_brick_add);
	add_brick_trigger(C,block,"sin",op_brick_add);
	add_brick_trigger(C,block,"x",op_brick_add);
	add_brick_trigger(C,block,"+",op_brick_add);
	add_brick_trigger(C,block,"++",op_brick_add);
	add_brick_trigger(C,block,"neg",op_brick_add);
	add_brick_trigger(C,block,"mod",op_brick_add);

	return menu;
}
Example #20
0
t_node *make_menu_node_add(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_node_add","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"default",op_add_default);
	add_brick_trigger(C,block,"cube",op_add_cube);
	add_brick_trigger(C,block,"uv cube",op_add_uv_cube);
	add_brick_trigger(C,block,"light",op_add_light);
	add_brick_trigger(C,block,"obj",op_obj_import);
	add_brick_trigger(C,block,"mn",op_add_mn);
	add_brick_trigger(C,block,"camera",op_add_camera);

	return menu;
}
Example #21
0
t_node *make_menu_camera(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_camera","menu");
	t_block *block=menu->data;

	add_brick_slider_float(C,block,"eye x",&C->camera->eye[0]);
	add_brick_slider_float(C,block,"eye y",&C->camera->eye[1]);
	add_brick_slider_float(C,block,"eye z",&C->camera->eye[2]);

	add_brick_slider_float(C,block,"pos x",&C->camera->pos[0]);
	add_brick_slider_float(C,block,"pos y",&C->camera->pos[1]);
	add_brick_slider_float(C,block,"pos z",&C->camera->pos[2]);

	return menu;
}
Example #22
0
t_node *make_menu_draw(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_draw","menu");
	t_block *block=menu->data;

	add_brick_switch(C,block,"face",&C->event->with_face);
	add_brick_switch(C,block,"points",&C->event->with_point);
	add_brick_switch(C,block,"texture",&C->event->with_texture);
	add_brick_switch(C,block,"normal",&C->event->with_normal);
	add_brick_switch(C,block,"light",&C->event->with_light);
	add_brick_switch(C,block,"depth",&C->event->with_depth);
	add_brick_switch(C,block,"blend",&C->event->with_blend);
	add_brick_switch(C,block,"restrict",&C->draw->with_restrict_matrix);
	add_brick_switch(C,block,"direct",&C->draw->mode_direct);

	return menu;
}
Example #23
0
t_node *make_menu_set(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_set","menu");

	t_node *menu_view=make_menu_view();
	add_brick_submenu(C,menu,menu_view,"view");

	t_node *menu_debug=make_menu_debug();
	add_brick_submenu(C,menu,menu_debug,"debug");

	t_node *menu_ui=make_menu_ui();
	add_brick_submenu(C,menu,menu_ui,"ui");

	t_node *menu_app=make_menu_app();
	add_brick_submenu(C,menu,menu_app,"app");

	return menu;
}
Example #24
0
t_node *make_menu_ui(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_ui","menu");
	t_block *block=menu->data;

	add_brick_switch(C,block,"update links",&C->ui->update_links);
	add_brick_switch(C,block,"fixed menu",&C->ui->fixed_menu);
	add_brick_switch(C,block,"flow brick",&C->ui->flow_brick);
	add_brick_switch(C,block,"selection",&C->ui->object_selection);
	add_brick_switch(C,block,"bitmap font",&C->ui->use_bitmap_font);
	add_brick_switch(C,block,"mouse mode",&C->ui->mouse_mode);
	add_brick_switch(C,block,"show states",&C->ui->show_states);
	add_brick_switch(C,block,"show step",&C->ui->show_step);
	add_brick_switch(C,block,"show brick step",&C->ui->show_brick_step);
	add_brick_switch(C,block,"video",&C->event->video);

	return menu;
}
Example #25
0
t_node *make_menu_operators(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_operators","menu");


	t_node *menu_lst=make_menu_lst();
	add_brick_submenu(C,menu,menu_lst,"lst");

	t_node *menu_logic=make_menu_logic();
	add_brick_submenu(C,menu,menu_logic,"logic");

	t_node *menu_maths=make_menu_maths();
	add_brick_submenu(C,menu,menu_maths,"maths");

	t_node *menu_ops=make_menu_ops();
	add_brick_submenu(C,menu,menu_ops,"ops");

	return menu;
}
Example #26
0
t_node *make_menu_num(void)
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_num","menu");
	t_block *block=menu->data;

	add_brick_trigger(C,block,"int",op_brick_add);
	add_brick_trigger(C,block,"float",op_brick_add);
	add_brick_trigger(C,block,"100",op_brick_add);
	add_brick_trigger(C,block,"10",op_brick_add);
	add_brick_trigger(C,block,".001",op_brick_add);
	add_brick_trigger(C,block,".01",op_brick_add);
	add_brick_trigger(C,block,".1",op_brick_add);
	add_brick_trigger(C,block,"rnd",op_brick_add);

	add_brick_trigger(C,block,"switch",op_brick_add);
	add_brick_trigger(C,block,"const",op_brick_add);

	return menu;
}
Example #27
0
void make_menu_mouse(void) 
{
	t_context *C=ctx_get();
	t_node *menu=block_make("menu_mouse","menu");

	t_node *add = make_menu_node_add();
	t_node *brick = make_menu_brick_add();
	t_node *set = make_menu_set();
	t_node *skt = make_menu_skt();
	t_node *draw = make_menu_draw();
	t_node *cam = make_menu_camera();

	add_brick_submenu(C,menu,add,"add");
	add_brick_submenu(C,menu,brick,"brick");
	add_brick_submenu(C,menu,set,"set");
	add_brick_submenu(C,menu,skt,"sketch");
	add_brick_submenu(C,menu,draw,"draw");
	add_brick_submenu(C,menu,cam,"camera");

}
Example #28
0
void make_menu_object(void)
{
	t_context *C = ctx_get();
	t_node *menu=block_make("menu_node","menu");

	// store menu
	t_block *b=menu->data;
	menu_node=b;

	t_node *add = make_menu_brick_add();

	t_node *draw = scene_node_get(C->scene,"block","menu_draw");
	t_node *sketch = scene_node_get(C->scene,"block","menu_sketch");
	t_node *set = scene_node_get(C->scene,"block","menu_set");
	t_node *menu_object=make_menu_brick_object();

	add_brick_submenu(C,menu,add,"bricks");
	add_brick_submenu(C,menu,menu_object,"object");
	add_brick_submenu(C,menu,draw,"draw");
	add_brick_submenu(C,menu,sketch,"sketch");
	add_brick_submenu(C,menu,set,"set");

}