Esempio n. 1
0
/***********************************************************************
 *
 *  Procedure:
 *	list_add - displays packet contents to stderr
 *
 ***********************************************************************/
void list_add(unsigned long *body)
{
  PagerWindow *t,**prev;
  int i=0;
  
  t = Start;
  prev = &Start;
  while(t!= NULL)
    {
      prev = &(t->next);
      t = t->next;
      i++;
    }
  *prev = (PagerWindow *)safemalloc(sizeof(PagerWindow));
  (*prev)->w = body[0];
  (*prev)->t = (char *)body[2];
  (*prev)->frame = body[1];
  (*prev)->x = body[3];
  (*prev)->y = body[4];
  (*prev)->width = body[5];
  (*prev)->height = body[6];
  (*prev)->desk = body[7];
  (*prev)->next = NULL;
  (*prev)->flags = body[8];
  (*prev)->icon_name = NULL;
  (*prev)->title_height = body[9];
  (*prev)->border_width = body[10];
  (*prev)->icon_w = body[19];
  (*prev)->icon_pixmap_w = body[20];
  (*prev)->text = body[22];
  (*prev)->back = body[23];
  AddNewWindow(*prev);
}
Esempio n. 2
0
File: FvwmPager.c Progetto: att/uwin
/***********************************************************************
 *
 *  Procedure:
 *	list_add - displays packet contents to stderr
 *
 ***********************************************************************/
void list_add(unsigned long *body)
{
  PagerWindow *t,**prev;
  int i=0;
  struct ConfigWinPacket  *cfgpacket = (void *) body;

  t = Start;
  prev = &Start;

  while(t!= NULL)
    {
      if (t->w == cfgpacket->w)
      {
	/* it's already there, do nothing */
	return;
      }
      prev = &(t->next);
      t = t->next;
      i++;
    }
  *prev = (PagerWindow *)safemalloc(sizeof(PagerWindow));
  memset(*prev, 0, sizeof(PagerWindow));
  (*prev)->w = cfgpacket->w;
  (*prev)->frame = cfgpacket->frame;
  (*prev)->t = (char *) cfgpacket->fvwmwin;
  (*prev)->x = cfgpacket->frame_x;
  (*prev)->y = cfgpacket->frame_y;
  (*prev)->width = cfgpacket->frame_width;
  (*prev)->height = cfgpacket->frame_height;
  (*prev)->desk = cfgpacket->desk;
  memcpy(&((*prev)->flags), &(cfgpacket->flags), sizeof(cfgpacket->flags));
  (*prev)->title_height = cfgpacket->title_height;
  (*prev)->border_width = cfgpacket->border_width;
  (*prev)->icon_w = cfgpacket->icon_w;
  (*prev)->icon_pixmap_w = cfgpacket->icon_pixmap_w;
  if (IS_ICONIFIED(*prev))
  {
    (*prev)->icon_x = 0;
    (*prev)->icon_y = 0;
    (*prev)->icon_width = 0;
    (*prev)->icon_height = 0;
  }

  if (win_pix_set)
  {
    (*prev)->text = win_fore_pix;
    (*prev)->back = win_back_pix;
  }
  else
  {
    (*prev)->text = cfgpacket->TextPixel;
    (*prev)->back = cfgpacket->BackPixel;
  }
  AddNewWindow(*prev);
}