Example #1
0
static int brow_init_proc( GtkWidget *w, FlowCtx *fctx, void *client_data)
{
  browwidget_sScroll *scroll_data;
  BrowCtx	*ctx;

  ctx = (BrowCtx *) ((BrowWidgetGtk *) w)->brow_ctx;

  if ( ((BrowWidgetGtk *) w)->scroll_h) {
    scroll_data = (browwidget_sScroll *) malloc( sizeof( browwidget_sScroll));
    scroll_data->brow = w;
    scroll_data->scroll_h = ((BrowWidgetGtk *) w)->scroll_h;
    scroll_data->scroll_v = ((BrowWidgetGtk *) w)->scroll_v;
    scroll_data->form = ((BrowWidgetGtk *) w)->form;
    scroll_data->scroll_h_managed = 1;
    scroll_data->scroll_v_managed = 1;

    ctx->register_scroll_callback( (void *) scroll_data, scroll_callback);
  }
  return (((BrowWidgetGtk *) w)->init_proc)( ctx, client_data);
}
Example #2
0
static void scroll_h_action( 	GtkWidget      	*w,
				gpointer 	data)
{
  BrowWidgetGtk *broww = (BrowWidgetGtk *)data;
  if ( broww->scroll_h_ignore) {
    broww->scroll_h_ignore = 0;
    return;
  }

  BrowCtx *ctx = (BrowCtx *) broww->brow_ctx;
  gdouble value;
  value = gtk_range_get_value( GTK_RANGE(broww->scroll_h));

  if ( value == 0 && fabs(broww->scroll_h_value) > 2) {
    // Probably a resize that seems to set value to zero, set old value
    ctx->change_scrollbar();
    return;
  }
  broww->scroll_h_value = value;
  flow_scroll_horizontal( ctx, int(value), 0);

}
Example #3
0
static int brow_init_proc( Widget w, FlowCtx *fctx, void *client_data)
{
  browwidget_sScroll *scroll_data;
  BrowCtx	*ctx;

  scroll_data = (browwidget_sScroll *) malloc( sizeof( browwidget_sScroll));
  scroll_data->brow = w;
  scroll_data->scroll_h = ((BrowWidget) w)->brow.scroll_h;
  scroll_data->scroll_v = ((BrowWidget) w)->brow.scroll_v;
  scroll_data->form = ((BrowWidget) w)->brow.form;
  scroll_data->scroll_h_managed = 1;
  scroll_data->scroll_v_managed = 1;

  ctx = (BrowCtx *) ((BrowWidget) w)->brow.brow_ctx;
  ctx->register_scroll_callback( (void *) scroll_data, scroll_callback);

  XtAddCallback( scroll_data->scroll_h, XmNvalueChangedCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNdragCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNincrementCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNdecrementCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNpageIncrementCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNpageDecrementCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNtoTopCallback, scroll_h_action, w);
  XtAddCallback( scroll_data->scroll_h, XmNtoBottomCallback, scroll_h_action, w);

  XtAddCallback( scroll_data->scroll_v, XmNvalueChangedCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNdragCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNincrementCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNdecrementCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNpageIncrementCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNpageDecrementCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNtoTopCallback, scroll_v_action, w);
  XtAddCallback( scroll_data->scroll_v, XmNtoBottomCallback, scroll_v_action, w);

  return (((BrowWidget) w)->brow.init_proc)( ctx, client_data);
}