Exemple #1
0
void	apply_bottom_right(char** map, int x, int y, t_pos** pos)
{
	y = y + 1;
	x = x + 1;
	while (map[y][x] != *pos[y][x].player)
	{
		g_signal_handlers_destroy(pos[y][x].area);
		if (*pos[y][x].player == 1)
		{
			color_black(pos[y][x].area, 0);
			g_signal_connect(G_OBJECT(pos[y][x].area),
					 "expose_event",
					 G_CALLBACK(color_black), 0);
			map[y][x] = 1;
		}
		if (*pos[y][x].player == 2)
		{
			color_white(pos[y][x].area, 0);
			g_signal_connect(G_OBJECT(pos[y][x].area),
					 "expose_event",
					 G_CALLBACK(color_white), 0);
		map[y][x] = 2;
		}
		y = y + 1;
		x = x + 1;
	}
}
Exemple #2
0
design_defaults_s *design_defaults_create(void)
{
  design_defaults_s *d;

  d = (design_defaults_s *)malloc(sizeof(design_defaults_s));
  memset(d, 0, sizeof(design_defaults_s));

  d->units = units_type_mm;
  d->line_weight = 1.0;
  d->line_style = strdup("solid");
  d->fill_style = strdup("NONE");
  d->dimension_text_size = 4.0;
  d->dimension_precision = 2;
  d->angular_gap = 5.0;
  d->angular_extension = 25.0;
  d->linear_gap = 6.0;
  d->linear_extension_above = 12.0;
  d->linear_extension_below = 6.0;
  d->tolerance_text_size = 4.0;
  d->tolerance_plus = 0.0;
  d->tolerance_minus = 0.0;
  d->tolerance_precision = 2;

  d->background_color = color_create();
  color_set_tag(d->background_color, "background-color");
  color_white(d->background_color);

  d->element_color = color_create();
  color_set_tag(d->element_color, "element-color");
  color_black(d->element_color);

    // Return RETVAL
  return d;
}
Exemple #3
0
void draw_referencing_line(const int sx, const int sy, const int cx, const int cy) {
  const int tborder_x1 = BORDER_WIDTH;
  const int tborder_x2 = TABLE_WIDTH - BORDER_WIDTH;
  const int tborder_y1 = TABLE_Y_POSITION + BORDER_WIDTH;
  const int tborder_y2 = TABLE_Y_POSITION + TABLE_HEIGHT - BORDER_WIDTH;
  const int dx = sx - cx;
  const int dy = sy - cy;
  int line_x = sx, line_y = sy;
  double delta;

  if(dx == 0 && dy == 0)
    return;

  while(1)
  {
    line_x += dx;
    line_y += dy;
    if(line_x <= tborder_x1 || line_x >= tborder_x2)
    {
      line_x = (line_x <= tborder_x1 ? tborder_x1 : tborder_x2);
      delta = 1.0 * (line_x - sx) / dx;
      line_y = sy + (int) (dy * delta);
      break;
    }
    if(line_y <= tborder_y1 || line_y >= tborder_y2)
    {
      line_y = (line_y <= tborder_y1 ? tborder_y1 : tborder_y2);
      delta = 1.0 * (line_y - sy) / dy;
      line_x = sx + (int) (dx * delta);
      break;
    }
  }

  al_draw_line(line_x, line_y, cx, cy, color_white(), RL_WIDTH);
}
Exemple #4
0
void IntroState::Render(Game *game)
{
    int x,y;
    Color color_white(0xFF, 0xFF, 0xFF, 0xFF);

    x = this->pGameIO->GetWindowWidth() / 2;
    y = this->pGameIO->GetWindowHeight() / 2;

    this->pGameIO->ClearScreen();

    this->pGameIO->Print("Press Space to Start", x, y, HALIGN_CENTERED, VALIGN_CENTERED, color_white);
}
Exemple #5
0
void bullet_draw(bullet *bullets) {
  bullet *iter = NULL;
  if (bullets != NULL) {
    iter = bullets;
    do {
      al_draw_line(iter->start.x,
                   iter->start.y,
                   iter->start.x + sin(iter->direction) * BULLET_LENGTH,
                   iter->start.y - cos(iter->direction) * BULLET_LENGTH,
                   color_white(), BULLET_WIDTH);

      iter = iter->next;
    } while (iter != NULL);
  }
}
Exemple #6
0
paper_s *paper_create(void)
{
  paper_s *p;

  p = (paper_s *)malloc(sizeof(paper_s));
  memset(p, 0, sizeof(paper_s));

  p->margins = margins_create();

  p->size = paper_size_type_iso_a4;
  p->orientation = paper_orientation_type_portrait;
  dimensions(p);

  margins_set_units(p->margins, p->units);

  p->color = color_create();
  color_set_tag(p->color, "color");
  color_white(p->color);

    // Return RETVAL
  return p;
}
Exemple #7
0
void calculator_xserv(Point origin) {
	Size button_size = size_make(60, 60);
	int result_view_height = 50;
	int button_spacing = 0;

	//width is button_size * 4 because 3 rows of # buttons + 1 row of operators
	Window* calc_win = create_window(rect_make(origin, size_make(button_size.width * 4, WINDOW_TITLE_VIEW_HEIGHT + result_view_height + button_spacing + (button_size.height * 4))));
	calc_win->title = "Calculator";

	//number display
	View* label_view = create_view(rect_make(point_zero(), size_make(calc_win->frame.size.width, result_view_height)));
	result_label = create_label(rect_make(point_make(10, 10), label_view->frame.size), "0");
	label_view->background_color = color_white();
	add_sublabel(label_view, result_label);
	add_subview(calc_win->content_view, label_view);

	View* button_view = create_view(rect_make(point_make(0, rect_max_y(label_view->frame)), size_make(calc_win->frame.size.width, calc_win->frame.size.height - label_view->frame.size.height)));
	button_view->background_color = color_make(200, 200, 255);
	add_subview(calc_win->content_view, button_view);

	//number buttons 1-9
	for (int col = 0; col < 3; col++) {
		for (int row = 2; row >= 0; row--) {
			int val = ((3 - col) * 3) + row - 2;
			char title[32];
			itoa(val, (char*)&title);

			Button* b = create_button(rect_make(point_make((row * button_size.width) + button_spacing, (col * button_size.height) + button_spacing), button_size), title);
			b->mousedown_handler = (event_handler)&calc_num_click;
			add_button(button_view, b);
		}
	}
	//3 * button spacing to account for above buttons
	Button* zero = create_button(rect_make(point_make(button_spacing, 3 * button_size.height + button_spacing), size_make(button_size.width * 2, button_size.height)), "0");
	zero->mousedown_handler = (event_handler)&calc_num_click;
	add_button(button_view, zero);

	Button* equals = create_button(rect_make(point_make(rect_max_x(zero->frame), 3 * button_size.height + button_spacing), size_make(button_size.width, button_size.height)), "=");
	equals->mousedown_handler = (event_handler)&calc_op_click;
	add_button(button_view, equals);
	
	//operator buttons
	for (int i = 0; i < 4; i++){
		char* title;
		switch (i) {
			case 0:
				title = "/";
				break;
			case 1:
				title = "X";
				break;
			case 2:
				title = "-";
				break;
			case 3:
			default:
				title = "+";
				break;
		}
		Button* b = create_button(rect_make(point_make((3 * button_size.width) + button_spacing, button_size.height * i + button_spacing), button_size), title);
		b->mousedown_handler = (event_handler)&calc_op_click;
		add_button(button_view, b);
	}

	present_window(calc_win);
}
Exemple #8
0
void draw_mouse_coordinates(const int mx, const int my, const ALLEGRO_FONT *font) {
  char text[20] = {'\0'};
  sprintf(text, "[%03d,%03d]", mx, my);
  al_draw_text(font, color_white(), MX, MY, ALLEGRO_ALIGN_LEFT, text);
}