Changeset 440

Show
Ignore:
Timestamp:
11/25/06 01:14:36 (2 years ago)
Author:
radekk
Message:

Fixing some rounding problems in Hand Tool.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • sweep/trunk/src/sample-display.c

    r438 r440  
    18841884sample_display_handle_hand_motion (SampleDisplay * s, int x, int y) 
    18851885{ 
    1886   sw_framecount_t move, vstart, vend; 
    1887   sw_framecount_t step = PIXEL_TO_OFFSET(1); 
     1886  gdouble move, vstart, vend; 
     1887  gdouble step = (gdouble)(s->view->end - s->view->start) / ((gdouble)s->width); 
    18881888  GtkAdjustment * adj = GTK_ADJUSTMENT(s->view->adj); 
    1889  
    1890 //  g_print("X: %i OLD: %i MOVE: %i STEP: %i\n", x, s->view->hand_offset, s->view->hand_offset - x, step); 
    18911889 
    18921890  if (s->view->hand_offset != x){ 
    18931891    move = s->view->hand_offset - x; 
    1894  
    1895     vstart = s->view->start + move * step; 
    1896     vend = s->view->end + move * step; 
     1892    move *= step; 
     1893 
     1894    vstart = s->view->start + move; 
     1895    vend = s->view->end + move; 
    18971896 
    18981897    if (vstart < 0){ 
     
    19041903        vend = s->view->sample->sounddata->nr_frames; 
    19051904    } 
     1905/* 
     1906    g_print("X: %i OLD: %i MOVE: %f STEP: %f start: %i end: %i vstart: %f vend: %f fstart:%f fend: %f\n", 
     1907                   x, s->view->hand_offset, move, step, 
     1908                   s->view->start, s->view->end, vstart, vend, round(vstart), round(vend)); 
     1909*/ 
     1910    vstart = round(vstart); 
     1911    vend = round(vend); 
     1912 
     1913    if (s->view->start != vstart && s->view->end != vend) 
     1914            s->view->hand_offset = x; 
    19061915 
    19071916    s->view->start = vstart; 
     
    19121921    gtk_adjustment_set_value( GTK_ADJUSTMENT(s->view->adj), vstart); 
    19131922  } 
    1914   s->view->hand_offset = x; 
    1915 
    1916  
    1917  
     1923
    19181924 
    19191925static void 
  • sweep/trunk/src/view.c

    r438 r440  
    6666#define USER_GTKRC 
    6767 
    68 /*#define SCROLL_SMOOTHLY*/ 
     68/* #define SCROLL_SMOOTHLY */ 
    6969 
    7070/* Default initial dimensions.