Exemplo n.º 1
0
/* -----------------------------
 * p_res_reset_callback
 * -----------------------------
 */
static void
p_res_reset_callback (GtkWidget *widget,
                    gpointer   data)
{
  GapResizePrivateType *res_private;

  res_private = (GapResizePrivateType *)data;
  if(res_private == NULL) {return;}

  res_private->width = res_private->orig_width;
  res_private->height = res_private->orig_height;
  p_set_size_spinbuttons(res_private);

  if((res_private->asiz_mode != GAP_ASIZ_SCALE)
  && (res_private->offset_area))
  {
    res_private->offset_x = 0;
    res_private->offset_y = 0;
    p_set_offset_spinbuttons(res_private);
    gimp_offset_area_set_size (GIMP_OFFSET_AREA (res_private->offset_area),
                               res_private->width, res_private->height);
    gimp_offset_area_set_offsets (GIMP_OFFSET_AREA (res_private->offset_area),
                                  res_private->offset_x, res_private->offset_y);
  }
}  /* end p_res_reset_callback */
Exemplo n.º 2
0
/* -----------------------------
 * p_offset_y_center_clicked
 * -----------------------------
 */
static void
p_offset_y_center_clicked(GtkWidget *w, gpointer   data)
{
  GapResizePrivateType *res_private;
  gint           off_y;

  res_private  = (GapResizePrivateType *) data;
  if(res_private == NULL) {return;}

  off_y = p_resize_bound_off_y (res_private,
                              (res_private->height - res_private->orig_height) / 2);

  res_private->offset_y = off_y;

  p_set_offset_spinbuttons(res_private);
  gimp_offset_area_set_offsets (GIMP_OFFSET_AREA (res_private->offset_area),
                                  res_private->offset_x, res_private->offset_y);
}  /* end p_offset_y_center_clicked */
Exemplo n.º 3
0
/* -----------------------------
 * p_offset_update
 * -----------------------------
 */
static void
p_offset_update(GtkWidget *w, gpointer   data)
{
  GapResizePrivateType *res_private;
  gdouble ofs_x;
  gdouble ofs_y;

  res_private  = (GapResizePrivateType *) data;
  if(res_private == NULL) {return;}

  ofs_x = GTK_ADJUSTMENT(res_private->offset_x_adj)->value;
  ofs_y = GTK_ADJUSTMENT(res_private->offset_y_adj)->value;

  res_private->offset_x = p_resize_bound_off_x (res_private, RINT(ofs_x));

  res_private->offset_y = p_resize_bound_off_y (res_private, RINT(ofs_y));


  gimp_offset_area_set_offsets (GIMP_OFFSET_AREA (res_private->offset_area)
                                 , res_private->offset_x
                                 , res_private->offset_y);
}  /* end p_offset_update */
Exemplo n.º 4
0
static WidgetInfo *
create_offset_area (void)
{
  GtkWidget *vbox;
  GtkWidget *frame;
  GtkWidget *area;
  GtkWidget *align;

  vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
  frame = gtk_frame_new (NULL);
  gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
  gtk_container_add (GTK_CONTAINER (align), frame);
  area = gimp_offset_area_new (100, 100);
  gimp_offset_area_set_size (GIMP_OFFSET_AREA (area), 180, 160);
  gimp_offset_area_set_offsets (GIMP_OFFSET_AREA (area), 30, 30);
  gtk_container_add (GTK_CONTAINER (frame), area);
  gtk_box_pack_start (GTK_BOX (vbox), align, TRUE, TRUE, 0);
  gtk_box_pack_start (GTK_BOX (vbox),
                      gtk_label_new ("Offset Area"), FALSE, FALSE, 0);

  return new_widget_info ("gimp-widget-offset-area", vbox, LARGE);
}