Changeset 438

Show
Ignore:
Timestamp:
11/23/06 23:08:38 (2 years ago)
Author:
radekk
Message:

Introducing Hand Tool.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • sweep/trunk/po/fr.po

    r402 r438  
    44# 
    55#: src/sample-display.c:220 
    6 #, fuzzy 
    76msgid "" 
    87msgstr "" 
  • sweep/trunk/po/pl.po

    r402 r438  
    26342634c do ciszy" 
    26352635 
    2636 #~ msgid "About Sweep" 
    2637 #~ msgstr "O programie Sweep" 
    2638  
    2639 #~ msgid "Channels:" 
    2640 #~ msgstr "Kanały:" 
    2641  
    2642 #~ msgid "Mono (mixdown)" 
    2643 #~ msgstr "Mono (wymieszane)" 
    2644  
    2645 #~ msgid "Stereo (duplicate)" 
    2646 #~ msgstr "Stereo (powielone)" 
    2647  
    2648 #~ msgid "Bitwidth:" 
    2649 #~ msgstr "Szerokość bitowa:" 
    2650  
    2651 #~ msgid "8 bit" 
    2652 #~ msgstr "8 bit" 
    2653  
    2654 #~ msgid "16 bit" 
    2655 #~ msgstr "16 bit" 
    2656  
    2657 #~ msgid "24 bit" 
    2658 #~ msgstr "24 bit" 
    2659  
    2660 #~ msgid "32 bit" 
    2661 #~ msgstr "32 bit" 
  • sweep/trunk/src/cursors.c

    r387 r438  
    100100  sweep_cursors[SWEEP_CURSOR_PENCIL] = gdk_cursor_new (GDK_PENCIL); 
    101101  sweep_cursors[SWEEP_CURSOR_NOISE] = gdk_cursor_new (GDK_SPRAYCAN); 
     102  sweep_cursors[SWEEP_CURSOR_HAND] = gdk_cursor_new (GDK_HAND1); 
    102103 
    103104  create_bitmap_and_mask_from_xpm (&bitmap, &mask, horiz_xpm); 
  • sweep/trunk/src/cursors.h

    r124 r438  
    3333  SWEEP_CURSOR_PENCIL, 
    3434  SWEEP_CURSOR_NOISE, 
     35  SWEEP_CURSOR_HAND, 
    3536  SWEEP_CURSOR_MAX 
    3637}; 
  • sweep/trunk/src/question_dialogs.c

    r279 r438  
    136136  gtk_widget_show (label); 
    137137 
     138  /* New layout of buttons */ 
     139 
     140  gtk_button_box_set_layout (GTK_BUTTON_BOX(GTK_DIALOG(window)->action_area), GTK_BUTTONBOX_SPREAD); 
     141 
    138142  /* OK */ 
    139143 
     
    142146  GTK_WIDGET_SET_FLAGS (GTK_WIDGET (ok_button), GTK_CAN_DEFAULT); 
    143147  gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->action_area), 
    144                       ok_button, FALSE, TRUE, 0); 
     148                      ok_button, TRUE, TRUE, 0); 
    145149  g_object_set_data (G_OBJECT(ok_button), "default", ok_callback); 
    146150  gtk_widget_show (ok_button); 
     
    156160    GTK_WIDGET_SET_FLAGS (GTK_WIDGET (button), GTK_CAN_DEFAULT); 
    157161    gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->action_area), 
    158                         button, FALSE, TRUE, 0); 
     162                        button, TRUE, TRUE, 0); 
    159163    g_object_set_data (G_OBJECT(button), "default", no_callback); 
    160164    gtk_widget_show (button); 
  • sweep/trunk/src/sample-display.c

    r351 r438  
    200200  SELECTING_PENCIL, 
    201201  SELECTING_NOISE, 
     202  SELECTING_HAND, 
    202203}; 
    203204 
     
    634635  s->height = h; 
    635636 
     637  window = GTK_WIDGET(s)->window; 
     638  visual = gdk_rgb_get_visual(); 
     639 
     640#if DOUBLE_BUFFER 
    636641  if(s->backing_pixmap) { 
    637642    g_object_unref(s->backing_pixmap); 
    638643  } 
    639   window = GTK_WIDGET(s)->window; 
    640   visual = gdk_rgb_get_visual(); 
    641  
    642644  s->backing_pixmap = gdk_pixmap_new (GTK_WIDGET(s)->window,   
    643645                                      w, h, visual->depth); 
     646#endif 
     647 
    644648} 
    645649 
     
    18781882 
    18791883static void 
     1884sample_display_handle_hand_motion (SampleDisplay * s, int x, int y) 
     1885{ 
     1886  sw_framecount_t move, vstart, vend; 
     1887  sw_framecount_t step = PIXEL_TO_OFFSET(1); 
     1888  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); 
     1891 
     1892  if (s->view->hand_offset != x){ 
     1893    move = s->view->hand_offset - x; 
     1894 
     1895    vstart = s->view->start + move * step; 
     1896    vend = s->view->end + move * step; 
     1897 
     1898    if (vstart < 0){ 
     1899        vstart = 0; 
     1900        vend = adj->page_size; 
     1901    } 
     1902    if (vend > s->view->sample->sounddata->nr_frames){ 
     1903        vstart = s->view->sample->sounddata->nr_frames - adj->page_size;  
     1904        vend = s->view->sample->sounddata->nr_frames; 
     1905    } 
     1906 
     1907    s->view->start = vstart; 
     1908    s->view->end = vend; 
     1909 
     1910    view_refresh_display(s->view); 
     1911 
     1912    gtk_adjustment_set_value( GTK_ADJUSTMENT(s->view->adj), vstart); 
     1913  } 
     1914  s->view->hand_offset = x; 
     1915} 
     1916 
     1917 
     1918 
     1919static void 
    18801920sample_display_handle_noise_motion (SampleDisplay * s, int x, int y) 
    18811921{ 
     
    20952135    gdk_window_get_pointer (event->window, &x, &y, &state); 
    20962136    sample_display_handle_playmarker_motion (s, x, y); 
    2097   } else if(s->selecting && event->button != last_button) { 
     2137  } else  
     2138  if(s->selecting && event->button != last_button) { 
    20982139    /* Cancel the current operation if a different button is pressed. */ 
    20992140    sample_display_clear_sel (s); 
    2100   } else if (last_tmp_view && last_tmp_view != s->view && 
    2101             event->button != last_button) { 
     2141  } else  
     2142  if (last_tmp_view && last_tmp_view != s->view && event->button != last_button) { 
    21022143    view_clear_last_tmp_view (); 
    21032144  } else { 
     
    21592200#endif 
    21602201        break; 
     2202      case TOOL_HAND: 
     2203        s->selecting = SELECTING_HAND; 
     2204        s->view->hand_offset = x; 
     2205        SET_CURSOR(widget, HAND); 
     2206        sample_display_handle_hand_motion (s, x, y); 
     2207        break; 
    21612208      case TOOL_ZOOM: 
    21622209        o = XPOS_TO_OFFSET(x); 
     
    22952342    if (s->meta_down) return TRUE; 
    22962343    break; 
     2344  case TOOL_HAND: 
     2345    s->view->hand_offset = -1; 
     2346    break; 
    22972347  case TOOL_MOVE: 
    22982348    break; 
     
    23502400      case SELECTING_PLAYMARKER: 
    23512401        sample_display_handle_playmarker_motion (s, x, y); 
     2402        break; 
     2403      case SELECTING_HAND: 
     2404        sample_display_handle_hand_motion (s, x, y); 
    23522405        break; 
    23532406      case SELECTING_PENCIL: 
  • sweep/trunk/src/sweep_app.h

    r124 r438  
    4545  TOOL_PENCIL, 
    4646  TOOL_NOISE, 
     47  TOOL_HAND 
    4748} sw_tool_t; 
    4849 
     
    8687 
    8788  gboolean following; /* whether or not to follow playmarker */ 
     89 
     90  gint hand_offset; 
    8891 
    8992  GtkWidget * window; 
  • sweep/trunk/src/view.c

    r436 r438  
    18781878 
    18791879  view->tool_buttons = NULL; 
     1880 
     1881  button = create_pixmap_button (window, hand_xpm, _("Hand tool"), 
     1882                                 style_light_grey, VIEW_TOOLBAR_TOGGLE_BUTTON, 
     1883                                 G_CALLBACK (view_set_tool_cb), NULL, NULL, view); 
     1884  g_object_set_data (G_OBJECT(button), "default", GINT_TO_POINTER(TOOL_HAND)); 
     1885  gtk_box_pack_start (GTK_BOX (tool_hbox), button, FALSE, FALSE, 0); 
     1886  gtk_widget_show (button); 
     1887  view->tool_buttons = g_list_append (view->tool_buttons, button); 
    18801888 
    18811889  button = create_pixmap_button (window, select_xpm, _("Selector tool"), 
  • sweep/trunk/src/view_pixmaps.h

    r124 r438  
    5353#include "../pixmaps/scrub.xpm" 
    5454#include "../pixmaps/select.xpm" 
     55#include "../pixmaps/hand.xpm" 
    5556#ifdef DEVEL_CODE 
    5657#include "../pixmaps/pencil.xpm"