Beispiel #1
0
void PopupMenu::_set_items(const Array& p_items){

	ERR_FAIL_COND(p_items.size() % 10);
	clear();

	for(int i=0;i<p_items.size();i+=10) {

		String text=p_items[i+0];
		Ref<Texture> icon=p_items[i+1];
		bool checkable=p_items[i+2];
		bool checked=p_items[i+3];
		bool disabled=p_items[i+4];

		int id=p_items[i+5];
		int accel=p_items[i+6];
		Variant meta=p_items[i+7];
		String subm=p_items[i+8];
		bool sep=p_items[i+9];

		int idx=get_item_count();
		add_item(text,id);
		set_item_icon(idx,icon);
		set_item_as_checkable(idx,checkable);
		set_item_checked(idx,checked);
		set_item_disabled(idx,disabled);
		set_item_ID(idx,id);
		set_item_metadata(idx,meta);
		set_item_as_separator(idx,sep);
		set_item_accelerator(idx,accel);
		set_item_submenu(idx,subm);
	}


}
Beispiel #2
0
int		set_spot(t_elem **spot, char *str, int fd)
{
  const char	*carac[4];
  t_elem	*tmp;

  carac[0] = INTENSITY;
  carac[1] = COLOR;
  carac[2] = ORIGIN;
  carac[3] = NULL;
  if (!(tmp = append_list(spot)))
    return (my_putstr(MALLOC_E, 2));
  set_item_ID(tmp, str);
  if (!get_item_carac(tmp, carac, fd))
    {
      my_putstr("\e[1;31mCaracteristic missing or invalid, ", 2);
      fprintf(stderr, "item [%s] is gonna be ignored.\n", str);
      my_putstr("-------------------------------\n\e[0;m", 2);
      free(str);
      while ((str = get_next_line(fd)) && my_strcmp(NEXT, str))
	free(str);
      free_node(spot);
    }