Beispiel #1
0
/* {EV_PIXMAP_IMP}.set_size */
void F1202_17204 (EIF_REFERENCE Current, EIF_INTEGER_32 arg1, EIF_INTEGER_32 arg2)
{
	GTCX
	EIF_POINTER loc1 = (EIF_POINTER) 0;
	EIF_POINTER loc2 = (EIF_POINTER) 0;
	EIF_INTEGER_32 loc3 = (EIF_INTEGER_32) 0;
	EIF_INTEGER_32 loc4 = (EIF_INTEGER_32) 0;
	EIF_POINTER loc5 = (EIF_POINTER) 0;
	EIF_POINTER loc6 = (EIF_POINTER) 0;
	EIF_POINTER loc7 = (EIF_POINTER) 0;
	EIF_POINTER tp1;
	EIF_INTEGER_32 ti4_1;
	RTLD;
	
	RTLI(1);
	RTLR(0,Current);
	
	RTGC;
	loc3 = F1202_17199(Current);
	loc4 = F1202_17200(Current);
	if ((EIF_BOOLEAN) ((EIF_BOOLEAN)(loc3 != arg1) || (EIF_BOOLEAN)(loc4 != arg2))) {
		tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_5_);
		loc1 = (EIF_POINTER) gdk_pixmap_ref((GdkPixmap*) tp1);
		if ((EIF_BOOLEAN)(*(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_) != loc7)) {
			tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_);
			loc2 = (EIF_POINTER) gdk_pixmap_ref((GdkPixmap*) tp1);
		}
		tp1 = (EIF_POINTER) NULL;
		ti4_1 = *(EIF_INTEGER_32 *)(RTCV(RTOSCF(14148,F1079_14148,(Current)))+ _LNGOFF_49_16_0_19_);
		tp1 = (EIF_POINTER) gdk_pixmap_new((GdkWindow*) tp1, (gint) arg1, (gint) arg2, (gint) ti4_1);
		*(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_5_) = (EIF_POINTER) tp1;
		F1198_17038(Current, ((EIF_INTEGER_32) 0L), ((EIF_INTEGER_32) 0L), arg1, arg2);
		tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_5_);
		loc5 = (EIF_POINTER) gdk_gc_new((GdkWindow*) tp1);
		gdk_gc_set_clip_mask((GdkGC*) loc5, (GdkBitmap*) loc2);
		gdk_gc_set_clip_origin((GdkGC*) loc5, (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L));
		tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_5_);
		gdk_draw_drawable((GdkDrawable*) tp1, (GdkGC*) loc5, (GdkDrawable*) loc1, (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) loc3, (gint) loc4);
		gdk_gc_unref((GdkGC*) loc5);
		gdk_pixmap_unref((GdkPixmap*) loc1);
		if ((EIF_BOOLEAN)(loc2 != loc7)) {
			tp1 = (EIF_POINTER) NULL;
			tp1 = (EIF_POINTER) gdk_pixmap_new((GdkWindow*) tp1, (gint) arg1, (gint) arg2, (gint) ((EIF_INTEGER_32) 1L));
			*(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_) = (EIF_POINTER) tp1;
			tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_);
			loc6 = (EIF_POINTER) gdk_gc_new((GdkWindow*) tp1);
			tp1 = RTOSCF(17072,F1198_17072,(Current));
			gdk_gc_set_foreground((GdkGC*) loc6, (GdkColor*) tp1);
			tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_);
			gdk_draw_rectangle((GdkDrawable*) tp1, (GdkGC*) loc6, (gint) ((EIF_INTEGER_32) 1L), (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) arg1, (gint) arg2);
			tp1 = *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_);
			gdk_draw_drawable((GdkDrawable*) tp1, (GdkGC*) loc6, (GdkDrawable*) loc2, (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) ((EIF_INTEGER_32) 0L), (gint) loc3, (gint) loc4);
			gdk_gc_unref((GdkGC*) loc6);
			gdk_pixmap_unref((GdkPixmap*) loc2);
		}
		F1202_17215(Current, *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_5_), *(EIF_POINTER *)(Current+ _PTROFF_46_11_12_3_0_4_));
	}
	RTLE;
}
Beispiel #2
0
void pixmap_cache_lookup (GSList *cache, GdkPixmap **pix, GdkBitmap **mask, 
                                                               unsigned key) {
  struct cached_pixmap *cp;
  GdkPixmap *res_pix = NULL;
  GdkBitmap *res_mask = NULL;

  if (!pix)
    return;

  while (cache) {
    cp = (struct cached_pixmap *) cache->data;
    if (cp->key == key) {
      cp->weight += 2;
      res_pix = cp->pix;
      res_mask = cp->mask;
      break;
    }
    cache = cache->next;
  }

  *pix = res_pix;
  if (res_pix) 
    gdk_pixmap_ref (res_pix);

  if (mask) {
    *mask = res_mask;
    if (res_mask)
      gdk_bitmap_ref (res_mask);
  }
}
Beispiel #3
0
void
gimv_zalbum_set_pixmap (GimvZAlbum *album, guint idx,
                        GdkPixmap *pixmap, GdkBitmap *mask)
{
   GimvZAlbumCell *cell;

   g_return_if_fail (GIMV_IS_ZALBUM (album));

   cell = GIMV_ZLIST_CELL_FROM_INDEX(album, idx);

   g_return_if_fail (cell);

   if (cell->ipix)
      gdk_pixmap_unref (cell->ipix);
   cell->ipix  = NULL;
   cell->imask = NULL;

   if (!pixmap) return;

   cell->ipix  = gdk_pixmap_ref (pixmap);
   if (mask) cell->imask = gdk_bitmap_ref (mask);

   if (cell->ipix) {
      gimv_zalbum_update_max_cell_size (album, cell);

      if (!gimv_zlist_update_cell_size(GIMV_ZLIST(album), (gpointer) cell))
         gimv_zlist_draw_cell (GIMV_ZLIST(album), idx);
   }
}
JNIEXPORT void JNICALL
Java_gnu_java_awt_peer_gtk_GdkGraphics_copyState
  (JNIEnv *env, jobject obj, jobject old)
{
  struct graphics *g, *g_old;

  g = (struct graphics *) malloc (sizeof (struct graphics));
  g_old = (struct graphics *) NSA_GET_PTR (env, old);

  *g = *g_old;

  gdk_threads_enter ();

  g->gc = gdk_gc_new (g->drawable);
  gdk_gc_copy (g->gc, g_old->gc);

  if (GDK_STABLE_IS_PIXMAP (g->drawable))
    gdk_pixmap_ref (g->drawable);
  else /* GDK_IS_WINDOW (g->drawable) */
    gdk_window_ref (g->drawable);

  gdk_colormap_ref (g->cm);

  gdk_threads_leave ();

  NSA_SET_PTR (env, obj, g);
}
Beispiel #5
0
static void create_pixmap (GtkWidget *widget, const char* file, struct pixmap *pix)
{
  load_pixmap_as_pixmap(widget, file, pix);

  if(!pix->pix)
  {
    pix->pix = error_pix.pix;
    pix->mask = error_pix.mask;
    gdk_pixmap_ref(pix->pix);
    gdk_bitmap_ref(pix->mask);
  }
}
Beispiel #6
0
void pixmap_cache_add (GSList **cache, GdkPixmap *pix, GdkBitmap *mask, 
                                                               unsigned key) {
  struct cached_pixmap *cp;

  if (pix && cache) {
    cp = g_malloc0 (sizeof (struct cached_pixmap));

    cp->pix = pix;
    gdk_pixmap_ref (pix);

    if (mask) {
      cp->mask = mask;
      gdk_bitmap_ref (mask);
    }

    cp->key = key;
    cp->weight = 10;

    *cache = g_slist_prepend (*cache, cp);
  }
}
Beispiel #7
0
static void
change_background(PanelApplet * widget,
                  PanelAppletBackgroundType type,
                  GdkColor * color,
                  GdkPixmap * pixmap,
                  void *data)
{
  static GdkPixmap *keep = NULL;
  long xid = 0;
  GValueArray *val = g_value_array_new(4);

  if (type == PANEL_NO_BACKGROUND)
    {
      GtkStyle *style = gtk_widget_get_style(GTK_WIDGET(widget));

      if (style->bg_pixmap[GTK_STATE_NORMAL])
        {
          pixmap = style->bg_pixmap[GTK_STATE_NORMAL];
          type = PANEL_PIXMAP_BACKGROUND;
        }
      else
        {
          color = &style->bg[GTK_STATE_NORMAL];
          if (color != NULL)
            {
              type = PANEL_COLOR_BACKGROUND;
            }
        }
    }
  
  if (type == PANEL_COLOR_BACKGROUND && color != NULL)
    {
      g_value_array_append(val, NULL);
      g_value_init(g_value_array_get_nth(val, 0), G_TYPE_UINT);
      g_value_set_uint(g_value_array_get_nth(val, 0), color->pixel);
 
      g_value_array_append(val, NULL);
      g_value_init(g_value_array_get_nth(val, 1), G_TYPE_UINT);
      g_value_set_uint(g_value_array_get_nth(val, 1), color->red);
      
      g_value_array_append(val, NULL);
      g_value_init(g_value_array_get_nth(val, 2), G_TYPE_UINT);
      g_value_set_uint(g_value_array_get_nth(val, 2), color->green);

      g_value_array_append(val, NULL);
      g_value_init(g_value_array_get_nth(val, 3), G_TYPE_UINT);
      g_value_set_uint(g_value_array_get_nth(val, 3), color->blue);
    }
  else
    {
      int i;
      for (i = 0; i < 4; i++)
        {
          g_value_array_prepend(val, NULL);
          g_value_init(g_value_array_get_nth(val, 0), G_TYPE_UINT);
          g_value_set_uint(g_value_array_get_nth(val, 0), 0);
        }
    }
  
  if (type == PANEL_PIXMAP_BACKGROUND)
    {
      if (keep != NULL)
        {
          gdk_pixmap_unref(keep);
          keep = pixmap;
        }
      if (pixmap != NULL)
        {
          gdk_pixmap_ref(pixmap);
        }

      xid = GDK_PIXMAP_XID(pixmap);
    }

  if (g_applet->support != NULL && workrave_is_running())
    {
      dbus_g_proxy_begin_call(g_applet->support, "SetBackground", dbus_callback, NULL, NULL,
                              G_TYPE_UINT, type,
                              G_TYPE_VALUE_ARRAY, val,
                              G_TYPE_UINT, xid,
                              G_TYPE_INVALID);
      

    }

  g_value_array_free(val);
}