diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-04-11 13:07:51 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-04-11 13:07:51 +0000 |
commit | 45d3ec1437cf661533bc7750c623865def4424df (patch) | |
tree | 80cdeb58bc51a22042b91c50334bdd8ee37deed6 /gtk2_ardour | |
parent | 4bf712f501e21cbf1e555bf010553aaca55edd39 (diff) |
merged with 1697 revision of trunk (which is post-rc1 but pre-rc2
git-svn-id: svn://localhost/ardour2/branches/2.1-staging@1698 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
200 files changed, 9540 insertions, 9606 deletions
diff --git a/gtk2_ardour/SConscript b/gtk2_ardour/SConscript index 755b779fec..897ab1c090 100644 --- a/gtk2_ardour/SConscript +++ b/gtk2_ardour/SConscript @@ -276,6 +276,13 @@ rcu = gtkardour.Program(target = 'rcu', source = rcu_files) tt = gtkmmtests.Program(target = 'tt', source = tt_files) my_subst_dict = { } + +# +# null substitution just to avoid ardour.bindings being in svn +# + +ardourbindings = env.SubstInFile ('ardour.bindings', 'ardour.bindings.in', SUBST_DICT = my_subst_dict); + my_subst_dict['%INSTALL_PREFIX%'] = final_prefix my_subst_dict['%LIBDIR%'] = env['LIBDIR'] my_subst_dict['%VERSION%'] = ardour_version @@ -286,6 +293,7 @@ env.AddPostAction (ardoursh, Chmod ('$TARGET', 0755)) ardourdev = env.SubstInFile ('ardev_common.sh','ardev_common.sh.in', SUBST_DICT = my_subst_dict); env.AddPostAction (ardourdev, Chmod ('$TARGET', 0755)) +Default(ardourbindings) Default(ardourdev) Default(ardoursh) @@ -329,7 +337,7 @@ env.Alias ('tarball', env.Distribute (env['DISTTREE'], 'ardour.sh.in', 'ardev_common.sh.in', 'ardour2_ui.rc', 'splash.png', - 'ardour.menus', 'ardour.bindings', 'ardour.colors', + 'ardour.menus', 'ardour.bindings.in', 'ardour.colors', 'editor_xpms' ] + gtkardour_files + diff --git a/gtk2_ardour/about.cc b/gtk2_ardour/about.cc index 34bb98199c..ac2a8b28a6 100644 --- a/gtk2_ardour/about.cc +++ b/gtk2_ardour/about.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> @@ -145,14 +144,19 @@ static const char* authors[] = { N_("Stefan Kersten"), N_("Christopher George"), N_("Robert Jordens"), + N_("Dave Robillard"), + N_("Hans Fugal"), N_("Brian Ahr"), N_("Nimal Ratnayake"), + N_("Mike Täht"), + N_("John Anderson"), + N_("Nedko Arnaudov"), 0 }; static const char* translators[] = { N_("French:\n\tAlain Fréhel <alain.frehel@free.fr>\n\tChristophe Combelles <ccomb@free.fr>\n"), - N_("German:\n\tKarsten Petersen <kapet@kapet.de>\n"), + N_("German:\n\tKarsten Petersen <kapet@kapet.de>\n\tSebastian Arnold <mail@sebastian-arnold.net>\n"), N_("Italian:\n\tFilippo Pappalardo <filippo@email.it>\n"), N_("Portuguese:\n\tRui Nuno Capela <rncbc@rncbc.org>\n"), N_("Brazilian Portuguese:\n\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\ @@ -186,7 +190,7 @@ About::About () } set_translator_credits (t); - set_copyright (_("Copyright (C) 1999-2006 Paul Davis\n")); + set_copyright (_("Copyright (C) 1999-2007 Paul Davis\n")); set_license (_("Ardour comes with ABSOLUTELY NO WARRANTY\n" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; see the file COPYING for details.\n")); diff --git a/gtk2_ardour/about.h b/gtk2_ardour/about.h index 3468a31a19..2eb02dd223 100644 --- a/gtk2_ardour/about.h +++ b/gtk2_ardour/about.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_about_h__ diff --git a/gtk2_ardour/actions.cc b/gtk2_ardour/actions.cc index d382878582..6e4a525ba7 100644 --- a/gtk2_ardour/actions.cc +++ b/gtk2_ardour/actions.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <vector> diff --git a/gtk2_ardour/add_route_dialog.cc b/gtk2_ardour/add_route_dialog.cc index f4cc2c6d6a..3907f986d6 100644 --- a/gtk2_ardour/add_route_dialog.cc +++ b/gtk2_ardour/add_route_dialog.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdio> @@ -148,7 +147,7 @@ AddRouteDialog::track_type_chosen () if (track_button.get_active()) { track_mode_combo.set_sensitive (true); } else { - track_mode_combo.set_sensitive (true); + track_mode_combo.set_sensitive (false); } } diff --git a/gtk2_ardour/analysis_window.cc b/gtk2_ardour/analysis_window.cc index dd749d2bb1..957dde3d1f 100644 --- a/gtk2_ardour/analysis_window.cc +++ b/gtk2_ardour/analysis_window.cc @@ -16,7 +16,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <gtkmm2ext/gtk_ui.h> diff --git a/gtk2_ardour/ardev_common.sh.in b/gtk2_ardour/ardev_common.sh.in index 6017dcdba4..fadfb12cb5 100644 --- a/gtk2_ardour/ardev_common.sh.in +++ b/gtk2_ardour/ardev_common.sh.in @@ -6,7 +6,7 @@ export ARDOUR_PATH=gtk2_ardour/icons:gtk2_ardour/pixmaps:gtk2_ardour export GTK_PATH=libs/clearlooks -export LD_LIBRARY_PATH=libs/surfaces/control_protocol:libs/ardour:libs/midi++2:libs/pbd:libs/soundtouch:libs/gtkmm2ext:libs/sigc++2:libs/glibmm2:libs/gtkmm2/atk:libs/gtkmm2/pango:libs/gtkmm2/gdk:libs/gtkmm2/gtk:libs/libgnomecanvasmm:libs/libsndfile:libs/appleutility:$LD_LIBRARY_PATH +export LD_LIBRARY_PATH=libs/surfaces/control_protocol:libs/ardour:libs/midi++2:libs/pbd:libs/soundtouch:libs/gtkmm2ext:libs/sigc++2:libs/glibmm2:libs/gtkmm2/atk:libs/gtkmm2/pango:libs/gtkmm2/gdk:libs/gtkmm2/gtk:libs/libgnomecanvasmm:libs/cairomm:libs/libsndfile:libs/appleutility:$LD_LIBRARY_PATH # DYLD_LIBRARY_PATH is for darwin. export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH diff --git a/gtk2_ardour/ardour.bindings b/gtk2_ardour/ardour.bindings.in index beec8fca38..d8316a0147 100644 --- a/gtk2_ardour/ardour.bindings +++ b/gtk2_ardour/ardour.bindings.in @@ -112,7 +112,6 @@ (gtk_accel_path "<Actions>/Editor/extend-range-to-end-of-region" "rightanglebracket") (gtk_accel_path "<Actions>/Editor/scroll-backward" "leftarrow") (gtk_accel_path "<Actions>/Editor/start-range" "<Control>KP_Down") -; (gtk_accel_path "<Actions>/Editor/ToggleTranzportSurface" "") ; (gtk_accel_path "<Actions>/ShuttleActions/SetShuttleUnitsSemitones" "") ; (gtk_accel_path "<Actions>/JACK/JACKLatency128" "") ; (gtk_accel_path "<Actions>/Snap/snap-to-beat" "") @@ -152,6 +151,7 @@ (gtk_accel_path "<Actions>/Common/goto-editor" "<Alt>e") (gtk_accel_path "<Actions>/Editor/select-all" "<Control>a") (gtk_accel_path "<Actions>/Editor/nudge-next-forward" "<Control>KP_Add") +; (gtk_accel_path "<Actions>/options/ShowSoloMutes" "") ; (gtk_accel_path "<Actions>/Snap/snap-to-eighths" "") (gtk_accel_path "<Actions>/Editor/select-all-after-playhead" "<Shift><Control>p") (gtk_accel_path "<Actions>/Common/ToggleMaximalEditor" "F11") diff --git a/gtk2_ardour/ardour.colors b/gtk2_ardour/ardour.colors index ca2baa1363..fa89646e09 100644 --- a/gtk2_ardour/ardour.colors +++ b/gtk2_ardour/ardour.colors @@ -1,4 +1,5 @@ cWaveForm 0.0 0.0 0.0 0.80 +cWaveFormClip 1.0 0.0 0.0 0.90 cMutedWaveForm 0.35 0.35 0.35 1.0 cSelectedFrameBase 0.71 0.57 0.66 1.0 cFrameBase 0.75 0.75 0.76 1.0 @@ -41,7 +42,7 @@ cLocationRange 0.29 0.48 0.35 1.0 cLocationCDMarker 0.12 0.91 0.77 1.0 cLocationLoop 0.21 0.59 0.31 1.0 cLocationPunch 0.49 0.23 0.23 1.0 -cVerboseCanvasCursor 0 0 0 0.74 +cVerboseCanvasCursor 0.96 0.95 0.08 0.74 cRangeDragBarRect 0.59 0.59 0.59 0.78 cRangeDragBarRectFill 0.78 0.82 0.70 0.43 cRangeDragRect 0.59 0.59 0.59 0.78 @@ -69,6 +70,9 @@ cMeasureLineBeat 0.45 0.45 0.45 0.40 cMeasureLineBar 0.55 0.55 0.60 0.55 cGhostTrackBaseOutline 0.00 0.00 0.00 1.00 cGhostTrackBaseFill 0.27 0.00 0.49 0.50 +cGhostTrackWave 0.0 3.00 0.0 0.30 +cGhostTrackWaveClip 1.0 0.0 0.0 0.0 +cGhostTrackZeroLine 0.9 0.0 0.9 0.40 cImageTrackBase 0.87 0.87 0.85 1.00 cImageTrackOutline 0.00 0.00 0.00 1.00 cMarkerTrackBase 0.87 0.87 0.85 1.00 @@ -98,3 +102,6 @@ cTrimHandleLockedStart 0.92 0.06 0.06 0.16 cTrimHandleLockedEnd 0.92 0.06 0.06 0.16 cTrimHandleStart 0.10 0.00 1.00 0.27 cTrimHandleEnd 0.10 0.00 1.00 0.27 +cEditCursor 0.00 0.00 1.00 1.00 +cPlayHead 1.00 0.00 0.00 1.00 + diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus index 0ba48a0d45..e7463553d2 100644 --- a/gtk2_ardour/ardour.menus +++ b/gtk2_ardour/ardour.menus @@ -291,8 +291,12 @@ <menuitem action='OutputAutoConnectMaster'/> <menuitem action='OutputAutoConnectManual'/> </menu> - <menu action='ControlSurfaces'/> - <menu action='Monitoring'> + <menu action='ControlSurfaces'> + <menuitem action='RemoteUserDefined'/> + <menuitem action='RemoteMixerDefined'/> + <menuitem action='RemoteEditorDefined'/> + </menu> + <menu action='Monitoring'> <menuitem action='UseHardwareMonitoring'/> <menuitem action='UseSoftwareMonitoring'/> <menuitem action='UseExternalMonitoring'/> @@ -318,6 +322,7 @@ <menuitem action='LatchedSolo'/> <menuitem action='SoloInPlace'/> <menuitem action='SoloViaBus'/> + <menuitem action='ShowSoloMutes'/> </menu> <menu action='Crossfades'> <menuitem action='toggle-xfades-active'/> @@ -337,6 +342,7 @@ <menuitem action='SendMMC'/> <menuitem action='UseMMC'/> <separator/> + <menuitem action='UseOSC'/> <menuitem action='StopPluginsWithTransport'/> <menuitem action='DoNotRunPluginsWhileRecording'/> <menuitem action='LatchedRecordEnable'/> diff --git a/gtk2_ardour/ardour2_ui.rc b/gtk2_ardour/ardour2_ui.rc index 46c7057ea3..35a2463bcc 100644 --- a/gtk2_ardour/ardour2_ui.rc +++ b/gtk2_ardour/ardour2_ui.rc @@ -80,7 +80,7 @@ style "marker_text" style "time_axis_view_item_name" { - font_name = "sans 6" + font_name = "sans 9" } style "default_base" = "medium_text" @@ -184,24 +184,58 @@ style "small_red_active_and_selected_button" = "small_button" bg[SELECTED] = { 1.0, 0, 0} } +style "gain_fader" +{ + bg[NORMAL] = { 0.269, 0.269, 0.300} + bg[ACTIVE] = { 0.152, 0.152, 0.168 } +} + + style "track_rec_enable_button" = "small_button" { +} + +style "track_rec_enable_button_active" = "small_button" +{ fg[SELECTED] = { 0.0, 0.0, 0.0 } fg[ACTIVE] = { 0.0, 0.0, 0.0 } fg[PRELIGHT] = { 0.0, 0.0, 0.0 } + fg[NORMAL] = { 0.0, 0.0, 0.0 } + bg[NORMAL] = { 1.0, 0.0, 0.0 } + bg[ACTIVE] = { 1.0, 0.0, 0.0 } bg[SELECTED] = { 1.0, 0.0, 0.0 } - bg[ACTIVE] = { 0.91, 0.68, 0.68} bg[PRELIGHT] = { 1.0, 0.0, 0.0 } } -style "gain_fader" +style "track_rec_enable_button_alternate" = "small_button" { - bg[NORMAL] = { 0.269, 0.269, 0.300} - bg[ACTIVE] = { 0.152, 0.152, 0.168 } + fg[SELECTED] = { 0.0, 0.0, 0.0 } + fg[ACTIVE] = { 0.0, 0.0, 0.0 } + fg[PRELIGHT] = { 0.0, 0.0, 0.0 } + fg[NORMAL] = { 0.0, 0.0, 0.0 } + + bg[NORMAL] = { 0.91, 0.68, 0.68} + bg[ACTIVE] = { 0.91, 0.68, 0.68} + bg[SELECTED] = { 0.91, 0.68, 0.68} + bg[PRELIGHT] = { 0.91, 0.68, 0.68} +} + +style "mixer_track_rec_enable_button" = "track_rec_enable_button" +{ + font_name = "sans 7" + xthickness = 0 + ythickness = 0 } -style "mixer_rec_enable_button" = "track_rec_enable_button" +style "mixer_track_rec_enable_button_alternate" = "track_rec_enable_button_alternate" +{ + font_name = "sans 7" + xthickness = 0 + ythickness = 0 +} + +style "mixer_track_rec_enable_button_active" = "track_rec_enable_button_active" { font_name = "sans 7" xthickness = 0 @@ -210,20 +244,33 @@ style "mixer_rec_enable_button" = "track_rec_enable_button" style "solo_button" = "small_button" { - bg[PRELIGHT] = { 0, 1.0, 0 } - bg[ACTIVE] = { 0.66, 0.97, 0.19 } +} + +style "solo_button_alternate" = "small_button" +{ + bg[NORMAL] = { 0.19, 0.97, 0.69 } # solo-safe + bg[ACTIVE] = { 0.19, 0.97, 0.69 } # solo-safe + bg[SELECTED] = { 0.19, 0.97, 0.69 } # solo-safe + bg[PRELIGHT] = { 0.19, 0.97, 0.69 } # solo-safe - fg[PRELIGHT] = { 0, 0, 0 } fg[ACTIVE] = { 0, 0, 0 } + fg[SELECTED] = { 0, 0, 0 } + fg[NORMAL] = { 0, 0, 0 } + fg[PRELIGHT] = { 0, 0, 0 } } -style "safe_solo_button" = "small_button" + +style "solo_button_active" = "small_button" { - bg[PRELIGHT] = { 0, 1.0, 0 } - bg[ACTIVE] = { 0.19, 0.97, 0.69 } + bg[NORMAL] = { 0.66, 0.97, 0.19 } # solo + bg[ACTIVE] = { 0.66, 0.97, 0.19 } # solo + bg[SELECTED] = { 0.66, 0.97, 0.19 } # solo + bg[PRELIGHT] = { 0.66, 0.97, 0.19 } # solo - fg[PRELIGHT] = { 0, 0, 0 } fg[ACTIVE] = { 0, 0, 0 } + fg[SELECTED] = { 0, 0, 0 } + fg[NORMAL] = { 0, 0, 0 } + fg[PRELIGHT] = { 0, 0, 0 } } style "mixer_solo_button" = "solo_button" @@ -231,27 +278,72 @@ style "mixer_solo_button" = "solo_button" font_name = "sans 7" xthickness = 0 ythickness = 0 - } -style "mixer_safe_solo_button" = "safe_solo_button" +style "mixer_solo_button_alternate" = "solo_button_alternate" +{ + font_name = "sans 7" + xthickness = 0 + ythickness = 0 +} +style "mixer_solo_button_active" = "solo_button_active" { font_name = "sans 7" xthickness = 0 ythickness = 0 - } style "mute_button" = "small_button" { - bg[PRELIGHT] = { 1.0, 0.65, 0.13 } +} + +style "mute_button_alternate" = "small_button" +{ bg[ACTIVE] = { 1.0, 0.98, 0.53 } - + bg[NORMAL] = { 1.0, 0.98, 0.53 } + bg[SELECTED] = { 1.0, 0.98, 0.53 } + bg[PRELIGHT] = { 1.0, 0.98, 0.53 } + + fg[SELECTED] = { 0, 0, 0 } + fg[ACTIVE] = { 0, 0, 0 } + fg[NORMAL] = { 0, 0, 0 } fg[PRELIGHT] = { 0, 0, 0 } +} + +style "mute_button_active" = "small_button" +{ + bg[NORMAL] = { 0.90, 0.89, 0.73 } + bg[ACTIVE] = { 0.90, 0.89, 0.73 } + bg[PRELIGHT] = { 0.90, 0.89, 0.73 } + bg[SELECTED] = { 0.90, 0.89, 0.73 } + + fg[SELECTED] = { 0, 0, 0 } fg[ACTIVE] = { 0, 0, 0 } + fg[NORMAL] = { 0, 0, 0 } + fg[PRELIGHT] = { 0, 0, 0 } } +style "mixer_mute_button" = "mute_button" +{ + font_name = "sans 7" + xthickness = 0 + ythickness = 0 +} + +style "mixer_mute_button_alternate" = "mute_button_alternate" +{ + font_name = "sans 7" + xthickness = 0 + ythickness = 0 +} + +style "mixer_mute_button_active" = "mute_button_active" +{ + font_name = "sans 7" + xthickness = 0 + ythickness = 0 +} style "multiline_combo" = "small_button" { @@ -290,14 +382,39 @@ style "time_button" = "default_buttons_menus" style "transport_button" { +} + +style "transport_button_active" +{ + bg[NORMAL] = { 0.50, 1.0, 0.50 } bg[ACTIVE] = { 0.50, 1.0, 0.50 } + bg[SELECTED] = { 0.50, 1.0, 0.50 } + bg[PRELIGHT] = { 0.50, 1.0, 0.50 } + + fg[NORMAL] = { 0, 0, 0 } + fg[PRELIGHT] = { 0, 0, 0 } + fg[SELECTED] = { 0, 0, 0 } fg[ACTIVE] = { 0, 0, 0 } } style "transport_rec_button" { +} + +style "transport_rec_button_active" +{ bg[ACTIVE] = { 1.0, 0, 0 } - bg[PRELIGHT] = { 0.91, 0.68, 0.68 } #blinking rec button color + bg[NORMAL] = { 1.0, 0, 0 } + bg[SELECTED] = { 1.0, 0, 0 } + bg[PRELIGHT] = { 1.0, 0, 0 } +} + +style "transport_rec_button_alternate" +{ + bg[PRELIGHT] = { 0.91, 0.68, 0.68 } + bg[NORMAL] = { 0.91, 0.68, 0.68 } + bg[SELECTED] = { 0.91, 0.68, 0.68 } + bg[ACTIVE] = { 0.91, 0.68, 0.68 } } style "shuttle_control" = "very_small_text" @@ -721,11 +838,11 @@ style "track_controls_inactive" style "edit_controls_base_selected" { - bg[NORMAL] = { 0.56, 0.56, 0.56 } - bg[ACTIVE] = { 0.56, 0.56, 0.56 } - bg[INSENSITIVE] = { 0.56, 0.56, 0.56 } - bg[SELECTED] = { 0.56, 0.56, 0.56 } - bg[PRELIGHT] = { 0.56, 0.56, 0.56 } + bg[NORMAL] = { 0.60, 0.54, 0.60 } + bg[ACTIVE] = { 0.60, 0.54, 0.60 } + bg[INSENSITIVE] = { 0.60, 0.54, 0.60 } + bg[SELECTED] = { 0.60, 0.54, 0.60 } + bg[PRELIGHT] = { 0.60, 0.54, 0.60 } } style "automation_track_controls_base" @@ -1014,355 +1131,365 @@ style "ardour_button" ="default_buttons_menus" } #--------------------------------------------------------------- -widget "*FirstActionMessage" style "first_action_message" -widget "*VerboseCanvasCursor" style "verbose_canvas_cursor" -widget "*MarkerText" style "marker_text" -widget "*TimeAxisViewItemName*" style "time_axis_view_item_name" -#widget "*ExportProgress" style "default_buttons_menus" -widget "*ExportFileLabel" style "small_bold_text" -widget "*ExportFormatLabel" style "medium_bold_text" -widget "*ExportHeader" style "small_bold_text" -widget "*ExportFileDisplay" style "medium_entry" -widget "*ExportFormatDisplay" style "medium_entry" -widget "*ExportCheckbox" style "small_entry" -widget "*ExportTrackSelector*" style "medium_entry_noselection_bg" -widget "*EditModeSelector" style "medium_bold_entry" -widget "*SnapTypeSelector" style "medium_bold_entry" -widget "*SnapModeSelector" style "medium_bold_entry" -widget "*ZoomFocusSelector" style "medium_bold_entry" -widget "*ArdourContextMenu*" style "default_buttons_menus" -widget "*EditGroupTitleButton*" style "default_buttons_menus" -widget "*MixerGroupTitleButton*" style "default_buttons_menus" -widget "*ErrorLogCloseButton" style "default_buttons_menus" -widget "*EditorGTKButton*" style "default_buttons_menus" -widget "*ToolbarButton" style "default_buttons_menus" -widget "*ToolbarButton*" style "default_buttons_menus" -widget "*CrossfadeEditButton" style "default_buttons_menus" -widget "*CrossfadeEditButton*" style "default_buttons_menus" -widget "*TrackHistoryButton*" style "default_buttons_menus" -widget "*TrackSizeButton*" style "default_buttons_menus" -widget "*TrackPlaylistButton*" style "default_buttons_menus" -widget "*TrackAutomationButton*" style "default_buttons_menus" -widget "*TrackGroupButton*" style "default_buttons_menus" -widget "*TrackMixButton*" style "default_buttons_menus" -widget "*TrackVisualButton*" style "default_buttons_menus" -widget "*TrackRemoveButton*" style "default_buttons_menus" -widget "*BaseButton" style "default_buttons_menus" -widget "*TakeButtonLabel" style "default_buttons_menus" -widget "*MixerWidthButton" style "default_buttons_menus" -widget "*MixerHideButton" style "default_buttons_menus" -widget "*MixerSendButton" style "default_buttons_menus" -widget "*MixerSendButtonLabel" style "default_buttons_menus" -widget "*MixerSendSwitch" style "default_buttons_menus" -widget "*MixerInsertButton" style "default_buttons_menus" -widget "*MixerInsertButtonLabel" style "default_buttons_menus" -widget "*MixerInsertSwitch" style "default_buttons_menus" -widget "*MixerMonitorInputButton*" style "very_small_button" -widget "*MixerMonitorInputButton.*" style "very_small_button" -widget "*MixerIOButton" style "very_small_button" -widget "*MixerIOButtonLabel" style "very_small_button" -widget "*AddRouteDialogSpinner" style "ardour_adjusters" -widget "*AddRouteDialogRadioButton*" style "options_window" -widget "*OptionsNotebook" style "options_window" -widget "*OptionEditorToggleButton*" style "options_window" -widget "*OptionsLabel" style "options_window" -widget "*OptionEditorAuditionerLabel" style "options_window" -widget "*OptionsEntry" style "option_entry" -widget "*InspectorNotebook" style "options_window" -widget "*NewSessionDialog" style "options_window" -widget "*NewSessionDialogButton*" style "options_window" -widget "*MixerSendSwitch*" style "very_small_red_active_and_selected_button" -widget "*OptionEditorToggleButton" style "small_red_active_and_selected_button" -widget "*NewSessionDialogButton" style "small_red_active_and_selected_button" -widget "*MixerRecordEnableButton" style "mixer_rec_enable_button" -widget "*MixerRecordEnableButton*" style "mixer_rec_enable_button" -widget "*TrackRecordEnableButton" style "track_rec_enable_button" -widget "*TrackRecordEnableButton*" style "track_rec_enable_button" -widget "*TrackMuteButton*" style "mute_button" -widget "*TrackLoopButton*" style "track_loop_button" -widget "*PanAutomationLineSelector*" style "multiline_combo" -widget "*EditorTimeButton*" style "time_button" -widget "*EditorMixerButton*" style "default_buttons_menus" -widget "*SoloButton*" style "solo_button" -widget "*SoloButton.*" style "solo_button" -widget "*SafeSoloButton*" style "safe_solo_button" -widget "*SafeSoloButton.*" style "safe_solo_button" -widget "*MixerPhaseInvertButton*" style "very_small_button" -widget "*MixerPhaseInvertButton.*" style "very_small_button" -widget "*MixerAutomationRecordingButton*" style "very_small_button" -widget "*MixerAutomationRecordingButton.*" style "very_small_button" -widget "*MixerAutomationModeButton*" style "very_small_button" -widget "*MixerAutomationModeButton.*" style "very_small_button" -widget "*MixerAutomationPlaybackButton*" style "very_small_button" -widget "*MixerAutomationPlaybackButton.*" style "very_small_button" -widget "*MixerMuteButton*" style "mixer_mute_button" -widget "*MixerMuteButton.*" style "mixer_mute_button" -widget "*MixerSoloButton*" style "mixer_solo_button" -widget "*MixerSoloButton.*" style "mixer_solo_button" -widget "*MixerNameButton" style "very_small_button" -widget "*MixerNameButtonLabel" style "very_small_button" -widget "*MixerGroupButton" style "very_small_button" -widget "*MixerGroupButtonLabel" style "very_small_button" -widget "*MixerCommentButton" style "very_small_button" -widget "*MixerCommentButton*" style "very_small_button" -widget "*EditGroupButton" style "very_small_button" -widget "*EditGroupButtonLabel" style "very_small_button" -widget "*TransportButton" style "transport_button" -widget "*TransportButton*" style "transport_button" -widget "*ShuttleButton" style "transport_button" -widget "*ShuttleButton*" style "transport_button" -widget "*ShuttleDisplay" style "transport_button" -widget "*ShuttleDisplay*" style "transport_button" -widget "*ShuttleControl" style "shuttle_control" -widget "*TransportRecButton" style "transport_rec_button" -widget "*TransportRecButton*" style "transport_rec_button" -widget "*RecordingXrunWarningWindow" style "xrun_warn" -widget "*RecordingXrunWarningWindow*" style "xrun_warn" -widget "*MainMenuBar" style "menu_bar_base" -widget "*ErrorMessage" style "error_message" -widget "*FatalMessage" style "fatal_message" -widget "*InfoMessage" style "info_message" -widget "*WarningMessage" style "warning_message" -widget "*BigClockNonRecording" style "non_recording_big_clock_display" -widget "*BigClockRecording" style "recording_big_clock_display" -widget "*TransportClockDisplay" style "transport_clock_display" -widget "*SecondaryClockDisplay" style "transport_clock_display" -widget "*AudioClockFramesUpperInfo" style "tempo_meter_clock_display" -widget "*AudioClockFramesLowerInfo" style "tempo_meter_clock_display" -widget "*AudioClockSMPTEUpperInfo" style "tempo_meter_clock_display" -widget "*AudioClockSMPTELowerInfo" style "tempo_meter_clock_display" -widget "*AudioClockBBTUpperInfo" style "tempo_meter_clock_display" -widget "*AudioClockBBTLowerInfo" style "tempo_meter_clock_display" -widget "*SelectionStartClock" style "default_clock_display" -widget "*SelectionEndClock" style "default_clock_display" -widget "*EditCursorClock" style "default_clock_display" -widget "*PreRollClock" style "default_clock_display" -widget "*PostRollClock" style "default_clock_display" -widget "*NudgeClock" style "default_clock_display" -widget "*ZoomRangeClock" style "default_clock_display" -widget "*SMPTEOffsetClock" style "default_clock_display" -widget "*TransportLabel" style "small_bold_text" -widget "*TakeLabel" style "small_bold_text" -widget "*LocationLabel" style "small_bold_text" -widget "*WipeLabel" style "small_bold_text" -widget "*TakeTagLabel" style "small_bold_text" -widget "*ToolBarLabel" style "small_bold_text" -widget "*EditorDisplayLabel" style "small_bold_text" -widget "*NewSessionLabel" style "large_text" -widget "*GlobalButtonLabel" style "default_buttons_menus" -widget "*ClickButton" style "medium_entry" -widget "*RegionNameDisplay" style "medium_entry" -widget "*PluginDisplay" style "medium_entry" -widget "*SelectionDisplay" style "medium_entry" -widget "*HistorySelector" style "medium_entry" -widget "*LocationSelector" style "medium_entry" -widget "*TakeSelector" style "medium_entry" -widget "*RegionSelector" style "medium_entry" -widget "*SMPTERuler" style "editor_time_ruler" -widget "*BBTRuler" style "editor_time_ruler" -widget "*FramesRuler" style "editor_time_ruler" -widget "*MinSecRuler" style "editor_time_ruler" -widget "*BaseFrame" style "base_frame" -widget "*AudioTrackStripBase" style "audio_track_base" -widget "*TimeAxisViewControlsBaseUnselected" style "audio_track_base" -widget "*AudioTrackControlsBaseUnselected" style "audio_track_base" -widget "*AudioTrackFader" style "gain_fader" -widget "*AudioBusStripBase" style "audio_bus_base" -widget "*BusControlsBaseUnselected" style "audio_bus_base" -widget "*AudioBusFader" style "gain_fader" -widget "*TrackSeparator" style "track_separator" -widget "*TrackEditIndicator0*" style "edit_group_0" -widget "*TrackEditIndicator1*" style "edit_group_1" -widget "*TrackEditIndicator2*" style "edit_group_2" -widget "*TrackEditIndicator3*" style "edit_group_3" -widget "*TrackEditIndicator4*" style "edit_group_3" -widget "*TrackEditIndicator5*" style "edit_group_3" -widget "*TrackEditIndicator6*" style "edit_group_3" -widget "*TrackEditIndicator7*" style "edit_group_3" -widget "*EditorTrackNameDisplay" style "track_name_display" -widget "*EditorTrackNameDisplay*" style "track_name_display" -widget "*EditorActiveTrackNameDisplay" style "active_track_name_display" -widget "*EditorActiveTrackNameDisplay*" style "active_track_name_display" -widget "*CrossfadeEditAuditionButton" style "red_when_active" -widget "*CrossfadeEditAuditionButton*" style "red_when_active" -widget "*CrossfadeEditCurveButton" style "red_when_active" -widget "*CrossfadeEditCurveButton*" style "red_when_active" -widget "*CrossfadeEditLabel" style "medium_text" -widget "*CrossfadeEditFrame" style "base_frame" -widget "*MouseModeButton" style "default_buttons_menus" -widget "*MouseModeButton*" style "default_buttons_menus" -widget "*EditorMainCanvas" style "main_canvas_area" -widget "*AudioTrackControlsBaseInactiveUnselected" style "track_controls_inactive" -widget "*BusControlsBaseInactiveUnselected" style "track_controls_inactive" -widget "*AutomationTrackControlsBaseInactiveUnselected" style "track_controls_inactive" -widget "*AutomationTrackName" style "automation_track_name" -widget "*AudioTrackControlsBaseInactiveSelected" style "track_controls_inactive" -widget "*BusControlsBaseInactiveSelected" style "track_controls_inactive" -widget "*AutomationTrackControlsBaseInactiveSelected" style "track_controls_inactive" -widget "*AudioTrackStripBaseInactive" style "track_controls_inactive" -widget "*AudioBusStripBaseInactive" style "track_controls_inactive" -widget "*AudioTrackControlsBaseSelected" style "edit_controls_base_selected" -widget "*BusControlsBaseSelected" style "edit_controls_base_selected" -widget "*AutomationTrackControlsBase" style "automation_track_controls_base" -widget "*AutomationTrackControlsBaseSelected" style "edit_controls_base_selected" -widget "*EditorMenuBar*" style "black_mackie_menu_bar" -widget "*MainMenuBar*" style "black_mackie_menu_bar" -widget "*ZoomClickBox" style "medium_bold_entry" -widget "*PluginParameterLabel" style "medium_text" -widget "*PluginNameInfo" style "plugin_name_text" -widget "*PluginMakerInfo" style "plugin_maker_text" -widget "*PluginParameterInfo" style "medium_text" -widget "*MotionControllerValue" style "medium_entry" -widget "*ParameterValueDisplay" style "medium_bold_entry" -widget "*PluginUIClickBox" style "medium_bold_entry" -widget "*PluginUIClickBox*" style "medium_bold_entry" -widget "*PluginSlider" style "plugin_slider" -widget "*RedirectSelector" style "redirect_list_display" -widget "*RedirectSelector.*" style "redirect_list_display" -widget "*EditGroupDisplay" style "treeview_display" -widget "*TrackListDisplay" style "treeview_display" -widget "*RegionListDisplay" style "treeview_display" -widget "*NamedSelectionDisplay" style "treeview_display" -widget "*SnapshotDisplay" style "treeview_display" -widget "*MixerTrackCommentArea" style "option_entry" -widget "*MixerPanZone" style "pan_zone" -widget "*MixerTrackDisplayList" style "treeview_display" -widget "*MixerSnapshotDisplayList" style "treeview_display" -widget "*MixerAuxDisplayList" style "treeview_display" -widget "*MixerGroupList" style "treeview_display" -widget "*RegionEditorLabel" style "medium_text" -widget "*RegionEditorSmallLabel" style "small_text" -widget "*RegionEditorEntry" style "medium_entry" -widget "*RegionEditorClock" style "default_clock_display" -widget "*RegionEditorToggleButton" style "paler_red_when_active" -widget "*RegionEditorToggleButton*" style "paler_red_when_active" -widget "*MixerStripSpeedBase" style "small_entry" -widget "*MixerStripSpeedBase*" style "small_entry" -widget "*MixerStripSpeedBaseNotOne" style "small_red_on_black_entry" -widget "*MixerStripSpeedBaseNotOne*" style "small_red_on_black_entry" -widget "*MixerStripGainDisplay" style "small_entry" -widget "*MixerStripGainDisplay*" style "small_entry" -widget "*MixerStripGainUnitButton" style "very_small_button" -widget "*MixerStripGainUnitButton*" style "very_small_button" -widget "*MixerStripMeterPreButton" style "very_small_button" -widget "*MixerStripMeterPreButton*" style "very_small_button" -widget "*MixerStripPeakDisplay*" style "red_active_small_entry" -widget "*MixerStripPeakDisplayPeak*" style "peak_display_peaked_entry" -widget "*MixerStripSelectedFrame" style "selected_strip_frame" -widget "*MixerStripFrame" style "base_frame" -widget "*HWMonitorButton" style "red_when_active" -widget "*HWMonitorButton*" style "red_when_active" -widget "*BypassButton" style "red_when_active" -widget "*BypassButton*" style "red_when_active" -widget "*TransportSoloAlert" style "flashing_alert" -widget "*TransportSoloAlert.*" style "flashing_alert" -widget "*TransportAuditioningAlert" style "flashing_alert" -widget "*TransportAuditioningAlert.*" style "flashing_alert" -widget "*FadeCurve" style "medium_bold_entry" -widget "*FadeCurve*" style "medium_bold_entry" -widget "*IOSelectorButton" style "default_buttons_menus" -widget "*IOSelectorButton*" style "default_buttons_menus" -widget "*IOSelectorList" style "medium_entry_noselection_fg" -widget "*IOSelectorPortList" style "io_selector_port_list" -widget "*IOSelectorPortList.*" style "io_selector_port_list" -widget "*IOSelectorPortListSelected" style "selected_io_selector_port_list" -widget "*IOSelectorPortListSelected.*" style "selected_io_selector_port_list" -widget "*IOSelectorNotebook" style "io_selector_notebook" -widget "*IOSelectorNotebookTab" style "io_selector_notebook" -widget "*IOSelectorFrame" style "base_frame" -widget "*ConnectionEditorButton" style "default_buttons_menus" -widget "*ConnectionEditorButton*" style "default_buttons_menus" -widget "*ConnectionEditorList" style "medium_entry_noselection_fg" -widget "*ConnectionEditorConnectionList" style "medium_entry" -widget "*ConnectionEditorPortList" style "io_selector_port_list" -widget "*ConnectionEditorPortListSelected" style "selected_io_selector_port_list" -widget "*ConnectionEditorNotebook" style "io_selector_notebook" -widget "*ConnectionEditorNotebookTab" style "io_selector_notebook" -widget "*ConnectionEditorFrame" style "base_frame" -widget "*RouteParamsListDisplay" style "inspector_track_list_display" -widget "*RouteParamsPreListDisplay" style "inspector_redirect_list_display" -widget "*RouteParamsPostListDisplay" style "inspector_redirect_list_display" -widget "*TearOffArrow" style "tearoff_arrow" -widget "*RouteParamsTitleButton" style "medium_text" -widget "*RouteParamsTitleLabel" style "medium_text" -widget "*PluginAutomateRecordButton" style "small_red_active_and_selected_button" -widget "*PluginAutomateRecordButton*" style "small_red_active_and_selected_button" -widget "*PluginAutomatePlayButton" style "small_red_active_and_selected_button" -widget "*PluginAutomatePlayButton*" style "small_red_active_and_selected_button" -widget "*PluginAutomateButton" style "small_button" -widget "*PluginAutomateButton*" style "small_button" -widget "*PluginSaveButton" style "small_button" -widget "*PluginSaveButton*" style "small_button" -widget "*PluginLoadButton" style "small_button" -widget "*PluginLoadButton*" style "small_button" -widget "*FaderMetricsStrip" style "meter_metrics_strip" -widget "*MeterMetricsStrip" style "meter_metrics_strip" -widget "*MetricDialogFrame" style "base_frame" -widget "*MetricEntry" style "medium_bold_entry" -widget "*MetricButton" style "default_buttons_menus" -widget "*MetricButton.*" style "default_buttons_menus" -widget "*MetricLabel" style "medium_text" -widget "*TimeStretchButton" style "default_buttons_menus" -widget "*TimeStretchButton.*" style "default_buttons_menus" -widget "*TimeStretchProgress" style "default_buttons_menus" -widget "*ChoiceWindow" style "default_buttons_menus" -widget "*ChoicePrompt" style "default_buttons_menus" -widget "*ChoiceButton" style "default_buttons_menus" -widget "*ChoiceButton*" style "default_buttons_menus" -widget "*SelectionModeButton" style "default_buttons_menus" -widget "*SelectionModeButton*" style "default_buttons_menus" -widget "*TrackLabel" style "medium_text" -widget "*TrackPlugName" style "medium_text" -widget "*TrackParameterName" style "small_text" -widget "*AddRouteDialog*" style "medium_text" -widget "*AddRouteDialog.GtkLabel" style "medium_text" -widget "*AddRouteDialogChannelChoice" style "medium_bold_entry" -widget "*AddRouteDialogSpinner" style "medium_bold_entry" -widget "*AddRouteDialogSpinner*" style "medium_bold_entry" -widget "*AddRouteDialogRadioButton" style "red_when_active" -widget "*AddRouteDialogButton" style "default_buttons_menus" -widget "*AddRouteDialogNameTemplateEntry" style "medium_bold_entry" -widget "*NewSessionIOLabel" style "larger_bold_text" -widget "*NewSessionSR1Label" style "red_medium_text" -widget "*NewSessionSR2Label" style "medium_text" -widget "*NewSessionChannelChoice" style "medium_bold_entry" -widget "*NewSessionMainButton" style "larger_bold_text" -widget "*NewSessionMainButton*" style "larger_bold_text" -widget "*NewSessionMainLabel" style "larger_bold_text" -widget "*LocationEditRowClock" style "location_rows_clock" -widget "*LocationEditNameLabel" style "medium_text" -widget "*LocationEditSetButton" style "location_row_button" -widget "*LocationEditSetButton*" style "location_row_button" -widget "*LocationEditGoButton" style "location_row_button" -widget "*LocationEditGoButton*" style "location_row_button" -widget "*LocationEditCdButton" style "small_red_active_and_selected_button" -widget "*LocationEditCdButton*" style "small_red_active_and_selected_button" -widget "*LocationEditHideButton" style "small_red_active_and_selected_button" -widget "*LocationEditHideButton*" style "small_red_active_and_selected_button" -widget "*LocationEditNumberLabel" style "small_text" -widget "*LocationLocEditorFrame" style "base_frame" -widget "*LocationRangeEditorFrame" style "base_frame" -widget "*LocationEditNameEntry" style "option_entry" -widget "*LocationAddLocationButton" style "default_buttons_menus" -widget "*LocationAddLocationButton*" style "default_buttons_menus" -widget "*LocationAddRangeButton" style "default_buttons_menus" -widget "*LocationAddRangeButton*" style "default_buttons_menus" -widget "*LocationEditRemoveButton" style "location_row_button" -widget "*LocationEditRemoveButton*" style "location_row_button" -widget "*PanSlider" style "pan_slider" -widget "*PanningLinkButton" style "mixer_red_active_button" -widget "*PanningLinkButton.*" style "mixer_red_active_button" -widget "*PanningLinkDirectionButton" style "very_small_button" -widget "*PanningLinkDirectionButton.*" style "very_small_button" -widget "*ChannelCountSelector" style "medium_bold_entry" -widget "*ChannelCountSelector.GtkArrow" style "default_buttons_menus" -widget "*RegionListWholeFile" style "treeview_parent_node" -widget "*EditorHScrollbar" style "editor_hscrollbar" - -class "GtkWidget" style "default_base" -class "GtkScrollbar" style "ardour_adjusters" -class "GtkLabel" style "default_buttons_menus" -class "GtkButton" style "ardour_button" -class "GtkArrow" style "tearoff_arrow" -class "GtkProgressBar" style "ardour_progressbars" + +class "GtkWidget" style:highest "default_base" +class "GtkScrollbar" style:highest "ardour_adjusters" +class "GtkLabel" style:highest "default_buttons_menus" +class "GtkButton" style:highest "ardour_button" +class "GtkArrow" style:highest "tearoff_arrow" +class "GtkProgressBar" style:highest "ardour_progressbars" + +widget "*FirstActionMessage" style:highest "first_action_message" +widget "*VerboseCanvasCursor" style:highest "verbose_canvas_cursor" +widget "*MarkerText" style:highest "marker_text" +widget "*TimeAxisViewItemName*" style:highest "time_axis_view_item_name" +#widget "*ExportProgress" style:highest "default_buttons_menus" +widget "*ExportFileLabel" style:highest "small_bold_text" +widget "*ExportFormatLabel" style:highest "medium_bold_text" +widget "*ExportHeader" style:highest "small_bold_text" +widget "*ExportFileDisplay" style:highest "medium_entry" +widget "*ExportFormatDisplay" style:highest "medium_entry" +widget "*ExportCheckbox" style:highest "small_entry" +widget "*ExportTrackSelector*" style:highest "medium_entry_noselection_bg" +widget "*EditModeSelector" style:highest "medium_bold_entry" +widget "*SnapTypeSelector" style:highest "medium_bold_entry" +widget "*SnapModeSelector" style:highest "medium_bold_entry" +widget "*ZoomFocusSelector" style:highest "medium_bold_entry" +widget "*ArdourContextMenu*" style:highest "default_buttons_menus" +widget "*EditGroupTitleButton*" style:highest "default_buttons_menus" +widget "*MixerGroupTitleButton*" style:highest "default_buttons_menus" +widget "*ErrorLogCloseButton" style:highest "default_buttons_menus" +widget "*EditorGTKButton*" style:highest "default_buttons_menus" +widget "*ToolbarButton" style:highest "default_buttons_menus" +widget "*ToolbarButton*" style:highest "default_buttons_menus" +widget "*CrossfadeEditButton" style:highest "default_buttons_menus" +widget "*CrossfadeEditButton*" style:highest "default_buttons_menus" +widget "*TrackHistoryButton*" style:highest "default_buttons_menus" +widget "*TrackSizeButton*" style:highest "default_buttons_menus" +widget "*TrackPlaylistButton*" style:highest "default_buttons_menus" +widget "*TrackAutomationButton*" style:highest "default_buttons_menus" +widget "*TrackGroupButton*" style:highest "default_buttons_menus" +widget "*TrackMixButton*" style:highest "default_buttons_menus" +widget "*TrackVisualButton*" style:highest "default_buttons_menus" +widget "*TrackRemoveButton*" style:highest "default_buttons_menus" +widget "*BaseButton" style:highest "default_buttons_menus" +widget "*TakeButtonLabel" style:highest "default_buttons_menus" +widget "*MixerWidthButton" style:highest "default_buttons_menus" +widget "*MixerHideButton" style:highest "default_buttons_menus" +widget "*MixerSendButton" style:highest "default_buttons_menus" +widget "*MixerSendButtonLabel" style:highest "default_buttons_menus" +widget "*MixerSendSwitch" style:highest "default_buttons_menus" +widget "*MixerInsertButton" style:highest "default_buttons_menus" +widget "*MixerInsertButtonLabel" style:highest "default_buttons_menus" +widget "*MixerInsertSwitch" style:highest "default_buttons_menus" +widget "*MixerMonitorInputButton*" style:highest "very_small_button" +widget "*MixerMonitorInputButton.*" style:highest "very_small_button" +widget "*MixerIOButton" style:highest "very_small_button" +widget "*MixerIOButtonLabel" style:highest "very_small_button" +widget "*AddRouteDialogSpinner" style:highest "ardour_adjusters" +widget "*AddRouteDialogRadioButton*" style:highest "options_window" +widget "*OptionsNotebook" style:highest "options_window" +widget "*OptionEditorToggleButton*" style:highest "options_window" +widget "*OptionsLabel" style:highest "options_window" +widget "*OptionEditorAuditionerLabel" style:highest "options_window" +widget "*OptionsEntry" style:highest "option_entry" +widget "*InspectorNotebook" style:highest "options_window" +widget "*NewSessionDialog" style:highest "options_window" +widget "*NewSessionDialogButton*" style:highest "options_window" +widget "*MixerSendSwitch*" style:highest "very_small_red_active_and_selected_button" +widget "*OptionEditorToggleButton" style:highest "small_red_active_and_selected_button" +widget "*NewSessionDialogButton" style:highest "small_red_active_and_selected_button" +widget "*RecordEnableButton" style:highest "track_rec_enable_button" +widget "*RecordEnableButton-active" style:highest "track_rec_enable_button_active" +widget "*RecordEnableButton-alternate" style:highest "track_rec_enable_button_alternate" +widget "*MixerRecordEnableButton" style:highest "mixer_track_rec_enable_button" +widget "*MixerRecordEnableButton-active" style:highest "mixer_track_rec_enable_button_active" +widget "*MixerRecordEnableButton-alternate" style:highest "mixer_track_rec_enable_button_alternate" +widget "*MuteButton" style:highest "mute_button" +widget "*MuteButton-alternate" style:highest "mute_button_alternate" +widget "*MuteButton-active" style:highest "mute_button_active" +widget "*MixerMuteButton" style:highest "mixer_mute_button" +widget "*MixerMuteButton-alternate" style:highest "mixer_mute_button_alternate" +widget "*MixerMuteButton-active" style:highest "mixer_mute_button_active" +widget "*SoloButton" style:highest "solo_button" +widget "*SoloButton-alternate" style:highest "solo_button_alternate" +widget "*SoloButton-active" style:highest "solo_button_active" +widget "*MixerSoloButton" style:highest "mixer_solo_button" +widget "*MixerSoloButton-alternate" style:highest "mixer_solo_button_alternate" +widget "*MixerSoloButton-active" style:highest "mixer_solo_button_active" +widget "*TrackLoopButton*" style:highest "track_loop_button" +widget "*PanAutomationLineSelector*" style:highest "multiline_combo" +widget "*EditorTimeButton*" style:highest "time_button" +widget "*MixerPhaseInvertButton*" style:highest "very_small_button" +widget "*MixerPhaseInvertButton.*" style:highest "very_small_button" +widget "*MixerAutomationRecordingButton*" style:highest "very_small_button" +widget "*MixerAutomationRecordingButton.*" style:highest "very_small_button" +widget "*MixerAutomationModeButton*" style:highest "very_small_button" +widget "*MixerAutomationModeButton.*" style:highest "very_small_button" +widget "*MixerAutomationPlaybackButton*" style:highest "very_small_button" +widget "*MixerAutomationPlaybackButton.*" style:highest "very_small_button" +widget "*MixerNameButton" style:highest "very_small_button" +widget "*MixerNameButtonLabel" style:highest "very_small_button" +widget "*MixerGroupButton" style:highest "very_small_button" +widget "*MixerGroupButtonLabel" style:highest "very_small_button" +widget "*MixerCommentButton" style:highest "very_small_button" +widget "*MixerCommentButton*" style:highest "very_small_button" +widget "*EditGroupButton" style:highest "very_small_button" +widget "*EditGroupButtonLabel" style:highest "very_small_button" +widget "*TransportButton" style:highest "transport_rec_button" +widget "*TransportButton-active" style:highest "transport_button_active" +widget "*ShuttleButton" style:highest "transport_button" +widget "*ShuttleButton*" style:highest "transport_button" +widget "*ShuttleDisplay" style:highest "transport_button" +widget "*ShuttleDisplay*" style:highest "transport_button" +widget "*ShuttleControl" style:highest "shuttle_control" +widget "*TransportRecButton" style:highest "transport_rec_button" +widget "*TransportRecButton*" style:highest "transport_rec_button" +widget "*TransportRecButton-active" style:highest "transport_rec_button_active" +widget "*TransportRecButton-active*" style:highest "transport_rec_button_active" +widget "*TransportRecButton-alternate" style:highest "transport_rec_button_alternate" +widget "*TransportRecButton-alternate*" style:highest "transport_rec_button_alternate" +widget "*TransportRecButton*" style:highest "transport_rec_button" +widget "*RecordingXrunWarningWindow" style:highest "xrun_warn" +widget "*RecordingXrunWarningWindow*" style:highest "xrun_warn" +widget "*MainMenuBar" style:highest "menu_bar_base" +widget "*ErrorMessage" style:highest "error_message" +widget "*FatalMessage" style:highest "fatal_message" +widget "*InfoMessage" style:highest "info_message" +widget "*WarningMessage" style:highest "warning_message" +widget "*BigClockNonRecording" style:highest "non_recording_big_clock_display" +widget "*BigClockRecording" style:highest "recording_big_clock_display" +widget "*TransportClockDisplay" style:highest "transport_clock_display" +widget "*SecondaryClockDisplay" style:highest "transport_clock_display" +widget "*AudioClockFramesUpperInfo" style:highest "tempo_meter_clock_display" +widget "*AudioClockFramesLowerInfo" style:highest "tempo_meter_clock_display" +widget "*AudioClockSMPTEUpperInfo" style:highest "tempo_meter_clock_display" +widget "*AudioClockSMPTELowerInfo" style:highest "tempo_meter_clock_display" +widget "*AudioClockBBTUpperInfo" style:highest "tempo_meter_clock_display" +widget "*AudioClockBBTLowerInfo" style:highest "tempo_meter_clock_display" +widget "*SelectionStartClock" style:highest "default_clock_display" +widget "*SelectionEndClock" style:highest "default_clock_display" +widget "*EditCursorClock" style:highest "default_clock_display" +widget "*PreRollClock" style:highest "default_clock_display" +widget "*PostRollClock" style:highest "default_clock_display" +widget "*NudgeClock" style:highest "default_clock_display" +widget "*ZoomRangeClock" style:highest "default_clock_display" +widget "*SMPTEOffsetClock" style:highest "default_clock_display" +widget "*TransportLabel" style:highest "small_bold_text" +widget "*TakeLabel" style:highest "small_bold_text" +widget "*LocationLabel" style:highest "small_bold_text" +widget "*WipeLabel" style:highest "small_bold_text" +widget "*TakeTagLabel" style:highest "small_bold_text" +widget "*ToolBarLabel" style:highest "small_bold_text" +widget "*EditorDisplayLabel" style:highest "small_bold_text" +widget "*NewSessionLabel" style:highest "large_text" +widget "*GlobalButtonLabel" style:highest "default_buttons_menus" +widget "*ClickButton" style:highest "medium_entry" +widget "*RegionNameDisplay" style:highest "medium_entry" +widget "*PluginDisplay" style:highest "medium_entry" +widget "*SelectionDisplay" style:highest "medium_entry" +widget "*HistorySelector" style:highest "medium_entry" +widget "*LocationSelector" style:highest "medium_entry" +widget "*TakeSelector" style:highest "medium_entry" +widget "*RegionSelector" style:highest "medium_entry" +widget "*SMPTERuler" style:highest "editor_time_ruler" +widget "*BBTRuler" style:highest "editor_time_ruler" +widget "*FramesRuler" style:highest "editor_time_ruler" +widget "*MinSecRuler" style:highest "editor_time_ruler" +widget "*BaseFrame" style:highest "base_frame" +widget "*AudioTrackStripBase" style:highest "audio_track_base" +widget "*TimeAxisViewControlsBaseUnselected" style:highest "audio_track_base" +widget "*AudioTrackControlsBaseUnselected" style:highest "audio_track_base" +widget "*AudioTrackFader" style:highest "gain_fader" +widget "*AudioBusStripBase" style:highest "audio_bus_base" +widget "*BusControlsBaseUnselected" style:highest "audio_bus_base" +widget "*AudioBusFader" style:highest "gain_fader" +widget "*TrackSeparator" style:highest "track_separator" +widget "*TrackEditIndicator0*" style:highest "edit_group_0" +widget "*TrackEditIndicator1*" style:highest "edit_group_1" +widget "*TrackEditIndicator2*" style:highest "edit_group_2" +widget "*TrackEditIndicator3*" style:highest "edit_group_3" +widget "*TrackEditIndicator4*" style:highest "edit_group_3" +widget "*TrackEditIndicator5*" style:highest "edit_group_3" +widget "*TrackEditIndicator6*" style:highest "edit_group_3" +widget "*TrackEditIndicator7*" style:highest "edit_group_3" +widget "*EditorTrackNameDisplay" style:highest "track_name_display" +widget "*EditorTrackNameDisplay*" style:highest "track_name_display" +widget "*EditorActiveTrackNameDisplay" style:highest "active_track_name_display" +widget "*EditorActiveTrackNameDisplay*" style:highest "active_track_name_display" +widget "*CrossfadeEditAuditionButton" style:highest "red_when_active" +widget "*CrossfadeEditAuditionButton*" style:highest "red_when_active" +widget "*CrossfadeEditCurveButton" style:highest "red_when_active" +widget "*CrossfadeEditCurveButton*" style:highest "red_when_active" +widget "*CrossfadeEditLabel" style:highest "medium_text" +widget "*CrossfadeEditFrame" style:highest "base_frame" +widget "*MouseModeButton" style:highest "default_buttons_menus" +widget "*MouseModeButton*" style:highest "default_buttons_menus" +widget "*EditorMainCanvas" style:highest "main_canvas_area" +widget "*AudioTrackControlsBaseInactiveUnselected" style:highest "track_controls_inactive" +widget "*BusControlsBaseInactiveUnselected" style:highest "track_controls_inactive" +widget "*AutomationTrackControlsBaseInactiveUnselected" style:highest "track_controls_inactive" +widget "*AutomationTrackName" style:highest "automation_track_name" +widget "*AudioTrackControlsBaseInactiveSelected" style:highest "track_controls_inactive" +widget "*BusControlsBaseInactiveSelected" style:highest "track_controls_inactive" +widget "*AutomationTrackControlsBaseInactiveSelected" style:highest "track_controls_inactive" +widget "*AudioTrackStripBaseInactive" style:highest "track_controls_inactive" +widget "*AudioBusStripBaseInactive" style:highest "track_controls_inactive" +widget "*AudioTrackControlsBaseSelected" style:highest "edit_controls_base_selected" +widget "*BusControlsBaseSelected" style:highest "edit_controls_base_selected" +widget "*AutomationTrackControlsBase" style:highest "automation_track_controls_base" +widget "*AutomationTrackControlsBaseSelected" style:highest "edit_controls_base_selected" +widget "*EditorMenuBar*" style:highest "black_mackie_menu_bar" +widget "*MainMenuBar*" style:highest "black_mackie_menu_bar" +widget "*ZoomClickBox" style:highest "medium_bold_entry" +widget "*PluginParameterLabel" style:highest "medium_text" +widget "*PluginNameInfo" style:highest "plugin_name_text" +widget "*PluginMakerInfo" style:highest "plugin_maker_text" +widget "*PluginParameterInfo" style:highest "medium_text" +widget "*MotionControllerValue" style:highest "medium_entry" +widget "*ParameterValueDisplay" style:highest "medium_bold_entry" +widget "*PluginUIClickBox" style:highest "medium_bold_entry" +widget "*PluginUIClickBox*" style:highest "medium_bold_entry" +widget "*PluginSlider" style:highest "plugin_slider" +widget "*RedirectSelector" style:highest "redirect_list_display" +widget "*RedirectSelector.*" style:highest "redirect_list_display" +widget "*EditGroupDisplay" style:highest "treeview_display" +widget "*TrackListDisplay" style:highest "treeview_display" +widget "*RegionListDisplay" style:highest "treeview_display" +widget "*NamedSelectionDisplay" style:highest "treeview_display" +widget "*SnapshotDisplay" style:highest "treeview_display" +widget "*MixerTrackCommentArea" style:highest "option_entry" +widget "*MixerPanZone" style:highest "pan_zone" +widget "*MixerTrackDisplayList" style:highest "treeview_display" +widget "*MixerSnapshotDisplayList" style:highest "treeview_display" +widget "*MixerAuxDisplayList" style:highest "treeview_display" +widget "*MixerGroupList" style:highest "treeview_display" +widget "*RegionEditorLabel" style:highest "medium_text" +widget "*RegionEditorSmallLabel" style:highest "small_text" +widget "*RegionEditorEntry" style:highest "medium_entry" +widget "*RegionEditorClock" style:highest "default_clock_display" +widget "*RegionEditorToggleButton" style:highest "paler_red_when_active" +widget "*RegionEditorToggleButton*" style:highest "paler_red_when_active" +widget "*MixerStripSpeedBase" style:highest "small_entry" +widget "*MixerStripSpeedBase*" style:highest "small_entry" +widget "*MixerStripSpeedBaseNotOne" style:highest "small_red_on_black_entry" +widget "*MixerStripSpeedBaseNotOne*" style:highest "small_red_on_black_entry" +widget "*MixerStripGainDisplay" style:highest "small_entry" +widget "*MixerStripGainDisplay*" style:highest "small_entry" +widget "*MixerStripGainUnitButton" style:highest "very_small_button" +widget "*MixerStripGainUnitButton*" style:highest "very_small_button" +widget "*MixerStripMeterPreButton" style:highest "very_small_button" +widget "*MixerStripMeterPreButton*" style:highest "very_small_button" +widget "*MixerStripPeakDisplay*" style:highest "red_active_small_entry" +widget "*MixerStripPeakDisplayPeak*" style:highest "peak_display_peaked_entry" +widget "*MixerStripSelectedFrame" style:highest "selected_strip_frame" +widget "*MixerStripFrame" style:highest "base_frame" +widget "*HWMonitorButton" style:highest "red_when_active" +widget "*HWMonitorButton*" style:highest "red_when_active" +widget "*BypassButton" style:highest "red_when_active" +widget "*BypassButton*" style:highest "red_when_active" +widget "*TransportSoloAlert" style:highest "flashing_alert" +widget "*TransportSoloAlert.*" style:highest "flashing_alert" +widget "*TransportAuditioningAlert" style:highest "flashing_alert" +widget "*TransportAuditioningAlert.*" style:highest "flashing_alert" +widget "*FadeCurve" style:highest "medium_bold_entry" +widget "*FadeCurve*" style:highest "medium_bold_entry" +widget "*IOSelectorButton" style:highest "default_buttons_menus" +widget "*IOSelectorButton*" style:highest "default_buttons_menus" +widget "*IOSelectorList" style:highest "medium_entry_noselection_fg" +widget "*IOSelectorPortList" style:highest "io_selector_port_list" +widget "*IOSelectorPortList.*" style:highest "io_selector_port_list" +widget "*IOSelectorPortListSelected" style:highest "selected_io_selector_port_list" +widget "*IOSelectorPortListSelected.*" style:highest "selected_io_selector_port_list" +widget "*IOSelectorNotebook" style:highest "io_selector_notebook" +widget "*IOSelectorNotebookTab" style:highest "io_selector_notebook" +widget "*IOSelectorFrame" style:highest "base_frame" +widget "*ConnectionEditorButton" style:highest "default_buttons_menus" +widget "*ConnectionEditorButton*" style:highest "default_buttons_menus" +widget "*ConnectionEditorList" style:highest "medium_entry_noselection_fg" +widget "*ConnectionEditorConnectionList" style:highest "medium_entry" +widget "*ConnectionEditorPortList" style:highest "io_selector_port_list" +widget "*ConnectionEditorPortListSelected" style:highest "selected_io_selector_port_list" +widget "*ConnectionEditorNotebook" style:highest "io_selector_notebook" +widget "*ConnectionEditorNotebookTab" style:highest "io_selector_notebook" +widget "*ConnectionEditorFrame" style:highest "base_frame" +widget "*RouteParamsListDisplay" style:highest "inspector_track_list_display" +widget "*RouteParamsPreListDisplay" style:highest "inspector_redirect_list_display" +widget "*RouteParamsPostListDisplay" style:highest "inspector_redirect_list_display" +widget "*TearOffArrow" style:highest "tearoff_arrow" +widget "*RouteParamsTitleButton" style:highest "medium_text" +widget "*RouteParamsTitleLabel" style:highest "medium_text" +widget "*PluginAutomateRecordButton" style:highest "small_red_active_and_selected_button" +widget "*PluginAutomateRecordButton*" style:highest "small_red_active_and_selected_button" +widget "*PluginAutomatePlayButton" style:highest "small_red_active_and_selected_button" +widget "*PluginAutomatePlayButton*" style:highest "small_red_active_and_selected_button" +widget "*PluginAutomateButton" style:highest "small_button" +widget "*PluginAutomateButton*" style:highest "small_button" +widget "*PluginSaveButton" style:highest "small_button" +widget "*PluginSaveButton*" style:highest "small_button" +widget "*PluginLoadButton" style:highest "small_button" +widget "*PluginLoadButton*" style:highest "small_button" +widget "*FaderMetricsStrip" style:highest "meter_metrics_strip" +widget "*MeterMetricsStrip" style:highest "meter_metrics_strip" +widget "*MetricDialogFrame" style:highest "base_frame" +widget "*MetricEntry" style:highest "medium_bold_entry" +widget "*MetricButton" style:highest "default_buttons_menus" +widget "*MetricButton.*" style:highest "default_buttons_menus" +widget "*MetricLabel" style:highest "medium_text" +widget "*TimeStretchButton" style:highest "default_buttons_menus" +widget "*TimeStretchButton.*" style:highest "default_buttons_menus" +widget "*TimeStretchProgress" style:highest "default_buttons_menus" +widget "*ChoiceWindow" style:highest "default_buttons_menus" +widget "*ChoicePrompt" style:highest "default_buttons_menus" +widget "*ChoiceButton" style:highest "default_buttons_menus" +widget "*ChoiceButton*" style:highest "default_buttons_menus" +widget "*SelectionModeButton" style:highest "default_buttons_menus" +widget "*SelectionModeButton*" style:highest "default_buttons_menus" +widget "*TrackLabel" style:highest "medium_text" +widget "*TrackPlugName" style:highest "medium_text" +widget "*TrackParameterName" style:highest "small_text" +widget "*AddRouteDialog*" style:highest "medium_text" +widget "*AddRouteDialog.GtkLabel" style:highest "medium_text" +widget "*AddRouteDialogChannelChoice" style:highest "medium_bold_entry" +widget "*AddRouteDialogSpinner" style:highest "medium_bold_entry" +widget "*AddRouteDialogSpinner*" style:highest "medium_bold_entry" +widget "*AddRouteDialogRadioButton" style:highest "red_when_active" +widget "*AddRouteDialogButton" style:highest "default_buttons_menus" +widget "*AddRouteDialogNameTemplateEntry" style:highest "medium_bold_entry" +widget "*NewSessionIOLabel" style:highest "larger_bold_text" +widget "*NewSessionSR1Label" style:highest "red_medium_text" +widget "*NewSessionSR2Label" style:highest "medium_text" +widget "*NewSessionChannelChoice" style:highest "medium_bold_entry" +widget "*NewSessionMainButton" style:highest "larger_bold_text" +widget "*NewSessionMainButton*" style:highest "larger_bold_text" +widget "*NewSessionMainLabel" style:highest "larger_bold_text" +widget "*LocationEditRowClock" style:highest "location_rows_clock" +widget "*LocationEditNameLabel" style:highest "medium_text" +widget "*LocationEditSetButton" style:highest "location_row_button" +widget "*LocationEditSetButton*" style:highest "location_row_button" +widget "*LocationEditGoButton" style:highest "location_row_button" +widget "*LocationEditGoButton*" style:highest "location_row_button" +widget "*LocationEditCdButton" style:highest "small_red_active_and_selected_button" +widget "*LocationEditCdButton*" style:highest "small_red_active_and_selected_button" +widget "*LocationEditHideButton" style:highest "small_red_active_and_selected_button" +widget "*LocationEditHideButton*" style:highest "small_red_active_and_selected_button" +widget "*LocationEditNumberLabel" style:highest "small_text" +widget "*LocationLocEditorFrame" style:highest "base_frame" +widget "*LocationRangeEditorFrame" style:highest "base_frame" +widget "*LocationEditNameEntry" style:highest "option_entry" +widget "*LocationAddLocationButton" style:highest "default_buttons_menus" +widget "*LocationAddLocationButton*" style:highest "default_buttons_menus" +widget "*LocationAddRangeButton" style:highest "default_buttons_menus" +widget "*LocationAddRangeButton*" style:highest "default_buttons_menus" +widget "*LocationEditRemoveButton" style:highest "location_row_button" +widget "*LocationEditRemoveButton*" style:highest "location_row_button" +widget "*PanSlider" style:highest "pan_slider" +widget "*PanningLinkButton" style:highest "mixer_red_active_button" +widget "*PanningLinkButton.*" style:highest "mixer_red_active_button" +widget "*PanningLinkDirectionButton" style:highest "very_small_button" +widget "*PanningLinkDirectionButton.*" style:highest "very_small_button" +widget "*ChannelCountSelector" style:highest "medium_bold_entry" +widget "*ChannelCountSelector.GtkArrow" style:highest "default_buttons_menus" +widget "*RegionListWholeFile" style:highest "treeview_parent_node" +widget "*EditorHScrollbar" style:highest "editor_hscrollbar" diff --git a/gtk2_ardour/ardour_image_compositor_socket.h b/gtk2_ardour/ardour_image_compositor_socket.h index ad0a7b79c6..6ed92ef8ac 100644 --- a/gtk2_ardour/ardour_image_compositor_socket.h +++ b/gtk2_ardour/ardour_image_compositor_socket.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index c7813f968b..8fa4f283f8 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> @@ -45,11 +44,13 @@ #include <gtkmm2ext/fastmeter.h> #include <gtkmm2ext/stop_signal.h> #include <gtkmm2ext/popup.h> +#include <gtkmm2ext/window_title.h> #include <midi++/port.h> #include <midi++/mmc.h> #include <ardour/ardour.h> +#include <ardour/profile.h> #include <ardour/session_route.h> #include <ardour/port.h> #include <ardour/audioengine.h> @@ -69,7 +70,6 @@ #include "mixer_ui.h" #include "prompter.h" #include "opts.h" -#include "keyboard_target.h" #include "add_route_dialog.h" #include "new_session_dialog.h" #include "about.h" @@ -89,13 +89,12 @@ ARDOUR_UI *ARDOUR_UI::theArdourUI = 0; sigc::signal<void,bool> ARDOUR_UI::Blink; sigc::signal<void> ARDOUR_UI::RapidScreenUpdate; -sigc::signal<void> ARDOUR_UI::MidRapidScreenUpdate; sigc::signal<void> ARDOUR_UI::SuperRapidScreenUpdate; sigc::signal<void,nframes_t> ARDOUR_UI::Clock; ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], string rcfile) - : Gtkmm2ext::UI ("ardour", argcp, argvp, rcfile), + : Gtkmm2ext::UI (X_("Ardour"), argcp, argvp, rcfile), primary_clock (X_("primary"), false, X_("TransportClockDisplay"), true, false, true), secondary_clock (X_("secondary"), false, X_("SecondaryClockDisplay"), true, false, true), @@ -117,16 +116,34 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], string rcfile) /* transport */ - time_master_button (_("time\nmaster")), - + roll_controllable ("transport roll", *this, TransportControllable::Roll), + stop_controllable ("transport stop", *this, TransportControllable::Stop), + goto_start_controllable ("transport goto start", *this, TransportControllable::GotoStart), + goto_end_controllable ("transport goto end", *this, TransportControllable::GotoEnd), + auto_loop_controllable ("transport auto loop", *this, TransportControllable::AutoLoop), + play_selection_controllable ("transport play selection", *this, TransportControllable::PlaySelection), + rec_controllable ("transport rec-enable", *this, TransportControllable::RecordEnable), + shuttle_controllable ("shuttle", *this, TransportControllable::ShuttleControl), + shuttle_controller_binding_proxy (shuttle_controllable), + + roll_button (roll_controllable), + stop_button (stop_controllable), + goto_start_button (goto_start_controllable), + goto_end_button (goto_end_controllable), + auto_loop_button (auto_loop_controllable), + play_selection_button (play_selection_controllable), + rec_button (rec_controllable), + shuttle_units_button (_("% ")), punch_in_button (_("Punch In")), punch_out_button (_("Punch Out")), auto_return_button (_("Auto Return")), - auto_play_button (_("Autuo Play")), + auto_play_button (_("Auto Play")), auto_input_button (_("Auto Input")), click_button (_("Click")), + time_master_button (_("time\nmaster")), + auditioning_alert_button (_("AUDITION")), solo_alert_button (_("SOLO")), shown_flag (false) @@ -163,15 +180,13 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], string rcfile) location_ui = 0; open_session_selector = 0; have_configure_timeout = false; - have_disk_overrun_displayed = false; - have_disk_underrun_displayed = false; + have_disk_speed_dialog_displayed = false; _will_create_new_session_automatically = false; session_loaded = false; last_speed_displayed = -1.0f; keybindings_path = ARDOUR::find_config_file ("ardour.bindings"); can_save_keybindings = false; - Glib::signal_idle().connect (mem_fun (*this, &ARDOUR_UI::first_idle)); last_configure_time.tv_sec = 0; last_configure_time.tv_usec = 0; @@ -248,10 +263,6 @@ ARDOUR_UI::set_engine (AudioEngine& e) AudioFileSource::set_build_peakfiles (true); AudioFileSource::set_build_missing_peakfiles (true); - if (AudioSource::start_peak_thread ()) { - throw failed_constructor(); - } - /* set default clock modes */ primary_clock.set_mode (AudioClock::SMPTE); @@ -289,8 +300,6 @@ ARDOUR_UI::~ARDOUR_UI () if (add_route_dialog) { delete add_route_dialog; } - - AudioSource::stop_peak_thread (); } gint @@ -333,6 +342,63 @@ ARDOUR_UI::configure_handler (GdkEventConfigure* conf) } void +ARDOUR_UI::set_transport_controllable_state (const XMLNode& node) +{ + const XMLProperty* prop; + + if ((prop = node.property ("roll")) != 0) { + roll_controllable.set_id (prop->value()); + } + if ((prop = node.property ("stop")) != 0) { + stop_controllable.set_id (prop->value()); + } + if ((prop = node.property ("goto_start")) != 0) { + goto_start_controllable.set_id (prop->value()); + } + if ((prop = node.property ("goto_end")) != 0) { + goto_end_controllable.set_id (prop->value()); + } + if ((prop = node.property ("auto_loop")) != 0) { + auto_loop_controllable.set_id (prop->value()); + } + if ((prop = node.property ("play_selection")) != 0) { + play_selection_controllable.set_id (prop->value()); + } + if ((prop = node.property ("rec")) != 0) { + rec_controllable.set_id (prop->value()); + } + if ((prop = node.property ("shuttle")) != 0) { + shuttle_controllable.set_id (prop->value()); + } +} + +XMLNode& +ARDOUR_UI::get_transport_controllable_state () +{ + XMLNode* node = new XMLNode(X_("TransportControllables")); + char buf[64]; + + roll_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("roll"), buf); + stop_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("stop"), buf); + goto_start_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("goto_start"), buf); + goto_end_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("goto_end"), buf); + auto_loop_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("auto_loop"), buf); + play_selection_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("play_selection"), buf); + rec_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("rec"), buf); + shuttle_controllable.id().print (buf, sizeof (buf)); + node->add_property (X_("shuttle"), buf); + + return *node; +} + +void ARDOUR_UI::save_ardour_state () { if (!keyboard || !mixer || !editor) { @@ -345,6 +411,7 @@ ARDOUR_UI::save_ardour_state () XMLNode* node = new XMLNode (keyboard->get_state()); Config->add_extra_xml (*node); + Config->add_extra_xml (get_transport_controllable_state()); Config->save_state(); XMLNode enode(static_cast<Stateful*>(editor)->get_state()); @@ -364,26 +431,72 @@ ARDOUR_UI::save_ardour_state () void ARDOUR_UI::startup () { - if (engine->is_realtime()) { + check_memory_locking(); +} + +void +ARDOUR_UI::no_memory_warning () +{ + XMLNode node (X_("no-memory-warning")); + Config->add_instant_xml (node, get_user_ardour_path()); +} + +void +ARDOUR_UI::check_memory_locking () +{ +#ifdef __APPLE__ + /* OS X doesn't support mlockall(2), and so testing for memory locking capability there is pointless */ + return; +#else // !__APPLE__ + + XMLNode* memory_warning_node = Config->instant_xml (X_("no-memory-warning"), get_user_ardour_path()); + + if (engine->is_realtime() && memory_warning_node == 0) { struct rlimit limits; - + int64_t ram; + long pages, page_size; + + if ((page_size = sysconf (_SC_PAGESIZE)) < 0 ||(pages = sysconf (_SC_PHYS_PAGES)) < 0) { + ram = 0; + } else { + ram = (int64_t) pages * (int64_t) page_size; + } + if (getrlimit (RLIMIT_MEMLOCK, &limits)) { return; } if (limits.rlim_cur != RLIM_INFINITY) { - MessageDialog msg (_("WARNING: Your system has a limit for maximum amount of locked memory. " - "This might cause Ardour to run out of memory before your system " - "runs out of memory. \n\n" - "You can view the memory limit with 'ulimit -l', " - "and it is normally controlled by /etc/security/limits.conf")); + + if (ram == 0 || ((double) limits.rlim_cur / ram) < 0.75) { - msg.run (); + + MessageDialog msg (_("WARNING: Your system has a limit for maximum amount of locked memory. " + "This might cause Ardour to run out of memory before your system " + "runs out of memory. \n\n" + "You can view the memory limit with 'ulimit -l', " + "and it is normally controlled by /etc/security/limits.conf")); + + VBox* vbox = msg.get_vbox(); + HBox hbox; + CheckButton cb (_("Do not show this window again")); + + cb.signal_toggled().connect (mem_fun (*this, &ARDOUR_UI::no_memory_warning)); + + hbox.pack_start (cb, true, false); + vbox->pack_start (hbox); + hbox.show_all (); + + editor->ensure_float (msg); + msg.run (); + } } } +#endif // !__APPLE__ } + void ARDOUR_UI::finish() { @@ -507,13 +620,6 @@ ARDOUR_UI::every_point_one_seconds () } gint -ARDOUR_UI::every_point_oh_five_seconds () -{ - MidRapidScreenUpdate(); /* EMIT_SIGNAL */ - return true; -} - -gint ARDOUR_UI::every_point_zero_one_seconds () { SuperRapidScreenUpdate(); /* EMIT_SIGNAL */ @@ -536,11 +642,11 @@ ARDOUR_UI::update_sample_rate (nframes_t ignored) nframes_t rate = engine->frame_rate(); if (fmod (rate, 1000.0) != 0.0) { - snprintf (buf, sizeof (buf), _("%.1f kHz / %4.1f msecs"), + snprintf (buf, sizeof (buf), _("%.1f kHz / %4.1f ms"), (float) rate/1000.0f, (engine->frames_per_cycle() / (float) rate) * 1000.0f); } else { - snprintf (buf, sizeof (buf), _("%u kHz / %4.1f msecs"), + snprintf (buf, sizeof (buf), _("%u kHz / %4.1f ms"), rate/1000, (engine->frames_per_cycle() / (float) rate) * 1000.0f); } @@ -553,7 +659,7 @@ void ARDOUR_UI::update_cpu_load () { char buf[32]; - snprintf (buf, sizeof (buf), _("DSP: %.1f%%"), engine->get_cpu_load()); + snprintf (buf, sizeof (buf), _("DSP: %5.1f%%"), engine->get_cpu_load()); cpu_load_label.set_text (buf); } @@ -632,40 +738,6 @@ ARDOUR_UI::update_wall_clock () return TRUE; } -void -ARDOUR_UI::control_methods_adjusted () - -{ - int which_method; - - which_method = (int) online_control_button->adjustment.get_value(); - switch (which_method) { - case 0: - allow_mmc_and_local (); - break; - case 1: - allow_mmc_only (); - break; - case 2: - allow_local_only (); - break; - default: - fatal << _("programming error: impossible control method") << endmsg; - } -} - - -void -ARDOUR_UI::mmc_device_id_adjusted () - -{ -#if 0 - if (mmc) { - int dev_id = (int) mmc_id_button->adjustment.get_value(); - mmc->set_device_id (dev_id); - } -#endif -} gint ARDOUR_UI::session_menu (GdkEventButton *ev) @@ -912,7 +984,8 @@ ARDOUR_UI::session_add_audio_route (bool track, int32_t input_channels, int32_t if (how_many == 1) { error << _("could not create a new audio track") << endmsg; } else { - error << string_compose (_("could not create %1 new audio tracks"), how_many) << endmsg; + error << string_compose (_("could only create %1 of %2 new audio %3"), + tracks.size(), how_many, (track ? _("tracks") : _("busses"))) << endmsg; } } @@ -943,6 +1016,7 @@ ARDOUR_UI::session_add_audio_route (bool track, int32_t input_channels, int32_t } catch (...) { + cerr << "About to complain about JACK\n"; MessageDialog msg (*editor, _("There are insufficient JACK ports available\n\ to create a new track or bus.\n\ @@ -1090,11 +1164,11 @@ ARDOUR_UI::transport_roll () if (session->get_play_loop()) { session->request_play_loop (false); - auto_loop_button.set_active (false); - roll_button.set_active (true); + auto_loop_button.set_visual_state (1); + roll_button.set_visual_state (1); } else if (session->get_play_range ()) { session->request_play_range (false); - play_selection_button.set_active (false); + play_selection_button.set_visual_state (0); } else if (rolling) { session->request_locate (session->last_transport_start(), true); } @@ -1233,24 +1307,6 @@ ARDOUR_UI::map_transport_state () } void -ARDOUR_UI::allow_local_only () -{ - -} - -void -ARDOUR_UI::allow_mmc_only () -{ - -} - -void -ARDOUR_UI::allow_mmc_and_local () -{ - -} - -void ARDOUR_UI::GlobalClickBox::printer (char buf[32], Adjustment &adj, void *arg) { snprintf (buf, sizeof(buf), "%s", ((GlobalClickBox *) arg)->strings[ @@ -1411,7 +1467,7 @@ ARDOUR_UI::_blink (void *arg) void ARDOUR_UI::blink () { - Blink (blink_on = !blink_on); /* EMIT_SIGNAL */ + Blink (blink_on = !blink_on); /* EMIT_SIGNAL */ } void @@ -1481,6 +1537,8 @@ ARDOUR_UI::name_io_setup (AudioEngine& engine, } } +/** Ask the user for the name of a new shapshot and then take it. + */ void ARDOUR_UI::snapshot_session () { @@ -1604,18 +1662,18 @@ ARDOUR_UI::transport_rec_enable_blink (bool onoff) switch (session->record_status()) { case Session::Enabled: if (onoff) { - rec_button.set_state (1); + rec_button.set_visual_state (2); } else { - rec_button.set_state (0); + rec_button.set_visual_state (0); } break; case Session::Recording: - rec_button.set_state (2); + rec_button.set_visual_state (1); break; default: - rec_button.set_state (0); + rec_button.set_visual_state (0); break; } } @@ -1629,12 +1687,6 @@ ARDOUR_UI::hide_and_quit (GdkEventAny *ev, ArdourDialog *window) } void -ARDOUR_UI::start_keyboard_prefix () -{ - keyboard->start_prefix(); -} - -void ARDOUR_UI::save_template () { @@ -1660,12 +1712,18 @@ ARDOUR_UI::save_template () } } -void +bool ARDOUR_UI::new_session (std::string predetermined_path) { string session_name; string session_path; + if (!engine->connected()) { + MessageDialog msg (_("Ardour is not connected to JACK at this time. Creating new sessions is not possible.")); + msg.run (); + return false; + } + int response = Gtk::RESPONSE_NONE; new_session_dialog->set_modal(true); @@ -1675,6 +1733,13 @@ ARDOUR_UI::new_session (std::string predetermined_path) do { response = new_session_dialog->run (); + + if (!engine->connected()) { + new_session_dialog->hide (); + MessageDialog msg (_("Ardour is not connected to JACK at this time. Creating new sessions is not possible.")); + msg.run (); + return false; + } _session_is_new = false; @@ -1684,7 +1749,7 @@ ARDOUR_UI::new_session (std::string predetermined_path) quit(); } new_session_dialog->hide (); - return; + return false; } else if (response == Gtk::RESPONSE_NONE) { @@ -1835,15 +1900,20 @@ ARDOUR_UI::new_session (std::string predetermined_path) uint32_t nphysin = (uint32_t) new_session_dialog->input_limit_count(); uint32_t nphysout = (uint32_t) new_session_dialog->output_limit_count(); - build_session (session_path, - session_name, - cchns, - mchns, - iconnect, - oconnect, - nphysin, - nphysout, - engine->frame_rate() * 60 * 5); + if (build_session (session_path, + session_name, + cchns, + mchns, + iconnect, + oconnect, + nphysin, + nphysout, + engine->frame_rate() * 60 * 5)) { + + response = Gtk::RESPONSE_NONE; + new_session_dialog->reset (); + continue; + } } } } @@ -1854,6 +1924,7 @@ ARDOUR_UI::new_session (std::string predetermined_path) show(); new_session_dialog->get_window()->set_cursor(); new_session_dialog->hide(); + return true; } void @@ -1909,6 +1980,7 @@ ARDOUR_UI::load_session (const string & path, const string & snap_name, string* session->set_clean (); } + editor->edit_cursor_position (true); return 0; } @@ -1942,7 +2014,8 @@ ARDOUR_UI::build_session (const string & path, const string & snap_name, catch (...) { - error << string_compose(_("Session \"%1 (snapshot %2)\" did not load successfully"), path, snap_name) << endmsg; + MessageDialog msg (string_compose(_("Could not create session in \"%1\""), path)); + msg.run (); return -1; } @@ -2128,9 +2201,17 @@ After cleanup, unused audio files will be moved to a \ editor->prepare_for_cleanup (); + /* do not allow flush until a session is reloaded */ + + Glib::RefPtr<Action> act = ActionManager::get_action (X_("Main"), X_("FlushWastebasket")); + if (act) { + act->set_sensitive (false); + } + if (session->cleanup_sources (rep)) { return; } + checker.hide(); display_cleanup_results (rep, _("cleaned files"), @@ -2142,6 +2223,9 @@ Flushing the wastebasket will \n\ release an additional\n\ %4 %5bytes of disk space.\n" )); + + + } void @@ -2166,7 +2250,7 @@ releasing %4 %5bytes of disk space")); } void -ARDOUR_UI::add_route () +ARDOUR_UI::add_route (Gtk::Window* float_window) { int count; @@ -2176,7 +2260,9 @@ ARDOUR_UI::add_route () if (add_route_dialog == 0) { add_route_dialog = new AddRouteDialog; - editor->ensure_float (*add_route_dialog); + if (float_window) { + add_route_dialog->set_transient_for (*float_window); + } } if (add_route_dialog->is_visible()) { @@ -2283,18 +2369,18 @@ ARDOUR_UI::halt_on_xrun_message () void ARDOUR_UI::disk_overrun_handler () { - ENSURE_GUI_THREAD (mem_fun(*this, &ARDOUR_UI::disk_underrun_handler)); + ENSURE_GUI_THREAD (mem_fun(*this, &ARDOUR_UI::disk_overrun_handler)); - if (!have_disk_overrun_displayed) { - have_disk_overrun_displayed = true; - MessageDialog msg (*editor, X_("diskrate dialog"), _("\ + if (!have_disk_speed_dialog_displayed) { + have_disk_speed_dialog_displayed = true; + MessageDialog* msg = new MessageDialog (*editor, _("\ The disk system on your computer\n\ was not able to keep up with Ardour.\n\ \n\ Specifically, it failed to write data to disk\n\ quickly enough to keep up with recording.\n")); - msg.run (); - have_disk_overrun_displayed = false; + msg->signal_response().connect (bind (mem_fun (*this, &ARDOUR_UI::disk_speed_dialog_gone), msg)); + msg->show_all (); } } @@ -2303,29 +2389,24 @@ ARDOUR_UI::disk_underrun_handler () { ENSURE_GUI_THREAD (mem_fun(*this, &ARDOUR_UI::disk_underrun_handler)); - if (!have_disk_underrun_displayed) { - have_disk_underrun_displayed = true; - MessageDialog msg (*editor, - (_("The disk system on your computer\n\ + if (!have_disk_speed_dialog_displayed) { + have_disk_speed_dialog_displayed = true; + MessageDialog* msg = new MessageDialog (*editor, + _("The disk system on your computer\n\ was not able to keep up with Ardour.\n\ \n\ Specifically, it failed to read data from disk\n\ -quickly enough to keep up with playback.\n"))); - msg.run (); - have_disk_underrun_displayed = false; +quickly enough to keep up with playback.\n")); + msg->signal_response().connect (bind (mem_fun (*this, &ARDOUR_UI::disk_speed_dialog_gone), msg)); + msg->show_all (); } } void -ARDOUR_UI::disk_underrun_message_gone () -{ - have_disk_underrun_displayed = false; -} - -void -ARDOUR_UI::disk_overrun_message_gone () +ARDOUR_UI::disk_speed_dialog_gone (int ignored_response, MessageDialog* msg) { - have_disk_underrun_displayed = false; + have_disk_speed_dialog_displayed = false; + delete msg; } int @@ -2449,6 +2530,11 @@ ARDOUR_UI::use_config () Glib::RefPtr<RadioAction> ract = Glib::RefPtr<RadioAction>::cast_dynamic(act); ract->set_active (); } + + XMLNode* node = Config->extra_xml (X_("TransportControllables")); + if (node) { + set_transport_controllable_state (*node); + } } void @@ -2499,6 +2585,9 @@ ARDOUR_UI::save_keybindings () bool ARDOUR_UI::first_idle () { + if (session) { + session->allow_auto_play (true); + } can_save_keybindings = true; return false; } @@ -2518,3 +2607,115 @@ ARDOUR_UI::store_clock_modes () +ARDOUR_UI::TransportControllable::TransportControllable (std::string name, ARDOUR_UI& u, ToggleType tp) + : Controllable (name), ui (u), type(tp) +{ + +} + +void +ARDOUR_UI::TransportControllable::set_value (float val) +{ + if (type == ShuttleControl) { + double fract; + + if (val == 0.5f) { + fract = 0.0; + } else { + if (val < 0.5f) { + fract = -((0.5f - val)/0.5f); + } else { + fract = ((val - 0.5f)/0.5f); + } + } + + ui.set_shuttle_fract (fract); + return; + } + + if (val < 0.5f) { + /* do nothing: these are radio-style actions */ + return; + } + + char *action = 0; + + switch (type) { + case Roll: + action = X_("Roll"); + break; + case Stop: + action = X_("Stop"); + break; + case GotoStart: + action = X_("Goto Start"); + break; + case GotoEnd: + action = X_("Goto End"); + break; + case AutoLoop: + action = X_("Loop"); + break; + case PlaySelection: + action = X_("Play Selection"); + break; + case RecordEnable: + action = X_("Record"); + break; + default: + break; + } + + if (action == 0) { + return; + } + + Glib::RefPtr<Action> act = ActionManager::get_action ("Transport", action); + + if (act) { + act->activate (); + } +} + +float +ARDOUR_UI::TransportControllable::get_value (void) const +{ + float val = 0.0f; + + switch (type) { + case Roll: + break; + case Stop: + break; + case GotoStart: + break; + case GotoEnd: + break; + case AutoLoop: + break; + case PlaySelection: + break; + case RecordEnable: + break; + case ShuttleControl: + break; + default: + break; + } + + return val; +} + +void +ARDOUR_UI::TransportControllable::set_id (const string& str) +{ + _id = str; +} + +void +ARDOUR_UI::setup_profile () +{ + if (gdk_screen_width() < 1200) { + Profile->set_small_screen (); + } +} diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h index e1b7c55555..3cee38372b 100644 --- a/gtk2_ardour/ardour_ui.h +++ b/gtk2_ardour/ardour_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gui_h__ @@ -55,6 +54,7 @@ #include <gtkmm2ext/gtk_ui.h> #include <gtkmm2ext/click_box.h> #include <gtkmm2ext/stateful_button.h> +#include <gtkmm2ext/bindable_button.h> #include <ardour/ardour.h> #include <ardour/session.h> @@ -65,7 +65,6 @@ class AudioClock; class PublicEditor; class Keyboard; -class MeterBridge; class OptionEditor; class Mixer_UI; class ConnectionEditor; @@ -128,7 +127,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI _will_create_new_session_automatically = yn; } - void new_session(std::string path = string()); + bool new_session(std::string path = string()); gint cmdline_new_session (string path); int unload_session (); void close_session(); @@ -156,7 +155,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI static sigc::signal<void,bool> Blink; static sigc::signal<void> RapidScreenUpdate; - static sigc::signal<void> MidRapidScreenUpdate; static sigc::signal<void> SuperRapidScreenUpdate; static sigc::signal<void,nframes_t> Clock; @@ -188,7 +186,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI void store_clock_modes (); void restore_clock_modes (); - void add_route (); + void add_route (Gtk::Window* float_window); void session_add_audio_track (int input_channels, int32_t output_channels, ARDOUR::TrackMode mode, uint32_t how_many) { session_add_audio_route (true, input_channels, output_channels, mode, how_many); @@ -214,6 +212,8 @@ class ARDOUR_UI : public Gtkmm2ext::UI void set_keybindings_path (std::string path); void save_keybindings (); + void setup_profile (); + protected: friend class PublicEditor; @@ -272,9 +272,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI GlobalClickBox *crossfade_time_button; vector<string> crossfade_time_strings; - GlobalClickBox *mmc_id_button; - vector<string> mmc_id_strings; - Gtk::ToggleButton preroll_button; Gtk::ToggleButton postroll_button; @@ -284,7 +281,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI int setup_windows (); void setup_transport (); void setup_clock (); - void setup_adjustables (); static ARDOUR_UI *theArdourUI; @@ -312,9 +308,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI void start_blinking (); void stop_blinking (); - void control_methods_adjusted (); - void mmc_device_id_adjusted (); - void about_signal_response(int response); private: @@ -355,18 +348,51 @@ class ARDOUR_UI : public Gtkmm2ext::UI Gtk::HBox primary_clock_hbox; Gtk::HBox secondary_clock_hbox; - Gtkmm2ext::StatefulButton roll_button; - Gtkmm2ext::StatefulButton stop_button; - Gtkmm2ext::StatefulButton rewind_button; - Gtkmm2ext::StatefulButton forward_button; - Gtkmm2ext::StatefulButton goto_start_button; - Gtkmm2ext::StatefulButton goto_end_button; - Gtkmm2ext::StatefulButton auto_loop_button; - Gtkmm2ext::StatefulButton play_selection_button; - Gtkmm2ext::StatefulButton rec_button; + struct TransportControllable : public PBD::Controllable { + enum ToggleType { + Roll = 0, + Stop, + RecordEnable, + GotoStart, + GotoEnd, + AutoLoop, + PlaySelection, + ShuttleControl + + }; + + TransportControllable (std::string name, ARDOUR_UI&, ToggleType); + void set_value (float); + float get_value (void) const; + + void set_id (const std::string&); + + ARDOUR_UI& ui; + ToggleType type; + }; + + TransportControllable roll_controllable; + TransportControllable stop_controllable; + TransportControllable goto_start_controllable; + TransportControllable goto_end_controllable; + TransportControllable auto_loop_controllable; + TransportControllable play_selection_controllable; + TransportControllable rec_controllable; + TransportControllable shuttle_controllable; + BindingProxy shuttle_controller_binding_proxy; + + void set_transport_controllable_state (const XMLNode&); + XMLNode& get_transport_controllable_state (); + + BindableButton roll_button; + BindableButton stop_button; + BindableButton goto_start_button; + BindableButton goto_end_button; + BindableButton auto_loop_button; + BindableButton play_selection_button; + BindableButton rec_button; - Gtk::ToggleButton time_master_button; Gtk::ComboBoxText sync_option_combo; void sync_option_changed (); @@ -398,16 +424,19 @@ class ARDOUR_UI : public Gtkmm2ext::UI gint shuttle_box_expose (GdkEventExpose*); gint mouse_shuttle (double x, bool force); void use_shuttle_fract (bool force); + void set_shuttle_fract (double); bool shuttle_grabbed; double shuttle_fract; - Gtk::ToggleButton punch_in_button; - Gtk::ToggleButton punch_out_button; - Gtk::ToggleButton auto_return_button; - Gtk::ToggleButton auto_play_button; - Gtk::ToggleButton auto_input_button; - Gtk::ToggleButton click_button; + Gtkmm2ext::StatefulToggleButton punch_in_button; + Gtkmm2ext::StatefulToggleButton punch_out_button; + Gtkmm2ext::StatefulToggleButton auto_return_button; + Gtkmm2ext::StatefulToggleButton auto_play_button; + Gtkmm2ext::StatefulToggleButton auto_input_button; + Gtkmm2ext::StatefulToggleButton click_button; + Gtkmm2ext::StatefulToggleButton time_master_button; + Gtk::ToggleButton auditioning_alert_button; Gtk::ToggleButton solo_alert_button; @@ -430,14 +459,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI void transport_rec_enable_blink (bool onoff); - /* These change where we accept control from: - MMC, X (local) or both. - */ - - void allow_mmc_only (); - void allow_mmc_and_local (); - void allow_local_only (); - Gtk::Menu* session_popup_menu; struct RecentSessionModelColumns : public Gtk::TreeModel::ColumnRecord { @@ -497,7 +518,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI gint every_second (); gint every_point_one_seconds (); - gint every_point_oh_five_seconds (); gint every_point_zero_one_seconds (); sigc::connection second_connection; @@ -585,7 +605,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI /* Keymap handling */ void install_actions (); - void start_keyboard_prefix(); void toggle_record_enable (uint32_t); @@ -609,11 +628,8 @@ class ARDOUR_UI : public Gtkmm2ext::UI struct timeval last_peak_grab; struct timeval last_shuttle_request; - bool have_disk_overrun_displayed; - bool have_disk_underrun_displayed; - - void disk_overrun_message_gone (); - void disk_underrun_message_gone (); + bool have_disk_speed_dialog_displayed; + void disk_speed_dialog_gone (int ignored_response, Gtk::MessageDialog*); void disk_overrun_handler (); void disk_underrun_handler (); @@ -639,13 +655,15 @@ class ARDOUR_UI : public Gtkmm2ext::UI void toggle_send_midi_feedback (); void toggle_use_mmc (); void toggle_send_mmc (); - void toggle_use_midi_control(); void toggle_send_mtc (); + void toggle_use_osc (); + void set_input_auto_connect (ARDOUR::AutoConnectOption); void set_output_auto_connect (ARDOUR::AutoConnectOption); void set_solo_model (ARDOUR::SoloModel); void set_monitor_model (ARDOUR::MonitorModel); + void set_remote_model (ARDOUR::RemoteModel); void toggle_StopPluginsWithTransport(); void toggle_DoNotRunPluginsWhileRecording(); @@ -654,12 +672,14 @@ class ARDOUR_UI : public Gtkmm2ext::UI void toggle_StopTransportAtEndOfSession(); void toggle_GainReduceFastTransport(); void toggle_LatchedSolo(); + void toggle_ShowSoloMutes(); void toggle_LatchedRecordEnable (); void toggle_RegionEquivalentsOverlap (); void mtc_port_changed (); void map_solo_model (); void map_monitor_model (); + void map_remote_model (); void map_file_header_format (); void map_file_data_format (); void map_input_auto_connect (); @@ -676,6 +696,9 @@ class ARDOUR_UI : public Gtkmm2ext::UI bool can_save_keybindings; bool first_idle (); + + void no_memory_warning (); + void check_memory_locking (); }; #endif /* __ardour_gui_h__ */ diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc index a39bcb124d..f3e8b6e344 100644 --- a/gtk2_ardour/ardour_ui2.cc +++ b/gtk2_ardour/ardour_ui2.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <fcntl.h> @@ -35,13 +34,16 @@ #include <ardour/audioengine.h> #include <ardour/ardour.h> +#include <ardour/profile.h> #include <ardour/route.h> #include "ardour_ui.h" +#include "keyboard.h" #include "public_editor.h" #include "audio_clock.h" #include "actions.h" #include "utils.h" +#include "color_manager.h" #include "i18n.h" @@ -72,9 +74,10 @@ ARDOUR_UI::setup_windows () setup_clock (); setup_transport(); - setup_adjustables (); build_menu_bar (); + color_manager->signal_unmap().connect (bind (sigc::ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleColorManager"))); + top_packer.pack_start (menu_bar_base, false, false); top_packer.pack_start (transport_frame, false, false); @@ -84,45 +87,13 @@ ARDOUR_UI::setup_windows () } void -ARDOUR_UI::setup_adjustables () -{ - adjuster_table.set_homogeneous (true); - - online_control_strings.push_back (_("MMC + Local")); - online_control_strings.push_back (_("MMC")); - online_control_strings.push_back (_("Local")); - - online_control_button = new GlobalClickBox ("CONTROL", - online_control_strings); - - online_control_button->adjustment.signal_value_changed().connect(mem_fun(*this,&ARDOUR_UI::control_methods_adjusted)); - - mmc_id_strings.push_back ("1"); - mmc_id_strings.push_back ("2"); - mmc_id_strings.push_back ("3"); - mmc_id_strings.push_back ("4"); - mmc_id_strings.push_back ("5"); - mmc_id_strings.push_back ("6"); - mmc_id_strings.push_back ("7"); - mmc_id_strings.push_back ("8"); - mmc_id_strings.push_back ("9"); - - mmc_id_button = new GlobalClickBox (_("MMC ID"), mmc_id_strings); - - mmc_id_button->adjustment.signal_value_changed().connect (mem_fun(*this,&ARDOUR_UI::mmc_device_id_adjusted)); - - adjuster_table.attach (*online_control_button, 0, 2, 1, 2, FILL|EXPAND, FILL, 5, 5); - adjuster_table.attach (*mmc_id_button, 2, 3, 1, 2, FILL, FILL, 5, 5); -} - -void ARDOUR_UI::transport_stopped () { - stop_button.set_active (true); + stop_button.set_visual_state (1); - roll_button.set_active (false); - play_selection_button.set_active (false); - auto_loop_button.set_active (false); + roll_button.set_visual_state (0); + play_selection_button.set_visual_state (0); + auto_loop_button.set_visual_state (0); shuttle_fract = 0; shuttle_box.queue_draw (); @@ -133,22 +104,22 @@ ARDOUR_UI::transport_stopped () void ARDOUR_UI::transport_rolling () { - stop_button.set_active (false); + stop_button.set_visual_state (0); if (session->get_play_range()) { - play_selection_button.set_active (true); - roll_button.set_active (false); - auto_loop_button.set_active (false); + play_selection_button.set_visual_state (1); + roll_button.set_visual_state (0); + auto_loop_button.set_visual_state (0); } else if (session->get_play_loop ()) { - auto_loop_button.set_active (true); - play_selection_button.set_active (false); - roll_button.set_active (false); + auto_loop_button.set_visual_state (1); + play_selection_button.set_visual_state (0); + roll_button.set_visual_state (0); } else { - roll_button.set_active (true); - play_selection_button.set_active (false); - auto_loop_button.set_active (false); + roll_button.set_visual_state (1); + play_selection_button.set_visual_state (0); + auto_loop_button.set_visual_state (0); } /* reset shuttle controller */ @@ -160,19 +131,19 @@ ARDOUR_UI::transport_rolling () void ARDOUR_UI::transport_rewinding () { - stop_button.set_active(false); - roll_button.set_active (true); - play_selection_button.set_active (false); - auto_loop_button.set_active (false); + stop_button.set_visual_state (0); + roll_button.set_visual_state (1); + play_selection_button.set_visual_state (0); + auto_loop_button.set_visual_state (0); } void ARDOUR_UI::transport_forwarding () { - stop_button.set_active (false); - roll_button.set_active (true); - play_selection_button.set_active (false); - auto_loop_button.set_active (false); + stop_button.set_visual_state (0); + roll_button.set_visual_state (1); + play_selection_button.set_visual_state (0); + auto_loop_button.set_visual_state (0); } void @@ -207,6 +178,7 @@ ARDOUR_UI::setup_transport () play_selection_button.set_name ("TransportButton"); rec_button.set_name ("TransportRecButton"); auto_loop_button.set_name ("TransportButton"); + auto_return_button.set_name ("TransportButton"); auto_play_button.set_name ("TransportButton"); auto_input_button.set_name ("TransportButton"); @@ -215,30 +187,6 @@ ARDOUR_UI::setup_transport () click_button.set_name ("TransportButton"); time_master_button.set_name ("TransportButton"); - vector<Gdk::Color> colors; - Gdk::Color c; - - /* record button has 3 color states, so we set 2 extra here */ - set_color(c, rgba_from_style ("TransportRecButton", 0xff, 0, 0, 0, "bg", Gtk::STATE_PRELIGHT, false )); - colors.push_back (c); - - set_color(c, rgba_from_style ("TransportRecButton", 0xff, 0, 0, 0, "bg", Gtk::STATE_ACTIVE, false )); - colors.push_back (c); - - rec_button.set_colors (colors); - colors.clear (); - - /* other buttons get 2 color states, so add one here */ - set_color(c, rgba_from_style ("TransportButton", 0x7f, 0xff, 0x7f, 0, "bg", Gtk::STATE_ACTIVE, false )); - colors.push_back (c); - - stop_button.set_colors (colors); - roll_button.set_colors (colors); - auto_loop_button.set_colors (colors); - play_selection_button.set_colors (colors); - goto_start_button.set_colors (colors); - goto_end_button.set_colors (colors); - stop_button.set_size_request(29, -1); roll_button.set_size_request(29, -1); auto_loop_button.set_size_request(29, -1); @@ -249,7 +197,7 @@ ARDOUR_UI::setup_transport () Widget* w; - stop_button.set_active (true); + stop_button.set_visual_state (1); w = manage (new Image (get_icon (X_("transport_start")))); w->show(); @@ -298,6 +246,7 @@ ARDOUR_UI::setup_transport () ARDOUR_UI::instance()->tooltips().set_tip (goto_start_button, _("Go to start of session")); ARDOUR_UI::instance()->tooltips().set_tip (goto_end_button, _("Go to end of session")); ARDOUR_UI::instance()->tooltips().set_tip (auto_loop_button, _("Play loop range")); + ARDOUR_UI::instance()->tooltips().set_tip (auto_return_button, _("Return to last playback start when stopped")); ARDOUR_UI::instance()->tooltips().set_tip (auto_play_button, _("Start playback after any locate")); ARDOUR_UI::instance()->tooltips().set_tip (auto_input_button, _("Be sensible about input monitoring")); @@ -338,12 +287,7 @@ ARDOUR_UI::setup_transport () ActionManager::get_action ("Transport", "TogglePunchIn")->connect_proxy (punch_in_button); ActionManager::get_action ("Transport", "TogglePunchOut")->connect_proxy (punch_out_button); - preroll_button.unset_flags (CAN_FOCUS); - preroll_button.set_events (preroll_button.get_events() & ~(Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK)); preroll_button.set_name ("TransportButton"); - - postroll_button.unset_flags (CAN_FOCUS); - postroll_button.set_events (postroll_button.get_events() & ~(Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK)); postroll_button.set_name ("TransportButton"); preroll_clock.set_mode (AudioClock::MinSec); @@ -421,7 +365,9 @@ ARDOUR_UI::setup_transport () HBox* clock_box = manage (new HBox); clock_box->pack_start (primary_clock, false, false); - clock_box->pack_start (secondary_clock, false, false); + if (!ARDOUR::Profile->get_small_screen()) { + clock_box->pack_start (secondary_clock, false, false); + } VBox* time_controls_box = manage (new VBox); time_controls_box->pack_start (sync_option_combo, false, false); time_controls_box->pack_start (time_master_button, false, false); @@ -622,6 +568,10 @@ ARDOUR_UI::shuttle_box_button_press (GdkEventButton* ev) return true; } + if (shuttle_controller_binding_proxy.button_press_handler (ev)) { + return true; + } + if (Keyboard::is_context_menu_event (ev)) { show_shuttle_context_menu (); return true; @@ -656,11 +606,11 @@ ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev) shuttle_grabbed = false; shuttle_box.remove_modal_grab (); if (Config->get_shuttle_behaviour() == Sprung) { - if (Config->get_auto_play() || roll_button.get_state()) { + if (Config->get_auto_play() || roll_button.get_visual_state()) { shuttle_fract = SHUTTLE_FRACT_SPEED1; session->request_transport_speed (1.0); - stop_button.set_active (false); - roll_button.set_active (true); + stop_button.set_visual_state (0); + roll_button.set_visual_state (1); } else { shuttle_fract = 0; session->request_transport_speed (0.0); @@ -673,8 +623,8 @@ ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev) if (session->transport_rolling()) { shuttle_fract = SHUTTLE_FRACT_SPEED1; session->request_transport_speed (1.0); - stop_button.set_active (false); - roll_button.set_active (true); + stop_button.set_visual_state (0); + roll_button.set_visual_state (1); } else { shuttle_fract = 0; } @@ -682,14 +632,9 @@ ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev) return true; case 3: + default: return true; - - case 4: - shuttle_fract += 0.005; - break; - case 5: - shuttle_fract -= 0.005; - break; + } use_shuttle_fract (true); @@ -750,6 +695,13 @@ ARDOUR_UI::mouse_shuttle (double x, bool force) } void +ARDOUR_UI::set_shuttle_fract (double f) +{ + shuttle_fract = f; + use_shuttle_fract (false); +} + +void ARDOUR_UI::use_shuttle_fract (bool force) { struct timeval now; diff --git a/gtk2_ardour/ardour_ui_dependents.cc b/gtk2_ardour/ardour_ui_dependents.cc index 9c6daa8952..5617cdbc4f 100644 --- a/gtk2_ardour/ardour_ui_dependents.cc +++ b/gtk2_ardour/ardour_ui_dependents.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ /* this file exists solely to break compilation dependencies that diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc index 61144a62c0..c3b82c74a8 100644 --- a/gtk2_ardour/ardour_ui_dialogs.cc +++ b/gtk2_ardour/ardour_ui_dialogs.cc @@ -62,6 +62,20 @@ ARDOUR_UI::connect_to_session (Session *s) ActionManager::set_sensitive (ActionManager::range_sensitive_actions, false); } + if (!session->control_out()) { + Glib::RefPtr<Action> act = ActionManager::get_action (X_("options"), X_("SoloViaBus")); + if (act) { + act->set_sensitive (false); + } + } + + /* allow wastebasket flush again */ + + Glib::RefPtr<Action> act = ActionManager::get_action (X_("Main"), X_("FlushWastebasket")); + if (act) { + act->set_sensitive (true); + } + /* there are never any selections on startup */ ActionManager::set_sensitive (ActionManager::region_selection_sensitive_actions, false); @@ -132,6 +146,8 @@ ARDOUR_UI::connect_to_session (Session *s) AudioClock::ModeChanged.connect (mem_fun (*this, &ARDOUR_UI::store_clock_modes)); + Glib::signal_idle().connect (mem_fun (*this, &ARDOUR_UI::first_idle)); + start_clocking (); start_blinking (); @@ -139,7 +155,6 @@ ARDOUR_UI::connect_to_session (Session *s) second_connection = Glib::signal_timeout().connect (mem_fun(*this, &ARDOUR_UI::every_second), 1000); point_one_second_connection = Glib::signal_timeout().connect (mem_fun(*this, &ARDOUR_UI::every_point_one_seconds), 100); - // point_oh_five_second_connection = Glib::signal_timeout().connect (mem_fun(*this, &ARDOUR_UI::every_point_oh_five_seconds), 50); point_zero_one_second_connection = Glib::signal_timeout().connect (mem_fun(*this, &ARDOUR_UI::every_point_zero_one_seconds), 40); } @@ -324,7 +339,7 @@ int ARDOUR_UI::create_route_params () { if (route_params == 0) { - route_params = new RouteParams_UI (*engine); + route_params = new RouteParams_UI (); route_params->set_session (session); route_params->signal_unmap().connect (sigc::bind(sigc::ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleInspector"))); } diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index 6e5aa01ac6..7ecbb0d01b 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ /* This file contains any ARDOUR_UI methods that require knowledge of @@ -26,7 +25,10 @@ #include <pbd/pathscanner.h> +#include <glibmm/miscutils.h> + #include <gtkmm2ext/utils.h> +#include <gtkmm2ext/window_title.h> #include "ardour_ui.h" #include "public_editor.h" @@ -35,6 +37,7 @@ #include "actions.h" #include <ardour/session.h> +#include <ardour/profile.h> #include <ardour/audioengine.h> #include <ardour/control_protocol_manager.h> @@ -55,7 +58,7 @@ ARDOUR_UI::create_editor () { try { - editor = new Editor (*engine); + editor = new Editor (); } catch (failed_constructor& err) { @@ -93,14 +96,15 @@ ARDOUR_UI::install_actions () /* the real actions */ - act = ActionManager::register_action (main_actions, X_("New"), _("New"), bind (mem_fun(*this, &ARDOUR_UI::new_session), string ())); + act = ActionManager::register_action (main_actions, X_("New"), _("New"), hide_return (bind (mem_fun(*this, &ARDOUR_UI::new_session), string ()))); ActionManager::register_action (main_actions, X_("Open"), _("Open"), mem_fun(*this, &ARDOUR_UI::open_session)); ActionManager::register_action (main_actions, X_("Recent"), _("Recent"), mem_fun(*this, &ARDOUR_UI::open_recent_session)); act = ActionManager::register_action (main_actions, X_("Close"), _("Close"), mem_fun(*this, &ARDOUR_UI::close_session)); ActionManager::session_sensitive_actions.push_back (act); - act = ActionManager::register_action (main_actions, X_("AddTrackBus"), _("Add Track/Bus"), mem_fun(*this, &ARDOUR_UI::add_route)); + act = ActionManager::register_action (main_actions, X_("AddTrackBus"), _("Add Track/Bus"), + bind (mem_fun(*this, &ARDOUR_UI::add_route), (Gtk::Window*) 0)); ActionManager::session_sensitive_actions.push_back (act); @@ -181,7 +185,6 @@ ARDOUR_UI::install_actions () common_actions = ActionGroup::create (X_("Common")); ActionManager::register_action (main_actions, X_("Windows"), _("Windows")); - ActionManager::register_action (common_actions, X_("Start-Prefix"), _("start prefix"), mem_fun(*this, &ARDOUR_UI::start_keyboard_prefix)); ActionManager::register_action (common_actions, X_("Quit"), _("Quit"), (mem_fun(*this, &ARDOUR_UI::finish))); /* windows visibility actions */ @@ -391,8 +394,11 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (option_actions, X_("SendMIDIfeedback"), _("Send MIDI feedback"), mem_fun (*this, &ARDOUR_UI::toggle_send_midi_feedback)); ActionManager::session_sensitive_actions.push_back (act); - act = ActionManager::register_toggle_action (option_actions, X_("UseMIDIcontrol"), _("Use MIDI control"), mem_fun (*this, &ARDOUR_UI::toggle_use_midi_control)); - ActionManager::session_sensitive_actions.push_back (act); + + act = ActionManager::register_toggle_action (option_actions, X_("UseOSC"), _("Use OSC"), mem_fun (*this, &ARDOUR_UI::toggle_use_osc)); +#ifndef HAVE_LIBLO + act->set_sensitive (false); +#endif ActionManager::register_toggle_action (option_actions, X_("StopPluginsWithTransport"), _("Stop plugins with transport"), mem_fun (*this, &ARDOUR_UI::toggle_StopPluginsWithTransport)); ActionManager::register_toggle_action (option_actions, X_("VerifyRemoveLastCapture"), _("Verify remove last capture"), mem_fun (*this, &ARDOUR_UI::toggle_VerifyRemoveLastCapture)); @@ -407,6 +413,8 @@ ARDOUR_UI::install_actions () act = ActionManager::register_toggle_action (option_actions, X_("LatchedSolo"), _("Latched solo"), mem_fun (*this, &ARDOUR_UI::toggle_LatchedSolo)); ActionManager::session_sensitive_actions.push_back (act); + act = ActionManager::register_toggle_action (option_actions, X_("ShowSoloMutes"), _("Show solo muting"), mem_fun (*this, &ARDOUR_UI::toggle_ShowSoloMutes)); + ActionManager::session_sensitive_actions.push_back (act); /* !!! REMEMBER THAT RADIO ACTIONS HAVE TO BE HANDLED WITH MORE FINESSE THAN SIMPLE TOGGLES !!! */ @@ -469,6 +477,15 @@ ARDOUR_UI::install_actions () act = ActionManager::register_radio_action (option_actions, output_auto_connect_group, X_("OutputAutoConnectManual"), _("Manually connect outputs"), hide_return (bind (mem_fun (*this, &ARDOUR_UI::set_output_auto_connect), (AutoConnectOption) 0))); ActionManager::session_sensitive_actions.push_back (act); + RadioAction::Group remote_group; + + act = ActionManager::register_radio_action (option_actions, remote_group, X_("RemoteUserDefined"), _("Remote ID assigned by User"), hide_return (bind (mem_fun (*this, &ARDOUR_UI::set_remote_model), UserOrdered))); + ActionManager::session_sensitive_actions.push_back (act); + act = ActionManager::register_radio_action (option_actions, remote_group, X_("RemoteMixerDefined"), _("Remote ID follows order of Mixer"), hide_return (bind (mem_fun (*this, &ARDOUR_UI::set_remote_model), MixerOrdered))); + ActionManager::session_sensitive_actions.push_back (act); + act = ActionManager::register_radio_action (option_actions, remote_group, X_("RemoteEditorDefined"), _("Remote ID follows order of Editor"), hide_return (bind (mem_fun (*this, &ARDOUR_UI::set_remote_model), EditorOrdered))); + ActionManager::session_sensitive_actions.push_back (act); + ActionManager::add_action_group (shuttle_actions); ActionManager::add_action_group (option_actions); ActionManager::add_action_group (jack_actions); @@ -680,11 +697,13 @@ ARDOUR_UI::build_menu_bar () sample_rate_label.set_name ("SampleRate"); menu_hbox.pack_start (*menu_bar, true, true); - menu_hbox.pack_end (wall_clock_box, false, false, 10); - menu_hbox.pack_end (disk_space_box, false, false, 10); - menu_hbox.pack_end (cpu_load_box, false, false, 10); - menu_hbox.pack_end (buffer_load_box, false, false, 10); - menu_hbox.pack_end (sample_rate_box, false, false, 10); + if (!Profile->get_small_screen()) { + menu_hbox.pack_end (wall_clock_box, false, false, 2); + menu_hbox.pack_end (disk_space_box, false, false, 4); + } + menu_hbox.pack_end (cpu_load_box, false, false, 4); + menu_hbox.pack_end (buffer_load_box, false, false, 4); + menu_hbox.pack_end (sample_rate_box, false, false, 4); menu_bar_base.set_name ("MainMenuBar"); menu_bar_base.add (menu_hbox); @@ -699,7 +718,10 @@ ARDOUR_UI::setup_clock () big_clock_window->set_border_width (0); big_clock_window->add (big_clock); - big_clock_window->set_title (_("ardour: clock")); + + WindowTitle title(Glib::get_application_name()); + title += _("Clock"); + big_clock_window->set_title (title.get_string()); big_clock_window->set_type_hint (Gdk::WINDOW_TYPE_HINT_MENU); big_clock_window->signal_realize().connect (bind (sigc::ptr_fun (set_decoration), big_clock_window, (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH))); big_clock_window->signal_unmap().connect (bind (sigc::ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleBigClock"))); diff --git a/gtk2_ardour/ardour_ui_mixer.cc b/gtk2_ardour/ardour_ui_mixer.cc index 991f37c3a7..dfc5d644b0 100644 --- a/gtk2_ardour/ardour_ui_mixer.cc +++ b/gtk2_ardour/ardour_ui_mixer.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ /* This file contains any ARDOUR_UI methods that require knowledge of @@ -35,7 +34,7 @@ ARDOUR_UI::create_mixer () { try { - mixer = new Mixer_UI (*engine); + mixer = new Mixer_UI (); } catch (failed_constructor& err) { @@ -44,3 +43,4 @@ ARDOUR_UI::create_mixer () return 0; } + diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc index 5674d6dee1..9565c46e40 100644 --- a/gtk2_ardour/ardour_ui_options.cc +++ b/gtk2_ardour/ardour_ui_options.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <pbd/convert.h> @@ -25,6 +24,7 @@ #include <ardour/configuration.h> #include <ardour/session.h> +#include <ardour/osc.h> #include <ardour/audioengine.h> #include "ardour_ui.h" @@ -64,9 +64,9 @@ ARDOUR_UI::toggle_use_mmc () } void -ARDOUR_UI::toggle_use_midi_control () +ARDOUR_UI::toggle_use_osc () { - ActionManager::toggle_config_state ("options", "UseMIDIcontrol", &Configuration::set_midi_control, &Configuration::get_midi_control); + ActionManager::toggle_config_state ("options", "UseOSC", &Configuration::set_use_osc, &Configuration::get_use_osc); } void @@ -78,7 +78,7 @@ ARDOUR_UI::toggle_send_midi_feedback () void ARDOUR_UI::set_native_file_header_format (HeaderFormat hf) { - const char *action; + const char *action = 0; switch (hf) { case BWF: @@ -120,7 +120,7 @@ ARDOUR_UI::set_native_file_header_format (HeaderFormat hf) void ARDOUR_UI::set_native_file_data_format (SampleFormat sf) { - const char* action; + const char* action = 0; switch (sf) { case FormatFloat: @@ -226,6 +226,39 @@ ARDOUR_UI::set_solo_model (SoloModel model) } void +ARDOUR_UI::set_remote_model (RemoteModel model) +{ + const char* action = 0; + + switch (model) { + case UserOrdered: + action = X_("RemoteUserDefined"); + break; + case MixerOrdered: + action = X_("RemoteMixerDefined"); + break; + case EditorOrdered: + action = X_("RemoteEditorDefined"); + break; + + default: + fatal << string_compose (_("programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1"), model) << endmsg; + /*NOTREACHED*/ + } + + Glib::RefPtr<Action> act = ActionManager::get_action ("options", action); + + if (act) { + Glib::RefPtr<RadioAction> ract = Glib::RefPtr<RadioAction>::cast_dynamic(act); + + if (ract && ract->get_active() && Config->get_remote_model() != model) { + Config->set_remote_model (model); + } + } + +} + +void ARDOUR_UI::set_monitor_model (MonitorModel model) { const char* action = 0; @@ -390,6 +423,12 @@ ARDOUR_UI::toggle_LatchedSolo() } void +ARDOUR_UI::toggle_ShowSoloMutes() +{ + ActionManager::toggle_config_state ("options", "ShowSoloMutes", &Configuration::set_show_solo_mutes, &Configuration::get_show_solo_mutes); +} + +void ARDOUR_UI::mtc_port_changed () { bool have_mtc; @@ -472,6 +511,33 @@ ARDOUR_UI::map_monitor_model () } void +ARDOUR_UI::map_remote_model () +{ + const char* on = 0; + + switch (Config->get_remote_model()) { + case UserOrdered: + on = X_("RemoteUserDefined"); + break; + case MixerOrdered: + on = X_("RemoteMixerDefined"); + break; + case EditorOrdered: + on = X_("RemoteEditorDefined"); + break; + } + + Glib::RefPtr<Action> act = ActionManager::get_action ("options", on); + if (act) { + Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); + + if (tact && !tact->get_active()) { + tact->set_active (true); + } + } +} + +void ARDOUR_UI::map_file_header_format () { const char* action = 0; @@ -757,6 +823,19 @@ ARDOUR_UI::parameter_changed (const char* parameter_name) if (PARAM_IS ("slave-source")) { sync_option_combo.set_active_text (slave_source_to_string (Config->get_slave_source())); + + switch (Config->get_slave_source()) { + case None: + ActionManager::get_action ("Transport", "ToggleAutoPlay")->set_sensitive (true); + ActionManager::get_action ("Transport", "ToggleAutoReturn")->set_sensitive (true); + break; + + default: + /* XXX need to make auto-play is off as well as insensitive */ + ActionManager::get_action ("Transport", "ToggleAutoPlay")->set_sensitive (false); + ActionManager::get_action ("Transport", "ToggleAutoReturn")->set_sensitive (false); + break; + } } else if (PARAM_IS ("send-mtc")) { @@ -766,18 +845,30 @@ ARDOUR_UI::parameter_changed (const char* parameter_name) ActionManager::map_some_state ("options", "SendMMC", &Configuration::get_send_mmc); + } else if (PARAM_IS ("use-osc")) { + +#ifdef HAVE_LIBLO + if (Config->get_use_osc()) { + osc->start (); + } else { + osc->stop (); + } +#endif + + ActionManager::map_some_state ("options", "UseOSC", &Configuration::get_use_osc); + } else if (PARAM_IS ("mmc-control")) { ActionManager::map_some_state ("options", "UseMMC", &Configuration::get_mmc_control); } else if (PARAM_IS ("midi-feedback")) { ActionManager::map_some_state ("options", "SendMIDIfeedback", &Configuration::get_midi_feedback); - } else if (PARAM_IS ("midi-control")) { - ActionManager::map_some_state ("options", "UseMIDIcontrol", &Configuration::get_midi_control); } else if (PARAM_IS ("do-not-record-plugins")) { ActionManager::map_some_state ("options", "DoNotRunPluginsWhileRecording", &Configuration::get_do_not_record_plugins); } else if (PARAM_IS ("latched-record-enable")) { ActionManager::map_some_state ("options", "LatchedRecordEnable", &Configuration::get_latched_record_enable); } else if (PARAM_IS ("solo-latched")) { ActionManager::map_some_state ("options", "LatchedSolo", &Configuration::get_solo_latched); + } else if (PARAM_IS ("show-solo-mutes")) { + ActionManager::map_some_state ("options", "ShowSoloMutes", &Configuration::get_show_solo_mutes); } else if (PARAM_IS ("solo-model")) { map_solo_model (); } else if (PARAM_IS ("auto-play")) { @@ -806,6 +897,8 @@ ARDOUR_UI::parameter_changed (const char* parameter_name) ActionManager::map_some_state ("options", "StopTransportAtEndOfSession", &Configuration::get_stop_at_session_end); } else if (PARAM_IS ("monitoring-model")) { map_monitor_model (); + } else if (PARAM_IS ("remote-model")) { + map_remote_model (); } else if (PARAM_IS ("use-video-sync")) { ActionManager::map_some_state ("Transport", "ToggleVideoSync", &Configuration::get_use_video_sync); } else if (PARAM_IS ("quieten-at-speed")) { diff --git a/gtk2_ardour/audio_clock.cc b/gtk2_ardour/audio_clock.cc index 481e91b09a..28505ab46d 100644 --- a/gtk2_ardour/audio_clock.cc +++ b/gtk2_ardour/audio_clock.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdio> // for sprintf @@ -1074,39 +1073,6 @@ AudioClock::field_button_press_event (GdkEventButton *ev, Field field) return FALSE; break; - case 4: - if (Keyboard::modifier_state_equals (ev->state, Keyboard::Shift)) { - frames = get_frames (field); - if (frames != 0) { - if (Keyboard::modifier_state_equals (ev->state, Keyboard::Control)) { - frames *= 10; - } - set (current_time() + frames, true); - ValueChanged (); /* EMIT_SIGNAL */ - } - } - break; - - case 5: - if (Keyboard::modifier_state_equals (ev->state, Keyboard::Shift)) { - frames = get_frames (field); - if (frames != 0) { - if (Keyboard::modifier_state_equals (ev->state, Keyboard::Control)) { - frames *= 10; - } - - if ((double)current_time() - (double)frames < 0.0) { - set (0, true); - } - else { - set (current_time() - frames, true); - } - - ValueChanged (); /* EMIT_SIGNAL */ - } - } - break; - default: return FALSE; break; diff --git a/gtk2_ardour/audio_clock.h b/gtk2_ardour/audio_clock.h index 662cb949e6..f0790dcbc8 100644 --- a/gtk2_ardour/audio_clock.h +++ b/gtk2_ardour/audio_clock.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __audio_clock_h__ diff --git a/gtk2_ardour/audio_region_editor.cc b/gtk2_ardour/audio_region_editor.cc index b7106a0796..ff84a44488 100644 --- a/gtk2_ardour/audio_region_editor.cc +++ b/gtk2_ardour/audio_region_editor.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <pbd/memento_command.h> @@ -25,6 +24,7 @@ #include <ardour/utils.h> #include <gtkmm2ext/utils.h> #include <gtkmm2ext/stop_signal.h> +#include <gtkmm2ext/window_title.h> #include <cmath> #include "audio_region_editor.h" @@ -39,6 +39,7 @@ using namespace ARDOUR; using namespace PBD; using namespace sigc; using namespace std; +using namespace Gtkmm2ext; AudioRegionEditor::AudioRegionEditor (Session& s, boost::shared_ptr<AudioRegion> r, AudioRegionView& rv) : RegionEditor (s), @@ -119,9 +120,10 @@ AudioRegionEditor::AudioRegionEditor (Session& s, boost::shared_ptr<AudioRegion> signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), static_cast<Window *> (this))); - string title = _("ardour: region "); - title += _region->name(); - set_title (title); + WindowTitle title(string_compose (_("Region %1"), _region->name())); + title += Glib::get_application_name(); + + set_title (title.get_string()); show_all(); diff --git a/gtk2_ardour/audio_region_editor.h b/gtk2_ardour/audio_region_editor.h index a84aec27c0..024f390d40 100644 --- a/gtk2_ardour/audio_region_editor.h +++ b/gtk2_ardour/audio_region_editor.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_audio_region_edit_h__ diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index ba5b9a1ce1..ac0d317a13 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> @@ -90,14 +89,37 @@ AudioRegionView::AudioRegionView (ArdourCanvas::Group *parent, RouteTimeAxisView { } + +AudioRegionView::AudioRegionView (const AudioRegionView& other) + : RegionView (other) + , zero_line(0) + , fade_in_shape(0) + , fade_out_shape(0) + , fade_in_handle(0) + , fade_out_handle(0) + , gain_line(0) + , _amplitude_above_axis(1.0) + , _flags(0) + , fade_color(0) + +{ + Gdk::Color c; + int r,g,b,a; + + UINT_TO_RGBA (other.fill_color, &r, &g, &b, &a); + c.set_rgb_p (r/255.0, g/255.0, b/255.0); + + init (c, false); +} + void AudioRegionView::init (Gdk::Color& basic_color, bool wfd) { // FIXME: Some redundancy here with RegionView::init. Need to figure out // where order is important and where it isn't... - RegionView::init(basic_color, wfd); - + RegionView::init(basic_color, false); + XMLNode *node; _amplitude_above_axis = 1.0; @@ -607,13 +629,16 @@ AudioRegionView::set_samples_per_unit (gdouble spu) { RegionView::set_samples_per_unit (spu); - for (uint32_t n=0; n < waves.size(); ++n) { - waves[n]->property_samples_per_unit() = spu; + if (_flags & WaveformVisible) { + for (uint32_t n=0; n < waves.size(); ++n) { + waves[n]->property_samples_per_unit() = spu; + } } if (gain_line) { gain_line->reset (); } + reset_fade_shapes (); } @@ -653,6 +678,9 @@ AudioRegionView::set_colors () } else { waves[n]->property_wave_color() = color_map[cWaveForm]; } + + waves[n]->property_clip_color() = color_map[cWaveFormClip]; + waves[n]->property_zero_color() = color_map[cZeroLine]; } } @@ -676,6 +704,10 @@ AudioRegionView::set_waveform_visible (bool yn) if (((_flags & WaveformVisible) != yn)) { if (yn) { for (uint32_t n=0; n < waves.size(); ++n) { + /* make sure the zoom level is correct, since we don't update + this when waveforms are hidden. + */ + waves[n]->property_samples_per_unit() = samples_per_unit; waves[n]->show(); } _flags |= WaveformVisible; @@ -723,8 +755,6 @@ AudioRegionView::set_envelope_visible (bool yn) void AudioRegionView::create_waves () { - bool create_zero_line = true; - RouteTimeAxisView& atv (*(dynamic_cast<RouteTimeAxisView*>(&trackview))); // ick if (!atv.get_diskstream()) { @@ -750,23 +780,11 @@ AudioRegionView::create_waves () if (audio_region()->source(n)->peaks_ready (bind (mem_fun(*this, &AudioRegionView::peaks_ready_handler), n), data_ready_connection)) { create_one_wave (n, true); } else { - create_zero_line = false; } } else { create_one_wave (n, true); } } - - if (create_zero_line) { - if (zero_line) { - delete zero_line; - } - zero_line = new ArdourCanvas::SimpleLine (*group); - zero_line->property_x1() = (gdouble) 1.0; - zero_line->property_x2() = (gdouble) (_region->length() / samples_per_unit) - 1.0; - zero_line->property_color_rgba() = (guint) color_map[cZeroLine]; - manage_zero_line (); - } } void @@ -801,6 +819,8 @@ AudioRegionView::create_one_wave (uint32_t which, bool direct) wave->property_samples_per_unit() = samples_per_unit; wave->property_amplitude_above_axis() = _amplitude_above_axis; wave->property_wave_color() = _region->muted() ? color_map[cMutedWaveForm] : color_map[cWaveForm]; + wave->property_clip_color() = color_map[cWaveFormClip]; + wave->property_zero_color() = color_map[cZeroLine]; wave->property_region_start() = _region->start(); wave->property_rectified() = (bool) (_flags & WaveformRectified); wave->property_logscaled() = (bool) (_flags & WaveformLogScaled); @@ -839,6 +859,7 @@ AudioRegionView::create_one_wave (uint32_t which, bool direct) /* all waves created, don't hook into peaks ready anymore */ data_ready_connection.disconnect (); + if(0) if (!zero_line) { zero_line = new ArdourCanvas::SimpleLine (*group); zero_line->property_x1() = (gdouble) 1.0; @@ -1046,6 +1067,8 @@ AudioRegionView::add_ghost (AutomationTimeAxisView& atv) wave->property_samples_per_unit() = samples_per_unit; wave->property_amplitude_above_axis() = _amplitude_above_axis; wave->property_wave_color() = color_map[cGhostTrackWave]; + wave->property_clip_color() = color_map[cGhostTrackWaveClip]; + wave->property_zero_color() = color_map[cGhostTrackZeroLine]; wave->property_region_start() = _region->start(); ghost->waves.push_back(wave); @@ -1130,6 +1153,8 @@ AudioRegionView::color_handler (ColorID id, uint32_t val) switch (id) { case cMutedWaveForm: case cWaveForm: + case cWaveFormClip: + case cZeroLine: set_colors (); break; @@ -1137,15 +1162,6 @@ AudioRegionView::color_handler (ColorID id, uint32_t val) case cGainLine: envelope_active_changed(); break; - - case cZeroLine: - if (zero_line) { - zero_line->property_color_rgba() = (guint) color_map[cZeroLine]; - } - break; - - case cGhostTrackWave: - break; default: break; diff --git a/gtk2_ardour/audio_region_view.h b/gtk2_ardour/audio_region_view.h index 193cd80e96..761c0eafd8 100644 --- a/gtk2_ardour/audio_region_view.h +++ b/gtk2_ardour/audio_region_view.h @@ -55,6 +55,8 @@ class AudioRegionView : public RegionView double initial_samples_per_unit, Gdk::Color& basic_color); + AudioRegionView (const AudioRegionView& other); + ~AudioRegionView (); virtual void init (Gdk::Color& base_color, bool wait_for_data = false); @@ -143,7 +145,7 @@ class AudioRegionView : public RegionView void reset_width_dependent_items (double pixel_width); void set_waveview_data_src(); - void color_handler (ColorID, uint32_t); + void color_handler (ColorID, uint32_t); vector<GnomeCanvasWaveViewCache*> wave_caches; vector<ArdourCanvas::WaveView *> waves; diff --git a/gtk2_ardour/audio_streamview.cc b/gtk2_ardour/audio_streamview.cc index aa54af86fb..14036bc569 100644 --- a/gtk2_ardour/audio_streamview.cc +++ b/gtk2_ardour/audio_streamview.cc @@ -179,6 +179,15 @@ AudioStreamView::add_region_view_internal (boost::shared_ptr<Region> r, bool wai region_view->set_amplitude_above_axis(_amplitude_above_axis); region_views.push_front (region_view); + + /* if its the special single-sample length that we use for rec-regions, make it + insensitive to events + */ + + if (region->length() == 1) { + region_view->set_sensitive (false); + } + /* if this was the first one, then lets query the waveform scale and shape. otherwise, we set it to the current value */ diff --git a/gtk2_ardour/audio_time_axis.cc b/gtk2_ardour/audio_time_axis.cc index 81ef046eeb..8484bbceca 100644 --- a/gtk2_ardour/audio_time_axis.cc +++ b/gtk2_ardour/audio_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -108,21 +107,13 @@ AudioTimeAxisView::AudioTimeAxisView (PublicEditor& ed, Session& sess, boost::sh _route->panner().Changed.connect (mem_fun(*this, &AudioTimeAxisView::update_pans)); - if (is_audio_track()) { + update_control_names (); - controls_ebox.set_name ("AudioTrackControlsBaseUnselected"); - controls_base_selected_name = "AudioTrackControlsBaseSelected"; - controls_base_unselected_name = "AudioTrackControlsBaseUnselected"; + if (is_audio_track()) { /* ask for notifications of any new RegionViews */ _view->RegionViewAdded.connect (mem_fun(*this, &AudioTimeAxisView::region_view_added)); _view->attach (); - - } else { /* bus */ - - controls_ebox.set_name ("AudioBusControlsBaseUnselected"); - controls_base_selected_name = "AudioBusControlsBaseSelected"; - controls_base_unselected_name = "AudioBusControlsBaseUnselected"; } post_construct (); @@ -622,7 +613,19 @@ void AudioTimeAxisView::route_active_changed () { RouteTimeAxisView::route_active_changed (); + update_control_names (); +} + + +/** + * Set up the names of the controls so that they are coloured + * correctly depending on whether this route is inactive or + * selected. + */ +void +AudioTimeAxisView::update_control_names () +{ if (is_audio_track()) { if (_route->active()) { controls_ebox.set_name ("AudioTrackControlsBaseUnselected"); diff --git a/gtk2_ardour/audio_time_axis.h b/gtk2_ardour/audio_time_axis.h index 95bd8c0955..d8c3f07cc1 100644 --- a/gtk2_ardour/audio_time_axis.h +++ b/gtk2_ardour/audio_time_axis.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_audio_time_axis_h__ @@ -115,6 +114,7 @@ class AudioTimeAxisView : public RouteTimeAxisView void pan_hidden (); void update_pans (); + void update_control_names (); AutomationTimeAxisView* gain_track; AutomationTimeAxisView* pan_track; diff --git a/gtk2_ardour/automation_gain_line.cc b/gtk2_ardour/automation_gain_line.cc index 74e4f64e3c..006543df18 100644 --- a/gtk2_ardour/automation_gain_line.cc +++ b/gtk2_ardour/automation_gain_line.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <sigc++/signal.h> diff --git a/gtk2_ardour/automation_line.cc b/gtk2_ardour/automation_line.cc index 5598689855..67f91e1ed4 100644 --- a/gtk2_ardour/automation_line.cc +++ b/gtk2_ardour/automation_line.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> @@ -25,6 +24,7 @@ #include <pbd/stl_delete.h> #include <pbd/memento_command.h> +#include <pbd/stacktrace.h> #include <ardour/automation_event.h> #include <ardour/curve.h> @@ -1136,6 +1136,13 @@ AutomationLine::set_selected_points (PointSelection& points) } +void AutomationLine::set_colors() { + set_line_color( color_map[cAutomationLine] ); + for (vector<ControlPoint*>::iterator i = control_points.begin(); i != control_points.end(); ++i) { + (*i)->show_color (false, !points_visible); + } +} + void AutomationLine::show_selection () { diff --git a/gtk2_ardour/automation_line.h b/gtk2_ardour/automation_line.h index 1349efac4b..76afff5097 100644 --- a/gtk2_ardour/automation_line.h +++ b/gtk2_ardour/automation_line.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_automation_line_h__ @@ -160,6 +159,7 @@ class AutomationLine : public sigc::trackable, public PBD::StatefulThingWithGoin XMLNode& get_state (void); int set_state (const XMLNode&); + void set_colors(); protected: diff --git a/gtk2_ardour/automation_pan_line.cc b/gtk2_ardour/automation_pan_line.cc index aacfbdde75..04cfb0a311 100644 --- a/gtk2_ardour/automation_pan_line.cc +++ b/gtk2_ardour/automation_pan_line.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <sigc++/signal.h> diff --git a/gtk2_ardour/automation_time_axis.cc b/gtk2_ardour/automation_time_axis.cc index c3f53d266c..0da3a38fdc 100644 --- a/gtk2_ardour/automation_time_axis.cc +++ b/gtk2_ardour/automation_time_axis.cc @@ -163,6 +163,7 @@ AutomationTimeAxisView::AutomationTimeAxisView (Session& s, boost::shared_ptr<Ro /* make sure labels etc. are correct */ automation_state_changed (); + ColorChanged.connect (mem_fun (*this, &AutomationTimeAxisView::color_handler)); } AutomationTimeAxisView::~AutomationTimeAxisView () @@ -686,7 +687,7 @@ AutomationTimeAxisView::get_selectables (nframes_t start, nframes_t end, double y_position is the "origin" or "top" of the track. */ - double mybot = y_position + height; // XXX need to include Editor::track_spacing; + double mybot = y_position + height; if (y_position >= top && mybot <= bot) { @@ -788,6 +789,42 @@ AutomationTimeAxisView::exited () } void +AutomationTimeAxisView::set_colors () { + + for( list<GhostRegion *>::iterator i=ghosts.begin(); i != ghosts.end(); i++ ) { + (*i)->set_colors(); + } + + for( vector<AutomationLine *>::iterator i=lines.begin(); i != lines.end(); i++ ) { + (*i)->set_colors(); + } + +} + +void +AutomationTimeAxisView::color_handler (ColorID id, uint32_t val) { + + switch (id) { + case cGhostTrackWave: + case cGhostTrackWaveClip: + case cGhostTrackZeroLine: + + case cControlPoint: + case cControlPointFill: + case cControlPointOutline: + case cAutomationLine: + set_colors (); + + break; + + default: + break; + } +} + + + +void AutomationTimeAxisView::set_state (const XMLNode& node) { TimeAxisView::set_state (node); diff --git a/gtk2_ardour/automation_time_axis.h b/gtk2_ardour/automation_time_axis.h index 0eb525f6c1..f7c61942df 100644 --- a/gtk2_ardour/automation_time_axis.h +++ b/gtk2_ardour/automation_time_axis.h @@ -122,6 +122,9 @@ class AutomationTimeAxisView : public TimeAxisView { void entered (); void exited (); + void set_colors (); + void color_handler (ColorID, uint32_t); + static Pango::FontDescription name_font; static bool have_name_font; }; diff --git a/gtk2_ardour/axis_view.cc b/gtk2_ardour/axis_view.cc index e69fdf0540..0c57eebfca 100644 --- a/gtk2_ardour/axis_view.cc +++ b/gtk2_ardour/axis_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> diff --git a/gtk2_ardour/axis_view.h b/gtk2_ardour/axis_view.h index 4ae8f8d46e..51f744c4e5 100644 --- a/gtk2_ardour/axis_view.h +++ b/gtk2_ardour/axis_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_axis_view_h__ diff --git a/gtk2_ardour/canvas-imageframe.h b/gtk2_ardour/canvas-imageframe.h index 6c2e5ab8b6..7c66c5e1db 100644 --- a/gtk2_ardour/canvas-imageframe.h +++ b/gtk2_ardour/canvas-imageframe.h @@ -16,7 +16,15 @@ #include <libgnomecanvas/libgnomecanvas.h> #include <gtk/gtkenums.h> + +#ifdef __cplusplus +extern "C" { +#endif #include <libart_lgpl/art_misc.h> +#ifdef __cplusplus +} +#endif + #include <libart_lgpl/art_pixbuf.h> diff --git a/gtk2_ardour/canvas-simplerect.c b/gtk2_ardour/canvas-simplerect.c index d59096e68b..d50943f0c3 100644 --- a/gtk2_ardour/canvas-simplerect.c +++ b/gtk2_ardour/canvas-simplerect.c @@ -257,19 +257,20 @@ gnome_canvas_simplerect_bounds (GnomeCanvasItem *item, double *x1, double *y1, d } + static void gnome_canvas_simplerect_reset_bounds (GnomeCanvasItem *item) { GnomeCanvasSimpleRect* simplerect; double x1, x2, y1, y2; double old_x1, old_x2, old_y1, old_y2; - double a, b, c, d; - + ArtDRect unionrect, old, new; + old_x1 = item->x1; old_y1 = item->y1; old_x2 = item->x2; old_y2 = item->y2; - + gnome_canvas_simplerect_bounds (item, &x1, &y1, &x2, &y2); gnome_canvas_item_i2w (item, &x1, &y1); gnome_canvas_item_i2w (item, &x2, &y2); @@ -287,24 +288,74 @@ gnome_canvas_simplerect_reset_bounds (GnomeCanvasItem *item) gnome_canvas_w2c (GNOME_CANVAS(item->canvas), x2, y2, &simplerect->bbox_lrx, &simplerect->bbox_lry); /* now queue redraws for changed areas */ - - a = MIN(item->x1, old_x1); - b = MAX(item->x1, old_x1); - a = MIN(a, item->x2); - a = MIN(a, old_x2); - b = MAX(b, item->x2); - b = MAX(b, old_x2); + if (item->x1 == old_x1 && item->x2 == old_x2) { + + /* no change in x-axis position */ - c = MIN(item->y1, old_y1); - d = MAX(item->y1, old_y1); + if (item->y1 == old_y1) { + /* top didn't change, so just draw bottom */ - c = MIN(c,item->y2); - c = MIN(c, old_y2); - d = MAX(d,item->y2); - d = MAX(d, old_y2); + double start_y = MIN (item->y2, old_y2); + double end_y = MAX (item->y2, old_y2); - gnome_canvas_request_redraw (item->canvas, a, c, b + 0.5, d + 0.5); + gnome_canvas_request_redraw (item->canvas, item->x1, start_y - 0.5, item->x2, end_y + 1.5); + return; + + } else if (item->y2 == old_y2) { + + /* bottom didn't change, just draw top */ + + double start_y = MIN (item->y1, old_y1); + double end_y = MAX (item->y1, old_y1); + + gnome_canvas_request_redraw (item->canvas, item->x1, start_y - 0.5, item->x2, end_y + 1.5); + return; + + } + + } else if (item->y1 == old_y1 && item->y2 == old_y2) { + + /* no change in y-axis position */ + + if (item->x1 == old_x1) { + /* start didn't change, so just draw at the end */ + + double start_x = MIN (item->x2, old_x2); + double end_x = MAX (item->x2, old_x2); + + gnome_canvas_request_redraw (item->canvas, start_x - 0.5, item->y1, end_x + 1.5, item->y2); + return; + + } else if (item->x2 == old_x2) { + + /* end didn't change, so just draw at the start */ + + double start_x = MIN (item->x1, old_x1); + double end_x = MAX (item->x1, old_x1); + + gnome_canvas_request_redraw (item->canvas, start_x - 0.5, item->y1, end_x + 1.5, item->y2 + 0.5); + return; + + } + } + + new.x0 = x1; + new.y0 = y1; + new.x1 = x2; + new.y1 = y2; + + old.x0 = old_x1; + old.y0 = old_y1; + old.x1 = old_x2; + old.y1 = old_y2; + + art_drect_union (&unionrect, &old, &new); + gnome_canvas_request_redraw (item->canvas, + unionrect.x0 - 0.5, + unionrect.y0 - 0.5, + unionrect.x1 + 1.5, + unionrect.y1 + 1.5); } /* @@ -509,7 +560,7 @@ gnome_canvas_simplerect_render (GnomeCanvasItem *item, if (parent_class->render) { (*parent_class->render) (item, buf); } - + if (buf->is_bg) { #ifdef HARLEQUIN_DEBUGGING diff --git a/gtk2_ardour/canvas-waveview.c b/gtk2_ardour/canvas-waveview.c index 747761ea9a..b78bf63ea7 100644 --- a/gtk2_ardour/canvas-waveview.c +++ b/gtk2_ardour/canvas-waveview.c @@ -30,6 +30,7 @@ #include "canvas-waveview.h" #include "rgb_macros.h" + extern void c_stacktrace(); enum { @@ -49,6 +50,8 @@ enum { PROP_Y, PROP_HEIGHT, PROP_WAVE_COLOR, + PROP_CLIP_COLOR, + PROP_ZERO_COLOR, PROP_RECTIFIED, PROP_REGION_START, PROP_LOGSCALED, @@ -251,6 +254,20 @@ gnome_canvas_waveview_class_init (GnomeCanvasWaveViewClass *class) g_object_class_install_property (gobject_class, + PROP_CLIP_COLOR, + g_param_spec_uint ("clip_color", NULL, NULL, + 0, G_MAXUINT, 0, + (G_PARAM_READABLE | G_PARAM_WRITABLE))); + + g_object_class_install_property + (gobject_class, + PROP_ZERO_COLOR, + g_param_spec_uint ("zero_color", NULL, NULL, + 0, G_MAXUINT, 0, + (G_PARAM_READABLE | G_PARAM_WRITABLE))); + + g_object_class_install_property + (gobject_class, PROP_RECTIFIED, g_param_spec_boolean ("rectified", NULL, NULL, FALSE, @@ -326,6 +343,8 @@ gnome_canvas_waveview_init (GnomeCanvasWaveView *waveview) waveview->reload_cache_in_render = FALSE; waveview->wave_color = RGBA_TO_UINT(44,35,126,255); + waveview->clip_color = RGBA_TO_UINT(44,0,0,100); + waveview->zero_color = RGBA_TO_UINT(44,0,128,100); } static void @@ -369,7 +388,8 @@ gnome_canvas_waveview_ensure_cache (GnomeCanvasWaveView *waveview, gulong start_ end_sample = end_sample + waveview->region_start; #if DEBUG_CACHE // printf("waveview->region_start == %lu\n",waveview->region_start); - printf ("=> 0x%x cache @ 0x%x range: %lu - %lu request: %lu - %lu (%lu frames)\n", + // c_stacktrace (); + printf ("\n\n=> 0x%x cache @ 0x%x range: %lu - %lu request: %lu - %lu (%lu frames)\n", waveview, cache, cache->start, cache->end, start_sample, end_sample, end_sample - start_sample); @@ -413,7 +433,7 @@ gnome_canvas_waveview_ensure_cache (GnomeCanvasWaveView *waveview, gulong start_ } #if DEBUG_CACHE - fprintf (stderr, "\n\nAVAILABLE FRAMES = %lu of %lu, start = %lu, sstart = %lu, cstart = %lu\n", + fprintf (stderr, "AVAILABLE FRAMES = %lu of %lu, start = %lu, sstart = %lu, cstart = %lu\n", rf3, waveview->sourcefile_length_function (waveview->data_src, waveview->samples_per_unit), waveview->region_start, start_sample, new_cache_start); #endif @@ -796,6 +816,20 @@ gnome_canvas_waveview_set_property (GObject *object, } break; + case PROP_CLIP_COLOR: + if (waveview->clip_color != g_value_get_uint(value)) { + waveview->clip_color = g_value_get_uint(value); + redraw = TRUE; + } + break; + + case PROP_ZERO_COLOR: + if (waveview->zero_color != g_value_get_uint(value)) { + waveview->zero_color = g_value_get_uint(value); + redraw = TRUE; + } + break; + case PROP_RECTIFIED: if (waveview->rectified != g_value_get_boolean(value)) { waveview->rectified = g_value_get_boolean(value); @@ -908,6 +942,14 @@ gnome_canvas_waveview_get_property (GObject *object, g_value_set_uint (value, waveview->wave_color); break; + case PROP_CLIP_COLOR: + g_value_set_uint (value, waveview->clip_color); + break; + + case PROP_ZERO_COLOR: + g_value_set_uint (value, waveview->zero_color); + break; + case PROP_RECTIFIED: g_value_set_boolean (value, waveview->rectified); break; @@ -968,6 +1010,8 @@ gnome_canvas_waveview_update (GnomeCanvasItem *item, double *affine, ArtSVP *cli UINT_TO_RGBA (waveview->wave_color, &waveview->wave_r, &waveview->wave_g, &waveview->wave_b, &waveview->wave_a); + UINT_TO_RGBA (waveview->clip_color, &waveview->clip_r, &waveview->clip_g, &waveview->clip_b, + &waveview->clip_a); // check_cache (waveview, "end of update"); } @@ -983,6 +1027,7 @@ gnome_canvas_waveview_render (GnomeCanvasItem *item, int cache_index; double half_height; int x, end, begin; + int zbegin, zend; waveview = GNOME_CANVAS_WAVEVIEW (item); @@ -997,7 +1042,13 @@ gnome_canvas_waveview_render (GnomeCanvasItem *item, buf->is_bg = FALSE; } - begin = MAX(waveview->bbox_ulx,buf->rect.x0); + begin = MAX(waveview->bbox_ulx, buf->rect.x0); + + if (begin == waveview->bbox_ulx) { + zbegin = begin + 1; + } else { + zbegin = begin; + } if (waveview->bbox_lrx >= 0) { end = MIN(waveview->bbox_lrx,buf->rect.x1); @@ -1005,6 +1056,12 @@ gnome_canvas_waveview_render (GnomeCanvasItem *item, end = buf->rect.x1; } + if (end == waveview->bbox_lrx) { + zend = end - 1; + } else { + zend = end; + } + if (begin == end) { return; } @@ -1065,6 +1122,7 @@ gnome_canvas_waveview_render (GnomeCanvasItem *item, #define origin half_height + for (x = begin; x < end; x++) { double max, min; @@ -1125,11 +1183,11 @@ gnome_canvas_waveview_render (GnomeCanvasItem *item, } if (clip_max) { - PAINT_VERT(buf, 255, 0, 0, x, pymax, pymax+clip_length); + PAINT_VERTA(buf, waveview->clip_r, waveview->clip_g, waveview->clip_b, waveview->clip_a, x, pymax, pymax+clip_length); } if (clip_min) { - PAINT_VERT(buf, 255, 0, 0, x, pymin-clip_length, pymin); + PAINT_VERTA(buf, waveview->clip_r, waveview->clip_g, waveview->clip_b, waveview->clip_a, x, pymin-clip_length, pymin); } /* presto, we're done */ @@ -1137,6 +1195,15 @@ gnome_canvas_waveview_render (GnomeCanvasItem *item, cache_index++; } + if (!waveview->rectified) { + // Paint zeroline. + //PAINT_HORIZA(buf, waveview->zero_r, waveview->zero_g, waveview->zero_b, waveview->zero_a, begin, endi-1, origin ); + + unsigned char zero_r, zero_g, zero_b, zero_a; + UINT_TO_RGBA( waveview->zero_color, &zero_r, &zero_g, &zero_b, &zero_a ); + int zeroline_y = (int) rint ((item->y1 + origin) * item->canvas->pixels_per_unit); + PAINT_HORIZA(buf, zero_r, zero_g, zero_b, zero_a, zbegin, end, zeroline_y); + } #undef origin } diff --git a/gtk2_ardour/canvas-waveview.h b/gtk2_ardour/canvas-waveview.h index 81cf35910e..6a7410546e 100644 --- a/gtk2_ardour/canvas-waveview.h +++ b/gtk2_ardour/canvas-waveview.h @@ -99,6 +99,8 @@ struct _GnomeCanvasWaveView double height; double half_height; uint32_t wave_color; + uint32_t clip_color; + uint32_t zero_color; char rectified; char logscaled; @@ -113,6 +115,7 @@ struct _GnomeCanvasWaveView int32_t bbox_lrx; int32_t bbox_lry; unsigned char wave_r, wave_g, wave_b, wave_a; + unsigned char clip_r, clip_g, clip_b, clip_a; uint32_t samples; uint32_t region_start; int32_t reload_cache_in_render; diff --git a/gtk2_ardour/colors.h b/gtk2_ardour/colors.h index e70c14340e..3fba0e0a4d 100644 --- a/gtk2_ardour/colors.h +++ b/gtk2_ardour/colors.h @@ -1,6 +1,7 @@ /* no guard clauses here */ COLORID(cWaveForm) +COLORID(cWaveFormClip) COLORID(cMutedWaveForm) COLORID(cSelectedFrameBase) COLORID(cFrameBase) @@ -72,6 +73,8 @@ COLORID(cMeasureLineBar) COLORID(cGhostTrackBaseOutline) COLORID(cGhostTrackBaseFill) COLORID(cGhostTrackWave) +COLORID(cGhostTrackWaveClip) +COLORID(cGhostTrackZeroLine) COLORID(cImageTrackBase) COLORID(cImageTrackOutline) COLORID(cMarkerTrackBase) @@ -101,3 +104,6 @@ COLORID(cTrimHandleLockedStart) COLORID(cTrimHandleLockedEnd) COLORID(cTrimHandleStart) COLORID(cTrimHandleEnd) +COLORID(cEditCursor) +COLORID(cPlayHead) + diff --git a/gtk2_ardour/connection_editor.cc b/gtk2_ardour/connection_editor.cc index a7c6e265ed..79d7605497 100644 --- a/gtk2_ardour/connection_editor.cc +++ b/gtk2_ardour/connection_editor.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <map> diff --git a/gtk2_ardour/connection_editor.h b/gtk2_ardour/connection_editor.h index 71d201cd8d..aca85c7a83 100644 --- a/gtk2_ardour/connection_editor.h +++ b/gtk2_ardour/connection_editor.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_connection_editor_h__ diff --git a/gtk2_ardour/crossfade_edit.cc b/gtk2_ardour/crossfade_edit.cc index 94e167282c..a69383c7ee 100644 --- a/gtk2_ardour/crossfade_edit.cc +++ b/gtk2_ardour/crossfade_edit.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> @@ -194,7 +193,7 @@ CrossfadeEditor::CrossfadeEditor (Session& s, boost::shared_ptr<Crossfade> xf, d for (list<Preset*>::iterator i = fade_in_presets->begin(); i != fade_in_presets->end(); ++i) { - pxmap = manage (new Image (get_xpm((*i)->xpm))); + pxmap = manage (new Image (::get_icon ((*i)->image_name))); pbutton = manage (new Button); pbutton->add (*pxmap); pbutton->set_name ("CrossfadeEditButton"); @@ -215,7 +214,7 @@ CrossfadeEditor::CrossfadeEditor (Session& s, boost::shared_ptr<Crossfade> xf, d for (list<Preset*>::iterator i = fade_out_presets->begin(); i != fade_out_presets->end(); ++i) { - pxmap = manage (new Image (get_xpm((*i)->xpm))); + pxmap = manage (new Image (::get_icon ((*i)->image_name))); pbutton = manage (new Button); pbutton->add (*pxmap); pbutton->set_name ("CrossfadeEditButton"); @@ -832,7 +831,8 @@ CrossfadeEditor::build_presets () fade_out_presets = new Presets; /* FADE OUT */ - p = new Preset ("hiin.xpm"); + // p = new Preset ("hiin.xpm"); + p = new Preset ("crossfade_in_fast-cut"); p->push_back (PresetPoint (0, 0)); p->push_back (PresetPoint (0.0207373, 0.197222)); p->push_back (PresetPoint (0.0645161, 0.525)); @@ -843,7 +843,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 1)); fade_in_presets->push_back (p); - p = new Preset ("loin.xpm"); + // p = new Preset ("loin.xpm"); + p = new Preset ("crossfade_in_transition"); p->push_back (PresetPoint (0, 0)); p->push_back (PresetPoint (0.389401, 0.0333333)); p->push_back (PresetPoint (0.629032, 0.0861111)); @@ -853,7 +854,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 1)); fade_in_presets->push_back (p); - p = new Preset ("regin.xpm"); + // p = new Preset ("regin.xpm"); + p = new Preset ("crossfade_in_constant"); p->push_back (PresetPoint (0, 0)); p->push_back (PresetPoint (0.0737327, 0.308333)); p->push_back (PresetPoint (0.246544, 0.658333)); @@ -863,7 +865,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 1)); fade_in_presets->push_back (p); - p = new Preset ("regin2.xpm"); + // p = new Preset ("regin2.xpm"); + p = new Preset ("crossfade_in_slow-cut"); p->push_back (PresetPoint (0, 0)); p->push_back (PresetPoint (0.304147, 0.0694444)); p->push_back (PresetPoint (0.529954, 0.152778)); @@ -873,14 +876,16 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 1)); fade_in_presets->push_back (p); - p = new Preset ("linin.xpm"); + // p = new Preset ("linin.xpm"); + p = new Preset ("crossfade_in_dipped"); p->push_back (PresetPoint (0, 0)); p->push_back (PresetPoint (1, 1)); fade_in_presets->push_back (p); /* FADE OUT */ - p = new Preset ("hiout.xpm"); + // p = new Preset ("hiout.xpm"); + p = new Preset ("crossfade_out_fast-cut"); p->push_back (PresetPoint (0, 1)); p->push_back (PresetPoint (0.305556, 1)); p->push_back (PresetPoint (0.548611, 0.991736)); @@ -890,7 +895,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 0)); fade_out_presets->push_back (p); - p = new Preset ("regout.xpm"); + // p = new Preset ("regout.xpm"); + p = new Preset ("crossfade_out_constant"); p->push_back (PresetPoint (0, 1)); p->push_back (PresetPoint (0.228111, 0.988889)); p->push_back (PresetPoint (0.347926, 0.972222)); @@ -900,7 +906,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 0)); fade_out_presets->push_back (p); - p = new Preset ("loout.xpm"); + // p = new Preset ("loout.xpm"); + p = new Preset ("crossfade_out_transition"); p->push_back (PresetPoint (0, 1)); p->push_back (PresetPoint (0.023041, 0.697222)); p->push_back (PresetPoint (0.0553, 0.483333)); @@ -910,7 +917,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 0)); fade_out_presets->push_back (p); - p = new Preset ("regout2.xpm"); + // p = new Preset ("regout2.xpm"); + p = new Preset ("crossfade_out_slow-fade"); p->push_back (PresetPoint (0, 1)); p->push_back (PresetPoint (0.080645, 0.730556)); p->push_back (PresetPoint (0.277778, 0.289256)); @@ -919,7 +927,8 @@ CrossfadeEditor::build_presets () p->push_back (PresetPoint (1, 0)); fade_out_presets->push_back (p); - p = new Preset ("linout.xpm"); + // p = new Preset ("linout.xpm"); + p = new Preset ("crossfade_out_dipped"); p->push_back (PresetPoint (0, 1)); p->push_back (PresetPoint (1, 0)); fade_out_presets->push_back (p); diff --git a/gtk2_ardour/crossfade_edit.h b/gtk2_ardour/crossfade_edit.h index 3c9a6a13c1..4f2a617d92 100644 --- a/gtk2_ardour/crossfade_edit.h +++ b/gtk2_ardour/crossfade_edit.h @@ -43,10 +43,9 @@ class CrossfadeEditor : public ArdourDialog }; struct Preset : public list<PresetPoint> { - string xpm; + const char* image_name; - Preset (string x) - : xpm (x) {} + Preset (const char* x) : image_name (x) {} }; typedef list<Preset*> Presets; diff --git a/gtk2_ardour/crossfade_view.cc b/gtk2_ardour/crossfade_view.cc index b56cedd08a..c320d07638 100644 --- a/gtk2_ardour/crossfade_view.cc +++ b/gtk2_ardour/crossfade_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/crossfade_view.h b/gtk2_ardour/crossfade_view.h index 730813f78c..556d8c80c5 100644 --- a/gtk2_ardour/crossfade_view.h +++ b/gtk2_ardour/crossfade_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_crossfade_view_h__ diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index cf0a5baabf..0f3060e299 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <unistd.h> @@ -31,6 +30,7 @@ #include <pbd/stacktrace.h> #include <pbd/memento_command.h> +#include <glibmm/miscutils.h> #include <gtkmm/image.h> #include <gdkmm/color.h> #include <gdkmm/bitmap.h> @@ -39,6 +39,8 @@ #include <gtkmm2ext/gtk_ui.h> #include <gtkmm2ext/tearoff.h> #include <gtkmm2ext/utils.h> +#include <gtkmm2ext/window_title.h> +#include <gtkmm2ext/choice.h> #include <ardour/audio_track.h> #include <ardour/audio_diskstream.h> @@ -170,9 +172,8 @@ check_adjustment (Gtk::Adjustment* adj) } -Editor::Editor (AudioEngine& eng) - : engine (eng), - +Editor::Editor () + : /* time display buttons */ minsec_label (_("Mins:Secs")), @@ -271,7 +272,6 @@ Editor::Editor (AudioEngine& eng) no_route_list_redisplay = false; verbose_cursor_on = true; route_removal = false; - track_spacing = 0; show_automatic_regions_in_region_list = true; region_list_sort_type = (Editing::RegionListSortType) 0; have_pending_keyboard_selection = false; @@ -366,12 +366,13 @@ Editor::Editor (AudioEngine& eng) edit_cursor_clock.ValueChanged.connect (mem_fun(*this, &Editor::edit_cursor_clock_changed)); + time_canvas_vbox.pack_start (*_ruler_separator, false, false); time_canvas_vbox.pack_start (*minsec_ruler, false, false); time_canvas_vbox.pack_start (*smpte_ruler, false, false); time_canvas_vbox.pack_start (*frames_ruler, false, false); time_canvas_vbox.pack_start (*bbt_ruler, false, false); time_canvas_vbox.pack_start (time_canvas, true, true); - time_canvas_vbox.set_size_request (-1, (int)(timebar_height * visible_timebars)); + time_canvas_vbox.set_size_request (-1, (int)(timebar_height * visible_timebars) + 2); bbt_label.set_name ("EditorTimeButton"); bbt_label.set_size_request (-1, (int)timebar_height); @@ -424,6 +425,9 @@ Editor::Editor (AudioEngine& eng) time_button_event_box.set_name ("TimebarLabelBase"); time_button_event_box.signal_button_release_event().connect (mem_fun(*this, &Editor::ruler_label_button_release)); + time_button_frame.add(time_button_event_box); + time_button_frame.property_shadow_type() = Gtk::SHADOW_OUT; + /* these enable us to have a dedicated window (for cursor setting, etc.) for the canvas areas. */ @@ -441,7 +445,7 @@ Editor::Editor (AudioEngine& eng) edit_packer.attach (edit_vscrollbar, 0, 1, 1, 3, FILL, FILL|EXPAND, 0, 0); - edit_packer.attach (time_button_event_box, 1, 2, 0, 1, FILL, FILL, 0, 0); + edit_packer.attach (time_button_frame, 0, 2, 0, 1, FILL, FILL, 0, 0); edit_packer.attach (time_canvas_event_box, 2, 3, 0, 1, FILL|EXPAND, FILL, 0, 0); edit_packer.attach (controls_layout, 1, 2, 1, 2, FILL, FILL|EXPAND, 0, 0); @@ -510,7 +514,7 @@ Editor::Editor (AudioEngine& eng) edit_group_display.set_name ("EditGroupList"); edit_group_display.get_selection()->set_mode (SELECTION_SINGLE); - edit_group_display.set_headers_visible (false); + edit_group_display.set_headers_visible (true); edit_group_display.set_reorderable (false); edit_group_display.set_rules_hint (true); edit_group_display.set_size_request (75, -1); @@ -710,7 +714,10 @@ Editor::Editor (AudioEngine& eng) set_icon_list (window_icons); set_default_icon_list (window_icons); } - set_title (_("ardour: editor")); + + WindowTitle title(Glib::get_application_name()); + title += _("Editor"); + set_title (title.get_string()); set_wmclass (X_("ardour_editor"), "Ardour"); add (vpacker); @@ -1008,24 +1015,21 @@ Editor::update_title () if (session) { bool dirty = session->dirty(); - string wintitle = _("ardour: editor: "); - - if (dirty) { - wintitle += '['; - } - - wintitle += session->name(); + string session_name; if (session->snap_name() != session->name()) { - wintitle += ':'; - wintitle += session->snap_name(); + session_name = session->snap_name(); + } else { + session_name = session->name(); } if (dirty) { - wintitle += ']'; + session_name = "*" + session_name; } - set_title (wintitle); + WindowTitle title(session_name); + title += Glib::get_application_name(); + set_title (title.get_string()); } } @@ -1072,7 +1076,7 @@ Editor::connect_to_session (Session *t) session_connections.push_back (session->SMPTEOffsetChanged.connect (mem_fun(*this, &Editor::update_just_smpte))); - session_connections.push_back (session->tempo_map().StateChanged.connect (bind (mem_fun(*this, &Editor::tempo_map_changed), false))); + session_connections.push_back (session->tempo_map().StateChanged.connect (mem_fun(*this, &Editor::tempo_map_changed))); edit_groups_changed (); @@ -1094,8 +1098,7 @@ Editor::connect_to_session (Session *t) } session->locations()->add (loc, false); session->set_auto_loop_location (loc); - } - else { + } else { // force name loc->set_name (_("Loop")); } @@ -1108,8 +1111,7 @@ Editor::connect_to_session (Session *t) } session->locations()->add (loc, false); session->set_auto_punch_location (loc); - } - else { + } else { // force name loc->set_name (_("Punch")); } @@ -1241,8 +1243,8 @@ Editor::popup_fade_context_menu (int button, int32_t time, ArdourCanvas::Item* i items.push_back (SeparatorElem()); items.push_back (MenuElem (_("Linear"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::Linear))); - items.push_back (MenuElem (_("Slowest"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::LogB))); - items.push_back (MenuElem (_("Slow"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::Fast))); + items.push_back (MenuElem (_("Slowest"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::Fast))); + items.push_back (MenuElem (_("Slow"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::LogB))); items.push_back (MenuElem (_("Fast"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::LogA))); items.push_back (MenuElem (_("Fastest"), bind (mem_fun (*this, &Editor::set_fade_in_shape), AudioRegion::Slow))); break; @@ -1258,10 +1260,10 @@ Editor::popup_fade_context_menu (int button, int32_t time, ArdourCanvas::Item* i items.push_back (SeparatorElem()); items.push_back (MenuElem (_("Linear"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::Linear))); - items.push_back (MenuElem (_("Slowest"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::Fast))); - items.push_back (MenuElem (_("Slow"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::LogB))); - items.push_back (MenuElem (_("Fast"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::LogA))); - items.push_back (MenuElem (_("Fastest"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::Slow))); + items.push_back (MenuElem (_("Slowest"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::Slow))); + items.push_back (MenuElem (_("Slow"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::LogA))); + items.push_back (MenuElem (_("Fast"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::LogB))); + items.push_back (MenuElem (_("Fastest"), bind (mem_fun (*this, &Editor::set_fade_out_shape), AudioRegion::Fast))); break; @@ -1629,48 +1631,65 @@ Editor::add_region_context_items (AudioStreamView* sv, boost::shared_ptr<Region> items.push_back (SeparatorElem()); - items.push_back (CheckMenuElem (_("Lock"), mem_fun(*this, &Editor::toggle_region_lock))); + sigc::connection fooc; + + items.push_back (CheckMenuElem (_("Lock"))); region_lock_item = static_cast<CheckMenuItem*>(&items.back()); + fooc = region_lock_item->signal_activate().connect (mem_fun(*this, &Editor::toggle_region_lock)); if (region->locked()) { + fooc.block (true); region_lock_item->set_active(); + fooc.block (false); } - items.push_back (CheckMenuElem (_("Mute"), mem_fun(*this, &Editor::toggle_region_mute))); + items.push_back (CheckMenuElem (_("Mute"))); region_mute_item = static_cast<CheckMenuItem*>(&items.back()); + fooc = region_mute_item->signal_activate().connect (mem_fun(*this, &Editor::toggle_region_mute)); if (region->muted()) { + fooc.block (true); region_mute_item->set_active(); + fooc.block (false); } - items.push_back (CheckMenuElem (_("Opaque"), mem_fun(*this, &Editor::toggle_region_opaque))); + + items.push_back (CheckMenuElem (_("Opaque"))); region_opaque_item = static_cast<CheckMenuItem*>(&items.back()); + fooc = region_opaque_item->signal_activate().connect (mem_fun(*this, &Editor::toggle_region_opaque)); if (region->opaque()) { + fooc.block (true); region_opaque_item->set_active(); + fooc.block (false); } - + items.push_back (CheckMenuElem (_("Original position"), mem_fun(*this, &Editor::naturalize))); if (region->at_natural_position()) { items.back().set_sensitive (false); } - + items.push_back (SeparatorElem()); - + if (ar) { RegionView* rv = sv->find_view (ar); AudioRegionView* arv = dynamic_cast<AudioRegionView*>(rv); - + items.push_back (MenuElem (_("Reset Envelope"), mem_fun(*this, &Editor::reset_region_gain_envelopes))); - items.push_back (CheckMenuElem (_("Envelope Visible"), mem_fun(*this, &Editor::toggle_gain_envelope_visibility))); + items.push_back (CheckMenuElem (_("Envelope Visible"))); region_envelope_visible_item = static_cast<CheckMenuItem*> (&items.back()); - + fooc = region_envelope_visible_item->signal_activate().connect (mem_fun(*this, &Editor::toggle_gain_envelope_visibility)); if (arv->envelope_visible()) { + fooc.block (true); region_envelope_visible_item->set_active (true); + fooc.block (false); } - - items.push_back (CheckMenuElem (_("Envelope Active"), mem_fun(*this, &Editor::toggle_gain_envelope_active))); + + items.push_back (CheckMenuElem (_("Envelope Active"))); region_envelope_active_item = static_cast<CheckMenuItem*> (&items.back()); - + fooc = region_envelope_active_item->signal_activate().connect (mem_fun(*this, &Editor::toggle_gain_envelope_active)); + if (ar->envelope_active()) { + fooc.block (true); region_envelope_active_item->set_active (true); + fooc.block (false); } items.push_back (SeparatorElem()); @@ -2720,6 +2739,8 @@ Editor::map_transport_state () if (session->transport_stopped()) { have_pending_keyboard_selection = false; } + + update_loop_range_view (true); } /* UNDO/REDO */ @@ -2831,32 +2852,34 @@ Editor::history_changed () void Editor::duplicate_dialog (bool dup_region) { - if (dup_region) { - if (clicked_regionview == 0) { - return; - } - } else { - if (selection->time.length() == 0) { - return; - } + if (selection->regions.empty() && (selection->time.length() == 0)) { + return; } ArdourDialog win ("duplicate dialog"); - Entry entry; Label label (_("Duplicate how many times?")); + Adjustment adjustment (1.0, 1.0, 1000000.0, 1.0, 5.0); + SpinButton spinner (adjustment); + win.get_vbox()->set_spacing (12); win.get_vbox()->pack_start (label); - win.add_action_widget (entry, RESPONSE_ACCEPT); + + /* dialogs have ::add_action_widget() but that puts the spinner in the wrong + place, visually. so do this by hand. + */ + + win.get_vbox()->pack_start (spinner); + spinner.signal_activate().connect (sigc::bind (mem_fun (win, &ArdourDialog::response), RESPONSE_ACCEPT)); + + label.show (); + spinner.show (); + win.add_button (Stock::OK, RESPONSE_ACCEPT); win.add_button (Stock::CANCEL, RESPONSE_CANCEL); win.set_position (WIN_POS_MOUSE); - entry.set_text ("1"); - set_size_request_to_display_given_text (entry, X_("12345678"), 20, 15); - entry.select_region (0, -1); - entry.grab_focus (); - + spinner.grab_focus (); switch (win.run ()) { case RESPONSE_ACCEPT: @@ -2865,17 +2888,12 @@ Editor::duplicate_dialog (bool dup_region) return; } - string text = entry.get_text(); - float times; + float times = adjustment.get_value(); - if (sscanf (text.c_str(), "%f", ×) == 1) { - if (dup_region) { - RegionSelection regions; - regions.add (clicked_regionview); - duplicate_some_regions (regions, times); - } else { - duplicate_selection (times); - } + if (!selection->regions.empty()) { + duplicate_some_regions (selection->regions, times); + } else { + duplicate_selection (times); } } @@ -3032,7 +3050,7 @@ gint Editor::edit_controls_button_release (GdkEventButton* ev) { if (Keyboard::is_context_menu_event (ev)) { - ARDOUR_UI::instance()->add_route (); + ARDOUR_UI::instance()->add_route (this); } return TRUE; } @@ -3181,7 +3199,6 @@ Editor::set_show_measures (bool yn) if ((_show_measures = yn) == true) { draw_measures (); } - DisplayControlChanged (ShowMeasures); instant_save (); } } @@ -3204,7 +3221,6 @@ Editor::set_follow_playhead (bool yn) /* catch up */ update_current_screen (); } - DisplayControlChanged (FollowPlayhead); instant_save (); } } @@ -3290,7 +3306,7 @@ Editor::playlist_deletion_dialog (boost::shared_ptr<Playlist> pl) label.show (); dialog.add_button (_("Delete playlist"), RESPONSE_ACCEPT); - dialog.add_button (_("Keep playlist"), RESPONSE_CANCEL); + dialog.add_button (_("Keep playlist"), RESPONSE_REJECT); dialog.add_button (_("Cancel"), RESPONSE_CANCEL); switch (dialog.run ()) { @@ -3374,6 +3390,9 @@ Editor::control_layout_scroll (GdkEventScroll* ev) return false; } + +/** A new snapshot has been selected. + */ void Editor::snapshot_display_selection_changed () { @@ -3398,7 +3417,93 @@ Editor::snapshot_display_selection_changed () bool Editor::snapshot_display_button_press (GdkEventButton* ev) { - return false; + if (ev->button == 3) { + /* Right-click on the snapshot list. Work out which snapshot it + was over. */ + Gtk::TreeModel::Path path; + Gtk::TreeViewColumn* col; + int cx; + int cy; + snapshot_display.get_path_at_pos ((int) ev->x, (int) ev->y, path, col, cx, cy); + Gtk::TreeModel::iterator iter = snapshot_display_model->get_iter (path); + if (iter) { + Gtk::TreeModel::Row row = *iter; + popup_snapshot_context_menu (ev->button, ev->time, row[snapshot_display_columns.real_name]); + } + return true; + } + + return false; +} + + +/** Pop up the snapshot display context menu. + * @param button Button used to open the menu. + * @param time Menu open time. + * @snapshot_name Name of the snapshot that the menu click was over. + */ + +void +Editor::popup_snapshot_context_menu (int button, int32_t time, Glib::ustring snapshot_name) +{ + using namespace Menu_Helpers; + + MenuList& items (snapshot_context_menu.items()); + items.clear (); + + const bool modification_allowed = (session->snap_name() != snapshot_name && session->name() != snapshot_name); + + items.push_back (MenuElem (_("Remove"), bind (mem_fun (*this, &Editor::remove_snapshot), snapshot_name))); + if (!modification_allowed) { + items.back().set_sensitive (false); + } + + items.push_back (MenuElem (_("Rename"), bind (mem_fun (*this, &Editor::rename_snapshot), snapshot_name))); + if (!modification_allowed) { + items.back().set_sensitive (false); + } + + snapshot_context_menu.popup (button, time); +} + +void +Editor::rename_snapshot (Glib::ustring old_name) +{ + ArdourPrompter prompter(true); + + string new_name; + + prompter.set_name ("Prompter"); + prompter.add_button (Gtk::Stock::SAVE, Gtk::RESPONSE_ACCEPT); + prompter.set_prompt (_("New name of snapshot")); + prompter.set_initial_text (old_name); + + if (prompter.run() == RESPONSE_ACCEPT) { + prompter.get_result (new_name); + if (new_name.length()) { + session->rename_state (old_name, new_name); + redisplay_snapshots (); + } + } +} + + +void +Editor::remove_snapshot (Glib::ustring name) +{ + vector<string> choices; + + std::string prompt = string_compose (_("Do you really want to remove snapshot \"%1\" ?\n(cannot be undone)"), name); + + choices.push_back (_("No, do nothing.")); + choices.push_back (_("Yes, remove it.")); + + Gtkmm2ext::Choice prompter (prompt, choices); + + if (prompter.run () == 1) { + session->remove_state (name); + redisplay_snapshots (); + } } void @@ -3667,7 +3772,7 @@ Editor::idle_visual_changer () /* the signal handler will do the rest */ } else { update_fixed_rulers(); - tempo_map_changed (Change (0), true); + redisplay_tempo (true); } } @@ -3687,3 +3792,12 @@ Editor::sort_track_selection () selection->tracks.sort (cmp); } +nframes_t +Editor::edit_cursor_position(bool sync) +{ + if (sync && edit_cursor->current_frame != edit_cursor_clock.current_time()) { + edit_cursor_clock.set(edit_cursor->current_frame, true); + } + + return edit_cursor->current_frame; +} diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index a64738b432..38b5b279ef 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_editor_h__ @@ -61,10 +60,6 @@ namespace Gtkmm2ext { class TearOff; } -namespace LinuxAudioSystems { - class AudioEngine; -} - namespace ARDOUR { class AudioDiskstream; class RouteGroup; @@ -122,7 +117,7 @@ class TimeAxisViewItem ; class Editor : public PublicEditor { public: - Editor (ARDOUR::AudioEngine&); + Editor (); ~Editor (); void connect_to_session (ARDOUR::Session *); @@ -147,11 +142,11 @@ class Editor : public PublicEditor void step_mouse_mode (bool next); Editing::MouseMode current_mouse_mode () { return mouse_mode; } - void add_imageframe_time_axis(const string & track_name, void*) ; - void add_imageframe_marker_time_axis(const string & track_name, TimeAxisView* marked_track, void*) ; + void add_imageframe_time_axis(const std::string & track_name, void*) ; + void add_imageframe_marker_time_axis(const std::string & track_name, TimeAxisView* marked_track, void*) ; void connect_to_image_compositor() ; void scroll_timeaxis_to_imageframe_item(const TimeAxisViewItem* item) ; - TimeAxisView* get_named_time_axis(const string & name) ; + TimeAxisView* get_named_time_axis(const std::string & name) ; void consider_auditioning (boost::shared_ptr<ARDOUR::Region>); void hide_a_region (boost::shared_ptr<ARDOUR::Region>); @@ -340,6 +335,8 @@ class Editor : public PublicEditor void reset_zoom (double); void reposition_and_zoom (nframes_t, double); + nframes_t edit_cursor_position(bool); + protected: void map_transport_state (); void map_position_change (nframes_t); @@ -349,7 +346,6 @@ class Editor : public PublicEditor private: ARDOUR::Session *session; - ARDOUR::AudioEngine& engine; bool constructed; PlaylistSelector* _playlist_selector; @@ -441,6 +437,7 @@ class Editor : public PublicEditor void catch_vanishing_regionview (RegionView *); bool set_selected_track (TimeAxisView&, Selection::Operation op = Selection::Set, bool no_remove=false); + void select_all_tracks (); bool set_selected_control_point_from_click (Selection::Operation op = Selection::Set, bool no_remove=false); bool set_selected_track_from_click (bool press, Selection::Operation op = Selection::Set, bool no_remove=false); @@ -504,6 +501,7 @@ class Editor : public PublicEditor Gtk::EventBox time_canvas_event_box; Gtk::EventBox track_canvas_event_box; Gtk::EventBox time_button_event_box; + Gtk::Frame time_button_frame; ArdourCanvas::Group *minsec_group; ArdourCanvas::Group *bbt_group; @@ -560,6 +558,7 @@ class Editor : public PublicEditor gint metric_get_frames (GtkCustomRulerMark **, gdouble, gdouble, gint); gint metric_get_minsec (GtkCustomRulerMark **, gdouble, gdouble, gint); + Gtk::Widget *_ruler_separator; GtkWidget *_smpte_ruler; GtkWidget *_bbt_ruler; GtkWidget *_frames_ruler; @@ -608,7 +607,7 @@ class Editor : public PublicEditor nframes_t current_frame; double length; - Cursor (Editor&, const string& color, bool (Editor::*)(GdkEvent*,ArdourCanvas::Item*)); + Cursor (Editor&, bool (Editor::*)(GdkEvent*,ArdourCanvas::Item*)); ~Cursor (); void set_position (nframes_t); @@ -771,10 +770,12 @@ class Editor : public PublicEditor SnapshotDisplayModelColumns snapshot_display_columns; Glib::RefPtr<Gtk::ListStore> snapshot_display_model; Gtk::TreeView snapshot_display; + Gtk::Menu snapshot_context_menu; bool snapshot_display_button_press (GdkEventButton*); void snapshot_display_selection_changed (); void redisplay_snapshots(); + void popup_snapshot_context_menu (int, int32_t, Glib::ustring); /* named selections */ @@ -796,6 +797,8 @@ class Editor : public PublicEditor void create_named_selection (); void paste_named_selection (float times); void remove_selected_named_selections (); + void remove_snapshot (Glib::ustring); + void rename_snapshot (Glib::ustring); void handle_new_named_selection (); void add_named_selection_to_named_selection_display (ARDOUR::NamedSelection&); @@ -806,7 +809,6 @@ class Editor : public PublicEditor void named_selection_display_selection_changed (); /* track views */ - int track_spacing; TrackViewList track_views; TimeAxisView *trackview_by_y_position (double ypos); @@ -1169,9 +1171,13 @@ class Editor : public PublicEditor bool canvas_playhead_cursor_event (GdkEvent* event, ArdourCanvas::Item*); bool canvas_edit_cursor_event (GdkEvent* event, ArdourCanvas::Item*); - bool track_canvas_event (GdkEvent* event, ArdourCanvas::Item*); bool track_canvas_scroll (GdkEventScroll* event); + bool track_canvas_scroll_event (GdkEventScroll* event); + bool track_canvas_button_press_event (GdkEventButton* event); + bool track_canvas_button_release_event (GdkEventButton* event); + bool track_canvas_motion_notify_event (GdkEventMotion* event); + Gtk::Allocation canvas_allocation; bool canvas_idle_queued; void track_canvas_allocate (Gtk::Allocation alloc); @@ -1242,6 +1248,7 @@ class Editor : public PublicEditor void marker_menu_hide (); void marker_menu_loop_range (); void marker_menu_select_all_selectables_using_range (); + void marker_menu_select_using_range (); void marker_menu_separate_regions_using_location (); void marker_menu_play_from (); void marker_menu_play_range (); @@ -1276,8 +1283,8 @@ class Editor : public PublicEditor void remove_metric_marks (); void draw_metric_marks (const ARDOUR::Metrics& metrics); - void tempo_map_changed (ARDOUR::Change, bool immediate_redraw); - void redisplay_tempo (); + void tempo_map_changed (ARDOUR::Change); + void redisplay_tempo (bool immediate_redraw); void snap_to (nframes_t& first, int32_t direction = 0, bool for_mark = false); uint32_t bbt_beat_subdivision; diff --git a/gtk2_ardour/editor_actions.cc b/gtk2_ardour/editor_actions.cc index 8510b05fbd..e04941b32b 100644 --- a/gtk2_ardour/editor_actions.cc +++ b/gtk2_ardour/editor_actions.cc @@ -430,7 +430,7 @@ Editor::toggle_waveform_visibility () void Editor::toggle_waveforms_while_recording () { - Glib::RefPtr<Action> act = ActionManager::get_action (X_("Editor"), X_("ToggleWaveformVisibility")); + Glib::RefPtr<Action> act = ActionManager::get_action (X_("Editor"), X_("ToggleWaveformsWhileRecording")); if (act) { Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); set_show_waveforms_recording (tact->get_active()); diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc index 28911b8ea6..2f63de340e 100644 --- a/gtk2_ardour/editor_audio_import.cc +++ b/gtk2_ardour/editor_audio_import.cc @@ -15,13 +15,19 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ +#include <sys/types.h> +#include <sys/stat.h> +#include <errno.h> +#include <unistd.h> + #include <pbd/pthread_utils.h> #include <pbd/basename.h> +#include <pbd/shortpath.h> #include <gtkmm2ext/choice.h> +#include <gtkmm2ext/window_title.h> #include <ardour/session.h> #include <ardour/audioplaylist.h> @@ -49,6 +55,7 @@ using namespace ARDOUR; using namespace PBD; using namespace sigc; using namespace Gtk; +using namespace Gtkmm2ext; using namespace Editing; using Glib::ustring; @@ -170,7 +177,7 @@ Editor::do_embed (vector<ustring> paths, bool split, ImportMode mode, AudioTrack to_embed.size() > 2 ? _("multichannel") : _("stereo"))); choices.push_back (_("Import as multiple regions")); - Gtkmm2ext::Choice chooser (string_compose (_("Paired files detected (%1, %2 ...).\nDo you want to:"), + Choice chooser (string_compose (_("Paired files detected (%1, %2 ...).\nDo you want to:"), to_embed[0], to_embed[1]), choices); @@ -216,7 +223,9 @@ Editor::do_embed (vector<ustring> paths, bool split, ImportMode mode, AudioTrack int Editor::import_sndfile (vector<ustring> paths, ImportMode mode, AudioTrack* track, nframes_t& pos) { - interthread_progress_window->set_title (string_compose (_("ardour: importing %1"), paths.front())); + WindowTitle title = string_compose (_("importing %1"), paths.front()); + + interthread_progress_window->set_title (title.get_string()); interthread_progress_window->set_position (Gtk::WIN_POS_MOUSE); interthread_progress_window->show_all (); interthread_progress_bar.set_fraction (0.0f); @@ -245,6 +254,8 @@ Editor::import_sndfile (vector<ustring> paths, ImportMode mode, AudioTrack* trac while (!(import_status.done || import_status.cancel)) { gtk_main_iteration (); } + + interthread_progress_window->hide (); import_status.done = true; interthread_progress_connection.disconnect (); @@ -288,7 +299,7 @@ Editor::embed_sndfile (vector<Glib::ustring> paths, bool split, bool multiple_fi linked_path += Glib::path_get_basename (path); if (link (path.c_str(), linked_path.c_str()) == 0) { - + /* there are many reasons why link(2) might have failed. but if it succeeds, we now have a link in the session sound dir that will protect against @@ -296,6 +307,21 @@ Editor::embed_sndfile (vector<Glib::ustring> paths, bool split, bool multiple_fi */ path = linked_path; + + } else { + + /* one possible reason is that its already linked */ + + if (errno == EEXIST) { + struct stat sb; + + if (stat (linked_path.c_str(), &sb) == 0) { + if (sb.st_nlink > 1) { // its a hard link, assume its the one we want + path = linked_path; + } + } + } + } /* note that we temporarily truncated _id at the colon */ @@ -369,11 +395,20 @@ Editor::embed_sndfile (vector<Glib::ustring> paths, bool split, bool multiple_fi for (int n = 0; n < finfo.channels; ++n) { try { - source = boost::dynamic_pointer_cast<AudioFileSource> (SourceFactory::createReadable - (*session, path, n, - (mode == ImportAsTapeTrack ? - AudioFileSource::Destructive : - AudioFileSource::Flag (0)))); + + /* check if we have this thing embedded already */ + + boost::shared_ptr<Source> s; + + if ((s = session->source_by_path_and_channel (path, n)) == 0) { + source = boost::dynamic_pointer_cast<AudioFileSource> (SourceFactory::createReadable + (*session, path, n, + (mode == ImportAsTapeTrack ? + AudioFileSource::Destructive : + AudioFileSource::Flag (0)))); + } else { + source = boost::dynamic_pointer_cast<AudioFileSource> (s); + } sources.push_back(source); } diff --git a/gtk2_ardour/editor_audiotrack.cc b/gtk2_ardour/editor_audiotrack.cc index af442dc435..eebf1c61bc 100644 --- a/gtk2_ardour/editor_audiotrack.cc +++ b/gtk2_ardour/editor_audiotrack.cc @@ -45,7 +45,6 @@ Editor::set_show_waveforms (bool yn) atv->set_show_waveforms (yn); } } - DisplayControlChanged (Editing::ShowWaveforms); } } @@ -61,6 +60,5 @@ Editor::set_show_waveforms_recording (bool yn) atv->set_show_waveforms_recording (yn); } } - DisplayControlChanged (Editing::ShowWaveformsRecording); } } diff --git a/gtk2_ardour/editor_canvas.cc b/gtk2_ardour/editor_canvas.cc index 6c3ab9e217..ac14d72a55 100644 --- a/gtk2_ardour/editor_canvas.cc +++ b/gtk2_ardour/editor_canvas.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <libgnomecanvasmm/init.h> @@ -94,7 +93,13 @@ Editor::initialize_canvas () track_canvas.set_center_scroll_region (false); track_canvas.set_dither (Gdk::RGB_DITHER_NONE); - track_canvas.signal_event().connect (bind (mem_fun (*this, &Editor::track_canvas_event), (ArdourCanvas::Item*) 0)); + /* need to handle 4 specific types of events as catch-alls */ + + track_canvas.signal_scroll_event().connect (mem_fun (*this, &Editor::track_canvas_scroll_event)); + track_canvas.signal_motion_notify_event().connect (mem_fun (*this, &Editor::track_canvas_motion_notify_event)); + track_canvas.signal_button_press_event().connect (mem_fun (*this, &Editor::track_canvas_button_press_event)); + track_canvas.signal_button_release_event().connect (mem_fun (*this, &Editor::track_canvas_button_release_event)); + track_canvas.set_name ("EditorMainCanvas"); track_canvas.add_events (Gdk::POINTER_MOTION_HINT_MASK|Gdk::SCROLL_MASK); track_canvas.signal_leave_notify_event().connect (mem_fun(*this, &Editor::left_track_canvas)); @@ -142,33 +147,33 @@ Editor::initialize_canvas () range_marker_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, timebar_height * 3.0); transport_marker_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, timebar_height * 4.0); - tempo_bar = new ArdourCanvas::SimpleRect (*tempo_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + tempo_bar = new ArdourCanvas::SimpleRect (*tempo_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); tempo_bar->property_fill_color_rgba() = color_map[cTempoBar]; tempo_bar->property_outline_pixels() = 0; - meter_bar = new ArdourCanvas::SimpleRect (*meter_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + meter_bar = new ArdourCanvas::SimpleRect (*meter_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); meter_bar->property_fill_color_rgba() = color_map[cMeterBar]; meter_bar->property_outline_pixels() = 0; - marker_bar = new ArdourCanvas::SimpleRect (*marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + marker_bar = new ArdourCanvas::SimpleRect (*marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); marker_bar->property_fill_color_rgba() = color_map[cMarkerBar]; marker_bar->property_outline_pixels() = 0; - range_marker_bar = new ArdourCanvas::SimpleRect (*range_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + range_marker_bar = new ArdourCanvas::SimpleRect (*range_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); range_marker_bar->property_fill_color_rgba() = color_map[cRangeMarkerBar]; range_marker_bar->property_outline_pixels() = 0; - transport_marker_bar = new ArdourCanvas::SimpleRect (*transport_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + transport_marker_bar = new ArdourCanvas::SimpleRect (*transport_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); transport_marker_bar->property_fill_color_rgba() = color_map[cTransportMarkerBar]; transport_marker_bar->property_outline_pixels() = 0; - range_bar_drag_rect = new ArdourCanvas::SimpleRect (*range_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + range_bar_drag_rect = new ArdourCanvas::SimpleRect (*range_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); range_bar_drag_rect->property_fill_color_rgba() = color_map[cRangeDragBarRectFill]; range_bar_drag_rect->property_outline_color_rgba() = color_map[cRangeDragBarRect]; range_bar_drag_rect->property_outline_pixels() = 0; range_bar_drag_rect->hide (); - transport_bar_drag_rect = new ArdourCanvas::SimpleRect (*transport_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height); + transport_bar_drag_rect = new ArdourCanvas::SimpleRect (*transport_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0); transport_bar_drag_rect ->property_fill_color_rgba() = color_map[cTransportDragRectFill]; transport_bar_drag_rect->property_outline_color_rgba() = color_map[cTransportDragRect]; transport_bar_drag_rect->property_outline_pixels() = 0; @@ -264,8 +269,20 @@ Editor::initialize_canvas () double time_width = FLT_MAX/frames_per_unit; time_canvas.set_scroll_region(0.0, 0.0, time_width, time_height); - edit_cursor = new Cursor (*this, "blue", &Editor::canvas_edit_cursor_event); - playhead_cursor = new Cursor (*this, "red", &Editor::canvas_playhead_cursor_event); + if (!color_map[cEditCursor]) { + warning << _("edit cursor color not defined, check your ardour.colors file!") << endmsg; + color_map[cEditCursor] = RGBA_TO_UINT (30,30,30,255); + } + + if (!color_map[cPlayHead]) { + warning << _("playhead color not defined, check your ardour.colors file!") << endmsg; + color_map[cPlayHead] = RGBA_TO_UINT (0,0,0,255); + } + + edit_cursor = new Cursor (*this, &Editor::canvas_edit_cursor_event); + edit_cursor->canvas_item.property_fill_color_rgba() = color_map[cEditCursor]; + playhead_cursor = new Cursor (*this, &Editor::canvas_playhead_cursor_event); + playhead_cursor->canvas_item.property_fill_color_rgba() = color_map[cPlayHead]; initial_ruler_update_required = true; track_canvas.signal_size_allocate().connect (mem_fun(*this, &Editor::track_canvas_allocate)); @@ -310,14 +327,9 @@ Editor::track_canvas_size_allocated () for (i = track_views.begin(); i != track_views.end(); ++i) { if ((*i)->control_parent) { height += (*i)->effective_height; - height += track_spacing; } } - if (height) { - height -= track_spacing; - } - full_canvas_height = height; } @@ -362,7 +374,7 @@ Editor::track_canvas_size_allocated () } update_fixed_rulers(); - tempo_map_changed (Change (0), true); + redisplay_tempo (true); Resized (); /* EMIT_SIGNAL */ @@ -380,7 +392,6 @@ Editor::reset_scrolling_region (Gtk::Allocation* alloc) TimeAxisView *tv = (*i)[route_display_columns.tv]; if (tv != 0 && !tv->hidden()) { pos += tv->effective_height; - pos += track_spacing; } } @@ -405,7 +416,6 @@ Editor::controls_layout_size_request (Requisition* req) TimeAxisView *tv = (*i)[route_display_columns.tv]; if (tv != 0) { pos += tv->effective_height; - pos += track_spacing; } } @@ -719,6 +729,6 @@ Editor::canvas_horizontally_scrolled () update_fixed_rulers (); - tempo_map_changed (Change (0), !_dragging_hscrollbar); + redisplay_tempo (!_dragging_hscrollbar); } diff --git a/gtk2_ardour/editor_canvas_events.cc b/gtk2_ardour/editor_canvas_events.cc index b2c7554a2a..bdae41f7ba 100644 --- a/gtk2_ardour/editor_canvas_events.cc +++ b/gtk2_ardour/editor_canvas_events.cc @@ -15,16 +15,18 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> #include <cmath> +#include <pbd/stacktrace.h> + #include <ardour/audio_diskstream.h> #include <ardour/audioplaylist.h> #include "editor.h" +#include "keyboard.h" #include "public_editor.h" #include "audio_region_view.h" #include "audio_streamview.h" @@ -71,7 +73,7 @@ Editor::track_canvas_scroll (GdkEventScroll* ev) event.button.y = wy; nframes_t where = event_frame (&event, 0, 0); - temporal_zoom_to_frame (true, where); + temporal_zoom_to_frame (false, where); return true; } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::Shift)) { if (!current_stepping_trackview) { @@ -102,7 +104,7 @@ Editor::track_canvas_scroll (GdkEventScroll* ev) event.button.y = wy; nframes_t where = event_frame (&event, 0, 0); - temporal_zoom_to_frame (false, where); + temporal_zoom_to_frame (true, where); return true; } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::Shift)) { if (!current_stepping_trackview) { @@ -129,43 +131,36 @@ Editor::track_canvas_scroll (GdkEventScroll* ev) } bool -Editor::track_canvas_event (GdkEvent *event, ArdourCanvas::Item* item) +Editor::track_canvas_scroll_event (GdkEventScroll *event) { - gint x, y; - - /* this is the handler for events that are not handled by - items. - */ - - switch (event->type) { - case GDK_MOTION_NOTIFY: - /* keep those motion events coming */ - track_canvas.get_pointer (x, y); - return track_canvas_motion (event); - - case GDK_BUTTON_PRESS: - track_canvas.grab_focus(); - break; - - case GDK_BUTTON_RELEASE: - switch (event->button.button) { - case 4: - case 5: - button_release_handler (item, event, NoItem); - break; - } - break; + track_canvas.grab_focus(); + track_canvas_scroll (event); + return false; +} - case GDK_SCROLL: - track_canvas.grab_focus(); - track_canvas_scroll (&event->scroll); - break; +bool +Editor::track_canvas_button_press_event (GdkEventButton *event) +{ + track_canvas.grab_focus(); + return false; +} - default: - break; +bool +Editor::track_canvas_button_release_event (GdkEventButton *event) +{ + if (drag_info.item) { + end_grab (drag_info.item, (GdkEvent*) event); } + return false; +} - return FALSE; +bool +Editor::track_canvas_motion_notify_event (GdkEventMotion *event) +{ + int x, y; + /* keep those motion events coming */ + track_canvas.get_pointer (x, y); + return false; } bool @@ -214,7 +209,12 @@ Editor::typed_event (ArdourCanvas::Item* item, GdkEvent *event, ItemType type) bool Editor::canvas_region_view_event (GdkEvent *event, ArdourCanvas::Item* item, RegionView *rv) { - gint ret = FALSE; + bool ret = false; + + if (!rv->sensitive ()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: @@ -290,6 +290,7 @@ bool Editor::canvas_automation_track_event (GdkEvent *event, ArdourCanvas::Item* item, AutomationTimeAxisView *atv) { bool ret = false; + switch (event->type) { case GDK_BUTTON_PRESS: @@ -330,6 +331,10 @@ Editor::canvas_fade_in_event (GdkEvent *event, ArdourCanvas::Item* item, AudioRe { /* we handle only button 3 press/release events */ + if (!rv->sensitive()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: clicked_regionview = rv; @@ -362,6 +367,10 @@ Editor::canvas_fade_in_handle_event (GdkEvent *event, ArdourCanvas::Item* item, { bool ret = false; + if (!rv->sensitive()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: case GDK_2BUTTON_PRESS: @@ -401,6 +410,10 @@ Editor::canvas_fade_out_event (GdkEvent *event, ArdourCanvas::Item* item, AudioR { /* we handle only button 3 press/release events */ + if (!rv->sensitive()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: clicked_regionview = rv; @@ -433,6 +446,10 @@ Editor::canvas_fade_out_handle_event (GdkEvent *event, ArdourCanvas::Item* item, { bool ret = false; + if (!rv->sensitive()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: case GDK_2BUTTON_PRESS: @@ -499,6 +516,11 @@ Editor::canvas_crossfade_view_event (GdkEvent* event, ArdourCanvas::Item* item, } + /* XXX do not forward double clicks */ + + if (event->type == GDK_2BUTTON_PRESS) { + return false; + } /* proxy for the upper most regionview */ @@ -524,10 +546,10 @@ Editor::canvas_crossfade_view_event (GdkEvent* event, ArdourCanvas::Item* item, RegionView* rv = atv->view()->find_view (rl->front()); - /* proxy */ - delete rl; + /* proxy */ + return canvas_region_view_event (event, rv->get_canvas_group(), rv); } } @@ -703,6 +725,10 @@ Editor::canvas_region_view_name_highlight_event (GdkEvent* event, ArdourCanvas:: { bool ret = false; + if (!rv->sensitive()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: case GDK_2BUTTON_PRESS: @@ -739,6 +765,10 @@ Editor::canvas_region_view_name_event (GdkEvent *event, ArdourCanvas::Item* item { bool ret = false; + if (!rv->sensitive()) { + return false; + } + switch (event->type) { case GDK_BUTTON_PRESS: case GDK_2BUTTON_PRESS: diff --git a/gtk2_ardour/editor_cursors.cc b/gtk2_ardour/editor_cursors.cc index 7cd13cf686..239d27d4f9 100644 --- a/gtk2_ardour/editor_cursors.cc +++ b/gtk2_ardour/editor_cursors.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -31,7 +30,7 @@ using namespace ARDOUR; using namespace PBD; using namespace Gtk; -Editor::Cursor::Cursor (Editor& ed, const string& color, bool (Editor::*callbck)(GdkEvent*,ArdourCanvas::Item*)) +Editor::Cursor::Cursor (Editor& ed, bool (Editor::*callbck)(GdkEvent*,ArdourCanvas::Item*)) : editor (ed), canvas_item (*editor.cursor_group), length(1.0) @@ -43,7 +42,6 @@ Editor::Cursor::Cursor (Editor& ed, const string& color, bool (Editor::*callbck) points.push_back(Gnome::Art::Point(1.0, 0.0)); canvas_item.property_points() = points; - canvas_item.property_fill_color() = color; //.c_str()); canvas_item.property_width_pixels() = 1; canvas_item.property_first_arrowhead() = TRUE; canvas_item.property_last_arrowhead() = TRUE; diff --git a/gtk2_ardour/editor_edit_groups.cc b/gtk2_ardour/editor_edit_groups.cc index 2ee1773646..20179f84c6 100644 --- a/gtk2_ardour/editor_edit_groups.cc +++ b/gtk2_ardour/editor_edit_groups.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> diff --git a/gtk2_ardour/editor_export_audio.cc b/gtk2_ardour/editor_export_audio.cc index 8b4b3c140c..629abc8b56 100644 --- a/gtk2_ardour/editor_export_audio.cc +++ b/gtk2_ardour/editor_export_audio.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <unistd.h> diff --git a/gtk2_ardour/editor_hscroller.cc b/gtk2_ardour/editor_hscroller.cc index 5951385cb8..f5f94c4163 100644 --- a/gtk2_ardour/editor_hscroller.cc +++ b/gtk2_ardour/editor_hscroller.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include "editor.h" diff --git a/gtk2_ardour/editor_imageframe.cc b/gtk2_ardour/editor_imageframe.cc index b65ce93178..504ff545aa 100644 --- a/gtk2_ardour/editor_imageframe.cc +++ b/gtk2_ardour/editor_imageframe.cc @@ -16,7 +16,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include "imageframe_view.h" diff --git a/gtk2_ardour/editor_keyboard.cc b/gtk2_ardour/editor_keyboard.cc index bfe61eae5c..e9082445c4 100644 --- a/gtk2_ardour/editor_keyboard.cc +++ b/gtk2_ardour/editor_keyboard.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <ardour/audioregion.h> diff --git a/gtk2_ardour/editor_keys.cc b/gtk2_ardour/editor_keys.cc index 1bcaafd279..b3081e8c8a 100644 --- a/gtk2_ardour/editor_keys.cc +++ b/gtk2_ardour/editor_keys.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -70,7 +69,7 @@ Editor::keyboard_duplicate_region () return; } - float prefix; + float prefix = 0; bool was_floating; if (get_prefix (prefix, was_floating) == 0) { @@ -83,7 +82,7 @@ Editor::keyboard_duplicate_region () void Editor::keyboard_duplicate_selection () { - float prefix; + float prefix = 0; bool was_floating; if (get_prefix (prefix, was_floating) == 0) { @@ -96,7 +95,7 @@ Editor::keyboard_duplicate_selection () void Editor::keyboard_paste () { - float prefix; + float prefix = 0; bool was_floating; if (get_prefix (prefix, was_floating) == 0) { @@ -109,7 +108,7 @@ Editor::keyboard_paste () void Editor::keyboard_insert_region_list_selection () { - float prefix; + float prefix = 0; bool was_floating; if (get_prefix (prefix, was_floating) == 0) { @@ -122,6 +121,7 @@ Editor::keyboard_insert_region_list_selection () int Editor::get_prefix (float& val, bool& was_floating) { - return Keyboard::the_keyboard().get_prefix (val, was_floating); + was_floating = false; + return 1; } diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc index 238a45c4d1..f306c185f5 100644 --- a/gtk2_ardour/editor_markers.cc +++ b/gtk2_ardour/editor_markers.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <sigc++/retype.h> @@ -24,6 +23,7 @@ #include <libgnomecanvas/libgnomecanvas.h> #include <gtkmm2ext/gtk_ui.h> +#include <gtkmm2ext/window_title.h> #include <ardour/location.h> #include <pbd/memento_command.h> @@ -44,6 +44,7 @@ using namespace sigc; using namespace ARDOUR; using namespace PBD; using namespace Gtk; +using namespace Gtkmm2ext; void Editor::clear_marker_display () @@ -511,6 +512,7 @@ Editor::build_range_marker_menu (bool loop_or_punch) items.push_back (MenuElem (_("Separate Regions in Range"), mem_fun(*this, &Editor::marker_menu_separate_regions_using_location))); items.push_back (MenuElem (_("Select All in Range"), mem_fun(*this, &Editor::marker_menu_select_all_selectables_using_range))); + items.push_back (MenuElem (_("Select Range"), mem_fun(*this, &Editor::marker_menu_select_using_range))); } @@ -561,6 +563,24 @@ Editor::marker_menu_hide () } void +Editor::marker_menu_select_using_range () +{ + Marker* marker; + + if ((marker = reinterpret_cast<Marker *> (marker_menu_item->get_data ("marker"))) == 0) { + fatal << _("programming error: marker canvas item has no marker object pointer!") << endmsg; + /*NOTREACHED*/ + } + + Location* l; + bool is_start; + + if (((l = find_location_from_marker (marker, is_start)) != 0) && (l->end() > l->start())) { + set_selection_from_range (*l); + } +} + +void Editor::marker_menu_select_all_selectables_using_range () { Marker* marker; @@ -838,13 +858,16 @@ Editor::marker_menu_rename () string txt; dialog.set_prompt (_("New Name:")); - + + WindowTitle title(Glib::get_application_name()); if (loc->is_mark()) { - dialog.set_title (_("ardour: rename mark")); + title += _("Rename Mark"); } else { - dialog.set_title (_("ardour: rename range")); + title += _("Rename Range"); } + dialog.set_title(title.get_string()); + dialog.set_name ("MarkRenameWindow"); dialog.set_size_request (250, -1); dialog.set_position (Gtk::WIN_POS_MOUSE); @@ -958,8 +981,8 @@ Editor::update_loop_range_view (bool visibility) if (visibility) { transport_loop_range_rect->show(); } - } - else if (visibility) { + + } else if (visibility) { transport_loop_range_rect->hide(); } } diff --git a/gtk2_ardour/editor_mixer.cc b/gtk2_ardour/editor_mixer.cc index d1dd8be7fa..e37c7c7fe3 100644 --- a/gtk2_ardour/editor_mixer.cc +++ b/gtk2_ardour/editor_mixer.cc @@ -15,10 +15,11 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ +#include <glibmm/miscutils.h> #include <gtkmm2ext/utils.h> +#include <gtkmm2ext/window_title.h> #include <ardour/audioengine.h> #include "editor.h" @@ -30,6 +31,8 @@ #include "i18n.h" +using namespace Gtkmm2ext; + void Editor::editor_mixer_button_toggled () { @@ -158,10 +161,13 @@ Editor::set_selected_mixer_strip (TimeAxisView& view) } } +double current = 0.0; +bool currentInitialized = 0; + void Editor::update_current_screen () { - if (session && engine.running()) { + if (session && session->engine().running()) { nframes_t frame; @@ -179,6 +185,9 @@ Editor::update_current_screen () if (frame != last_update_frame) { + +#undef CONTINUOUS_SCROLL +#ifndef CONTINUOUS_SCROLL if (frame < leftmost_frame || frame > leftmost_frame + current_page_frames()) { if (session->transport_speed() < 0) { @@ -194,27 +203,26 @@ Editor::update_current_screen () playhead_cursor->set_position (frame); -#undef CONTINUOUS_SCROLL -#ifdef CONTINUOUS_SCROLL - +#else // CONTINUOUS_SCROLL + /* don't do continuous scroll till the new position is in the rightmost quarter of the editor canvas */ -#if 0 - if (frame > leftmost_frame + (3 * current_page_frames() / 4)) { - - if (frame > playhead_cursor->current_frame) { - nframes_t delta = frame - playhead_cursor->current_frame; - horizontal_adjustment.set_value (horizontal_adjustment.get_value() + (delta/frames_per_unit)); + if (session->transport_speed()) { + double target = ((double)frame - (double)current_page_frames()/2.0) / frames_per_unit; + if (target <= 0.0) target = 0.0; + if ( fabs(target - current) < current_page_frames()/frames_per_unit ) { + target = (target * 0.15) + (current * 0.85); } else { - nframes_t delta = playhead_cursor->current_frame - frame; - horizontal_adjustment.set_value (horizontal_adjustment.get_value() - (delta/frames_per_unit)); + /* relax */ } + //printf("frame: %d, cpf: %d, fpu: %6.6f, current: %6.6f, target : %6.6f\n", frame, current_page_frames(), frames_per_unit, current, target ); + current = target; + horizontal_adjustment.set_value ( current ); } -#else - horizontal_adjustment.set_value (frame / frames_per_unit); -#endif + + playhead_cursor->set_position (frame); #endif // CONTINUOUS_SCROLL @@ -340,7 +348,10 @@ Editor::session_going_away () current_mixer_strip = 0; - set_title (_("ardour: editor")); + WindowTitle title(Glib::get_application_name()); + title += _("Editor"); + + set_title (title.get_string()); session = 0; } diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index 881be020a9..1a9e1161c2 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cassert> @@ -47,6 +46,7 @@ #include "rgb_macros.h" #include <ardour/types.h> +#include <ardour/profile.h> #include <ardour/route.h> #include <ardour/audio_track.h> #include <ardour/audio_diskstream.h> @@ -301,7 +301,9 @@ Editor::button_selection (ArdourCanvas::Item* item, GdkEvent* event, ItemType it if (((mouse_mode != MouseObject) && (mouse_mode != MouseAudition || item_type != RegionItem) && - (mouse_mode != MouseTimeFX || item_type != RegionItem)) || + (mouse_mode != MouseTimeFX || item_type != RegionItem) && + (mouse_mode != MouseRange)) || + (event->type != GDK_BUTTON_PRESS && event->type != GDK_BUTTON_RELEASE || event->button.button > 3)) { return; @@ -311,44 +313,63 @@ Editor::button_selection (ArdourCanvas::Item* item, GdkEvent* event, ItemType it if ((event->button.state & Keyboard::RelevantModifierKeyMask) && event->button.button != 1) { - /* no selection action on modified button-2 or button-3 events */ - - return; + /* almost no selection action on modified button-2 or button-3 events */ + + if (item_type != RegionItem && event->button.button != 2) { + return; + } } } Selection::Operation op = Keyboard::selection_type (event->button.state); bool press = (event->type == GDK_BUTTON_PRESS); - begin_reversible_command (_("select on click")); - + // begin_reversible_command (_("select on click")); + switch (item_type) { case RegionItem: - commit = set_selected_regionview_from_click (press, op, true); + if (mouse_mode != MouseRange) { + commit = set_selected_regionview_from_click (press, op, true); + } else if (event->type == GDK_BUTTON_PRESS) { + commit = set_selected_track_from_click (press, op, false); + } break; case RegionViewNameHighlight: case RegionViewName: - commit = set_selected_regionview_from_click (press, op, true); + if (mouse_mode != MouseRange) { + commit = set_selected_regionview_from_click (press, op, true); + } else if (event->type == GDK_BUTTON_PRESS) { + commit = set_selected_track_from_click (press, op, false); + } break; case FadeInHandleItem: case FadeInItem: case FadeOutHandleItem: case FadeOutItem: - commit = set_selected_regionview_from_click (press, op, true); + if (mouse_mode != MouseRange) { + commit = set_selected_regionview_from_click (press, op, true); + } else if (event->type == GDK_BUTTON_PRESS) { + commit = set_selected_track_from_click (press, op, false); + } break; case GainAutomationControlPointItem: case PanAutomationControlPointItem: case RedirectAutomationControlPointItem: - commit = set_selected_control_point_from_click (op, false); + commit = set_selected_track_from_click (press, op, true); + if (mouse_mode != MouseRange) { + commit |= set_selected_control_point_from_click (op, false); + } break; case StreamItem: + /* for context click or range selection, select track */ if (event->button.button == 3) { - /* for context click, select track */ commit = set_selected_track_from_click (press, op, true); + } else if (event->type == GDK_BUTTON_PRESS && mouse_mode == MouseRange) { + commit = set_selected_track_from_click (press, op, false); } break; @@ -360,36 +381,14 @@ Editor::button_selection (ArdourCanvas::Item* item, GdkEvent* event, ItemType it break; } -#define SELECT_TRACK_FROM_CANVAS_IN_RANGE_MODE -#ifdef SELECT_TRACK_FROM_CANVAS_IN_RANGE_MODE - /* in range mode, button 1/2/3 press potentially selects a track */ - - if (mouse_mode == MouseRange && - event->type == GDK_BUTTON_PRESS && - event->button.button <= 3) { - - switch (item_type) { - case StreamItem: - case RegionItem: - case AutomationTrackItem: - commit = set_selected_track_from_click (true, op, true); - break; - - default: - break; - } - } -#endif - if (commit) { - commit_reversible_command (); - } +// if (commit) { +// commit_reversible_command (); +// } } bool Editor::button_press_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type) { - nframes_t where = event_frame (event, 0, 0); - track_canvas.grab_focus(); if (session && session->actively_recording()) { @@ -747,79 +746,6 @@ Editor::button_press_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemTyp case 3: break; - case 4: - switch (mouse_mode) { - case MouseZoom: - //temporal_zoom_to_frame (true, where); - if (Keyboard::modifier_state_equals (event->button.state, Keyboard::Control)) { - temporal_zoom_to_frame (true, where); - } - else { - temporal_zoom_step (true); - } - break; - default: - - if (Keyboard::modifier_state_contains (event->button.state, Keyboard::ModifierMask(Keyboard::Alt))) { - scroll_backward (0.6f); - return true; - } - else if (Keyboard::no_modifier_keys_pressed (&event->button)) { - scroll_tracks_up_line (); - } else { - if (Keyboard::modifier_state_equals (event->button.state, Keyboard::Shift)) { - if (clicked_trackview) { - if (!current_stepping_trackview) { - step_timeout = Glib::signal_timeout().connect (mem_fun(*this, &Editor::track_height_step_timeout), 500); - current_stepping_trackview = clicked_trackview; - } - gettimeofday (&last_track_height_step_timestamp, 0); - current_stepping_trackview->step_height (true); - } - } - else if (Keyboard::modifier_state_equals (event->button.state, Keyboard::Control)) { - temporal_zoom_to_frame (true, where); - } - } - } - break; - - case 5: - switch (mouse_mode) { - case MouseZoom: - // temporal_zoom_to_frame (false, where); - if (Keyboard::modifier_state_equals (event->button.state, Keyboard::Control)) { - temporal_zoom_to_frame (false, where); - } - else { - temporal_zoom_step (false); - } - break; - default: - - if (Keyboard::modifier_state_contains (event->button.state, Keyboard::ModifierMask(Keyboard::Alt))) { - scroll_forward (0.6f); - return true; - } - else if (Keyboard::no_modifier_keys_pressed (&event->button)) { - scroll_tracks_down_line (); - } else { - if (Keyboard::modifier_state_equals (event->button.state, Keyboard::Shift)) { - if (clicked_trackview) { - if (!current_stepping_trackview) { - step_timeout = Glib::signal_timeout().connect (mem_fun(*this, &Editor::track_height_step_timeout), 500); - current_stepping_trackview = clicked_trackview; - } - gettimeofday (&last_track_height_step_timestamp, 0); - current_stepping_trackview->step_height (false); - } - } else if (Keyboard::modifier_state_equals (event->button.state, Keyboard::Control)) { - temporal_zoom_to_frame (false, where); - } - } - } - break; - default: break; @@ -1061,8 +987,10 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT case MouseGain: // Gain only makes sense for audio regions - if ( ! dynamic_cast<AudioRegionView*>(clicked_regionview)) + + if (!dynamic_cast<AudioRegionView*>(clicked_regionview)) { break; + } switch (item_type) { case RegionItem: @@ -1176,23 +1104,25 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_ case GainAutomationControlPointItem: case PanAutomationControlPointItem: case RedirectAutomationControlPointItem: - cp = static_cast<ControlPoint*>(item->get_data ("control_point")); - cp->set_visible (true); - - double at_x, at_y; - at_x = cp->get_x(); - at_y = cp->get_y (); - cp->item->i2w (at_x, at_y); - at_x += 20.0; - at_y += 20.0; - - fraction = 1.0 - (cp->get_y() / cp->line.height()); - - set_verbose_canvas_cursor (cp->line.get_verbose_cursor_string (fraction), at_x, at_y); - show_verbose_canvas_cursor (); - - if (is_drawable()) { - track_canvas.get_window()->set_cursor (*fader_cursor); + if (mouse_mode == MouseGain || mouse_mode == MouseObject) { + cp = static_cast<ControlPoint*>(item->get_data ("control_point")); + cp->set_visible (true); + + double at_x, at_y; + at_x = cp->get_x(); + at_y = cp->get_y (); + cp->item->i2w (at_x, at_y); + at_x += 20.0; + at_y += 20.0; + + fraction = 1.0 - (cp->get_y() / cp->line.height()); + + set_verbose_canvas_cursor (cp->line.get_verbose_cursor_string (fraction), at_x, at_y); + show_verbose_canvas_cursor (); + + if (is_drawable()) { + track_canvas.get_window()->set_cursor (*fader_cursor); + } } break; @@ -1210,13 +1140,15 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_ case GainAutomationLineItem: case RedirectAutomationLineItem: case PanAutomationLineItem: - { - ArdourCanvas::Line *line = dynamic_cast<ArdourCanvas::Line *> (item); - if (line) - line->property_fill_color_rgba() = color_map[cEnteredAutomationLine]; - } - if (is_drawable()) { - track_canvas.get_window()->set_cursor (*fader_cursor); + if (mouse_mode == MouseGain || mouse_mode == MouseObject) { + { + ArdourCanvas::Line *line = dynamic_cast<ArdourCanvas::Line *> (item); + if (line) + line->property_fill_color_rgba() = color_map[cEnteredAutomationLine]; + } + if (is_drawable()) { + track_canvas.get_window()->set_cursor (*fader_cursor); + } } break; @@ -1517,7 +1449,10 @@ Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item */ if (!drag_info.move_threshold_passed) { - drag_info.move_threshold_passed = (abs ((int) (drag_info.current_pointer_x - drag_info.grab_x)) > 4); + bool x_threshold_passed = (abs ((int) (drag_info.current_pointer_x - drag_info.grab_x)) > 4); + bool y_threshold_passed = (abs ((int) (drag_info.current_pointer_y - drag_info.grab_y)) > 4); + + drag_info.move_threshold_passed = (x_threshold_passed || y_threshold_passed); // and change the initial grab loc/frame if this drag info wants us to @@ -1685,6 +1620,7 @@ Editor::end_grab (ArdourCanvas::Item* item, GdkEvent* event) stop_canvas_autoscroll (); if (drag_info.item == 0) { + cerr << "end grab with no item\n"; return false; } @@ -1991,7 +1927,11 @@ Editor::start_cursor_grab (ArdourCanvas::Item* item, GdkEvent* event) if (session && drag_info.was_rolling) { session->request_stop (); - } + } + + if (session && session->is_auditioning()) { + session->cancel_audition (); + } } drag_info.pointer_frame_offset = drag_info.grab_frame - cursor->current_frame; @@ -2827,65 +2767,33 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event) drag_info.want_move_threshold = false; // don't copy again - /* this is committed in the grab finished callback. */ - - begin_reversible_command (_("Drag region copy")); - /* duplicate the region(s) */ vector<RegionView*> new_regionviews; - set<boost::shared_ptr<Playlist> > affected_playlists; - pair<set<boost::shared_ptr<Playlist> >::iterator,bool> insert_result; - for (list<RegionView*>::const_iterator i = selection->regions.by_layer().begin(); i != selection->regions.by_layer().end(); ++i) { RegionView* rv; - + RegionView* nrv; + AudioRegionView* arv; + rv = (*i); - - boost::shared_ptr<Playlist> to_playlist = rv->region()->playlist(); - RouteTimeAxisView* atv = dynamic_cast<RouteTimeAxisView*>(&rv->get_time_axis_view()); - insert_result = affected_playlists.insert (to_playlist); - if (insert_result.second) { - session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0)); - } - latest_regionview = 0; - - sigc::connection c = atv->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_new_region_view)); - - /* create a new region with the same name. */ - - // FIXME: ew. need a (virtual) Region::duplicate() or something? - - boost::shared_ptr<Region> newregion; - boost::shared_ptr<Region> ar; - - if ((ar = boost::dynamic_pointer_cast<AudioRegion>(rv->region())) != 0) { - newregion = RegionFactory::create (ar); + if ((arv = dynamic_cast<AudioRegionView*>(rv)) == 0) { + /* XXX handle MIDI here */ + continue; } - assert(newregion != 0); - /* if the original region was locked, we don't care */ - - newregion->set_locked (false); - - to_playlist->add_region (newregion, (nframes_t) (rv->region()->position() * atv->get_diskstream()->speed())); - - c.disconnect (); - - if (latest_regionview) { - new_regionviews.push_back (latest_regionview); - } + nrv = new AudioRegionView (*arv); + nrv->get_canvas_group()->show (); + + new_regionviews.push_back (nrv); } - - if (new_regionviews.empty()) { return; } - + /* reset selection to new regionviews */ selection->set (new_regionviews); @@ -2893,6 +2801,7 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event) /* reset drag_info data to reflect the fact that we are dragging the copies */ drag_info.data = new_regionviews.front(); + swap_grab (new_regionviews.front()->get_canvas_group (), 0, event->motion.time); } @@ -3171,149 +3080,147 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event) MOTION ************************************************************/ - pair<set<boost::shared_ptr<Playlist> >::iterator,bool> insert_result; - const list<RegionView*>& layered_regions = selection->regions.by_layer(); + bool do_move; - for (list<RegionView*>::const_iterator i = layered_regions.begin(); i != layered_regions.end(); ++i) { + if (drag_info.first_move) { + if (drag_info.move_threshold_passed) { + do_move = true; + } else { + do_move = false; + } + } else { + do_move = true; + } + + if (do_move) { + + pair<set<boost::shared_ptr<Playlist> >::iterator,bool> insert_result; + const list<RegionView*>& layered_regions = selection->regions.by_layer(); + + for (list<RegionView*>::const_iterator i = layered_regions.begin(); i != layered_regions.end(); ++i) { - RegionView* rv = (*i); - double ix1, ix2, iy1, iy2; - int32_t temp_pointer_y_span = pointer_y_span; + RegionView* rv = (*i); + double ix1, ix2, iy1, iy2; + int32_t temp_pointer_y_span = pointer_y_span; - /* get item BBox, which will be relative to parent. so we have - to query on a child, then convert to world coordinates using - the parent. - */ + /* get item BBox, which will be relative to parent. so we have + to query on a child, then convert to world coordinates using + the parent. + */ - rv->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2); - rv->get_canvas_group()->i2w (ix1, iy1); - TimeAxisView* tvp2 = trackview_by_y_position (iy1); - AudioTimeAxisView* canvas_atv = dynamic_cast<AudioTimeAxisView*>(tvp2); - AudioTimeAxisView* temp_atv; - - if ((pointer_y_span != 0) && !clamp_y_axis) { - y_delta = 0; - int32_t x = 0; - for (j = height_list.begin(); j!= height_list.end(); j++) { - if (x == canvas_atv->order) { - /* we found the track the region is on */ - if (x != original_pointer_order) { - /*this isn't from the same track we're dragging from */ - temp_pointer_y_span = canvas_pointer_y_span; - } - while (temp_pointer_y_span > 0) { - /* we're moving up canvas-wise, - so we need to find the next track height - */ - if (j != height_list.begin()) { - j--; - } - if (x != original_pointer_order) { - /* we're not from the dragged track, so ignore hidden tracks. */ - if ((*j) == 0) { - temp_pointer_y_span++; - } - } - y_delta -= (*j); - temp_pointer_y_span--; - } - while (temp_pointer_y_span < 0) { - y_delta += (*j); - if (x != original_pointer_order) { - if ((*j) == 0) { - temp_pointer_y_span--; + rv->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2); + rv->get_canvas_group()->i2w (ix1, iy1); + TimeAxisView* tvp2 = trackview_by_y_position (iy1); + AudioTimeAxisView* canvas_atv = dynamic_cast<AudioTimeAxisView*>(tvp2); + AudioTimeAxisView* temp_atv; + + if ((pointer_y_span != 0) && !clamp_y_axis) { + y_delta = 0; + int32_t x = 0; + for (j = height_list.begin(); j!= height_list.end(); j++) { + if (x == canvas_atv->order) { + /* we found the track the region is on */ + if (x != original_pointer_order) { + /*this isn't from the same track we're dragging from */ + temp_pointer_y_span = canvas_pointer_y_span; + } + while (temp_pointer_y_span > 0) { + /* we're moving up canvas-wise, + so we need to find the next track height + */ + if (j != height_list.begin()) { + j--; } - } + if (x != original_pointer_order) { + /* we're not from the dragged track, so ignore hidden tracks. */ + if ((*j) == 0) { + temp_pointer_y_span++; + } + } + y_delta -= (*j); + temp_pointer_y_span--; + } + while (temp_pointer_y_span < 0) { + y_delta += (*j); + if (x != original_pointer_order) { + if ((*j) == 0) { + temp_pointer_y_span--; + } + } - if (j != height_list.end()) { - j++; + if (j != height_list.end()) { + j++; + } + temp_pointer_y_span++; } - temp_pointer_y_span++; - } - /* find out where we'll be when we move and set height accordingly */ + /* find out where we'll be when we move and set height accordingly */ - tvp2 = trackview_by_y_position (iy1 + y_delta); - temp_atv = dynamic_cast<AudioTimeAxisView*>(tvp2); - rv->set_height (temp_atv->height); + tvp2 = trackview_by_y_position (iy1 + y_delta); + temp_atv = dynamic_cast<AudioTimeAxisView*>(tvp2); + rv->set_height (temp_atv->height); - /* if you un-comment the following, the region colours will follow the track colours whilst dragging, - personally, i think this can confuse things, but never mind. - */ + /* if you un-comment the following, the region colours will follow the track colours whilst dragging, + personally, i think this can confuse things, but never mind. + */ - //const GdkColor& col (temp_atv->view->get_region_color()); - //rv->set_color (const_cast<GdkColor&>(col)); - break; + //const GdkColor& col (temp_atv->view->get_region_color()); + //rv->set_color (const_cast<GdkColor&>(col)); + break; + } + x++; } - x++; } - } - /* prevent the regionview from being moved to before - the zero position on the canvas. - */ - /* clamp */ + /* prevent the regionview from being moved to before + the zero position on the canvas. + */ + /* clamp */ - if (x_delta < 0) { - if (-x_delta > ix1) { - x_delta = -ix1; + if (x_delta < 0) { + if (-x_delta > ix1) { + x_delta = -ix1; + } + } else if ((x_delta > 0) &&(rv->region()->last_frame() > max_frames - x_delta)) { + x_delta = max_frames - rv->region()->last_frame(); } - } else if ((x_delta > 0) &&(rv->region()->last_frame() > max_frames - x_delta)) { - x_delta = max_frames - rv->region()->last_frame(); - } - - if (drag_info.first_move) { - /* hide any dependent views */ + if (drag_info.first_move) { - rv->get_time_axis_view().hide_dependent_views (*rv); - - /* this is subtle. raising the regionview itself won't help, - because raise_to_top() just puts the item on the top of - its parent's stack. so, we need to put the trackview canvas_display group - on the top, since its parent is the whole canvas. - */ - - rv->get_canvas_group()->raise_to_top(); - rv->get_time_axis_view().canvas_display->raise_to_top(); - cursor_group->raise_to_top(); + /* hide any dependent views */ + + rv->get_time_axis_view().hide_dependent_views (*rv); + + /* this is subtle. raising the regionview itself won't help, + because raise_to_top() just puts the item on the top of + its parent's stack. so, we need to put the trackview canvas_display group + on the top, since its parent is the whole canvas. + */ + + rv->get_canvas_group()->raise_to_top(); + rv->get_time_axis_view().canvas_display->raise_to_top(); + cursor_group->raise_to_top(); - /* freeze the playlists from notifying till - the motion is done. - */ + rv->fake_set_opaque (true); + } + + if (drag_info.brushing) { + mouse_brush_insert_region (rv, pending_region_position); + } else { + rv->move (x_delta, y_delta); + } - AudioTimeAxisView* atv = dynamic_cast<AudioTimeAxisView*> (&rv->get_time_axis_view()); - if (atv && atv->is_audio_track()) { - boost::shared_ptr<AudioPlaylist> pl = boost::dynamic_pointer_cast<AudioPlaylist>(atv->get_diskstream()->playlist()); - if (pl) { - /* only freeze and capture state once */ + } /* foreach region */ - insert_result = motion_frozen_playlists.insert (pl); - if (insert_result.second) { - pl->freeze(); - session->add_command(new MementoCommand<Playlist>(*pl, &pl->get_state(), 0)); - } - } - } - rv->region()->set_opaque(false); - } + } /* if do_move */ - if (drag_info.brushing) { - mouse_brush_insert_region (rv, pending_region_position); - } else { - rv->move (x_delta, y_delta); - } - } - - if (drag_info.first_move) { + if (drag_info.first_move && drag_info.move_threshold_passed) { cursor_group->raise_to_top(); + drag_info.first_move = false; } - - drag_info.first_move = false; - + if (x_delta != 0 && !drag_info.brushing) { show_verbose_time_cursor (drag_info.last_frame_position, 10); } - } void @@ -3364,106 +3271,120 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event //printf ("last_frame: %s position is %lu %g\n", rv->get_time_axis_view().name().c_str(), drag_info.last_frame_position, speed); //printf ("last_rackview: %s \n", drag_info.last_trackview->name().c_str()); - if (regionview_y_movement) { + char* op_string; - /* motion between tracks */ + if (drag_info.copy) { + if (drag_info.x_constrained) { + op_string = _("fixed time region copy"); + } else { + op_string = _("region copy"); + } + } else { + if (drag_info.x_constrained) { + op_string = _("fixed time region drag"); + } else { + op_string = _("region drag"); + } + } + + begin_reversible_command (op_string); + + if (regionview_y_movement) { - list<RegionView*> new_selection; - /* moved to a different audio track. */ + + vector<RegionView*> new_selection; for (list<RegionView*>::const_iterator i = selection->regions.by_layer().begin(); i != selection->regions.by_layer().end(); ) { - RegionView* rv2 = (*i); - - /* the region that used to be in the old playlist is not - moved to the new one - we make a copy of it. as a result, - any existing editor for the region should no longer be - visible. - */ - - if (!drag_info.copy) { - rv2->hide_region_editor(); - } - new_selection.push_back (rv2); - i++; - } - - /* first, freeze the target tracks */ + RegionView* rv = (*i); - for (list<RegionView*>::const_iterator i = new_selection.begin(); i != new_selection.end();i++ ) { - - boost::shared_ptr<Playlist> from_playlist; - boost::shared_ptr<Playlist> to_playlist; - double ix1, ix2, iy1, iy2; - - (*i)->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2); - (*i)->get_canvas_group()->i2w (ix1, iy1); + + rv->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2); + rv->get_canvas_group()->i2w (ix1, iy1); TimeAxisView* tvp2 = trackview_by_y_position (iy1); AudioTimeAxisView* atv2 = dynamic_cast<AudioTimeAxisView*>(tvp2); - (*i)->region()->set_opaque (true); + boost::shared_ptr<Playlist> from_playlist = rv->region()->playlist(); + boost::shared_ptr<Playlist> to_playlist = atv2->playlist(); - from_playlist = (*i)->region()->playlist(); - to_playlist = atv2->playlist(); + where = (nframes_t) (unit_to_frame (ix1) * speed); + boost::shared_ptr<Region> new_region (RegionFactory::create (rv->region())); - /* the from_playlist was frozen in the "first_move" case - of the motion handler. the insert can fail, - but that doesn't matter. it just means - we already have the playlist in the list. + /* undo the previous hide_dependent_views so that xfades don't + disappear on copying regions */ - - motion_frozen_playlists.insert (from_playlist); - - /* only freeze the to_playlist once */ - - insert_result = motion_frozen_playlists.insert(to_playlist); - if (insert_result.second) { - to_playlist->freeze(); - session->add_command(new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0)); - } - - } - - /* now do it again with the actual operations */ - for (list<RegionView*>::const_iterator i = new_selection.begin(); i != new_selection.end();i++ ) { + rv->get_time_axis_view().reveal_dependent_views (*rv); - boost::shared_ptr<Playlist> from_playlist; - boost::shared_ptr<Playlist> to_playlist; + if (!drag_info.copy) { - double ix1, ix2, iy1, iy2; + /* the region that used to be in the old playlist is not + moved to the new one - we make a copy of it. as a result, + any existing editor for the region should no longer be + visible. + */ - (*i)->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2); - (*i)->get_canvas_group()->i2w (ix1, iy1); - TimeAxisView* tvp2 = trackview_by_y_position (iy1); - AudioTimeAxisView* atv2 = dynamic_cast<AudioTimeAxisView*>(tvp2); - - from_playlist = (*i)->region()->playlist(); - to_playlist = atv2->playlist(); + rv->hide_region_editor(); + rv->fake_set_opaque (false); - latest_regionview = 0; - - where = (nframes_t) (unit_to_frame (ix1) * speed); - boost::shared_ptr<Region> new_region (RegionFactory::create ((*i)->region())); + session->add_command (new MementoCommand<Playlist>(*from_playlist, &from_playlist->get_state(), 0)); + from_playlist->remove_region ((rv->region())); + session->add_command (new MementoCommand<Playlist>(*from_playlist, 0, &from_playlist->get_state())); + } - from_playlist->remove_region (((*i)->region())); + latest_regionview = 0; sigc::connection c = atv2->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_new_region_view)); + session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0)); to_playlist->add_region (new_region, where); + session->add_command (new MementoCommand<Playlist>(*to_playlist, 0, &to_playlist->get_state())); c.disconnect (); if (latest_regionview) { - selection->add (latest_regionview); + new_selection.push_back (latest_regionview); + } + + if (drag_info.copy) { + // get rid of the copy + delete rv; + } + + /* OK, this is where it gets tricky. If the playlist was being used by >1 tracks, and the region + was selected in all of them, then removing it from the playlist will have removed all + trace of it from the selection (i.e. there were N regions selected, we removed 1, + but since its the same playlist for N tracks, all N tracks updated themselves, removed the + corresponding regionview, and the selection is now empty). + + this could have invalidated any and all iterators into the region selection. + + the heuristic we use here is: if the region selection is empty, break out of the loop + here. if the region selection is not empty, then restart the loop because we know that + we must have removed at least the region(view) we've just been working on as well as any + that we processed on previous iterations. + */ + + if (selection->regions.empty()) { + break; + } else { + i = selection->regions.by_layer().begin(); } } + selection->set (new_selection); + } else { /* motion within a single track */ + + list<RegionView*> regions = selection->regions.by_layer(); + + if (drag_info.copy) { + selection->clear_regions(); + } - for (list<RegionView*>::const_iterator i = selection->regions.by_layer().begin(); i != selection->regions.by_layer().end(); ++i) { + for (list<RegionView*>::iterator i = regions.begin(); i != regions.end(); ++i) { rv = (*i); @@ -3471,9 +3392,10 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event continue; } + if (regionview_x_movement) { double ownspeed = 1.0; - AudioTimeAxisView* atv = dynamic_cast<AudioTimeAxisView*> (&(rv->get_time_axis_view())); + atv = dynamic_cast<AudioTimeAxisView*> (&(rv->get_time_axis_view())); if (atv && atv->get_diskstream()) { ownspeed = atv->get_diskstream()->speed(); @@ -3492,23 +3414,64 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event where = rv->region()->position(); } - rv->get_time_axis_view().reveal_dependent_views (*rv); + boost::shared_ptr<Playlist> to_playlist = rv->region()->playlist(); - /* no need to add an undo here, we did that when we added this playlist to motion_frozen playlists */ - - rv->region()->set_position (where, (void *) this); - rv->region()->set_opaque (true); + assert (to_playlist); + + /* add the undo */ + + session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0)); + + if (drag_info.copy) { + + boost::shared_ptr<Region> newregion; + boost::shared_ptr<Region> ar; + + if ((ar = boost::dynamic_pointer_cast<AudioRegion>(rv->region())) != 0) { + newregion = RegionFactory::create (ar); + } else { + /* XXX MIDI HERE drobilla */ + continue; + } + + /* add it */ + + latest_regionview = 0; + sigc::connection c = atv->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_new_region_view)); + to_playlist->add_region (newregion, (nframes_t) (where * atv->get_diskstream()->speed())); + c.disconnect (); + + if (latest_regionview) { + atv->reveal_dependent_views (*latest_regionview); + selection->add (latest_regionview); + } + + /* if the original region was locked, we don't care for the new one */ + + newregion->set_locked (false); + + } else { + + /* just change the model */ + + rv->region()->set_position (where, (void*) this); + + } + + /* add the redo */ + + session->add_command (new MementoCommand<Playlist>(*to_playlist, 0, &to_playlist->get_state())); + + /* get rid of the copy */ + + if (drag_info.copy) { + delete rv; + } } } out: - for (set<boost::shared_ptr<Playlist> >::iterator p = motion_frozen_playlists.begin(); p != motion_frozen_playlists.end(); ++p) { - (*p)->thaw (); - session->add_command (new MementoCommand<Playlist>(*((*p).get()), 0, & (*p)->get_state())); - } - - motion_frozen_playlists.clear (); - + if (!nocommit) { commit_reversible_command (); } @@ -3558,7 +3521,7 @@ Editor::show_verbose_time_cursor (nframes_t frame, double offset, double xpos, d return; } - switch (ARDOUR_UI::instance()->secondary_clock.mode ()) { + switch (Profile->get_small_screen() ? ARDOUR_UI::instance()->primary_clock.mode () : ARDOUR_UI::instance()->secondary_clock.mode ()) { case AudioClock::BBT: session->bbt_time (frame, bbt); snprintf (buf, sizeof (buf), "%02" PRIu32 "|%02" PRIu32 "|%02" PRIu32, bbt.bars, bbt.beats, bbt.ticks); @@ -3983,8 +3946,6 @@ Editor::start_trim (ArdourCanvas::Item* item, GdkEvent* event) nframes_t region_end = (nframes_t) (clicked_regionview->region()->last_frame() / speed); nframes_t region_length = (nframes_t) (clicked_regionview->region()->length() / speed); - motion_frozen_playlists.clear(); - //drag_info.item = clicked_regionview->get_name_highlight(); drag_info.item = item; drag_info.motion_callback = &Editor::trim_motion_callback; @@ -4073,7 +4034,7 @@ Editor::trim_motion_callback (ArdourCanvas::Item* item, GdkEvent* event) begin_reversible_command (trim_type); for (list<RegionView*>::const_iterator i = selection->regions.by_layer().begin(); i != selection->regions.by_layer().end(); ++i) { - (*i)->region()->set_opaque(false); + (*i)->fake_set_opaque(false); (*i)->region()->freeze (); AudioRegionView* const arv = dynamic_cast<AudioRegionView*>(*i); @@ -4268,7 +4229,7 @@ Editor::trim_finished_callback (ArdourCanvas::Item* item, GdkEvent* event) i != selection->regions.by_layer().end(); ++i) { thaw_region_after_trim (**i); - (*i)->region()->set_opaque(true); + (*i)->fake_set_opaque (true); } } @@ -4560,7 +4521,6 @@ Editor::end_range_markerbar_op (ArdourCanvas::Item* item, GdkEvent* event) switch (mouse_mode) { case MouseObject: /* find the two markers on either side and then make the selection from it */ - cerr << "select between " << start << " .. " << end << endl; select_all_within (start, end, 0.0f, FLT_MAX, Selection::Set); break; diff --git a/gtk2_ardour/editor_nudge.cc b/gtk2_ardour/editor_nudge.cc index c6f5eeeb48..1420fd6fc2 100644 --- a/gtk2_ardour/editor_nudge.cc +++ b/gtk2_ardour/editor_nudge.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index 52e470f1f5..c478f47bde 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <unistd.h> @@ -32,6 +31,7 @@ #include <gtkmm2ext/utils.h> #include <gtkmm2ext/choice.h> +#include <gtkmm2ext/window_title.h> #include <ardour/audioengine.h> #include <ardour/session.h> @@ -68,6 +68,7 @@ using namespace ARDOUR; using namespace PBD; using namespace sigc; using namespace Gtk; +using namespace Gtkmm2ext; using namespace Editing; /*********************************************************************** @@ -499,15 +500,6 @@ Editor::build_region_boundary_cache () break; } - } else if (clicked_trackview) { - - TrackViewList t; - t.push_back (clicked_trackview); - - if ((r = find_next_region (pos, point, 1, t, &ontrack)) == 0) { - break; - } - } else { if ((r = find_next_region (pos, point, 1, track_views, &ontrack)) == 0) { @@ -1507,19 +1499,13 @@ Editor::insert_region_list_drag (boost::shared_ptr<AudioRegion> region, int x, i return; } - cerr << "drop target playlist, UC = " << playlist.use_count() << endl; - snap_to (where); begin_reversible_command (_("insert dragged region")); XMLNode &before = playlist->get_state(); - cerr << "pre add target playlist, UC = " << playlist.use_count() << endl; playlist->add_region (RegionFactory::create (region), where, 1.0); - cerr << "post add target playlist, UC = " << playlist.use_count() << endl; session->add_command(new MementoCommand<Playlist>(*playlist, &before, &playlist->get_state())); commit_reversible_command (); - - cerr << "post drop target playlist, UC = " << playlist.use_count() << endl; } void @@ -1764,7 +1750,10 @@ Editor::rename_region () return; } - dialog.set_title (_("ardour: rename region")); + WindowTitle title(Glib::get_application_name()); + title += _("Rename Region"); + + dialog.set_title (title.get_string()); dialog.set_name ("RegionRenameWindow"); dialog.set_size_request (300, -1); dialog.set_position (Gtk::WIN_POS_MOUSE); @@ -1995,6 +1984,12 @@ Editor::separate_region_from_selection () if ((atv = dynamic_cast<AudioTimeAxisView*> ((*i))) != 0) { if (atv->is_audio_track()) { + + /* no edits to destructive tracks */ + + if (atv->audio_track()->audio_diskstream()->destructive()) { + continue; + } if ((playlist = atv->playlist()) != 0) { if (!doing_undo) { @@ -2048,6 +2043,12 @@ Editor::separate_regions_using_location (Location& loc) if (atv->is_audio_track()) { + /* no edits to destructive tracks */ + + if (atv->audio_track()->audio_diskstream()->destructive()) { + continue; + } + if ((playlist = atv->playlist()) != 0) { XMLNode *before; if (!doing_undo) { @@ -2077,75 +2078,76 @@ Editor::separate_regions_using_location (Location& loc) void Editor::crop_region_to_selection () { - if (selection->time.empty()) { + if (selection->time.empty() || selection->tracks.empty()) { return; } vector<boost::shared_ptr<Playlist> > playlists; boost::shared_ptr<Playlist> playlist; - if (clicked_trackview != 0) { - - if ((playlist = clicked_trackview->playlist()) == 0) { - return; - } - - playlists.push_back (playlist); - - } else { + sort_track_selection (); + + for (TrackSelection::iterator i = selection->tracks.begin(); i != selection->tracks.end(); ++i) { - sort_track_selection (); - - for (TrackSelection::iterator i = selection->tracks.begin(); i != selection->tracks.end(); ++i) { - - AudioTimeAxisView* atv; + AudioTimeAxisView* atv; + + if ((atv = dynamic_cast<AudioTimeAxisView*> ((*i))) != 0) { + + if (atv->is_audio_track()) { + + /* no edits to destructive tracks */ - if ((atv = dynamic_cast<AudioTimeAxisView*> ((*i))) != 0) { + if (atv->audio_track()->audio_diskstream()->destructive()) { + continue; + } - if (atv->is_audio_track()) { - - if ((playlist = atv->playlist()) != 0) { - playlists.push_back (playlist); - } + if ((playlist = atv->playlist()) != 0) { + playlists.push_back (playlist); } } } } - if (!playlists.empty()) { - - nframes_t start; - nframes_t end; - nframes_t cnt; - - begin_reversible_command (_("trim to selection")); - - for (vector<boost::shared_ptr<Playlist> >::iterator i = playlists.begin(); i != playlists.end(); ++i) { - - boost::shared_ptr<Region> region; - - start = selection->time.start(); - - if ((region = (*i)->top_region_at(start)) == 0) { - continue; - } - - /* now adjust lengths to that we do the right thing - if the selection extends beyond the region - */ - - start = max (start, region->position()); - end = min (selection->time.end_frame(), start + region->length() - 1); - cnt = end - start + 1; - - XMLNode &before = (*i)->get_state(); - region->trim_to (start, cnt, this); - XMLNode &after = (*i)->get_state(); - session->add_command (new MementoCommand<Playlist>(*(*i), &before, &after)); + if (playlists.empty()) { + return; + } + + nframes_t start; + nframes_t end; + nframes_t cnt; + + begin_reversible_command (_("trim to selection")); + + for (vector<boost::shared_ptr<Playlist> >::iterator i = playlists.begin(); i != playlists.end(); ++i) { + + boost::shared_ptr<Region> region; + + start = selection->time.start(); + + if ((region = (*i)->top_region_at(start)) == 0) { + continue; } - - commit_reversible_command (); + + /* now adjust lengths to that we do the right thing + if the selection extends beyond the region + */ + + start = max (start, region->position()); + if (max_frames - start < region->length()) { + end = start + region->length() - 1; + } else { + end = max_frames; + } + end = min (selection->time.end_frame(), end); + cnt = end - start + 1; + + XMLNode &before = (*i)->get_state(); + region->trim_to (start, cnt, this); + XMLNode &after = (*i)->get_state(); + session->add_command (new MementoCommand<Playlist>(*(*i), &before, &after)); } + + commit_reversible_command (); } void @@ -2527,8 +2529,10 @@ Editor::freeze_route () if (interthread_progress_window == 0) { build_interthread_progress_window (); } - - interthread_progress_window->set_title (_("ardour: freeze")); + + WindowTitle title(Glib::get_application_name()); + title += _("Freeze"); + interthread_progress_window->set_title (title.get_string()); interthread_progress_window->set_position (Gtk::WIN_POS_MOUSE); interthread_progress_window->show_all (); interthread_progress_bar.set_fraction (0.0f); @@ -2570,15 +2574,15 @@ Editor::bounce_range_selection () return; } - TrackViewList *views = get_valid_views (selection->time.track, selection->time.group); + TrackSelection views = selection->tracks; nframes_t start = selection->time[clicked_selection].start; nframes_t end = selection->time[clicked_selection].end; nframes_t cnt = end - start + 1; - + begin_reversible_command (_("bounce range")); - for (TrackViewList::iterator i = views->begin(); i != views->end(); ++i) { + for (TrackViewList::iterator i = views.begin(); i != views.end(); ++i) { AudioTimeAxisView* atv; @@ -2597,7 +2601,7 @@ Editor::bounce_range_selection () itt.done = false; itt.cancel = false; itt.progress = false; - + XMLNode &before = playlist->get_state(); atv->audio_track()->bounce_range (start, cnt, itt); XMLNode &after = playlist->get_state(); @@ -2605,8 +2609,6 @@ Editor::bounce_range_selection () } commit_reversible_command (); - - delete views; } void @@ -2807,19 +2809,22 @@ Editor::cut_copy_regions (CutCopyOp op) } boost::shared_ptr<AudioRegion> ar = boost::dynamic_pointer_cast<AudioRegion>((*x)->region()); + boost::shared_ptr<Region> _xx; switch (op) { case Cut: if (!ar) break; - npl->add_region (RegionFactory::create (ar), (*x)->region()->position() - first_position); + _xx = RegionFactory::create ((*x)->region()); + npl->add_region (_xx, (*x)->region()->position() - first_position); pl->remove_region (((*x)->region())); break; case Copy: if (!ar) break; - - npl->add_region (RegionFactory::create (ar), (*x)->region()->position() - first_position); + + /* copy region before adding, so we're not putting same object into two different playlists */ + npl->add_region (RegionFactory::create ((*x)->region()), (*x)->region()->position() - first_position); break; case Clear: @@ -2839,10 +2844,11 @@ Editor::cut_copy_regions (CutCopyOp op) foo.push_back ((*i).pl); } + if (!foo.empty()) { cut_buffer->set (foo); } - + for (set<PlaylistState, lt_playlist>::iterator pl = freezelist.begin(); pl != freezelist.end(); ++pl) { (*pl).playlist->thaw (); session->add_command (new MementoCommand<Playlist>(*(*pl).playlist, (*pl).before, &(*pl).playlist->get_state())); diff --git a/gtk2_ardour/editor_region_list.cc b/gtk2_ardour/editor_region_list.cc index d8c521da20..df23ac503c 100644 --- a/gtk2_ardour/editor_region_list.cc +++ b/gtk2_ardour/editor_region_list.cc @@ -15,24 +15,26 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> #include <cmath> #include <algorithm> #include <string> +#include <sstream> #include <pbd/basename.h> #include <ardour/audioregion.h> #include <ardour/audiofilesource.h> +#include <ardour/silentfilesource.h> #include <ardour/session_region.h> #include <gtkmm2ext/stop_signal.h> #include "editor.h" #include "editing.h" +#include "keyboard.h" #include "ardour_ui.h" #include "gui_thread.h" #include "actions.h" @@ -85,6 +87,9 @@ Editor::add_audio_region_to_region_display (boost::shared_ptr<AudioRegion> regio string str; TreeModel::Row row; Gdk::Color c; + bool missing_source; + + missing_source = boost::dynamic_pointer_cast<SilentFileSource>(region->source()); if (!show_automatic_regions_in_region_list && region->automatic()) { return; @@ -124,18 +129,23 @@ Editor::add_audio_region_to_region_display (boost::shared_ptr<AudioRegion> regio } else if (region->whole_file()) { row = *(region_list_model->append()); - set_color(c, rgba_from_style ("RegionListWholeFile", 0xff, 0, 0, 0, "fg", Gtk::STATE_NORMAL, false )); + if (missing_source) { + c.set_rgb(65535,0,0); // FIXME: error color from style + } else { + set_color(c, rgba_from_style ("RegionListWholeFile", 0xff, 0, 0, 0, "fg", Gtk::STATE_NORMAL, false )); + } row[region_list_columns.color_] = c; if (region->source()->name()[0] == '/') { // external file if (region->whole_file()) { - str = ".../"; boost::shared_ptr<AudioFileSource> afs = boost::dynamic_pointer_cast<AudioFileSource>(region->source()); + str = ".../"; + if (afs) { - str += region_name_from_path (afs->path(), region->n_channels() > 1); + str = region_name_from_path (afs->path(), region->n_channels() > 1); } else { str += region->source()->name(); } @@ -150,6 +160,18 @@ Editor::add_audio_region_to_region_display (boost::shared_ptr<AudioRegion> regio } + if (region->n_channels() > 1) { + std::stringstream foo; + foo << region->n_channels (); + str += " ["; + str += foo.str(); + str += ']'; + } + + if (missing_source) { + str += _(" (MISSING)"); + } + row[region_list_columns.name] = str; row[region_list_columns.region] = region; diff --git a/gtk2_ardour/editor_route_list.cc b/gtk2_ardour/editor_route_list.cc index bad0854885..1876b17f10 100644 --- a/gtk2_ardour/editor_route_list.cc +++ b/gtk2_ardour/editor_route_list.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> @@ -23,10 +22,12 @@ #include <cmath> #include "editor.h" +#include "keyboard.h" #include "ardour_ui.h" #include "audio_time_axis.h" #include "mixer_strip.h" #include "gui_thread.h" +#include "actions.h" #include <ardour/route.h> #include <ardour/audio_track.h> @@ -52,7 +53,7 @@ Editor::handle_new_route (Session::RouteList& routes) boost::shared_ptr<Route> route = (*x); if (route->hidden()) { - return; + continue; } tv = new AudioTimeAxisView (*this, *session, route, track_canvas); @@ -148,9 +149,10 @@ Editor::remove_route (TimeAxisView *tv) } } /* since the editor mixer goes away when you remove a route, set the - * button to inacttive + * button to inactive and untick the menu option */ editor_mixer_button.set_active(false); + ActionManager::uncheck_toggleaction ("<Actions>/Editor/show-editor-mixer"); /* and disable if all tracks and/or routes are gone */ @@ -257,7 +259,6 @@ Editor::redisplay_route_list () if (visible) { tv->set_marked_for_display (true); position += tv->show_at (position, n, &edit_controls_vbox); - position += track_spacing; } else { tv->hide (); } @@ -266,6 +267,8 @@ Editor::redisplay_route_list () } + full_canvas_height = position; + /* make sure the cursors stay on top of every newly added track */ cursor_group->raise_to_top (); @@ -509,11 +512,13 @@ Editor::initial_route_list_display () void Editor::route_list_change (const Gtk::TreeModel::Path& path,const Gtk::TreeModel::iterator& iter) { + session->set_remote_control_ids(); redisplay_route_list (); } void Editor::route_list_delete (const Gtk::TreeModel::Path& path) { + session->set_remote_control_ids(); redisplay_route_list (); } diff --git a/gtk2_ardour/editor_rulers.cc b/gtk2_ardour/editor_rulers.cc index 30bcff093a..3182341437 100644 --- a/gtk2_ardour/editor_rulers.cc +++ b/gtk2_ardour/editor_rulers.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdio> // for sprintf, grrr @@ -56,6 +55,10 @@ Editor::initialize_rulers () ruler_editor = this; ruler_grabbed_widget = 0; + _ruler_separator = new Gtk::HSeparator(); + _ruler_separator->set_size_request(-1, 2); + _ruler_separator->show(); + _smpte_ruler = gtk_custom_hruler_new (); smpte_ruler = Glib::wrap (_smpte_ruler); smpte_ruler->set_name ("SMPTERuler"); @@ -148,6 +151,11 @@ Editor::ruler_button_press (GdkEventButton* ev) switch (ev->button) { case 1: + // Since we are about to move the playhead, cancel any running + // auditions. + if (session->is_auditioning()) { + session->cancel_audition (); + } /* transport playhead */ snap_to (where); session->request_locate (where); @@ -252,12 +260,12 @@ Editor::ruler_mouse_motion (GdkEventMotion* ev) /* need to use the correct x,y, the event lies */ time_canvas_event_box.get_window()->get_pointer (x, y, state); - - track_canvas.c2w (x, y, wcx, wcy); - track_canvas.w2c (wcx, wcy, cx, cy); - - nframes_t where = leftmost_frame + pixel_to_frame (x); + time_canvas.c2w (x, y, wcx, wcy); + time_canvas.w2c (wcx, wcy, cx, cy); + wcx = x; + nframes_t where = event_frame ((GdkEvent*) ev, &wcx, (double *) 0); + cx = wcx; /// ripped from maybe_autoscroll, and adapted to work here nframes_t one_page = (nframes_t) rint (canvas_width * frames_per_unit); @@ -299,8 +307,7 @@ Editor::ruler_mouse_motion (GdkEventMotion* ev) break; } - if (cursor) - { + if (cursor) { cursor->set_position (where); if (cursor == edit_cursor) { @@ -373,7 +380,7 @@ Editor::popup_ruler_menu (nframes_t where, ItemType t) mitem->set_active(true); } - ruler_items.push_back (CheckMenuElem (X_("Timecode"), bind (mem_fun(*this, &Editor::ruler_toggled), (int)ruler_metric_smpte))); + ruler_items.push_back (CheckMenuElem (_("Timecode"), bind (mem_fun(*this, &Editor::ruler_toggled), (int)ruler_metric_smpte))); mitem = (CheckMenuItem *) &ruler_items.back(); if (ruler_shown[ruler_metric_smpte]) { mitem->set_active(true); @@ -601,6 +608,7 @@ Editor::update_ruler_visibility () frames_ruler->signal_motion_notify_event().connect (mem_fun(*this, &Editor::ruler_mouse_motion)); minsec_ruler->signal_motion_notify_event().connect (mem_fun(*this, &Editor::ruler_mouse_motion)); + ruler_children.insert (canvaspos, Element(*_ruler_separator, PACK_SHRINK, PACK_START)); if (ruler_shown[ruler_metric_minsec]) { lab_children.push_back (Element(minsec_label, PACK_SHRINK, PACK_START)); @@ -626,7 +634,7 @@ Editor::update_ruler_visibility () visible_timebars++; } - double tbpos = 0.0; + double tbpos = 1.0; double old_unit_pos ; if (ruler_shown[ruler_time_meter]) { @@ -705,10 +713,10 @@ Editor::update_ruler_visibility () update_fixed_rulers(); //update_tempo_based_rulers(); - tempo_map_changed(Change (0), false); + redisplay_tempo (false); time_canvas_event_box.show_all(); - time_button_event_box.show_all(); + time_button_frame.show_all(); } void diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc index 2cd16de312..e710a790cb 100644 --- a/gtk2_ardour/editor_selection.cc +++ b/gtk2_ardour/editor_selection.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: editor.cc 1353 2007-01-18 03:06:15Z paul $ */ #include <pbd/stacktrace.h> @@ -154,6 +153,11 @@ Editor::extend_selection_to_track (TimeAxisView& view) return false; } +void +Editor::select_all_tracks () +{ + selection->set (track_views); +} bool Editor::set_selected_track (TimeAxisView& view, Selection::Operation op, bool no_remove) @@ -772,7 +776,7 @@ Editor::select_all_within (nframes_t start, nframes_t end, double top, double bo list<Selectable*>::size_type n = 0; TrackViewList touched_tracks; - for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { + for (TrackViewList::iterator iter = selection->tracks.begin(); iter != selection->tracks.end(); ++iter) { if ((*iter)->hidden()) { continue; } @@ -780,13 +784,18 @@ Editor::select_all_within (nframes_t start, nframes_t end, double top, double bo n = touched.size(); (*iter)->get_selectables (start, end, top, bot, touched); - + if (n != touched.size()) { touched_tracks.push_back (*iter); } } + if (touched.empty()) { + return false; + } + if (!touched_tracks.empty()) { + switch (op) { case Selection::Add: selection->add (touched_tracks); @@ -802,7 +811,7 @@ Editor::select_all_within (nframes_t start, nframes_t end, double top, double bo break; } } - + begin_reversible_command (_("select all within")); switch (op) { case Selection::Add: @@ -818,8 +827,9 @@ Editor::select_all_within (nframes_t start, nframes_t end, double top, double bo /* not defined yet */ break; } - + commit_reversible_command (); + return !touched.empty(); } diff --git a/gtk2_ardour/editor_selection_list.cc b/gtk2_ardour/editor_selection_list.cc index 864e527b59..1d75bf5d13 100644 --- a/gtk2_ardour/editor_selection_list.cc +++ b/gtk2_ardour/editor_selection_list.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -31,6 +30,7 @@ #include <gtkmm2ext/stop_signal.h> #include "editor.h" +#include "keyboard.h" #include "selection.h" #include "time_axis_view.h" #include "ardour_ui.h" diff --git a/gtk2_ardour/editor_tempodisplay.cc b/gtk2_ardour/editor_tempodisplay.cc index 7647de8ca6..339c335fa3 100644 --- a/gtk2_ardour/editor_tempodisplay.cc +++ b/gtk2_ardour/editor_tempodisplay.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdio> // for sprintf, grrr @@ -94,13 +93,28 @@ Editor::draw_metric_marks (const Metrics& metrics) } void -Editor::tempo_map_changed (Change ignored, bool immediate_redraw) +Editor::tempo_map_changed (Change ignored) { if (!session) { return; } - ENSURE_GUI_THREAD(bind (mem_fun (*this, &Editor::tempo_map_changed), ignored, immediate_redraw)); + ENSURE_GUI_THREAD(bind (mem_fun (*this, &Editor::tempo_map_changed), ignored)); + + redisplay_tempo (false); // redraw rulers and measures + session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); // redraw metric markers +} + +/** + * This code was originally in tempo_map_changed, but this is called every time the canvas scrolls horizontally. + * That's why this is moved in here. The new tempo_map_changed is called when the ARDOUR::TempoMap actually changed. + */ +void +Editor::redisplay_tempo (bool immediate_redraw) +{ + if (!session) { + return; + } BBT_Time previous_beat, next_beat; // the beats previous to the leftmost frame and after the rightmost frame @@ -154,11 +168,6 @@ Editor::tempo_map_changed (Change ignored, bool immediate_redraw) } void -Editor::redisplay_tempo () -{ -} - -void Editor::hide_measures () { for (TimeLineList::iterator i = used_measure_lines.begin(); i != used_measure_lines.end(); ++i) { @@ -308,8 +317,6 @@ Editor::mouse_add_new_tempo_event (nframes_t frame) commit_reversible_command (); map.dump (cerr); - - session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); } void @@ -350,8 +357,6 @@ Editor::mouse_add_new_meter_event (nframes_t frame) commit_reversible_command (); map.dump (cerr); - - session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); } void @@ -402,8 +407,6 @@ Editor::edit_meter_section (MeterSection* section) XMLNode &after = session->tempo_map().get_state(); session->add_command(new MementoCommand<TempoMap>(session->tempo_map(), &before, &after)); commit_reversible_command (); - - session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); } void @@ -434,8 +437,6 @@ Editor::edit_tempo_section (TempoSection* section) XMLNode &after = session->tempo_map().get_state(); session->add_command (new MementoCommand<TempoMap>(session->tempo_map(), &before, &after)); commit_reversible_command (); - - session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); } void @@ -486,8 +487,6 @@ Editor::real_remove_tempo_marker (TempoSection *section) session->add_command(new MementoCommand<TempoMap>(session->tempo_map(), &before, &after)); commit_reversible_command (); - session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); - return FALSE; } @@ -522,7 +521,5 @@ Editor::real_remove_meter_marker (MeterSection *section) session->add_command(new MementoCommand<TempoMap>(session->tempo_map(), &before, &after)); commit_reversible_command (); - session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks); - return FALSE; } diff --git a/gtk2_ardour/editor_timefx.cc b/gtk2_ardour/editor_timefx.cc index bfc5ee85cd..2efdc03f8f 100644 --- a/gtk2_ardour/editor_timefx.cc +++ b/gtk2_ardour/editor_timefx.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -27,6 +26,8 @@ #include <pbd/pthread_utils.h> #include <pbd/memento_command.h> +#include <gtkmm2ext/window_title.h> + #include "editor.h" #include "audio_time_axis.h" #include "audio_region_view.h" @@ -45,6 +46,7 @@ using namespace ARDOUR; using namespace PBD; using namespace sigc; using namespace Gtk; +using namespace Gtkmm2ext; Editor::TimeStretchDialog::TimeStretchDialog (Editor& e) : ArdourDialog ("time stretch dialog"), @@ -54,9 +56,12 @@ Editor::TimeStretchDialog::TimeStretchDialog (Editor& e) { set_modal (true); set_position (Gtk::WIN_POS_MOUSE); - set_title (_("ardour: timestretch")); set_name (N_("TimeStretchDialog")); + WindowTitle title(Glib::get_application_name()); + title += _("Timestretch"); + set_title(title.get_string()); + get_vbox()->set_spacing (5); get_vbox()->set_border_width (5); get_vbox()->pack_start (upper_button_box); diff --git a/gtk2_ardour/export_dialog.cc b/gtk2_ardour/export_dialog.cc index bd4955933d..1c70c758a5 100644 --- a/gtk2_ardour/export_dialog.cc +++ b/gtk2_ardour/export_dialog.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ @@ -30,6 +29,8 @@ #include <pbd/xml++.h> #include <gtkmm2ext/utils.h> +#include <gtkmm2ext/window_title.h> + #include <ardour/export.h> #include <ardour/sndfile_helpers.h> #include <ardour/audio_track.h> @@ -52,6 +53,7 @@ using namespace ARDOUR; using namespace PBD; using namespace sigc; using namespace Gtk; +using namespace Gtkmm2ext; static const gchar *sample_rates[] = { N_("22.05kHz"), @@ -107,7 +109,6 @@ ExportDialog::ExportDialog(PublicEditor& e) src_quality_label (_("Conversion Quality"), 1.0, 0.5), dither_type_label (_("Dither Type"), 1.0, 0.5), cuefile_only_checkbox (_("Export CD Marker File Only")), - file_frame (_("Export to File")), file_browse_button (_("Browse")), track_selector_button (_("Specific tracks ...")) { @@ -119,8 +120,11 @@ ExportDialog::ExportDialog(PublicEditor& e) track_and_master_selection_allowed = true; channel_count_selection_allowed = true; export_cd_markers_allowed = true; + + WindowTitle title(Glib::get_application_name()); + title += _("Export"); - set_title (_("ardour: export")); + set_title (title.get_string()); set_wmclass (X_("ardour_export"), "Ardour"); set_name ("ExportWindow"); add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK); @@ -569,7 +573,7 @@ ExportDialog::save_state() row = *ri; track->add_property(X_("channel1"), row[exp_cols.left] ? X_("on") : X_("off")); - track->add_property(X_("channel1"), row[exp_cols.right] ? X_("on") : X_("off")); + track->add_property(X_("channel2"), row[exp_cols.right] ? X_("on") : X_("off")); tracks->add_child_nocopy(*track); } @@ -918,7 +922,6 @@ ExportDialog::do_export () void ExportDialog::end_dialog () { - if (spec.running) { spec.stop = true; @@ -931,7 +934,7 @@ ExportDialog::end_dialog () } } - session->engine().freewheel (false); + session->finalize_audio_export (); hide_all (); @@ -947,12 +950,12 @@ ExportDialog::start_export () } /* If the filename hasn't been set before, use the - directory above the current session as a default + current session's export directory as a default location for the export. */ if (file_entry.get_text().length() == 0) { - string dir = session->path(); + string dir = session->export_dir(); string::size_type last_slash; if ((last_slash = dir.find_last_of ('/')) != string::npos && last_slash != 0) { @@ -1306,7 +1309,7 @@ ExportDialog::window_closed (GdkEventAny *ignored) void ExportDialog::browse () { - FileChooserDialog dialog("Export to file", FILE_CHOOSER_ACTION_SAVE); + FileChooserDialog dialog("Export to file", browse_action()); dialog.set_transient_for(*this); dialog.set_filename (file_entry.get_text()); diff --git a/gtk2_ardour/export_dialog.h b/gtk2_ardour/export_dialog.h index 632d855163..2831384cd3 100644 --- a/gtk2_ardour/export_dialog.h +++ b/gtk2_ardour/export_dialog.h @@ -29,6 +29,7 @@ #include <gtkmm/progressbar.h> #include <gtkmm/scrolledwindow.h> #include <gtkmm/fileselection.h> +#include <gtkmm/filechooser.h> #include <gtkmm/comboboxtext.h> #include <gtkmm/treeview.h> #include <gtkmm/liststore.h> @@ -56,8 +57,11 @@ class ExportDialog : public ArdourDialog virtual void set_range (nframes_t start, nframes_t end); void start_export (); + virtual Gtk::FileChooserAction browse_action() const { return Gtk::FILE_CHOOSER_ACTION_SAVE; } + protected: ARDOUR::AudioExportSpecification spec; + Gtk::Frame file_frame; struct ExportModelColumns : public Gtk::TreeModel::ColumnRecord { @@ -140,7 +144,6 @@ class ExportDialog : public ArdourDialog Gtk::CheckButton cuefile_only_checkbox; - Gtk::Frame file_frame; Gtk::Entry file_entry; Gtk::HBox file_hbox; Gtk::Button file_browse_button; diff --git a/gtk2_ardour/export_range_markers_dialog.cc b/gtk2_ardour/export_range_markers_dialog.cc index 85c5efe4f2..1184294a67 100644 --- a/gtk2_ardour/export_range_markers_dialog.cc +++ b/gtk2_ardour/export_range_markers_dialog.cc @@ -38,12 +38,20 @@ using namespace std; ExportRangeMarkersDialog::ExportRangeMarkersDialog (PublicEditor& editor) : ExportDialog(editor) { + set_title (_("ardour: export ranges")); + file_frame.set_label (_("Export to Directory")); + do_not_allow_export_cd_markers(); total_duration = 0; current_range_marker_index = 0; } - + +Gtk::FileChooserAction +ExportRangeMarkersDialog::browse_action () const +{ + return Gtk::FILE_CHOOSER_ACTION_CREATE_FOLDER; +} void ExportRangeMarkersDialog::export_audio_data () @@ -57,7 +65,7 @@ ExportRangeMarkersDialog::process_range_markers_export(Locations::LocationList& Locations::LocationList::iterator locationIter; current_range_marker_index = 0; init_progress_computing(locations); - + for (locationIter = locations.begin(); locationIter != locations.end(); ++locationIter) { Location *currentLocation = (*locationIter); @@ -82,7 +90,8 @@ ExportRangeMarkersDialog::process_range_markers_export(Locations::LocationList& // wait until export of this range finished gtk_main_iteration(); - while(spec.running){ + + while (spec.running){ if(gtk_events_pending()){ gtk_main_iteration(); }else { @@ -171,13 +180,11 @@ ExportRangeMarkersDialog::init_progress_computing(Locations::LocationList& locat Location *currentLocation = (*locationIter); if(currentLocation->is_range_marker()){ - range_markers_durations_aggregated.push_back( - duration_before_current_location); + range_markers_durations_aggregated.push_back (duration_before_current_location); - nframes_t duration = - currentLocation->end() - currentLocation->start(); + nframes_t duration = currentLocation->end() - currentLocation->start(); - range_markers_durations.push_back(duration); + range_markers_durations.push_back (duration); duration_before_current_location += duration; } } @@ -190,14 +197,12 @@ gint ExportRangeMarkersDialog::progress_timeout () { double progress = 0.0; - - if(current_range_marker_index >= range_markers_durations.size()){ + + if (current_range_marker_index >= range_markers_durations.size()){ progress = 1.0; - } - else{ - progress = - ((double) range_markers_durations_aggregated[current_range_marker_index] + - (spec.progress * (double) range_markers_durations[current_range_marker_index])) / + } else{ + progress = ((double) range_markers_durations_aggregated[current_range_marker_index] + + (spec.progress * (double) range_markers_durations[current_range_marker_index])) / (double) total_duration; } diff --git a/gtk2_ardour/export_range_markers_dialog.h b/gtk2_ardour/export_range_markers_dialog.h index 1087f4c4c6..7d231c62d5 100644 --- a/gtk2_ardour/export_range_markers_dialog.h +++ b/gtk2_ardour/export_range_markers_dialog.h @@ -30,6 +30,8 @@ class ExportRangeMarkersDialog : public ExportDialog public: ExportRangeMarkersDialog (PublicEditor&); + Gtk::FileChooserAction browse_action() const; + protected: virtual bool is_filepath_valid(string &filepath); diff --git a/gtk2_ardour/export_region_dialog.cc b/gtk2_ardour/export_region_dialog.cc index 30ff05dc5c..cb3804c11b 100644 --- a/gtk2_ardour/export_region_dialog.cc +++ b/gtk2_ardour/export_region_dialog.cc @@ -31,6 +31,9 @@ ExportRegionDialog::ExportRegionDialog (PublicEditor& editor, boost::shared_ptr<ARDOUR::Region> region) : ExportDialog(editor) { + set_title (_("ardour: export region")); + file_frame.set_label (_("Export to File")), + audio_region = boost::dynamic_pointer_cast<ARDOUR::AudioRegion>(region); assert(audio_region); diff --git a/gtk2_ardour/export_session_dialog.cc b/gtk2_ardour/export_session_dialog.cc index 7cd7fdc06f..006f9675b3 100644 --- a/gtk2_ardour/export_session_dialog.cc +++ b/gtk2_ardour/export_session_dialog.cc @@ -21,13 +21,14 @@ #include "ardour_ui.h" #include "export_session_dialog.h" +#include "i18n.h" ExportSessionDialog::ExportSessionDialog (PublicEditor& editor) : ExportDialog(editor) { + file_frame.set_label (_("Export to File")); } - void ExportSessionDialog::export_audio_data () { diff --git a/gtk2_ardour/gain_automation_time_axis.cc b/gtk2_ardour/gain_automation_time_axis.cc index c1261fdf23..9890854d4b 100644 --- a/gtk2_ardour/gain_automation_time_axis.cc +++ b/gtk2_ardour/gain_automation_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <ardour/curve.h> diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc index 6a1a41418d..5d5fb5a1d3 100644 --- a/gtk2_ardour/gain_meter.cc +++ b/gtk2_ardour/gain_meter.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <limits.h> @@ -106,11 +105,11 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s) gain_display_box.pack_start (gain_display, true, true); peak_display.set_name ("MixerStripPeakDisplay"); - peak_display.set_has_frame (false); - peak_display.set_editable (false); +// peak_display.set_has_frame (false); +// peak_display.set_editable (false); set_size_request_to_display_given_text (peak_display, "-80.g", 2, 6); /* note the descender */ max_peak = minus_infinity(); - peak_display.set_text (_("-inf")); + peak_display.set_label (_("-inf")); peak_display.unset_flags (Gtk::CAN_FOCUS); meter_metric_area.set_name ("MeterMetricsStrip"); @@ -157,7 +156,7 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s) using namespace Menu_Helpers; - gain_astate_menu.items().push_back (MenuElem (_("Off"), + gain_astate_menu.items().push_back (MenuElem (_("Manual"), bind (mem_fun (*_io, &IO::set_gain_automation_state), (AutoState) Off))); gain_astate_menu.items().push_back (MenuElem (_("Play"), bind (mem_fun (*_io, &IO::set_gain_automation_state), (AutoState) Play))); @@ -227,11 +226,11 @@ GainMeter::render_metrics (Gtk::Widget& w) Glib::RefPtr<Gdk::Window> win (w.get_window()); Glib::RefPtr<Gdk::GC> fg_gc (w.get_style()->get_fg_gc (Gtk::STATE_NORMAL)); Glib::RefPtr<Gdk::GC> bg_gc (w.get_style()->get_bg_gc (Gtk::STATE_NORMAL)); - gint x, y, width, height, depth; + gint width, height; int db_points[] = { -50, -40, -20, -30, -10, -3, 0, 4 }; char buf[32]; - win->get_geometry (x, y, width, height, depth); + win->get_size (width, height); Glib::RefPtr<Gdk::Pixmap> pixmap = Gdk::Pixmap::create (win, width, height); @@ -270,9 +269,9 @@ GainMeter::meter_metrics_expose (GdkEventExpose *ev) Glib::RefPtr<Gdk::GC> bg_gc (meter_metric_area.get_style()->get_bg_gc (Gtk::STATE_NORMAL)); GdkRectangle base_rect; GdkRectangle draw_rect; - gint x, y, width, height, depth; + gint width, height; - win->get_geometry (x, y, width, height, depth); + win->get_size (width, height); base_rect.width = width; base_rect.height = height; @@ -320,7 +319,7 @@ GainMeter::update_meters () if ((*i).packed) { peak = _io->peak_input_power (n); - (*i).meter->set (log_meter (peak), peak); + (*i).meter->set (log_meter (peak)); mpeak = _io->max_peak_power(n); @@ -328,10 +327,10 @@ GainMeter::update_meters () max_peak = mpeak; /* set peak display */ if (max_peak <= -200.0f) { - peak_display.set_text (_("-inf")); + peak_display.set_label (_("-inf")); } else { snprintf (buf, sizeof(buf), "%.1f", max_peak); - peak_display.set_text (buf); + peak_display.set_label (buf); } if (max_peak >= 0.0f) { @@ -448,6 +447,13 @@ GainMeter::setup_meters () } } +int +GainMeter::get_gm_width () +{ + Gtk::Requisition sz = hbox.size_request (); + return sz.width; +} + bool GainMeter::gain_key_press (GdkEventKey* ev) { @@ -487,7 +493,7 @@ GainMeter::reset_peak_display () } max_peak = -INFINITY; - peak_display.set_text (_("-Inf")); + peak_display.set_label (_("-Inf")); peak_display.set_name ("MixerStripPeakDisplay"); } @@ -509,7 +515,7 @@ GainMeter::meter_button_release (GdkEventButton* ev, uint32_t which) case 1: meters[which].meter->clear(); max_peak = minus_infinity(); - peak_display.set_text (_("-inf")); + peak_display.set_label (_("-inf")); peak_display.set_name ("MixerStripPeakDisplay"); break; @@ -838,7 +844,7 @@ GainMeter::_astate_string (AutoState state, bool shrt) switch (state) { case Off: - sstr = (shrt ? "O" : _("O")); + sstr = (shrt ? "M" : _("M")); break; case Play: sstr = (shrt ? "P" : _("P")); diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h index 88105ce846..a24b93c034 100644 --- a/gtk2_ardour/gain_meter.h +++ b/gtk2_ardour/gain_meter.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_gain_meter_h__ @@ -70,6 +69,8 @@ class GainMeter : public Gtk::VBox void set_width (Width); void setup_meters (); + int get_gm_width (); + void set_meter_strip_name (const char * name); void set_fader_name (const char * name); @@ -85,7 +86,7 @@ class GainMeter : public Gtk::VBox Gtkmm2ext::VSliderController *gain_slider; Gtk::Adjustment gain_adjustment; Gtkmm2ext::FocusEntry gain_display; - Gtk::Entry peak_display; + Gtk::Button peak_display; Gtk::HBox gain_display_box; Gtk::HBox fader_box; Gtk::DrawingArea meter_metric_area; diff --git a/gtk2_ardour/ghostregion.cc b/gtk2_ardour/ghostregion.cc index 2cd2601406..7f7d11c0be 100644 --- a/gtk2_ardour/ghostregion.cc +++ b/gtk2_ardour/ghostregion.cc @@ -69,3 +69,13 @@ GhostRegion::set_height () } } +void +GhostRegion::set_colors () +{ + for (uint32_t n=0; n < waves.size(); ++n) { + waves[n]->property_wave_color() = color_map[cGhostTrackWave]; + + waves[n]->property_clip_color() = color_map[cGhostTrackWaveClip]; + waves[n]->property_zero_color() = color_map[cGhostTrackZeroLine]; + } +} diff --git a/gtk2_ardour/ghostregion.h b/gtk2_ardour/ghostregion.h index 0255035ea1..1e32add794 100644 --- a/gtk2_ardour/ghostregion.h +++ b/gtk2_ardour/ghostregion.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_ghost_region_h__ @@ -42,6 +41,7 @@ struct GhostRegion : public sigc::trackable void set_samples_per_unit (double spu); void set_duration (double units); void set_height (); + void set_colors (); sigc::signal<void,GhostRegion*> GoingAway; }; diff --git a/gtk2_ardour/icons/crossfade_in_constant.png b/gtk2_ardour/icons/crossfade_in_constant.png Binary files differnew file mode 100644 index 0000000000..ce7d48032e --- /dev/null +++ b/gtk2_ardour/icons/crossfade_in_constant.png diff --git a/gtk2_ardour/icons/crossfade_in_dipped.png b/gtk2_ardour/icons/crossfade_in_dipped.png Binary files differnew file mode 100644 index 0000000000..667e9d9c06 --- /dev/null +++ b/gtk2_ardour/icons/crossfade_in_dipped.png diff --git a/gtk2_ardour/icons/crossfade_in_fast-cut.png b/gtk2_ardour/icons/crossfade_in_fast-cut.png Binary files differnew file mode 100644 index 0000000000..a55dab560a --- /dev/null +++ b/gtk2_ardour/icons/crossfade_in_fast-cut.png diff --git a/gtk2_ardour/icons/crossfade_in_slow-cut.png b/gtk2_ardour/icons/crossfade_in_slow-cut.png Binary files differnew file mode 100644 index 0000000000..fe76c3bc89 --- /dev/null +++ b/gtk2_ardour/icons/crossfade_in_slow-cut.png diff --git a/gtk2_ardour/icons/crossfade_in_slow-fade.png b/gtk2_ardour/icons/crossfade_in_slow-fade.png Binary files differnew file mode 100644 index 0000000000..a105967da1 --- /dev/null +++ b/gtk2_ardour/icons/crossfade_in_slow-fade.png diff --git a/gtk2_ardour/icons/crossfade_in_transition.png b/gtk2_ardour/icons/crossfade_in_transition.png Binary files differnew file mode 100644 index 0000000000..482e8a63bd --- /dev/null +++ b/gtk2_ardour/icons/crossfade_in_transition.png diff --git a/gtk2_ardour/icons/crossfade_out_constant.png b/gtk2_ardour/icons/crossfade_out_constant.png Binary files differnew file mode 100644 index 0000000000..602ba806c5 --- /dev/null +++ b/gtk2_ardour/icons/crossfade_out_constant.png diff --git a/gtk2_ardour/icons/crossfade_out_dipped.png b/gtk2_ardour/icons/crossfade_out_dipped.png Binary files differnew file mode 100644 index 0000000000..3f1e84c485 --- /dev/null +++ b/gtk2_ardour/icons/crossfade_out_dipped.png diff --git a/gtk2_ardour/icons/crossfade_out_fast-cut.png b/gtk2_ardour/icons/crossfade_out_fast-cut.png Binary files differnew file mode 100644 index 0000000000..33eaafe7b3 --- /dev/null +++ b/gtk2_ardour/icons/crossfade_out_fast-cut.png diff --git a/gtk2_ardour/icons/crossfade_out_slow-cut.png b/gtk2_ardour/icons/crossfade_out_slow-cut.png Binary files differnew file mode 100644 index 0000000000..fd6260228e --- /dev/null +++ b/gtk2_ardour/icons/crossfade_out_slow-cut.png diff --git a/gtk2_ardour/icons/crossfade_out_slow-fade.png b/gtk2_ardour/icons/crossfade_out_slow-fade.png Binary files differnew file mode 100644 index 0000000000..d752879bec --- /dev/null +++ b/gtk2_ardour/icons/crossfade_out_slow-fade.png diff --git a/gtk2_ardour/icons/crossfade_out_transition.png b/gtk2_ardour/icons/crossfade_out_transition.png Binary files differnew file mode 100644 index 0000000000..a48e645fbd --- /dev/null +++ b/gtk2_ardour/icons/crossfade_out_transition.png diff --git a/gtk2_ardour/imageframe.cc b/gtk2_ardour/imageframe.cc index bc59fec2c0..7ff05ee9e9 100644 --- a/gtk2_ardour/imageframe.cc +++ b/gtk2_ardour/imageframe.cc @@ -4,7 +4,6 @@ #include "imageframe_p.h" #include <libgnomecanvasmm/private/shape_p.h> -/* $Id$ */ /* rect.c * diff --git a/gtk2_ardour/imageframe.h b/gtk2_ardour/imageframe.h index b2ff25b408..76787f8b88 100644 --- a/gtk2_ardour/imageframe.h +++ b/gtk2_ardour/imageframe.h @@ -4,7 +4,6 @@ #include <glibmm.h> -/* $Id$ */ /* rect.h * diff --git a/gtk2_ardour/imageframe_socket_handler.cc b/gtk2_ardour/imageframe_socket_handler.cc index a7f4d603a7..96b61cafdd 100644 --- a/gtk2_ardour/imageframe_socket_handler.cc +++ b/gtk2_ardour/imageframe_socket_handler.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <iostream> diff --git a/gtk2_ardour/imageframe_socket_handler.h b/gtk2_ardour/imageframe_socket_handler.h index 4dd8d69650..3a87f5bf71 100644 --- a/gtk2_ardour/imageframe_socket_handler.h +++ b/gtk2_ardour/imageframe_socket_handler.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_imageframe_socket_handler_h__ diff --git a/gtk2_ardour/imageframe_time_axis.cc b/gtk2_ardour/imageframe_time_axis.cc index ae288ec9ab..018fae6895 100644 --- a/gtk2_ardour/imageframe_time_axis.cc +++ b/gtk2_ardour/imageframe_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <string> diff --git a/gtk2_ardour/imageframe_time_axis.h b/gtk2_ardour/imageframe_time_axis.h index cefd0c5d09..4b3bf0c857 100644 --- a/gtk2_ardour/imageframe_time_axis.h +++ b/gtk2_ardour/imageframe_time_axis.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_imageframe_time_axis_h__ diff --git a/gtk2_ardour/imageframe_time_axis_group.cc b/gtk2_ardour/imageframe_time_axis_group.cc index 647d45b963..5dc76978b0 100644 --- a/gtk2_ardour/imageframe_time_axis_group.cc +++ b/gtk2_ardour/imageframe_time_axis_group.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/imageframe_time_axis_group.h b/gtk2_ardour/imageframe_time_axis_group.h index 4619ae448a..ba7790c04a 100644 --- a/gtk2_ardour/imageframe_time_axis_group.h +++ b/gtk2_ardour/imageframe_time_axis_group.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_imageframe_time_axis_group_h__ diff --git a/gtk2_ardour/imageframe_time_axis_view.cc b/gtk2_ardour/imageframe_time_axis_view.cc index 6e896ea5ec..91575f3cc5 100644 --- a/gtk2_ardour/imageframe_time_axis_view.cc +++ b/gtk2_ardour/imageframe_time_axis_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/imageframe_time_axis_view.h b/gtk2_ardour/imageframe_time_axis_view.h index d51901d4e0..45725038d1 100644 --- a/gtk2_ardour/imageframe_time_axis_view.h +++ b/gtk2_ardour/imageframe_time_axis_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_imageframe_time_axis_view_h__ diff --git a/gtk2_ardour/imageframe_view.cc b/gtk2_ardour/imageframe_view.cc index 2c943dcae4..f8bba3aa84 100644 --- a/gtk2_ardour/imageframe_view.cc +++ b/gtk2_ardour/imageframe_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/imageframe_view.h b/gtk2_ardour/imageframe_view.h index 71d9268fef..db83264e46 100644 --- a/gtk2_ardour/imageframe_view.h +++ b/gtk2_ardour/imageframe_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_imageframe_view_h__ diff --git a/gtk2_ardour/io_selector.cc b/gtk2_ardour/io_selector.cc index ac1028c0c4..b097e8966b 100644 --- a/gtk2_ardour/io_selector.cc +++ b/gtk2_ardour/io_selector.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <map> @@ -779,14 +778,15 @@ PortInsertWindow::PortInsertWindow (Session& sess, boost::shared_ptr<PortInsert> rescan_button.signal_clicked().connect (mem_fun(*this, &PortInsertWindow::rescan)); signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window *> (this))); - pi->GoingAway.connect (mem_fun(*this, &PortInsertWindow::plugin_going_away)); + + going_away_connection = pi->GoingAway.connect (mem_fun(*this, &PortInsertWindow::plugin_going_away)); } void PortInsertWindow::plugin_going_away () { ENSURE_GUI_THREAD(mem_fun(*this, &PortInsertWindow::plugin_going_away)); - + going_away_connection.disconnect (); delete_when_idle (this); } diff --git a/gtk2_ardour/io_selector.h b/gtk2_ardour/io_selector.h index 288edd0be5..957db11a2b 100644 --- a/gtk2_ardour/io_selector.h +++ b/gtk2_ardour/io_selector.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_ui_io_selector_h__ @@ -199,6 +198,7 @@ class PortInsertWindow : public ArdourDialog void accept (); void plugin_going_away (); + sigc::connection going_away_connection; }; diff --git a/gtk2_ardour/keyboard.cc b/gtk2_ardour/keyboard.cc index a6a14ad55b..83918da918 100644 --- a/gtk2_ardour/keyboard.cc +++ b/gtk2_ardour/keyboard.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include "ardour_ui.h" @@ -25,8 +24,6 @@ #include <ctype.h> -#include <X11/keysymdef.h> -#include <gdk/gdkx.h> #include <gdk/gdkkeysyms.h> #include <pbd/error.h> @@ -49,14 +46,13 @@ guint Keyboard::snap_mod = GDK_MOD3_MASK; uint32_t Keyboard::Control = GDK_CONTROL_MASK; uint32_t Keyboard::Shift = GDK_SHIFT_MASK; uint32_t Keyboard::Alt = GDK_MOD1_MASK; -uint32_t Keyboard::Meta = GDK_MOD2_MASK; +uint32_t Keyboard::Meta; Keyboard* Keyboard::_the_keyboard = 0; /* set this to initially contain the modifiers we care about, then track changes in ::set_edit_modifier() etc. */ -GdkModifierType Keyboard::RelevantModifierKeyMask = - GdkModifierType (GDK_SHIFT_MASK|GDK_CONTROL_MASK|GDK_MOD1_MASK|GDK_MOD3_MASK); +GdkModifierType Keyboard::RelevantModifierKeyMask; Keyboard::Keyboard () @@ -65,9 +61,19 @@ Keyboard::Keyboard () _the_keyboard = this; } - collecting_prefix = false; + RelevantModifierKeyMask = (GdkModifierType) gtk_accelerator_get_default_mod_mask (); - get_modifier_masks (); + /* figure out Meta */ + + uint32_t possible_meta[] = { GDK_MOD2_MASK, GDK_MOD3_MASK, GDK_MOD4_MASK, GDK_MOD5_MASK, 0}; + int i; + + for (i = 0; possible_meta[i]; ++i) { + if (!(RelevantModifierKeyMask & possible_meta[i])) { + break; + } + } + Meta = possible_meta[i]; snooper_id = gtk_key_snooper_install (_snooper, (gpointer) this); @@ -78,7 +84,6 @@ Keyboard::Keyboard () Keyboard::~Keyboard () { gtk_key_snooper_remove (snooper_id); - delete [] modifier_masks; } XMLNode& @@ -158,60 +163,6 @@ Keyboard::snooper (GtkWidget *widget, GdkEventKey *event) } if (event->type == GDK_KEY_PRESS) { - bool was_prefix = false; - - if (collecting_prefix) { - switch (keyval) { - case GDK_0: - current_prefix += '0'; - was_prefix = true; - break; - case GDK_1: - current_prefix += '1'; - was_prefix = true; - break; - case GDK_2: - current_prefix += '2'; - was_prefix = true; - break; - case GDK_3: - current_prefix += '3'; - was_prefix = true; - break; - case GDK_4: - current_prefix += '4'; - was_prefix = true; - break; - case GDK_5: - current_prefix += '5'; - was_prefix = true; - break; - case GDK_6: - current_prefix += '6'; - was_prefix = true; - break; - case GDK_7: - current_prefix += '7'; - was_prefix = true; - break; - case GDK_8: - current_prefix += '8'; - was_prefix = true; - break; - case GDK_9: - current_prefix += '9'; - was_prefix = true; - break; - case GDK_period: - current_prefix += '.'; - was_prefix = true; - break; - default: - was_prefix = false; - collecting_prefix = false; - break; - } - } if (find (state.begin(), state.end(), keyval) == state.end()) { state.push_back (keyval); @@ -238,441 +189,10 @@ Keyboard::key_is_down (uint32_t keyval) return find (state.begin(), state.end(), keyval) != state.end(); } -Keyboard::State -Keyboard::translate_key_name (const string& name) - -{ - string::size_type i; - string::size_type len; - bool at_end; - string::size_type hyphen; - string keyname; - string whatevers_left; - State result; - guint keycode; - - i = 0; - len = name.length(); - at_end = (len == 0); - - while (!at_end) { - - whatevers_left = name.substr (i); - - if ((hyphen = whatevers_left.find_first_of ('-')) == string::npos) { - - /* no hyphen, so use the whole thing */ - - keyname = whatevers_left; - at_end = true; - - } else { - - /* There is a hyphen. */ - - if (hyphen == 0 && whatevers_left.length() == 1) { - /* its the first and only character */ - - keyname = "-"; - at_end = true; - - } else { - - /* use the text before the hypen */ - - keyname = whatevers_left.substr (0, hyphen); - - if (hyphen == len - 1) { - at_end = true; - } else { - i += hyphen + 1; - at_end = (i >= len); - } - } - } - - if (keyname.length() == 1 && isupper (keyname[0])) { - result.push_back (GDK_Shift_L); - } - - if ((keycode = gdk_keyval_from_name(get_real_keyname (keyname).c_str())) == GDK_VoidSymbol) { - error << string_compose(_("KeyboardTarget: keyname \"%1\" is unknown."), keyname) << endmsg; - result.clear(); - return result; - } - - result.push_back (keycode); - } - - sort (result.begin(), result.end()); - - return result; -} - -string -Keyboard::get_real_keyname (const string& name) -{ - - if (name == "Control" || name == "Ctrl") { - return "Control_L"; - } - if (name == "Meta" || name == "MetaL") { - return "Meta_L"; - } - if (name == "MetaR") { - return "Meta_R"; - } - if (name == "Alt" || name == "AltL") { - return "Alt_L"; - } - if (name == "AltR") { - return "Alt_R"; - } - if (name == "Shift") { - return "Shift_L"; - } - if (name == "Shift_R") { - return "Shift_L"; - } - if (name == " ") { - return "space"; - } - if (name == "!") { - return "exclam"; - } - if (name == "\"") { - return "quotedbl"; - } - if (name == "#") { - return "numbersign"; - } - if (name == "$") { - return "dollar"; - } - if (name == "%") { - return "percent"; - } - if (name == "&") { - return "ampersand"; - } - if (name == "'") { - return "apostrophe"; - } - if (name == "'") { - return "quoteright"; - } - if (name == "(") { - return "parenleft"; - } - if (name == ")") { - return "parenright"; - } - if (name == "*") { - return "asterisk"; - } - if (name == "+") { - return "plus"; - } - if (name == ",") { - return "comma"; - } - if (name == "-") { - return "minus"; - } - if (name == ".") { - return "period"; - } - if (name == "/") { - return "slash"; - } - if (name == ":") { - return "colon"; - } - if (name == ";") { - return "semicolon"; - } - if (name == "<") { - return "less"; - } - if (name == "=") { - return "equal"; - } - if (name == ">") { - return "greater"; - } - if (name == "?") { - return "question"; - } - if (name == "@") { - return "at"; - } - if (name == "[") { - return "bracketleft"; - } - if (name == "\\") { - return "backslash"; - } - if (name == "]") { - return "bracketright"; - } - if (name == "^") { - return "asciicircum"; - } - if (name == "_") { - return "underscore"; - } - if (name == "`") { - return "grave"; - } - if (name == "`") { - return "quoteleft"; - } - if (name == "{") { - return "braceleft"; - } - if (name == "|") { - return "bar"; - } - if (name == "}") { - return "braceright"; - } - if (name == "~") { - return "asciitilde"; - } - - return name; -} - -int -Keyboard::get_prefix (float& val, bool& was_floating) -{ - if (current_prefix.length()) { - if (current_prefix.find ('.') != string::npos) { - was_floating = true; - } else { - was_floating = false; - } - if (sscanf (current_prefix.c_str(), "%f", &val) == 1) { - return 0; - } - current_prefix = ""; - } - return -1; -} - -void -Keyboard::start_prefix () -{ - collecting_prefix = true; - current_prefix = ""; -} - -void -Keyboard::clear_modifier_state () -{ - modifier_mask = 0; -} - -void -Keyboard::check_modifier_state () -{ - char keys[32]; - int i, j; - - clear_modifier_state (); - XQueryKeymap (GDK_DISPLAY(), keys); - - for (i = 0; i < 32; ++i) { - for (j = 0; j < 8; ++j) { - - if (keys[i] & (1<<j)) { - modifier_mask |= modifier_masks[(i*8)+j]; - } - } - } -} - -void -Keyboard::check_meta_numlock (char keycode, guint mod, string modname) -{ - guint alternate_meta_mod; - string alternate_meta_modname; - - if (mod == Meta) { - - guint keysym = XKeycodeToKeysym (GDK_DISPLAY(), keycode, 0); - - if (keysym == GDK_Num_Lock) { - - switch (mod) { - case GDK_MOD2_MASK: - alternate_meta_mod = GDK_MOD3_MASK; - alternate_meta_modname = "Mod3"; - break; - case GDK_MOD3_MASK: - alternate_meta_mod = GDK_MOD2_MASK; - alternate_meta_modname = "Mod2"; - break; - case GDK_MOD4_MASK: - alternate_meta_mod = GDK_MOD2_MASK; - alternate_meta_modname = "Mod2"; - break; - case GDK_MOD5_MASK: - alternate_meta_mod = GDK_MOD2_MASK; - alternate_meta_modname = "Mod2"; - break; - default: - error << string_compose (_("Your system is completely broken - NumLock uses \"%1\"" - "as its modifier. This is madness - see the man page " - "for xmodmap to find out how to fix this."), - modname) - << endmsg; - return; - } - - warning << string_compose (_("Your system generates \"%1\" when the NumLock key " - "is pressed. This can cause problems when editing " - "so Ardour will use %2 to mean Meta rather than %1"), - modname, alternate_meta_modname) - << endmsg; - - set_meta_modifier (alternate_meta_mod); - } - } -} - -void -Keyboard::get_modifier_masks () -{ - XModifierKeymap *modifiers; - KeyCode *keycode; - int i; - int bound; - - XDisplayKeycodes (GDK_DISPLAY(), &min_keycode, &max_keycode); - - /* This function builds a lookup table to provide rapid answers to - the question: what, if any, modmask, is associated with a given - keycode ? - */ - - modifiers = XGetModifierMapping (GDK_DISPLAY()); - - modifier_masks = new int32_t [max_keycode+1]; - - keycode = modifiers->modifiermap; - - for (i = 0; i < modifiers->max_keypermod; ++i) { /* shift */ - if (*keycode) { - modifier_masks[*keycode] = GDK_SHIFT_MASK; - // cerr << "Shift = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - } - keycode++; - } - - for (i = 0; i < modifiers->max_keypermod; ++i) keycode++; /* skip lock */ - - for (i = 0; i < modifiers->max_keypermod; ++i) { /* control */ - if (*keycode) { - modifier_masks[*keycode] = GDK_CONTROL_MASK; - // cerr << "Control = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - } - keycode++; - } - - bound = 0; - for (i = 0; i < modifiers->max_keypermod; ++i) { /* mod 1 */ - if (*keycode) { - modifier_masks[*keycode] = GDK_MOD1_MASK; - // cerr << "Mod1 = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - bound++; - } - keycode++; - } -#ifdef WARN_ABOUT_DUPLICATE_MODIFIERS - if (bound > 1) { - warning << string_compose (_("You have %1 keys bound to \"mod1\""), bound) << endmsg; - } -#endif - bound = 0; - for (i = 0; i < modifiers->max_keypermod; ++i) { /* mod2 */ - if (*keycode) { - modifier_masks[*keycode] = GDK_MOD2_MASK; - check_meta_numlock (*keycode, GDK_MOD2_MASK, "Mod2"); - //cerr << "Mod2 = " << std::hex << (int) *keycode << std::dec << " = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - bound++; - } - keycode++; - } -#ifdef WARN_ABOUT_DUPLICATE_MODIFIERS - if (bound > 1) { - warning << string_compose (_("You have %1 keys bound to \"mod2\""), bound) << endmsg; - } -#endif - bound = 0; - for (i = 0; i < modifiers->max_keypermod; ++i) { /* mod3 */ - if (*keycode) { - modifier_masks[*keycode] = GDK_MOD3_MASK; - check_meta_numlock (*keycode, GDK_MOD3_MASK, "Mod3"); - // cerr << "Mod3 = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - bound++; - } - keycode++; - } -#ifdef WARN_ABOUT_DUPLICATE_MODIFIERS - if (bound > 1) { - warning << string_compose (_("You have %1 keys bound to \"mod3\""), bound) << endmsg; - } -#endif - bound = 0; - for (i = 0; i < modifiers->max_keypermod; ++i) { /* mod 4 */ - if (*keycode) { - modifier_masks[*keycode] = GDK_MOD4_MASK; - check_meta_numlock (*keycode, GDK_MOD4_MASK, "Mod4"); - // cerr << "Mod4 = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - bound++; - } - keycode++; - } -#ifdef WARN_ABOUT_DUPLICATE_MODIFIERS - if (bound > 1) { - warning << string_compose (_("You have %1 keys bound to \"mod4\""), bound) << endmsg; - } -#endif - bound = 0; - for (i = 0; i < modifiers->max_keypermod; ++i) { /* mod 5 */ - if (*keycode) { - modifier_masks[*keycode] = GDK_MOD5_MASK; - check_meta_numlock (*keycode, GDK_MOD5_MASK, "Mod5"); - // cerr << "Mod5 = " << XKeysymToString (XKeycodeToKeysym (GDK_DISPLAY(), *keycode, 0)) << endl; - bound++; - } - keycode++; - } -#ifdef WARN_ABOUT_DUPLICATE_MODIFIERS - if (bound > 1) { - warning << string_compose (_("You have %1 keys bound to \"mod5\""), bound) << endmsg; - } -#endif - - XFreeModifiermap (modifiers); -} - bool Keyboard::enter_window (GdkEventCrossing *ev, Gtk::Window* win) { - switch (ev->detail) { - case GDK_NOTIFY_INFERIOR: - break; - - case GDK_NOTIFY_VIRTUAL: - /* fallthru */ - - default: - check_modifier_state (); - } - - return FALSE; + return false; } bool @@ -697,10 +217,9 @@ Keyboard::leave_window (GdkEventCrossing *ev, Gtk::Window* win) cerr << "clearing current target\n"; } state.clear (); - clear_modifier_state (); } - return FALSE; + return false; } void @@ -754,6 +273,7 @@ Keyboard::set_snap_modifier (guint mod) bool Keyboard::is_edit_event (GdkEventButton *ev) { + return (ev->type == GDK_BUTTON_PRESS || ev->type == GDK_BUTTON_RELEASE) && (ev->button == Keyboard::edit_button()) && ((ev->state & RelevantModifierKeyMask) == Keyboard::edit_modifier()); diff --git a/gtk2_ardour/keyboard.h b/gtk2_ardour/keyboard.h index c13b06afe5..ec55dc54db 100644 --- a/gtk2_ardour/keyboard.h +++ b/gtk2_ardour/keyboard.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_keyboard_h__ @@ -45,13 +44,6 @@ class Keyboard : public sigc::trackable, Stateful int set_state (const XMLNode&); typedef vector<uint32_t> State; - - int get_prefix(float&, bool& was_floating); - void start_prefix (); - - static State translate_key_name (const string&); - static string get_real_keyname (const string& name); - typedef uint32_t ModifierMask; static uint32_t Control; @@ -101,17 +93,8 @@ class Keyboard : public sigc::trackable, Stateful private: static Keyboard* _the_keyboard; - bool _queue_events; - bool _flush_queue; - guint snooper_id; State state; - bool collecting_prefix; - string current_prefix; - int* modifier_masks; - int modifier_mask; - int min_keycode; - int max_keycode; static guint edit_but; static guint edit_mod; @@ -121,13 +104,6 @@ class Keyboard : public sigc::trackable, Stateful static gint _snooper (GtkWidget*, GdkEventKey*, gpointer); gint snooper (GtkWidget*, GdkEventKey*); - - void queue_event (GdkEventKey*); - void get_modifier_masks (); - void check_modifier_state (); - void clear_modifier_state (); - - void check_meta_numlock (char keycode, guint mod, string modname); }; #endif /* __ardour_keyboard_h__ */ diff --git a/gtk2_ardour/keyboard_target.cc b/gtk2_ardour/keyboard_target.cc deleted file mode 100644 index 71e4e9652e..0000000000 --- a/gtk2_ardour/keyboard_target.cc +++ /dev/null @@ -1,258 +0,0 @@ -/* - Copyright (C) 2001-2002 Paul Davis - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ -*/ - -#include <gdk/gdkkeysyms.h> -#include <pbd/error.h> - -#include "keyboard.h" -#include "keyboard_target.h" - -#include "i18n.h" - -using std::pair; - -KeyboardTarget::ActionMap KeyboardTarget::actions; - -KeyboardTarget::KeyboardTarget (Gtk::Window& win, string name) - : _window (win) -{ - _name = name; - Keyboard::the_keyboard().register_target (this); -} - -KeyboardTarget::~KeyboardTarget () -{ - GoingAway (); -} - -void -KeyboardTarget::key_release_event (GdkEventKey *event, Keyboard::State& state) -{ - // relax -} - -void -KeyboardTarget::key_press_event (GdkEventKey *event, Keyboard::State& state, bool& handled) -{ - KeyMap::iterator result; - - if ((result = keymap.find (state)) != keymap.end()) { - (*result).second (); - handled = true; - } -} - -int -KeyboardTarget::add_binding (string keystring, string action) -{ - KeyMap::iterator existing; - Keyboard::State state; - KeyAction key_action; - - state = Keyboard::translate_key_name (keystring); - - if (keystring.length() == 0) { - error << _("KeyboardTarget: empty string passed to add_binding.") - << endmsg; - return -1; - } - - if (state.size() == 0) { - error << string_compose(_("KeyboardTarget: no translation found for \"%1\""), keystring) << endmsg; - return -1; - } - - if (find_action (action, key_action)) { - error << string_compose(_("KeyboardTarget: unknown action \"%1\""), action) << endmsg; - return -1; - } - - /* remove any existing binding */ - - if ((existing = keymap.find (state)) != keymap.end()) { - keymap.erase (existing); - } - - keymap.insert (pair<Keyboard::State,KeyAction> (state, key_action)); - bindings.insert (pair<string,string> (keystring, action)); - return 0; -} - -string -KeyboardTarget::get_binding (string name) -{ - BindingMap::iterator i; - - for (i = bindings.begin(); i != bindings.end(); ++i) { - - if (i->second == name) { - - /* convert keystring to GTK format */ - - string str = i->first; - string gtkstr; - string::size_type p; - - while (1) { - - if ((p = str.find ('-')) == string::npos || (p == str.length() - 1)) { - break; - } - - gtkstr += '<'; - gtkstr += str.substr (0, p); - gtkstr += '>'; - - str = str.substr (p+1); - - } - - gtkstr += str; - - if (gtkstr.length() == 0) { - return i->first; - } - - return gtkstr; - } - } - return string (); -} - -void -KeyboardTarget::show_all_actions () -{ - ActionMap::iterator i; - - for (i = actions.begin(); i != actions.end(); ++i) { - cout << i->first << endl; - } -} - -int -KeyboardTarget::add_action (string name, KeyAction action) -{ - pair<string,KeyAction> newpair; - pair<ActionMap::iterator,bool> result; - newpair.first = name; - newpair.second = action; - - result = actions.insert (newpair); - return result.second ? 0 : -1; -} - -int -KeyboardTarget::find_action (string name, KeyAction& action) -{ - map<string,KeyAction>::iterator i; - - if ((i = actions.find (name)) != actions.end()) { - action = i->second; - return 0; - } else { - return -1; - } -} - -int -KeyboardTarget::remove_action (string name) -{ - map<string,KeyAction>::iterator i; - - if ((i = actions.find (name)) != actions.end()) { - actions.erase (i); - return 0; - } else { - return -1; - } -} - -XMLNode& -KeyboardTarget::get_binding_state () const -{ - XMLNode *node = new XMLNode ("context"); - BindingMap::const_iterator i; - - node->add_property ("name", _name); - - for (i = bindings.begin(); i != bindings.end(); ++i) { - XMLNode *child; - - child = new XMLNode ("binding"); - child->add_property ("keys", i->first); - child->add_property ("action", i->second); - node->add_child_nocopy (*child); - } - - return *node; -} - -int -KeyboardTarget::set_binding_state (const XMLNode& node) -{ - XMLNodeList nlist = node.children(); - XMLNodeConstIterator niter; - XMLNode *child_node; - - bindings.clear (); - keymap.clear (); - - for (niter = nlist.begin(); niter != nlist.end(); ++niter) { - child_node = *niter; - - if (child_node->name() == "context") { - XMLProperty *prop; - - if ((prop = child_node->property ("name")) != 0) { - if (prop->value() == _name) { - return load_bindings (*child_node); - } - } - } - } - - return 0; -} - -int -KeyboardTarget::load_bindings (const XMLNode& node) -{ - XMLNodeList nlist = node.children(); - XMLNodeConstIterator niter; - - for (niter = nlist.begin(); niter != nlist.end(); ++niter) { - XMLProperty *keys; - XMLProperty *action; - - keys = (*niter)->property ("keys"); - action = (*niter)->property ("action"); - - if (!keys || !action) { - error << _("misformed binding node - ignored") << endmsg; - continue; - } - - add_binding (keys->value(), action->value()); - - } - - return 0; -} - diff --git a/gtk2_ardour/keyboard_target.h b/gtk2_ardour/keyboard_target.h deleted file mode 100644 index f542261b54..0000000000 --- a/gtk2_ardour/keyboard_target.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - Copyright (C) 2001 Paul Davis - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ -*/ - -#ifndef __ardour_keyboard_target_h__ -#define __ardour_keyboard_target_h__ - -#include <map> -#include <string> -#include <sigc++/signal.h> -#include <sigc++/slot.h> -#include <gdk/gdk.h> -#include <pbd/xml++.h> - -#include "keyboard.h" - -namespace Gtk { - class Window; -} - -class KeyboardTarget -{ - public: - KeyboardTarget(Gtk::Window& w, std::string name); - virtual ~KeyboardTarget(); - - sigc::signal<void> Hiding; - sigc::signal<void> GoingAway; - - typedef sigc::slot<void> KeyAction; - - std::string name() const { return _name; } - - void key_press_event (GdkEventKey *, Keyboard::State&, bool& handled); - void key_release_event (GdkEventKey *, Keyboard::State&); - - int add_binding (std::string keys, std::string name); - std::string get_binding (std::string name); /* returns keys bound to name */ - - XMLNode& get_binding_state () const; - int set_binding_state (const XMLNode&); - - static int32_t add_action (std::string, KeyAction); - static int32_t find_action (std::string, KeyAction&); - static int32_t remove_action (std::string); - static void show_all_actions(); - - Gtk::Window& window() const { return _window; } - - protected: - typedef std::map<Keyboard::State,KeyAction> KeyMap; - typedef std::map<std::string,std::string> BindingMap; - - KeyMap keymap; - BindingMap bindings; - - private: - typedef map<std::string,KeyAction> ActionMap; - static ActionMap actions; - std::string _name; - Gtk::Window& _window; - - int load_bindings (const XMLNode&); -}; - -#endif /* __ardour_keyboard_target_h__ */ - diff --git a/gtk2_ardour/ladspa_pluginui.cc b/gtk2_ardour/ladspa_pluginui.cc index b8d1fb6a88..0de6f50751 100644 --- a/gtk2_ardour/ladspa_pluginui.cc +++ b/gtk2_ardour/ladspa_pluginui.cc @@ -292,12 +292,14 @@ LadspaPluginUI::ControlUI::ControlUI () : automate_button (X_("")) // force creation of a label { automate_button.set_name ("PluginAutomateButton"); - ARDOUR_UI::instance()->tooltips().set_tip (automate_button, - _("Automation control")); + ARDOUR_UI::instance()->tooltips().set_tip (automate_button, _("Automation control")); - /* don't fix the height, it messes up the bar controllers */ + /* XXX translators: use a string here that will be at least as long + as the longest automation label (see ::automation_state_changed() + below). be sure to include a descender. + */ - set_size_request_to_display_given_text (automate_button, X_("lngnuf"), 2, 2); + set_size_request_to_display_given_text (*automate_button.get_child(), _("Mgnual"), 5, 5); ignore_change = 0; display = 0; @@ -327,7 +329,7 @@ LadspaPluginUI::automation_state_changed (ControlUI* cui) switch (insert->get_port_automation_state (cui->port_index) & (Off|Play|Touch|Write)) { case Off: - cui->automate_button.set_label (_("Off")); + cui->automate_button.set_label (_("Manual")); break; case Play: cui->automate_button.set_label (_("Play")); @@ -377,6 +379,8 @@ LadspaPluginUI::build_control_ui (guint32 port_index, PBD::Controllable* mcontro control_ui->set_spacing (5); + Gtk::Requisition req (control_ui->automate_button.size_request()); + if (plugin->parameter_is_input (port_index)) { boost::shared_ptr<LadspaPlugin> lp; @@ -455,8 +459,7 @@ LadspaPluginUI::build_control_ui (guint32 port_index, PBD::Controllable* mcontro sigc::slot<void,char*,uint32_t> pslot = sigc::bind (mem_fun(*this, &LadspaPluginUI::print_parameter), (uint32_t) port_index); control_ui->control = new BarController (*control_ui->adjustment, *mcontrol, pslot); - // should really match the height of the text in the automation button+label - control_ui->control->set_size_request (200, 22); + control_ui->control->set_size_request (200, req.height); control_ui->control->set_name (X_("PluginSlider")); control_ui->control->set_style (BarController::LeftToRight); control_ui->control->set_use_parent (true); @@ -570,7 +573,7 @@ LadspaPluginUI::astate_clicked (ControlUI* cui, uint32_t port) MenuList& items (automation_menu->items()); items.clear (); - items.push_back (MenuElem (_("Off"), + items.push_back (MenuElem (_("Manual"), bind (mem_fun(*this, &LadspaPluginUI::set_automation_state), (AutoState) Off, cui))); items.push_back (MenuElem (_("Play"), bind (mem_fun(*this, &LadspaPluginUI::set_automation_state), (AutoState) Play, cui))); diff --git a/gtk2_ardour/location_ui.cc b/gtk2_ardour/location_ui.cc index b77c3a5561..faf986a2d1 100644 --- a/gtk2_ardour/location_ui.cc +++ b/gtk2_ardour/location_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> @@ -23,6 +22,7 @@ #include <gtkmm2ext/utils.h> #include <gtkmm2ext/stop_signal.h> +#include <gtkmm2ext/window_title.h> #include <ardour/utils.h> #include <ardour/configuration.h> @@ -567,13 +567,16 @@ LocationEditRow::flags_changed (ARDOUR::Location *loc, void *src) } LocationUI::LocationUI () - : ArdourDialog ("location dialog"), + : ArdourDialog ("locations dialog"), add_location_button (_("Add New Location")), add_range_button (_("Add New Range")) { i_am_the_modifier = 0; + + WindowTitle title(Glib::get_application_name()); + title += _("Locations"); - set_title(_("ardour: locations")); + set_title(title.get_string()); set_wmclass(X_("ardour_locations"), "Ardour"); set_name ("LocationWindow"); diff --git a/gtk2_ardour/location_ui.h b/gtk2_ardour/location_ui.h index 580d47ff5d..51daa6814d 100644 --- a/gtk2_ardour/location_ui.h +++ b/gtk2_ardour/location_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_location_ui_h__ @@ -32,7 +31,6 @@ #include <ardour/session.h> #include "ardour_dialog.h" -#include "keyboard_target.h" namespace ARDOUR { class LocationStack; diff --git a/gtk2_ardour/main.cc b/gtk2_ardour/main.cc index 2fd8e0c920..501b4912c5 100644 --- a/gtk2_ardour/main.cc +++ b/gtk2_ardour/main.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2001-2006 Paul Davis + Copyright (C) 2001-2007 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -15,16 +15,9 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ -#include <sys/types.h> -#include <sys/mman.h> -#include <sys/wait.h> -#include <cerrno> #include <cstdlib> -#include <signal.h> -#include <unistd.h> #include <sigc++/bind.h> #include <gtkmm/settings.h> @@ -64,172 +57,6 @@ extern int curvetest (string); static ARDOUR_UI *ui = 0; -static void -shutdown (int status) -{ - char* msg; - - if (status) { - - msg = _("ardour is killing itself for a clean exit\n"); - write (1, msg, strlen (msg)); - /* drastic, but perhaps necessary */ - kill (-getpgrp(), SIGKILL); - /*NOTREACHED*/ - - } else { - - if (ui) { - ui->kill(); - } - - pthread_cancel_all (); - } - - exit (status); -} - - -static void -handler (int sig) -{ - char buf[64]; - int n; - - /* XXX its doubtful that snprintf() is async-safe */ - n = snprintf (buf, sizeof(buf), _("%d(%d): received signal %d\n"), getpid(), (int) pthread_self(), sig); - write (1, buf, n); - - shutdown (1); -} - -static void * -signal_thread (void *arg) -{ - int sig; - sigset_t blocked; - - PBD::ThreadCreated (pthread_self(), X_("Signal")); - - pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, 0); - - /* find out what's blocked right now */ - - //sigprocmask (SIG_SETMASK, 0, &blocked); - if (pthread_sigmask (SIG_SETMASK, 0, &blocked)) { - cerr << "getting blocked signals failed\n"; - } - - /* wait for any of the currently blocked signals. - - According to the man page found in linux 2.6 and 2.4, sigwait() - never returns an error. This is incorrect. Checking the man - pages for some other *nix systems makes it clear that - sigwait() can return several error codes, one of which - is EINTR. This happens if the thread receives a signal - which is not in the blocked set. - - We do not expect that to happen, and if it did we should generally - exit as planned. However, under 2.6, the ptrace facility used - by gdb seems to also cause sigwait() to return with EINTR - but with a signal that sigwait cannot understand. As a result, - "sig" is set to zero, an impossible signal number. - - Handling the EINTR code makes it possible to debug - ardour on a 2.6 kernel. - - */ - - int swerr; - - again: - if ((swerr = sigwait (&blocked, &sig))) { - if (swerr == EINTR) { - goto again; - } else { - cerr << "sigwait failed with " << swerr << endl; - } - } - - cerr << "Signal " << sig << " received\n"; - - if (sig != SIGSEGV) { - - /* unblock signals so we can see them during shutdown. - this will help prod developers not to lose sight - of bugs that cause segfaults etc. during shutdown. - */ - - sigprocmask (SIG_UNBLOCK, &blocked, 0); - } - - shutdown (1); - /*NOTREACHED*/ - return 0; -} - -int -catch_signals (void) -{ - struct sigaction action; - pthread_t signal_thread_id; - sigset_t signals; - -// if (setpgid (0,0)) { - if (setsid ()) { - warning << string_compose (_("cannot become new process group leader (%1)"), - strerror (errno)) - << endmsg; - } - - sigemptyset (&signals); - sigaddset(&signals, SIGHUP); - sigaddset(&signals, SIGINT); - sigaddset(&signals, SIGQUIT); - sigaddset(&signals, SIGPIPE); - sigaddset(&signals, SIGTERM); - sigaddset(&signals, SIGUSR1); - sigaddset(&signals, SIGUSR2); - - - /* install a handler because otherwise - pthreads behaviour is undefined when we enter - sigwait. - */ - - action.sa_handler = handler; - action.sa_mask = signals; - action.sa_flags = SA_RESTART|SA_RESETHAND; - - for (int i = 1; i < 32; i++) { - if (sigismember (&signals, i)) { - if (sigaction (i, &action, 0)) { - cerr << string_compose (_("cannot setup signal handling for %1"), i) << endl; - return -1; - } - } - } - - /* this sets the signal mask for this and all - subsequent threads that do not reset it. - */ - - if (pthread_sigmask (SIG_SETMASK, &signals, 0)) { - cerr << string_compose (_("cannot set default signal mask (%1)"), strerror (errno)) << endl; - return -1; - } - - /* start a thread to wait for signals */ - - if (pthread_create_and_store ("signal", &signal_thread_id, 0, signal_thread, 0)) { - cerr << "cannot create signal catching thread" << endl; - return -1; - } - - pthread_detach (signal_thread_id); - return 0; -} - string which_ui_rcfile () { @@ -300,7 +127,9 @@ maybe_load_session () if (!session_name.length()) { ui->hide_splash (); if (!Config->get_no_new_session_dialog()) { - ui->new_session (); + if (!ui->new_session ()) { + return false; + } } return true; @@ -341,7 +170,9 @@ maybe_load_session () /* Show the NSD */ ui->hide_splash (); if (!Config->get_no_new_session_dialog()) { - ui->new_session (); + if (!ui->new_session ()) { + return false; + } } } @@ -406,7 +237,7 @@ int main (int argc, char *argv[]) } if (no_splash) { - cerr << _("Copyright (C) 1999-2006 Paul Davis") << endl + cerr << _("Copyright (C) 1999-2007 Paul Davis") << endl << _("Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker") << endl << endl << _("Ardour comes with ABSOLUTELY NO WARRANTY") << endl @@ -416,6 +247,10 @@ int main (int argc, char *argv[]) << endl; } + /* some GUI objects need this */ + + PBD::ID::init (); + try { ui = new ARDOUR_UI (&argc, &argv, which_ui_rcfile()); } catch (failed_constructor& err) { @@ -438,6 +273,7 @@ int main (int argc, char *argv[]) ARDOUR::init (use_vst, try_hw_optimization); setup_gtk_ardour_enums (); Config->set_current_owner (ConfigVariableBase::Interface); + ui->setup_profile (); try { engine = new ARDOUR::AudioEngine (jack_client_name); @@ -463,7 +299,14 @@ int main (int argc, char *argv[]) delete engine; ARDOUR::cleanup (); - shutdown (0); + + if (ui) { + ui->kill(); + } + + pthread_cancel_all (); + + exit (0); return 0; } diff --git a/gtk2_ardour/marker.cc b/gtk2_ardour/marker.cc index d5517b4bce..918a2786c9 100644 --- a/gtk2_ardour/marker.cc +++ b/gtk2_ardour/marker.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <sigc++/bind.h> diff --git a/gtk2_ardour/marker.h b/gtk2_ardour/marker.h index e2e4307782..7865004d54 100644 --- a/gtk2_ardour/marker.h +++ b/gtk2_ardour/marker.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_marker_h__ diff --git a/gtk2_ardour/marker_time_axis.cc b/gtk2_ardour/marker_time_axis.cc index 1c6e7af2c7..e10967d01a 100644 --- a/gtk2_ardour/marker_time_axis.cc +++ b/gtk2_ardour/marker_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <string> diff --git a/gtk2_ardour/marker_time_axis.h b/gtk2_ardour/marker_time_axis.h index e321fe4003..13288ce66f 100644 --- a/gtk2_ardour/marker_time_axis.h +++ b/gtk2_ardour/marker_time_axis.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_marker_time_axis_h__ diff --git a/gtk2_ardour/marker_time_axis_view.cc b/gtk2_ardour/marker_time_axis_view.cc index b6e87f8715..f33e0bbefc 100644 --- a/gtk2_ardour/marker_time_axis_view.cc +++ b/gtk2_ardour/marker_time_axis_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/marker_time_axis_view.h b/gtk2_ardour/marker_time_axis_view.h index 4853f29855..fd23c1de87 100644 --- a/gtk2_ardour/marker_time_axis_view.h +++ b/gtk2_ardour/marker_time_axis_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_marker_time_axis_view_h__ diff --git a/gtk2_ardour/marker_view.cc b/gtk2_ardour/marker_view.cc index f45a3ce971..d82554f891 100644 --- a/gtk2_ardour/marker_view.cc +++ b/gtk2_ardour/marker_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <gtkmm.h> diff --git a/gtk2_ardour/marker_view.h b/gtk2_ardour/marker_view.h index 04b8587649..6c49a4dc0f 100644 --- a/gtk2_ardour/marker_view.h +++ b/gtk2_ardour/marker_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_marker_view_h__ diff --git a/gtk2_ardour/meter_bridge.cc b/gtk2_ardour/meter_bridge.cc deleted file mode 100644 index 0e88eff5e0..0000000000 --- a/gtk2_ardour/meter_bridge.cc +++ /dev/null @@ -1,260 +0,0 @@ -/* - Copyright (C) 2002 Paul Davis - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ -*/ - -#include <ardour/session.h> -#include <ardour/session_route.h> -#include <ardour/audio_diskstream.h> -#include <ardour/audio_track.h> - -#include "ardour_ui.h" -#include "meter_bridge.h" -#include "meter_bridge_strip.h" -#include "utils.h" -#include "gui_thread.h" - -#include "i18n.h" - -using namespace ARDOUR; -using namespace PBD; -using namespace Gtk; -using namespace sigc; - -#define FRAME_SHADOW_STYLE Gtk::SHADOW_IN -#define FRAME_NAME "BaseFrame" - -MeterBridge::MeterBridge () - : ArdourDialog ("meter bridge"), - hadjustment (0.0, 0.0, 0.0), - vadjustment (0.0, 0.0, 0.0), - meter_viewport (hadjustment, vadjustment) -{ - meter_base.set_name ("MeterBase"); - meter_frame.set_shadow_type (FRAME_SHADOW_STYLE); - meter_frame.set_name (FRAME_NAME); - meter_frame.add (meter_base); - - upper_metering_box.set_name ("AboveMeterZone"); - lower_metering_box.set_name ("BelowMeterZone"); - - metering_vbox.set_spacing (5); - metering_vbox.set_border_width (10); - metering_vbox.pack_start (upper_metering_box, false, false); - metering_vbox.pack_start (meter_frame, false, false); - metering_vbox.pack_start (lower_metering_box, false, false); - - metering_hbox.pack_start (metering_vbox, false, false); - - meter_scroll_base.set_name ("MeterScrollBase"); - meter_scroll_base.add (metering_hbox); - - meter_viewport.add (meter_scroll_base); - meter_viewport.set_shadow_type (Gtk::SHADOW_NONE); - - meter_scroller.add (meter_viewport); - meter_scroller.set_name ("MeterBridgeWindow"); - meter_scroller.set_policy (Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC); - meter_scroller.set_border_width (5); - - add (meter_scroller); - add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK); - set_name ("MeterBridgeWindow"); - set_title (_("ardour: meter bridge")); - set_wmclass (X_("ardour_meter_bridge"), "Ardour"); - // set_policy (false, false, false); // no user resizing of any kind - - signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), static_cast<Gtk::Window*>(this))); - - metering = false; - - /* don't show: this window doesn't come up by default */ -} - -MeterBridge::~MeterBridge () -{ - stop_metering (); -} - -void -MeterBridge::set_session (Session *s) -{ - ArdourDialog::set_session (s); - - if (session) { - // XXX this stuff has to be fixed if we ever use this code again - // (refs vs. ptrs) - // session->foreach_route (this, &MeterBridge::add_route); - session->RouteAdded.connect (mem_fun(*this, &MeterBridge::add_route)); - session->GoingAway.connect (mem_fun(*this, &MeterBridge::session_gone)); - start_metering (); - } -} - -void -MeterBridge::session_gone () -{ - ENSURE_GUI_THREAD(mem_fun(*this, &MeterBridge::session_gone)); - - stop_metering (); - hide_all (); - - list<MeterBridgeStrip *>::iterator i; - - for (i = meters.begin(); i != meters.end(); ++i) { - - upper_metering_box.remove ((*i)->above_box()); - meter_base.remove ((*i)->meter_widget()); - lower_metering_box.remove ((*i)->below_box()); - -// delete (*i); - } - - meters.clear (); - - ArdourDialog::session_gone(); -} - -void -MeterBridge::add_route (ARDOUR::Route* route) -{ - ENSURE_GUI_THREAD(bind (mem_fun(*this, &MeterBridge::add_route), route)); - - uint32_t n; - char buf[32]; - - if (!session || route->hidden() || dynamic_cast<AudioTrack*>(route) == 0) { - return; - } - - n = meters.size(); - snprintf (buf, sizeof (buf), "%u", n+1); - - MeterBridgeStrip *meter = new MeterBridgeStrip (session->engine(), - *session, - *route, - buf, - session->over_length_long, - session->over_length_short, - 200); - -#define packing_factor 30 - - upper_metering_box.put (meter->above_box(), n * packing_factor, 0); - - meter_base.put (meter->meter_widget(), (n * packing_factor) + (meter->meter_width()/2), 0); - lower_metering_box.put (meter->below_box(), n * packing_factor, 0); - - meter->above_box().show_all (); - meter->meter_widget().show (); - meter->below_box().show_all (); - - route->GoingAway.connect (bind (mem_fun(*this, &MeterBridge::remove_route), route)); - meters.insert (meters.begin(), meter); - - set_default_size (30 + ((n+1) * packing_factor), 315); - - meter->set_meter_on(true); - - session->GoingAway.connect (mem_fun(*this, &MeterBridge::session_gone)); -} - -void -MeterBridge::remove_route (Route* route) -{ - ENSURE_GUI_THREAD(bind (mem_fun(*this, &MeterBridge::remove_route), route)); - list<MeterBridgeStrip *>::iterator i; - - for (i = meters.begin(); i != meters.end(); ++i) { - if (&((*i)->route()) == route) { - delete *i; - meters.erase (i); - return; - } - } -} - -void -MeterBridge::clear_all_meters () -{ - list<MeterBridgeStrip *>::iterator i; - - for (i = meters.begin(); i != meters.end(); ++i) { - (*i)->clear_meter (); - } -} - -void -MeterBridge::update () -{ - list<MeterBridgeStrip *>::iterator i; - - for (i = meters.begin(); i != meters.end(); ++i) { - (*i)->update (); - } -} - -void -MeterBridge::start_metering () -{ - list<MeterBridgeStrip *>::iterator i; - - for (i = meters.begin(); i != meters.end(); ++i) { - (*i)->set_meter_on (true); - } - metering_connection = ARDOUR_UI::instance()->RapidScreenUpdate.connect - (mem_fun(*this, &MeterBridge::update)); - metering = true; -} - -void -MeterBridge::stop_metering () -{ - list<MeterBridgeStrip *>::iterator i; - - for (i = meters.begin(); i != meters.end(); ++i) { - (*i)->set_meter_on (false); - } - metering_connection.disconnect(); - metering = false; -} - -void -MeterBridge::toggle_metering () -{ - if (!metering) { - start_metering (); - } else { - stop_metering (); - } -} - -void -MeterBridge::on_map () -{ - start_metering (); - return Window::on_map (); -} - -void -MeterBridge::on_unmap () -{ - stop_metering (); - return Window::on_unmap (); -} - diff --git a/gtk2_ardour/meter_bridge.h b/gtk2_ardour/meter_bridge.h deleted file mode 100644 index 6ceb7402fc..0000000000 --- a/gtk2_ardour/meter_bridge.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - Copyright (C) 1999-2002 Paul Davis - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ -*/ - -#ifndef __ardour_meter_bridge_h__ -#define __ardour_meter_bridge_h__ - -#include <list> - -#include <gtkmm/eventbox.h> -#include <gtkmm/viewport.h> -#include <gtkmm/scrolledwindow.h> -#include <gtkmm/box.h> -#include <gtkmm/fixed.h> -#include <gtkmm/frame.h> - -#include "keyboard_target.h" -#include "ardour_dialog.h" - -class MeterBridgeStrip; - -namespace ARDOUR { - class Session; - class Route; -} - -class MeterBridge : public ArdourDialog -{ - - public: - MeterBridge (); - ~MeterBridge (); - - void set_session (ARDOUR::Session*); - void clear_all_meters (); - void start_metering (); - void stop_metering (); - void toggle_metering (); - - protected: - void on_map (); - void on_unmap (); - - private: - /* diskstream/recorder display */ - Gtk::Adjustment hadjustment; - Gtk::Adjustment vadjustment; - Gtk::Viewport meter_viewport; - Gtk::ScrolledWindow meter_scroller; - Gtk::EventBox meter_scroll_base; - Gtk::HBox meter_scroller_hpacker; - Gtk::VBox meter_scroller_vpacker; - Gtk::VBox metering_vpacker; - Gtk::VBox metering_hpacker; - - Gtk::VBox metering_vbox; - Gtk::HBox metering_hbox; - Gtk::Fixed upper_metering_box; - Gtk::Fixed lower_metering_box; - Gtk::Fixed meter_base; - Gtk::Frame meter_frame; - - list<MeterBridgeStrip*> meters; - - bool metering; - sigc::connection metering_connection; - - void update (); - - void add_route (ARDOUR::Route*); - void remove_route (ARDOUR::Route*); - void session_gone(); /* overrides ArdourDialog::session_gone() */ -}; - -#endif /* __ardour_meter_bridge_h__ (*/ diff --git a/gtk2_ardour/meter_bridge_strip.cc b/gtk2_ardour/meter_bridge_strip.cc deleted file mode 100644 index 8a91603748..0000000000 --- a/gtk2_ardour/meter_bridge_strip.cc +++ /dev/null @@ -1,243 +0,0 @@ -/* - Copyright (C) 1999 Paul Davis - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ -*/ - -#include <cmath> -#include <ctime> -#include <sys/stat.h> - -#include <pbd/pathscanner.h> -#include <pbd/fastlog.h> -#include <gtkmm2ext/utils.h> -#include <gtkmm2ext/selector.h> - -#include <ardour/audioengine.h> -#include <ardour/route.h> -#include <ardour/port.h> -#include <ardour/utils.h> - -#include "meter_bridge_strip.h" -#include "ardour_ui.h" -#include "prompter.h" -#include "logmeter.h" - -#include "i18n.h" - -using namespace ARDOUR; -using namespace PBD; -using namespace Gtk; -using namespace Gtkmm2ext; - -MeterBridgeStrip::MeterBridgeStrip (AudioEngine &eng, - Session& s, - Route& r, - string name, - nframes_t long_over, - nframes_t short_over, - nframes_t meter_hold) - : engine (eng), - session (s), - _route (r), - meter (meter_hold, 5, FastMeter::Vertical) -{ - char buf[64]; - - label.set_text (name); - label.set_name ("ChannelMeterLabel"); - - label_ebox.set_name ("MeterBridgeWindow"); - label_ebox.set_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK|Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK); - label_ebox.add (label); - - label_ebox.signal_button_release_event().connect (mem_fun(*this, &MeterBridgeStrip::label_button_press_release)); - ARDOUR_UI::instance()->tooltips().set_tip (label_ebox, _route.name()); - - over_long_label.set_text ("0"); - over_long_label.set_name ("OverMeterLabel"); - over_long_button.add (over_long_label); - over_long_button.set_name ("OverMeter"); - over_long_frame.add (over_long_button); - over_long_frame.set_shadow_type (Gtk::SHADOW_IN); - over_long_frame.set_name ("BaseFrame"); - over_long_hbox.pack_start (over_long_frame, false, false); - - snprintf(buf, sizeof(buf)-1, _("# of %u-sample overs"), long_over); - ARDOUR_UI::instance()->tooltips().set_tip (over_long_button, buf); - - set_size_request_to_display_given_text (over_long_button, "88g", 2, 2); - - over_short_label.set_text ("0"); - over_short_label.set_name ("OverMeterLabel"); - over_short_button.add (over_short_label); - over_short_button.set_name ("OverMeter"); - over_short_frame.add (over_short_button); - over_short_frame.set_shadow_type (Gtk::SHADOW_IN); - over_short_frame.set_name ("BaseFrame"); - over_short_hbox.pack_start (over_short_frame, false, false); - - snprintf(buf, sizeof(buf)-1, _("# of %u-sample overs"), short_over); - ARDOUR_UI::instance()->tooltips().set_tip (over_short_button, buf); - - set_size_request_to_display_given_text (over_short_button, "88g", 2, 2); - above_meter_vbox.set_spacing (5); - below_meter_vbox.set_spacing (5); - - above_meter_vbox.pack_start (over_long_hbox, false, false); - above_meter_vbox.pack_start (over_short_hbox, false, false); - - below_meter_vbox.pack_start (label_ebox); - - over_short_button.signal_button_release_event().connect (mem_fun(*this,&MeterBridgeStrip::gui_clear_overs)); - over_long_button.signal_button_release_event().connect (mem_fun(*this,&MeterBridgeStrip::gui_clear_overs)); - - last_over_short = 0; - last_over_long = 0; - - meter_clear_pending = false; - over_clear_pending = false; - - meter_on = true; -} - -void -MeterBridgeStrip::update () -{ - string buf; - Port *port; - guint32 over_short = 0; - guint32 over_long = 0; - - if ((port = _route.input (0)) == 0) { - meter.set (0.0); - return; - } else { - over_short = port->short_overs (); - over_long = port->long_overs (); - } - - if (meter_on) { - float power = minus_infinity(); - - if ((power = _route.peak_input_power (0)) != minus_infinity()) { - meter.set (log_meter (power)); - - if (over_short != last_over_short) { - buf = string_compose("%1", over_short); - over_short_label.set_text (buf); - last_over_short = over_short; - } - - if (over_long != last_over_long) { - buf = string_compose("%1", over_long); - over_long_label.set_text (buf); - last_over_long = over_long; - } - - } else { - meter.set (0.0); - } - - } - - if (meter_clear_pending) { - meter_clear_pending = false; - meter.clear (); - } - - if (over_clear_pending) { - over_clear_pending = false; - port->reset_overs (); - over_long_label.set_text ("0"); - over_short_label.set_text ("0"); - last_over_short = 0; - last_over_long = 0; - } -} - -gint -MeterBridgeStrip::gui_clear_overs (GdkEventButton *ev) -{ - clear_overs (); - return FALSE; -} - -void -MeterBridgeStrip::clear_meter () - -{ - meter_clear_pending = true; -} - -void -MeterBridgeStrip::clear_overs () - -{ - over_clear_pending = true; -} - -void -MeterBridgeStrip::set_meter_on (bool yn) -{ - Port* port; - meter_on = yn; - - if (!meter_on) { - meter_clear_pending = true; - over_clear_pending = true; - } - - if (meter.is_visible()) { - if ((port = _route.input (0)) != 0) { - if (meter_on) { - port->enable_metering (); - } else { - port->disable_metering (); - } - } - } -} - -gint -MeterBridgeStrip::label_button_press_release (GdkEventButton *ev) -{ - string name; - ArdourPrompter prompter (true); - - prompter.set_prompt (_("New Name for Meter:")); - prompter.set_initial_text (label.get_text()); - prompter.add_button (_("Rename"), Gtk::RESPONSE_ACCEPT); - prompter.set_response_sensitive (Gtk::RESPONSE_ACCEPT, false); - prompter.show_all(); - - switch (prompter.run ()) { - case Gtk::RESPONSE_ACCEPT: - - prompter.get_result (name); - - if (name.length()) { - label.set_text(name); - } - - default: - break; - } - - return FALSE; -} - diff --git a/gtk2_ardour/meter_bridge_strip.h b/gtk2_ardour/meter_bridge_strip.h deleted file mode 100644 index bdce16f17c..0000000000 --- a/gtk2_ardour/meter_bridge_strip.h +++ /dev/null @@ -1,110 +0,0 @@ -/* - Copyright (C) 1999 Paul Davis - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ -*/ - -#ifndef __ardour_meterbridgestrip_h__ -#define __ardour_meterbridgestrip_h__ - -#include <sigc++/signal.h> - -#include <gtkmm/box.h> -#include <gtkmm/widget.h> -#include <gtkmm/eventbox.h> -#include <gtkmm/label.h> -#include <gtkmm/frame.h> - -#include <gtkmm2ext/fastmeter.h> - -namespace ARDOUR { - class AudioEngine; - class Session; - class Route; -} - -namespace Gtkmm2ext { - class Selector; - struct SelectionResult; -} - -class MeterBridgeStrip : public sigc::trackable - -{ - public: - MeterBridgeStrip (ARDOUR::AudioEngine &, - ARDOUR::Session&, - ARDOUR::Route&, - string label, - nframes_t long_over, - nframes_t short_over, - nframes_t meter_hold); - - void update (); /* called by meter timeout handler from ARDOUR_UI */ - - Gtk::Box &above_box() { return above_meter_vbox; } - Gtk::Box &below_box() { return below_meter_vbox; } - Gtk::Widget &meter_widget() { return meter; } - - guint32 meter_width() const { return 8; } - - void clear_meter (); - void clear_overs (); - - void set_meter_on (bool yn); - bool get_meter_on () const { return meter_on; } - - ARDOUR::Route& route() const { return _route; } - - private: - ARDOUR::AudioEngine& engine; - ARDOUR::Session& session; - ARDOUR::Route& _route; - - Gtk::EventBox label_ebox; - Gtk::Label label; - bool meter_clear_pending; - bool over_clear_pending; - - Gtkmm2ext::FastMeter meter; - bool meter_on; - - Gtk::VBox above_meter_vbox; - Gtk::VBox below_meter_vbox; - - Gtk::HBox over_long_hbox; - Gtk::HBox over_long_vbox; - Gtk::EventBox over_long_button; - Gtk::Frame over_long_frame; - Gtk::Label over_long_label; - - Gtk::HBox over_short_hbox; - Gtk::HBox over_short_vbox; - Gtk::EventBox over_short_button; - Gtk::Frame over_short_frame; - Gtk::Label over_short_label; - - guint32 last_over_short; - guint32 last_over_long; - - gint gui_clear_overs (GdkEventButton *); - gint label_button_press_release (GdkEventButton *); -}; - -#endif /* __ardour_meterbridgestrip_h__ */ - - diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc index e75a7d907c..70e0a6aa18 100644 --- a/gtk2_ardour/mixer_strip.cc +++ b/gtk2_ardour/mixer_strip.cc @@ -15,10 +15,10 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> +#include <algorithm> #include <sigc++/bind.h> @@ -63,6 +63,7 @@ using namespace ARDOUR; using namespace PBD; using namespace Gtk; using namespace Gtkmm2ext; +using namespace std; int MixerStrip::scrollbar_height = 0; @@ -155,17 +156,10 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, boost::shared_ptr<Route> rt /* XXX what is this meant to do? */ //meter_point_button.signal_button_release_event().connect (mem_fun (gpm, &GainMeter::meter_release), false); - solo_button->set_name ("MixerSoloButton"); - mute_button->set_name ("MixerMuteButton"); - hide_button.set_events (hide_button.get_events() & ~(Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK)); - width_button.unset_flags (Gtk::CAN_FOCUS); - hide_button.unset_flags (Gtk::CAN_FOCUS); - input_button.unset_flags (Gtk::CAN_FOCUS); - output_button.unset_flags (Gtk::CAN_FOCUS); - solo_button->unset_flags (Gtk::CAN_FOCUS); - mute_button->unset_flags (Gtk::CAN_FOCUS); + mute_button->set_name ("MixerMuteButton"); + solo_button->set_name ("MixerSoloButton"); button_table.set_homogeneous (true); button_table.set_spacings (0); @@ -184,9 +178,10 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, boost::shared_ptr<Route> rt if (is_audio_track()) { + rec_enable_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::rec_enable_press), false); + rec_enable_button->signal_button_release_event().connect (mem_fun(*this, &RouteUI::rec_enable_release)); + rec_enable_button->set_name ("MixerRecordEnableButton"); - rec_enable_button->unset_flags (Gtk::CAN_FOCUS); - rec_enable_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::rec_enable_press)); AudioTrack* at = audio_track(); @@ -396,8 +391,7 @@ MixerStrip::set_stuff_from_route () } else { _marked_for_display = true; } - } - else { + } else { /* backwards compatibility */ _marked_for_display = true; } @@ -419,56 +413,56 @@ MixerStrip::set_width (Width w) ensure_xml_node (); _width = w; - + switch (w) { case Wide: set_size_request (-1, -1); xml_node->add_property ("strip_width", "wide"); - - if (rec_enable_button) { - rec_enable_button->set_label (_("record")); + + if (rec_enable_button) { + ((Gtk::Label*)rec_enable_button->get_child())->set_text (_("record")); } - mute_button->set_label (_("Mute")); - solo_button->set_label (_("Solo")); + ((Gtk::Label*)mute_button->get_child())->set_text (_("Mute")); + ((Gtk::Label*)solo_button->get_child())->set_text (_("Solo")); if (_route->comment() == "") { comment_button.unset_bg (STATE_NORMAL); - comment_button.set_label (_("comments")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("comments")); } else { comment_button.modify_bg (STATE_NORMAL, color()); - comment_button.set_label (_("*comments*")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("*comments*")); } - gpm.gain_automation_style_button.set_label (gpm.astyle_string(_route->gain_automation_curve().automation_style())); - gpm.gain_automation_state_button.set_label (gpm.astate_string(_route->gain_automation_curve().automation_state())); - panners.pan_automation_style_button.set_label (panners.astyle_string(_route->panner().automation_style())); - panners.pan_automation_state_button.set_label (panners.astate_string(_route->panner().automation_state())); + ((Gtk::Label*)gpm.gain_automation_style_button.get_child())->set_text (gpm.astyle_string(_route->gain_automation_curve().automation_style())); + ((Gtk::Label*)gpm.gain_automation_state_button.get_child())->set_text (gpm.astate_string(_route->gain_automation_curve().automation_state())); + ((Gtk::Label*)panners.pan_automation_style_button.get_child())->set_text (panners.astyle_string(_route->panner().automation_style())); + ((Gtk::Label*)panners.pan_automation_state_button.get_child())->set_text (panners.astate_string(_route->panner().automation_state())); Gtkmm2ext::set_size_request_to_display_given_text (name_button, "long", 2, 2); break; case Narrow: - set_size_request (50, -1); xml_node->add_property ("strip_width", "narrow"); if (rec_enable_button) { - rec_enable_button->set_label (_("Rec")); + ((Gtk::Label*)rec_enable_button->get_child())->set_text (_("Rec")); } - mute_button->set_label (_("M")); - solo_button->set_label (_("S")); + ((Gtk::Label*)mute_button->get_child())->set_text (_("M")); + ((Gtk::Label*)solo_button->get_child())->set_text (_("S")); if (_route->comment() == "") { comment_button.unset_bg (STATE_NORMAL); - comment_button.set_label (_("Cmt")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("Cmt")); } else { comment_button.modify_bg (STATE_NORMAL, color()); - comment_button.set_label (_("*Cmt*")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("*Cmt*")); } - gpm.gain_automation_style_button.set_label (gpm.short_astyle_string(_route->gain_automation_curve().automation_style())); - gpm.gain_automation_state_button.set_label (gpm.short_astate_string(_route->gain_automation_curve().automation_state())); - panners.pan_automation_style_button.set_label (panners.short_astyle_string(_route->panner().automation_style())); - panners.pan_automation_state_button.set_label (panners.short_astate_string(_route->panner().automation_state())); + ((Gtk::Label*)gpm.gain_automation_style_button.get_child())->set_text (gpm.short_astyle_string(_route->gain_automation_curve().automation_style())); + ((Gtk::Label*)gpm.gain_automation_state_button.get_child())->set_text (gpm.short_astate_string(_route->gain_automation_curve().automation_state())); + ((Gtk::Label*)panners.pan_automation_style_button.get_child())->set_text (panners.short_astyle_string(_route->panner().automation_style())); + ((Gtk::Label*)panners.pan_automation_state_button.get_child())->set_text (panners.short_astate_string(_route->panner().automation_state())); Gtkmm2ext::set_size_request_to_display_given_text (name_button, "longest label", 2, 2); + set_size_request (max (50, gpm.get_gm_width()), -1); break; } @@ -789,20 +783,20 @@ MixerStrip::comment_editor_done_editing() { case Wide: if (! str.empty()) { comment_button.modify_bg (STATE_NORMAL, color()); - comment_button.set_label (_("*Comments*")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("*Comments*")); } else { comment_button.unset_bg (STATE_NORMAL); - comment_button.set_label (_("Comments")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("Comments")); } break; case Narrow: if (! str.empty()) { comment_button.modify_bg (STATE_NORMAL, color()); - comment_button.set_label (_("*Cmt*")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("*Cmt*")); } else { comment_button.unset_bg (STATE_NORMAL); - comment_button.set_label (_("Cmt")); + ((Gtk::Label*)comment_button.get_child())->set_text (_("Cmt")); } break; } diff --git a/gtk2_ardour/mixer_strip.h b/gtk2_ardour/mixer_strip.h index 430f774eb6..ea2569b644 100644 --- a/gtk2_ardour/mixer_strip.h +++ b/gtk2_ardour/mixer_strip.h @@ -241,9 +241,6 @@ class MixerStrip : public RouteUI, public Gtk::EventBox bool ignore_speed_adjustment; - string solo_button_name () const { return "MixerSoloButton"; } - string safe_solo_button_name () const { return "MixerSafeSoloButton"; } - void engine_running(); void engine_stopped(); diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc index f20171f9fb..cbd9cfe083 100644 --- a/gtk2_ardour/mixer_ui.cc +++ b/gtk2_ardour/mixer_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> @@ -29,14 +28,15 @@ #include <gtkmm2ext/gtk_ui.h> #include <gtkmm2ext/utils.h> #include <gtkmm2ext/stop_signal.h> +#include <gtkmm2ext/window_title.h> -#include <ardour/audioengine.h> #include <ardour/session.h> #include <ardour/audio_track.h> #include <ardour/session_route.h> #include <ardour/audio_diskstream.h> #include <ardour/plugin_manager.h> +#include "keyboard.h" #include "mixer_ui.h" #include "mixer_strip.h" #include "plugin_selector.h" @@ -58,9 +58,8 @@ using namespace std; using PBD::atoi; -Mixer_UI::Mixer_UI (AudioEngine& eng) - : Window (Gtk::WINDOW_TOPLEVEL), - engine (eng) +Mixer_UI::Mixer_UI () + : Window (Gtk::WINDOW_TOPLEVEL) { _strip_width = Wide; track_menu = 0; @@ -203,7 +202,11 @@ Mixer_UI::Mixer_UI (AudioEngine& eng) add (global_vpacker); set_name ("MixerWindow"); - set_title (_("ardour: mixer")); + + WindowTitle title(Glib::get_application_name()); + title += _("Mixer"); + set_title (title.get_string()); + set_wmclass (X_("ardour_mixer"), "Ardour"); add_accel_group (ActionManager::ui_manager->get_accel_group()); @@ -279,7 +282,7 @@ Mixer_UI::add_strip (Session::RouteList& routes) TreeModel::Row row = *(track_model->append()); row[track_columns.text] = route->name(); - row[track_columns.visible] = true; + row[track_columns.visible] = strip->marked_for_display(); row[track_columns.route] = route; row[track_columns.strip] = strip; @@ -355,9 +358,11 @@ Mixer_UI::connect_to_session (Session* sess) XMLNode* node = ARDOUR_UI::instance()->mixer_settings(); set_state (*node); - string wintitle = _("ardour: mixer: "); - wintitle += session->name(); - set_title (wintitle); + WindowTitle title(session->name()); + title += _("Mixer"); + title += Glib::get_application_name(); + + set_title (title.get_string()); initial_track_display (); @@ -383,7 +388,12 @@ Mixer_UI::disconnect_from_session () ENSURE_GUI_THREAD(mem_fun(*this, &Mixer_UI::disconnect_from_session)); group_model->clear (); - set_title (_("ardour: mixer")); + _selection.clear (); + + WindowTitle title(Glib::get_application_name()); + title += _("Mixer"); + set_title (title.get_string()); + stop_updating (); } @@ -554,12 +564,14 @@ Mixer_UI::hide_all_audiotracks () void Mixer_UI::track_list_change (const Gtk::TreeModel::Path& path,const Gtk::TreeModel::iterator& iter) { + session->set_remote_control_ids(); redisplay_track_list (); } void Mixer_UI::track_list_delete (const Gtk::TreeModel::Path& path) { + session->set_remote_control_ids(); redisplay_track_list (); } @@ -612,8 +624,10 @@ Mixer_UI::redisplay_track_list () if (strip->route()->master() || strip->route()->control()) { /* do nothing, these cannot be hidden */ } else { - strip_packer.remove (*strip); - strip->set_packed (false); + if (strip->packed()) { + strip_packer.remove (*strip); + strip->set_packed (false); + } } } } @@ -892,6 +906,16 @@ Mixer_UI::group_flags_changed (void* src, RouteGroup* group) } ENSURE_GUI_THREAD(bind (mem_fun(*this, &Mixer_UI::group_flags_changed), src, group)); + + /* force an update of any mixer strips that are using this group, + otherwise mix group names don't change in mixer strips + */ + + for (list<MixerStrip *>::iterator i = strips.begin(); i != strips.end(); ++i) { + if ((*i)->mix_group() == group) { + (*i)->mix_group_changed(0); + } + } TreeModel::iterator i; TreeModel::Children rows = group_model->children(); @@ -1003,7 +1027,7 @@ Mixer_UI::strip_scroller_button_release (GdkEventButton* ev) using namespace Menu_Helpers; if (Keyboard::is_context_menu_event (ev)) { - ARDOUR_UI::instance()->add_route(); + ARDOUR_UI::instance()->add_route (this); return true; } diff --git a/gtk2_ardour/mixer_ui.h b/gtk2_ardour/mixer_ui.h index 2a5b416ae0..bf9c9cbd18 100644 --- a/gtk2_ardour/mixer_ui.h +++ b/gtk2_ardour/mixer_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_mixer_ui_h__ @@ -38,7 +37,6 @@ #include <ardour/ardour.h> #include <ardour/io.h> -#include "keyboard_target.h" #include "route_redirect_selection.h" #include "enums.h" @@ -47,7 +45,6 @@ namespace ARDOUR { class RouteGroup; class Session; class AudioDiskstream; - class AudioEngine; }; class MixerStrip; @@ -56,7 +53,7 @@ class PluginSelector; class Mixer_UI : public Gtk::Window { public: - Mixer_UI (ARDOUR::AudioEngine&); + Mixer_UI (); ~Mixer_UI(); void connect_to_session (ARDOUR::Session *); @@ -82,7 +79,6 @@ class Mixer_UI : public Gtk::Window RouteRedirectSelection& selection() { return _selection; } private: - ARDOUR::AudioEngine& engine; ARDOUR::Session *session; bool _visible; diff --git a/gtk2_ardour/new_session_dialog.cc b/gtk2_ardour/new_session_dialog.cc index 9e094c9ad0..74ff9d022c 100644 --- a/gtk2_ardour/new_session_dialog.cc +++ b/gtk2_ardour/new_session_dialog.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include "i18n.h" @@ -33,12 +32,16 @@ #include <gtkmm/stock.h> #include <gdkmm/cursor.h> +#include <gtkmm2ext/window_title.h> + +using namespace Gtkmm2ext; + #include "opts.h" NewSessionDialog::NewSessionDialog() : ArdourDialog ("session control") { - session_name_label = Gtk::manage(new class Gtk::Label(_("Name :"))); + session_name_label = Gtk::manage(new class Gtk::Label(_("Name :"))); m_name = Gtk::manage(new class Gtk::Entry()); m_name->set_text(GTK_ARDOUR::session_name); @@ -339,7 +342,11 @@ NewSessionDialog::NewSessionDialog() get_vbox()->set_homogeneous(false); get_vbox()->set_spacing(0); get_vbox()->pack_start(*m_notebook, Gtk::PACK_SHRINK, 0); - set_title(_("ardour: session control")); + + WindowTitle title(Glib::get_application_name()); + title += _("Session Control"); + set_title(title.get_string()); + //set_modal(false); //property_window_position().set_value(Gtk::WIN_POS_NONE); set_resizable(false); diff --git a/gtk2_ardour/new_session_dialog.h b/gtk2_ardour/new_session_dialog.h index e0f488dc80..0d4124f8cc 100644 --- a/gtk2_ardour/new_session_dialog.h +++ b/gtk2_ardour/new_session_dialog.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ // -*- c++ -*- diff --git a/gtk2_ardour/option_editor.cc b/gtk2_ardour/option_editor.cc index 85cb3dab1d..ad34e8ed0b 100644 --- a/gtk2_ardour/option_editor.cc +++ b/gtk2_ardour/option_editor.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <pbd/whitespace.h> @@ -24,13 +23,15 @@ #include <ardour/audioengine.h> #include <ardour/configuration.h> #include <ardour/auditioner.h> -#include <ardour/destructive_filesource.h> +#include <ardour/sndfilesource.h> #include <ardour/crossfade.h> #include <midi++/manager.h> #include <gtkmm2ext/stop_signal.h> #include <gtkmm2ext/utils.h> +#include <gtkmm2ext/window_title.h> #include "public_editor.h" +#include "keyboard.h" #include "mixer_ui.h" #include "ardour_ui.h" #include "io_selector.h" @@ -52,7 +53,7 @@ using namespace std; static vector<string> positional_sync_strings; OptionEditor::OptionEditor (ARDOUR_UI& uip, PublicEditor& ed, Mixer_UI& mixui) - : Dialog ("option editor"), + : Dialog ("options editor"), ui (uip), editor (ed), mixer (mixui), @@ -74,6 +75,9 @@ OptionEditor::OptionEditor (ARDOUR_UI& uip, PublicEditor& ed, Mixer_UI& mixui) /* MIDI */ + mmc_device_id_adjustment (0.0, 0.0, (double) 0x7f, 1.0, 16.0), + mmc_device_id_spinner (mmc_device_id_adjustment), + /* Click */ click_table (2, 3), @@ -94,9 +98,12 @@ OptionEditor::OptionEditor (ARDOUR_UI& uip, PublicEditor& ed, Mixer_UI& mixui) click_io_selector = 0; auditioner_io_selector = 0; session = 0; + + WindowTitle title(Glib::get_application_name()); + title += _("Options Editor"); + set_title(title.get_string()); set_default_size (300, 300); - set_title (_("ardour: options editor")); set_wmclass (X_("ardour_option_editor"), "Ardour"); set_name ("OptionsWindow"); @@ -367,23 +374,28 @@ OptionEditor::setup_midi_options () ToggleButton* tb; RadioButton* rb; - Gtk::Table* table = manage (new Table (ports.size() + 4, 9)); + Gtk::Table* table = manage (new Table (ports.size() + 4, 10)); table->set_row_spacings (6); table->set_col_spacings (10); - table->attach (*(manage (new Label (X_("Port")))), 0, 1, 0, 1); - table->attach (*(manage (new Label (X_("Offline")))), 1, 2, 0, 1); - table->attach (*(manage (new Label (X_("Trace\nInput")))), 2, 3, 0, 1); - table->attach (*(manage (new Label (X_("Trace\nOutput")))), 3, 4, 0, 1); - table->attach (*(manage (new Label (X_("MTC")))), 4, 5, 0, 1); - table->attach (*(manage (new Label (X_("MMC")))), 6, 7, 0, 1); - table->attach (*(manage (new Label (X_("MIDI Parameter\nControl")))), 8, 9, 0, 1); + table->attach (*(manage (new Label (_("Port")))), 0, 1, 0, 1); + table->attach (*(manage (new Label (_("Offline")))), 1, 2, 0, 1); + table->attach (*(manage (new Label (_("Trace\nInput")))), 2, 3, 0, 1); + table->attach (*(manage (new Label (_("Trace\nOutput")))), 3, 4, 0, 1); + table->attach (*(manage (new Label (_("MTC")))), 4, 5, 0, 1); + table->attach (*(manage (new Label (_("MMC")))), 6, 7, 0, 1); + table->attach (*(manage (new Label (_("MIDI Parameter\nControl")))), 8, 9, 0, 1); table->attach (*(manage (new HSeparator())), 0, 9, 1, 2); table->attach (*(manage (new VSeparator())), 5, 6, 0, 8); table->attach (*(manage (new VSeparator())), 7, 8, 0, 8); + table->attach (*(manage (new Label (_("MMC Device ID")))), 9, 10, 0, 1); + table->attach (mmc_device_id_spinner, 9, 10, 1, 2); + + mmc_device_id_adjustment.signal_value_changed().connect (mem_fun (*this, &OptionEditor::mmc_device_id_adjusted)); + for (n = 0, i = ports.begin(); i != ports.end(); ++n, ++i) { pair<MIDI::Port*,vector<RadioButton*> > newpair; @@ -553,12 +565,22 @@ OptionEditor::map_port_online (MIDI::Port* port, ToggleButton* tb) } void +OptionEditor::mmc_device_id_adjusted () +{ + uint8_t id = (uint8_t) mmc_device_id_spinner.get_value(); + + if (id != Config->get_mmc_device_id()) { + Config->set_mmc_device_id (id); + } +} + +void OptionEditor::port_trace_in_toggled (MIDI::Port* port, ToggleButton* tb) { bool trace = tb->get_active(); if (port->input()->tracing() != trace) { - port->output()->trace (trace, &cerr, string (port->name()) + string (" input: ")); + port->input()->trace (trace, &cerr, string (port->name()) + string (" input: ")); } } diff --git a/gtk2_ardour/option_editor.h b/gtk2_ardour/option_editor.h index cc28a74e60..7754b0555d 100644 --- a/gtk2_ardour/option_editor.h +++ b/gtk2_ardour/option_editor.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_option_editor_h__ @@ -111,6 +110,9 @@ class OptionEditor : public Gtk::Dialog Gtk::RadioButton::Group mmc_button_group; Gtk::RadioButton::Group midi_button_group; + Gtk::Adjustment mmc_device_id_adjustment; + Gtk::SpinButton mmc_device_id_spinner; + void port_online_toggled (MIDI::Port*,Gtk::ToggleButton*); void port_trace_in_toggled (MIDI::Port*,Gtk::ToggleButton*); void port_trace_out_toggled (MIDI::Port*,Gtk::ToggleButton*); @@ -119,6 +121,8 @@ class OptionEditor : public Gtk::Dialog void mtc_port_chosen (MIDI::Port*,Gtk::RadioButton*); void midi_port_chosen (MIDI::Port*,Gtk::RadioButton*); + void mmc_device_id_adjusted (); + void map_port_online (MIDI::Port*, Gtk::ToggleButton*); void setup_midi_options(); diff --git a/gtk2_ardour/opts.cc b/gtk2_ardour/opts.cc index 792fde3a10..608f684fc9 100644 --- a/gtk2_ardour/opts.cc +++ b/gtk2_ardour/opts.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <getopt.h> @@ -52,6 +51,7 @@ print_help (const char *execname) << _(" -c, --name name Use a specific jack client name, default is ardour\n") << _(" -N, --new session-name Create a new session from the command line\n") << _(" -O, --no-hw-optimizations Disable h/w specific optimizations\n") + << _(" -S, --sync Draw the gui synchronously \n") #ifdef VST_SUPPORT << _(" -V, --novst Do not use VST support\n") #endif @@ -67,7 +67,7 @@ int GTK_ARDOUR::parse_opts (int argc, char *argv[]) { - const char *optstring = "U:hbvVnOc:C:N:k:"; + const char *optstring = "U:hSbvVnOc:C:N:k:"; const char *execname = strrchr (argv[0], '/'); if (execname == 0) { @@ -85,6 +85,7 @@ GTK_ARDOUR::parse_opts (int argc, char *argv[]) { "novst", 0, 0, 'V' }, { "new", 1, 0, 'N' }, { "no-hw-optimizations", 0, 0, 'O' }, + { "sync", 0, 0, 'O' }, { "curvetest", 1, 0, 'C' }, { 0, 0, 0, 0 } }; @@ -118,6 +119,10 @@ GTK_ARDOUR::parse_opts (int argc, char *argv[]) case 'n': no_splash = false; break; + + case 'S': + // ; just pass this through to gtk it will figure it out + break; case 'N': new_session = true; diff --git a/gtk2_ardour/opts.h b/gtk2_ardour/opts.h index 710621ac65..fb780fc8aa 100644 --- a/gtk2_ardour/opts.h +++ b/gtk2_ardour/opts.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_opts_h__ diff --git a/gtk2_ardour/pan_automation_time_axis.cc b/gtk2_ardour/pan_automation_time_axis.cc index c484673c99..c008a10ff0 100644 --- a/gtk2_ardour/pan_automation_time_axis.cc +++ b/gtk2_ardour/pan_automation_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <ardour/curve.h> diff --git a/gtk2_ardour/panner.cc b/gtk2_ardour/panner.cc index bb9b432184..d54d6b89ac 100644 --- a/gtk2_ardour/panner.cc +++ b/gtk2_ardour/panner.cc @@ -55,23 +55,23 @@ PannerBar::expose (GdkEventExpose* ev) points[0].x = (darea.get_width()/2 - triangle_size); points[0].y = 0; - points[1].x = (darea.get_width()/2 + triangle_size) - 1; + points[1].x = (darea.get_width()/2 + triangle_size); points[1].y = 0; - points[2].x = darea.get_width()/2 - 1; + points[2].x = darea.get_width()/2; points[2].y = triangle_size - 1; gdk_draw_polygon (win->gobj(), gc->gobj(), true, points, 3); // right - points[0].x = (darea.get_width() - triangle_size) - 1; + points[0].x = (darea.get_width() - triangle_size); points[0].y = 0; - points[1].x = darea.get_width() - 1; + points[1].x = darea.get_width(); points[1].y = 0; - points[2].x = darea.get_width() - 1; + points[2].x = darea.get_width(); points[2].y = triangle_size; gdk_draw_polygon (win->gobj(), gc->gobj(), true, points, 3); diff --git a/gtk2_ardour/panner2d.cc b/gtk2_ardour/panner2d.cc index 1e6e4c16c9..34f367b25b 100644 --- a/gtk2_ardour/panner2d.cc +++ b/gtk2_ardour/panner2d.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> @@ -58,8 +57,8 @@ Panner2d::Target::~Target () } } -Panner2d::Panner2d (Panner& p, int32_t w, int32_t h) - : panner (p), width (w), height (h) +Panner2d::Panner2d (Panner& p, int32_t h) + : panner (p), width (0), height (h) { context_menu = 0; bypass_menu_item = 0; diff --git a/gtk2_ardour/panner2d.h b/gtk2_ardour/panner2d.h index 1bf8879ba5..fb4929ad2d 100644 --- a/gtk2_ardour/panner2d.h +++ b/gtk2_ardour/panner2d.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_panner_2d_h__ @@ -47,7 +46,7 @@ namespace Pango { class Panner2d : public Gtk::DrawingArea { public: - Panner2d (ARDOUR::Panner&, int32_t width, int32_t height); + Panner2d (ARDOUR::Panner&, int32_t height); ~Panner2d (); int puck_position (int which_puck, float& x, float& y); diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc index 72cd24bcce..4ad59fb1ea 100644 --- a/gtk2_ardour/panner_ui.cc +++ b/gtk2_ardour/panner_ui.cc @@ -73,8 +73,7 @@ PannerUI::PannerUI (boost::shared_ptr<IO> io, Session& s) //set_size_request_to_display_given_text (pan_automation_style_button, X_("0"), 2, 2); pan_bar_packer.set_size_request (-1, 61); - panning_viewport.set_size_request (64, 61); - + panning_viewport.set_size_request (-1, 61); panning_viewport.set_name (X_("BaseFrame")); ARDOUR_UI::instance()->tooltips().set_tip (panning_link_button, @@ -86,7 +85,7 @@ PannerUI::PannerUI (boost::shared_ptr<IO> io, Session& s) pan_automation_state_button.unset_flags (Gtk::CAN_FOCUS); using namespace Menu_Helpers; - pan_astate_menu.items().push_back (MenuElem (_("Off"), + pan_astate_menu.items().push_back (MenuElem (_("Manual"), bind (mem_fun (_io->panner(), &Panner::set_automation_state), (AutoState) Off))); pan_astate_menu.items().push_back (MenuElem (_("Play"), bind (mem_fun (_io->panner(), &Panner::set_automation_state), (AutoState) Play))); @@ -137,7 +136,7 @@ PannerUI::PannerUI (boost::shared_ptr<IO> io, Session& s) pan_vbox.pack_start (panning_viewport, Gtk::PACK_SHRINK); pan_vbox.pack_start (panning_link_box, Gtk::PACK_SHRINK); - pack_start (pan_vbox, true, false); + pack_start (pan_vbox, true, true); panner = 0; @@ -215,23 +214,9 @@ PannerUI::set_width (Width w) { switch (w) { case Wide: - panning_viewport.set_size_request (64, 61); - if (panner) { - panner->set_size_request (63, 61); - } - for (vector<PannerBar*>::iterator i = pan_bars.begin(); i != pan_bars.end(); ++i) { - (*i)->set_size_request (63, pan_bar_height); - } panning_link_button.set_label (_("link")); break; case Narrow: - panning_viewport.set_size_request (34, 61); - if (panner) { - panner->set_size_request (33, 61); - } - for (vector<PannerBar*>::iterator i = pan_bars.begin(); i != pan_bars.end(); ++i) { - (*i)->set_size_request (33, pan_bar_height); - } panning_link_button.set_label (_("L")); break; } @@ -289,6 +274,13 @@ PannerUI::setup_pan () pan_adjustments.pop_back (); } + /* stick something into the panning viewport so that it redraws */ + + EventBox* eb = manage (new EventBox()); + panning_viewport.remove (); + panning_viewport.add (*eb); + panning_viewport.show_all (); + } else if (nouts == 2) { vector<Adjustment*>::size_type asz; @@ -344,16 +336,9 @@ PannerUI::setup_pan () bc->event_widget().signal_button_release_event().connect (bind (mem_fun(*this, &PannerUI::pan_button_event), (uint32_t) asz)); - pan_bars.push_back (bc); - switch (_width) { - case Wide: - bc->set_size_request (63, pan_bar_height); - break; - case Narrow: - bc->set_size_request (33, pan_bar_height); - break; - } + bc->set_size_request (-1, pan_bar_height); + pan_bars.push_back (bc); pan_bar_packer.pack_start (*bc, false, false); } @@ -370,26 +355,15 @@ PannerUI::setup_pan () } else { - int w = 0; - - switch (_width) { - case Wide: - w = 63; - break; - case Narrow: - w = 33; - break; - } - if (panner == 0) { - panner = new Panner2d (_io->panner(), w, 61); + panner = new Panner2d (_io->panner(), 61); panner->set_name ("MixerPanZone"); panner->show (); } update_pan_sensitive (); panner->reset (_io->n_inputs()); - panner->set_size_request (w, 61); + panner->set_size_request (-1, 61); /* and finally, add it to the panner frame */ @@ -771,7 +745,7 @@ PannerUI::_astate_string (AutoState state, bool shrt) switch (state) { case Off: - sstr = (shrt ? "O" : _("O")); + sstr = (shrt ? "M" : _("M")); break; case Play: sstr = (shrt ? "P" : _("P")); diff --git a/gtk2_ardour/panner_ui.h b/gtk2_ardour/panner_ui.h index 79a8085488..d587359ecd 100644 --- a/gtk2_ardour/panner_ui.h +++ b/gtk2_ardour/panner_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_panner_ui_h__ diff --git a/gtk2_ardour/playlist_selector.cc b/gtk2_ardour/playlist_selector.cc index ddb771bb18..40f837eb5e 100644 --- a/gtk2_ardour/playlist_selector.cc +++ b/gtk2_ardour/playlist_selector.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ @@ -29,6 +28,7 @@ #include <ardour/configuration.h> #include <gtkmm2ext/gtk_ui.h> +#include <gtkmm2ext/window_title.h> #include "playlist_selector.h" #include "route_ui.h" @@ -39,6 +39,7 @@ using namespace std; using namespace sigc; using namespace Gtk; +using namespace Gtkmm2ext; using namespace ARDOUR; using namespace PBD; @@ -49,11 +50,14 @@ PlaylistSelector::PlaylistSelector () set_position (WIN_POS_MOUSE); set_name ("PlaylistSelectorWindow"); - set_title (_("ardour: playlists")); set_modal(true); add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK); set_size_request (300, 200); + WindowTitle title(Glib::get_application_name()); + title += _("Playlists"); + set_title(title.get_string()); + model = TreeStore::create (columns); tree.set_model (model); tree.append_column (_("Playlists grouped by track"), columns.text); @@ -104,10 +108,9 @@ PlaylistSelector::show_for (RouteUI* ruix) rui = ruix; - str = _("ardour: playlist for "); - str += rui->route()->name(); - - set_title (str); + WindowTitle title(Glib::get_application_name()); + title += string_compose (_("Playlist for %1"), rui->route()->name()); + set_title (title.get_string()); clear_map (); select_connection.disconnect (); diff --git a/gtk2_ardour/plugin_selector.cc b/gtk2_ardour/plugin_selector.cc index 8a52e8587f..1283837e0c 100644 --- a/gtk2_ardour/plugin_selector.cc +++ b/gtk2_ardour/plugin_selector.cc @@ -471,11 +471,11 @@ PluginSelector::ladspa_display_selection_changed() void PluginSelector::added_list_selection_changed() { - if (added_list.get_selection()->count_selected_rows() != 0) { - btn_remove->set_sensitive (true); - } else { - btn_remove->set_sensitive (false); - } + if (added_list.get_selection()->count_selected_rows() != 0) { + btn_remove->set_sensitive (true); + } else { + btn_remove->set_sensitive (false); + } } int diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc index 54d6393506..1f028691cb 100644 --- a/gtk2_ardour/plugin_ui.cc +++ b/gtk2_ardour/plugin_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <climits> @@ -96,13 +95,14 @@ PluginUIWindow::PluginUIWindow (boost::shared_ptr<PluginInsert> insert, bool scr _pluginui = pu; get_vbox()->add (*pu); + set_wmclass (X_("ardour_plugin_editor"), "Ardour"); + signal_map_event().connect (mem_fun (*pu, &LadspaPluginUI::start_updating)); signal_unmap_event().connect (mem_fun (*pu, &LadspaPluginUI::stop_updating)); } set_position (Gtk::WIN_POS_MOUSE); set_name ("PluginEditor"); - set_wmclass (X_("ardour_plugin_editor"), "Ardour"); add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK); signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window*> (this))); diff --git a/gtk2_ardour/plugin_ui.h b/gtk2_ardour/plugin_ui.h index c1d538b3d1..2f15356c61 100644 --- a/gtk2_ardour/plugin_ui.h +++ b/gtk2_ardour/plugin_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_plugin_ui_h__ diff --git a/gtk2_ardour/po/de_DE.po b/gtk2_ardour/po/de_DE.po index 20e3cdc0b7..8af57ef126 100644 --- a/gtk2_ardour/po/de_DE.po +++ b/gtk2_ardour/po/de_DE.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gtk-ardour 0.347.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-11-24 00:48+0100\n" -"PO-Revision-Date: 2007-01-18 13:04+0100\n" +"PO-Revision-Date: 2007-03-17 19:33+0100\n" "Last-Translator: Sebastian Arnold <mail@sebastian-arnold.net>\n" "Language-Team: Deutsch <de@li.org>\n" "MIME-Version: 1.0\n" @@ -16,188 +16,224 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: KBabel 0.9.6\n" -"X-Poedit-Language: German\n" "X-Poedit-Country: GERMANY\n" -#: gtk2_ardour/about.cc:121 +#: gtk2_ardour/about.cc:120 msgid "Paul Davis" -msgstr "" +msgstr "Paul Davis" -#: gtk2_ardour/about.cc:122 +#: gtk2_ardour/about.cc:121 msgid "Jesse Chappell" -msgstr "" +msgstr "Jesse Chappell" -#: gtk2_ardour/about.cc:123 +#: gtk2_ardour/about.cc:122 msgid "Taybin Rutkin" -msgstr "" +msgstr "Taybin Rutkin" -#: gtk2_ardour/about.cc:124 +#: gtk2_ardour/about.cc:123 msgid "Marcus Andersson" -msgstr "" +msgstr "Marcus Andersson" -#: gtk2_ardour/about.cc:125 +#: gtk2_ardour/about.cc:124 msgid "Jeremy Hall" -msgstr "" +msgstr "Jeremy Hall" -#: gtk2_ardour/about.cc:126 +#: gtk2_ardour/about.cc:125 msgid "Steve Harris" -msgstr "" +msgstr "Steve Harris" -#: gtk2_ardour/about.cc:127 +#: gtk2_ardour/about.cc:126 msgid "Tim Mayberry" -msgstr "" +msgstr "Tim Mayberry" -#: gtk2_ardour/about.cc:128 +#: gtk2_ardour/about.cc:127 msgid "Mark Stewart" -msgstr "" +msgstr "Mark Stewart" -#: gtk2_ardour/about.cc:129 +#: gtk2_ardour/about.cc:128 msgid "Sam Chessman" -msgstr "" +msgstr "Sam Chessman" -#: gtk2_ardour/about.cc:130 +#: gtk2_ardour/about.cc:129 msgid "Jack O'Quin" -msgstr "" +msgstr "Jack O'Quin" -#: gtk2_ardour/about.cc:131 +#: gtk2_ardour/about.cc:130 msgid "Matt Krai" -msgstr "" +msgstr "Matt Krai" -#: gtk2_ardour/about.cc:132 +#: gtk2_ardour/about.cc:131 msgid "Ben Bell" -msgstr "" +msgstr "Ben Bell" -#: gtk2_ardour/about.cc:133 +#: gtk2_ardour/about.cc:132 msgid "Gerard van Dongen" -msgstr "" +msgstr "Gerard van Dongen" -#: gtk2_ardour/about.cc:134 +#: gtk2_ardour/about.cc:133 msgid "Thomas Charbonnel" -msgstr "" +msgstr "Thomas Charbonnel" -#: gtk2_ardour/about.cc:135 +#: gtk2_ardour/about.cc:134 msgid "Nick Mainsbridge" -msgstr "" +msgstr "Nick Mainsbridge" -#: gtk2_ardour/about.cc:136 +#: gtk2_ardour/about.cc:135 msgid "Colin Law" -msgstr "" +msgstr "Colin Law" -#: gtk2_ardour/about.cc:137 +#: gtk2_ardour/about.cc:136 msgid "Sampo Savolainen" -msgstr "" +msgstr "Sampo Savolainen" -#: gtk2_ardour/about.cc:138 +#: gtk2_ardour/about.cc:137 msgid "Joshua Leach" -msgstr "" +msgstr "Joshua Leach" -#: gtk2_ardour/about.cc:139 +#: gtk2_ardour/about.cc:138 msgid "Rob Holland" -msgstr "" +msgstr "Rob Holland" -#: gtk2_ardour/about.cc:140 +#: gtk2_ardour/about.cc:139 msgid "Per Sigmond" -msgstr "" +msgstr "Per Sigmond" -#: gtk2_ardour/about.cc:141 +#: gtk2_ardour/about.cc:140 msgid "Doug Mclain" -msgstr "" +msgstr "Doug Mclain" -#: gtk2_ardour/about.cc:142 +#: gtk2_ardour/about.cc:141 msgid "Petter Sundlöf" -msgstr "" +msgstr "Petter Sundlöf" -#: gtk2_ardour/about.cc:143 +#: gtk2_ardour/about.cc:142 msgid "Thorsten Wilms" -msgstr "" +msgstr "Thorsten Wilms" -#: gtk2_ardour/about.cc:144 +#: gtk2_ardour/about.cc:143 msgid "Ben Loftis" -msgstr "" +msgstr "Ben Loftis" -#: gtk2_ardour/about.cc:145 +#: gtk2_ardour/about.cc:144 msgid "Stefan Kersten" -msgstr "" +msgstr "Stefan Kersten" -#: gtk2_ardour/about.cc:146 +#: gtk2_ardour/about.cc:145 msgid "Christopher George" -msgstr "" +msgstr "Christopher George" -#: gtk2_ardour/about.cc:147 +#: gtk2_ardour/about.cc:146 msgid "Robert Jordens" -msgstr "" +msgstr "Robert Jordens" + +#: gtk2_ardour/about.cc:147 +msgid "Dave Robillard" +msgstr "Dave Robillard" #: gtk2_ardour/about.cc:148 -msgid "Brian Ahr" -msgstr "" +msgid "Hans Fugal" +msgstr "Hans Fugal" #: gtk2_ardour/about.cc:149 +msgid "Brian Ahr" +msgstr "Brian Ahr" + +#: gtk2_ardour/about.cc:150 msgid "Nimal Ratnayake" -msgstr "" +msgstr "Nimal Ratnayake" + +#: gtk2_ardour/about.cc:151 +msgid "Mike Täht" +msgstr "Mike Täht" + +#: gtk2_ardour/about.cc:152 +msgid "John Anderson" +msgstr "John Anderson" -#: gtk2_ardour/about.cc:154 +#: gtk2_ardour/about.cc:153 +msgid "Nedko Arnaudov" +msgstr "Nedko Arnaudov" + +#: gtk2_ardour/about.cc:158 msgid "" "French:\n" "\tAlain Fréhel <alain.frehel@free.fr>\n" "\tChristophe Combelles <ccomb@free.fr>\n" msgstr "" +"French:\n" +"\tAlain Fréhel <alain.frehel@free.fr>\n" +"\tChristophe Combelles <ccomb@free.fr>\n" -#: gtk2_ardour/about.cc:155 +#: gtk2_ardour/about.cc:159 msgid "" "German:\n" "\tKarsten Petersen <kapet@kapet.de>\n" msgstr "" "German:\n" -"\tKarsten Petersen <kapet@kapet.de>\n" "\tSebastian Arnold <linux@sebastian-arnold.net>\n" +"\tKarsten Petersen <kapet@kapet.de>\n" -#: gtk2_ardour/about.cc:156 +#: gtk2_ardour/about.cc:160 msgid "" "Italian:\n" "\tFilippo Pappalardo <filippo@email.it>\n" msgstr "" +"Italian:\n" +"\tFilippo Pappalardo <filippo@email.it>\n" -#: gtk2_ardour/about.cc:157 +#: gtk2_ardour/about.cc:161 msgid "" "Portuguese:\n" "\tRui Nuno Capela <rncbc@rncbc.org>\n" msgstr "" +"Portuguese:\n" +"\tRui Nuno Capela <rncbc@rncbc.org>\n" -#: gtk2_ardour/about.cc:158 +#: gtk2_ardour/about.cc:162 msgid "" "Brazilian Portuguese:\n" "\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n" "\tChris Ross <chris@tebibyte.org>\n" msgstr "" +"Brazilian Portuguese:\n" +"\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n" +"\tChris Ross <chris@tebibyte.org>\n" -#: gtk2_ardour/about.cc:160 +#: gtk2_ardour/about.cc:164 msgid "" "Spanish:\n" "\t Alex Krohn <alexkrohn@fastmail.fm>\n" msgstr "" +"Spanish:\n" +"\t Alex Krohn <alexkrohn@fastmail.fm>\n" -#: gtk2_ardour/about.cc:161 +#: gtk2_ardour/about.cc:165 msgid "" "Russian:\n" "\t Igor Blinov <pitstop@nm.ru>\n" msgstr "" +"Russian:\n" +"\t Igor Blinov <pitstop@nm.ru>\n" -#: gtk2_ardour/about.cc:189 +#: gtk2_ardour/about.cc:193 msgid "Copyright (C) 1999-2006 Paul Davis\n" -msgstr "" +msgstr "Copyright (C) 1999-2006 Paul Davis\n" -#: gtk2_ardour/about.cc:190 +#: gtk2_ardour/about.cc:194 msgid "" "Ardour comes with ABSOLUTELY NO WARRANTY\n" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; see the file COPYING for details.\n" msgstr "" +"Ardour wird Ihnen OHNE JEGLICHE GEWÄHRLEISTUNG zur Verfügung gestellt.\n" +"Dies ist freie Software und Sie dürfen sie gerne weiterverbreiten,\n" +"solange Sie sich an die Bedingungen, die in der Datei COPYING aufgeführt sind halten.\n" -#: gtk2_ardour/about.cc:195 +#: gtk2_ardour/about.cc:199 msgid "visit http://www.ardour.org/" -msgstr "" +msgstr "besuchen Sie http://www.ardour.org" -#: gtk2_ardour/about.cc:196 +#: gtk2_ardour/about.cc:200 msgid "" "%1\n" "(built from revision %2)" @@ -205,164 +241,181 @@ msgstr "" "%1\n" "(built from revision %2)" -#: gtk2_ardour/actions.cc:77 +#: gtk2_ardour/actions.cc:76 msgid "badly formatted UI definition file" msgstr "die UI Definitionsdatei ist falsch formatiert" -#: gtk2_ardour/actions.cc:79 +#: gtk2_ardour/actions.cc:78 msgid "Ardour menu definition file not found" msgstr "Konnte die ardour Menü-Definition nicht finden" -#: gtk2_ardour/actions.cc:83 +#: gtk2_ardour/actions.cc:82 msgid "ardour will not work without a valid ardour.menus file" msgstr "ardour benötigt eine gültige ardour.menus Datei" -#: gtk2_ardour/actions.cc:235 +#: gtk2_ardour/actions.cc:234 msgid "programmer error: %1 %2" msgstr "Programmierfehler: %1 %2" -#: gtk2_ardour/actions.cc:254 +#: gtk2_ardour/actions.cc:253 msgid "Unknown action name: %1" msgstr "Unbekannte Aktionsbezeichnung: %1" -#: gtk2_ardour/add_route_dialog.cc:41 -#: gtk2_ardour/add_route_dialog.cc:196 +#: gtk2_ardour/add_route_dialog.cc:40 +#: gtk2_ardour/add_route_dialog.cc:195 msgid "Mono" msgstr "Mono" -#: gtk2_ardour/add_route_dialog.cc:42 -#: gtk2_ardour/add_route_dialog.cc:198 +#: gtk2_ardour/add_route_dialog.cc:41 +#: gtk2_ardour/add_route_dialog.cc:197 msgid "Stereo" msgstr "Stereo" -#: gtk2_ardour/add_route_dialog.cc:43 +#: gtk2_ardour/add_route_dialog.cc:42 msgid "3 Channels" msgstr "3 Kanäle" -#: gtk2_ardour/add_route_dialog.cc:44 +#: gtk2_ardour/add_route_dialog.cc:43 msgid "4 Channels" msgstr "4 Kanäle" -#: gtk2_ardour/add_route_dialog.cc:45 +#: gtk2_ardour/add_route_dialog.cc:44 msgid "6 Channels" msgstr "6 Kanäle" -#: gtk2_ardour/add_route_dialog.cc:46 +#: gtk2_ardour/add_route_dialog.cc:45 msgid "8 Channels" msgstr "8 Kanäle" -#: gtk2_ardour/add_route_dialog.cc:47 +#: gtk2_ardour/add_route_dialog.cc:46 msgid "Manual Setup" msgstr "Manuell" -#: gtk2_ardour/add_route_dialog.cc:52 -#: gtk2_ardour/add_route_dialog.cc:177 -#: gtk2_ardour/editor.cc:127 -#: gtk2_ardour/editor.cc:3549 +#: gtk2_ardour/add_route_dialog.cc:51 +#: gtk2_ardour/add_route_dialog.cc:176 +#: gtk2_ardour/editor.cc:125 +#: gtk2_ardour/editor.cc:2989 #: gtk2_ardour/editor_actions.cc:288 -#: gtk2_ardour/time_axis_view.cc:586 +#: gtk2_ardour/time_axis_view.cc:585 msgid "Normal" -msgstr "Einrasten" +msgstr "Normal" -#: gtk2_ardour/add_route_dialog.cc:53 -#: gtk2_ardour/add_route_dialog.cc:179 +#: gtk2_ardour/add_route_dialog.cc:52 +#: gtk2_ardour/add_route_dialog.cc:178 msgid "Tape" -msgstr "" +msgstr "Tape" -#: gtk2_ardour/add_route_dialog.cc:62 +#: gtk2_ardour/add_route_dialog.cc:61 msgid "ardour: add track/bus" msgstr "ardour: Füge Spur/Bus hinzu" -#: gtk2_ardour/add_route_dialog.cc:63 -#: gtk2_ardour/editor_route_list.cc:71 +#: gtk2_ardour/add_route_dialog.cc:62 +#: gtk2_ardour/editor_route_list.cc:72 msgid "Tracks" msgstr "Spuren" -#: gtk2_ardour/add_route_dialog.cc:64 -#: gtk2_ardour/editor_route_list.cc:68 +#: gtk2_ardour/add_route_dialog.cc:63 +#: gtk2_ardour/editor_route_list.cc:69 msgid "Busses" msgstr "Busse" -#: gtk2_ardour/add_route_dialog.cc:96 +#: gtk2_ardour/add_route_dialog.cc:95 #: gtk2_ardour/plugin_ui.cc:151 msgid "Add" msgstr "Hinzufügen" -#: gtk2_ardour/add_route_dialog.cc:114 +#: gtk2_ardour/add_route_dialog.cc:113 msgid "Name (template)" msgstr "Name für Mixer-Vorlage" -#: gtk2_ardour/add_route_dialog.cc:120 +#: gtk2_ardour/add_route_dialog.cc:119 msgid "Channel Configuration" msgstr "Kanaleinstellungen" -#: gtk2_ardour/ardour_ui.cc:108 +#: gtk2_ardour/ardour_ui.cc:109 msgid "" "pre\n" "roll" msgstr "" +"pre\n" +"roll" -#: gtk2_ardour/ardour_ui.cc:109 +#: gtk2_ardour/ardour_ui.cc:110 msgid "" "post\n" "roll" msgstr "" +"post\n" +"roll" -#: gtk2_ardour/ardour_ui.cc:117 -msgid "" -"time\n" -"master" -msgstr "" -"Time\n" -"Master" - -#: gtk2_ardour/ardour_ui.cc:119 +#: gtk2_ardour/ardour_ui.cc:136 msgid "% " msgstr "" -#: gtk2_ardour/ardour_ui.cc:121 -#: gtk2_ardour/ardour_ui_ed.cc:274 +#: gtk2_ardour/ardour_ui.cc:138 +#: gtk2_ardour/ardour_ui_ed.cc:290 msgid "Punch In" msgstr "Punch In" -#: gtk2_ardour/ardour_ui.cc:122 -#: gtk2_ardour/ardour_ui_ed.cc:277 +#: gtk2_ardour/ardour_ui.cc:139 +#: gtk2_ardour/ardour_ui_ed.cc:293 msgid "Punch Out" msgstr "Punch Out" -#: gtk2_ardour/ardour_ui.cc:123 -#: gtk2_ardour/ardour_ui_ed.cc:289 +#: gtk2_ardour/ardour_ui.cc:140 +#: gtk2_ardour/ardour_ui_ed.cc:305 msgid "Auto Return" msgstr "Auto Return" -#: gtk2_ardour/ardour_ui.cc:124 -msgid "Autuo Play" +#: gtk2_ardour/ardour_ui.cc:141 +#: gtk2_ardour/ardour_ui_ed.cc:302 +msgid "Auto Play" msgstr "Auto Play" -#: gtk2_ardour/ardour_ui.cc:125 -#: gtk2_ardour/ardour_ui_ed.cc:283 +#: gtk2_ardour/ardour_ui.cc:142 +#: gtk2_ardour/ardour_ui_ed.cc:299 msgid "Auto Input" msgstr "Auto Input" -#: gtk2_ardour/ardour_ui.cc:126 -#: gtk2_ardour/ardour_ui_ed.cc:280 -#: gtk2_ardour/option_editor.cc:126 +#: gtk2_ardour/ardour_ui.cc:143 +#: gtk2_ardour/ardour_ui_ed.cc:296 +#: gtk2_ardour/option_editor.cc:129 msgid "Click" msgstr "Click" -#: gtk2_ardour/ardour_ui.cc:127 +#: gtk2_ardour/ardour_ui.cc:144 +msgid "" +"time\n" +"master" +msgstr "" +"Time\n" +"Master" + +#: gtk2_ardour/ardour_ui.cc:146 msgid "AUDITION" msgstr "VORHÖREN" -#: gtk2_ardour/ardour_ui.cc:128 +#: gtk2_ardour/ardour_ui.cc:147 msgid "SOLO" msgstr "SOLO" -#: gtk2_ardour/ardour_ui.cc:371 +#: gtk2_ardour/ardour_ui.cc:475 +#, fuzzy +msgid "" +"WARNING: Your system has a limit for maximum amount of locked memory. This might cause Ardour to run out of memory before your system runs out of memory. \n" +"\n" +"You can view the memory limit with 'ulimit -l', and it is normally controlled by /etc/security/limits.conf" +msgstr "WARNUNG: Ihr System hat eine Begrenzung für die Reservierung von Arbeitsspeicher eingestellt. Dies könnte dazu führen, dass Ardour zu schnell der Speicher ausgeht." + +#: gtk2_ardour/ardour_ui.cc:483 +msgid "Do not show this window again" +msgstr "Diese Meldung nicht wieder anzeigen" + +#: gtk2_ardour/ardour_ui.cc:504 msgid "quit" msgstr "Beenden" -#: gtk2_ardour/ardour_ui.cc:380 +#: gtk2_ardour/ardour_ui.cc:513 msgid "" "Ardour was unable to save your session.\n" "\n" @@ -376,31 +429,31 @@ msgstr "" "\n" "\"Trotzdem beenden\"." -#: gtk2_ardour/ardour_ui.cc:404 +#: gtk2_ardour/ardour_ui.cc:537 msgid "ardour: save session?" msgstr "ardour: Projekt speichern?" -#: gtk2_ardour/ardour_ui.cc:411 +#: gtk2_ardour/ardour_ui.cc:544 msgid "Don't %1" msgstr "Nicht %1" -#: gtk2_ardour/ardour_ui.cc:413 +#: gtk2_ardour/ardour_ui.cc:546 msgid "Just %1" -msgstr "%1 ohne zu Speichern" +msgstr "Nur %1" -#: gtk2_ardour/ardour_ui.cc:415 +#: gtk2_ardour/ardour_ui.cc:548 msgid "Save and %1" msgstr "Speichern und %1" -#: gtk2_ardour/ardour_ui.cc:427 +#: gtk2_ardour/ardour_ui.cc:560 msgid "session" msgstr "Projekt" -#: gtk2_ardour/ardour_ui.cc:429 +#: gtk2_ardour/ardour_ui.cc:562 msgid "snapshot" msgstr "Schnappschuss..." -#: gtk2_ardour/ardour_ui.cc:431 +#: gtk2_ardour/ardour_ui.cc:564 msgid "" "The %1\"%2\"\n" "has not been saved.\n" @@ -410,88 +463,94 @@ msgid "" "\n" "What do you want to do?" msgstr "" -"Das Projekt %1\"%2\"\n" -"wurde nicht gespeichert.\n" +"Das Projekt %1\"%2\" wurde nicht gespeichert.\n" "\n" -"Alle Änderungen werden verloren\n" -"gehen wenn Sie nicht speichern.\n" +"Alle Änderungen werden verloren gehen wenn Sie nicht speichern.\n" "\n" -"Was wollen Sie machen?" +"Wie wollen Sie vorgehen?" -#: gtk2_ardour/ardour_ui.cc:445 +#: gtk2_ardour/ardour_ui.cc:578 msgid "Prompter" -msgstr "" +msgstr "Frage" -#: gtk2_ardour/ardour_ui.cc:505 +#: gtk2_ardour/ardour_ui.cc:645 #, c-format msgid "disconnected" msgstr "getrennt" -#: gtk2_ardour/ardour_ui.cc:512 +#: gtk2_ardour/ardour_ui.cc:652 #, c-format msgid "%.1f kHz / %4.1f msecs" -msgstr "" +msgstr "%.1f kHz / %4.1f msecs" -#: gtk2_ardour/ardour_ui.cc:516 +#: gtk2_ardour/ardour_ui.cc:656 #, c-format msgid "%u kHz / %4.1f msecs" -msgstr "" +msgstr "%u kHz / %4.1f msecs" -#: gtk2_ardour/ardour_ui.cc:529 +#: gtk2_ardour/ardour_ui.cc:669 #, c-format msgid "DSP: %.1f%%" msgstr "CPU: %.1f%%" -#: gtk2_ardour/ardour_ui.cc:539 +#: gtk2_ardour/ardour_ui.cc:679 #, c-format msgid "Buffers p:%<PRIu32>%% c:%<PRIu32>%%" msgstr "Buffer p:%<PRIu32>%% c:%<PRIu32>%%" -#: gtk2_ardour/ardour_ui.cc:567 +#: gtk2_ardour/ardour_ui.cc:707 msgid "Disk: 24hrs+" -msgstr "Platz: >24 Stunden" +msgstr "HD: >24 Std." -#: gtk2_ardour/ardour_ui.cc:587 +#: gtk2_ardour/ardour_ui.cc:727 #, c-format msgid "Disk: %02dh:%02dm:%02ds" msgstr "HD: %02dh:%02dm:%02ds" -#: gtk2_ardour/ardour_ui.cc:626 -msgid "programming error: impossible control method" -msgstr "Programmierfehler: ungültige Kontrollmethode" - -#: gtk2_ardour/ardour_ui.cc:734 -#: gtk2_ardour/new_session_dialog.cc:355 +#: gtk2_ardour/ardour_ui.cc:840 +#: gtk2_ardour/new_session_dialog.cc:354 msgid "Recent Sessions" msgstr "Zuletzt verwendete Projekte" -#: gtk2_ardour/ardour_ui.cc:827 +#: gtk2_ardour/ardour_ui.cc:933 msgid "open session" msgstr "Projekt öffnen" -#: gtk2_ardour/ardour_ui.cc:833 +#: gtk2_ardour/ardour_ui.cc:939 msgid "Ardour sessions" msgstr "ardour-Projekte" -#: gtk2_ardour/ardour_ui.cc:866 +#: gtk2_ardour/ardour_ui.cc:972 msgid "Patience is a virtue.\n" msgstr "Geduld ist eine Tugend.\n" -#: gtk2_ardour/ardour_ui.cc:876 +#: gtk2_ardour/ardour_ui.cc:982 msgid "You cannot add a track or bus without a session already loaded." msgstr "Sie können erst Spuren oder Busse hinzufügen, wenn ein Projekt geladen wurde." -#: gtk2_ardour/ardour_ui.cc:886 -#: gtk2_ardour/ardour_ui.cc:898 +#: gtk2_ardour/ardour_ui.cc:992 +#: gtk2_ardour/ardour_ui.cc:1005 msgid "could not create a new audio track" msgstr "Konnte neue Spur nicht erstellen." -#: gtk2_ardour/ardour_ui.cc:888 -#: gtk2_ardour/ardour_ui.cc:900 +#: gtk2_ardour/ardour_ui.cc:994 +#, fuzzy +msgid "could only create %1 of %2 new audio %3" +msgstr "nix" + +#: gtk2_ardour/ardour_ui.cc:995 +msgid "tracks" +msgstr "Spuren" + +#: gtk2_ardour/ardour_ui.cc:995 +msgid "busses" +msgstr "Busse" + +#: gtk2_ardour/ardour_ui.cc:1007 msgid "could not create %1 new audio tracks" msgstr "Konnte %1 neue Spuren nicht erstellen." -#: gtk2_ardour/ardour_ui.cc:920 +#: gtk2_ardour/ardour_ui.cc:1028 msgid "" "There are insufficient JACK ports available\n" "to create a new track or bus.\n" @@ -504,7 +563,7 @@ msgstr "" "ardour sowie JACK mit einer größeren\n" "Anzahl Ports erneut." -#: gtk2_ardour/ardour_ui.cc:1040 +#: gtk2_ardour/ardour_ui.cc:1148 msgid "" "Please create 1 or more track\n" "before trying to record.\n" @@ -514,7 +573,7 @@ msgstr "" "bevor Sie aufnehmen.\n" "Weitere Einstellungen finden Sie im Projektmenü." -#: gtk2_ardour/ardour_ui.cc:1260 +#: gtk2_ardour/ardour_ui.cc:1393 msgid "" "JACK has either been shutdown or it\n" "disconnected Ardour because Ardour\n" @@ -526,35 +585,39 @@ msgstr "" "schnell genug war. Sie sollten versuchen,\n" "das Projekt zu speichern und erneut mit JACK zu verbinden." -#: gtk2_ardour/ardour_ui.cc:1277 -#, fuzzy +#: gtk2_ardour/ardour_ui.cc:1410 msgid "Unable to start the session running" msgstr "Konnte das aktuelle Projekt nicht starten" -#: gtk2_ardour/ardour_ui.cc:1377 -#: gtk2_ardour/ardour_ui.cc:1396 -#: gtk2_ardour/audio_clock.cc:462 +#: gtk2_ardour/ardour_ui.cc:1510 +#: gtk2_ardour/ardour_ui.cc:1529 +#: gtk2_ardour/audio_clock.cc:461 msgid "none" msgstr "keine" -#: gtk2_ardour/ardour_ui.cc:1386 -#: gtk2_ardour/ardour_ui.cc:1405 +#: gtk2_ardour/ardour_ui.cc:1519 +#: gtk2_ardour/ardour_ui.cc:1538 msgid "off" msgstr "aus" -#: gtk2_ardour/ardour_ui.cc:1428 +#: gtk2_ardour/ardour_ui.cc:1562 msgid "Name of New Snapshot" msgstr "Name für neuen Schnappschuss" -#: gtk2_ardour/ardour_ui.cc:1574 +#: gtk2_ardour/ardour_ui.cc:1702 msgid "Name for mix template:" msgstr "Name für Mixer-Vorlage" -#: gtk2_ardour/ardour_ui.cc:1575 +#: gtk2_ardour/ardour_ui.cc:1703 msgid "-template" msgstr "Vorlage" -#: gtk2_ardour/ardour_ui.cc:1696 +#: gtk2_ardour/ardour_ui.cc:1727 +#: gtk2_ardour/ardour_ui.cc:1744 +msgid "Ardour is not connected to JACK at this time. Creating new sessions is not possible." +msgstr "Ardour ist derzeit nicht mit JACK verbunden. Es ist nicht möglich, neue Projekte zu erstellen." + +#: gtk2_ardour/ardour_ui.cc:1837 msgid "" "This session\n" "%1\n" @@ -564,7 +627,7 @@ msgstr "" "%1\n" "existiert bereits. Wollen Sie sie öffnen?" -#: gtk2_ardour/ardour_ui.cc:1813 +#: gtk2_ardour/ardour_ui.cc:1960 msgid "" "You do not have write access to this session.\n" "This prevents the session from being loaded." @@ -572,42 +635,49 @@ msgstr "" "Sie haben keinen Schreibzugriff auf dieses Projekt.\n" "Dadurch kann das Projekt nicht geladen werden." -#: gtk2_ardour/ardour_ui.cc:1825 -#: gtk2_ardour/ardour_ui.cc:1874 +#: gtk2_ardour/ardour_ui.cc:1972 msgid "Session \"%1 (snapshot %2)\" did not load successfully" msgstr "Projekt \"%1 (Schnappschuss %2)\" konnte nicht geladen werden." -#: gtk2_ardour/ardour_ui.cc:1933 +#: gtk2_ardour/ardour_ui.cc:2022 +msgid "Could not create session in \"%1\"" +msgstr "Konnte kein Projekt in \"%1\" anlegen" + +#: gtk2_ardour/ardour_ui.cc:2082 msgid "No audio files were ready for cleanup" msgstr "Keine Audiodateien zum Aufräumen vorhanden" -#: gtk2_ardour/ardour_ui.cc:1937 +#: gtk2_ardour/ardour_ui.cc:2086 msgid "" "If this seems suprising, \n" "check for any existing snapshots.\n" "These may still include regions that\n" "require some unused files to continue to exist." msgstr "" +"Falls trotzdem nicht benötigte Dateien\n" +"existieren, welche hier nicht erkannt werden,\n" +"sind sie wahrscheinlich noch in einem\n" +"älteren Schnappschuss als Region eingebunden." -#: gtk2_ardour/ardour_ui.cc:1946 +#: gtk2_ardour/ardour_ui.cc:2095 msgid "ardour: cleanup" msgstr "ardour: Aufräumen" -#: gtk2_ardour/ardour_ui.cc:1982 -#: gtk2_ardour/ardour_ui.cc:1988 +#: gtk2_ardour/ardour_ui.cc:2131 +#: gtk2_ardour/ardour_ui.cc:2137 msgid "files were" msgstr "folgenden Dateien wurden" -#: gtk2_ardour/ardour_ui.cc:1984 -#: gtk2_ardour/ardour_ui.cc:1990 +#: gtk2_ardour/ardour_ui.cc:2133 +#: gtk2_ardour/ardour_ui.cc:2139 msgid "file was" msgstr "folgende Datei wurde" -#: gtk2_ardour/ardour_ui.cc:2031 +#: gtk2_ardour/ardour_ui.cc:2180 msgid "Are you sure you want to cleanup?" msgstr "Sind Sie sicher, dass Sie aufräumen wollen?" -#: gtk2_ardour/ardour_ui.cc:2036 +#: gtk2_ardour/ardour_ui.cc:2185 msgid "" "Cleanup is a destructive operation.\n" "ALL undo/redo information will be lost if you cleanup.\n" @@ -617,20 +687,19 @@ msgstr "" "Sämtliche Wiederherstellungsinformationen gehen verloren, wenn Sie aufräumen.\n" "Nach dem Aufräumen werden alle nicht benötigten Audiodateien in einen \"dead sounds\" Ordner verschoben." -#: gtk2_ardour/ardour_ui.cc:2042 +#: gtk2_ardour/ardour_ui.cc:2191 msgid "Clean Up" msgstr "Aufräumen" -#: gtk2_ardour/ardour_ui.cc:2045 -#, fuzzy +#: gtk2_ardour/ardour_ui.cc:2194 msgid "CleanupDialog" -msgstr "leeren" +msgstr "" -#: gtk2_ardour/ardour_ui.cc:2065 +#: gtk2_ardour/ardour_ui.cc:2222 msgid "cleaned files" msgstr "aufgeräumte Dateien" -#: gtk2_ardour/ardour_ui.cc:2066 +#: gtk2_ardour/ardour_ui.cc:2223 msgid "" "The following %1 %2 not in use and \n" "have been moved to:\n" @@ -647,11 +716,11 @@ msgstr "" "Wenn Sie den Müll leeren werden weitere\n" "%4 %5byte Speicherplatz frei.\n" -#: gtk2_ardour/ardour_ui.cc:2091 +#: gtk2_ardour/ardour_ui.cc:2251 msgid "deleted file" msgstr "gelöschte Datei" -#: gtk2_ardour/ardour_ui.cc:2092 +#: gtk2_ardour/ardour_ui.cc:2252 msgid "" "The following %1 %2 deleted from\n" "%3,\n" @@ -661,11 +730,11 @@ msgstr "" "%3,\n" "und machten %4 %5byte Speicherplatz frei" -#: gtk2_ardour/ardour_ui.cc:2208 +#: gtk2_ardour/ardour_ui.cc:2370 msgid "Recording was stopped because your system could not keep up." -msgstr "" +msgstr "Die Aufnahme wurde gestoppt, da Ihr System nicht schnell genug folgen konnte." -#: gtk2_ardour/ardour_ui.cc:2219 +#: gtk2_ardour/ardour_ui.cc:2381 msgid "" "The disk system on your computer\n" "was not able to keep up with Ardour.\n" @@ -673,8 +742,13 @@ msgid "" "Specifically, it failed to write data to disk\n" "quickly enough to keep up with recording.\n" msgstr "" +"Ihre Festplatte war nicht schnell genug,\n" +"um ardour zu folgen.\n" +"\n" +"Die Daten konnten nicht schnell genug geschrieben\n" +"werden, um die Aufnahme fortzuführen.\n" -#: gtk2_ardour/ardour_ui.cc:2238 +#: gtk2_ardour/ardour_ui.cc:2400 msgid "" "The disk system on your computer\n" "was not able to keep up with Ardour.\n" @@ -682,8 +756,13 @@ msgid "" "Specifically, it failed to read data from disk\n" "quickly enough to keep up with playback.\n" msgstr "" +"Ihre Festplatte war nicht schnell genug,\n" +"um ardour zu folgen.\n" +"\n" +"Die Daten konnten nicht schnell genug gelesen\n" +"werden, um die Wiedergabe aufrechtzuerhalten.\n" -#: gtk2_ardour/ardour_ui.cc:2264 +#: gtk2_ardour/ardour_ui.cc:2421 msgid "" "This session appears to have been in\n" "middle of recording when ardour or\n" @@ -693,125 +772,116 @@ msgid "" "you, or it can ignore it. Please decide\n" "what you would like to do.\n" msgstr "" +"Es scheint, dass dieses Projekt während\n" +"einer Aufnahme abgebrochen oder\n" +"geschlossen wurde.\n" +"\n" +"Ardour kann die Aufgenommenen Audiodaten\n" +"für Sie wiederherstellen oder sie verwerfen.\n" +"Bitte entscheiden Sie, wie Sie vorgehen möchten.\n" -#: gtk2_ardour/ardour_ui.cc:2274 +#: gtk2_ardour/ardour_ui.cc:2431 msgid "Recover from crash" -msgstr "" +msgstr "Daten wiederherstellen" -#: gtk2_ardour/ardour_ui.cc:2275 +#: gtk2_ardour/ardour_ui.cc:2432 msgid "Ignore crash data" -msgstr "" +msgstr "Daten verwerfen" -#: gtk2_ardour/ardour_ui.cc:2293 +#: gtk2_ardour/ardour_ui.cc:2450 msgid "Could not disconnect from JACK" -msgstr "" +msgstr "Konnte Verbindung mit JACK nicht trennen" -#: gtk2_ardour/ardour_ui.cc:2306 +#: gtk2_ardour/ardour_ui.cc:2463 msgid "Could not reconnect to JACK" -msgstr "" +msgstr "Konnte nicht erneut zu JACK verbinden" -#: gtk2_ardour/ardour_ui2.cc:60 +#: gtk2_ardour/ardour_ui2.cc:61 msgid "UI: cannot setup editor" msgstr "Der Editor konnte nicht initialisiert werden." -#: gtk2_ardour/ardour_ui2.cc:65 +#: gtk2_ardour/ardour_ui2.cc:66 msgid "UI: cannot setup mixer" msgstr "Der Mixer konnte nicht initialisiert werden." -#: gtk2_ardour/ardour_ui2.cc:91 -msgid "MMC + Local" -msgstr "" - -#: gtk2_ardour/ardour_ui2.cc:92 -msgid "MMC" -msgstr "" - -#: gtk2_ardour/ardour_ui2.cc:93 -msgid "Local" -msgstr "" - -#: gtk2_ardour/ardour_ui2.cc:110 -msgid "MMC ID" -msgstr "" - -#: gtk2_ardour/ardour_ui2.cc:295 +#: gtk2_ardour/ardour_ui2.cc:242 msgid "Play from playhead" msgstr "Wiedergabe ab Positionszeiger" -#: gtk2_ardour/ardour_ui2.cc:296 +#: gtk2_ardour/ardour_ui2.cc:243 msgid "Stop playback" msgstr "Wiedergabe anhalten" -#: gtk2_ardour/ardour_ui2.cc:297 +#: gtk2_ardour/ardour_ui2.cc:244 msgid "Play range/selection" msgstr "Bereich/Auswahl wiedergeben" -#: gtk2_ardour/ardour_ui2.cc:298 +#: gtk2_ardour/ardour_ui2.cc:245 msgid "Go to start of session" msgstr "Zum Anfang des Projekts springen" -#: gtk2_ardour/ardour_ui2.cc:299 +#: gtk2_ardour/ardour_ui2.cc:246 msgid "Go to end of session" msgstr "Zum Ende des Projekts springen" -#: gtk2_ardour/ardour_ui2.cc:300 +#: gtk2_ardour/ardour_ui2.cc:247 msgid "Play loop range" msgstr "Schleife wiedergeben" -#: gtk2_ardour/ardour_ui2.cc:301 +#: gtk2_ardour/ardour_ui2.cc:249 msgid "Return to last playback start when stopped" msgstr "Bei Stop zum letzten Wiedergabeanfang springen" -#: gtk2_ardour/ardour_ui2.cc:302 +#: gtk2_ardour/ardour_ui2.cc:250 msgid "Start playback after any locate" msgstr "Startet die Wiedergabe nach setzen des Positionszeigers" -#: gtk2_ardour/ardour_ui2.cc:303 +#: gtk2_ardour/ardour_ui2.cc:251 msgid "Be sensible about input monitoring" msgstr "Automatisches Input Monitoring aktivieren" -#: gtk2_ardour/ardour_ui2.cc:304 +#: gtk2_ardour/ardour_ui2.cc:252 msgid "Start recording at auto-punch start" msgstr "Beginnt die Aufnahme bei Auto-Punch Start" -#: gtk2_ardour/ardour_ui2.cc:305 +#: gtk2_ardour/ardour_ui2.cc:253 msgid "Stop recording at auto-punch end" msgstr "Beginnt die Aufnahme bei Auto-Punch Ende" -#: gtk2_ardour/ardour_ui2.cc:306 +#: gtk2_ardour/ardour_ui2.cc:254 msgid "Enable/Disable audio click" msgstr "Aktiviert/Deaktiviert Audio Click" -#: gtk2_ardour/ardour_ui2.cc:307 +#: gtk2_ardour/ardour_ui2.cc:255 msgid "Positional sync source" -msgstr "" +msgstr "Positionsbezogene Sync-quelle" -#: gtk2_ardour/ardour_ui2.cc:308 +#: gtk2_ardour/ardour_ui2.cc:256 msgid "Does Ardour control the time?" msgstr "Bestimmt ardour die Time?" -#: gtk2_ardour/ardour_ui2.cc:309 +#: gtk2_ardour/ardour_ui2.cc:257 msgid "Shuttle speed control" msgstr "Shuttle-Geschwindigkeit" -#: gtk2_ardour/ardour_ui2.cc:310 +#: gtk2_ardour/ardour_ui2.cc:258 #, c-format msgid "Select semitones or %%-age for speed display" msgstr "Geschwindigkeitsanzeige als Prozent oder Halbtöne einstellen" -#: gtk2_ardour/ardour_ui2.cc:311 +#: gtk2_ardour/ardour_ui2.cc:259 msgid "Current transport speed" msgstr "Geschwindigkeitsanzeige" -#: gtk2_ardour/ardour_ui2.cc:331 +#: gtk2_ardour/ardour_ui2.cc:279 msgid "Primary clock" -msgstr "" +msgstr "Primärer Zeitgeber" -#: gtk2_ardour/ardour_ui2.cc:332 +#: gtk2_ardour/ardour_ui2.cc:280 msgid "secondary clock" -msgstr "" +msgstr "Sekundärer Zeitgeber" -#: gtk2_ardour/ardour_ui2.cc:363 +#: gtk2_ardour/ardour_ui2.cc:306 msgid "" "When active, something is soloed.\n" "Click to de-solo everything" @@ -819,7 +889,7 @@ msgstr "" "Wird aktiv, wenn eine Spur Solo läuft.\n" "Schaltet bei Klick Solo aus." -#: gtk2_ardour/ardour_ui2.cc:364 +#: gtk2_ardour/ardour_ui2.cc:307 msgid "" "When active, auditioning is taking place\n" "Click to stop the audition" @@ -827,38 +897,38 @@ msgstr "" "Wird beim Vorhören aktiv.\n" "Klicken stoppt das Vorhören." -#: gtk2_ardour/ardour_ui2.cc:392 -#: gtk2_ardour/ardour_ui2.cc:823 -#: gtk2_ardour/ardour_ui2.cc:879 -#: gtk2_ardour/ardour_ui_options.cc:811 +#: gtk2_ardour/ardour_ui2.cc:335 +#: gtk2_ardour/ardour_ui2.cc:777 +#: gtk2_ardour/ardour_ui2.cc:833 +#: gtk2_ardour/ardour_ui_options.cc:918 msgid "sprung" msgstr "Feder" -#: gtk2_ardour/ardour_ui2.cc:393 -#: gtk2_ardour/ardour_ui2.cc:825 -#: gtk2_ardour/ardour_ui_options.cc:822 +#: gtk2_ardour/ardour_ui2.cc:336 +#: gtk2_ardour/ardour_ui2.cc:779 +#: gtk2_ardour/ardour_ui_options.cc:929 msgid "wheel" msgstr "Drehrad" -#: gtk2_ardour/ardour_ui2.cc:599 +#: gtk2_ardour/ardour_ui2.cc:542 msgid "Maximum speed" -msgstr "" +msgstr "Max. Geschwindigkeit" -#: gtk2_ardour/ardour_ui2.cc:835 -#: gtk2_ardour/ardour_ui2.cc:858 +#: gtk2_ardour/ardour_ui2.cc:789 +#: gtk2_ardour/ardour_ui2.cc:812 msgid "stop" msgstr "Stop" -#: gtk2_ardour/ardour_ui2.cc:877 +#: gtk2_ardour/ardour_ui2.cc:831 msgid "-0.55" -msgstr "" +msgstr "-0.55" -#: gtk2_ardour/ardour_ui_dependents.cc:85 +#: gtk2_ardour/ardour_ui_dependents.cc:84 msgid "Ardour key bindings file not found at \"%1\" or contains errors." -msgstr "" +msgstr "Konnte die Datei mit den Tastaturzuweisungen nicht an der Stelle \"%1\" finden, oder sie ist fehlerhaft." -#: gtk2_ardour/ardour_ui_dialogs.cc:149 -#: gtk2_ardour/playlist_selector.cc:69 +#: gtk2_ardour/ardour_ui_dialogs.cc:164 +#: gtk2_ardour/playlist_selector.cc:68 msgid "close" msgstr "Schließen" @@ -867,11 +937,11 @@ msgid "Session" msgstr "Projekt" #: gtk2_ardour/ardour_ui_ed.cc:78 -#: gtk2_ardour/ardour_ui_ed.cc:138 -#: gtk2_ardour/editor.cc:1622 -#: gtk2_ardour/export_dialog.cc:348 -#: gtk2_ardour/export_dialog.cc:1057 -#: gtk2_ardour/export_dialog.cc:1061 +#: gtk2_ardour/ardour_ui_ed.cc:139 +#: gtk2_ardour/editor.cc:1619 +#: gtk2_ardour/export_dialog.cc:346 +#: gtk2_ardour/export_dialog.cc:1055 +#: gtk2_ardour/export_dialog.cc:1059 msgid "Export" msgstr "Exportieren" @@ -880,9 +950,9 @@ msgid "Cleanup" msgstr "Aufräumen" #: gtk2_ardour/ardour_ui_ed.cc:80 -#: gtk2_ardour/option_editor.cc:123 +#: gtk2_ardour/option_editor.cc:126 msgid "Sync" -msgstr "" +msgstr "Sync" #: gtk2_ardour/ardour_ui_ed.cc:81 #: gtk2_ardour/ardour_ui_ed.cc:82 @@ -927,89 +997,85 @@ msgstr "Pegelanzeige halten" #: gtk2_ardour/ardour_ui_ed.cc:95 #: gtk2_ardour/route_time_axis.cc:1308 -#: gtk2_ardour/new_session_dialog.cc:612 +#: gtk2_ardour/new_session_dialog.cc:611 msgid "New" -msgstr "Neu..." +msgstr "Neu" #: gtk2_ardour/ardour_ui_ed.cc:97 -#: gtk2_ardour/new_session_dialog.cc:599 +#: gtk2_ardour/new_session_dialog.cc:598 msgid "Open" -msgstr "Öffnen..." +msgstr "Öffnen" #: gtk2_ardour/ardour_ui_ed.cc:98 msgid "Recent" msgstr "Zuletzt verwendet..." #: gtk2_ardour/ardour_ui_ed.cc:99 -#: gtk2_ardour/io_selector.cc:60 -#: gtk2_ardour/io_selector.cc:748 -#: gtk2_ardour/connection_editor.cc:59 +#: gtk2_ardour/io_selector.cc:59 +#: gtk2_ardour/io_selector.cc:747 +#: gtk2_ardour/connection_editor.cc:58 msgid "Close" msgstr "Schließen" #: gtk2_ardour/ardour_ui_ed.cc:102 -#: gtk2_ardour/route_params_ui.cc:510 +#: gtk2_ardour/route_params_ui.cc:508 msgid "Add Track/Bus" msgstr "Spur/Bus hinzufügen..." -#: gtk2_ardour/ardour_ui_ed.cc:113 +#: gtk2_ardour/ardour_ui_ed.cc:114 msgid "Connect" msgstr "Verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:121 +#: gtk2_ardour/ardour_ui_ed.cc:122 msgid "Snapshot" msgstr "Schnappschuss" -#: gtk2_ardour/ardour_ui_ed.cc:124 +#: gtk2_ardour/ardour_ui_ed.cc:125 msgid "Save Template..." msgstr "Als Vorlage Speichern..." -#: gtk2_ardour/ardour_ui_ed.cc:127 +#: gtk2_ardour/ardour_ui_ed.cc:128 msgid "Export session to audiofile..." msgstr "Exportiere Projekt als Audio-Datei..." -#: gtk2_ardour/ardour_ui_ed.cc:130 +#: gtk2_ardour/ardour_ui_ed.cc:131 msgid "Export selection to audiofile..." msgstr "Exportiere Auswahl als Audio-Datei..." -#: gtk2_ardour/ardour_ui_ed.cc:134 +#: gtk2_ardour/ardour_ui_ed.cc:135 msgid "Export range markers to audiofile..." msgstr "Exportiere Bereich als Audio-Datei..." -#: gtk2_ardour/ardour_ui_ed.cc:141 +#: gtk2_ardour/ardour_ui_ed.cc:142 msgid "Cleanup unused sources" msgstr "Nicht benutzte Dateien entfernen" -#: gtk2_ardour/ardour_ui_ed.cc:143 +#: gtk2_ardour/ardour_ui_ed.cc:144 msgid "Flush wastebasket" msgstr "Müll leeren" -#: gtk2_ardour/ardour_ui_ed.cc:149 +#: gtk2_ardour/ardour_ui_ed.cc:150 msgid "JACK" -msgstr "" +msgstr "JACK" -#: gtk2_ardour/ardour_ui_ed.cc:150 +#: gtk2_ardour/ardour_ui_ed.cc:151 msgid "Latency" msgstr "Latenz" -#: gtk2_ardour/ardour_ui_ed.cc:152 +#: gtk2_ardour/ardour_ui_ed.cc:153 msgid "Reconnect" msgstr "Neu Verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:155 -#: gtk2_ardour/mixer_strip.cc:517 -#: gtk2_ardour/mixer_strip.cc:579 +#: gtk2_ardour/ardour_ui_ed.cc:156 +#: gtk2_ardour/mixer_strip.cc:510 +#: gtk2_ardour/mixer_strip.cc:572 msgid "Disconnect" msgstr "Trennen" -#: gtk2_ardour/ardour_ui_ed.cc:182 +#: gtk2_ardour/ardour_ui_ed.cc:183 msgid "Windows" msgstr "Fenster" -#: gtk2_ardour/ardour_ui_ed.cc:183 -msgid "start prefix" -msgstr "" - #: gtk2_ardour/ardour_ui_ed.cc:184 msgid "Quit" msgstr "Beenden" @@ -1035,8 +1101,8 @@ msgid "Track/Bus Inspector" msgstr "Verbindungen" #: gtk2_ardour/ardour_ui_ed.cc:195 +#: gtk2_ardour/connection_editor.cc:146 #: gtk2_ardour/connection_editor.cc:147 -#: gtk2_ardour/connection_editor.cc:148 msgid "Connections" msgstr "Verbindungen" @@ -1046,7 +1112,7 @@ msgstr "Positionen" #: gtk2_ardour/ardour_ui_ed.cc:199 msgid "Big Clock" -msgstr "Große Uhr" +msgstr "Große Zeitanzeige" #: gtk2_ardour/ardour_ui_ed.cc:201 msgid "About" @@ -1062,7 +1128,7 @@ msgstr "Audiospur hinzufügen" #: gtk2_ardour/ardour_ui_ed.cc:206 msgid "Add Audio Bus" -msgstr "" +msgstr "Audio-Bus hinzufügen" #: gtk2_ardour/ardour_ui_ed.cc:208 msgid "Save" @@ -1078,13 +1144,13 @@ msgid "Transport" msgstr "Transport" #: gtk2_ardour/ardour_ui_ed.cc:223 -#: gtk2_ardour/sfdb_ui.cc:60 +#: gtk2_ardour/sfdb_ui.cc:62 msgid "Stop" msgstr "Stop" #: gtk2_ardour/ardour_ui_ed.cc:226 msgid "Roll" -msgstr "" +msgstr "Wiedergabe" #: gtk2_ardour/ardour_ui_ed.cc:230 msgid "Start/Stop" @@ -1094,410 +1160,439 @@ msgstr "Start/Stop" msgid "Stop + Forget Capture" msgstr "Stop + Aufnahme verwerfen" -#: gtk2_ardour/ardour_ui_ed.cc:236 +#: gtk2_ardour/ardour_ui_ed.cc:243 +#, fuzzy +msgid "Transition To Roll" +msgstr "Traditionell" + +#: gtk2_ardour/ardour_ui_ed.cc:247 +msgid "Transition To Reverse" +msgstr "" + +#: gtk2_ardour/ardour_ui_ed.cc:252 msgid "Play Loop Range" msgstr "Schleife wiedergeben" -#: gtk2_ardour/ardour_ui_ed.cc:239 +#: gtk2_ardour/ardour_ui_ed.cc:255 msgid "Play Selection" msgstr "Auswahl wiedergeben" -#: gtk2_ardour/ardour_ui_ed.cc:243 +#: gtk2_ardour/ardour_ui_ed.cc:259 msgid "Enable Record" msgstr "Aufnahme aktivieren" -#: gtk2_ardour/ardour_ui_ed.cc:246 +#: gtk2_ardour/ardour_ui_ed.cc:262 msgid "Rewind" msgstr "Rückwärts" -#: gtk2_ardour/ardour_ui_ed.cc:249 +#: gtk2_ardour/ardour_ui_ed.cc:265 msgid "Rewind (Slow)" -msgstr "" +msgstr "Rückwärts (langsam)" -#: gtk2_ardour/ardour_ui_ed.cc:252 +#: gtk2_ardour/ardour_ui_ed.cc:268 msgid "Rewind (Fast)" -msgstr "" +msgstr "Rückwärts (schnell)" -#: gtk2_ardour/ardour_ui_ed.cc:255 +#: gtk2_ardour/ardour_ui_ed.cc:271 msgid "Forward" msgstr "Vorwärts" -#: gtk2_ardour/ardour_ui_ed.cc:258 +#: gtk2_ardour/ardour_ui_ed.cc:274 msgid "Forward (Slow)" -msgstr "" +msgstr "Vorwärts (langsam)" -#: gtk2_ardour/ardour_ui_ed.cc:261 +#: gtk2_ardour/ardour_ui_ed.cc:277 msgid "Forward (Fast)" -msgstr "" +msgstr "Vorwärts (schnell)" -#: gtk2_ardour/ardour_ui_ed.cc:264 +#: gtk2_ardour/ardour_ui_ed.cc:280 msgid "Goto Zero" msgstr "Zum Nullpunkt springen" -#: gtk2_ardour/ardour_ui_ed.cc:267 +#: gtk2_ardour/ardour_ui_ed.cc:283 msgid "Goto Start" msgstr "Zum Anfang springen" -#: gtk2_ardour/ardour_ui_ed.cc:270 +#: gtk2_ardour/ardour_ui_ed.cc:286 msgid "Goto End" msgstr "Zum Ende Springen" -#: gtk2_ardour/ardour_ui_ed.cc:286 -msgid "Auto Play" -msgstr "Auto Play" - -#: gtk2_ardour/ardour_ui_ed.cc:293 +#: gtk2_ardour/ardour_ui_ed.cc:309 msgid "Sync startup to video" msgstr "Mit Video synchronisieren" -#: gtk2_ardour/ardour_ui_ed.cc:294 +#: gtk2_ardour/ardour_ui_ed.cc:310 msgid "Time master" msgstr "Time Master" -#: gtk2_ardour/ardour_ui_ed.cc:297 +#: gtk2_ardour/ardour_ui_ed.cc:313 msgid "Toggle Record Enable Track1" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 1" -#: gtk2_ardour/ardour_ui_ed.cc:299 +#: gtk2_ardour/ardour_ui_ed.cc:315 msgid "Toggle Record Enable Track2" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 2" -#: gtk2_ardour/ardour_ui_ed.cc:301 +#: gtk2_ardour/ardour_ui_ed.cc:317 msgid "Toggle Record Enable Track3" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 3" -#: gtk2_ardour/ardour_ui_ed.cc:303 +#: gtk2_ardour/ardour_ui_ed.cc:319 msgid "Toggle Record Enable Track4" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 4" -#: gtk2_ardour/ardour_ui_ed.cc:305 +#: gtk2_ardour/ardour_ui_ed.cc:321 msgid "Toggle Record Enable Track5" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 5" -#: gtk2_ardour/ardour_ui_ed.cc:307 +#: gtk2_ardour/ardour_ui_ed.cc:323 msgid "Toggle Record Enable Track6" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 6" -#: gtk2_ardour/ardour_ui_ed.cc:309 +#: gtk2_ardour/ardour_ui_ed.cc:325 msgid "Toggle Record Enable Track7" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 7" -#: gtk2_ardour/ardour_ui_ed.cc:311 +#: gtk2_ardour/ardour_ui_ed.cc:327 msgid "Toggle Record Enable Track8" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 8" -#: gtk2_ardour/ardour_ui_ed.cc:313 +#: gtk2_ardour/ardour_ui_ed.cc:329 msgid "Toggle Record Enable Track9" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 9" -#: gtk2_ardour/ardour_ui_ed.cc:315 +#: gtk2_ardour/ardour_ui_ed.cc:331 msgid "Toggle Record Enable Track10" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 10" -#: gtk2_ardour/ardour_ui_ed.cc:317 +#: gtk2_ardour/ardour_ui_ed.cc:333 msgid "Toggle Record Enable Track11" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 11" -#: gtk2_ardour/ardour_ui_ed.cc:319 +#: gtk2_ardour/ardour_ui_ed.cc:335 msgid "Toggle Record Enable Track12" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 12" -#: gtk2_ardour/ardour_ui_ed.cc:321 +#: gtk2_ardour/ardour_ui_ed.cc:337 msgid "Toggle Record Enable Track13" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 13" -#: gtk2_ardour/ardour_ui_ed.cc:323 +#: gtk2_ardour/ardour_ui_ed.cc:339 msgid "Toggle Record Enable Track14" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 14" -#: gtk2_ardour/ardour_ui_ed.cc:325 +#: gtk2_ardour/ardour_ui_ed.cc:341 msgid "Toggle Record Enable Track15" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 15" -#: gtk2_ardour/ardour_ui_ed.cc:327 +#: gtk2_ardour/ardour_ui_ed.cc:343 msgid "Toggle Record Enable Track16" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 16" -#: gtk2_ardour/ardour_ui_ed.cc:329 +#: gtk2_ardour/ardour_ui_ed.cc:345 msgid "Toggle Record Enable Track17" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 17" -#: gtk2_ardour/ardour_ui_ed.cc:331 +#: gtk2_ardour/ardour_ui_ed.cc:347 msgid "Toggle Record Enable Track18" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 18" -#: gtk2_ardour/ardour_ui_ed.cc:333 +#: gtk2_ardour/ardour_ui_ed.cc:349 msgid "Toggle Record Enable Track19" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 19" -#: gtk2_ardour/ardour_ui_ed.cc:335 +#: gtk2_ardour/ardour_ui_ed.cc:351 msgid "Toggle Record Enable Track20" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 20" -#: gtk2_ardour/ardour_ui_ed.cc:337 +#: gtk2_ardour/ardour_ui_ed.cc:353 msgid "Toggle Record Enable Track21" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 21" -#: gtk2_ardour/ardour_ui_ed.cc:339 +#: gtk2_ardour/ardour_ui_ed.cc:355 msgid "Toggle Record Enable Track22" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 22" -#: gtk2_ardour/ardour_ui_ed.cc:341 +#: gtk2_ardour/ardour_ui_ed.cc:357 msgid "Toggle Record Enable Track23" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 23" -#: gtk2_ardour/ardour_ui_ed.cc:343 +#: gtk2_ardour/ardour_ui_ed.cc:359 msgid "Toggle Record Enable Track24" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 24" -#: gtk2_ardour/ardour_ui_ed.cc:345 +#: gtk2_ardour/ardour_ui_ed.cc:361 msgid "Toggle Record Enable Track25" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 25" -#: gtk2_ardour/ardour_ui_ed.cc:347 +#: gtk2_ardour/ardour_ui_ed.cc:363 msgid "Toggle Record Enable Track26" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 26" -#: gtk2_ardour/ardour_ui_ed.cc:349 +#: gtk2_ardour/ardour_ui_ed.cc:365 msgid "Toggle Record Enable Track27" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 27" -#: gtk2_ardour/ardour_ui_ed.cc:351 +#: gtk2_ardour/ardour_ui_ed.cc:367 msgid "Toggle Record Enable Track28" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 28" -#: gtk2_ardour/ardour_ui_ed.cc:353 +#: gtk2_ardour/ardour_ui_ed.cc:369 msgid "Toggle Record Enable Track29" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 29" -#: gtk2_ardour/ardour_ui_ed.cc:355 +#: gtk2_ardour/ardour_ui_ed.cc:371 msgid "Toggle Record Enable Track30" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 30" -#: gtk2_ardour/ardour_ui_ed.cc:357 +#: gtk2_ardour/ardour_ui_ed.cc:373 msgid "Toggle Record Enable Track31" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 31" -#: gtk2_ardour/ardour_ui_ed.cc:359 +#: gtk2_ardour/ardour_ui_ed.cc:375 msgid "Toggle Record Enable Track32" -msgstr "" +msgstr "Aufnahme aktivieren für Spur 32" -#: gtk2_ardour/ardour_ui_ed.cc:364 +#: gtk2_ardour/ardour_ui_ed.cc:380 msgid "Percentage" msgstr "Prozent" -#: gtk2_ardour/ardour_ui_ed.cc:365 +#: gtk2_ardour/ardour_ui_ed.cc:381 msgid "Semitones" msgstr "Halbtöne" -#: gtk2_ardour/ardour_ui_ed.cc:369 +#: gtk2_ardour/ardour_ui_ed.cc:385 msgid "Send MTC" msgstr "MTC senden" -#: gtk2_ardour/ardour_ui_ed.cc:371 +#: gtk2_ardour/ardour_ui_ed.cc:387 msgid "Send MMC" msgstr "MMC senden" -#: gtk2_ardour/ardour_ui_ed.cc:373 +#: gtk2_ardour/ardour_ui_ed.cc:389 msgid "Use MMC" msgstr "Benutze MMC" -#: gtk2_ardour/ardour_ui_ed.cc:375 +#: gtk2_ardour/ardour_ui_ed.cc:391 msgid "Send MIDI feedback" -msgstr "" +msgstr "MIDI Feedback senden" -#: gtk2_ardour/ardour_ui_ed.cc:377 +#: gtk2_ardour/ardour_ui_ed.cc:393 msgid "Use MIDI control" -msgstr "" +msgstr "Benutze MIDI-Steuerung" -#: gtk2_ardour/ardour_ui_ed.cc:380 +#: gtk2_ardour/ardour_ui_ed.cc:396 +msgid "Use OSC" +msgstr "Aktiviere OSC" + +#: gtk2_ardour/ardour_ui_ed.cc:401 msgid "Stop plugins with transport" msgstr "Plugins mit Transport stoppen" -#: gtk2_ardour/ardour_ui_ed.cc:381 +#: gtk2_ardour/ardour_ui_ed.cc:402 msgid "Verify remove last capture" msgstr "Verwerfen der letzten Aufnahme bestätigen" -#: gtk2_ardour/ardour_ui_ed.cc:382 +#: gtk2_ardour/ardour_ui_ed.cc:403 msgid "Stop recording on xrun" msgstr "Aufnahme bei XRUN stoppen" -#: gtk2_ardour/ardour_ui_ed.cc:383 +#: gtk2_ardour/ardour_ui_ed.cc:404 msgid "Stop transport at session end" msgstr "Transport am Ende des Projekts stoppen" -#: gtk2_ardour/ardour_ui_ed.cc:384 +#: gtk2_ardour/ardour_ui_ed.cc:405 msgid "-12dB gain reduce ffwd/rewind" msgstr "Beim Spulen Pegel um -12dB absenken" -#: gtk2_ardour/ardour_ui_ed.cc:385 +#: gtk2_ardour/ardour_ui_ed.cc:406 msgid "Rec-enable stays engaged at stop" msgstr "Aufnahmestatus bleibt nach Stop erhalten" -#: gtk2_ardour/ardour_ui_ed.cc:387 +#: gtk2_ardour/ardour_ui_ed.cc:407 +msgid "Region equivalents overlap" +msgstr "Region entspricht Ãœberdeckung" + +#: gtk2_ardour/ardour_ui_ed.cc:409 msgid "Do not run plugins while recording" msgstr "Plugins während der Aufnahme daktivieren" -#: gtk2_ardour/ardour_ui_ed.cc:390 +#: gtk2_ardour/ardour_ui_ed.cc:412 msgid "Latched solo" msgstr "Latch Solo" -#: gtk2_ardour/ardour_ui_ed.cc:398 -#: gtk2_ardour/ardour_ui_ed.cc:406 -#: gtk2_ardour/audio_clock.cc:1839 -#: gtk2_ardour/gain_meter.cc:160 -#: gtk2_ardour/ladspa_pluginui.cc:330 -#: gtk2_ardour/ladspa_pluginui.cc:573 -#: gtk2_ardour/panner_ui.cc:89 +#: gtk2_ardour/ardour_ui_ed.cc:414 +msgid "Show solo muting" +msgstr "Solo als Mute anzeigen" + +#: gtk2_ardour/ardour_ui_ed.cc:422 +#: gtk2_ardour/ardour_ui_ed.cc:430 +#: gtk2_ardour/audio_clock.cc:1838 msgid "Off" msgstr "Aus" -#: gtk2_ardour/ardour_ui_ed.cc:399 -#: gtk2_ardour/editor.cc:1243 -#: gtk2_ardour/editor.cc:1260 +#: gtk2_ardour/ardour_ui_ed.cc:423 +#: gtk2_ardour/editor.cc:1240 +#: gtk2_ardour/editor.cc:1257 msgid "Slowest" msgstr "Sehr langsam" -#: gtk2_ardour/ardour_ui_ed.cc:400 -#: gtk2_ardour/editor.cc:1244 -#: gtk2_ardour/editor.cc:1261 +#: gtk2_ardour/ardour_ui_ed.cc:424 +#: gtk2_ardour/editor.cc:1241 +#: gtk2_ardour/editor.cc:1258 msgid "Slow" msgstr "Langsam" -#: gtk2_ardour/ardour_ui_ed.cc:401 -#: gtk2_ardour/ardour_ui_ed.cc:408 +#: gtk2_ardour/ardour_ui_ed.cc:425 +#: gtk2_ardour/ardour_ui_ed.cc:432 msgid "Medium" msgstr "Mittel" -#: gtk2_ardour/ardour_ui_ed.cc:402 -#: gtk2_ardour/editor.cc:1245 -#: gtk2_ardour/editor.cc:1262 +#: gtk2_ardour/ardour_ui_ed.cc:426 +#: gtk2_ardour/editor.cc:1242 +#: gtk2_ardour/editor.cc:1259 msgid "Fast" msgstr "Schnell" -#: gtk2_ardour/ardour_ui_ed.cc:403 +#: gtk2_ardour/ardour_ui_ed.cc:427 msgid "Faster" msgstr "Schneller" -#: gtk2_ardour/ardour_ui_ed.cc:404 -#: gtk2_ardour/editor.cc:1246 -#: gtk2_ardour/editor.cc:1263 +#: gtk2_ardour/ardour_ui_ed.cc:428 +#: gtk2_ardour/editor.cc:1243 +#: gtk2_ardour/editor.cc:1260 msgid "Fastest" msgstr "Schnellstmöglich" -#: gtk2_ardour/ardour_ui_ed.cc:407 +#: gtk2_ardour/ardour_ui_ed.cc:431 #: gtk2_ardour/editor_actions.cc:58 msgid "Short" msgstr "Kurz" -#: gtk2_ardour/ardour_ui_ed.cc:409 +#: gtk2_ardour/ardour_ui_ed.cc:433 msgid "Long" msgstr "Lange" -#: gtk2_ardour/ardour_ui_ed.cc:427 +#: gtk2_ardour/ardour_ui_ed.cc:451 msgid "Hardware monitoring" msgstr "Hardware Monitoring" -#: gtk2_ardour/ardour_ui_ed.cc:428 +#: gtk2_ardour/ardour_ui_ed.cc:452 msgid "Software monitoring" msgstr "Software Monitoring" -#: gtk2_ardour/ardour_ui_ed.cc:429 +#: gtk2_ardour/ardour_ui_ed.cc:453 msgid "External monitoring" msgstr "Externes Monitoring" -#: gtk2_ardour/ardour_ui_ed.cc:433 +#: gtk2_ardour/ardour_ui_ed.cc:457 msgid "Solo in-place" msgstr "Solo-In-Place" -#: gtk2_ardour/ardour_ui_ed.cc:435 +#: gtk2_ardour/ardour_ui_ed.cc:459 msgid "Solo via bus" msgstr "Solo über Bus" -#: gtk2_ardour/ardour_ui_ed.cc:440 +#: gtk2_ardour/ardour_ui_ed.cc:464 msgid "Auto-connect inputs to physical inputs" msgstr "Eingänge automatisch mit Soundkarteneingängen verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:442 +#: gtk2_ardour/ardour_ui_ed.cc:466 msgid "Manually connect inputs" msgstr "Eingänge manuell verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:447 +#: gtk2_ardour/ardour_ui_ed.cc:471 msgid "Auto-connect outputs to physical outs" msgstr "Ausgänge automatisch mit Soundkartenausgängen verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:449 +#: gtk2_ardour/ardour_ui_ed.cc:473 msgid "Auto-connect outputs to master bus" msgstr "Ausgänge automatisch mit Master-Bus verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:451 +#: gtk2_ardour/ardour_ui_ed.cc:475 msgid "Manually connect outputs" msgstr "Ausgänge manuell verbinden" -#: gtk2_ardour/ardour_ui_ed.cc:549 +#: gtk2_ardour/ardour_ui_ed.cc:480 +msgid "Remote ID assigned by User" +msgstr "Fernsteuerungs-ID vom Benutzer festgelegt" + +#: gtk2_ardour/ardour_ui_ed.cc:482 +msgid "Remote ID follows order of Mixer" +msgstr "Fernsteuerungs-ID aus Reihenfolge im Mixer" + +#: gtk2_ardour/ardour_ui_ed.cc:484 +msgid "Remote ID follows order of Editor" +msgstr "Fernsteuerungs-ID aus Reihenfolge im Editor" + +#: gtk2_ardour/ardour_ui_ed.cc:633 #: gtk2_ardour/ladspa_pluginui.cc:168 msgid "Controls" msgstr "Steuerelemente" -#: gtk2_ardour/ardour_ui_ed.cc:553 +#: gtk2_ardour/ardour_ui_ed.cc:637 msgid "Feedback" -msgstr "" +msgstr "Feedback" -#: gtk2_ardour/ardour_ui_ed.cc:633 +#: gtk2_ardour/ardour_ui_ed.cc:717 msgid "ardour: clock" -msgstr "ardour: Uhr" +msgstr "ardour: Zeitanzeige" -#: gtk2_ardour/ardour_ui_options.cc:106 -#: gtk2_ardour/ardour_ui_options.cc:133 +#: gtk2_ardour/ardour_ui_options.cc:112 +#: gtk2_ardour/ardour_ui_options.cc:139 #: gtk2_ardour/editor_actions.cc:725 #: gtk2_ardour/editor_actions.cc:953 #: gtk2_ardour/editor_actions.cc:966 #: gtk2_ardour/editor_actions.cc:1030 -#: gtk2_ardour/sfdb_ui.cc:524 +#: gtk2_ardour/sfdb_ui.cc:536 #: gtk2_ardour/audio_streamview.cc:173 msgid "programming error: %1" -msgstr "" +msgstr "Programmierfehler: %1" -#: gtk2_ardour/ardour_ui_options.cc:212 +#: gtk2_ardour/ardour_ui_options.cc:218 msgid "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1" -msgstr "" +msgstr "Programmierfehler: unbekannte Solo-Einstellung in ARDOUR_UI::set_solo_model: %1" -#: gtk2_ardour/ardour_ui_options.cc:246 +#: gtk2_ardour/ardour_ui_options.cc:251 +msgid "programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1" +msgstr "Programmierfehler: unbekanntes Fernsteuerungsmodell in ARDOUR_UI::set_remote_model: %1" + +#: gtk2_ardour/ardour_ui_options.cc:285 msgid "programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1" -msgstr "" +msgstr "Programmierfehler: unbekannte Monitoring-Einstellung in ARDOUR_UI::set_monitor_model: %1" -#: gtk2_ardour/ardour_ui_options.cc:499 +#: gtk2_ardour/ardour_ui_options.cc:577 msgid "programming error: unknown file header format passed to ARDOUR_UI::map_file_data_format: %1" -msgstr "" +msgstr "Programmierfehler: unbekanntes Dateiheaderformat übergeben an ARDOUR_UI::map_file_data_format: %1" -#: gtk2_ardour/ardour_ui_options.cc:531 +#: gtk2_ardour/ardour_ui_options.cc:609 msgid "programming error: unknown file data format passed to ARDOUR_UI::map_file_data_format: %1" -msgstr "" +msgstr "Programmierfehler: unbekanntes Dateiformat übergeben an ARDOUR_UI::map_file_data_format: %1" -#: gtk2_ardour/ardour_ui_options.cc:833 +#: gtk2_ardour/ardour_ui_options.cc:940 msgid "ST" -msgstr "" +msgstr "HT" -#: gtk2_ardour/audio_clock.cc:1835 -#: gtk2_ardour/editor.cc:181 +#: gtk2_ardour/audio_clock.cc:1834 +#: gtk2_ardour/editor.cc:178 msgid "Timecode" msgstr "Timecode" -#: gtk2_ardour/audio_clock.cc:1836 -#: gtk2_ardour/editor.cc:180 -#: gtk2_ardour/editor_rulers.cc:388 +#: gtk2_ardour/audio_clock.cc:1835 +#: gtk2_ardour/editor.cc:177 +#: gtk2_ardour/editor_rulers.cc:387 msgid "Bars:Beats" msgstr "Takte:Schläge" -#: gtk2_ardour/audio_clock.cc:1837 +#: gtk2_ardour/audio_clock.cc:1836 msgid "Minutes:Seconds" msgstr "Minuten:Sekunden" -#: gtk2_ardour/audio_clock.cc:1838 +#: gtk2_ardour/audio_clock.cc:1837 msgid "Audio Frames" -msgstr "" +msgstr "Audio Frames" -#: gtk2_ardour/audio_clock.cc:1841 +#: gtk2_ardour/audio_clock.cc:1840 msgid "Mode" msgstr "Modus" @@ -1511,7 +1606,7 @@ msgstr "s" #: gtk2_ardour/route_time_axis.cc:87 msgid "r" -msgstr "" +msgstr "r" #: gtk2_ardour/route_time_axis.cc:91 msgid "g" @@ -1523,7 +1618,7 @@ msgstr "w" #: gtk2_ardour/route_time_axis.cc:93 #: gtk2_ardour/automation_time_axis.cc:36 -#: gtk2_ardour/visual_time_axis.cc:74 +#: gtk2_ardour/visual_time_axis.cc:73 msgid "h" msgstr "h" @@ -1532,173 +1627,173 @@ msgid "a" msgstr "a" #: gtk2_ardour/route_time_axis.cc:95 -#: gtk2_ardour/visual_time_axis.cc:73 +#: gtk2_ardour/visual_time_axis.cc:72 msgid "v" msgstr "v" -#: gtk2_ardour/route_time_axis.cc:150 -#: gtk2_ardour/mixer_strip.cc:85 +#: gtk2_ardour/route_time_axis.cc:148 +#: gtk2_ardour/mixer_strip.cc:86 msgid "Record" msgstr "Aufnahme" -#: gtk2_ardour/route_time_axis.cc:158 +#: gtk2_ardour/route_time_axis.cc:156 #: gtk2_ardour/editor_actions.cc:38 -#: gtk2_ardour/mixer_strip.cc:85 -#: gtk2_ardour/mixer_strip.cc:433 +#: gtk2_ardour/mixer_strip.cc:86 +#: gtk2_ardour/mixer_strip.cc:426 msgid "Solo" msgstr "Solo" -#: gtk2_ardour/route_time_axis.cc:159 -#: gtk2_ardour/editor.cc:1546 -#: gtk2_ardour/editor.cc:1636 -#: gtk2_ardour/mixer_strip.cc:85 -#: gtk2_ardour/mixer_strip.cc:432 -#: gtk2_ardour/panner_ui.cc:430 +#: gtk2_ardour/route_time_axis.cc:157 +#: gtk2_ardour/editor.cc:1543 +#: gtk2_ardour/editor.cc:1633 +#: gtk2_ardour/mixer_strip.cc:86 +#: gtk2_ardour/mixer_strip.cc:425 +#: gtk2_ardour/panner_ui.cc:404 msgid "Mute" msgstr "Mute" -#: gtk2_ardour/route_time_axis.cc:160 +#: gtk2_ardour/route_time_axis.cc:158 msgid "Edit Group" msgstr "Bearbeitungsgruppe" -#: gtk2_ardour/route_time_axis.cc:161 -#: gtk2_ardour/visual_time_axis.cc:92 +#: gtk2_ardour/route_time_axis.cc:159 +#: gtk2_ardour/visual_time_axis.cc:91 msgid "Display Height" msgstr "Anzeigehöhe" -#: gtk2_ardour/route_time_axis.cc:162 +#: gtk2_ardour/route_time_axis.cc:160 msgid "Playlist" msgstr "Wiedergabeliste" -#: gtk2_ardour/route_time_axis.cc:163 -#: gtk2_ardour/route_time_axis.cc:425 +#: gtk2_ardour/route_time_axis.cc:161 +#: gtk2_ardour/route_time_axis.cc:414 msgid "Automation" msgstr "Automationen" -#: gtk2_ardour/route_time_axis.cc:164 -#: gtk2_ardour/visual_time_axis.cc:93 +#: gtk2_ardour/route_time_axis.cc:162 +#: gtk2_ardour/visual_time_axis.cc:92 msgid "Visual options" msgstr "Visuelle optionen" -#: gtk2_ardour/route_time_axis.cc:165 -#: gtk2_ardour/visual_time_axis.cc:94 +#: gtk2_ardour/route_time_axis.cc:163 +#: gtk2_ardour/visual_time_axis.cc:93 msgid "Hide this track" msgstr "Diese Spur verbergen" -#: gtk2_ardour/route_time_axis.cc:276 -#: gtk2_ardour/mixer_strip.cc:917 +#: gtk2_ardour/route_time_axis.cc:265 +#: gtk2_ardour/mixer_strip.cc:910 msgid "No group" msgstr "keine Gruppe" -#: gtk2_ardour/route_time_axis.cc:386 +#: gtk2_ardour/route_time_axis.cc:375 msgid "Show all automation" msgstr "Alle Automationen zeigen" -#: gtk2_ardour/route_time_axis.cc:389 +#: gtk2_ardour/route_time_axis.cc:378 msgid "Show existing automation" msgstr "Verfügbare Automationen zeigen" -#: gtk2_ardour/route_time_axis.cc:392 +#: gtk2_ardour/route_time_axis.cc:381 msgid "Hide all automation" msgstr "Automationen verbergen" -#: gtk2_ardour/route_time_axis.cc:395 +#: gtk2_ardour/route_time_axis.cc:384 msgid "Plugins" msgstr "Plugins" -#: gtk2_ardour/route_time_axis.cc:416 +#: gtk2_ardour/route_time_axis.cc:405 #: gtk2_ardour/automation_time_axis.cc:430 -#: gtk2_ardour/imageframe_time_axis.cc:255 -#: gtk2_ardour/marker_time_axis.cc:211 +#: gtk2_ardour/imageframe_time_axis.cc:254 +#: gtk2_ardour/marker_time_axis.cc:210 msgid "Height" msgstr "Höhe" -#: gtk2_ardour/route_time_axis.cc:417 +#: gtk2_ardour/route_time_axis.cc:406 #: gtk2_ardour/color_manager.cc:41 -#: gtk2_ardour/imageframe_time_axis.cc:256 -#: gtk2_ardour/marker_time_axis.cc:212 +#: gtk2_ardour/imageframe_time_axis.cc:255 +#: gtk2_ardour/marker_time_axis.cc:211 msgid "Color" msgstr "Farbe" -#: gtk2_ardour/route_time_axis.cc:422 -#: gtk2_ardour/mixer_strip.cc:1002 +#: gtk2_ardour/route_time_axis.cc:411 +#: gtk2_ardour/mixer_strip.cc:995 msgid "Remote Control ID" msgstr "ID für Fernsteuerung" -#: gtk2_ardour/route_time_axis.cc:440 +#: gtk2_ardour/route_time_axis.cc:429 msgid "Align with existing material" msgstr "An vorhandenem Material ausrichten" -#: gtk2_ardour/route_time_axis.cc:446 +#: gtk2_ardour/route_time_axis.cc:435 msgid "Align with capture time" msgstr "An Aufnahmezeit ausrichten" -#: gtk2_ardour/route_time_axis.cc:452 +#: gtk2_ardour/route_time_axis.cc:441 msgid "Alignment" msgstr "Ausrichtung" -#: gtk2_ardour/route_time_axis.cc:458 +#: gtk2_ardour/route_time_axis.cc:447 msgid "Normal mode" msgstr "Normaler Modus" -#: gtk2_ardour/route_time_axis.cc:461 +#: gtk2_ardour/route_time_axis.cc:450 msgid "Tape mode" msgstr "Tape-Modus" -#: gtk2_ardour/route_time_axis.cc:477 -#: gtk2_ardour/editor.cc:483 +#: gtk2_ardour/route_time_axis.cc:466 +#: gtk2_ardour/editor.cc:481 #: gtk2_ardour/editor_actions.cc:61 -#: gtk2_ardour/mixer_strip.cc:991 -#: gtk2_ardour/mixer_ui.cc:109 +#: gtk2_ardour/mixer_strip.cc:984 +#: gtk2_ardour/mixer_ui.cc:107 msgid "Active" msgstr "Aktiv" -#: gtk2_ardour/route_time_axis.cc:482 -#: gtk2_ardour/editor.cc:1726 +#: gtk2_ardour/route_time_axis.cc:471 +#: gtk2_ardour/editor.cc:1723 #: gtk2_ardour/editor_actions.cc:328 #: gtk2_ardour/editor_markers.cc:527 -#: gtk2_ardour/imageframe_time_axis.cc:259 -#: gtk2_ardour/location_ui.cc:58 -#: gtk2_ardour/marker_time_axis.cc:215 -#: gtk2_ardour/mixer_strip.cc:1005 +#: gtk2_ardour/imageframe_time_axis.cc:258 +#: gtk2_ardour/location_ui.cc:57 +#: gtk2_ardour/marker_time_axis.cc:214 +#: gtk2_ardour/mixer_strip.cc:998 msgid "Remove" msgstr "Löschen" -#: gtk2_ardour/route_time_axis.cc:508 -#: gtk2_ardour/route_time_axis.cc:563 -#: gtk2_ardour/route_time_axis.cc:828 +#: gtk2_ardour/route_time_axis.cc:496 +#: gtk2_ardour/route_time_axis.cc:551 +#: gtk2_ardour/route_time_axis.cc:816 #: gtk2_ardour/editor_actions.cc:1017 msgid "programming error: %1 %2" -msgstr "" +msgstr "Programmierfehler: %1 %2" -#: gtk2_ardour/route_time_axis.cc:852 +#: gtk2_ardour/route_time_axis.cc:840 msgid "Name for playlist" msgstr "Name für Wiedergabeliste" -#: gtk2_ardour/route_time_axis.cc:854 +#: gtk2_ardour/route_time_axis.cc:842 #: gtk2_ardour/route_time_axis.cc:1305 -#: gtk2_ardour/editor_markers.cc:852 -#: gtk2_ardour/editor_mouse.cc:4799 -#: gtk2_ardour/imageframe_time_axis.cc:248 -#: gtk2_ardour/marker_time_axis.cc:208 -#: gtk2_ardour/mixer_strip.cc:989 -#: gtk2_ardour/redirect_box.cc:823 -#: gtk2_ardour/redirect_box.cc:1149 -#: gtk2_ardour/route_ui.cc:760 -#: gtk2_ardour/visual_time_axis.cc:331 +#: gtk2_ardour/editor_markers.cc:870 +#: gtk2_ardour/editor_mouse.cc:4795 +#: gtk2_ardour/imageframe_time_axis.cc:247 +#: gtk2_ardour/marker_time_axis.cc:207 +#: gtk2_ardour/mixer_strip.cc:982 +#: gtk2_ardour/redirect_box.cc:822 +#: gtk2_ardour/redirect_box.cc:1148 +#: gtk2_ardour/route_ui.cc:807 +#: gtk2_ardour/visual_time_axis.cc:330 msgid "Rename" msgstr "Umbenennen" -#: gtk2_ardour/route_time_axis.cc:896 -#: gtk2_ardour/route_time_axis.cc:942 +#: gtk2_ardour/route_time_axis.cc:884 +#: gtk2_ardour/route_time_axis.cc:930 msgid "Name for Playlist" -msgstr "Name für Playlist" +msgstr "Name für Wiedergabeliste" #: gtk2_ardour/route_time_axis.cc:1133 -#: gtk2_ardour/visual_time_axis.cc:341 -#: gtk2_ardour/visual_time_axis.cc:388 +#: gtk2_ardour/visual_time_axis.cc:340 +#: gtk2_ardour/visual_time_axis.cc:387 msgid "A track already exists with that name" -msgstr "" +msgstr "Es existiert bereits eine Spur mit diesem Namen" #: gtk2_ardour/route_time_axis.cc:1309 msgid "New Copy" @@ -1706,84 +1801,84 @@ msgstr "Neue Kopie" #: gtk2_ardour/route_time_axis.cc:1311 msgid "Clear Current" -msgstr "" +msgstr "Ausgewählte zurücksetzen" #: gtk2_ardour/route_time_axis.cc:1314 msgid "Select from all ..." -msgstr "" +msgstr "Aus allen auswählen..." #: gtk2_ardour/route_time_axis.cc:1520 -#: gtk2_ardour/editor.cc:1268 -#: gtk2_ardour/selection.cc:646 -#: gtk2_ardour/selection.cc:685 +#: gtk2_ardour/editor.cc:1265 +#: gtk2_ardour/selection.cc:658 +#: gtk2_ardour/selection.cc:697 msgid "programming error: " -msgstr "" +msgstr "Programmierfehler:" -#: gtk2_ardour/audio_time_axis.cc:222 +#: gtk2_ardour/audio_time_axis.cc:213 msgid "Fader" msgstr "Fader" -#: gtk2_ardour/audio_time_axis.cc:227 +#: gtk2_ardour/audio_time_axis.cc:218 msgid "Pan" -msgstr "" +msgstr "Pan" -#: gtk2_ardour/audio_time_axis.cc:242 +#: gtk2_ardour/audio_time_axis.cc:233 msgid "Hide all crossfades" msgstr "Alle Crossfades verbergen" -#: gtk2_ardour/audio_time_axis.cc:243 +#: gtk2_ardour/audio_time_axis.cc:234 msgid "Show all crossfades" msgstr "Alle Crossfades zeigen" -#: gtk2_ardour/audio_time_axis.cc:250 +#: gtk2_ardour/audio_time_axis.cc:241 msgid "Show waveforms" msgstr "Wellenformen zeigen" -#: gtk2_ardour/audio_time_axis.cc:260 +#: gtk2_ardour/audio_time_axis.cc:251 msgid "Traditional" msgstr "Traditionell" -#: gtk2_ardour/audio_time_axis.cc:263 +#: gtk2_ardour/audio_time_axis.cc:254 msgid "Rectified" msgstr "Gleichgerichtet" -#: gtk2_ardour/audio_time_axis.cc:270 -#: gtk2_ardour/editor.cc:1242 -#: gtk2_ardour/editor.cc:1259 +#: gtk2_ardour/audio_time_axis.cc:261 +#: gtk2_ardour/editor.cc:1239 +#: gtk2_ardour/editor.cc:1256 msgid "Linear" -msgstr "" +msgstr "Linear" -#: gtk2_ardour/audio_time_axis.cc:273 +#: gtk2_ardour/audio_time_axis.cc:264 msgid "Logarithmic" -msgstr "" +msgstr "Logarithmisch" -#: gtk2_ardour/audio_time_axis.cc:290 +#: gtk2_ardour/audio_time_axis.cc:281 msgid "Waveform" msgstr "Wellenform" -#: gtk2_ardour/audio_time_axis.cc:362 +#: gtk2_ardour/audio_time_axis.cc:353 msgid "gain" -msgstr "" +msgstr "Gain" -#: gtk2_ardour/audio_time_axis.cc:402 +#: gtk2_ardour/audio_time_axis.cc:393 msgid "pan" -msgstr "" +msgstr "Pan" -#: gtk2_ardour/automation_line.cc:795 +#: gtk2_ardour/automation_line.cc:794 msgid "automation event move" msgstr "Automationspunkt bewegen" -#: gtk2_ardour/automation_line.cc:797 +#: gtk2_ardour/automation_line.cc:796 msgid "automation range drag" msgstr "Automationsbereich bewegen" -#: gtk2_ardour/automation_line.cc:1022 +#: gtk2_ardour/automation_line.cc:1021 #: gtk2_ardour/region_gain_line.cc:64 msgid "remove control point" msgstr "Automationspunkt entfernen" #: gtk2_ardour/automation_time_axis.cc:37 -#: gtk2_ardour/editor_ops.cc:2936 +#: gtk2_ardour/editor_ops.cc:2636 msgid "clear" msgstr "Leeren" @@ -1797,7 +1892,7 @@ msgstr "Automationsmodus" #: gtk2_ardour/automation_time_axis.cc:80 msgid "clear track" -msgstr "Verbindungen entfernen" +msgstr "Spur zurücksetzen" #: gtk2_ardour/automation_time_axis.cc:81 msgid "hide track" @@ -1806,50 +1901,54 @@ msgstr "Diese Spur verbergen" #: gtk2_ardour/automation_time_axis.cc:187 #: gtk2_ardour/automation_time_axis.cc:216 #: gtk2_ardour/automation_time_axis.cc:441 +#: gtk2_ardour/gain_meter.cc:159 +#: gtk2_ardour/ladspa_pluginui.cc:332 +#: gtk2_ardour/ladspa_pluginui.cc:576 +#: gtk2_ardour/panner_ui.cc:88 msgid "Manual" msgstr "Manuell" #: gtk2_ardour/automation_time_axis.cc:189 #: gtk2_ardour/automation_time_axis.cc:227 #: gtk2_ardour/automation_time_axis.cc:445 -#: gtk2_ardour/editor.cc:1804 -#: gtk2_ardour/editor.cc:1885 -#: gtk2_ardour/gain_meter.cc:162 -#: gtk2_ardour/ladspa_pluginui.cc:333 -#: gtk2_ardour/ladspa_pluginui.cc:575 -#: gtk2_ardour/panner_ui.cc:91 -#: gtk2_ardour/sfdb_ui.cc:59 +#: gtk2_ardour/editor.cc:1801 +#: gtk2_ardour/editor.cc:1882 +#: gtk2_ardour/gain_meter.cc:161 +#: gtk2_ardour/ladspa_pluginui.cc:335 +#: gtk2_ardour/ladspa_pluginui.cc:578 +#: gtk2_ardour/panner_ui.cc:90 +#: gtk2_ardour/sfdb_ui.cc:61 msgid "Play" -msgstr "Wiedergabe" +msgstr "Play" #: gtk2_ardour/automation_time_axis.cc:191 #: gtk2_ardour/automation_time_axis.cc:238 #: gtk2_ardour/automation_time_axis.cc:449 -#: gtk2_ardour/gain_meter.cc:164 -#: gtk2_ardour/ladspa_pluginui.cc:336 -#: gtk2_ardour/ladspa_pluginui.cc:577 -#: gtk2_ardour/panner_ui.cc:93 +#: gtk2_ardour/gain_meter.cc:163 +#: gtk2_ardour/ladspa_pluginui.cc:338 +#: gtk2_ardour/ladspa_pluginui.cc:580 +#: gtk2_ardour/panner_ui.cc:92 msgid "Write" -msgstr "Schreiben" +msgstr "Write" #: gtk2_ardour/automation_time_axis.cc:193 #: gtk2_ardour/automation_time_axis.cc:249 #: gtk2_ardour/automation_time_axis.cc:453 -#: gtk2_ardour/gain_meter.cc:166 -#: gtk2_ardour/ladspa_pluginui.cc:339 -#: gtk2_ardour/ladspa_pluginui.cc:579 -#: gtk2_ardour/panner_ui.cc:95 +#: gtk2_ardour/gain_meter.cc:165 +#: gtk2_ardour/ladspa_pluginui.cc:341 +#: gtk2_ardour/ladspa_pluginui.cc:582 +#: gtk2_ardour/panner_ui.cc:94 msgid "Touch" -msgstr "Berühren" +msgstr "Touch" #: gtk2_ardour/automation_time_axis.cc:260 -#: gtk2_ardour/ladspa_pluginui.cc:342 +#: gtk2_ardour/ladspa_pluginui.cc:344 msgid "???" -msgstr "" +msgstr "???" #: gtk2_ardour/automation_time_axis.cc:274 msgid "clear automation" -msgstr "Verbindungen entfernen" +msgstr "Automation zurücksetzen" #: gtk2_ardour/automation_time_axis.cc:432 #: gtk2_ardour/editor_actions.cc:326 @@ -1857,9 +1956,9 @@ msgid "Hide" msgstr "Verbergen" #: gtk2_ardour/automation_time_axis.cc:434 -#: gtk2_ardour/crossfade_edit.cc:79 -#: gtk2_ardour/redirect_box.cc:1141 -#: gtk2_ardour/connection_editor.cc:57 +#: gtk2_ardour/crossfade_edit.cc:78 +#: gtk2_ardour/redirect_box.cc:1140 +#: gtk2_ardour/connection_editor.cc:56 msgid "Clear" msgstr "Leeren" @@ -1912,14 +2011,12 @@ msgid "drawn width" msgstr "" #: gtk2_ardour/canvas-imageframe.c:148 -#, fuzzy msgid "height" -msgstr "Rechts" +msgstr "" #: gtk2_ardour/canvas-imageframe.c:149 -#, fuzzy msgid "the height" -msgstr "Rechts" +msgstr "" #: gtk2_ardour/canvas-imageframe.c:157 msgid "anchor" @@ -1988,18 +2085,16 @@ msgid "fill" msgstr "" #: gtk2_ardour/canvas-simplerect.c:172 -#, fuzzy msgid "fill rectangle" -msgstr "Auswahl zu Schleife machen" +msgstr "" #: gtk2_ardour/canvas-simplerect.c:179 msgid "draw" msgstr "" #: gtk2_ardour/canvas-simplerect.c:180 -#, fuzzy msgid "draw rectangle" -msgstr "Bereich" +msgstr "" #: gtk2_ardour/canvas-simplerect.c:188 msgid "outline color rgba" @@ -2018,819 +2113,811 @@ msgid "color of fill" msgstr "" #: gtk2_ardour/color_manager.cc:40 -#, fuzzy msgid "Object" -msgstr "Objekt" +msgstr "" #: gtk2_ardour/color_manager.cc:78 msgid "cannot open color definition file %1: %2" -msgstr "" +msgstr "Konnte die Datei mit den Farbdefinitonen %1 nicht laden: %2" -#: gtk2_ardour/crossfade_edit.cc:76 +#: gtk2_ardour/crossfade_edit.cc:75 msgid "ardour: x-fade edit" msgstr "ardour: Crossfade Editor" -#: gtk2_ardour/crossfade_edit.cc:80 -#: gtk2_ardour/panner_ui.cc:446 +#: gtk2_ardour/crossfade_edit.cc:79 +#: gtk2_ardour/panner_ui.cc:420 msgid "Reset" msgstr "Zurücksetzen" -#: gtk2_ardour/crossfade_edit.cc:81 +#: gtk2_ardour/crossfade_edit.cc:80 msgid "Fade" msgstr "Fade" -#: gtk2_ardour/crossfade_edit.cc:82 +#: gtk2_ardour/crossfade_edit.cc:81 msgid "Out (dry)" msgstr "Out (dry)" -#: gtk2_ardour/crossfade_edit.cc:83 +#: gtk2_ardour/crossfade_edit.cc:82 msgid "Out" msgstr "Out" -#: gtk2_ardour/crossfade_edit.cc:84 +#: gtk2_ardour/crossfade_edit.cc:83 msgid "In (dry)" msgstr "In (dry)" -#: gtk2_ardour/crossfade_edit.cc:85 +#: gtk2_ardour/crossfade_edit.cc:84 msgid "In" msgstr "In" -#: gtk2_ardour/crossfade_edit.cc:87 +#: gtk2_ardour/crossfade_edit.cc:86 msgid "With Pre-roll" msgstr "mit Pre-Roll" -#: gtk2_ardour/crossfade_edit.cc:88 +#: gtk2_ardour/crossfade_edit.cc:87 msgid "With Post-roll" msgstr "mit Post-Roll" -#: gtk2_ardour/crossfade_edit.cc:96 +#: gtk2_ardour/crossfade_edit.cc:95 msgid "Fade In" msgstr "Fade In" -#: gtk2_ardour/crossfade_edit.cc:97 +#: gtk2_ardour/crossfade_edit.cc:96 msgid "Fade Out" msgstr "Fade Out" -#: gtk2_ardour/crossfade_edit.cc:173 -#: gtk2_ardour/editor.cc:1621 +#: gtk2_ardour/crossfade_edit.cc:172 +#: gtk2_ardour/editor.cc:1618 #: gtk2_ardour/editor_actions.cc:324 -#: gtk2_ardour/option_editor.cc:127 +#: gtk2_ardour/option_editor.cc:130 msgid "Audition" msgstr "Vorhören" -#: gtk2_ardour/editor.cc:103 -#: gtk2_ardour/editor.cc:3533 +#: gtk2_ardour/editor.cc:101 +#: gtk2_ardour/editor.cc:2973 #: gtk2_ardour/editor_actions.cc:402 -#: gtk2_ardour/export_dialog.cc:76 -#: gtk2_ardour/export_dialog.cc:90 -#: gtk2_ardour/export_dialog.cc:891 -#: gtk2_ardour/export_dialog.cc:1223 -#: gtk2_ardour/route_ui.cc:459 +#: gtk2_ardour/export_dialog.cc:75 +#: gtk2_ardour/export_dialog.cc:89 +#: gtk2_ardour/export_dialog.cc:889 +#: gtk2_ardour/export_dialog.cc:1221 +#: gtk2_ardour/route_ui.cc:506 msgid "None" msgstr "Kein" -#: gtk2_ardour/editor.cc:104 -#: gtk2_ardour/editor.cc:3521 +#: gtk2_ardour/editor.cc:102 +#: gtk2_ardour/editor.cc:2961 msgid "CD Frames" msgstr "CD-Frames" -#: gtk2_ardour/editor.cc:105 -#: gtk2_ardour/editor.cc:3523 +#: gtk2_ardour/editor.cc:103 +#: gtk2_ardour/editor.cc:2963 msgid "SMPTE Frames" msgstr "SMPTE-Frames" -#: gtk2_ardour/editor.cc:106 -#: gtk2_ardour/editor.cc:3525 +#: gtk2_ardour/editor.cc:104 +#: gtk2_ardour/editor.cc:2965 msgid "SMPTE Seconds" msgstr "SMPTE-Sekunden" -#: gtk2_ardour/editor.cc:107 -#: gtk2_ardour/editor.cc:3527 +#: gtk2_ardour/editor.cc:105 +#: gtk2_ardour/editor.cc:2967 msgid "SMPTE Minutes" msgstr "SMPTE-Minuten" -#: gtk2_ardour/editor.cc:108 -#: gtk2_ardour/editor.cc:3529 +#: gtk2_ardour/editor.cc:106 +#: gtk2_ardour/editor.cc:2969 msgid "Seconds" msgstr "Sekunden" -#: gtk2_ardour/editor.cc:109 -#: gtk2_ardour/editor.cc:3531 +#: gtk2_ardour/editor.cc:107 +#: gtk2_ardour/editor.cc:2971 msgid "Minutes" msgstr "Minuten" -#: gtk2_ardour/editor.cc:110 -#: gtk2_ardour/editor.cc:3503 +#: gtk2_ardour/editor.cc:108 +#: gtk2_ardour/editor.cc:2943 msgid "Beats/32" msgstr "Schläge / 32" -#: gtk2_ardour/editor.cc:111 -#: gtk2_ardour/editor.cc:3501 +#: gtk2_ardour/editor.cc:109 +#: gtk2_ardour/editor.cc:2941 msgid "Beats/16" msgstr "Schläge / 16" -#: gtk2_ardour/editor.cc:112 -#: gtk2_ardour/editor.cc:3499 +#: gtk2_ardour/editor.cc:110 +#: gtk2_ardour/editor.cc:2939 msgid "Beats/8" msgstr "Schläge / 8" -#: gtk2_ardour/editor.cc:113 -#: gtk2_ardour/editor.cc:3497 +#: gtk2_ardour/editor.cc:111 +#: gtk2_ardour/editor.cc:2937 msgid "Beats/4" msgstr "Schläge / 4" -#: gtk2_ardour/editor.cc:114 -#: gtk2_ardour/editor.cc:3495 +#: gtk2_ardour/editor.cc:112 +#: gtk2_ardour/editor.cc:2935 msgid "Beats/3" msgstr "Schläge / 3" -#: gtk2_ardour/editor.cc:115 -#: gtk2_ardour/editor.cc:3505 +#: gtk2_ardour/editor.cc:113 +#: gtk2_ardour/editor.cc:2945 msgid "Beats" msgstr "Schläge" -#: gtk2_ardour/editor.cc:116 -#: gtk2_ardour/editor.cc:3507 +#: gtk2_ardour/editor.cc:114 +#: gtk2_ardour/editor.cc:2947 msgid "Bars" msgstr "Takte" -#: gtk2_ardour/editor.cc:117 -#: gtk2_ardour/editor.cc:3509 +#: gtk2_ardour/editor.cc:115 +#: gtk2_ardour/editor.cc:2949 msgid "Marks" msgstr "Marker" -#: gtk2_ardour/editor.cc:118 -#: gtk2_ardour/editor.cc:137 -#: gtk2_ardour/editor.cc:3511 -#: gtk2_ardour/editor.cc:3576 +#: gtk2_ardour/editor.cc:116 +#: gtk2_ardour/editor.cc:135 +#: gtk2_ardour/editor.cc:2951 +#: gtk2_ardour/editor.cc:3016 msgid "Edit Cursor" msgstr "Editierzeiger" -#: gtk2_ardour/editor.cc:119 -#: gtk2_ardour/editor.cc:3513 +#: gtk2_ardour/editor.cc:117 +#: gtk2_ardour/editor.cc:2953 msgid "Region starts" msgstr "Regionen-Anfang" -#: gtk2_ardour/editor.cc:120 -#: gtk2_ardour/editor.cc:3515 +#: gtk2_ardour/editor.cc:118 +#: gtk2_ardour/editor.cc:2955 msgid "Region ends" msgstr "Regionen-Ende" -#: gtk2_ardour/editor.cc:121 -#: gtk2_ardour/editor.cc:3519 +#: gtk2_ardour/editor.cc:119 +#: gtk2_ardour/editor.cc:2959 msgid "Region syncs" msgstr "Regionen-Sync" -#: gtk2_ardour/editor.cc:122 -#: gtk2_ardour/editor.cc:3517 +#: gtk2_ardour/editor.cc:120 +#: gtk2_ardour/editor.cc:2957 msgid "Region bounds" msgstr "Regionen-Grenzen" -#: gtk2_ardour/editor.cc:128 -#: gtk2_ardour/editor.cc:3551 +#: gtk2_ardour/editor.cc:126 +#: gtk2_ardour/editor.cc:2991 #: gtk2_ardour/editor_actions.cc:289 msgid "Magnetic" msgstr "Magnetisch" -#: gtk2_ardour/editor.cc:133 -#: gtk2_ardour/editor.cc:3568 -#: gtk2_ardour/export_dialog.cc:138 -#: gtk2_ardour/export_dialog.cc:154 -#: gtk2_ardour/export_dialog.cc:1066 -#: gtk2_ardour/export_dialog.cc:1070 +#: gtk2_ardour/editor.cc:131 +#: gtk2_ardour/editor.cc:3008 +#: gtk2_ardour/export_dialog.cc:136 +#: gtk2_ardour/export_dialog.cc:152 +#: gtk2_ardour/export_dialog.cc:1064 +#: gtk2_ardour/export_dialog.cc:1068 msgid "Left" msgstr "Links" -#: gtk2_ardour/editor.cc:134 -#: gtk2_ardour/editor.cc:3570 -#: gtk2_ardour/export_dialog.cc:139 -#: gtk2_ardour/export_dialog.cc:155 +#: gtk2_ardour/editor.cc:132 +#: gtk2_ardour/editor.cc:3010 +#: gtk2_ardour/export_dialog.cc:137 +#: gtk2_ardour/export_dialog.cc:153 msgid "Right" msgstr "Rechts" -#: gtk2_ardour/editor.cc:135 -#: gtk2_ardour/editor.cc:3572 +#: gtk2_ardour/editor.cc:133 +#: gtk2_ardour/editor.cc:3012 msgid "Center" msgstr "Mitte" -#: gtk2_ardour/editor.cc:136 -#: gtk2_ardour/editor.cc:3574 +#: gtk2_ardour/editor.cc:134 +#: gtk2_ardour/editor.cc:3014 msgid "Playhead" msgstr "Positionszeiger" -#: gtk2_ardour/editor.cc:179 +#: gtk2_ardour/editor.cc:176 msgid "Mins:Secs" msgstr "Min:Sek" -#: gtk2_ardour/editor.cc:182 -#: gtk2_ardour/editor_rulers.cc:382 +#: gtk2_ardour/editor.cc:179 +#: gtk2_ardour/editor_rulers.cc:381 msgid "Frames" msgstr "Frames" -#: gtk2_ardour/editor.cc:183 -#: gtk2_ardour/editor_rulers.cc:402 +#: gtk2_ardour/editor.cc:180 +#: gtk2_ardour/editor_rulers.cc:401 msgid "Tempo" msgstr "Tempo" -#: gtk2_ardour/editor.cc:184 -#: gtk2_ardour/editor_rulers.cc:396 +#: gtk2_ardour/editor.cc:181 +#: gtk2_ardour/editor_rulers.cc:395 msgid "Meter" msgstr "Taktart" -#: gtk2_ardour/editor.cc:185 -#: gtk2_ardour/editor_rulers.cc:408 +#: gtk2_ardour/editor.cc:182 +#: gtk2_ardour/editor_rulers.cc:407 msgid "Location Markers" msgstr "Positionsmarker" -#: gtk2_ardour/editor.cc:186 -#: gtk2_ardour/editor_rulers.cc:414 +#: gtk2_ardour/editor.cc:183 +#: gtk2_ardour/editor_rulers.cc:413 msgid "Range Markers" msgstr "Bereiche" -#: gtk2_ardour/editor.cc:187 -#: gtk2_ardour/editor_rulers.cc:420 +#: gtk2_ardour/editor.cc:184 +#: gtk2_ardour/editor_rulers.cc:419 msgid "Loop/Punch Ranges" msgstr "Schleifen/Punch-Bereiche" -#: gtk2_ardour/editor.cc:205 +#: gtk2_ardour/editor.cc:202 msgid "mode" msgstr "Modus" -#: gtk2_ardour/editor.cc:206 +#: gtk2_ardour/editor.cc:203 msgid "automation" -msgstr "" +msgstr "Automation" -#: gtk2_ardour/editor.cc:458 -#: gtk2_ardour/editor.cc:484 +#: gtk2_ardour/editor.cc:456 +#: gtk2_ardour/editor.cc:482 #: gtk2_ardour/editor_actions.cc:63 -#: gtk2_ardour/mixer_ui.cc:84 -#: gtk2_ardour/mixer_ui.cc:110 -#: gtk2_ardour/analysis_window.cc:64 +#: gtk2_ardour/mixer_ui.cc:82 +#: gtk2_ardour/mixer_ui.cc:108 +#: gtk2_ardour/analysis_window.cc:63 msgid "Show" msgstr "Anzeigen" -#: gtk2_ardour/editor.cc:459 -#: gtk2_ardour/editor.cc:482 -#, fuzzy +#: gtk2_ardour/editor.cc:457 +#: gtk2_ardour/editor.cc:480 msgid "Name" -msgstr "Umbenennen" +msgstr "Name" -#: gtk2_ardour/editor.cc:557 -#: gtk2_ardour/editor.cc:624 +#: gtk2_ardour/editor.cc:555 +#: gtk2_ardour/editor.cc:622 msgid "Regions" msgstr "Regionen" -#: gtk2_ardour/editor.cc:596 -#: gtk2_ardour/editor.cc:636 +#: gtk2_ardour/editor.cc:594 +#: gtk2_ardour/editor.cc:634 msgid "Chunks" msgstr "Teile" -#: gtk2_ardour/editor.cc:627 +#: gtk2_ardour/editor.cc:625 msgid "Tracks/Busses" msgstr "Spuren/Busse" -#: gtk2_ardour/editor.cc:630 +#: gtk2_ardour/editor.cc:628 msgid "Snapshots" msgstr "Schnapschüsse" -#: gtk2_ardour/editor.cc:633 +#: gtk2_ardour/editor.cc:631 msgid "Edit Groups" msgstr "Bearbeitungsgruppen" -#: gtk2_ardour/editor.cc:684 +#: gtk2_ardour/editor.cc:682 msgid "Nudge Region/Selection Forwards" msgstr "Region/Auswahl schrittweise nach vorne" -#: gtk2_ardour/editor.cc:685 +#: gtk2_ardour/editor.cc:683 msgid "Nudge Region/Selection Backwards" msgstr "Region/Auswahl schrittweise nach hinten" -#: gtk2_ardour/editor.cc:713 -#: gtk2_ardour/editor_mixer.cc:318 +#: gtk2_ardour/editor.cc:711 +#: gtk2_ardour/editor_mixer.cc:347 msgid "ardour: editor" msgstr "ardour: Editor" -#: gtk2_ardour/editor.cc:1010 +#: gtk2_ardour/editor.cc:1009 msgid "ardour: editor: " msgstr "ardour: Editor: " -#: gtk2_ardour/editor.cc:1090 -#: gtk2_ardour/editor.cc:1099 -#: gtk2_ardour/editor_markers.cc:896 +#: gtk2_ardour/editor.cc:1089 +#: gtk2_ardour/editor.cc:1097 +#: gtk2_ardour/editor_markers.cc:914 msgid "Loop" msgstr "Schleife" -#: gtk2_ardour/editor.cc:1104 -#: gtk2_ardour/editor.cc:1113 -#: gtk2_ardour/editor_markers.cc:924 +#: gtk2_ardour/editor.cc:1102 +#: gtk2_ardour/editor.cc:1110 +#: gtk2_ardour/editor_markers.cc:942 msgid "Punch" -msgstr "" +msgstr "Punch" -#: gtk2_ardour/editor.cc:1223 -#: gtk2_ardour/editor_mouse.cc:1760 +#: gtk2_ardour/editor.cc:1220 +#: gtk2_ardour/editor_mouse.cc:1765 msgid "programming error: fade in canvas item has no regionview data pointer!" -msgstr "" +msgstr "Programmierfehler: fade in canvas item has no regionview data pointer!" -#: gtk2_ardour/editor.cc:1235 -#: gtk2_ardour/editor.cc:1252 -#: gtk2_ardour/redirect_box.cc:1157 +#: gtk2_ardour/editor.cc:1232 +#: gtk2_ardour/editor.cc:1249 +#: gtk2_ardour/redirect_box.cc:1156 msgid "Deactivate" msgstr "Deaktivieren" -#: gtk2_ardour/editor.cc:1237 -#: gtk2_ardour/editor.cc:1254 -#: gtk2_ardour/redirect_box.cc:1155 +#: gtk2_ardour/editor.cc:1234 +#: gtk2_ardour/editor.cc:1251 +#: gtk2_ardour/redirect_box.cc:1154 msgid "Activate" msgstr "Aktivieren" -#: gtk2_ardour/editor.cc:1375 -#: gtk2_ardour/editor.cc:1383 +#: gtk2_ardour/editor.cc:1372 +#: gtk2_ardour/editor.cc:1380 msgid "Freeze" msgstr "Einfrieren" -#: gtk2_ardour/editor.cc:1379 +#: gtk2_ardour/editor.cc:1376 msgid "Unfreeze" msgstr "Auftauen" -#: gtk2_ardour/editor.cc:1548 +#: gtk2_ardour/editor.cc:1545 msgid "Unmute" msgstr "Unmute" -#: gtk2_ardour/editor.cc:1552 -#: gtk2_ardour/editor.cc:1849 +#: gtk2_ardour/editor.cc:1549 +#: gtk2_ardour/editor.cc:1846 #: gtk2_ardour/editor_actions.cc:28 #: gtk2_ardour/editor_markers.cc:526 -#: gtk2_ardour/mixer_strip.cc:515 -#: gtk2_ardour/mixer_strip.cc:577 -#: gtk2_ardour/redirect_box.cc:1163 +#: gtk2_ardour/mixer_strip.cc:508 +#: gtk2_ardour/mixer_strip.cc:570 +#: gtk2_ardour/redirect_box.cc:1162 msgid "Edit" msgstr "Bearbeiten" -#: gtk2_ardour/editor.cc:1557 +#: gtk2_ardour/editor.cc:1554 msgid "Convert to short" -msgstr "" +msgstr "In kurzen Crossfade umwandeln" -#: gtk2_ardour/editor.cc:1559 +#: gtk2_ardour/editor.cc:1556 msgid "Convert to full" -msgstr "" +msgstr "In langen Crossfade umwandeln" -#: gtk2_ardour/editor.cc:1570 +#: gtk2_ardour/editor.cc:1567 msgid "Crossfade" msgstr "Crossfade" -#: gtk2_ardour/editor.cc:1613 +#: gtk2_ardour/editor.cc:1610 msgid "Popup region editor" msgstr "Regioneneditor öffnen" -#: gtk2_ardour/editor.cc:1614 +#: gtk2_ardour/editor.cc:1611 msgid "Raise to top layer" msgstr "Region ganz nach oben" -#: gtk2_ardour/editor.cc:1615 +#: gtk2_ardour/editor.cc:1612 msgid "Lower to bottom layer" msgstr "Region ganz nach unten" -#: gtk2_ardour/editor.cc:1617 +#: gtk2_ardour/editor.cc:1614 msgid "Define sync point" msgstr "Synchronisationspunkt definieren" -#: gtk2_ardour/editor.cc:1618 +#: gtk2_ardour/editor.cc:1615 msgid "Remove sync point" msgstr "Synchronisationspunkt entfernen" -#: gtk2_ardour/editor.cc:1623 +#: gtk2_ardour/editor.cc:1620 msgid "Bounce" msgstr "Bounce" -#: gtk2_ardour/editor.cc:1626 +#: gtk2_ardour/editor.cc:1623 msgid "Analyze region" msgstr "Analysiere Region" -#: gtk2_ardour/editor.cc:1631 +#: gtk2_ardour/editor.cc:1628 msgid "Lock" msgstr "Sperren" -#: gtk2_ardour/editor.cc:1641 +#: gtk2_ardour/editor.cc:1638 msgid "Opaque" msgstr "Deckend" -#: gtk2_ardour/editor.cc:1647 +#: gtk2_ardour/editor.cc:1644 msgid "Original position" msgstr "Ursprungsposition" -#: gtk2_ardour/editor.cc:1659 +#: gtk2_ardour/editor.cc:1656 msgid "Reset Envelope" msgstr "Lautstärkekurve zurücksetzen" -#: gtk2_ardour/editor.cc:1661 +#: gtk2_ardour/editor.cc:1658 msgid "Envelope Visible" msgstr "Lautstärkekurve sichtbar" -#: gtk2_ardour/editor.cc:1668 +#: gtk2_ardour/editor.cc:1665 msgid "Envelope Active" msgstr "Lautstärkekurve aktiv" -#: gtk2_ardour/editor.cc:1678 +#: gtk2_ardour/editor.cc:1675 msgid "DeNormalize" msgstr "Ardour: Region " -#: gtk2_ardour/editor.cc:1680 +#: gtk2_ardour/editor.cc:1677 msgid "Normalize" msgstr "Normalisieren" -#: gtk2_ardour/editor.cc:1683 +#: gtk2_ardour/editor.cc:1680 msgid "Reverse" msgstr "Rückwärts" -#: gtk2_ardour/editor.cc:1689 -#: gtk2_ardour/editor.cc:1771 +#: gtk2_ardour/editor.cc:1686 +#: gtk2_ardour/editor.cc:1768 msgid "Add Range Markers" msgstr "Bereichsmarker einfügen" -#: gtk2_ardour/editor.cc:1690 +#: gtk2_ardour/editor.cc:1687 msgid "Set Range Selection" msgstr "Bereich auswählen" -#: gtk2_ardour/editor.cc:1699 +#: gtk2_ardour/editor.cc:1696 msgid "Nudge fwd" msgstr "Schritt nach vorne" -#: gtk2_ardour/editor.cc:1700 +#: gtk2_ardour/editor.cc:1697 msgid "Nudge bwd" msgstr "Schritt nach hinten" -#: gtk2_ardour/editor.cc:1701 +#: gtk2_ardour/editor.cc:1698 msgid "Nudge fwd by capture offset" msgstr "Schritt nach vorne um Aufnahme-Offset" -#: gtk2_ardour/editor.cc:1702 +#: gtk2_ardour/editor.cc:1699 msgid "Nudge bwd by capture offset" msgstr "Schritt nach hinten um Aufnahme-Offset" -#: gtk2_ardour/editor.cc:1704 -#: gtk2_ardour/editor.cc:1869 -#: gtk2_ardour/editor.cc:1925 +#: gtk2_ardour/editor.cc:1701 +#: gtk2_ardour/editor.cc:1866 +#: gtk2_ardour/editor.cc:1922 msgid "Nudge" msgstr "Verschieben" -#: gtk2_ardour/editor.cc:1711 +#: gtk2_ardour/editor.cc:1708 msgid "Start to edit cursor" msgstr "Von Anfang bis Editierzeiger" -#: gtk2_ardour/editor.cc:1712 +#: gtk2_ardour/editor.cc:1709 msgid "Edit cursor to end" msgstr "Von Editierzeiger bis Ende" -#: gtk2_ardour/editor.cc:1714 -#: gtk2_ardour/gain_meter.cc:169 -#: gtk2_ardour/gain_meter.cc:873 -#: gtk2_ardour/panner_ui.cc:98 -#: gtk2_ardour/panner_ui.cc:806 +#: gtk2_ardour/editor.cc:1711 +#: gtk2_ardour/gain_meter.cc:168 +#: gtk2_ardour/gain_meter.cc:880 +#: gtk2_ardour/panner_ui.cc:97 +#: gtk2_ardour/panner_ui.cc:780 msgid "Trim" msgstr "Abschneiden" -#: gtk2_ardour/editor.cc:1717 +#: gtk2_ardour/editor.cc:1714 msgid "Split" msgstr "Teilen" -#: gtk2_ardour/editor.cc:1720 +#: gtk2_ardour/editor.cc:1717 msgid "Make mono regions" msgstr "Zu Mono-Regionen umwandeln" -#: gtk2_ardour/editor.cc:1723 +#: gtk2_ardour/editor.cc:1720 msgid "Duplicate" msgstr "Duplizieren" -#: gtk2_ardour/editor.cc:1724 +#: gtk2_ardour/editor.cc:1721 msgid "Fill Track" msgstr "Spur auffüllen" -#: gtk2_ardour/editor.cc:1756 -#, fuzzy +#: gtk2_ardour/editor.cc:1753 msgid "Play range" -msgstr "Bereich" +msgstr "Bereich abspielen" -#: gtk2_ardour/editor.cc:1757 -#, fuzzy +#: gtk2_ardour/editor.cc:1754 msgid "Loop range" -msgstr "Bereich" +msgstr "Bereich in Schleife abspielen" -#: gtk2_ardour/editor.cc:1761 +#: gtk2_ardour/editor.cc:1758 msgid "Analyze range" msgstr "Bereich analysieren" -#: gtk2_ardour/editor.cc:1765 +#: gtk2_ardour/editor.cc:1762 msgid "Separate range to track" msgstr "Bereich als Spur" -#: gtk2_ardour/editor.cc:1766 +#: gtk2_ardour/editor.cc:1763 msgid "Separate range to region list" msgstr "Bereich zur Regionenliste hinzufügen" -#: gtk2_ardour/editor.cc:1769 +#: gtk2_ardour/editor.cc:1766 msgid "Select all in range" msgstr "Alles im Bereich auswählen" -#: gtk2_ardour/editor.cc:1772 -#: gtk2_ardour/editor.cc:1817 +#: gtk2_ardour/editor.cc:1769 +#: gtk2_ardour/editor.cc:1814 msgid "Set range to loop range" msgstr "Ausgewählten Bereich als Schleife" -#: gtk2_ardour/editor.cc:1773 -#: gtk2_ardour/editor.cc:1818 +#: gtk2_ardour/editor.cc:1770 +#: gtk2_ardour/editor.cc:1815 msgid "Set range to punch range" msgstr "Ausgewählten Bereich als Punch-Bereich" -#: gtk2_ardour/editor.cc:1775 +#: gtk2_ardour/editor.cc:1772 msgid "Crop region to range" msgstr "Regionen-Editor öffnen" -#: gtk2_ardour/editor.cc:1776 +#: gtk2_ardour/editor.cc:1773 msgid "Fill range with region" msgstr "Bereich mit Region ausfüllen" -#: gtk2_ardour/editor.cc:1777 +#: gtk2_ardour/editor.cc:1774 msgid "Duplicate range" msgstr "Bereich Duplizieren" -#: gtk2_ardour/editor.cc:1778 +#: gtk2_ardour/editor.cc:1775 msgid "Create chunk from range" msgstr "Abschnitt aus Bereich erstellen..." -#: gtk2_ardour/editor.cc:1780 +#: gtk2_ardour/editor.cc:1777 msgid "Bounce range" msgstr "Bereich Bouncen" -#: gtk2_ardour/editor.cc:1781 +#: gtk2_ardour/editor.cc:1778 msgid "Export range" -msgstr "Bereich exportieren..." +msgstr "Bereiche exportieren..." -#: gtk2_ardour/editor.cc:1783 +#: gtk2_ardour/editor.cc:1780 msgid "Range" msgstr "Bereich" -#: gtk2_ardour/editor.cc:1798 -#: gtk2_ardour/editor.cc:1883 +#: gtk2_ardour/editor.cc:1795 +#: gtk2_ardour/editor.cc:1880 msgid "Play from edit cursor" msgstr "Wiedergabe ab Editierzeiger" -#: gtk2_ardour/editor.cc:1799 -#: gtk2_ardour/editor.cc:1884 +#: gtk2_ardour/editor.cc:1796 +#: gtk2_ardour/editor.cc:1881 msgid "Play from start" msgstr "Wiedergabe ab Anfang" -#: gtk2_ardour/editor.cc:1800 +#: gtk2_ardour/editor.cc:1797 msgid "Play region" msgstr "Region wiedergeben" -#: gtk2_ardour/editor.cc:1802 +#: gtk2_ardour/editor.cc:1799 msgid "Loop Region" msgstr "Region in Schleife wiedergeben" -#: gtk2_ardour/editor.cc:1812 -#: gtk2_ardour/editor.cc:1893 +#: gtk2_ardour/editor.cc:1809 +#: gtk2_ardour/editor.cc:1890 msgid "Select All in track" msgstr "Alles in Spur auswählen" -#: gtk2_ardour/editor.cc:1813 -#: gtk2_ardour/editor.cc:1894 -#: gtk2_ardour/redirect_box.cc:1151 +#: gtk2_ardour/editor.cc:1810 +#: gtk2_ardour/editor.cc:1891 +#: gtk2_ardour/redirect_box.cc:1150 msgid "Select All" msgstr "Alles Auswählen" -#: gtk2_ardour/editor.cc:1814 -#: gtk2_ardour/editor.cc:1895 +#: gtk2_ardour/editor.cc:1811 +#: gtk2_ardour/editor.cc:1892 msgid "Invert selection in track" msgstr "Auswahl in Spur umkehren" -#: gtk2_ardour/editor.cc:1815 -#: gtk2_ardour/editor.cc:1896 +#: gtk2_ardour/editor.cc:1812 +#: gtk2_ardour/editor.cc:1893 msgid "Invert selection" msgstr "Auswahl umkehren" -#: gtk2_ardour/editor.cc:1820 -#: gtk2_ardour/editor.cc:1898 +#: gtk2_ardour/editor.cc:1817 +#: gtk2_ardour/editor.cc:1895 msgid "Select all after edit cursor" msgstr "Alles nach Editierzeiger auswählen" -#: gtk2_ardour/editor.cc:1821 -#: gtk2_ardour/editor.cc:1899 +#: gtk2_ardour/editor.cc:1818 +#: gtk2_ardour/editor.cc:1896 msgid "Select all before edit cursor" msgstr "Alles vor Editierzeiger auswählen" -#: gtk2_ardour/editor.cc:1822 -#: gtk2_ardour/editor.cc:1900 +#: gtk2_ardour/editor.cc:1819 +#: gtk2_ardour/editor.cc:1897 msgid "Select all after playhead" msgstr "Alles nach Positionszeiger auswählen" -#: gtk2_ardour/editor.cc:1823 -#: gtk2_ardour/editor.cc:1901 +#: gtk2_ardour/editor.cc:1820 +#: gtk2_ardour/editor.cc:1898 msgid "Select all before playhead" msgstr "Alles vor Positionszeiger auswählen" -#: gtk2_ardour/editor.cc:1824 +#: gtk2_ardour/editor.cc:1821 msgid "Select all between cursors" msgstr "Alles zwischen Zeigern auswählen" -#: gtk2_ardour/editor.cc:1827 -#: gtk2_ardour/editor.cc:1903 +#: gtk2_ardour/editor.cc:1824 +#: gtk2_ardour/editor.cc:1900 msgid "Select" msgstr "Auswahl" -#: gtk2_ardour/editor.cc:1835 -#: gtk2_ardour/editor.cc:1911 +#: gtk2_ardour/editor.cc:1832 +#: gtk2_ardour/editor.cc:1908 #: gtk2_ardour/editor_actions.cc:217 -#: gtk2_ardour/redirect_box.cc:1144 +#: gtk2_ardour/redirect_box.cc:1143 msgid "Cut" msgstr "Ausschneiden" -#: gtk2_ardour/editor.cc:1836 -#: gtk2_ardour/editor.cc:1912 +#: gtk2_ardour/editor.cc:1833 +#: gtk2_ardour/editor.cc:1909 #: gtk2_ardour/editor_actions.cc:222 -#: gtk2_ardour/redirect_box.cc:1146 +#: gtk2_ardour/redirect_box.cc:1145 msgid "Copy" msgstr "Kopieren" -#: gtk2_ardour/editor.cc:1837 +#: gtk2_ardour/editor.cc:1834 msgid "Paste at edit cursor" msgstr "Am Editierzeiger einfügen" -#: gtk2_ardour/editor.cc:1838 +#: gtk2_ardour/editor.cc:1835 msgid "Paste at mouse" msgstr "An Mausposition einfügen" -#: gtk2_ardour/editor.cc:1842 +#: gtk2_ardour/editor.cc:1839 msgid "Align" msgstr "Ausrichten" -#: gtk2_ardour/editor.cc:1843 +#: gtk2_ardour/editor.cc:1840 msgid "Align Relative" msgstr "Relativ ausrichten" -#: gtk2_ardour/editor.cc:1847 +#: gtk2_ardour/editor.cc:1844 msgid "Insert chunk" msgstr "Abschnitt einfügen" -#: gtk2_ardour/editor.cc:1854 +#: gtk2_ardour/editor.cc:1851 msgid "Insert Selected Region" msgstr "Ausgewählte Region einfügen" -#: gtk2_ardour/editor.cc:1855 +#: gtk2_ardour/editor.cc:1852 msgid "Insert Existing Audio" msgstr "Audio importieren..." -#: gtk2_ardour/editor.cc:1864 -#: gtk2_ardour/editor.cc:1920 +#: gtk2_ardour/editor.cc:1861 +#: gtk2_ardour/editor.cc:1917 msgid "Nudge entire track fwd" msgstr "Gesamte Spur schrittweise nach vorne" -#: gtk2_ardour/editor.cc:1865 -#: gtk2_ardour/editor.cc:1921 +#: gtk2_ardour/editor.cc:1862 +#: gtk2_ardour/editor.cc:1918 msgid "Nudge track after edit cursor fwd" msgstr "Spur nach Editierzeiger schrittweise nach vorne" -#: gtk2_ardour/editor.cc:1866 -#: gtk2_ardour/editor.cc:1922 +#: gtk2_ardour/editor.cc:1863 +#: gtk2_ardour/editor.cc:1919 msgid "Nudge entire track bwd" msgstr "Gesamte Spur schrittweise nach hinten" -#: gtk2_ardour/editor.cc:1867 -#: gtk2_ardour/editor.cc:1923 +#: gtk2_ardour/editor.cc:1864 +#: gtk2_ardour/editor.cc:1920 msgid "Nudge track after edit cursor bwd" msgstr "Spur nach Editierzeiger schrittweise nach hinten" -#: gtk2_ardour/editor.cc:1913 +#: gtk2_ardour/editor.cc:1910 #: gtk2_ardour/editor_actions.cc:224 -#: gtk2_ardour/redirect_box.cc:1148 +#: gtk2_ardour/redirect_box.cc:1147 msgid "Paste" msgstr "Einfügen" -#: gtk2_ardour/editor.cc:2498 +#: gtk2_ardour/editor.cc:2495 msgid "Select/Move Objects" msgstr "Objekte auswählen/verschieben" -#: gtk2_ardour/editor.cc:2499 +#: gtk2_ardour/editor.cc:2496 msgid "Select/Move Ranges" msgstr "Bereiche auswählen/verschieben" -#: gtk2_ardour/editor.cc:2500 +#: gtk2_ardour/editor.cc:2497 msgid "Draw Gain Automation" msgstr "Lautstärkekurve zeichnen" -#: gtk2_ardour/editor.cc:2501 +#: gtk2_ardour/editor.cc:2498 msgid "Select Zoom Range" msgstr "Zoombereich auswählen" -#: gtk2_ardour/editor.cc:2502 +#: gtk2_ardour/editor.cc:2499 msgid "Stretch/Shrink Regions" msgstr "Regionen vergrößern/verkleinern (Time-Stretch)" -#: gtk2_ardour/editor.cc:2503 +#: gtk2_ardour/editor.cc:2500 msgid "Listen to Specific Regions" msgstr "Ausgewählte Regionen vorhören" -#: gtk2_ardour/editor.cc:2533 +#: gtk2_ardour/editor.cc:2530 #: gtk2_ardour/editor_actions.cc:143 msgid "Zoom In" msgstr "Vergrößern" -#: gtk2_ardour/editor.cc:2539 +#: gtk2_ardour/editor.cc:2536 #: gtk2_ardour/editor_actions.cc:141 msgid "Zoom Out" msgstr "Verkleinern" -#: gtk2_ardour/editor.cc:2545 +#: gtk2_ardour/editor.cc:2542 #: gtk2_ardour/editor_actions.cc:145 msgid "Zoom to Session" msgstr "Auf ganzes Projekt zoomen" -#: gtk2_ardour/editor.cc:2551 +#: gtk2_ardour/editor.cc:2548 msgid "Zoom focus" msgstr "Zoom-Mittelpunkt" -#: gtk2_ardour/editor.cc:2567 +#: gtk2_ardour/editor.cc:2564 msgid "Unit to snap cursors and ranges to" -msgstr "" - -#: gtk2_ardour/editor.cc:3281 -#: gtk2_ardour/editor.cc:3330 -#, fuzzy -msgid "set selected regions" -msgstr "Auswahl zu Schleife machen" +msgstr "Rastereinheit für Zeiger und Bereiche" -#: gtk2_ardour/editor.cc:3370 +#: gtk2_ardour/editor.cc:2810 #: gtk2_ardour/editor_actions.cc:207 msgid "Undo" msgstr "Rückgängig" -#: gtk2_ardour/editor.cc:3372 +#: gtk2_ardour/editor.cc:2812 msgid "Undo (%1)" msgstr "Rückgängig (%1)" -#: gtk2_ardour/editor.cc:3379 +#: gtk2_ardour/editor.cc:2819 #: gtk2_ardour/editor_actions.cc:209 msgid "Redo" msgstr "Wiederherstellen" -#: gtk2_ardour/editor.cc:3381 +#: gtk2_ardour/editor.cc:2821 msgid "Redo (%1)" msgstr "Wiederherstellen (%1)" -#: gtk2_ardour/editor.cc:3402 +#: gtk2_ardour/editor.cc:2842 msgid "Duplicate how many times?" msgstr "Wie häufig duplizieren?" -#: gtk2_ardour/editor.cc:3480 -#, fuzzy +#: gtk2_ardour/editor.cc:2920 msgid "Splice Edit" -msgstr "Teilen" +msgstr "Kleben" -#: gtk2_ardour/editor.cc:3482 +#: gtk2_ardour/editor.cc:2922 msgid "Slide Edit" -msgstr "" +msgstr "Slide Edit" -#: gtk2_ardour/editor.cc:3904 +#: gtk2_ardour/editor.cc:3276 msgid "" "Playlist %1 is currently unused.\n" "If left alone, no audio files used by it will be cleaned.\n" "If deleted, audio files used by it alone by will cleaned." msgstr "" +"Die Wiedergabeliste %1 wird nicht verwendet.\n" +"Es können keine Audiodateien aufgeräumt werden, die von ihr verwendet werden.\n" +"Falls sie gelöscht wird, werden die ausschließlich von ihr verwendeten Audiodateien gelöscht." -#: gtk2_ardour/editor.cc:3914 +#: gtk2_ardour/editor.cc:3286 msgid "Delete playlist" msgstr "Wiedergabeliste löschen" -#: gtk2_ardour/editor.cc:3915 +#: gtk2_ardour/editor.cc:3287 msgid "Keep playlist" msgstr "Wiedergabeliste beibehalten" -#: gtk2_ardour/editor.cc:3916 -#: gtk2_ardour/editor_audio_import.cc:315 -#: gtk2_ardour/editor_ops.cc:2063 -#: gtk2_ardour/editor_timefx.cc:72 -#: gtk2_ardour/export_dialog.cc:969 -#: gtk2_ardour/io_selector.cc:61 -#: gtk2_ardour/io_selector.cc:749 -#: gtk2_ardour/redirect_box.cc:975 -#: gtk2_ardour/tempo_dialog.cc:20 -#: gtk2_ardour/tempo_dialog.cc:37 -#: gtk2_ardour/tempo_dialog.cc:202 -#: gtk2_ardour/tempo_dialog.cc:220 -#: gtk2_ardour/connection_editor.cc:60 +#: gtk2_ardour/editor.cc:3288 +#: gtk2_ardour/editor_audio_import.cc:341 +#: gtk2_ardour/editor_ops.cc:1760 +#: gtk2_ardour/editor_timefx.cc:71 +#: gtk2_ardour/export_dialog.cc:967 +#: gtk2_ardour/io_selector.cc:60 +#: gtk2_ardour/io_selector.cc:748 +#: gtk2_ardour/redirect_box.cc:974 +#: gtk2_ardour/tempo_dialog.cc:22 +#: gtk2_ardour/tempo_dialog.cc:41 +#: gtk2_ardour/tempo_dialog.cc:158 +#: gtk2_ardour/tempo_dialog.cc:176 +#: gtk2_ardour/connection_editor.cc:59 msgid "Cancel" msgstr "Abbrechen" -#: gtk2_ardour/editor.cc:4120 +#: gtk2_ardour/editor.cc:3492 msgid "new playlists" msgstr "Neue Wiedergabelisten" -#: gtk2_ardour/editor.cc:4128 +#: gtk2_ardour/editor.cc:3500 msgid "copy playlists" msgstr "Wiedergabelisten kopieren" -#: gtk2_ardour/editor.cc:4136 +#: gtk2_ardour/editor.cc:3508 msgid "clear playlists" -msgstr "" +msgstr "Wiedergabelisten zurücksetzen" #: gtk2_ardour/editor_actions.cc:29 msgid "Select regions" @@ -2850,7 +2937,7 @@ msgstr "Region(en)" #: gtk2_ardour/editor_actions.cc:33 msgid "Tools" -msgstr "" +msgstr "Werkzeuge" #: gtk2_ardour/editor_actions.cc:34 msgid "View" @@ -2870,7 +2957,7 @@ msgstr "Abfall der Pegelanzeigen" #: gtk2_ardour/editor_actions.cc:39 msgid "Crossfades" -msgstr "ardour: Editor" +msgstr "Crossfades" #: gtk2_ardour/editor_actions.cc:40 msgid "Monitoring" @@ -2886,7 +2973,7 @@ msgstr "Layering" #: gtk2_ardour/editor_actions.cc:43 msgid "Timecode fps" -msgstr "" +msgstr "Timecode FPS" #: gtk2_ardour/editor_actions.cc:44 msgid "Pullup / Pulldown" @@ -2977,7 +3064,7 @@ msgid "Edit Cursor to Range End" msgstr "Editierzeiger zum Ende der Auswahl" #: gtk2_ardour/editor_actions.cc:106 -#: gtk2_ardour/editor_ops.cc:1331 +#: gtk2_ardour/editor_selection.cc:726 msgid "select all" msgstr "Alle Regionen auswählen" @@ -3018,7 +3105,7 @@ msgid "Jump Backward to Mark" msgstr "Zum vorherigen Marker springen" #: gtk2_ardour/editor_actions.cc:129 -msgid "Add Location from Playhead" +msgid "Add Mark from Playhead" msgstr "Marker am Positionszeiger setzen" #: gtk2_ardour/editor_actions.cc:132 @@ -3027,16 +3114,15 @@ msgstr "Schritt nach vorne" #: gtk2_ardour/editor_actions.cc:134 msgid "Nudge Next Forward" -msgstr "" +msgstr "nächste Region Schritt vorwärts" #: gtk2_ardour/editor_actions.cc:136 msgid "Nudge Backward" msgstr "Schritt nach Hinten" #: gtk2_ardour/editor_actions.cc:138 -#, fuzzy msgid "Nudge Next Backward" -msgstr "Stille einfügen" +msgstr "Nächste Region Schritt nach vorne" #: gtk2_ardour/editor_actions.cc:148 msgid "Scroll Tracks Up" @@ -3064,7 +3150,7 @@ msgstr "Rückwärts scrollen" #: gtk2_ardour/editor_actions.cc:161 msgid "goto" -msgstr "" +msgstr "Gehe zu" #: gtk2_ardour/editor_actions.cc:163 msgid "Center Playhead" @@ -3091,14 +3177,12 @@ msgid "Edit to Playhead" msgstr "Editierzeiger zum Positionszeiger setzen" #: gtk2_ardour/editor_actions.cc:178 -#, fuzzy msgid "Align Regions Start" -msgstr "Regionen" +msgstr "Anfang der Regionen ausrichten" #: gtk2_ardour/editor_actions.cc:180 -#, fuzzy msgid "Align Regions Start Relative" -msgstr "nach Anfang der Region in der Datei" +msgstr "Anfang der Regionen relativ ausrichten" #: gtk2_ardour/editor_actions.cc:182 msgid "Align Regions End" @@ -3106,7 +3190,7 @@ msgstr "ardour: Region" #: gtk2_ardour/editor_actions.cc:184 msgid "Align Regions End Relative" -msgstr "" +msgstr "Regionenenden relativ ausrichten" #: gtk2_ardour/editor_actions.cc:187 msgid "Align Regions Sync" @@ -3114,7 +3198,7 @@ msgstr "ardour: Region" #: gtk2_ardour/editor_actions.cc:189 msgid "Align Regions Sync Relative" -msgstr "" +msgstr "Regionen-Sync relativ ausrichten" #: gtk2_ardour/editor_actions.cc:192 msgid "Audition at Mouse" @@ -3145,17 +3229,15 @@ msgid "Set Region Sync Position" msgstr "Sync-Position der Region setzen" #: gtk2_ardour/editor_actions.cc:212 -#, fuzzy msgid "Export Session" -msgstr "Name für Region:" +msgstr "Projekt exportieren" #: gtk2_ardour/editor_actions.cc:214 -#, fuzzy msgid "Export Range" -msgstr "Ausgewählten Bereich wiedergeben" +msgstr "Bereich exportieren" #: gtk2_ardour/editor_actions.cc:220 -#: gtk2_ardour/connection_editor.cc:56 +#: gtk2_ardour/connection_editor.cc:55 msgid "Delete" msgstr "Löschen" @@ -3164,9 +3246,8 @@ msgid "Duplicate Region" msgstr "Duplizieren" #: gtk2_ardour/editor_actions.cc:228 -#, fuzzy msgid "Duplicate Range" -msgstr "Duplizieren" +msgstr "Bereich duplizieren" #: gtk2_ardour/editor_actions.cc:230 msgid "Insert Region" @@ -3189,9 +3270,8 @@ msgid "Insert Chunk" msgstr "Abschnitt einfügen" #: gtk2_ardour/editor_actions.cc:241 -#, fuzzy msgid "Split at edit cursor" -msgstr "Wiedergabe ab Cursor" +msgstr "Am Editierzeiger trennen" #: gtk2_ardour/editor_actions.cc:244 msgid "Start Range" @@ -3203,7 +3283,7 @@ msgstr "Bereich beenden" #: gtk2_ardour/editor_actions.cc:248 msgid "Finish add Range" -msgstr "" +msgstr "Bereich hinzufügen beenden" #: gtk2_ardour/editor_actions.cc:251 msgid "Extend Range to End of Region" @@ -3523,11 +3603,11 @@ msgstr "" #: gtk2_ardour/editor_actions.cc:410 msgid "80 per frame" -msgstr "" +msgstr "80 pro Frame" #: gtk2_ardour/editor_actions.cc:411 msgid "100 per frame" -msgstr "" +msgstr "100 pro Frame" #: gtk2_ardour/editor_actions.cc:714 #: gtk2_ardour/editor_actions.cc:759 @@ -3535,254 +3615,270 @@ msgstr "" #: gtk2_ardour/editor_actions.cc:814 #: gtk2_ardour/editor_actions.cc:824 msgid "programming error: %1: %2" -msgstr "" +msgstr "Programmierfehler: %1: %2" #: gtk2_ardour/editor_actions.cc:985 msgid "Configuraton is using unhandled subframes per frame value: %1" -msgstr "" +msgstr "Diese Konfiguration benutzt einen unzulässigen Wert für Subframes pro Frame: %1" #: gtk2_ardour/editor_audio_import.cc:76 -#, fuzzy msgid "You can't import or embed an audiofile until you have a session loaded." -msgstr "Sie können keine Audio-Daten importieren, solange kein Projekt geladen ist." +msgstr "Sie können keine Audiodatei importieren, solange kein Projekt geladen ist." #: gtk2_ardour/editor_audio_import.cc:81 msgid "Add existing audio to session" msgstr "Audio importieren" -#: gtk2_ardour/editor_audio_import.cc:166 +#: gtk2_ardour/editor_audio_import.cc:168 msgid "Import as a %1 region" -msgstr "" +msgstr "Importiere als eine %1 Region" -#: gtk2_ardour/editor_audio_import.cc:167 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:169 msgid "multichannel" -msgstr "Kanäle" +msgstr "Mehrkanal" -#: gtk2_ardour/editor_audio_import.cc:167 -#: gtk2_ardour/export_dialog.cc:84 +#: gtk2_ardour/editor_audio_import.cc:169 +#: gtk2_ardour/export_dialog.cc:83 msgid "stereo" -msgstr "" +msgstr "Stereo" -#: gtk2_ardour/editor_audio_import.cc:168 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:170 msgid "Import as multiple regions" -msgstr "Auswahl zu Schleife machen" +msgstr "In mehrere Regionen aufteilen" -#: gtk2_ardour/editor_audio_import.cc:170 +#: gtk2_ardour/editor_audio_import.cc:172 msgid "" "Paired files detected (%1, %2 ...).\n" "Do you want to:" msgstr "" +"Zusammenhängende Dateien gefunden (%1, %2 ...).\n" +"Wollen Sie:" -#: gtk2_ardour/editor_audio_import.cc:216 +#: gtk2_ardour/editor_audio_import.cc:218 msgid "ardour: importing %1" msgstr "ardour: Importiere %1" -#: gtk2_ardour/editor_audio_import.cc:220 +#: gtk2_ardour/editor_audio_import.cc:222 msgid "Cancel Import" msgstr "Importieren Abbrechen" -#: gtk2_ardour/editor_audio_import.cc:303 +#: gtk2_ardour/editor_audio_import.cc:307 msgid "Editor: cannot open file \"%1\", (%2)" -msgstr "" +msgstr "Editor: kann die Datei \"%1\" nicht öffnen (%2)" -#: gtk2_ardour/editor_audio_import.cc:311 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:315 msgid "Cancel entire import" msgstr "Importieren Abbrechen" -#: gtk2_ardour/editor_audio_import.cc:312 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:316 msgid "Don't embed it" -msgstr "Ohne %1" +msgstr "Nicht einbetten" -#: gtk2_ardour/editor_audio_import.cc:313 +#: gtk2_ardour/editor_audio_import.cc:317 msgid "Embed all without questions" -msgstr "" - -#: gtk2_ardour/editor_audio_import.cc:318 -msgid "Embed it anyway" -msgstr "" +msgstr "Alle Importieren ohne nachzufragen" -#: gtk2_ardour/editor_audio_import.cc:321 +#: gtk2_ardour/editor_audio_import.cc:320 +#: gtk2_ardour/editor_audio_import.cc:345 msgid "" "%1\n" "This audiofile's sample rate doesn't match the session sample rate!" msgstr "" +"%1\n" +"Die Samplerate dieser Audiodatei unterscheidet sich von der Samplerate dieses Projekts." -#: gtk2_ardour/editor_audio_import.cc:360 +#: gtk2_ardour/editor_audio_import.cc:342 +msgid "Embed it anyway" +msgstr "Trotzdem importieren" + +#: gtk2_ardour/editor_audio_import.cc:393 msgid "could not open %1" msgstr "Konnte \"%s\" nicht öffnen." -#: gtk2_ardour/editor_audio_import.cc:407 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:440 msgid "insert sndfile" -msgstr "Stille einfügen" +msgstr "Audiodatei einfügen" -#: gtk2_ardour/editor_canvas.cc:119 +#: gtk2_ardour/editor_canvas.cc:118 msgid "VerboseCanvasCursor" msgstr "" -#: gtk2_ardour/editor_edit_groups.cc:53 -#: gtk2_ardour/mixer_ui.cc:751 +#: gtk2_ardour/editor_canvas.cc:267 +msgid "edit cursor color not defined, check your ardour.colors file!" +msgstr "" + +#: gtk2_ardour/editor_canvas.cc:272 +msgid "playhead color not defined, check your ardour.colors file!" +msgstr "" + +#: gtk2_ardour/editor_edit_groups.cc:52 +#: gtk2_ardour/mixer_ui.cc:754 msgid "Activate All" msgstr "Alle aktivieren" -#: gtk2_ardour/editor_edit_groups.cc:54 -#: gtk2_ardour/mixer_ui.cc:752 +#: gtk2_ardour/editor_edit_groups.cc:53 +#: gtk2_ardour/mixer_ui.cc:755 msgid "Disable All" msgstr "Alle deaktivieren" -#: gtk2_ardour/editor_edit_groups.cc:56 -#: gtk2_ardour/mixer_ui.cc:754 +#: gtk2_ardour/editor_edit_groups.cc:55 +#: gtk2_ardour/mixer_ui.cc:757 msgid "Add group" msgstr "Gruppe hinzufügen" -#: gtk2_ardour/editor_edit_groups.cc:229 -#: gtk2_ardour/mixer_ui.cc:985 +#: gtk2_ardour/editor_edit_groups.cc:228 +#: gtk2_ardour/mixer_ui.cc:998 msgid "unnamed" msgstr "unbenannt" -#: gtk2_ardour/editor_edit_groups.cc:258 -#: gtk2_ardour/mixer_ui.cc:849 +#: gtk2_ardour/editor_edit_groups.cc:257 +#: gtk2_ardour/mixer_ui.cc:852 msgid "-all-" msgstr "-alle-" -#: gtk2_ardour/editor_export_audio.cc:67 +#: gtk2_ardour/editor_export_audio.cc:66 msgid "" "There is no selection to export.\n" "\n" "Select a selection using the range mouse mode" msgstr "" +"Es wurde keine Auswahl zum Exportieren getroffen.\n" +"\n" +"Erstellen Sie eine Auswahl mit dem Bereichswerkzeug" -#: gtk2_ardour/editor_export_audio.cc:112 +#: gtk2_ardour/editor_export_audio.cc:111 msgid "" "There are no ranges to export.\n" "\n" "Create 1 or more ranges by dragging the mouse in the range bar" msgstr "" +"Es gibt keine Bereiche, die exportiert werden können.\n" +"\n" +"Erstellen Sie einen oder mehrere Bereiche, indem Sie den Mauszeiger in der Bereichleiste ziehen" -#: gtk2_ardour/editor_imageframe.cc:623 -#: gtk2_ardour/editor_imageframe.cc:653 +#: gtk2_ardour/editor_imageframe.cc:622 +#: gtk2_ardour/editor_imageframe.cc:652 msgid "programming error: no ImageFrameView selected" -msgstr "" +msgstr "Programmierfehler: kein ImageFrameView ausgewählt" -#: gtk2_ardour/editor_imageframe.cc:846 -#: gtk2_ardour/editor_imageframe.cc:868 +#: gtk2_ardour/editor_imageframe.cc:845 +#: gtk2_ardour/editor_imageframe.cc:867 msgid "programming error: no MarkerView selected" -msgstr "" +msgstr "Programmierfehler: kein MarkerView ausgewählt" -#: gtk2_ardour/editor_keyboard.cc:105 -#, fuzzy +#: gtk2_ardour/editor_keyboard.cc:104 msgid "mute region" -msgstr "Name für Region:" +msgstr "Region stummschalten" -#: gtk2_ardour/editor_keys.cc:46 -#, fuzzy +#: gtk2_ardour/editor_keys.cc:45 msgid "keyboard selection" -msgstr "Auswahl zu Abschnitt machen" +msgstr "Tastaturauswahl" -#: gtk2_ardour/editor_markers.cc:295 -#: gtk2_ardour/editor_ops.cc:1249 -#: gtk2_ardour/editor_ops.cc:1266 -#: gtk2_ardour/editor_ops.cc:1285 -#: gtk2_ardour/location_ui.cc:779 +#: gtk2_ardour/editor_markers.cc:294 +#: gtk2_ardour/editor_ops.cc:1248 +#: gtk2_ardour/editor_ops.cc:1265 +#: gtk2_ardour/editor_ops.cc:1284 +#: gtk2_ardour/location_ui.cc:778 msgid "add marker" -msgstr "" +msgstr "Marker hinzufügen" -#: gtk2_ardour/editor_markers.cc:311 -#: gtk2_ardour/editor_markers.cc:375 +#: gtk2_ardour/editor_markers.cc:310 +#: gtk2_ardour/editor_markers.cc:374 #: gtk2_ardour/editor_markers.cc:551 #: gtk2_ardour/editor_markers.cc:569 -#: gtk2_ardour/editor_markers.cc:588 -#: gtk2_ardour/editor_markers.cc:607 -#: gtk2_ardour/editor_markers.cc:637 -#: gtk2_ardour/editor_markers.cc:665 -#: gtk2_ardour/editor_markers.cc:693 -#: gtk2_ardour/editor_markers.cc:732 -#: gtk2_ardour/editor_markers.cc:757 -#: gtk2_ardour/editor_markers.cc:784 -#: gtk2_ardour/editor_markers.cc:807 -#: gtk2_ardour/editor_markers.cc:826 -#: gtk2_ardour/editor_mouse.cc:2080 -#: gtk2_ardour/editor_mouse.cc:4395 +#: gtk2_ardour/editor_markers.cc:587 +#: gtk2_ardour/editor_markers.cc:606 +#: gtk2_ardour/editor_markers.cc:625 +#: gtk2_ardour/editor_markers.cc:655 +#: gtk2_ardour/editor_markers.cc:683 +#: gtk2_ardour/editor_markers.cc:711 +#: gtk2_ardour/editor_markers.cc:750 +#: gtk2_ardour/editor_markers.cc:775 +#: gtk2_ardour/editor_markers.cc:802 +#: gtk2_ardour/editor_markers.cc:825 +#: gtk2_ardour/editor_markers.cc:844 +#: gtk2_ardour/editor_mouse.cc:2085 +#: gtk2_ardour/editor_mouse.cc:4393 msgid "programming error: marker canvas item has no marker object pointer!" -msgstr "" +msgstr "Programmierfehler: marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_markers.cc:325 -#: gtk2_ardour/location_ui.cc:657 +#: gtk2_ardour/editor_markers.cc:324 +#: gtk2_ardour/location_ui.cc:656 msgid "remove marker" msgstr "Marker entfernen" -#: gtk2_ardour/editor_markers.cc:466 +#: gtk2_ardour/editor_markers.cc:465 msgid "Locate to Mark" msgstr "Positionszeiger zu Marker setzen" -#: gtk2_ardour/editor_markers.cc:467 +#: gtk2_ardour/editor_markers.cc:466 msgid "Play from Mark" msgstr "Wiedergabe ab Marker" -#: gtk2_ardour/editor_markers.cc:468 +#: gtk2_ardour/editor_markers.cc:467 msgid "Set Mark from Playhead" msgstr "Marker am Positionszeiger setzen" -#: gtk2_ardour/editor_markers.cc:472 +#: gtk2_ardour/editor_markers.cc:471 msgid "Hide Mark" msgstr "Marker verbergen" -#: gtk2_ardour/editor_markers.cc:474 +#: gtk2_ardour/editor_markers.cc:473 msgid "Rename Mark" msgstr "Marker umbenennen" -#: gtk2_ardour/editor_markers.cc:475 +#: gtk2_ardour/editor_markers.cc:474 msgid "Remove Mark" msgstr "Marker entfernen" -#: gtk2_ardour/editor_markers.cc:493 +#: gtk2_ardour/editor_markers.cc:492 msgid "Locate to Range Mark" msgstr "Positionszeiger zu Bereichsmarker" -#: gtk2_ardour/editor_markers.cc:494 +#: gtk2_ardour/editor_markers.cc:493 msgid "Play from Range Mark" msgstr "Wiedergabe ab Bereichsmarker" -#: gtk2_ardour/editor_markers.cc:496 +#: gtk2_ardour/editor_markers.cc:495 msgid "Play Range" msgstr "Bereich wiedergeben" -#: gtk2_ardour/editor_markers.cc:497 +#: gtk2_ardour/editor_markers.cc:496 msgid "Loop Range" msgstr "Bereich in Schleife wiedergeben" -#: gtk2_ardour/editor_markers.cc:499 +#: gtk2_ardour/editor_markers.cc:498 msgid "Set Range Mark from Playhead" msgstr "Bereichsmarker zum Positionszeiger verschieben" -#: gtk2_ardour/editor_markers.cc:500 +#: gtk2_ardour/editor_markers.cc:499 msgid "Set Range from Range Selection" msgstr "Bereichsmarker zum Auswahlbereich verschieben" -#: gtk2_ardour/editor_markers.cc:504 +#: gtk2_ardour/editor_markers.cc:503 msgid "Hide Range" msgstr "Bereich verbergen" -#: gtk2_ardour/editor_markers.cc:506 +#: gtk2_ardour/editor_markers.cc:505 msgid "Rename Range" msgstr "Bereich umbenennen" -#: gtk2_ardour/editor_markers.cc:507 +#: gtk2_ardour/editor_markers.cc:506 msgid "Remove Range" msgstr "Bereich entfernen" -#: gtk2_ardour/editor_markers.cc:512 +#: gtk2_ardour/editor_markers.cc:511 msgid "Separate Regions in Range" msgstr "Regionen an Bereichsgrenzen teilen" -#: gtk2_ardour/editor_markers.cc:513 +#: gtk2_ardour/editor_markers.cc:512 msgid "Select All in Range" msgstr "Alles im Bereich auswählen" +#: gtk2_ardour/editor_markers.cc:513 +msgid "Select Range" +msgstr "Bereich auswählen" + #: gtk2_ardour/editor_markers.cc:539 msgid "Set Loop Range" msgstr "Schleife erstellen" @@ -3791,572 +3887,550 @@ msgstr "Schleife erstellen" msgid "Set Punch Range" msgstr "Punch-Bereich erstellen" -#: gtk2_ardour/editor_markers.cc:840 +#: gtk2_ardour/editor_markers.cc:858 msgid "New Name:" msgstr "Neuer Name: " -#: gtk2_ardour/editor_markers.cc:843 +#: gtk2_ardour/editor_markers.cc:861 msgid "ardour: rename mark" msgstr "ardour: Marker umbenennen" -#: gtk2_ardour/editor_markers.cc:845 +#: gtk2_ardour/editor_markers.cc:863 msgid "ardour: rename range" msgstr "ardour: Bereich umbenennen" -#: gtk2_ardour/editor_markers.cc:865 -#, fuzzy +#: gtk2_ardour/editor_markers.cc:883 msgid "rename marker" -msgstr "Feld entfernen" +msgstr "Marker umbenennen" -#: gtk2_ardour/editor_markers.cc:891 +#: gtk2_ardour/editor_markers.cc:909 msgid "set loop range" -msgstr "" +msgstr "Loop-Bereich festlegen" -#: gtk2_ardour/editor_markers.cc:919 -#, fuzzy +#: gtk2_ardour/editor_markers.cc:937 msgid "set punch range" -msgstr "Ausgewählten Bereich wiedergeben" +msgstr "Punch-Bereich festlegen" -#: gtk2_ardour/editor_mouse.cc:105 +#: gtk2_ardour/editor_mouse.cc:104 msgid "Editor::event_frame() used on unhandled event type %1" msgstr "" -#: gtk2_ardour/editor_mouse.cc:315 +#: gtk2_ardour/editor_mouse.cc:326 msgid "select on click" msgstr "Auswählen durch Klicken" -#: gtk2_ardour/editor_mouse.cc:1608 +#: gtk2_ardour/editor_mouse.cc:1613 msgid "programming error: start_grab called without drag item" -msgstr "" +msgstr "Programmierfehler: start_grab called without drag item" -#: gtk2_ardour/editor_mouse.cc:1835 +#: gtk2_ardour/editor_mouse.cc:1840 msgid "change fade in length" -msgstr "" +msgstr "Ändere Fade-In Länge" -#: gtk2_ardour/editor_mouse.cc:1867 +#: gtk2_ardour/editor_mouse.cc:1872 msgid "programming error: fade out canvas item has no regionview data pointer!" -msgstr "" +msgstr "Programmierfehler: fade out canvas item has no regionview data pointer!" -#: gtk2_ardour/editor_mouse.cc:1952 +#: gtk2_ardour/editor_mouse.cc:1957 msgid "change fade out length" msgstr "Fade-Out verändern" -#: gtk2_ardour/editor_mouse.cc:1984 +#: gtk2_ardour/editor_mouse.cc:1989 msgid "programming error: cursor canvas item has no cursor data pointer!" -msgstr "" +msgstr "Programmierfehler: cursor canvas item has no cursor data pointer!" -#: gtk2_ardour/editor_mouse.cc:2215 +#: gtk2_ardour/editor_mouse.cc:2220 msgid "move marker" msgstr "Marker bewegen" -#: gtk2_ardour/editor_mouse.cc:2243 -#: gtk2_ardour/editor_mouse.cc:2274 -#: gtk2_ardour/editor_tempodisplay.cc:492 +#: gtk2_ardour/editor_mouse.cc:2248 +#: gtk2_ardour/editor_mouse.cc:2279 +#: gtk2_ardour/editor_tempodisplay.cc:500 msgid "programming error: meter marker canvas item has no marker object pointer!" -msgstr "" +msgstr "pProgrammierfehler: meter marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_mouse.cc:2342 +#: gtk2_ardour/editor_mouse.cc:2347 msgid "copy meter mark" msgstr "Taktmarker kopieren" -#: gtk2_ardour/editor_mouse.cc:2353 +#: gtk2_ardour/editor_mouse.cc:2358 msgid "move meter mark" msgstr "Taktwechsel bewegen" -#: gtk2_ardour/editor_mouse.cc:2369 -#: gtk2_ardour/editor_mouse.cc:2402 -#: gtk2_ardour/editor_tempodisplay.cc:355 -#: gtk2_ardour/editor_tempodisplay.cc:439 -#: gtk2_ardour/editor_tempodisplay.cc:458 -msgid "programming error: tempo marker canvas item has no marker object pointer!" -msgstr "" - #: gtk2_ardour/editor_mouse.cc:2374 #: gtk2_ardour/editor_mouse.cc:2407 -#: gtk2_ardour/editor_tempodisplay.cc:360 -#: gtk2_ardour/editor_tempodisplay.cc:444 +#: gtk2_ardour/editor_tempodisplay.cc:363 +#: gtk2_ardour/editor_tempodisplay.cc:447 +#: gtk2_ardour/editor_tempodisplay.cc:466 +msgid "programming error: tempo marker canvas item has no marker object pointer!" +msgstr "Programmierfehler: tempo marker canvas item has no marker object pointer!" + +#: gtk2_ardour/editor_mouse.cc:2379 +#: gtk2_ardour/editor_mouse.cc:2412 +#: gtk2_ardour/editor_tempodisplay.cc:368 +#: gtk2_ardour/editor_tempodisplay.cc:452 msgid "programming error: marker for tempo is not a tempo marker!" -msgstr "" +msgstr "Programmierfehler: marker for tempo is not a tempo marker!" -#: gtk2_ardour/editor_mouse.cc:2474 +#: gtk2_ardour/editor_mouse.cc:2479 msgid "copy tempo mark" msgstr "Tempomarker kopieren" -#: gtk2_ardour/editor_mouse.cc:2485 +#: gtk2_ardour/editor_mouse.cc:2490 msgid "move tempo mark" msgstr "Tempowechsel bewegen" -#: gtk2_ardour/editor_mouse.cc:2500 -#: gtk2_ardour/editor_mouse.cc:2519 -#: gtk2_ardour/editor_mouse.cc:2532 +#: gtk2_ardour/editor_mouse.cc:2505 +#: gtk2_ardour/editor_mouse.cc:2524 +#: gtk2_ardour/editor_mouse.cc:2537 msgid "programming error: control point canvas item has no control point object pointer!" -msgstr "" +msgstr "Programmierfehler: control point canvas item has no control point object pointer!" -#: gtk2_ardour/editor_mouse.cc:2638 +#: gtk2_ardour/editor_mouse.cc:2643 msgid "programming error: line canvas item has no line pointer!" -msgstr "" +msgstr "Programmierfehler: line canvas item has no line pointer!" -#: gtk2_ardour/editor_mouse.cc:2747 +#: gtk2_ardour/editor_mouse.cc:2752 msgid "move region(s)" msgstr "Region(en) bewegen" -#: gtk2_ardour/editor_mouse.cc:2811 +#: gtk2_ardour/editor_mouse.cc:2816 #, fuzzy msgid "Drag region brush" msgstr "Ardour: Region" -#: gtk2_ardour/editor_mouse.cc:2833 -msgid "Drag region copy" -msgstr "" +#: gtk2_ardour/editor_mouse.cc:3344 +msgid "fixed time region copy" +msgstr "Region zeitgleich kopieren" + +#: gtk2_ardour/editor_mouse.cc:3346 +msgid "region copy" +msgstr "Region kopieren" + +#: gtk2_ardour/editor_mouse.cc:3350 +msgid "fixed time region drag" +msgstr "Region zeitgleich verschieben" + +#: gtk2_ardour/editor_mouse.cc:3352 +msgid "region drag" +msgstr "Region verschieben" #: gtk2_ardour/editor_mouse.cc:3712 -#, fuzzy msgid "selection grab" -msgstr "Auswahl" +msgstr "Auswählen" #: gtk2_ardour/editor_mouse.cc:3754 -#, fuzzy msgid "cancel selection" -msgstr "Auswahl wiedergeben" +msgstr "Auswahl abbrechen" #: gtk2_ardour/editor_mouse.cc:3864 -#, fuzzy msgid "range selection" -msgstr "Auswahl wiedergeben" +msgstr "Bereichsauswahl" #: gtk2_ardour/editor_mouse.cc:3880 -#, fuzzy msgid "trim selection start" -msgstr "Auswahl zu Abschnitt machen" +msgstr "Anfangspunkt der Auswahl abschneiden" #: gtk2_ardour/editor_mouse.cc:3896 -#, fuzzy msgid "trim selection end" -msgstr "Auswahl zu Abschnitt machen" +msgstr "Endpunkt der Auswahl abschneiden" #: gtk2_ardour/editor_mouse.cc:3913 msgid "move selection" msgstr "Auswahl bewegen" -#: gtk2_ardour/editor_mouse.cc:4304 +#: gtk2_ardour/editor_mouse.cc:4302 msgid "Start point trim" -msgstr "" +msgstr "Anfangspunkt verändern" -#: gtk2_ardour/editor_mouse.cc:4336 +#: gtk2_ardour/editor_mouse.cc:4334 msgid "End point trim" -msgstr "" +msgstr "Endpunkt verändern" -#: gtk2_ardour/editor_mouse.cc:4379 -#, fuzzy +#: gtk2_ardour/editor_mouse.cc:4377 msgid "trimmed region" -msgstr "Ardour: Region" +msgstr "Abgeschnittene Region" -#: gtk2_ardour/editor_mouse.cc:4522 -#, fuzzy +#: gtk2_ardour/editor_mouse.cc:4520 msgid "new range marker" -msgstr "Ardour: Region umbenennen" +msgstr "Neuer Bereich" -#: gtk2_ardour/editor_mouse.cc:4767 -#, fuzzy -msgid "select regions" -msgstr "Auswahl zu Schleife machen" +#: gtk2_ardour/editor_mouse.cc:4763 +msgid "rubberband selection" +msgstr "Bereichsauswahl" -#: gtk2_ardour/editor_mouse.cc:4797 +#: gtk2_ardour/editor_mouse.cc:4793 msgid "Name for region:" msgstr "Name für Region:" -#: gtk2_ardour/editor_mouse.cc:4861 -#, fuzzy +#: gtk2_ardour/editor_mouse.cc:4857 msgid "timestretch" -msgstr "Ardour: Mixer" +msgstr "Time-Stretch" -#: gtk2_ardour/editor_ops.cc:115 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:114 msgid "split" -msgstr "Teilen" +msgstr "Teile" -#: gtk2_ardour/editor_ops.cc:154 +#: gtk2_ardour/editor_ops.cc:153 msgid "remove region" msgstr "Region(en) löschen" -#: gtk2_ardour/editor_ops.cc:174 +#: gtk2_ardour/editor_ops.cc:173 msgid "" " This is destructive, will possibly delete audio files\n" "It cannot be undone\n" "Do you really want to destroy %1 ?" msgstr "" +" Diese Aktion ist destruktiv und löscht möglicherweise Audiodateien\n" +"Dies kann nicht rückgängig gemacht werden\n" +"Wollen Sie %1 wirklich löschen ?" -#: gtk2_ardour/editor_ops.cc:178 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:177 msgid "these regions" -msgstr "Name für Region:" +msgstr "diese Region" -#: gtk2_ardour/editor_ops.cc:178 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:177 msgid "this region" -msgstr "Name für Region:" +msgstr "diese Region" -#: gtk2_ardour/editor_ops.cc:180 -#: gtk2_ardour/editor_ops.cc:3444 -#: gtk2_ardour/route_ui.cc:736 -#: gtk2_ardour/visual_time_axis.cc:283 +#: gtk2_ardour/editor_ops.cc:179 +#: gtk2_ardour/editor_ops.cc:3144 +#: gtk2_ardour/route_ui.cc:783 +#: gtk2_ardour/visual_time_axis.cc:282 msgid "No, do nothing." msgstr "Nein, nichts machen." -#: gtk2_ardour/editor_ops.cc:183 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:182 msgid "Yes, destroy them." msgstr "Ja, entfernen." -#: gtk2_ardour/editor_ops.cc:185 -#: gtk2_ardour/editor_ops.cc:3445 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:184 +#: gtk2_ardour/editor_ops.cc:3145 msgid "Yes, destroy it." msgstr "Ja, entfernen." -#: gtk2_ardour/editor_ops.cc:271 -#: gtk2_ardour/editor_ops.cc:299 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:270 +#: gtk2_ardour/editor_ops.cc:298 msgid "extend selection" -msgstr "Auswahl zu Abschnitt machen" +msgstr "Auswahl erweitern" -#: gtk2_ardour/editor_ops.cc:315 -#: gtk2_ardour/editor_ops.cc:350 -#: gtk2_ardour/editor_ops.cc:395 -#: gtk2_ardour/editor_ops.cc:422 +#: gtk2_ardour/editor_ops.cc:314 +#: gtk2_ardour/editor_ops.cc:349 +#: gtk2_ardour/editor_ops.cc:394 +#: gtk2_ardour/editor_ops.cc:421 msgid "nudge forward" -msgstr "" +msgstr "Schritt vorwärts" -#: gtk2_ardour/editor_ops.cc:487 +#: gtk2_ardour/editor_ops.cc:486 msgid "build_region_boundary_cache called with snap_type = %1" msgstr "" -#: gtk2_ardour/editor_ops.cc:1413 -msgid "select all within" -msgstr "Alle im Bereich auswählen" - -#: gtk2_ardour/editor_ops.cc:1443 -#, fuzzy -msgid "set selection from region" -msgstr "Ausgewählten Bereich wiedergeben" - -#: gtk2_ardour/editor_ops.cc:1476 -#, fuzzy -msgid "set selection from range" -msgstr "Ausgewählten Bereich wiedergeben" - -#: gtk2_ardour/editor_ops.cc:1506 -msgid "select all from range" -msgstr "Alle im Bereich auswählen" - -#: gtk2_ardour/editor_ops.cc:1528 -msgid "select all from punch" -msgstr "Alle im Punch-Bereich auswählen" - -#: gtk2_ardour/editor_ops.cc:1550 -msgid "select all from loop" -msgstr "Alle im Loop-Bereich auswählen" - -#: gtk2_ardour/editor_ops.cc:1564 -msgid "select all after cursor" -msgstr "Alle nach Positionszeiger auswählen" - -#: gtk2_ardour/editor_ops.cc:1569 -msgid "select all before cursor" -msgstr "Alle vor Positionszeiger auswählen" - -#: gtk2_ardour/editor_ops.cc:1599 -msgid "select all between cursors" -msgstr "Alle zwischen den Zeigern auswählen" - -#: gtk2_ardour/editor_ops.cc:1732 +#: gtk2_ardour/editor_ops.cc:1405 msgid "clear markers" -msgstr "" +msgstr "Marker zurücksetzen" -#: gtk2_ardour/editor_ops.cc:1745 +#: gtk2_ardour/editor_ops.cc:1418 msgid "clear ranges" -msgstr "Verbindungen entfernen" +msgstr "Bereiche zurücksetzen" -#: gtk2_ardour/editor_ops.cc:1765 +#: gtk2_ardour/editor_ops.cc:1438 msgid "clear locations" -msgstr "Verbindungen entfernen" +msgstr "Positionen zurücksetzen" -#: gtk2_ardour/editor_ops.cc:1840 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:1513 msgid "insert dragged region" -msgstr "Ardour: Region" +msgstr "Region ziehen" -#: gtk2_ardour/editor_ops.cc:1887 +#: gtk2_ardour/editor_ops.cc:1560 msgid "insert region" msgstr "Region einfügen" -#: gtk2_ardour/editor_ops.cc:2062 -#: gtk2_ardour/io_selector.cc:60 -#: gtk2_ardour/io_selector.cc:748 -#: gtk2_ardour/connection_editor.cc:86 +#: gtk2_ardour/editor_ops.cc:1759 +#: gtk2_ardour/io_selector.cc:59 +#: gtk2_ardour/io_selector.cc:747 +#: gtk2_ardour/connection_editor.cc:85 msgid "OK" -msgstr "" +msgstr "OK" -#: gtk2_ardour/editor_ops.cc:2069 +#: gtk2_ardour/editor_ops.cc:1766 msgid "ardour: rename region" msgstr "ardour: Region umbenennen" -#: gtk2_ardour/editor_ops.cc:2298 -#: gtk2_ardour/editor_ops.cc:2351 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2000 +#: gtk2_ardour/editor_ops.cc:2053 msgid "separate" -msgstr "Ausgewählten Bereich wiedergeben" +msgstr "Teilen" -#: gtk2_ardour/editor_ops.cc:2418 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2120 msgid "trim to selection" -msgstr "Auswahl zu Abschnitt machen" +msgstr "Auf Auswahl kürzen" -#: gtk2_ardour/editor_ops.cc:2459 +#: gtk2_ardour/editor_ops.cc:2161 msgid "region fill" -msgstr "" +msgstr "Region füllen" -#: gtk2_ardour/editor_ops.cc:2523 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2225 msgid "fill selection" -msgstr "Auswahl zu Schleife machen" +msgstr "Auswahl füllen" -#: gtk2_ardour/editor_ops.cc:2544 +#: gtk2_ardour/editor_ops.cc:2246 msgid "Programming error. that region doesn't cover that position" -msgstr "" +msgstr "Programmierfehler: that region doesn't cover that position" -#: gtk2_ardour/editor_ops.cc:2547 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2249 msgid "set region sync position" -msgstr "Regionen" +msgstr "Sync-Position setzen" -#: gtk2_ardour/editor_ops.cc:2563 +#: gtk2_ardour/editor_ops.cc:2265 msgid "Place the edit cursor at the desired sync point" msgstr "Positionieren sie den Arbeits-Cursor am gewünschten Synchronisationspunkt" -#: gtk2_ardour/editor_ops.cc:2568 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2270 msgid "set sync from edit cursor" -msgstr "Wiedergabe ab Cursor" +msgstr "Sync-Position an Editierzeiger setzen" -#: gtk2_ardour/editor_ops.cc:2581 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2283 msgid "remove sync" msgstr "Synchronisationspunkt entfernen" -#: gtk2_ardour/editor_ops.cc:2596 +#: gtk2_ardour/editor_ops.cc:2298 #, fuzzy msgid "naturalize" msgstr "Ardour: Region" -#: gtk2_ardour/editor_ops.cc:2661 +#: gtk2_ardour/editor_ops.cc:2363 msgid "align selection (relative)" -msgstr "" +msgstr "Auswahl relativ ausrichten" -#: gtk2_ardour/editor_ops.cc:2690 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2392 msgid "align selection" -msgstr "Auswahl zu Schleife machen" +msgstr "Auswahl ausrichten" -#: gtk2_ardour/editor_ops.cc:2702 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2404 msgid "align region" -msgstr "Ardour: Region" +msgstr "Region ausrichten" -#: gtk2_ardour/editor_ops.cc:2750 -#: gtk2_ardour/editor_ops.cc:2776 +#: gtk2_ardour/editor_ops.cc:2452 +#: gtk2_ardour/editor_ops.cc:2478 msgid "trim to edit" -msgstr "" +msgstr "Am Editierzeiger abschneiden" -#: gtk2_ardour/editor_ops.cc:2828 +#: gtk2_ardour/editor_ops.cc:2530 msgid "ardour: freeze" msgstr "ardour: Einfrieren" -#: gtk2_ardour/editor_ops.cc:2833 +#: gtk2_ardour/editor_ops.cc:2535 msgid "Cancel Freeze" msgstr "Einfrieren abbrechen" -#: gtk2_ardour/editor_ops.cc:2876 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2578 msgid "bounce range" -msgstr "Bereich" +msgstr "Bereich Bouncen" -#: gtk2_ardour/editor_ops.cc:2930 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2630 msgid "cut" msgstr "Ausschneiden" -#: gtk2_ardour/editor_ops.cc:2933 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2633 msgid "copy" msgstr "Kopieren" -#: gtk2_ardour/editor_ops.cc:2946 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2646 msgid " objects" -msgstr "Objekt" +msgstr "Objekte" -#: gtk2_ardour/editor_ops.cc:2972 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2672 msgid " range" msgstr "Bereich" -#: gtk2_ardour/editor_ops.cc:3197 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2897 msgid "paste" msgstr "Einfügen" -#: gtk2_ardour/editor_ops.cc:3239 +#: gtk2_ardour/editor_ops.cc:2939 msgid "paste chunk" msgstr "Abschnitt einfügen" -#: gtk2_ardour/editor_ops.cc:3282 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:2982 msgid "duplicate region" -msgstr "Auswahl zu Schleife machen" +msgstr "Region duplizieren" -#: gtk2_ardour/editor_ops.cc:3327 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3027 msgid "duplicate selection" -msgstr "Auswahl zu Schleife machen" +msgstr "Auswahl duplizieren" -#: gtk2_ardour/editor_ops.cc:3383 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3083 msgid "clear playlist" -msgstr "Name für Schnappschuß" +msgstr "Wiedergabeliste zurücksetzen" -#: gtk2_ardour/editor_ops.cc:3413 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3113 msgid "nudge track" -msgstr "Stille einfügen" +msgstr "Spur verschieben" -#: gtk2_ardour/editor_ops.cc:3441 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3141 msgid "" "Do you really want to destroy the last capture?\n" "(This is destructive and cannot be undone)" msgstr "" -"Wollen Sie wirklich die Spur \"%1\" löschen?\n" -"(Kann nicht rückgängig gemacht werden!)" +"Wollen Sie wirklich die letzte Aufnahme rückgängig machen?\n" +"(Dies kann nicht rückgängig gemacht werden!)" -#: gtk2_ardour/editor_ops.cc:3469 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3169 msgid "normalize" -msgstr "Ardour: Region" +msgstr "Normalisieren" -#: gtk2_ardour/editor_ops.cc:3522 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3222 msgid "reverse regions" -msgstr "Name für Region:" +msgstr "Regionen umkehren" -#: gtk2_ardour/editor_ops.cc:3635 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3335 msgid "reset region gain" -msgstr "Name für Region:" +msgstr "Lautstärkekurve zurücksetzen" -#: gtk2_ardour/editor_ops.cc:3724 +#: gtk2_ardour/editor_ops.cc:3424 msgid "set fade in shape" -msgstr "" +msgstr "Fade-In Kurve bearbeiten" -#: gtk2_ardour/editor_ops.cc:3748 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3448 msgid "set fade out shape" -msgstr "Ardour: Editor" +msgstr "Fade-Out Kurve ändern" -#: gtk2_ardour/editor_ops.cc:3772 +#: gtk2_ardour/editor_ops.cc:3472 msgid "set fade in active" -msgstr "" +msgstr "Fade-In aktivieren" -#: gtk2_ardour/editor_ops.cc:3796 +#: gtk2_ardour/editor_ops.cc:3496 msgid "set fade out active" -msgstr "" +msgstr "Fade-Out aktivieren" -#: gtk2_ardour/editor_region_list.cc:104 -#: gtk2_ardour/editor_region_list.cc:110 +#: gtk2_ardour/editor_region_list.cc:107 #: gtk2_ardour/editor_region_list.cc:113 -#: gtk2_ardour/location_ui.cc:57 +#: gtk2_ardour/editor_region_list.cc:116 +#: gtk2_ardour/location_ui.cc:56 msgid "Hidden" msgstr "Versteckt" -#: gtk2_ardour/editor_route_list.cc:100 +#: gtk2_ardour/editor_region_list.cc:162 +msgid " (MISSING)" +msgstr "(FEHLT)" + #: gtk2_ardour/editor_route_list.cc:101 -#: gtk2_ardour/editor_route_list.cc:250 +#: gtk2_ardour/editor_route_list.cc:102 +#: gtk2_ardour/editor_route_list.cc:252 msgid "editor" -msgstr "" +msgstr "Editor" -#: gtk2_ardour/editor_route_list.cc:317 -#: gtk2_ardour/mixer_ui.cc:714 +#: gtk2_ardour/editor_route_list.cc:321 +#: gtk2_ardour/mixer_ui.cc:717 msgid "Show All" msgstr "Alles zeigen" -#: gtk2_ardour/editor_route_list.cc:318 -#: gtk2_ardour/mixer_ui.cc:715 +#: gtk2_ardour/editor_route_list.cc:322 +#: gtk2_ardour/mixer_ui.cc:718 msgid "Hide All" msgstr "Alle verbergen" -#: gtk2_ardour/editor_route_list.cc:319 -#: gtk2_ardour/mixer_ui.cc:716 +#: gtk2_ardour/editor_route_list.cc:323 +#: gtk2_ardour/mixer_ui.cc:719 msgid "Show All Audio Tracks" msgstr "Zeige alle Audio-Spuren" -#: gtk2_ardour/editor_route_list.cc:320 -#: gtk2_ardour/mixer_ui.cc:717 +#: gtk2_ardour/editor_route_list.cc:324 +#: gtk2_ardour/mixer_ui.cc:720 msgid "Hide All Audio Tracks" msgstr "Verberge alle Audio-Spuren" -#: gtk2_ardour/editor_route_list.cc:321 -#: gtk2_ardour/mixer_ui.cc:718 +#: gtk2_ardour/editor_route_list.cc:325 +#: gtk2_ardour/mixer_ui.cc:721 msgid "Show All Audio Busses" msgstr "Zeige alle Audio-Busse" -#: gtk2_ardour/editor_route_list.cc:322 -#: gtk2_ardour/mixer_ui.cc:719 +#: gtk2_ardour/editor_route_list.cc:326 +#: gtk2_ardour/mixer_ui.cc:722 msgid "Hide All Audio Busses" msgstr "Verberge alle Audio-Busse" -#: gtk2_ardour/editor_rulers.cc:338 +#: gtk2_ardour/editor_rulers.cc:337 msgid "New location marker" msgstr "Neuer Positionsmarker" -#: gtk2_ardour/editor_rulers.cc:339 +#: gtk2_ardour/editor_rulers.cc:338 msgid "Clear all locations" msgstr "Alle Positionsmarker entfernen" -#: gtk2_ardour/editor_rulers.cc:340 -#, fuzzy +#: gtk2_ardour/editor_rulers.cc:339 msgid "Unhide locations" -msgstr "Verbindungen entfernen" +msgstr "Positionen anzeigen" -#: gtk2_ardour/editor_rulers.cc:345 +#: gtk2_ardour/editor_rulers.cc:344 msgid "Clear all ranges" msgstr "Alle Bereiche entfernen" -#: gtk2_ardour/editor_rulers.cc:346 -#, fuzzy +#: gtk2_ardour/editor_rulers.cc:345 msgid "Unhide ranges" -msgstr "Bereich verbergen" +msgstr "Bereiche anzeigen" -#: gtk2_ardour/editor_rulers.cc:355 +#: gtk2_ardour/editor_rulers.cc:354 msgid "New Tempo" msgstr "Tempowechsel einfügen..." -#: gtk2_ardour/editor_rulers.cc:356 +#: gtk2_ardour/editor_rulers.cc:355 msgid "Clear tempo" msgstr "Tempo zurücksetzen" -#: gtk2_ardour/editor_rulers.cc:361 +#: gtk2_ardour/editor_rulers.cc:360 msgid "New Meter" msgstr "Taktwechsel einfügen..." -#: gtk2_ardour/editor_rulers.cc:362 +#: gtk2_ardour/editor_rulers.cc:361 msgid "Clear meter" msgstr "Taktart zurücksetzen" -#: gtk2_ardour/editor_rulers.cc:370 -#, fuzzy +#: gtk2_ardour/editor_rulers.cc:369 msgid "Min:Secs" msgstr "Min:Sek" +#: gtk2_ardour/editor_selection.cc:564 +#: gtk2_ardour/editor_selection.cc:613 +msgid "set selected regions" +msgstr "Regionen auswählen" + +#: gtk2_ardour/editor_selection.cc:810 +msgid "select all within" +msgstr "Alle im Bereich auswählen" + +#: gtk2_ardour/editor_selection.cc:840 +msgid "set selection from region" +msgstr "Auswahl von Region wählen" + +#: gtk2_ardour/editor_selection.cc:873 +msgid "set selection from range" +msgstr "Auswahl von Bereich wählen" + +#: gtk2_ardour/editor_selection.cc:903 +msgid "select all from range" +msgstr "Alle im Bereich auswählen" + +#: gtk2_ardour/editor_selection.cc:925 +msgid "select all from punch" +msgstr "Alle im Punch-Bereich auswählen" + +#: gtk2_ardour/editor_selection.cc:947 +msgid "select all from loop" +msgstr "Alle im Loop-Bereich auswählen" + +#: gtk2_ardour/editor_selection.cc:961 +msgid "select all after cursor" +msgstr "Alle nach Positionszeiger auswählen" + +#: gtk2_ardour/editor_selection.cc:966 +msgid "select all before cursor" +msgstr "Alle vor Positionszeiger auswählen" + +#: gtk2_ardour/editor_selection.cc:996 +msgid "select all between cursors" +msgstr "Alle zwischen den Zeigern auswählen" + #: gtk2_ardour/editor_selection_list.cc:180 msgid "Name for Chunk:" msgstr "Name für Abschnitt:" @@ -4371,621 +4445,564 @@ msgstr "Abbrechen" #: gtk2_ardour/editor_selection_list.cc:206 msgid "No selectable material found in the currently selected time range" -msgstr "" +msgstr "Konnte im ausgewählten Bereich kein auswählbares Material finden" -#: gtk2_ardour/editor_tempodisplay.cc:272 -#: gtk2_ardour/editor_tempodisplay.cc:315 -#, fuzzy +#: gtk2_ardour/editor_tempodisplay.cc:280 +#: gtk2_ardour/editor_tempodisplay.cc:323 msgid "add" msgstr "Hinzufügen" -#: gtk2_ardour/editor_tempodisplay.cc:294 -#, fuzzy +#: gtk2_ardour/editor_tempodisplay.cc:302 msgid "add tempo mark" -msgstr "Ardour: Region umbenennen" +msgstr "Tempowechsel einfügen" -#: gtk2_ardour/editor_tempodisplay.cc:337 -#, fuzzy +#: gtk2_ardour/editor_tempodisplay.cc:345 msgid "add meter mark" -msgstr "Ardour: Region umbenennen" +msgstr "Taktwechsel einfügen" -#: gtk2_ardour/editor_tempodisplay.cc:372 -#: gtk2_ardour/editor_tempodisplay.cc:403 -#, fuzzy +#: gtk2_ardour/editor_tempodisplay.cc:380 +#: gtk2_ardour/editor_tempodisplay.cc:411 msgid "done" -msgstr "keine" +msgstr "Fertig" -#: gtk2_ardour/editor_tempodisplay.cc:390 -#: gtk2_ardour/editor_tempodisplay.cc:421 +#: gtk2_ardour/editor_tempodisplay.cc:398 +#: gtk2_ardour/editor_tempodisplay.cc:429 msgid "replace tempo mark" -msgstr "" +msgstr "Tempowechsel ersetzen" -#: gtk2_ardour/editor_tempodisplay.cc:463 -#: gtk2_ardour/editor_tempodisplay.cc:497 +#: gtk2_ardour/editor_tempodisplay.cc:471 +#: gtk2_ardour/editor_tempodisplay.cc:505 msgid "programming error: marker for meter is not a meter marker!" -msgstr "" +msgstr "Programmierfehler: marker for meter is not a meter marker!" -#: gtk2_ardour/editor_tempodisplay.cc:473 -#: gtk2_ardour/editor_tempodisplay.cc:509 +#: gtk2_ardour/editor_tempodisplay.cc:481 +#: gtk2_ardour/editor_tempodisplay.cc:517 msgid "remove tempo mark" msgstr "Tempowechsel entfernen" -#: gtk2_ardour/editor_timefx.cc:52 +#: gtk2_ardour/editor_timefx.cc:51 msgid "Quick but Ugly" -msgstr "" +msgstr "Quick but Ugly" -#: gtk2_ardour/editor_timefx.cc:53 +#: gtk2_ardour/editor_timefx.cc:52 msgid "Skip Anti-aliasing" -msgstr "" +msgstr "Ãœberspringe Anti-Aliasing" -#: gtk2_ardour/editor_timefx.cc:57 +#: gtk2_ardour/editor_timefx.cc:56 msgid "ardour: timestretch" msgstr "ardour: Time-Stretch" -#: gtk2_ardour/editor_timefx.cc:58 +#: gtk2_ardour/editor_timefx.cc:57 msgid "TimeStretchDialog" msgstr "" -#: gtk2_ardour/editor_timefx.cc:71 +#: gtk2_ardour/editor_timefx.cc:70 msgid "Stretch/Shrink it" -msgstr "" +msgstr "Time-Stretch ausführen" +#: gtk2_ardour/editor_timefx.cc:73 #: gtk2_ardour/editor_timefx.cc:74 -#: gtk2_ardour/editor_timefx.cc:75 msgid "TimeStretchButton" msgstr "" -#: gtk2_ardour/editor_timefx.cc:76 +#: gtk2_ardour/editor_timefx.cc:75 msgid "TimeStretchProgress" msgstr "" -#: gtk2_ardour/editor_timefx.cc:140 +#: gtk2_ardour/editor_timefx.cc:139 msgid "timestretch cannot be started - thread creation error" +msgstr "Time-Stretch konnte nicht gestartet werden - Fehler beim erstellen des Threads" + +#: gtk2_ardour/export_dialog.cc:56 +#: gtk2_ardour/export_dialog.cc:395 +#: gtk2_ardour/export_dialog.cc:1023 +#: gtk2_ardour/export_dialog.cc:1191 +msgid "22.05kHz" msgstr "" #: gtk2_ardour/export_dialog.cc:57 -#: gtk2_ardour/export_dialog.cc:397 +#: gtk2_ardour/export_dialog.cc:398 +#: gtk2_ardour/export_dialog.cc:413 #: gtk2_ardour/export_dialog.cc:1025 #: gtk2_ardour/export_dialog.cc:1193 -msgid "22.05kHz" +msgid "44.1kHz" msgstr "" #: gtk2_ardour/export_dialog.cc:58 -#: gtk2_ardour/export_dialog.cc:400 -#: gtk2_ardour/export_dialog.cc:415 +#: gtk2_ardour/export_dialog.cc:401 #: gtk2_ardour/export_dialog.cc:1027 #: gtk2_ardour/export_dialog.cc:1195 -msgid "44.1kHz" -msgstr "" +msgid "48kHz" +msgstr "4" #: gtk2_ardour/export_dialog.cc:59 -#: gtk2_ardour/export_dialog.cc:403 +#: gtk2_ardour/export_dialog.cc:404 #: gtk2_ardour/export_dialog.cc:1029 #: gtk2_ardour/export_dialog.cc:1197 -msgid "48kHz" +msgid "88.2kHz" msgstr "" #: gtk2_ardour/export_dialog.cc:60 -#: gtk2_ardour/export_dialog.cc:406 +#: gtk2_ardour/export_dialog.cc:407 #: gtk2_ardour/export_dialog.cc:1031 #: gtk2_ardour/export_dialog.cc:1199 -msgid "88.2kHz" +msgid "96kHz" msgstr "" #: gtk2_ardour/export_dialog.cc:61 -#: gtk2_ardour/export_dialog.cc:409 +#: gtk2_ardour/export_dialog.cc:410 #: gtk2_ardour/export_dialog.cc:1033 #: gtk2_ardour/export_dialog.cc:1201 -msgid "96kHz" -msgstr "" - -#: gtk2_ardour/export_dialog.cc:62 -#: gtk2_ardour/export_dialog.cc:412 -#: gtk2_ardour/export_dialog.cc:1035 -#: gtk2_ardour/export_dialog.cc:1203 msgid "192kHz" msgstr "" -#: gtk2_ardour/export_dialog.cc:67 +#: gtk2_ardour/export_dialog.cc:66 msgid "best" msgstr "bestmöglich" -#: gtk2_ardour/export_dialog.cc:68 -#: gtk2_ardour/export_dialog.cc:1210 +#: gtk2_ardour/export_dialog.cc:67 +#: gtk2_ardour/export_dialog.cc:1208 msgid "fastest" msgstr "schnellstmöglich" -#: gtk2_ardour/export_dialog.cc:69 -#: gtk2_ardour/export_dialog.cc:1212 +#: gtk2_ardour/export_dialog.cc:68 +#: gtk2_ardour/export_dialog.cc:1210 msgid "linear" -msgstr "" +msgstr "Linear" -#: gtk2_ardour/export_dialog.cc:70 -#: gtk2_ardour/export_dialog.cc:1214 +#: gtk2_ardour/export_dialog.cc:69 +#: gtk2_ardour/export_dialog.cc:1212 msgid "better" msgstr "besser" -#: gtk2_ardour/export_dialog.cc:71 -#: gtk2_ardour/export_dialog.cc:1216 +#: gtk2_ardour/export_dialog.cc:70 +#: gtk2_ardour/export_dialog.cc:1214 msgid "intermediate" msgstr "mittelmäßig" -#: gtk2_ardour/export_dialog.cc:77 -#: gtk2_ardour/export_dialog.cc:1225 +#: gtk2_ardour/export_dialog.cc:76 +#: gtk2_ardour/export_dialog.cc:1223 msgid "Rectangular" msgstr "rechteckig" -#: gtk2_ardour/export_dialog.cc:78 +#: gtk2_ardour/export_dialog.cc:77 msgid "Shaped Noise" -msgstr "" +msgstr "Shaped Noise" -#: gtk2_ardour/export_dialog.cc:79 -#: gtk2_ardour/export_dialog.cc:1227 +#: gtk2_ardour/export_dialog.cc:78 +#: gtk2_ardour/export_dialog.cc:1225 msgid "Triangular" msgstr "dreieckig" -#: gtk2_ardour/export_dialog.cc:85 -#: gtk2_ardour/export_dialog.cc:484 -#: gtk2_ardour/export_dialog.cc:1053 -#: gtk2_ardour/export_dialog.cc:1175 +#: gtk2_ardour/export_dialog.cc:84 +#: gtk2_ardour/export_dialog.cc:482 +#: gtk2_ardour/export_dialog.cc:1051 +#: gtk2_ardour/export_dialog.cc:1173 msgid "mono" -msgstr "" +msgstr "Mono" -#: gtk2_ardour/export_dialog.cc:91 +#: gtk2_ardour/export_dialog.cc:90 msgid "CUE" -msgstr "" +msgstr "CUE" -#: gtk2_ardour/export_dialog.cc:92 +#: gtk2_ardour/export_dialog.cc:91 msgid "TOC" -msgstr "" +msgstr "TOC" -#: gtk2_ardour/export_dialog.cc:100 +#: gtk2_ardour/export_dialog.cc:99 msgid "Format" msgstr "Format" -#: gtk2_ardour/export_dialog.cc:101 +#: gtk2_ardour/export_dialog.cc:100 msgid "CD Marker File Type" msgstr "CD-Marker" -#: gtk2_ardour/export_dialog.cc:102 +#: gtk2_ardour/export_dialog.cc:101 msgid "Channels" msgstr "Kanäle" -#: gtk2_ardour/export_dialog.cc:103 +#: gtk2_ardour/export_dialog.cc:102 msgid "File Type" msgstr "Dateiformat" -#: gtk2_ardour/export_dialog.cc:104 +#: gtk2_ardour/export_dialog.cc:103 msgid "Sample Format" msgstr "Sampleformat" -#: gtk2_ardour/export_dialog.cc:105 +#: gtk2_ardour/export_dialog.cc:104 msgid "Sample Endianness" msgstr "Bytefolge" -#: gtk2_ardour/export_dialog.cc:106 +#: gtk2_ardour/export_dialog.cc:105 msgid "Sample Rate" msgstr "Samplerate" -#: gtk2_ardour/export_dialog.cc:107 +#: gtk2_ardour/export_dialog.cc:106 msgid "Conversion Quality" msgstr "Qualität" -#: gtk2_ardour/export_dialog.cc:108 +#: gtk2_ardour/export_dialog.cc:107 msgid "Dither Type" msgstr "Dithering" -#: gtk2_ardour/export_dialog.cc:109 +#: gtk2_ardour/export_dialog.cc:108 msgid "Export CD Marker File Only" msgstr "Nur CD-Marker exportieren" -#: gtk2_ardour/export_dialog.cc:110 -msgid "Export to File" -msgstr "Als Audiodatei exportieren" - -#: gtk2_ardour/export_dialog.cc:111 -#: gtk2_ardour/option_editor.cc:80 -#: gtk2_ardour/option_editor.cc:81 +#: gtk2_ardour/export_dialog.cc:109 +#: gtk2_ardour/option_editor.cc:83 +#: gtk2_ardour/option_editor.cc:84 msgid "Browse" msgstr "Durchsuchen" -#: gtk2_ardour/export_dialog.cc:112 +#: gtk2_ardour/export_dialog.cc:110 msgid "Specific tracks ..." msgstr "Alle Spuren..." -#: gtk2_ardour/export_dialog.cc:123 +#: gtk2_ardour/export_dialog.cc:121 msgid "ardour: export" msgstr "ardour: Exportieren" -#: gtk2_ardour/export_dialog.cc:137 -#: gtk2_ardour/export_dialog.cc:153 -#: gtk2_ardour/mixer_strip.cc:123 -#: gtk2_ardour/mixer_strip.cc:746 +#: gtk2_ardour/export_dialog.cc:135 +#: gtk2_ardour/export_dialog.cc:151 +#: gtk2_ardour/mixer_strip.cc:124 +#: gtk2_ardour/mixer_strip.cc:739 msgid "Output" msgstr "Ausgang" -#: gtk2_ardour/export_dialog.cc:631 +#: gtk2_ardour/export_dialog.cc:629 msgid "Editor: cannot open \"%1\" as export file for CD toc file" msgstr "Editor: Kann \"%1\" nicht nicht zum Export für CD-Inhaltsverzeichnis (TOC) öffnen." -#: gtk2_ardour/export_dialog.cc:757 +#: gtk2_ardour/export_dialog.cc:755 msgid "Editor: cannot open \"%1\" as export file for CD cue file" msgstr "Editor: Kann \"%1\" nicht zum Export für CD CUE-Datei öffnen." -#: gtk2_ardour/export_dialog.cc:776 +#: gtk2_ardour/export_dialog.cc:774 msgid "WAV" -msgstr "" +msgstr "WAV" -#: gtk2_ardour/export_dialog.cc:910 +#: gtk2_ardour/export_dialog.cc:908 msgid "Stop Export" msgstr "Export Abbrechen" -#: gtk2_ardour/export_dialog.cc:1129 +#: gtk2_ardour/export_dialog.cc:1127 msgid "Please enter a valid filename." msgstr "Bitte geben Sie einen gültigen Dateinamen ein." -#: gtk2_ardour/export_dialog.cc:1139 +#: gtk2_ardour/export_dialog.cc:1137 msgid "Please specify a complete filename for the audio file." msgstr "Bitte geben Sie einen kompletten Dateinamen für die Audiodatei ein." -#: gtk2_ardour/export_dialog.cc:1145 +#: gtk2_ardour/export_dialog.cc:1143 msgid "File already exists, do you want to overwrite it?" msgstr "Datei existiert bereits, wollen Sie sie überschreiben?" -#: gtk2_ardour/export_dialog.cc:1157 -#: gtk2_ardour/export_range_markers_dialog.cc:153 +#: gtk2_ardour/export_dialog.cc:1155 +#: gtk2_ardour/export_range_markers_dialog.cc:160 msgid "Cannot write file in: " msgstr "Konnte Datei nicht in Verzeichnis schreiben:" -#: gtk2_ardour/export_range_markers_dialog.cc:135 +#: gtk2_ardour/export_session_dialog.cc:29 +#: gtk2_ardour/export_region_dialog.cc:35 +msgid "Export to File" +msgstr "Als Audiodatei exportieren" + +#: gtk2_ardour/export_region_dialog.cc:34 +msgid "ardour: export region" +msgstr "ardour: Region Exportieren" + +#: gtk2_ardour/export_range_markers_dialog.cc:41 +msgid "ardour: export ranges" +msgstr "ardour: Bereiche Exportieren" + +#: gtk2_ardour/export_range_markers_dialog.cc:42 +msgid "Export to Directory" +msgstr "In Verzeichnis exportieren" + +#: gtk2_ardour/export_range_markers_dialog.cc:143 msgid "Please enter a valid target directory." msgstr "Bitte geben Sie ein gültiges Zielverzeichis an." -#: gtk2_ardour/export_range_markers_dialog.cc:143 -msgid "" -"Please select an existing target directory. Files\n" -"are not allowed!" +#: gtk2_ardour/export_range_markers_dialog.cc:151 +msgid "Please select an existing target directory. Files are not allowed!" msgstr "" "Bitte wählen Sie ein vorhandenes Zielverzeichnis aus.\n" "Dateien sind nicht möglich." -#: gtk2_ardour/gain_automation_time_axis.cc:65 -#, fuzzy +#: gtk2_ardour/gain_automation_time_axis.cc:64 msgid "add gain automation event" -msgstr "Stellen" +msgstr "Punkt in die Lautstärkekurve einfügen" -#: gtk2_ardour/gain_meter.cc:113 -#: gtk2_ardour/gain_meter.cc:331 -#: gtk2_ardour/gain_meter.cc:512 -#: gtk2_ardour/gain_meter.cc:583 +#: gtk2_ardour/gain_meter.cc:112 +#: gtk2_ardour/gain_meter.cc:330 +#: gtk2_ardour/gain_meter.cc:519 +#: gtk2_ardour/gain_meter.cc:590 msgid "-inf" -msgstr "" +msgstr "-inf" -#: gtk2_ardour/gain_meter.cc:124 +#: gtk2_ardour/gain_meter.cc:123 msgid "Fader automation mode" msgstr "Fader Automationsmodus" -#: gtk2_ardour/gain_meter.cc:125 -#, fuzzy +#: gtk2_ardour/gain_meter.cc:124 msgid "Fader automation type" -msgstr "Stellen" +msgstr "Fader-Automationstyp" -#: gtk2_ardour/gain_meter.cc:170 -#: gtk2_ardour/gain_meter.cc:877 -#: gtk2_ardour/panner_ui.cc:99 -#: gtk2_ardour/panner_ui.cc:810 +#: gtk2_ardour/gain_meter.cc:169 +#: gtk2_ardour/gain_meter.cc:884 +#: gtk2_ardour/panner_ui.cc:98 +#: gtk2_ardour/panner_ui.cc:784 msgid "Abs" -msgstr "" +msgstr "Abs" -#: gtk2_ardour/gain_meter.cc:490 +#: gtk2_ardour/gain_meter.cc:497 msgid "-Inf" -msgstr "" +msgstr "-Inf" -#: gtk2_ardour/gain_meter.cc:693 -#: gtk2_ardour/gain_meter.cc:708 -#, fuzzy +#: gtk2_ardour/gain_meter.cc:700 +#: gtk2_ardour/gain_meter.cc:715 msgid "meter point change" -msgstr "Bereich" +msgstr "Taktwechsel ändern" -#: gtk2_ardour/gain_meter.cc:841 -#: gtk2_ardour/mixer_strip.cc:749 -#: gtk2_ardour/panner_ui.cc:774 -#, fuzzy -msgid "O" -msgstr "ODER" +#: gtk2_ardour/gain_meter.cc:848 +#: gtk2_ardour/mixer_strip.cc:449 +#: gtk2_ardour/panner_ui.cc:748 +msgid "M" +msgstr "M" -#: gtk2_ardour/gain_meter.cc:844 -#: gtk2_ardour/panner_ui.cc:777 +#: gtk2_ardour/gain_meter.cc:851 +#: gtk2_ardour/panner_ui.cc:751 msgid "P" -msgstr "" +msgstr "P" -#: gtk2_ardour/gain_meter.cc:847 -#: gtk2_ardour/panner_ui.cc:780 +#: gtk2_ardour/gain_meter.cc:854 +#: gtk2_ardour/panner_ui.cc:754 msgid "T" -msgstr "" +msgstr "T" -#: gtk2_ardour/gain_meter.cc:850 -#: gtk2_ardour/panner_ui.cc:783 +#: gtk2_ardour/gain_meter.cc:857 +#: gtk2_ardour/panner_ui.cc:757 msgid "W" -msgstr "" +msgstr "W" #: gtk2_ardour/gtk-custom-ruler.c:126 -#, fuzzy msgid "Lower" -msgstr "Schicht" +msgstr "Untergrenze" #: gtk2_ardour/gtk-custom-ruler.c:127 -#, fuzzy msgid "Lower limit of ruler" -msgstr "Region ganz nach unten" +msgstr "Untere Grenze des Lineals" #: gtk2_ardour/gtk-custom-ruler.c:136 msgid "Upper" -msgstr "" +msgstr "Obergrenze" #: gtk2_ardour/gtk-custom-ruler.c:137 msgid "Upper limit of ruler" -msgstr "" +msgstr "Obere Grenze für das Lineal" #: gtk2_ardour/gtk-custom-ruler.c:146 -#, fuzzy msgid "Position" -msgstr "Stellen" +msgstr "Position" #: gtk2_ardour/gtk-custom-ruler.c:147 msgid "Position of mark on the ruler" -msgstr "" +msgstr "Position der Markierung auf dem Lineal" #: gtk2_ardour/gtk-custom-ruler.c:156 msgid "Max Size" -msgstr "" +msgstr "Maximale Größe" #: gtk2_ardour/gtk-custom-ruler.c:157 msgid "Maximum size of the ruler" -msgstr "" +msgstr "Minimal Größe des Lineals" #: gtk2_ardour/gtk-custom-ruler.c:166 -#, fuzzy msgid "Show Position" -msgstr "nach Zeitstempel der Region" +msgstr "Zeige Position" #: gtk2_ardour/gtk-custom-ruler.c:167 msgid "Draw current ruler position" -msgstr "" +msgstr "Zeige aktuelle Position des Lineals" -#: gtk2_ardour/imageframe_socket_handler.cc:127 +#: gtk2_ardour/imageframe_socket_handler.cc:126 msgid "Image Compositor Socket has been shutdown/closed" msgstr "" -#: gtk2_ardour/imageframe_time_axis.cc:286 -#, fuzzy +#: gtk2_ardour/imageframe_time_axis.cc:285 msgid "0.5 seconds" -msgstr "Minuten:Sekunden" +msgstr "0,5 Sekunden" + +#: gtk2_ardour/imageframe_time_axis.cc:286 +#: gtk2_ardour/marker_time_axis.cc:241 +msgid "1 seconds" +msgstr "1 Sekunde" #: gtk2_ardour/imageframe_time_axis.cc:287 #: gtk2_ardour/marker_time_axis.cc:242 -#, fuzzy -msgid "1 seconds" -msgstr "Minuten:Sekunden" +msgid "1.5 seconds" +msgstr "1,5 Sekunden" #: gtk2_ardour/imageframe_time_axis.cc:288 #: gtk2_ardour/marker_time_axis.cc:243 -#, fuzzy -msgid "1.5 seconds" -msgstr "Minuten:Sekunden" +msgid "2 seconds" +msgstr "2 Sekunden" #: gtk2_ardour/imageframe_time_axis.cc:289 #: gtk2_ardour/marker_time_axis.cc:244 -#, fuzzy -msgid "2 seconds" -msgstr "Minuten:Sekunden" +msgid "2.5 seconds" +msgstr "2,5 Sekunden" #: gtk2_ardour/imageframe_time_axis.cc:290 #: gtk2_ardour/marker_time_axis.cc:245 -#, fuzzy -msgid "2.5 seconds" -msgstr "Minuten:Sekunden" - -#: gtk2_ardour/imageframe_time_axis.cc:291 -#: gtk2_ardour/marker_time_axis.cc:246 -#, fuzzy msgid "3 seconds" -msgstr "Minuten:Sekunden" +msgstr "3 Sekunden" -#: gtk2_ardour/imageframe_time_axis.cc:296 -#: gtk2_ardour/marker_time_axis.cc:251 -#, fuzzy +#: gtk2_ardour/imageframe_time_axis.cc:295 +#: gtk2_ardour/marker_time_axis.cc:250 msgid "Duration (sec)" -msgstr "Ardour: Region" +msgstr "Dauer (Sek)" -#: gtk2_ardour/imageframe_time_axis.cc:301 -#, fuzzy +#: gtk2_ardour/imageframe_time_axis.cc:300 msgid "Remove Frame" -msgstr "Feld entfernen" +msgstr "Frame löschen" -#: gtk2_ardour/imageframe_time_axis.cc:304 +#: gtk2_ardour/imageframe_time_axis.cc:303 msgid "Image Frame" msgstr "" -#: gtk2_ardour/imageframe_time_axis.cc:305 -#: gtk2_ardour/marker_time_axis.cc:257 -#, fuzzy +#: gtk2_ardour/imageframe_time_axis.cc:304 +#: gtk2_ardour/marker_time_axis.cc:256 msgid "Rename Track" -msgstr "Umbenennen" +msgstr "Spur umbenennen" -#: gtk2_ardour/io_selector.cc:62 -#: gtk2_ardour/io_selector.cc:750 -#: gtk2_ardour/connection_editor.cc:61 -#: gtk2_ardour/connection_editor.cc:110 +#: gtk2_ardour/io_selector.cc:61 +#: gtk2_ardour/io_selector.cc:749 +#: gtk2_ardour/connection_editor.cc:60 +#: gtk2_ardour/connection_editor.cc:109 msgid "Rescan" msgstr "Auffrischen" -#: gtk2_ardour/io_selector.cc:70 +#: gtk2_ardour/io_selector.cc:69 msgid "%1 input" msgstr "%1 Eingang" -#: gtk2_ardour/io_selector.cc:72 +#: gtk2_ardour/io_selector.cc:71 msgid "%1 output" msgstr "%1 Ausgang" -#: gtk2_ardour/io_selector.cc:144 -#: gtk2_ardour/route_params_ui.cc:103 +#: gtk2_ardour/io_selector.cc:143 +#: gtk2_ardour/route_params_ui.cc:101 msgid "Inputs" msgstr "Eingänge" -#: gtk2_ardour/io_selector.cc:144 -#: gtk2_ardour/route_params_ui.cc:104 +#: gtk2_ardour/io_selector.cc:143 +#: gtk2_ardour/route_params_ui.cc:102 msgid "Outputs" msgstr "Ausgänge" -#: gtk2_ardour/io_selector.cc:145 +#: gtk2_ardour/io_selector.cc:144 msgid "Add Input" msgstr "Hinzufügen" -#: gtk2_ardour/io_selector.cc:145 +#: gtk2_ardour/io_selector.cc:144 msgid "Add Output" msgstr "Hinzufügen" -#: gtk2_ardour/io_selector.cc:146 +#: gtk2_ardour/io_selector.cc:145 msgid "Remove Input" msgstr "Entfernen" -#: gtk2_ardour/io_selector.cc:146 +#: gtk2_ardour/io_selector.cc:145 msgid "Remove Output" msgstr "Entfernen" -#: gtk2_ardour/io_selector.cc:147 +#: gtk2_ardour/io_selector.cc:146 msgid "Disconnect All" msgstr "Alle trennen" -#: gtk2_ardour/io_selector.cc:161 +#: gtk2_ardour/io_selector.cc:160 msgid "Available connections" msgstr "Verfügbare Verbindungen" -#: gtk2_ardour/io_selector.cc:549 -#: gtk2_ardour/io_selector.cc:560 +#: gtk2_ardour/io_selector.cc:548 +#: gtk2_ardour/io_selector.cc:559 msgid "There are no more JACK ports available." msgstr "Es sind keine weiteren JACK Ports verfügbar." -#: gtk2_ardour/io_selector.cc:754 +#: gtk2_ardour/io_selector.cc:753 msgid "ardour: " msgstr "ardour: " -#: gtk2_ardour/keyboard.cc:299 -msgid "KeyboardTarget: keyname \"%1\" is unknown." -msgstr "" - -#: gtk2_ardour/keyboard.cc:525 -msgid "Your system is completely broken - NumLock uses \"%1\"as its modifier. This is madness - see the man page for xmodmap to find out how to fix this." -msgstr "Ihr System ist falsch konfiguriert. Die NumLock-Taste nutzt \"%1\" als Modifier. Das wird schwere Probleme bereiten. Auf der man page von xmodmap finden sich Infirmationen, wie dieses Problem behoben werden kann." - -#: gtk2_ardour/keyboard.cc:533 -msgid "Your system generates \"%1\" when the NumLock key is pressed. This can cause problems when editing so Ardour will use %2 to mean Meta rather than %1" -msgstr "Ihr System generiert \"%1\" wenn NumLock gedrückt wird. Dies kann zu Problemen führen. ardour wird deshalb als Meta-Taste %2 an Stelle von %1 benutzen." - -#: gtk2_ardour/keyboard.cc:594 -msgid "You have %1 keys bound to \"mod1\"" -msgstr "" - -#: gtk2_ardour/keyboard.cc:609 -msgid "You have %1 keys bound to \"mod2\"" -msgstr "" - -#: gtk2_ardour/keyboard.cc:624 -msgid "You have %1 keys bound to \"mod3\"" -msgstr "" - -#: gtk2_ardour/keyboard.cc:639 -msgid "You have %1 keys bound to \"mod4\"" -msgstr "" - -#: gtk2_ardour/keyboard.cc:654 -msgid "You have %1 keys bound to \"mod5\"" -msgstr "" - #: gtk2_ardour/ladspa_pluginui.cc:77 msgid "<span size=\"large\">Presets</span>" -msgstr "" +msgstr "<span size=\"large\">Voreinstellungen</span>" #: gtk2_ardour/ladspa_pluginui.cc:205 msgid "Plugin Editor: could not build control element for port %1" -msgstr "" +msgstr "Plugin Editor: konnte kein Steuerelement für Port %1 erzeugen" -#: gtk2_ardour/ladspa_pluginui.cc:296 -#, fuzzy +#: gtk2_ardour/ladspa_pluginui.cc:295 msgid "Automation control" -msgstr "Stellen" +msgstr "Automation" -#: gtk2_ardour/location_ui.cc:49 -#: gtk2_ardour/location_ui.cc:52 +#: gtk2_ardour/ladspa_pluginui.cc:302 +#, fuzzy +msgid "Mgnual" +msgstr "Manuell" + +#: gtk2_ardour/location_ui.cc:48 +#: gtk2_ardour/location_ui.cc:51 #, fuzzy msgid "Set" msgstr "Auswahl" -#: gtk2_ardour/location_ui.cc:50 -#: gtk2_ardour/location_ui.cc:53 +#: gtk2_ardour/location_ui.cc:49 +#: gtk2_ardour/location_ui.cc:52 +#, fuzzy msgid "Go" -msgstr "" +msgstr "Los" -#: gtk2_ardour/location_ui.cc:56 +#: gtk2_ardour/location_ui.cc:55 msgid "CD" msgstr "CD" -#: gtk2_ardour/location_ui.cc:59 +#: gtk2_ardour/location_ui.cc:58 +#, fuzzy msgid "SCMS" -msgstr "" +msgstr "SCMS" -#: gtk2_ardour/location_ui.cc:60 +#: gtk2_ardour/location_ui.cc:59 +#, fuzzy msgid "Pre-Emphasis" -msgstr "" +msgstr "Pre-Emphasis" -#: gtk2_ardour/location_ui.cc:571 +#: gtk2_ardour/location_ui.cc:570 msgid "Add New Location" msgstr "Neue Position hinzufügen" -#: gtk2_ardour/location_ui.cc:572 +#: gtk2_ardour/location_ui.cc:571 msgid "Add New Range" msgstr "Neuen Bereich hinzufügen" -#: gtk2_ardour/location_ui.cc:576 +#: gtk2_ardour/location_ui.cc:575 msgid "ardour: locations" msgstr "ardour: Positionen" -#: gtk2_ardour/location_ui.cc:605 +#: gtk2_ardour/location_ui.cc:604 msgid "Location (CD Index) Markers" msgstr "Positionsmarker (CD Index)" -#: gtk2_ardour/location_ui.cc:625 +#: gtk2_ardour/location_ui.cc:624 msgid "Range (CD Track) Markers" msgstr "Bereiche (CD Tracks)" -#: gtk2_ardour/location_ui.cc:798 -#, fuzzy +#: gtk2_ardour/location_ui.cc:797 msgid "add range marker" -msgstr "Ardour: Region umbenennen" - -#: gtk2_ardour/main.cc:74 -msgid "ardour is killing itself for a clean exit\n" -msgstr "" - -#: gtk2_ardour/main.cc:100 -#, c-format -msgid "%d(%d): received signal %d\n" -msgstr "" - -#: gtk2_ardour/main.cc:180 -msgid "cannot become new process group leader (%1)" -msgstr "" - -#: gtk2_ardour/main.cc:207 -msgid "cannot setup signal handling for %1" -msgstr "" - -#: gtk2_ardour/main.cc:218 -msgid "cannot set default signal mask (%1)" -msgstr "" +msgstr "Bereich hinzufügen" -#: gtk2_ardour/main.cc:248 +#: gtk2_ardour/main.cc:75 msgid "" "Without a UI style file, ardour will look strange.\n" " Please set ARDOUR2_UI_RC to point to a valid UI style file" @@ -4993,11 +5010,11 @@ msgstr "" "Ohne UI-Definitionsdatei wird ardour merkwürdig aussehen.\n" " Bitte setzen Sie ARDOUR_UI_RC auf eine gültige UI-Definitionsdatei" -#: gtk2_ardour/main.cc:269 +#: gtk2_ardour/main.cc:96 msgid "Ardour could not connect to JACK." msgstr "ardour konnte nicht zu JACK verbinden." -#: gtk2_ardour/main.cc:273 +#: gtk2_ardour/main.cc:100 msgid "" "There are several possible reasons:\n" "\n" @@ -5015,11 +5032,11 @@ msgstr "" "\n" "Betrachten Sie bitte diese Möglichkeiten und starten Sie JACK neu, wenn dies notwendig sein sollte." -#: gtk2_ardour/main.cc:315 +#: gtk2_ardour/main.cc:144 msgid "could not load command line session \"%1\"" msgstr "Konnte das per Kommandozeile übergebene Projekt nicht laden: \"%1\"" -#: gtk2_ardour/main.cc:323 +#: gtk2_ardour/main.cc:152 msgid "" "\n" "\n" @@ -5031,390 +5048,423 @@ msgstr "" "Es existiert kein Projekt mit dem Namen \"%1\".\n" "Um sie von der Kommandozeile aus zu erstellen, starten Sie ardour mit \"ardour --new %1" -#: gtk2_ardour/main.cc:390 +#: gtk2_ardour/main.cc:225 msgid "Ardour/GTK " -msgstr "" +msgstr "Ardour/GTK " -#: gtk2_ardour/main.cc:392 +#: gtk2_ardour/main.cc:227 msgid "" "\n" " (built using " msgstr "" +"\n" +" (kompiliert mit Version " -#: gtk2_ardour/main.cc:395 +#: gtk2_ardour/main.cc:230 msgid " and GCC version " -msgstr "" +msgstr " und GCC Version" -#: gtk2_ardour/main.cc:405 -msgid "Copyright (C) 1999-2006 Paul Davis" -msgstr "" +#: gtk2_ardour/main.cc:240 +msgid "Copyright (C) 1999-2007 Paul Davis" +msgstr "Copyright (C) 1999-2007 Paul Davis" -#: gtk2_ardour/main.cc:406 +#: gtk2_ardour/main.cc:241 msgid "Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker" -msgstr "" +msgstr "Einige Teile Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker" -#: gtk2_ardour/main.cc:408 +#: gtk2_ardour/main.cc:243 msgid "Ardour comes with ABSOLUTELY NO WARRANTY" -msgstr "" +msgstr "Ardour wird Ihnen ohne jegliche Gewährleistung und ausdrücklich ohne die Zusicherung" -#: gtk2_ardour/main.cc:409 +#: gtk2_ardour/main.cc:244 msgid "not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." -msgstr "" +msgstr "für allgemeine oder spezielle Gebrauchstauglichkeit zur Verfügung gestellt." -#: gtk2_ardour/main.cc:410 +#: gtk2_ardour/main.cc:245 msgid "This is free software, and you are welcome to redistribute it " msgstr "Dies ist freie Software und Sie dürfen sie gerne weiterverbreiten," -#: gtk2_ardour/main.cc:411 +#: gtk2_ardour/main.cc:246 msgid "under certain conditions; see the source for copying conditions." msgstr "solange Sie sich an die Bedingungen, die in der Datei COPYING aufgeführt sind halten." -#: gtk2_ardour/main.cc:418 +#: gtk2_ardour/main.cc:257 msgid "could not create ARDOUR GUI" -msgstr "" +msgstr "konnte das grafische Ardour User Interface nicht erstellen" -#: gtk2_ardour/main.cc:442 +#: gtk2_ardour/main.cc:281 msgid "Could not connect to JACK server as \"%1\"" msgstr "Konnte nicht zu JACK Server als \"%1\" verbinden" -#: gtk2_ardour/main.cc:449 +#: gtk2_ardour/main.cc:288 msgid "could not initialize Ardour." msgstr "Konnte ardour nicht initialisieren." -#: gtk2_ardour/marker.cc:244 -#, fuzzy +#: gtk2_ardour/marker.cc:243 msgid "MarkerText" -msgstr "Schicht" +msgstr "" -#: gtk2_ardour/marker_time_axis.cc:254 +#: gtk2_ardour/marker_time_axis.cc:253 msgid "Remove Marker" msgstr "Marker entfernen" -#: gtk2_ardour/marker_time_axis.cc:256 -#, fuzzy +#: gtk2_ardour/marker_time_axis.cc:255 msgid "Marker" -msgstr "Schicht" +msgstr "Marker" -#: gtk2_ardour/mixer_strip.cc:94 -#: gtk2_ardour/mixer_strip.cc:139 -#: gtk2_ardour/mixer_strip.cc:1218 +#: gtk2_ardour/mixer_strip.cc:95 +#: gtk2_ardour/mixer_strip.cc:140 +#: gtk2_ardour/mixer_strip.cc:1211 msgid "pre" -msgstr "pre" +msgstr "Pre" -#: gtk2_ardour/mixer_strip.cc:95 -#: gtk2_ardour/mixer_strip.cc:796 +#: gtk2_ardour/mixer_strip.cc:96 +#: gtk2_ardour/mixer_strip.cc:789 msgid "Comments" msgstr "Kommentare" -#: gtk2_ardour/mixer_strip.cc:118 -#, fuzzy +#: gtk2_ardour/mixer_strip.cc:119 msgid "Input" -msgstr "Eingänge" +msgstr "Eingang" -#: gtk2_ardour/mixer_strip.cc:135 -#: gtk2_ardour/mixer_strip.cc:1214 +#: gtk2_ardour/mixer_strip.cc:136 +#: gtk2_ardour/mixer_strip.cc:1207 msgid "input" -msgstr "input" +msgstr "Input" -#: gtk2_ardour/mixer_strip.cc:143 -#: gtk2_ardour/mixer_strip.cc:1222 +#: gtk2_ardour/mixer_strip.cc:144 +#: gtk2_ardour/mixer_strip.cc:1215 msgid "post" -msgstr "post" +msgstr "Post" -#: gtk2_ardour/mixer_strip.cc:150 +#: gtk2_ardour/mixer_strip.cc:151 msgid "tupni" msgstr "" -#: gtk2_ardour/mixer_strip.cc:204 +#: gtk2_ardour/mixer_strip.cc:199 msgid "Varispeed" -msgstr "" +msgstr "Varispeed" -#: gtk2_ardour/mixer_strip.cc:230 -#: gtk2_ardour/mixer_strip.cc:812 +#: gtk2_ardour/mixer_strip.cc:225 +#: gtk2_ardour/mixer_strip.cc:805 msgid "Click to Add/Edit Comments" msgstr "Kommentare hinzufügen/ändern" -#: gtk2_ardour/mixer_strip.cc:386 +#: gtk2_ardour/mixer_strip.cc:380 msgid "unknown strip width \"%1\" in XML GUI information" -msgstr "" +msgstr "Unbekannte Mixerkanalbreite \"%1\" in der XML GUI Information" -#: gtk2_ardour/mixer_strip.cc:430 +#: gtk2_ardour/mixer_strip.cc:423 msgid "record" msgstr "Aufnahme" -#: gtk2_ardour/mixer_strip.cc:437 +#: gtk2_ardour/mixer_strip.cc:430 msgid "comments" msgstr "Kommentare" -#: gtk2_ardour/mixer_strip.cc:440 +#: gtk2_ardour/mixer_strip.cc:433 msgid "*comments*" -msgstr "" +msgstr "*Kommentare*" -#: gtk2_ardour/mixer_strip.cc:455 -#, fuzzy +#: gtk2_ardour/mixer_strip.cc:447 msgid "Rec" -msgstr "Auffrischen" - -#: gtk2_ardour/mixer_strip.cc:457 -msgid "M" -msgstr "M" +msgstr "Rec" -#: gtk2_ardour/mixer_strip.cc:458 +#: gtk2_ardour/mixer_strip.cc:450 msgid "S" msgstr "S" -#: gtk2_ardour/mixer_strip.cc:462 -#: gtk2_ardour/mixer_strip.cc:806 -#, fuzzy +#: gtk2_ardour/mixer_strip.cc:454 +#: gtk2_ardour/mixer_strip.cc:799 msgid "Cmt" -msgstr "Ausschneiden" +msgstr "Kmt" -#: gtk2_ardour/mixer_strip.cc:465 -#: gtk2_ardour/mixer_strip.cc:803 +#: gtk2_ardour/mixer_strip.cc:457 +#: gtk2_ardour/mixer_strip.cc:796 msgid "*Cmt*" -msgstr "" +msgstr "*Kmt*" -#: gtk2_ardour/mixer_strip.cc:503 -#: gtk2_ardour/mixer_strip.cc:569 -#: gtk2_ardour/redirect_box.cc:1086 +#: gtk2_ardour/mixer_strip.cc:496 +#: gtk2_ardour/mixer_strip.cc:562 +#: gtk2_ardour/redirect_box.cc:1085 msgid "Not connected to JACK - no I/O changes are possible" msgstr "Nicht mit Jack verbunden - es sind keine Änderungen an Ein-/Ausgängen möglich" -#: gtk2_ardour/mixer_strip.cc:603 -#: gtk2_ardour/mixer_strip.cc:619 +#: gtk2_ardour/mixer_strip.cc:596 +#: gtk2_ardour/mixer_strip.cc:612 msgid "could not register new ports required for that connection" msgstr "Konnte die Ports, die diese Verbindung benötigt nicht registrieren" -#: gtk2_ardour/mixer_strip.cc:726 -#, fuzzy +#: gtk2_ardour/mixer_strip.cc:719 msgid " Input" -msgstr "Eingänge" +msgstr "Eingang" -#: gtk2_ardour/mixer_strip.cc:729 +#: gtk2_ardour/mixer_strip.cc:722 msgid "I" -msgstr "" +msgstr "I" -#: gtk2_ardour/mixer_strip.cc:793 +#: gtk2_ardour/mixer_strip.cc:742 +msgid "O" +msgstr "O" + +#: gtk2_ardour/mixer_strip.cc:786 msgid "*Comments*" -msgstr "" +msgstr "*Kommentare*" -#: gtk2_ardour/mixer_strip.cc:848 +#: gtk2_ardour/mixer_strip.cc:841 msgid ": comment editor" msgstr "Kommentare bearbeiten" -#: gtk2_ardour/mixer_strip.cc:943 +#: gtk2_ardour/mixer_strip.cc:936 msgid "Grp" msgstr "Grp" -#: gtk2_ardour/mixer_strip.cc:946 +#: gtk2_ardour/mixer_strip.cc:939 msgid "~G" -msgstr "" +msgstr "~G" -#: gtk2_ardour/mixer_strip.cc:995 +#: gtk2_ardour/mixer_strip.cc:988 msgid "Invert Polarity" msgstr "Polarität umkehren" -#: gtk2_ardour/mixer_ui.cc:83 +#: gtk2_ardour/mixer_ui.cc:81 msgid "Strips" msgstr "Spur" -#: gtk2_ardour/mixer_ui.cc:108 +#: gtk2_ardour/mixer_ui.cc:106 msgid "Group" msgstr "Gruppe" -#: gtk2_ardour/mixer_ui.cc:206 -#: gtk2_ardour/mixer_ui.cc:386 +#: gtk2_ardour/mixer_ui.cc:204 +#: gtk2_ardour/mixer_ui.cc:385 msgid "ardour: mixer" msgstr "ardour: Mixer" -#: gtk2_ardour/mixer_ui.cc:358 +#: gtk2_ardour/mixer_ui.cc:356 msgid "ardour: mixer: " msgstr "ardour: Mixer: " -#: gtk2_ardour/mixer_ui.cc:589 +#: gtk2_ardour/mixer_ui.cc:590 msgid "signal" msgstr "Signal" -#: gtk2_ardour/mixer_ui.cc:738 +#: gtk2_ardour/mixer_ui.cc:741 msgid "track display list item for renamed strip not found!" -msgstr "" +msgstr "Konnte Bezeichnung für umbenannten Mixerkanal nicht in der Spurliste finden!" -#: gtk2_ardour/new_session_dialog.cc:41 -#, fuzzy +#: gtk2_ardour/new_session_dialog.cc:40 msgid "Name :" -msgstr "Umbenennen" +msgstr "Name :" +#: gtk2_ardour/new_session_dialog.cc:44 #: gtk2_ardour/new_session_dialog.cc:45 #: gtk2_ardour/new_session_dialog.cc:46 #: gtk2_ardour/new_session_dialog.cc:47 -#: gtk2_ardour/new_session_dialog.cc:48 msgid "channels" msgstr "Kanäle" -#: gtk2_ardour/new_session_dialog.cc:66 +#: gtk2_ardour/new_session_dialog.cc:65 msgid "<b>Busses</b>" msgstr "<b>Busse</b>" -#: gtk2_ardour/new_session_dialog.cc:67 +#: gtk2_ardour/new_session_dialog.cc:66 msgid "<b>Inputs</b>" msgstr "<b>Eingänge</b>" -#: gtk2_ardour/new_session_dialog.cc:68 +#: gtk2_ardour/new_session_dialog.cc:67 msgid "<b>Outputs</b>" msgstr "<b>Ausgänge</b>" -#: gtk2_ardour/new_session_dialog.cc:70 +#: gtk2_ardour/new_session_dialog.cc:69 msgid "Create Folder In :" msgstr "Verzeichnis erstellen in:" -#: gtk2_ardour/new_session_dialog.cc:72 +#: gtk2_ardour/new_session_dialog.cc:71 msgid "Template :" msgstr "Vorlage :" -#: gtk2_ardour/new_session_dialog.cc:74 +#: gtk2_ardour/new_session_dialog.cc:73 msgid "Create Monitor Bus" msgstr "Monitor Bus erstellen" -#: gtk2_ardour/new_session_dialog.cc:81 +#: gtk2_ardour/new_session_dialog.cc:80 msgid "Create Master Bus" msgstr "Master Bus erstellen" -#: gtk2_ardour/new_session_dialog.cc:83 +#: gtk2_ardour/new_session_dialog.cc:82 msgid "Automatically Connect to Physical Inputs" msgstr "Eingänge automatisch mit Soundkarteneingängen verbinden" -#: gtk2_ardour/new_session_dialog.cc:84 -#: gtk2_ardour/new_session_dialog.cc:97 +#: gtk2_ardour/new_session_dialog.cc:83 +#: gtk2_ardour/new_session_dialog.cc:96 msgid "Use only" msgstr "Benutze nur" -#: gtk2_ardour/new_session_dialog.cc:96 +#: gtk2_ardour/new_session_dialog.cc:95 msgid "Automatically Connect Outputs" msgstr "Ausgänge automatisch verbinden" -#: gtk2_ardour/new_session_dialog.cc:105 +#: gtk2_ardour/new_session_dialog.cc:104 msgid "... to Master Bus" msgstr "... mit Master Bus" -#: gtk2_ardour/new_session_dialog.cc:106 +#: gtk2_ardour/new_session_dialog.cc:105 msgid "... to Physical Outputs" msgstr "... mit Soundkartenausgängen" -#: gtk2_ardour/new_session_dialog.cc:112 +#: gtk2_ardour/new_session_dialog.cc:111 msgid "Advanced Options" msgstr "Erweiterte Einstellungen" -#: gtk2_ardour/new_session_dialog.cc:120 +#: gtk2_ardour/new_session_dialog.cc:119 msgid "Recent:" msgstr "Zuletzt verwendet:" -#: gtk2_ardour/new_session_dialog.cc:157 +#: gtk2_ardour/new_session_dialog.cc:156 msgid "Browse:" msgstr "Durchsuchen:" -#: gtk2_ardour/new_session_dialog.cc:335 +#: gtk2_ardour/new_session_dialog.cc:334 msgid "New Session" msgstr "Neues Projekt" -#: gtk2_ardour/new_session_dialog.cc:337 +#: gtk2_ardour/new_session_dialog.cc:336 msgid "Open Session" msgstr "Projekt öffnen" -#: gtk2_ardour/new_session_dialog.cc:342 +#: gtk2_ardour/new_session_dialog.cc:341 msgid "ardour: session control" msgstr "ardour: Neues Projekt" -#: gtk2_ardour/new_session_dialog.cc:383 +#: gtk2_ardour/new_session_dialog.cc:382 msgid "select template" msgstr "Vorlage auswählen" -#: gtk2_ardour/new_session_dialog.cc:389 +#: gtk2_ardour/new_session_dialog.cc:388 msgid "select session file" msgstr "Projektdatei auswählen" -#: gtk2_ardour/new_session_dialog.cc:398 -#, fuzzy +#: gtk2_ardour/new_session_dialog.cc:397 msgid "select directory" -msgstr "Auswahl zu Schleife machen" +msgstr "Verzeichnis auswählen" #: gtk2_ardour/option_editor.cc:73 msgid "SMPTE offset is negative" msgstr "Negatives SMPTE-Offset" -#: gtk2_ardour/option_editor.cc:99 +#: gtk2_ardour/option_editor.cc:102 msgid "ardour: options editor" msgstr "ardour: Einstellungen" -#: gtk2_ardour/option_editor.cc:124 +#: gtk2_ardour/option_editor.cc:127 msgid "Paths/Files" msgstr "Pfade" -#: gtk2_ardour/option_editor.cc:125 +#: gtk2_ardour/option_editor.cc:128 msgid "Kbd/Mouse" msgstr "Tastatur/Maus" -#: gtk2_ardour/option_editor.cc:128 +#: gtk2_ardour/option_editor.cc:131 msgid "Layers & Fades" msgstr "Layer & Fades" -#: gtk2_ardour/option_editor.cc:132 +#: gtk2_ardour/option_editor.cc:135 msgid "MIDI" msgstr "MIDI" -#: gtk2_ardour/option_editor.cc:220 +#: gtk2_ardour/option_editor.cc:223 msgid "session RAID path" msgstr "Projektverzeichnis (RAID)" -#: gtk2_ardour/option_editor.cc:236 -#: gtk2_ardour/option_editor.cc:242 -#: gtk2_ardour/option_editor.cc:652 -#: gtk2_ardour/option_editor.cc:672 +#: gtk2_ardour/option_editor.cc:239 +#: gtk2_ardour/option_editor.cc:245 +#: gtk2_ardour/option_editor.cc:667 +#: gtk2_ardour/option_editor.cc:687 msgid "internal" msgstr "intern" -#: gtk2_ardour/option_editor.cc:255 +#: gtk2_ardour/option_editor.cc:258 msgid "Short crossfade length (msecs)" msgstr "Länge für kurze Crossfades (ms)" -#: gtk2_ardour/option_editor.cc:267 +#: gtk2_ardour/option_editor.cc:270 msgid "Destructive crossfade length (msecs)" msgstr "Länge für destruktive Crossfades (ms)" -#: gtk2_ardour/option_editor.cc:327 +#: gtk2_ardour/option_editor.cc:330 msgid "SMPTE Offset" msgstr "SMPTE Offset" -#: gtk2_ardour/option_editor.cc:394 -#: gtk2_ardour/option_editor.cc:401 -#: gtk2_ardour/option_editor.cc:404 -#: gtk2_ardour/option_editor.cc:552 +#: gtk2_ardour/option_editor.cc:378 +msgid "Port" +msgstr "Port" + +#: gtk2_ardour/option_editor.cc:379 +msgid "Offline" +msgstr "Offline" + +#: gtk2_ardour/option_editor.cc:380 #, fuzzy -msgid "online" -msgstr "Verbindungen" +msgid "" +"Trace\n" +"Input" +msgstr "Eingang" + +#: gtk2_ardour/option_editor.cc:381 +#, fuzzy +msgid "" +"Trace\n" +"Output" +msgstr "Ausgang" + +#: gtk2_ardour/option_editor.cc:382 +msgid "MTC" +msgstr "MTC" + +#: gtk2_ardour/option_editor.cc:383 +msgid "MMC" +msgstr "MMC" + +#: gtk2_ardour/option_editor.cc:384 +msgid "" +"MIDI Parameter\n" +"Control" +msgstr "" + +#: gtk2_ardour/option_editor.cc:390 +msgid "MMC Device ID" +msgstr "MMC Gerät ID" -#: gtk2_ardour/option_editor.cc:401 #: gtk2_ardour/option_editor.cc:402 -#: gtk2_ardour/option_editor.cc:549 +#: gtk2_ardour/option_editor.cc:409 +#: gtk2_ardour/option_editor.cc:412 +#: gtk2_ardour/option_editor.cc:557 +msgid "online" +msgstr "Online" + +#: gtk2_ardour/option_editor.cc:409 +#: gtk2_ardour/option_editor.cc:410 +#: gtk2_ardour/option_editor.cc:554 msgid "offline" -msgstr "" +msgstr "Offline" -#: gtk2_ardour/option_editor.cc:605 +#: gtk2_ardour/option_editor.cc:620 msgid "Choose Click" -msgstr "" +msgstr "Click auswählen" -#: gtk2_ardour/option_editor.cc:624 +#: gtk2_ardour/option_editor.cc:639 msgid "Choose Click Emphasis" -msgstr "" +msgstr "Click-Betonung auswählen" -#: gtk2_ardour/option_editor.cc:724 +#: gtk2_ardour/option_editor.cc:739 msgid "Click audio file" msgstr "Audiodatei für Click" -#: gtk2_ardour/option_editor.cc:730 +#: gtk2_ardour/option_editor.cc:745 msgid "Click emphasis audiofile" msgstr "Audiodatei für betonten Click " -#: gtk2_ardour/option_editor.cc:767 +#: gtk2_ardour/option_editor.cc:782 msgid "" "The auditioner is a dedicated mixer strip used\n" "for listening to specific regions outside the context\n" @@ -5427,62 +5477,63 @@ msgstr "" "Dieser Bus lässt sich wie jeder andere Mixer-Kanal\n" "verbinden." -#: gtk2_ardour/option_editor.cc:840 +#: gtk2_ardour/option_editor.cc:855 msgid "Edit using" msgstr "Bearbeiten mit" -#: gtk2_ardour/option_editor.cc:847 -#: gtk2_ardour/option_editor.cc:874 +#: gtk2_ardour/option_editor.cc:862 +#: gtk2_ardour/option_editor.cc:889 msgid "+ button" msgstr "und Maustaste" -#: gtk2_ardour/option_editor.cc:867 +#: gtk2_ardour/option_editor.cc:882 msgid "Delete using" msgstr "Entfernen mit" -#: gtk2_ardour/option_editor.cc:894 +#: gtk2_ardour/option_editor.cc:909 msgid "Ignore snap using" msgstr "Einrasten übergehen mit" -#: gtk2_ardour/opts.cc:47 +#: gtk2_ardour/opts.cc:46 msgid "Usage: " msgstr "Aufruf:" -#: gtk2_ardour/opts.cc:48 +#: gtk2_ardour/opts.cc:47 msgid " -v, --version Show version information\n" msgstr " -v, --version Versionsinformation ausgeben\n" -#: gtk2_ardour/opts.cc:49 +#: gtk2_ardour/opts.cc:48 msgid " -h, --help Print this message\n" msgstr " -h, --help Diese Hinweise\n" -#: gtk2_ardour/opts.cc:50 +#: gtk2_ardour/opts.cc:49 msgid " -b, --bindings Print all possible keyboard binding names\n" msgstr " -b, --bindings Alle möglichen Tastenzuweisungsnamen ausgeben\n" -#: gtk2_ardour/opts.cc:51 -#, fuzzy +#: gtk2_ardour/opts.cc:50 msgid " -n, --show-splash Show splash screen\n" -msgstr " -h, --help Diese Hinweise\n" +msgstr " -n, --show-splash Zeige Splashscreen\n" -#: gtk2_ardour/opts.cc:52 -#, fuzzy +#: gtk2_ardour/opts.cc:51 msgid " -c, --name name Use a specific jack client name, default is ardour\n" -msgstr " -U, --ui-rcfile=FILENAME Dateiname für UI Einstellungen\n" +msgstr " -c, --name name Benutze spezielle JACK-Clientkennung, Standard: ardour\n" -#: gtk2_ardour/opts.cc:53 -#, fuzzy +#: gtk2_ardour/opts.cc:52 msgid " -N, --new session-name Create a new session from the command line\n" -msgstr " [session-name] Name des zu ladenden Projekts\n" +msgstr " -N, --new session-name Erstelle neues Projekt aus der Kommandozeile\n" -#: gtk2_ardour/opts.cc:54 +#: gtk2_ardour/opts.cc:53 msgid " -O, --no-hw-optimizations Disable h/w specific optimizations\n" -msgstr "" +msgstr " -O, --no-hw-optimizations Hardwarespezifische Optimierungen deaktivieren\n" -#: gtk2_ardour/opts.cc:56 +#: gtk2_ardour/opts.cc:54 #, fuzzy +msgid " -S, --sync\t Draw the gui synchronously \n" +msgstr " -v, --version Versionsinformation ausgeben\n" + +#: gtk2_ardour/opts.cc:56 msgid " -V, --novst Do not use VST support\n" -msgstr " -h, --help Diese Hinweise\n" +msgstr " -V, --novst VST-Unterstützung ausschalten\n" #: gtk2_ardour/opts.cc:58 msgid " [session-name] Name of session to load\n" @@ -5490,84 +5541,80 @@ msgstr " [session-name] Name des zu ladenden Projekts\n" #: gtk2_ardour/opts.cc:59 msgid " -C, --curvetest filename Curve algorithm debugger\n" -msgstr "" +msgstr " -C, --curvetest filename Kurvenalgorithmus debuggen\n" #: gtk2_ardour/opts.cc:60 msgid " -k, --keybindings filename Name of key bindings to load (default is ~/.ardour2/ardour.bindings)\n" -msgstr "" +msgstr " -k, --keybindings filename Dateiname für die Tastaturbelegungen (Standard: ~/.ardour2/ardour.bindings)\n" -#: gtk2_ardour/pan_automation_time_axis.cc:70 +#: gtk2_ardour/pan_automation_time_axis.cc:69 +#, fuzzy msgid "You need to select which line to edit" -msgstr "" +msgstr "You need to select which line to edit" -#: gtk2_ardour/pan_automation_time_axis.cc:91 -#, fuzzy +#: gtk2_ardour/pan_automation_time_axis.cc:90 msgid "add pan automation event" -msgstr "Stellen" +msgstr "Pan-Automationspunkt einfügen" -#: gtk2_ardour/panner2d.cc:589 -#: gtk2_ardour/panner_ui.cc:438 +#: gtk2_ardour/panner2d.cc:588 +#: gtk2_ardour/panner_ui.cc:412 #: gtk2_ardour/plugin_ui.cc:152 msgid "Bypass" msgstr "Bypass" #: gtk2_ardour/panner_ui.cc:58 -#: gtk2_ardour/panner_ui.cc:225 -#, fuzzy +#: gtk2_ardour/panner_ui.cc:217 msgid "link" -msgstr "leer" +msgstr "verb" #: gtk2_ardour/panner_ui.cc:69 msgid "Pan automation mode" msgstr "Pan-Automationsmodus" #: gtk2_ardour/panner_ui.cc:70 -#, fuzzy msgid "Pan automation type" -msgstr "Stellen" +msgstr "Pan-Automationstyp" -#: gtk2_ardour/panner_ui.cc:81 +#: gtk2_ardour/panner_ui.cc:80 msgid "panning link control" -msgstr "Pan-Regler gruppieren" +msgstr "Pan-Regler verbinden" -#: gtk2_ardour/panner_ui.cc:83 +#: gtk2_ardour/panner_ui.cc:82 msgid "panning link direction" -msgstr "Richtung der Gruppierung" +msgstr "Richtung der Verbindung" -#: gtk2_ardour/panner_ui.cc:235 +#: gtk2_ardour/panner_ui.cc:220 msgid "L" msgstr "L" -#: gtk2_ardour/panner_ui.cc:341 +#: gtk2_ardour/panner_ui.cc:333 #, c-format msgid "panner for channel %zu" msgstr "Pan-Regler für Kanal %zu" -#: gtk2_ardour/panner_ui.cc:448 -#, fuzzy +#: gtk2_ardour/panner_ui.cc:422 msgid "Reset all" -msgstr "bestmöglich" +msgstr "Alle zurücksetzen" -#: gtk2_ardour/playlist_selector.cc:52 +#: gtk2_ardour/playlist_selector.cc:51 msgid "ardour: playlists" msgstr "ardour: Wiedergabelisten" -#: gtk2_ardour/playlist_selector.cc:59 +#: gtk2_ardour/playlist_selector.cc:58 msgid "Playlists grouped by track" -msgstr "" +msgstr "Wiedergabelisten, nach Spur gruppiert" -#: gtk2_ardour/playlist_selector.cc:107 +#: gtk2_ardour/playlist_selector.cc:106 msgid "ardour: playlist for " msgstr "ardour: Wiedergabeliste für " -#: gtk2_ardour/playlist_selector.cc:123 -#, fuzzy +#: gtk2_ardour/playlist_selector.cc:122 msgid "Other tracks" -msgstr "Stille einfügen" +msgstr "Andere Spuren" -#: gtk2_ardour/playlist_selector.cc:140 +#: gtk2_ardour/playlist_selector.cc:139 msgid "unassigned" -msgstr "" +msgstr "nicht zugewiesen" #: gtk2_ardour/plugin_selector.cc:43 msgid "ardour: plugins" @@ -5626,37 +5673,41 @@ msgstr "VST" msgid "AudioUnit" msgstr "" -#: gtk2_ardour/plugin_ui.cc:85 +#: gtk2_ardour/plugin_ui.cc:84 msgid "unknown type of editor-supplying plugin (note: no VST support in this version of ardour)" -msgstr "" +msgstr "Unbekannter Plugintyp (Hinweis: diese ardour-Version unterstützt keine VST-Plugins)" #: gtk2_ardour/plugin_ui.cc:172 msgid "Plugin preset %1 not found" msgstr "Plugin Preset %1 nicht gefunden" #: gtk2_ardour/plugin_ui.cc:182 -#, fuzzy msgid "Name of New Preset:" -msgstr "Name für neue Verbindung:" +msgstr "Name für neue Voreinstellung:" -#: gtk2_ardour/redirect_automation_line.cc:54 +#: gtk2_ardour/redirect_automation_line.cc:53 msgid "redirect automation created for non-plugin" -msgstr "" +msgstr "Redirect-Automation für ein nicht-Plugin erstellt" -#: gtk2_ardour/redirect_automation_time_axis.cc:96 -#, fuzzy +#: gtk2_ardour/redirect_automation_time_axis.cc:95 msgid "add automation event to " -msgstr "Stellen" +msgstr "Automationspunkt einfügen für" -#: gtk2_ardour/redirect_box.cc:235 +#: gtk2_ardour/redirect_box.cc:234 msgid "New send" -msgstr "" +msgstr "Neuer Send" -#: gtk2_ardour/redirect_box.cc:236 +#: gtk2_ardour/redirect_box.cc:235 msgid "Show send controls" -msgstr "" +msgstr "Zeige Send-Steuerung" + +#: gtk2_ardour/redirect_box.cc:409 +#: gtk2_ardour/redirect_box.cc:704 +#, fuzzy +msgid "ardour: weird plugin dialog" +msgstr "ardour: Plugins" -#: gtk2_ardour/redirect_box.cc:417 +#: gtk2_ardour/redirect_box.cc:416 msgid "" "You attempted to add a plugin (%1).\n" "The plugin has %2 inputs\n" @@ -5666,8 +5717,15 @@ msgid "" "This makes no sense - you are throwing away\n" "part of the signal." msgstr "" +"Sie möchten ein Plugin hinzufügen (%1).\n" +"Dieses Plugin besitzt %2 Eingänge,\n" +"doch an dieser Position existieren\n" +"%3 aktive Signale.\n" +"\n" +"Das ist nicht möglich - es würden Teile\n" +"des Signals fehlen." -#: gtk2_ardour/redirect_box.cc:429 +#: gtk2_ardour/redirect_box.cc:428 msgid "" "You attempted to add a plugin (%1).\n" "The plugin has %2 inputs\n" @@ -5678,8 +5736,16 @@ msgid "" "side-chain inputs. A future version of Ardour will\n" "support this type of configuration." msgstr "" +"Sie möchten ein Plugin hinzufügen (%1).\n" +"Dieses Plugin besitzt %2 Eingänge,\n" +"doch an dieser Position existieren\n" +"nur %3 aktive Signale.\n" +"\n" +"Das ist nicht möglich - außer, wenn dieses Plugin\n" +"Side-Chain-Eingänge unterstützt. Dies wird in einer\n" +"der nächsten Versionen von ardour möglich sein." -#: gtk2_ardour/redirect_box.cc:442 +#: gtk2_ardour/redirect_box.cc:441 msgid "" "You attempted to add a plugin (%1).\n" "\n" @@ -5691,231 +5757,237 @@ msgid "" "\n" "Ardour does not understand what to do in such situations.\n" msgstr "" +"Sie möchten ein Plugin hinzufügen (%1).\n" +"\n" +"Die Ein-/Ausgangskonfiguration ist aber nicht möglich:\n" +"\n" +"Das Plugin besitzt %2 Eingänge und %3 Ausgänge.\n" +"Diese Spur besitzt %4 Eingänge und %5 Ausgänge.\n" +"An dieser Position existieren %6 aktive Signale.\n" +"\n" +"Ardour kann mit dieser Situation nicht umgehen.\n" -#: gtk2_ardour/redirect_box.cc:539 +#: gtk2_ardour/redirect_box.cc:538 msgid "Pre-fader inserts, sends & plugins:" -msgstr "" +msgstr "Pre-Fader Inserts, Sends & Plugins:" -#: gtk2_ardour/redirect_box.cc:542 +#: gtk2_ardour/redirect_box.cc:541 msgid "Post-fader inserts, sends & plugins:" msgstr "Post-Fader Inserts, Sends & Plugins:" -#: gtk2_ardour/redirect_box.cc:708 +#: gtk2_ardour/redirect_box.cc:707 msgid "" "You cannot reorder this set of redirects\n" "in that way because the inputs and\n" "outputs do not work correctly." msgstr "" +"Sie können diese Gruppe von Redirects\n" +"nicht auf diese Weise verändern, denn\n" +"die Ein-/Ausgänge arbeiten ncht korrekt." -#: gtk2_ardour/redirect_box.cc:821 -#, fuzzy +#: gtk2_ardour/redirect_box.cc:820 msgid "rename redirect" -msgstr "Ardour: Region umbenennen" +msgstr "Redirect umbenennen" -#: gtk2_ardour/redirect_box.cc:897 -#: gtk2_ardour/redirect_box.cc:946 +#: gtk2_ardour/redirect_box.cc:896 +#: gtk2_ardour/redirect_box.cc:945 msgid "" "Copying the set of redirects on the clipboard failed,\n" "probably because the I/O configuration of the plugins\n" "could not match the configuration of this track." msgstr "" +"Konnte diese Gruppe von Redirects nicht in die\n" +"Zwischenablage kopieren. Wahrscheinlich passt die\n" +"Ein-/Ausgangskonfiguration des Plugins nicht zu dieser Spur." -#: gtk2_ardour/redirect_box.cc:968 -#, fuzzy +#: gtk2_ardour/redirect_box.cc:967 msgid "" "Do you really want to remove all redirects from this track?\n" "(this cannot be undone)" msgstr "" -"Wollen Sie wirklich die Spur \"%1\" löschen?\n" -"(Kann nicht rückgängig gemacht werden!)" +"Wollen Sie wirklich alle Redirects von dieser Spur entfernen?\n" +"(Dies kann nicht rückgängig gemacht werden)" -#: gtk2_ardour/redirect_box.cc:971 -#, fuzzy +#: gtk2_ardour/redirect_box.cc:970 msgid "" "Do you really want to remove all redirects from this bus?\n" "(this cannot be undone)" msgstr "" -"Wollen Sie wirklich die Spur \"%1\" löschen?\n" -"(Kann nicht rückgängig gemacht werden!)" +"Wollen Sie wirklich alle Redirects von diesem Bus entfernen?\n" +"(Dies kann nicht rückgängig gemacht werden)" -#: gtk2_ardour/redirect_box.cc:976 +#: gtk2_ardour/redirect_box.cc:975 msgid "Yes, remove them all" msgstr "Ja, alle löschen" -#: gtk2_ardour/redirect_box.cc:1012 +#: gtk2_ardour/redirect_box.cc:1011 msgid "ardour: %1" msgstr "ardour: %1" -#: gtk2_ardour/redirect_box.cc:1134 +#: gtk2_ardour/redirect_box.cc:1133 msgid "New Plugin ..." msgstr "Plugin einfügen..." -#: gtk2_ardour/redirect_box.cc:1136 +#: gtk2_ardour/redirect_box.cc:1135 msgid "New Insert" msgstr "Insert einfügen" -#: gtk2_ardour/redirect_box.cc:1138 +#: gtk2_ardour/redirect_box.cc:1137 msgid "New Send ..." msgstr "Send einfügen..." -#: gtk2_ardour/redirect_box.cc:1152 +#: gtk2_ardour/redirect_box.cc:1151 msgid "Deselect All" msgstr "Nichts auswählen" -#: gtk2_ardour/redirect_box.cc:1159 +#: gtk2_ardour/redirect_box.cc:1158 msgid "Activate all" msgstr "Alle aktivieren" -#: gtk2_ardour/redirect_box.cc:1160 +#: gtk2_ardour/redirect_box.cc:1159 msgid "Deactivate all" msgstr "Alle deaktivieren" -#: gtk2_ardour/redirect_box.cc:1339 -#, fuzzy +#: gtk2_ardour/redirect_box.cc:1338 msgid "ardour: %1: %2 (by %3)" -msgstr "Ardour: " +msgstr "ardour: %1: %2 (by %3)" -#: gtk2_ardour/audio_region_editor.cc:47 +#: gtk2_ardour/audio_region_editor.cc:46 msgid "NAME:" msgstr "Name:" -#: gtk2_ardour/audio_region_editor.cc:48 +#: gtk2_ardour/audio_region_editor.cc:47 msgid "play" msgstr "" -#: gtk2_ardour/audio_region_editor.cc:67 +#: gtk2_ardour/audio_region_editor.cc:66 msgid "audition this region" -msgstr "" +msgstr "Diese Region Vorhören" -#: gtk2_ardour/audio_region_editor.cc:82 +#: gtk2_ardour/audio_region_editor.cc:81 msgid "START:" msgstr "Beginn:" -#: gtk2_ardour/audio_region_editor.cc:84 +#: gtk2_ardour/audio_region_editor.cc:83 msgid "END:" msgstr "Ende:" -#: gtk2_ardour/audio_region_editor.cc:86 +#: gtk2_ardour/audio_region_editor.cc:85 msgid "LENGTH:" msgstr "Längess:" -#: gtk2_ardour/audio_region_editor.cc:122 +#: gtk2_ardour/audio_region_editor.cc:121 msgid "ardour: region " msgstr "ardour: Region" -#: gtk2_ardour/audio_region_editor.cc:202 +#: gtk2_ardour/audio_region_editor.cc:201 msgid "change region start position" msgstr "Startposition der Region ändern" -#: gtk2_ardour/audio_region_editor.cc:219 +#: gtk2_ardour/audio_region_editor.cc:218 msgid "change region end position" msgstr "Endposition der Region ändern" -#: gtk2_ardour/audio_region_editor.cc:240 +#: gtk2_ardour/audio_region_editor.cc:239 msgid "change region length" msgstr "Länge der Region verändern" -#: gtk2_ardour/audio_region_view.cc:890 +#: gtk2_ardour/audio_region_view.cc:919 msgid "add gain control point" msgstr "Lautstärkekurve bearbeiten" -#: gtk2_ardour/route_params_ui.cc:85 +#: gtk2_ardour/route_params_ui.cc:83 msgid "Tracks/Buses" -msgstr "" +msgstr "Spuren/Busse" -#: gtk2_ardour/route_params_ui.cc:105 +#: gtk2_ardour/route_params_ui.cc:103 msgid "Pre-fader Redirects" -msgstr "" +msgstr "Pre-Fader Redirects (Abzweigungen)" -#: gtk2_ardour/route_params_ui.cc:106 +#: gtk2_ardour/route_params_ui.cc:104 msgid "Post-fader Redirects" -msgstr "" +msgstr "Post-Fader Redirects (Abzweigungen)" -#: gtk2_ardour/route_params_ui.cc:140 -#, fuzzy +#: gtk2_ardour/route_params_ui.cc:138 msgid "ardour: track/bus inspector" -msgstr "Ardour: Editor" +msgstr "ardour: Spur/Bus Einstellungen" -#: gtk2_ardour/route_params_ui.cc:202 +#: gtk2_ardour/route_params_ui.cc:200 msgid "route display list item for renamed route not found!" -msgstr "" +msgstr "Konnte Bezeichnung für umbenannten Verbindung nicht in der Liste der Verbindungen finden!" -#: gtk2_ardour/route_params_ui.cc:449 +#: gtk2_ardour/route_params_ui.cc:447 msgid "NO TRACK" -msgstr "" +msgstr "KEINE SPUR" -#: gtk2_ardour/route_params_ui.cc:672 -#, fuzzy +#: gtk2_ardour/route_params_ui.cc:670 msgid "ardour: track/bus inspector: " -msgstr "Ardour: Editor" +msgstr "ardour: Spur/Bus Einstellungen:" -#: gtk2_ardour/route_params_ui.cc:676 +#: gtk2_ardour/route_params_ui.cc:674 msgid "No Route Selected" msgstr "Keine Route ausgewählt" -#: gtk2_ardour/route_params_ui.cc:677 -#, fuzzy +#: gtk2_ardour/route_params_ui.cc:675 msgid "ardour: track/bus/inspector: no route selected" -msgstr "Ardour: Route: keine Route ausgewählt" +msgstr "ardour: Spur/Bus Einstellungen: keine Route ausgewählt" -#: gtk2_ardour/route_ui.cc:144 -#, fuzzy +#: gtk2_ardour/route_ui.cc:154 msgid "mute change" -msgstr "Bereich" +msgstr "Mute ändern" -#: gtk2_ardour/route_ui.cc:222 -#: gtk2_ardour/route_ui.cc:233 -#, fuzzy +#: gtk2_ardour/route_ui.cc:232 +#: gtk2_ardour/route_ui.cc:243 msgid "solo change" -msgstr "Bereich" +msgstr "Solo ändern" -#: gtk2_ardour/route_ui.cc:291 +#: gtk2_ardour/route_ui.cc:301 msgid "Not connected to JACK - cannot engage record" -msgstr "" +msgstr "Nicht mit JACK verbunden - konnte die Aufnahme nicht starten" -#: gtk2_ardour/route_ui.cc:303 +#: gtk2_ardour/route_ui.cc:314 msgid "rec-enable change" -msgstr "" +msgstr "Aufnahmestatus ändern" -#: gtk2_ardour/route_ui.cc:501 +#: gtk2_ardour/route_ui.cc:548 #, fuzzy msgid "Solo-safe" msgstr "solo" -#: gtk2_ardour/route_ui.cc:523 +#: gtk2_ardour/route_ui.cc:570 msgid "Pre Fader" -msgstr "" +msgstr "Pre Fader" -#: gtk2_ardour/route_ui.cc:530 +#: gtk2_ardour/route_ui.cc:577 msgid "Post Fader" -msgstr "" +msgstr "Post Fader" -#: gtk2_ardour/route_ui.cc:537 +#: gtk2_ardour/route_ui.cc:584 msgid "Control Outs" msgstr "" -#: gtk2_ardour/route_ui.cc:544 +#: gtk2_ardour/route_ui.cc:591 msgid "Main Outs" -msgstr "" +msgstr "Main Ausgänge" -#: gtk2_ardour/route_ui.cc:581 +#: gtk2_ardour/route_ui.cc:628 msgid "mix group solo change" -msgstr "" +msgstr "Mixergruppe Solo-Status ändern" -#: gtk2_ardour/route_ui.cc:620 +#: gtk2_ardour/route_ui.cc:667 msgid "mix group mute change" -msgstr "" +msgstr "Mixergruppe Mute-Status ändern" -#: gtk2_ardour/route_ui.cc:637 +#: gtk2_ardour/route_ui.cc:684 msgid "mix group rec-enable change" -msgstr "" +msgstr "Mixergruppe Aufnahmestatus ändern" -#: gtk2_ardour/route_ui.cc:655 -#: gtk2_ardour/visual_time_axis.cc:242 +#: gtk2_ardour/route_ui.cc:702 +#: gtk2_ardour/visual_time_axis.cc:241 msgid "ardour: color selection" msgstr "ardour: Farbe auswählen" -#: gtk2_ardour/route_ui.cc:731 +#: gtk2_ardour/route_ui.cc:778 msgid "" "Do you really want to remove track \"%1\" ?\n" "\n" @@ -5924,9 +5996,10 @@ msgid "" msgstr "" "Wollen Sie wirklich die Spur \"%1\" löschen?\n" "\n" -"Sie werden auch die Wiedergabeliste, die diese Spur benutzt verlieren.(Dies kann nicht rückgängig gemacht werden!)" +"Sie werden auch die Wiedergabeliste, die diese Spur benutzt verlieren.\n" +"(Dies kann nicht rückgängig gemacht werden!)" -#: gtk2_ardour/route_ui.cc:733 +#: gtk2_ardour/route_ui.cc:780 msgid "" "Do you really want to remove bus \"%1\" ?\n" "(cannot be undone)" @@ -5934,270 +6007,273 @@ msgstr "" "Wollen Sie den Bus \"%1\" wirklich löschen?\n" "(Dies kann nicht rückgängig gemacht werden!)" -#: gtk2_ardour/route_ui.cc:737 -#: gtk2_ardour/visual_time_axis.cc:284 +#: gtk2_ardour/route_ui.cc:784 +#: gtk2_ardour/visual_time_axis.cc:283 msgid "Yes, remove it." msgstr "Ja, entfernen." -#: gtk2_ardour/route_ui.cc:758 +#: gtk2_ardour/route_ui.cc:805 msgid "New Name: " msgstr "Neuer Name: " -#: gtk2_ardour/sfdb_ui.cc:61 +#: gtk2_ardour/sfdb_ui.cc:63 msgid "Apply" msgstr "Ãœbernehmen" -#: gtk2_ardour/sfdb_ui.cc:67 +#: gtk2_ardour/sfdb_ui.cc:69 msgid "Soundfile Info" msgstr "Eigenschaften der Audiodatei" -#: gtk2_ardour/sfdb_ui.cc:70 +#: gtk2_ardour/sfdb_ui.cc:72 msgid "comma seperated tags" msgstr "Stichworte (durch Komma getrennt)" -#: gtk2_ardour/sfdb_ui.cc:128 +#: gtk2_ardour/sfdb_ui.cc:130 msgid "Length: n/a" msgstr "Länge: n/a" -#: gtk2_ardour/sfdb_ui.cc:129 +#: gtk2_ardour/sfdb_ui.cc:131 msgid "Format: n/a" msgstr "Format: n/a" -#: gtk2_ardour/sfdb_ui.cc:130 +#: gtk2_ardour/sfdb_ui.cc:132 msgid "Channels: n/a" msgstr "Channels: n/a" -#: gtk2_ardour/sfdb_ui.cc:131 +#: gtk2_ardour/sfdb_ui.cc:133 msgid "Samplerate: n/a" msgstr "Samplerate: n/a" -#: gtk2_ardour/sfdb_ui.cc:132 +#: gtk2_ardour/sfdb_ui.cc:134 msgid "Timecode: n/a" msgstr "Timecode: n/a" -#: gtk2_ardour/sfdb_ui.cc:142 +#: gtk2_ardour/sfdb_ui.cc:144 msgid "Length: %1" msgstr "Länge: %1" -#: gtk2_ardour/sfdb_ui.cc:144 +#: gtk2_ardour/sfdb_ui.cc:146 msgid "Channels: %1" msgstr "Kanäle: %1" -#: gtk2_ardour/sfdb_ui.cc:145 +#: gtk2_ardour/sfdb_ui.cc:147 msgid "Samplerate: %1" msgstr "Samplerate: %1" -#: gtk2_ardour/sfdb_ui.cc:146 +#: gtk2_ardour/sfdb_ui.cc:148 msgid "Timecode: %1" msgstr "Timecode: %1" -#: gtk2_ardour/sfdb_ui.cc:186 +#: gtk2_ardour/sfdb_ui.cc:188 msgid "Could not read file: %1 (%2)." msgstr "Konnte Datei nicht lesen: %1 (%2)." -#: gtk2_ardour/sfdb_ui.cc:204 +#: gtk2_ardour/sfdb_ui.cc:206 msgid "Could not access soundfile: " msgstr "Konnte auf Audiodatei nicht zugreifen: " -#: gtk2_ardour/sfdb_ui.cc:253 +#: gtk2_ardour/sfdb_ui.cc:255 msgid "SoundFileBox: Could not tokenize string: " msgstr "" -#: gtk2_ardour/sfdb_ui.cc:273 +#: gtk2_ardour/sfdb_ui.cc:275 msgid "Add to Region list" msgstr "Zur Liste der Regionen hinzufügen" -#: gtk2_ardour/sfdb_ui.cc:274 +#: gtk2_ardour/sfdb_ui.cc:276 msgid "Add to selected Track(s)" msgstr "Zu ausgewählten Spuren hinzufügen" -#: gtk2_ardour/sfdb_ui.cc:275 +#: gtk2_ardour/sfdb_ui.cc:277 msgid "Add as new Track(s)" msgstr "Als neue Spur(en) hinzufügen" -#: gtk2_ardour/sfdb_ui.cc:276 +#: gtk2_ardour/sfdb_ui.cc:278 msgid "Add as new Tape Track(s)" msgstr "Als neue Tape-Spuren hinzufügen" -#: gtk2_ardour/sfdb_ui.cc:285 +#: gtk2_ardour/sfdb_ui.cc:287 msgid "Search" msgstr "Suchen" -#: gtk2_ardour/sfdb_ui.cc:300 +#: gtk2_ardour/sfdb_ui.cc:302 msgid "Paths" msgstr "Pfade" -#: gtk2_ardour/sfdb_ui.cc:302 +#: gtk2_ardour/sfdb_ui.cc:304 msgid "Files" msgstr "Dateien" -#: gtk2_ardour/sfdb_ui.cc:303 +#: gtk2_ardour/sfdb_ui.cc:305 msgid "Tags" msgstr "Stichworte" -#: gtk2_ardour/sfdb_ui.cc:362 +#: gtk2_ardour/sfdb_ui.cc:374 msgid "SoundFileBrowser: Could not tokenize string: " msgstr "" -#: gtk2_ardour/sfdb_ui.cc:420 +#: gtk2_ardour/sfdb_ui.cc:432 msgid "Split Channels" msgstr "Kanäle aufteilen" -#: gtk2_ardour/sfdb_ui.cc:423 +#: gtk2_ardour/sfdb_ui.cc:435 msgid "Create a region for each channel" msgstr "Erstellt aus jedem Kanal eine eigene Region" -#: gtk2_ardour/sfdb_ui.cc:425 +#: gtk2_ardour/sfdb_ui.cc:437 msgid "Embed" msgstr "Einbetten" -#: gtk2_ardour/sfdb_ui.cc:427 +#: gtk2_ardour/sfdb_ui.cc:439 msgid "Link to an external file" msgstr "Bettet eine externe Datei ein, ohne sie zu ins Verzeichnis des Projekts zu importieren" -#: gtk2_ardour/sfdb_ui.cc:429 +#: gtk2_ardour/sfdb_ui.cc:441 msgid "Import" msgstr "Importieren" -#: gtk2_ardour/sfdb_ui.cc:431 +#: gtk2_ardour/sfdb_ui.cc:443 msgid "Copy a file to the session folder" msgstr "Kopiert eine Datei in das Verzeichnis des Projekts" -#: gtk2_ardour/tempo_dialog.cc:18 -#: gtk2_ardour/tempo_dialog.cc:35 +#: gtk2_ardour/tempo_dialog.cc:17 +msgid "edit tempo" +msgstr "Tempo bearbeiten" + +#: gtk2_ardour/tempo_dialog.cc:20 +#: gtk2_ardour/tempo_dialog.cc:39 msgid "Beats per minute" -msgstr "" +msgstr "Schläge pro Minute" -#: gtk2_ardour/tempo_dialog.cc:21 -#: gtk2_ardour/tempo_dialog.cc:38 -#: gtk2_ardour/tempo_dialog.cc:203 -#: gtk2_ardour/tempo_dialog.cc:221 +#: gtk2_ardour/tempo_dialog.cc:23 +#: gtk2_ardour/tempo_dialog.cc:42 +#: gtk2_ardour/tempo_dialog.cc:159 +#: gtk2_ardour/tempo_dialog.cc:177 msgid "Bar" -msgstr "" +msgstr "Takt" -#: gtk2_ardour/tempo_dialog.cc:22 -#: gtk2_ardour/tempo_dialog.cc:39 -#: gtk2_ardour/tempo_dialog.cc:204 -#: gtk2_ardour/tempo_dialog.cc:222 +#: gtk2_ardour/tempo_dialog.cc:24 +#: gtk2_ardour/tempo_dialog.cc:43 +#: gtk2_ardour/tempo_dialog.cc:160 +#: gtk2_ardour/tempo_dialog.cc:178 msgid "Beat" -msgstr "" +msgstr "Schlag" -#: gtk2_ardour/tempo_dialog.cc:24 -#: gtk2_ardour/tempo_dialog.cc:41 -#: gtk2_ardour/tempo_dialog.cc:205 -#: gtk2_ardour/tempo_dialog.cc:223 -#, fuzzy +#: gtk2_ardour/tempo_dialog.cc:26 +#: gtk2_ardour/tempo_dialog.cc:45 +#: gtk2_ardour/tempo_dialog.cc:161 +#: gtk2_ardour/tempo_dialog.cc:179 msgid "Location" -msgstr "Stellen" +msgstr "Position" -#: gtk2_ardour/tempo_dialog.cc:199 -#: gtk2_ardour/tempo_dialog.cc:217 +#: gtk2_ardour/tempo_dialog.cc:155 +#: gtk2_ardour/tempo_dialog.cc:173 msgid "Meter denominator" -msgstr "" +msgstr "Takteinteilung" -#: gtk2_ardour/tempo_dialog.cc:200 -#: gtk2_ardour/tempo_dialog.cc:218 +#: gtk2_ardour/tempo_dialog.cc:156 +#: gtk2_ardour/tempo_dialog.cc:174 msgid "Beats per bar" -msgstr "" +msgstr "Schläge pro Takt" -#: gtk2_ardour/tempo_dialog.cc:236 -#: gtk2_ardour/tempo_dialog.cc:247 +#: gtk2_ardour/tempo_dialog.cc:192 +#: gtk2_ardour/tempo_dialog.cc:203 msgid "whole (1)" -msgstr "" +msgstr "Ganze (1)" -#: gtk2_ardour/tempo_dialog.cc:237 -#: gtk2_ardour/tempo_dialog.cc:249 +#: gtk2_ardour/tempo_dialog.cc:193 +#: gtk2_ardour/tempo_dialog.cc:205 msgid "second (2)" -msgstr "" +msgstr "Halbe (2)" -#: gtk2_ardour/tempo_dialog.cc:238 -#: gtk2_ardour/tempo_dialog.cc:251 +#: gtk2_ardour/tempo_dialog.cc:194 +#: gtk2_ardour/tempo_dialog.cc:207 msgid "third (3)" -msgstr "" +msgstr "Triolen (3)" -#: gtk2_ardour/tempo_dialog.cc:239 -#: gtk2_ardour/tempo_dialog.cc:253 -#: gtk2_ardour/tempo_dialog.cc:261 +#: gtk2_ardour/tempo_dialog.cc:195 +#: gtk2_ardour/tempo_dialog.cc:209 +#: gtk2_ardour/tempo_dialog.cc:217 msgid "quarter (4)" -msgstr "" +msgstr "Viertel (4)" -#: gtk2_ardour/tempo_dialog.cc:240 -#: gtk2_ardour/tempo_dialog.cc:255 +#: gtk2_ardour/tempo_dialog.cc:196 +#: gtk2_ardour/tempo_dialog.cc:211 msgid "eighth (8)" -msgstr "" +msgstr "Achtel (8)" -#: gtk2_ardour/tempo_dialog.cc:241 -#: gtk2_ardour/tempo_dialog.cc:257 +#: gtk2_ardour/tempo_dialog.cc:197 +#: gtk2_ardour/tempo_dialog.cc:213 msgid "sixteenth (16)" -msgstr "" +msgstr "Sechzehntel (16)" -#: gtk2_ardour/tempo_dialog.cc:242 -#: gtk2_ardour/tempo_dialog.cc:259 +#: gtk2_ardour/tempo_dialog.cc:198 +#: gtk2_ardour/tempo_dialog.cc:215 msgid "thirty-second (32)" -msgstr "" +msgstr "Zweiunddreissigstel (32)" -#: gtk2_ardour/tempo_dialog.cc:420 +#: gtk2_ardour/tempo_dialog.cc:376 msgid "garbaged note type entry (%1)" -msgstr "" +msgstr "Fehlerhafter Notentyp (%1)" -#: gtk2_ardour/tempo_dialog.cc:430 +#: gtk2_ardour/tempo_dialog.cc:386 msgid "incomprehensible note type entry (%1)" -msgstr "" +msgstr "Unverständlicher Notentyp (%1)" -#: gtk2_ardour/time_axis_view.cc:112 +#: gtk2_ardour/time_axis_view.cc:111 msgid "gTortnam" msgstr "" -#: gtk2_ardour/time_axis_view.cc:583 +#: gtk2_ardour/time_axis_view.cc:582 msgid "Largest" msgstr "Am größten" -#: gtk2_ardour/time_axis_view.cc:584 +#: gtk2_ardour/time_axis_view.cc:583 msgid "Large" msgstr "Groß" -#: gtk2_ardour/time_axis_view.cc:585 +#: gtk2_ardour/time_axis_view.cc:584 msgid "Larger" msgstr "Größer" -#: gtk2_ardour/time_axis_view.cc:587 +#: gtk2_ardour/time_axis_view.cc:586 msgid "Smaller" msgstr "Kleiner" -#: gtk2_ardour/time_axis_view.cc:588 +#: gtk2_ardour/time_axis_view.cc:587 msgid "Small" msgstr "Klein" -#: gtk2_ardour/time_axis_view.cc:903 +#: gtk2_ardour/time_axis_view.cc:902 msgid "unknown track height name \"%1\" in XML GUI information" -msgstr "" +msgstr "Unbekannte Spurhöhe \"%1\" in der XML GUI Information" -#: gtk2_ardour/time_axis_view_item.cc:79 +#: gtk2_ardour/time_axis_view_item.cc:78 msgid "TimeAxisViewItemName" msgstr "" -#: gtk2_ardour/time_axis_view_item.cc:302 +#: gtk2_ardour/time_axis_view_item.cc:327 msgid "new duration %1 frames is out of bounds for %2" -msgstr "" +msgstr "Neue Dauer %1 Frames ist außerhalb des erlaubten Bereichs %2" -#: gtk2_ardour/time_selection.cc:41 +#: gtk2_ardour/time_selection.cc:40 msgid "programming error: request for non-existent audio range (%1)!" -msgstr "" +msgstr "Programmierfehler: request for non-existent audio range (%1)!" -#: gtk2_ardour/utils.cc:118 -#: gtk2_ardour/utils.cc:161 +#: gtk2_ardour/utils.cc:117 +#: gtk2_ardour/utils.cc:160 msgid "bad XPM header %1" -msgstr "" +msgstr "Fehlerhafter XPM Header %1" -#: gtk2_ardour/utils.cc:285 +#: gtk2_ardour/utils.cc:299 msgid "missing RGBA style for \"%1\"" -msgstr "" +msgstr "Fehlender RGBA Style für \"%1\"" -#: gtk2_ardour/utils.cc:467 +#: gtk2_ardour/utils.cc:481 msgid "cannot find icon image for %1" -msgstr "" +msgstr "Konnte Icon-Bild für %1 nicht finden" -#: gtk2_ardour/visual_time_axis.cc:281 +#: gtk2_ardour/visual_time_axis.cc:280 msgid "" "Do you really want to remove track \"%1\" ?\n" "(cannot be undone)" @@ -6205,100 +6281,94 @@ msgstr "" "Wollen Sie wirklich die Spur \"%1\" löschen?\n" "(Kann nicht rückgängig gemacht werden!)" -#: gtk2_ardour/visual_time_axis.cc:330 +#: gtk2_ardour/visual_time_axis.cc:329 msgid "new name: " msgstr "Neuer Name: " -#: gtk2_ardour/connection_editor.cc:51 +#: gtk2_ardour/connection_editor.cc:50 msgid "ardour: connections" msgstr "ardour: Verbindungen" -#: gtk2_ardour/connection_editor.cc:52 +#: gtk2_ardour/connection_editor.cc:51 msgid "Input Connections" msgstr "Verbindungen der Eingänge" -#: gtk2_ardour/connection_editor.cc:53 +#: gtk2_ardour/connection_editor.cc:52 msgid "Output Connections" msgstr "Verbindungen der Ausgänge" -#: gtk2_ardour/connection_editor.cc:54 +#: gtk2_ardour/connection_editor.cc:53 msgid "New Input" msgstr "Neuer Eingang" -#: gtk2_ardour/connection_editor.cc:55 +#: gtk2_ardour/connection_editor.cc:54 msgid "New Output" msgstr "Neuer Ausgang" -#: gtk2_ardour/connection_editor.cc:58 -#: gtk2_ardour/connection_editor.cc:101 +#: gtk2_ardour/connection_editor.cc:57 +#: gtk2_ardour/connection_editor.cc:100 msgid "Add Port" msgstr "Port hinzufügen" -#: gtk2_ardour/connection_editor.cc:106 +#: gtk2_ardour/connection_editor.cc:105 msgid "Available Ports" msgstr "Verfügbare Verbindungen" -#: gtk2_ardour/connection_editor.cc:501 -#, fuzzy +#: gtk2_ardour/connection_editor.cc:500 msgid "Connection \"" -msgstr "Verbindungen" +msgstr "Verbindung \"" -#: gtk2_ardour/connection_editor.cc:503 +#: gtk2_ardour/connection_editor.cc:502 msgid "\"" msgstr "" -#: gtk2_ardour/connection_editor.cc:532 +#: gtk2_ardour/connection_editor.cc:531 #, c-format msgid "in %d" msgstr "" -#: gtk2_ardour/connection_editor.cc:534 -#, fuzzy, c-format +#: gtk2_ardour/connection_editor.cc:533 +#, c-format msgid "out %d" -msgstr "Nur %1" +msgstr "" -#: gtk2_ardour/connection_editor.cc:658 -#, fuzzy +#: gtk2_ardour/connection_editor.cc:657 msgid "Name for new connection:" -msgstr "Name für Region:" +msgstr "Name für neue Verbindung:" -#: gtk2_ardour/analysis_window.cc:46 +#: gtk2_ardour/analysis_window.cc:45 msgid "analysis window" -msgstr "" +msgstr "Analysefenster" -#: gtk2_ardour/analysis_window.cc:48 +#: gtk2_ardour/analysis_window.cc:47 msgid "Signal source" -msgstr "" +msgstr "Signalquelle" -#: gtk2_ardour/analysis_window.cc:49 -#, fuzzy +#: gtk2_ardour/analysis_window.cc:48 msgid "Selected ranges" -msgstr "Ausgewählten Bereich wiedergeben" +msgstr "Ausgewählte Bereiche" -#: gtk2_ardour/analysis_window.cc:50 -#, fuzzy +#: gtk2_ardour/analysis_window.cc:49 msgid "Selected regions" -msgstr "Auswahl zu Schleife machen" +msgstr "Ausgewählte Regionen" -#: gtk2_ardour/analysis_window.cc:52 -#, fuzzy +#: gtk2_ardour/analysis_window.cc:51 msgid "Display model" -msgstr "Anzeige" +msgstr "Anzeigetyp" -#: gtk2_ardour/analysis_window.cc:53 +#: gtk2_ardour/analysis_window.cc:52 msgid "Composite graphs for each track" -msgstr "" +msgstr "Graphen für jede Spur einzeln" -#: gtk2_ardour/analysis_window.cc:54 +#: gtk2_ardour/analysis_window.cc:53 msgid "Composite graph of all tracks" -msgstr "" +msgstr "Graphen aller Spuren zusammenfassen" -#: gtk2_ardour/analysis_window.cc:63 +#: gtk2_ardour/analysis_window.cc:62 msgid "Track" msgstr "Spur" -#: gtk2_ardour/analysis_window.cc:131 -#, fuzzy +#: gtk2_ardour/analysis_window.cc:130 msgid "Analyze data" -msgstr "Bereich" +msgstr "Daten analysieren" diff --git a/gtk2_ardour/po/fr_FR.po b/gtk2_ardour/po/fr_FR.po index 63bc040352..642519cd38 100644 --- a/gtk2_ardour/po/fr_FR.po +++ b/gtk2_ardour/po/fr_FR.po @@ -2,21 +2,21 @@ # French translation of gtk-ardour. # Copyright (C) 2004 Paul Davis # This file is distributed under the same license as the gtk-ardour package. -# # Alain Fréhel <alain.frehel@free.fr>, 2005. -# Christophe Combelles <ccomb@free.fr>, 2005, 2006. +# Christophe Combelles <ccomb@free.fr>, 2005, 2006, 2007 +# +# msgid "" msgstr "" -"Project-Id-Version: fr_FR\n" +"Project-Id-Version: Ardour 2.0rc1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-10-15 12:56+0200\n" -"PO-Revision-Date: 2006-10-15 03:04+0200\n" +"POT-Creation-Date: 2007-04-08 11:00+0200\n" +"PO-Revision-Date: 2007-04-09 13:24+0200\n" "Last-Translator: Christophe Combelles <ccomb@free.fr>\n" -"Language-Team: français\n" +"Language-Team: French\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: KBabel 1.11.4\n" +"Content-Transfer-Encoding: 8bit" #: gtk2_ardour/about.cc:120 msgid "Paul Davis" @@ -106,24 +106,75 @@ msgstr "Doug Mclain" msgid "Petter Sundlöf" msgstr "Petter Sundlöf" +#: gtk2_ardour/about.cc:142 +msgid "Thorsten Wilms" +msgstr "Thorsten Wilms" + +#: gtk2_ardour/about.cc:143 +msgid "Ben Loftis" +msgstr "Ben Loftis" + +#: gtk2_ardour/about.cc:144 +msgid "Stefan Kersten" +msgstr "Stefan Kersten" + +#: gtk2_ardour/about.cc:145 +msgid "Christopher George" +msgstr "Christopher George" + #: gtk2_ardour/about.cc:146 +msgid "Robert Jordens" +msgstr "Robert Jordens" + +#: gtk2_ardour/about.cc:147 +msgid "Dave Robillard" +msgstr "Dave Robillard" + +#: gtk2_ardour/about.cc:148 +msgid "Hans Fugal" +msgstr "Hans Fugal" + +#: gtk2_ardour/about.cc:149 +msgid "Brian Ahr" +msgstr "Brian Ahr" + +#: gtk2_ardour/about.cc:150 +msgid "Nimal Ratnayake" +msgstr "Nimal Ratnayake" + +#: gtk2_ardour/about.cc:151 +msgid "Mike Täht" +msgstr "Mike Täht" + +#: gtk2_ardour/about.cc:152 +msgid "John Anderson" +msgstr "John Anderson" + +#: gtk2_ardour/about.cc:153 +msgid "Nedko Arnaudov" +msgstr "Nedko Arnaudov" + +#: gtk2_ardour/about.cc:158 msgid "" "French:\n" "\tAlain Fréhel <alain.frehel@free.fr>\n" +"\tChristophe Combelles <ccomb@free.fr>\n" msgstr "" "français :\n" "\tAlain Fréhel <alain.frehel@free.fr>\n" "\tChristophe Combelles <ccomb@free.fr>\n" -#: gtk2_ardour/about.cc:147 +#: gtk2_ardour/about.cc:159 msgid "" "German:\n" "\tKarsten Petersen <kapet@kapet.de>\n" +"\tSebastian Arnold <mail@sebastian-arnold.net>\n" msgstr "" "allemand :\n" "\tKarsten Petersen <kapet@kapet.de>\n" +"\tSebastian Arnold <mail@sebastian-arnold.net>\n" -#: gtk2_ardour/about.cc:148 +#: gtk2_ardour/about.cc:160 msgid "" "Italian:\n" "\tFilippo Pappalardo <filippo@email.it>\n" @@ -131,7 +182,7 @@ msgstr "" "italien :\n" "\tFilippo Pappalardo <filippo@email.it>\n" -#: gtk2_ardour/about.cc:149 +#: gtk2_ardour/about.cc:161 msgid "" "Portuguese:\n" "\tRui Nuno Capela <rncbc@rncbc.org>\n" @@ -139,7 +190,7 @@ msgstr "" "portugais :\n" "\tRui Nuno Capela <rncbc@rncbc.org>\n" -#: gtk2_ardour/about.cc:150 +#: gtk2_ardour/about.cc:162 msgid "" "Brazilian Portuguese:\n" "\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n" @@ -149,7 +200,7 @@ msgstr "" "\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n" "\tChris Ross <chris@tebibyte.org>\n" -#: gtk2_ardour/about.cc:152 +#: gtk2_ardour/about.cc:164 msgid "" "Spanish:\n" "\t Alex Krohn <alexkrohn@fastmail.fm>\n" @@ -157,7 +208,7 @@ msgstr "" "espagnol :\n" "\t Alex Krohn <alexkrohn@fastmail.fm>\n" -#: gtk2_ardour/about.cc:153 +#: gtk2_ardour/about.cc:165 msgid "" "Russian:\n" "\t Igor Blinov <pitstop@nm.ru>\n" @@ -165,11 +216,11 @@ msgstr "" "russe :\n" "\t Igor Blinov <pitstop@nm.ru>\n" -#: gtk2_ardour/about.cc:181 -msgid "Copyright (C) 1999-2006 Paul Davis\n" -msgstr "Copyright (C) 1999-2006 Paul Davis\n" +#: gtk2_ardour/about.cc:193 +msgid "Copyright (C) 1999-2007 Paul Davis\n" +msgstr "Copyright © 1999-2007 Paul Davis\n" -#: gtk2_ardour/about.cc:182 +#: gtk2_ardour/about.cc:194 msgid "" "Ardour comes with ABSOLUTELY NO WARRANTY\n" "This is free software, and you are welcome to redistribute it\n" @@ -179,75 +230,101 @@ msgstr "" "C'est un logiciel libre et vous êtes encouragé à le distribuer\n" "sous certaines conditions ; voir le fichier COPYING pour les détails.\n" -#: gtk2_ardour/about.cc:188 +#: gtk2_ardour/about.cc:199 +msgid "visit http://www.ardour.org/" +msgstr "visitez http://www.ardour.org" + +#: gtk2_ardour/about.cc:200 msgid "" "%1\n" -"(built with ardour/gtk %2.%3.%4 libardour: %5.%6.%7)" +"(built from revision %2)" msgstr "" "%1\n" -"(ardour/gtk %2.%3.%4 libardour : %5.%6.%7)" +"(revision %2)" -#: gtk2_ardour/actions.cc:77 +#: gtk2_ardour/actions.cc:76 msgid "badly formatted UI definition file" msgstr "fichier de définition d'IHM mal formatté" -#: gtk2_ardour/actions.cc:79 +#: gtk2_ardour/actions.cc:78 msgid "Ardour menu definition file not found" msgstr "fichier de définition du menu d'Ardour non trouvé" -#: gtk2_ardour/actions.cc:83 +#: gtk2_ardour/actions.cc:82 msgid "ardour will not work without a valid ardour.menus file" msgstr "ardour ne fonctionnera pas sans un fichier ardour.menus valide" -#: gtk2_ardour/actions.cc:262 +#: gtk2_ardour/actions.cc:234 msgid "programmer error: %1 %2" -msgstr "erreur du logiciel : %1 %2" +msgstr "programmer error: %1 %2" -#: gtk2_ardour/actions.cc:281 +#: gtk2_ardour/actions.cc:253 msgid "Unknown action name: %1" msgstr "Nom d'action inconnu : %1" -#: gtk2_ardour/add_route_dialog.cc:62 +#: gtk2_ardour/add_route_dialog.cc:40 gtk2_ardour/add_route_dialog.cc:195 +msgid "Mono" +msgstr "mono" + +#: gtk2_ardour/add_route_dialog.cc:41 gtk2_ardour/add_route_dialog.cc:197 +msgid "Stereo" +msgstr "stéréo" + +#: gtk2_ardour/add_route_dialog.cc:42 +msgid "3 Channels" +msgstr "3 voies" + +#: gtk2_ardour/add_route_dialog.cc:43 +msgid "4 Channels" +msgstr "4 voies" + +#: gtk2_ardour/add_route_dialog.cc:44 +msgid "6 Channels" +msgstr "6 voies" + +#: gtk2_ardour/add_route_dialog.cc:45 +msgid "8 Channels" +msgstr "8 voies" + +#: gtk2_ardour/add_route_dialog.cc:46 +msgid "Manual Setup" +msgstr "Config manuelle" + +#: gtk2_ardour/add_route_dialog.cc:51 gtk2_ardour/add_route_dialog.cc:176 +#: gtk2_ardour/editor.cc:128 gtk2_ardour/editor.cc:2994 +#: gtk2_ardour/editor_actions.cc:288 gtk2_ardour/time_axis_view.cc:589 +msgid "Normal" +msgstr "Normal" + +#: gtk2_ardour/add_route_dialog.cc:52 gtk2_ardour/add_route_dialog.cc:178 +msgid "Tape" +msgstr "Bande" + +#: gtk2_ardour/add_route_dialog.cc:61 msgid "ardour: add track/bus" msgstr "ardour : ajouter piste ou bus" -#: gtk2_ardour/add_route_dialog.cc:63 gtk2_ardour/editor_route_list.cc:71 +#: gtk2_ardour/add_route_dialog.cc:62 gtk2_ardour/editor_route_list.cc:72 msgid "Tracks" msgstr "Pistes" -#: gtk2_ardour/add_route_dialog.cc:64 gtk2_ardour/editor_route_list.cc:68 +#: gtk2_ardour/add_route_dialog.cc:63 gtk2_ardour/editor_route_list.cc:69 msgid "Busses" msgstr "Bus" -#: gtk2_ardour/add_route_dialog.cc:96 gtk2_ardour/plugin_ui.cc:145 +#: gtk2_ardour/add_route_dialog.cc:95 gtk2_ardour/plugin_ui.cc:151 msgid "Add" msgstr "Ajouter" -#: gtk2_ardour/add_route_dialog.cc:114 +#: gtk2_ardour/add_route_dialog.cc:113 msgid "Name (template)" msgstr "Nom (modèle)" -#: gtk2_ardour/add_route_dialog.cc:120 +#: gtk2_ardour/add_route_dialog.cc:119 msgid "Channel Configuration" msgstr "Configuration" -#: gtk2_ardour/add_route_dialog.cc:177 gtk2_ardour/time_axis_view.cc:553 -msgid "Normal" -msgstr "Normal" - -#: gtk2_ardour/add_route_dialog.cc:179 -msgid "Tape" -msgstr "Bande" - -#: gtk2_ardour/add_route_dialog.cc:196 -msgid "Mono" -msgstr "mono" - -#: gtk2_ardour/add_route_dialog.cc:198 -msgid "Stereo" -msgstr "stéréo" - -#: gtk2_ardour/ardour_ui.cc:106 +#: gtk2_ardour/ardour_ui.cc:110 msgid "" "pre\n" "roll" @@ -255,7 +332,7 @@ msgstr "" "pré\n" "roll" -#: gtk2_ardour/ardour_ui.cc:107 +#: gtk2_ardour/ardour_ui.cc:111 msgid "" "post\n" "roll" @@ -263,54 +340,73 @@ msgstr "" "post\n" "roll" -#: gtk2_ardour/ardour_ui.cc:115 -msgid "" -"time\n" -"master" -msgstr "Maître d'horloge" - -#: gtk2_ardour/ardour_ui.cc:117 +#: gtk2_ardour/ardour_ui.cc:137 msgid "% " msgstr "% " -#: gtk2_ardour/ardour_ui.cc:119 gtk2_ardour/ardour_ui_ed.cc:275 +#: gtk2_ardour/ardour_ui.cc:139 gtk2_ardour/ardour_ui_ed.cc:294 msgid "Punch In" msgstr "Punch In" -#: gtk2_ardour/ardour_ui.cc:120 gtk2_ardour/ardour_ui_ed.cc:278 +#: gtk2_ardour/ardour_ui.cc:140 gtk2_ardour/ardour_ui_ed.cc:297 msgid "Punch Out" msgstr "Punch Out" -#: gtk2_ardour/ardour_ui.cc:121 gtk2_ardour/ardour_ui_ed.cc:290 +#: gtk2_ardour/ardour_ui.cc:141 gtk2_ardour/ardour_ui_ed.cc:309 msgid "Auto Return" msgstr "retour auto" -#: gtk2_ardour/ardour_ui.cc:122 -msgid "Autuo Play" -msgstr "lecture auto" +#: gtk2_ardour/ardour_ui.cc:142 gtk2_ardour/ardour_ui_ed.cc:306 +msgid "Auto Play" +msgstr "Lecture auto" -#: gtk2_ardour/ardour_ui.cc:123 gtk2_ardour/ardour_ui_ed.cc:284 +#: gtk2_ardour/ardour_ui.cc:143 gtk2_ardour/ardour_ui_ed.cc:303 msgid "Auto Input" msgstr "monit. auto" -#: gtk2_ardour/ardour_ui.cc:124 gtk2_ardour/ardour_ui_ed.cc:281 -#: gtk2_ardour/option_editor.cc:128 +#: gtk2_ardour/ardour_ui.cc:144 gtk2_ardour/ardour_ui_ed.cc:300 +#: gtk2_ardour/option_editor.cc:133 msgid "Click" msgstr "Métronome" -#: gtk2_ardour/ardour_ui.cc:125 +#: gtk2_ardour/ardour_ui.cc:145 +msgid "" +"time\n" +"master" +msgstr "" +"Horloge\n" +"maître" + +#: gtk2_ardour/ardour_ui.cc:147 msgid "AUDITION" msgstr "EN ÉCOUTE" -#: gtk2_ardour/ardour_ui.cc:126 +#: gtk2_ardour/ardour_ui.cc:148 msgid "SOLO" msgstr "SOLO" -#: gtk2_ardour/ardour_ui.cc:370 +#: gtk2_ardour/ardour_ui.cc:476 +msgid "" +"WARNING: Your system has a limit for maximum amount of locked memory. This " +"might cause Ardour to run out of memory before your system runs out of " +"memory. \n" +"\n" +"You can view the memory limit with 'ulimit -l', and it is normally " +"controlled by /etc/security/limits.conf" +msgstr "" +"AVERTISSEMENT : votre système possède une limite supérieure pour la quantité maximale de mémoire verrouillée. Ceci peut empêcher Ardour d'accéder à toute la mémoire disponible sur votre système.\n" +"\n" +"Vous pouvez connaître la limite actuelle avec la commande « ulimit -l » et celle-ci est habituellement contrôlée par le fichier /etc/security/limits.conf." + +#: gtk2_ardour/ardour_ui.cc:484 +msgid "Do not show this window again" +msgstr "Ne plus afficher cette fenêtre" + +#: gtk2_ardour/ardour_ui.cc:505 msgid "quit" msgstr "quitter" -#: gtk2_ardour/ardour_ui.cc:379 +#: gtk2_ardour/ardour_ui.cc:514 msgid "" "Ardour was unable to save your session.\n" "\n" @@ -324,31 +420,31 @@ msgstr "" "\n" "cliquez sur le bouton « Quitter sans enregistrer »." -#: gtk2_ardour/ardour_ui.cc:398 +#: gtk2_ardour/ardour_ui.cc:538 msgid "ardour: save session?" msgstr "ardour : enregistrer la session ?" -#: gtk2_ardour/ardour_ui.cc:405 +#: gtk2_ardour/ardour_ui.cc:545 msgid "Don't %1" msgstr "Ne pas %1" -#: gtk2_ardour/ardour_ui.cc:407 +#: gtk2_ardour/ardour_ui.cc:547 msgid "Just %1" msgstr "%1 sans enregistrer" -#: gtk2_ardour/ardour_ui.cc:409 +#: gtk2_ardour/ardour_ui.cc:549 msgid "Save and %1" msgstr "Enregistrer et %1" -#: gtk2_ardour/ardour_ui.cc:421 +#: gtk2_ardour/ardour_ui.cc:561 msgid "session" msgstr "La session" -#: gtk2_ardour/ardour_ui.cc:423 +#: gtk2_ardour/ardour_ui.cc:563 msgid "snapshot" msgstr "Le cliché" -#: gtk2_ardour/ardour_ui.cc:425 +#: gtk2_ardour/ardour_ui.cc:565 msgid "" "The %1\"%2\"\n" "has not been saved.\n" @@ -358,85 +454,93 @@ msgid "" "\n" "What do you want to do?" msgstr "" -"%1 « %2 » n'a pas été enregistré.\n" +"%1 « %2 » n'a pas été enregistré(e).\n" "\n" "Tous les changements seront perdus\n" "à moins de les enregistrer.\n" "\n" "Que voulez-vous faire ?" -#: gtk2_ardour/ardour_ui.cc:439 +#: gtk2_ardour/ardour_ui.cc:579 msgid "Prompter" msgstr "Question" -#: gtk2_ardour/ardour_ui.cc:498 +#: gtk2_ardour/ardour_ui.cc:639 #, c-format msgid "disconnected" msgstr "déconnecté" -#: gtk2_ardour/ardour_ui.cc:505 +#: gtk2_ardour/ardour_ui.cc:646 #, c-format -msgid "%.1f kHz / %4.1f msecs" +msgid "%.1f kHz / %4.1f ms" msgstr "%.1f kHz / %4.1f ms" -#: gtk2_ardour/ardour_ui.cc:509 +#: gtk2_ardour/ardour_ui.cc:650 #, c-format -msgid "%u kHz / %4.1f msecs" -msgstr "%u kHz / %4.1f ms" +msgid "%u kHz / %4.1f ms" +msgstr "%u kHz/%4.1f ms" -#: gtk2_ardour/ardour_ui.cc:522 +#: gtk2_ardour/ardour_ui.cc:663 #, c-format -msgid "DSP: %.1f%%" -msgstr "CPU : %.1f%%" +msgid "DSP: %5.1f%%" +msgstr "DSP=%5.1f%%" -#: gtk2_ardour/ardour_ui.cc:532 +#: gtk2_ardour/ardour_ui.cc:673 #, c-format msgid "Buffers p:%<PRIu32>%% c:%<PRIu32>%%" -msgstr "Buffers p=%<PRIu32>%% c=%<PRIu32>%%" +msgstr "Buffers: (lect=%<PRIu32>%% enr=%<PRIu32>%%)" -#: gtk2_ardour/ardour_ui.cc:560 +#: gtk2_ardour/ardour_ui.cc:701 msgid "Disk: 24hrs+" -msgstr "Il reste : plus de 24h" +msgstr "Reste : +24h" -#: gtk2_ardour/ardour_ui.cc:580 +#: gtk2_ardour/ardour_ui.cc:721 #, c-format msgid "Disk: %02dh:%02dm:%02ds" -msgstr "Il reste %02dh %02dmin %02ds" - -#: gtk2_ardour/ardour_ui.cc:619 -msgid "programming error: impossible control method" -msgstr "erreur du logiciel : méthode de contrôle impossible" +msgstr "Reste %02dh %02dmin %02ds" -#: gtk2_ardour/ardour_ui.cc:727 gtk2_ardour/new_session_dialog.cc:356 +#: gtk2_ardour/ardour_ui.cc:834 gtk2_ardour/new_session_dialog.cc:362 msgid "Recent Sessions" msgstr "Sessions récentes" -#: gtk2_ardour/ardour_ui.cc:820 +#: gtk2_ardour/ardour_ui.cc:927 msgid "open session" msgstr "Ouvrir une session" -#: gtk2_ardour/ardour_ui.cc:826 +#: gtk2_ardour/ardour_ui.cc:933 msgid "Ardour sessions" msgstr "Sessions Ardour" -#: gtk2_ardour/ardour_ui.cc:859 +#: gtk2_ardour/ardour_ui.cc:966 msgid "Patience is a virtue.\n" msgstr "La patience est une vertu.\n" -#: gtk2_ardour/ardour_ui.cc:869 +#: gtk2_ardour/ardour_ui.cc:976 msgid "You cannot add a track or bus without a session already loaded." msgstr "" "Vous ne pouvez pas ajouter une piste ou un bus sans avoir ouvert une session." -#: gtk2_ardour/ardour_ui.cc:879 gtk2_ardour/ardour_ui.cc:891 +#: gtk2_ardour/ardour_ui.cc:986 gtk2_ardour/ardour_ui.cc:999 msgid "could not create a new audio track" msgstr "impossible de créer une nouvelle piste audio" -#: gtk2_ardour/ardour_ui.cc:881 gtk2_ardour/ardour_ui.cc:893 +#: gtk2_ardour/ardour_ui.cc:988 +msgid "could only create %1 of %2 new audio %3" +msgstr "Ardour n'a pu créer que %1 %3 audio au lieu de %2" + +#: gtk2_ardour/ardour_ui.cc:989 +msgid "tracks" +msgstr "pistes" + +#: gtk2_ardour/ardour_ui.cc:989 +msgid "busses" +msgstr "bus" + +#: gtk2_ardour/ardour_ui.cc:1001 msgid "could not create %1 new audio tracks" msgstr "impossible de créer %1 nouvelles pistes audios" -#: gtk2_ardour/ardour_ui.cc:913 +#: gtk2_ardour/ardour_ui.cc:1022 msgid "" "There are insufficient JACK ports available\n" "to create a new track or bus.\n" @@ -448,7 +552,7 @@ msgstr "" "Vous devriez enregistrer la session, quitter, puis\n" "redémarrer JACK avec plus de ports." -#: gtk2_ardour/ardour_ui.cc:1033 +#: gtk2_ardour/ardour_ui.cc:1142 msgid "" "Please create 1 or more track\n" "before trying to record.\n" @@ -457,7 +561,7 @@ msgstr "" "Pour pouvoir enregistrer, vous devez ajouter au moins une piste.\n" "Rendez-vous dans le menu « Session »." -#: gtk2_ardour/ardour_ui.cc:1254 +#: gtk2_ardour/ardour_ui.cc:1387 msgid "" "JACK has either been shutdown or it\n" "disconnected Ardour because Ardour\n" @@ -469,35 +573,49 @@ msgstr "" "Vous devriez enregistrer la session\n" "ou essayer de reconnecter Ardour à JACK." -#: gtk2_ardour/ardour_ui.cc:1271 -msgid "Unable to create all required ports" -msgstr "Impossible de créer tous les ports" - -#: gtk2_ardour/ardour_ui.cc:1279 +#: gtk2_ardour/ardour_ui.cc:1404 msgid "Unable to start the session running" msgstr "Impossible de lancer la session" -#: gtk2_ardour/ardour_ui.cc:1385 gtk2_ardour/ardour_ui.cc:1404 +#: gtk2_ardour/ardour_ui.cc:1504 gtk2_ardour/ardour_ui.cc:1523 +#: gtk2_ardour/audio_clock.cc:461 msgid "none" msgstr "aucun" -#: gtk2_ardour/ardour_ui.cc:1394 gtk2_ardour/ardour_ui.cc:1413 +#: gtk2_ardour/ardour_ui.cc:1513 gtk2_ardour/ardour_ui.cc:1532 msgid "off" msgstr "stop" -#: gtk2_ardour/ardour_ui.cc:1437 +#: gtk2_ardour/ardour_ui.cc:1558 msgid "Name of New Snapshot" msgstr "Nom du nouveau cliché :" -#: gtk2_ardour/ardour_ui.cc:1583 +#: gtk2_ardour/ardour_ui.cc:1698 msgid "Name for mix template:" msgstr "Nom du modèle de session :" -#: gtk2_ardour/ardour_ui.cc:1584 +#: gtk2_ardour/ardour_ui.cc:1699 msgid "-template" msgstr "-modèle" -#: gtk2_ardour/ardour_ui.cc:1787 +#: gtk2_ardour/ardour_ui.cc:1723 gtk2_ardour/ardour_ui.cc:1740 +msgid "" +"Ardour is not connected to JACK at this time. Creating new sessions is not " +"possible." +msgstr "" +"Ardour n'est pas connecté à JACK. Il n'est pas possible de créer de nouvelles sessions." + +#: gtk2_ardour/ardour_ui.cc:1833 +msgid "" +"This session\n" +"%1\n" +"already exists. Do you want to open it?" +msgstr "" +"Cette session existe déjà :\n" +"%1\n" +"Voulez-vous l'ouvrir ?" + +#: gtk2_ardour/ardour_ui.cc:1956 msgid "" "You do not have write access to this session.\n" "This prevents the session from being loaded." @@ -505,15 +623,19 @@ msgstr "" "Vous n'avez pas les droits d'écriture sur cette session.\n" "La session ne peut pas être chargée." -#: gtk2_ardour/ardour_ui.cc:1800 gtk2_ardour/ardour_ui.cc:1854 +#: gtk2_ardour/ardour_ui.cc:1968 msgid "Session \"%1 (snapshot %2)\" did not load successfully" msgstr "La session « %1 (cliché %2) » ne s'est pas chargée correctement" -#: gtk2_ardour/ardour_ui.cc:1909 +#: gtk2_ardour/ardour_ui.cc:2018 +msgid "Could not create session in \"%1\"" +msgstr "Impossible de créer une session dans « %1 »" + +#: gtk2_ardour/ardour_ui.cc:2078 msgid "No audio files were ready for cleanup" msgstr "Aucun fichier audio n'est susceptible d'être nettoyé" -#: gtk2_ardour/ardour_ui.cc:1913 +#: gtk2_ardour/ardour_ui.cc:2082 msgid "" "If this seems suprising, \n" "check for any existing snapshots.\n" @@ -524,23 +646,23 @@ msgstr "" "Ceux-ci peuvent contenir des régions ayant besoin de certains\n" "fichiers audio inutilisés pour exister." -#: gtk2_ardour/ardour_ui.cc:1922 +#: gtk2_ardour/ardour_ui.cc:2091 msgid "ardour: cleanup" msgstr "ardour : nettoyage" -#: gtk2_ardour/ardour_ui.cc:1958 gtk2_ardour/ardour_ui.cc:1964 +#: gtk2_ardour/ardour_ui.cc:2127 gtk2_ardour/ardour_ui.cc:2133 msgid "files were" msgstr " " -#: gtk2_ardour/ardour_ui.cc:1960 gtk2_ardour/ardour_ui.cc:1966 +#: gtk2_ardour/ardour_ui.cc:2129 gtk2_ardour/ardour_ui.cc:2135 msgid "file was" msgstr " " -#: gtk2_ardour/ardour_ui.cc:2007 +#: gtk2_ardour/ardour_ui.cc:2176 msgid "Are you sure you want to cleanup?" msgstr "Voulez-vous vraiment lancer le nettoyage ?" -#: gtk2_ardour/ardour_ui.cc:2012 +#: gtk2_ardour/ardour_ui.cc:2181 msgid "" "Cleanup is a destructive operation.\n" "ALL undo/redo information will be lost if you cleanup.\n" @@ -552,23 +674,19 @@ msgstr "" "Les fichiers audio inutilisés seront déplacés dans un dossier « dead_sounds " "»." -#: gtk2_ardour/ardour_ui.cc:2018 +#: gtk2_ardour/ardour_ui.cc:2187 msgid "Clean Up" msgstr "Nettoyer" -#: gtk2_ardour/ardour_ui.cc:2021 +#: gtk2_ardour/ardour_ui.cc:2190 msgid "CleanupDialog" msgstr "Fenêtre de nettoyage" -#: gtk2_ardour/ardour_ui.cc:2022 -msgid "ardour_cleanup" -msgstr "ardour_cleanup" - -#: gtk2_ardour/ardour_ui.cc:2041 +#: gtk2_ardour/ardour_ui.cc:2218 msgid "cleaned files" msgstr "fichiers nettoyés" -#: gtk2_ardour/ardour_ui.cc:2042 +#: gtk2_ardour/ardour_ui.cc:2219 msgid "" "The following %1 %2 not in use and \n" "have been moved to:\n" @@ -585,11 +703,11 @@ msgstr "" "un espace supplémentaire de\n" "%4 %5bytes.\n" -#: gtk2_ardour/ardour_ui.cc:2067 +#: gtk2_ardour/ardour_ui.cc:2247 msgid "deleted file" msgstr "fichier effacé" -#: gtk2_ardour/ardour_ui.cc:2068 +#: gtk2_ardour/ardour_ui.cc:2248 msgid "" "The following %1 %2 deleted from\n" "%3,\n" @@ -599,12 +717,12 @@ msgstr "" "%3,\n" "%4 %5octets d'espace disque ont été libérés." -#: gtk2_ardour/ardour_ui.cc:2184 +#: gtk2_ardour/ardour_ui.cc:2366 msgid "Recording was stopped because your system could not keep up." msgstr "" "L'enregistrement s'est arrêté car votre système n'était pas assez rapide." -#: gtk2_ardour/ardour_ui.cc:2195 +#: gtk2_ardour/ardour_ui.cc:2377 msgid "" "The disk system on your computer\n" "was not able to keep up with Ardour.\n" @@ -613,7 +731,7 @@ msgid "" "quickly enough to keep up with recording.\n" msgstr "Le disque dur n'est pas assez rapide en écriture.\n" -#: gtk2_ardour/ardour_ui.cc:2214 +#: gtk2_ardour/ardour_ui.cc:2396 msgid "" "The disk system on your computer\n" "was not able to keep up with Ardour.\n" @@ -622,7 +740,7 @@ msgid "" "quickly enough to keep up with playback.\n" msgstr "Le disque dur n'est pas assez rapide en lecture.\n" -#: gtk2_ardour/ardour_ui.cc:2240 +#: gtk2_ardour/ardour_ui.cc:2417 msgid "" "This session appears to have been in\n" "middle of recording when ardour or\n" @@ -637,124 +755,108 @@ msgstr "" "\n" "Vous pouvez récupérer ou ignorer les données de l'enregistrement.\n" -#: gtk2_ardour/ardour_ui.cc:2250 +#: gtk2_ardour/ardour_ui.cc:2427 msgid "Recover from crash" msgstr "Récupérer les données" -#: gtk2_ardour/ardour_ui.cc:2251 +#: gtk2_ardour/ardour_ui.cc:2428 msgid "Ignore crash data" msgstr "Ignorer les données" -#: gtk2_ardour/ardour_ui.cc:2269 +#: gtk2_ardour/ardour_ui.cc:2446 msgid "Could not disconnect from JACK" msgstr "Impossible de se déconnecter de JACK" -#: gtk2_ardour/ardour_ui.cc:2282 +#: gtk2_ardour/ardour_ui.cc:2459 msgid "Could not reconnect to JACK" msgstr "Impossible de se reconnecter à JACK" -#: gtk2_ardour/ardour_ui2.cc:60 +#: gtk2_ardour/ardour_ui2.cc:62 msgid "UI: cannot setup editor" msgstr "IHM : impossible d'initialiser l'éditeur" -#: gtk2_ardour/ardour_ui2.cc:65 +#: gtk2_ardour/ardour_ui2.cc:67 msgid "UI: cannot setup mixer" msgstr "IHM : impossible d'initialiser la console de mixage" -#: gtk2_ardour/ardour_ui2.cc:91 -msgid "MMC + Local" -msgstr "MMC + Local" - -#: gtk2_ardour/ardour_ui2.cc:92 -msgid "MMC" -msgstr "MMC" - -#: gtk2_ardour/ardour_ui2.cc:93 -msgid "Local" -msgstr "Local" - -#: gtk2_ardour/ardour_ui2.cc:110 -msgid "MMC ID" -msgstr "id MMC" - -#: gtk2_ardour/ardour_ui2.cc:295 +#: gtk2_ardour/ardour_ui2.cc:243 msgid "Play from playhead" msgstr "Démarrer la lecture" -#: gtk2_ardour/ardour_ui2.cc:296 +#: gtk2_ardour/ardour_ui2.cc:244 msgid "Stop playback" msgstr "Stopper la lecture" -#: gtk2_ardour/ardour_ui2.cc:297 +#: gtk2_ardour/ardour_ui2.cc:245 msgid "Play range/selection" -msgstr "Lire la sélection" +msgstr "Lire la zone de sélection" -#: gtk2_ardour/ardour_ui2.cc:298 +#: gtk2_ardour/ardour_ui2.cc:246 msgid "Go to start of session" msgstr "début de la session" -#: gtk2_ardour/ardour_ui2.cc:299 +#: gtk2_ardour/ardour_ui2.cc:247 msgid "Go to end of session" msgstr "fin de session" -#: gtk2_ardour/ardour_ui2.cc:300 +#: gtk2_ardour/ardour_ui2.cc:248 msgid "Play loop range" msgstr "Lire la boucle" -#: gtk2_ardour/ardour_ui2.cc:301 +#: gtk2_ardour/ardour_ui2.cc:250 msgid "Return to last playback start when stopped" msgstr "Revenir en début de lecture lors de l'arrêt" -#: gtk2_ardour/ardour_ui2.cc:302 +#: gtk2_ardour/ardour_ui2.cc:251 msgid "Start playback after any locate" msgstr "Démarrer quand la tête de lecture est déplacée" -#: gtk2_ardour/ardour_ui2.cc:303 +#: gtk2_ardour/ardour_ui2.cc:252 msgid "Be sensible about input monitoring" msgstr "Monitoring d'entrée automatique" -#: gtk2_ardour/ardour_ui2.cc:304 +#: gtk2_ardour/ardour_ui2.cc:253 msgid "Start recording at auto-punch start" msgstr "Ne démarrer l'enregistrement qu'au point punch-in" -#: gtk2_ardour/ardour_ui2.cc:305 +#: gtk2_ardour/ardour_ui2.cc:254 msgid "Stop recording at auto-punch end" msgstr "Arrêter l'enregistrement au point punch-out" -#: gtk2_ardour/ardour_ui2.cc:306 +#: gtk2_ardour/ardour_ui2.cc:255 msgid "Enable/Disable audio click" msgstr "(dés)activer le métronome" -#: gtk2_ardour/ardour_ui2.cc:307 +#: gtk2_ardour/ardour_ui2.cc:256 msgid "Positional sync source" msgstr "Source de synchro de position" -#: gtk2_ardour/ardour_ui2.cc:308 +#: gtk2_ardour/ardour_ui2.cc:257 msgid "Does Ardour control the time?" msgstr "Est-ce qu'Ardour contrôle l'horloge ?" -#: gtk2_ardour/ardour_ui2.cc:309 +#: gtk2_ardour/ardour_ui2.cc:258 msgid "Shuttle speed control" -msgstr "Lecture à vitesse variable" +msgstr "Variateur de vitesse" -#: gtk2_ardour/ardour_ui2.cc:310 +#: gtk2_ardour/ardour_ui2.cc:259 #, c-format msgid "Select semitones or %%-age for speed display" msgstr "Vitesse affichée en %% ou en demi-tons" -#: gtk2_ardour/ardour_ui2.cc:311 +#: gtk2_ardour/ardour_ui2.cc:260 msgid "Current transport speed" msgstr "Vitesse de lecture actuelle" -#: gtk2_ardour/ardour_ui2.cc:334 +#: gtk2_ardour/ardour_ui2.cc:280 msgid "Primary clock" msgstr "Horloge principale" -#: gtk2_ardour/ardour_ui2.cc:335 +#: gtk2_ardour/ardour_ui2.cc:281 msgid "secondary clock" msgstr "Horloge secondaire" -#: gtk2_ardour/ardour_ui2.cc:366 +#: gtk2_ardour/ardour_ui2.cc:307 msgid "" "When active, something is soloed.\n" "Click to de-solo everything" @@ -762,7 +864,7 @@ msgstr "" "Actif lorsque quelque chose est en solo\n" "Cliquez pour désactiver tous les solos." -#: gtk2_ardour/ardour_ui2.cc:367 +#: gtk2_ardour/ardour_ui2.cc:308 msgid "" "When active, auditioning is taking place\n" "Click to stop the audition" @@ -770,922 +872,980 @@ msgstr "" "Actif lorsqu'une écoute est en cours\n" "Cliquez pour stopper l'écoute." -#: gtk2_ardour/ardour_ui2.cc:395 gtk2_ardour/ardour_ui2.cc:826 -#: gtk2_ardour/ardour_ui2.cc:882 gtk2_ardour/ardour_ui_options.cc:806 +#: gtk2_ardour/ardour_ui2.cc:336 gtk2_ardour/ardour_ui2.cc:775 +#: gtk2_ardour/ardour_ui2.cc:831 gtk2_ardour/ardour_ui_options.cc:918 msgid "sprung" msgstr "ressort" -#: gtk2_ardour/ardour_ui2.cc:396 gtk2_ardour/ardour_ui2.cc:828 -#: gtk2_ardour/ardour_ui_options.cc:817 +#: gtk2_ardour/ardour_ui2.cc:337 gtk2_ardour/ardour_ui2.cc:777 +#: gtk2_ardour/ardour_ui_options.cc:929 msgid "wheel" msgstr "molette" -#: gtk2_ardour/ardour_ui2.cc:602 +#: gtk2_ardour/ardour_ui2.cc:545 msgid "Maximum speed" msgstr "Vitesse maximale" -#: gtk2_ardour/ardour_ui2.cc:838 gtk2_ardour/ardour_ui2.cc:861 +#: gtk2_ardour/ardour_ui2.cc:787 gtk2_ardour/ardour_ui2.cc:810 msgid "stop" msgstr "Stop" -#: gtk2_ardour/ardour_ui2.cc:880 +#: gtk2_ardour/ardour_ui2.cc:829 msgid "-0.55" msgstr "-0.55" -#: gtk2_ardour/ardour_ui_dialogs.cc:145 gtk2_ardour/playlist_selector.cc:70 +#: gtk2_ardour/ardour_ui_dependents.cc:84 +msgid "Ardour key bindings file not found at \"%1\" or contains errors." +msgstr "Le fichier des raccourcis claviers d'Ardour est absent de \"%1\" ou il contient des erreurs." + +#: gtk2_ardour/ardour_ui_dialogs.cc:163 gtk2_ardour/playlist_selector.cc:73 msgid "close" msgstr "fermer" -#: gtk2_ardour/ardour_ui_dialogs.cc:352 gtk2_ardour/ardour_ui_ed.cc:192 -msgid "Sound File Browser" -msgstr "Navigateur de fichiers audio..." - -#: gtk2_ardour/ardour_ui_ed.cc:77 +#: gtk2_ardour/ardour_ui_ed.cc:81 msgid "Session" msgstr "Session" -#: gtk2_ardour/ardour_ui_ed.cc:78 gtk2_ardour/ardour_ui_ed.cc:138 -#: gtk2_ardour/editor.cc:1705 gtk2_ardour/export_dialog.cc:350 -#: gtk2_ardour/export_dialog.cc:1059 gtk2_ardour/export_dialog.cc:1063 +#: gtk2_ardour/ardour_ui_ed.cc:82 gtk2_ardour/ardour_ui_ed.cc:143 +#: gtk2_ardour/editor.cc:1625 gtk2_ardour/export_dialog.cc:125 +#: gtk2_ardour/export_dialog.cc:352 gtk2_ardour/export_dialog.cc:1061 +#: gtk2_ardour/export_dialog.cc:1065 msgid "Export" msgstr "Exporter" -#: gtk2_ardour/ardour_ui_ed.cc:79 +#: gtk2_ardour/ardour_ui_ed.cc:83 msgid "Cleanup" msgstr "Nettoyer" -#: gtk2_ardour/ardour_ui_ed.cc:80 gtk2_ardour/option_editor.cc:125 +#: gtk2_ardour/ardour_ui_ed.cc:84 gtk2_ardour/option_editor.cc:130 msgid "Sync" msgstr "Synchro" -#: gtk2_ardour/ardour_ui_ed.cc:81 gtk2_ardour/ardour_ui_ed.cc:82 +#: gtk2_ardour/ardour_ui_ed.cc:85 gtk2_ardour/ardour_ui_ed.cc:86 msgid "Options" msgstr "Options" -#: gtk2_ardour/ardour_ui_ed.cc:83 +#: gtk2_ardour/ardour_ui_ed.cc:87 msgid "Help" msgstr "Aide" -#: gtk2_ardour/ardour_ui_ed.cc:84 +#: gtk2_ardour/ardour_ui_ed.cc:88 msgid "KeyMouse Actions" msgstr "Souris" -#: gtk2_ardour/ardour_ui_ed.cc:85 +#: gtk2_ardour/ardour_ui_ed.cc:89 msgid "Audio File Format" msgstr "Format de fichiers audio" -#: gtk2_ardour/ardour_ui_ed.cc:86 +#: gtk2_ardour/ardour_ui_ed.cc:90 msgid "Header" msgstr "En-tête" -#: gtk2_ardour/ardour_ui_ed.cc:87 +#: gtk2_ardour/ardour_ui_ed.cc:91 msgid "Data" msgstr "Contenu" -#: gtk2_ardour/ardour_ui_ed.cc:88 +#: gtk2_ardour/ardour_ui_ed.cc:92 msgid "Control Surfaces" -msgstr "Contrôleurs matériels" +msgstr "Télécommandes" -#: gtk2_ardour/ardour_ui_ed.cc:89 +#: gtk2_ardour/ardour_ui_ed.cc:93 msgid "Metering" msgstr "VU-mètre" -#: gtk2_ardour/ardour_ui_ed.cc:90 +#: gtk2_ardour/ardour_ui_ed.cc:94 msgid "Fall off rate" msgstr "Taux de chute" -#: gtk2_ardour/ardour_ui_ed.cc:91 +#: gtk2_ardour/ardour_ui_ed.cc:95 msgid "Hold Time" msgstr "Temps de maintien" -#: gtk2_ardour/ardour_ui_ed.cc:95 gtk2_ardour/route_time_axis.cc:1139 -#: gtk2_ardour/new_session_dialog.cc:601 +#: gtk2_ardour/ardour_ui_ed.cc:99 gtk2_ardour/route_time_axis.cc:1308 +#: gtk2_ardour/new_session_dialog.cc:619 msgid "New" msgstr "Nouvelle..." -#: gtk2_ardour/ardour_ui_ed.cc:97 gtk2_ardour/new_session_dialog.cc:588 +#: gtk2_ardour/ardour_ui_ed.cc:101 gtk2_ardour/new_session_dialog.cc:606 msgid "Open" msgstr "Ouvrir..." -#: gtk2_ardour/ardour_ui_ed.cc:98 +#: gtk2_ardour/ardour_ui_ed.cc:102 msgid "Recent" msgstr "Sessions récentes..." -#: gtk2_ardour/ardour_ui_ed.cc:99 gtk2_ardour/io_selector.cc:60 -#: gtk2_ardour/io_selector.cc:794 gtk2_ardour/connection_editor.cc:59 +#: gtk2_ardour/ardour_ui_ed.cc:103 gtk2_ardour/io_selector.cc:59 +#: gtk2_ardour/io_selector.cc:747 gtk2_ardour/connection_editor.cc:58 msgid "Close" msgstr "Fermer" -#: gtk2_ardour/ardour_ui_ed.cc:102 gtk2_ardour/route_params_ui.cc:510 +#: gtk2_ardour/ardour_ui_ed.cc:106 gtk2_ardour/route_params_ui.cc:513 msgid "Add Track/Bus" msgstr "Ajouter piste ou bus..." -#: gtk2_ardour/ardour_ui_ed.cc:113 +#: gtk2_ardour/ardour_ui_ed.cc:118 msgid "Connect" msgstr "Connecter" -#: gtk2_ardour/ardour_ui_ed.cc:121 +#: gtk2_ardour/ardour_ui_ed.cc:126 msgid "Snapshot" msgstr "Prendre un cliché..." -#: gtk2_ardour/ardour_ui_ed.cc:124 +#: gtk2_ardour/ardour_ui_ed.cc:129 msgid "Save Template..." msgstr "Enregistrer comme modèle..." -#: gtk2_ardour/ardour_ui_ed.cc:127 +#: gtk2_ardour/ardour_ui_ed.cc:132 msgid "Export session to audiofile..." msgstr "la session vers un fichier audio..." -#: gtk2_ardour/ardour_ui_ed.cc:130 +#: gtk2_ardour/ardour_ui_ed.cc:135 msgid "Export selection to audiofile..." msgstr "la sélection vers un fichier audio..." -#: gtk2_ardour/ardour_ui_ed.cc:134 +#: gtk2_ardour/ardour_ui_ed.cc:139 msgid "Export range markers to audiofile..." msgstr "les intervalles vers des fichiers audio..." -#: gtk2_ardour/ardour_ui_ed.cc:141 +#: gtk2_ardour/ardour_ui_ed.cc:146 msgid "Cleanup unused sources" msgstr "les fichiers audio inutilisés..." -#: gtk2_ardour/ardour_ui_ed.cc:143 +#: gtk2_ardour/ardour_ui_ed.cc:148 msgid "Flush wastebasket" -msgstr "Vider la corbeille" +msgstr "Vider la corbeille..." -#: gtk2_ardour/ardour_ui_ed.cc:149 +#: gtk2_ardour/ardour_ui_ed.cc:154 msgid "JACK" msgstr "JACK" -#: gtk2_ardour/ardour_ui_ed.cc:150 +#: gtk2_ardour/ardour_ui_ed.cc:155 msgid "Latency" -msgstr "Latence" +msgstr "Latence (trames/période)" -#: gtk2_ardour/ardour_ui_ed.cc:152 +#: gtk2_ardour/ardour_ui_ed.cc:157 msgid "Reconnect" msgstr "Reconnecter" -#: gtk2_ardour/ardour_ui_ed.cc:155 gtk2_ardour/mixer_strip.cc:498 -#: gtk2_ardour/mixer_strip.cc:561 +#: gtk2_ardour/ardour_ui_ed.cc:160 gtk2_ardour/mixer_strip.cc:510 +#: gtk2_ardour/mixer_strip.cc:572 msgid "Disconnect" msgstr "Déconnecter" -#: gtk2_ardour/ardour_ui_ed.cc:182 +#: gtk2_ardour/ardour_ui_ed.cc:187 msgid "Windows" msgstr "Fenêtres" -#: gtk2_ardour/ardour_ui_ed.cc:183 -msgid "start prefix" -msgstr "préfixe de début" - -#: gtk2_ardour/ardour_ui_ed.cc:184 +#: gtk2_ardour/ardour_ui_ed.cc:188 msgid "Quit" msgstr "Quitter" -#: gtk2_ardour/ardour_ui_ed.cc:188 +#: gtk2_ardour/ardour_ui_ed.cc:192 msgid "Maximise Editor Space" -msgstr "Agrandir l'éditeur" +msgstr "Plein écran" -#: gtk2_ardour/ardour_ui_ed.cc:190 +#: gtk2_ardour/ardour_ui_ed.cc:194 msgid "Show Editor" msgstr "Éditeur..." -#: gtk2_ardour/ardour_ui_ed.cc:191 +#: gtk2_ardour/ardour_ui_ed.cc:195 msgid "Show Mixer" msgstr "Console de mixage..." -#: gtk2_ardour/ardour_ui_ed.cc:193 +#: gtk2_ardour/ardour_ui_ed.cc:196 gtk2_ardour/option_editor.cc:103 msgid "Options Editor" msgstr "Options..." -#: gtk2_ardour/ardour_ui_ed.cc:194 +#: gtk2_ardour/ardour_ui_ed.cc:197 gtk2_ardour/route_params_ui.cc:143 +#: gtk2_ardour/route_params_ui.cc:659 msgid "Track/Bus Inspector" msgstr "Pistes et bus..." -#: gtk2_ardour/ardour_ui_ed.cc:196 gtk2_ardour/connection_editor.cc:147 -#: gtk2_ardour/connection_editor.cc:148 +#: gtk2_ardour/ardour_ui_ed.cc:199 gtk2_ardour/connection_editor.cc:146 +#: gtk2_ardour/connection_editor.cc:147 msgid "Connections" msgstr "Connexions..." -#: gtk2_ardour/ardour_ui_ed.cc:198 +#: gtk2_ardour/ardour_ui_ed.cc:201 gtk2_ardour/location_ui.cc:577 msgid "Locations" msgstr "Repères et intervalles..." -#: gtk2_ardour/ardour_ui_ed.cc:200 +#: gtk2_ardour/ardour_ui_ed.cc:203 msgid "Big Clock" msgstr "Grande horloge..." -#: gtk2_ardour/ardour_ui_ed.cc:202 +#: gtk2_ardour/ardour_ui_ed.cc:205 msgid "About" msgstr "À propos..." -#: gtk2_ardour/ardour_ui_ed.cc:203 +#: gtk2_ardour/ardour_ui_ed.cc:206 msgid "Colors" msgstr "Couleurs..." -#: gtk2_ardour/ardour_ui_ed.cc:205 +#: gtk2_ardour/ardour_ui_ed.cc:208 msgid "Add Audio Track" msgstr "Ajouter une piste audio" -#: gtk2_ardour/ardour_ui_ed.cc:207 +#: gtk2_ardour/ardour_ui_ed.cc:210 msgid "Add Audio Bus" msgstr "Ajouter un bus audio" -#: gtk2_ardour/ardour_ui_ed.cc:209 +#: gtk2_ardour/ardour_ui_ed.cc:212 msgid "Save" msgstr "Enregistrer" -#: gtk2_ardour/ardour_ui_ed.cc:211 gtk2_ardour/editor_actions.cc:255 +#: gtk2_ardour/ardour_ui_ed.cc:214 gtk2_ardour/editor_actions.cc:258 msgid "Remove Last Capture" -msgstr "Détruire le dernier enregistrement" +msgstr "Détruire le dernier enregistr." -#: gtk2_ardour/ardour_ui_ed.cc:218 +#: gtk2_ardour/ardour_ui_ed.cc:221 msgid "Transport" -msgstr "Déplacement" +msgstr "Commandes" -#: gtk2_ardour/ardour_ui_ed.cc:224 gtk2_ardour/sfdb_ui.cc:60 +#: gtk2_ardour/ardour_ui_ed.cc:227 gtk2_ardour/sfdb_ui.cc:62 msgid "Stop" msgstr "Arrêter" -#: gtk2_ardour/ardour_ui_ed.cc:227 +#: gtk2_ardour/ardour_ui_ed.cc:230 msgid "Roll" msgstr "Roll" -#: gtk2_ardour/ardour_ui_ed.cc:231 +#: gtk2_ardour/ardour_ui_ed.cc:234 msgid "Start/Stop" msgstr "Lecture/Arrêt" -#: gtk2_ardour/ardour_ui_ed.cc:234 +#: gtk2_ardour/ardour_ui_ed.cc:237 msgid "Stop + Forget Capture" -msgstr "Arrêt et abandon" +msgstr "Arrêt avec destruction" -#: gtk2_ardour/ardour_ui_ed.cc:237 +#: gtk2_ardour/ardour_ui_ed.cc:247 +msgid "Transition To Roll" +msgstr "Lecture avant" + +#: gtk2_ardour/ardour_ui_ed.cc:251 +msgid "Transition To Reverse" +msgstr "Lecture arrière" + +#: gtk2_ardour/ardour_ui_ed.cc:256 msgid "Play Loop Range" msgstr "Lire la boucle" -#: gtk2_ardour/ardour_ui_ed.cc:240 +#: gtk2_ardour/ardour_ui_ed.cc:259 msgid "Play Selection" -msgstr "Lire la sélection" +msgstr "Lire la zone de sélection" -#: gtk2_ardour/ardour_ui_ed.cc:244 +#: gtk2_ardour/ardour_ui_ed.cc:263 msgid "Enable Record" msgstr "enregistrement" -#: gtk2_ardour/ardour_ui_ed.cc:247 +#: gtk2_ardour/ardour_ui_ed.cc:266 msgid "Rewind" msgstr "Rembobiner" -#: gtk2_ardour/ardour_ui_ed.cc:250 +#: gtk2_ardour/ardour_ui_ed.cc:269 msgid "Rewind (Slow)" msgstr "Rembobiner (lent)" -#: gtk2_ardour/ardour_ui_ed.cc:253 +#: gtk2_ardour/ardour_ui_ed.cc:272 msgid "Rewind (Fast)" msgstr "Rembobiner (rapide)" -#: gtk2_ardour/ardour_ui_ed.cc:256 +#: gtk2_ardour/ardour_ui_ed.cc:275 msgid "Forward" msgstr "Avance rapide" -#: gtk2_ardour/ardour_ui_ed.cc:259 +#: gtk2_ardour/ardour_ui_ed.cc:278 msgid "Forward (Slow)" msgstr "Avancer (lent)" -#: gtk2_ardour/ardour_ui_ed.cc:262 +#: gtk2_ardour/ardour_ui_ed.cc:281 msgid "Forward (Fast)" msgstr "Avancer (rapide)" -#: gtk2_ardour/ardour_ui_ed.cc:265 +#: gtk2_ardour/ardour_ui_ed.cc:284 msgid "Goto Zero" msgstr "temps zéro" -#: gtk2_ardour/ardour_ui_ed.cc:268 +#: gtk2_ardour/ardour_ui_ed.cc:287 msgid "Goto Start" msgstr "début" -#: gtk2_ardour/ardour_ui_ed.cc:271 +#: gtk2_ardour/ardour_ui_ed.cc:290 msgid "Goto End" msgstr "fin" -#: gtk2_ardour/ardour_ui_ed.cc:287 -msgid "Auto Play" -msgstr "Lecture auto" - -#: gtk2_ardour/ardour_ui_ed.cc:294 +#: gtk2_ardour/ardour_ui_ed.cc:313 msgid "Sync startup to video" msgstr "Sync début avec vidéo" -#: gtk2_ardour/ardour_ui_ed.cc:295 +#: gtk2_ardour/ardour_ui_ed.cc:314 msgid "Time master" -msgstr "Maître d'horloge" +msgstr "Horloge maître" -#: gtk2_ardour/ardour_ui_ed.cc:298 +#: gtk2_ardour/ardour_ui_ed.cc:317 msgid "Toggle Record Enable Track1" msgstr "Bascule Enregistrement piste 1" -#: gtk2_ardour/ardour_ui_ed.cc:300 +#: gtk2_ardour/ardour_ui_ed.cc:319 msgid "Toggle Record Enable Track2" msgstr "Bascule Enregistrement piste 2" -#: gtk2_ardour/ardour_ui_ed.cc:302 +#: gtk2_ardour/ardour_ui_ed.cc:321 msgid "Toggle Record Enable Track3" msgstr "Bascule Enregistrement piste 3" -#: gtk2_ardour/ardour_ui_ed.cc:304 +#: gtk2_ardour/ardour_ui_ed.cc:323 msgid "Toggle Record Enable Track4" msgstr "Bascule Enregistrement piste 4" -#: gtk2_ardour/ardour_ui_ed.cc:306 +#: gtk2_ardour/ardour_ui_ed.cc:325 msgid "Toggle Record Enable Track5" msgstr "Bascule Enregistrement piste 5" -#: gtk2_ardour/ardour_ui_ed.cc:308 +#: gtk2_ardour/ardour_ui_ed.cc:327 msgid "Toggle Record Enable Track6" msgstr "Bascule Enregistrement piste 6" -#: gtk2_ardour/ardour_ui_ed.cc:310 +#: gtk2_ardour/ardour_ui_ed.cc:329 msgid "Toggle Record Enable Track7" msgstr "Bascule Enregistrement piste 7" -#: gtk2_ardour/ardour_ui_ed.cc:312 +#: gtk2_ardour/ardour_ui_ed.cc:331 msgid "Toggle Record Enable Track8" msgstr "Bascule Enregistrement piste 8" -#: gtk2_ardour/ardour_ui_ed.cc:314 +#: gtk2_ardour/ardour_ui_ed.cc:333 msgid "Toggle Record Enable Track9" msgstr "Bascule Enregistrement piste 9" -#: gtk2_ardour/ardour_ui_ed.cc:316 +#: gtk2_ardour/ardour_ui_ed.cc:335 msgid "Toggle Record Enable Track10" msgstr "Bascule Enregistrement piste 10" -#: gtk2_ardour/ardour_ui_ed.cc:318 +#: gtk2_ardour/ardour_ui_ed.cc:337 msgid "Toggle Record Enable Track11" msgstr "Bascule Enregistrement piste 11" -#: gtk2_ardour/ardour_ui_ed.cc:320 +#: gtk2_ardour/ardour_ui_ed.cc:339 msgid "Toggle Record Enable Track12" msgstr "Bascule Enregistrement piste 12" -#: gtk2_ardour/ardour_ui_ed.cc:322 +#: gtk2_ardour/ardour_ui_ed.cc:341 msgid "Toggle Record Enable Track13" msgstr "Bascule Enregistrement piste 13" -#: gtk2_ardour/ardour_ui_ed.cc:324 +#: gtk2_ardour/ardour_ui_ed.cc:343 msgid "Toggle Record Enable Track14" msgstr "Bascule Enregistrement piste 14" -#: gtk2_ardour/ardour_ui_ed.cc:326 +#: gtk2_ardour/ardour_ui_ed.cc:345 msgid "Toggle Record Enable Track15" msgstr "Bascule Enregistrement piste 15" -#: gtk2_ardour/ardour_ui_ed.cc:328 +#: gtk2_ardour/ardour_ui_ed.cc:347 msgid "Toggle Record Enable Track16" msgstr "Bascule Enregistrement piste 16" -#: gtk2_ardour/ardour_ui_ed.cc:330 +#: gtk2_ardour/ardour_ui_ed.cc:349 msgid "Toggle Record Enable Track17" msgstr "Bascule Enregistrement piste 17" -#: gtk2_ardour/ardour_ui_ed.cc:332 +#: gtk2_ardour/ardour_ui_ed.cc:351 msgid "Toggle Record Enable Track18" msgstr "Bascule Enregistrement piste 18" -#: gtk2_ardour/ardour_ui_ed.cc:334 +#: gtk2_ardour/ardour_ui_ed.cc:353 msgid "Toggle Record Enable Track19" msgstr "Bascule Enregistrement piste 19" -#: gtk2_ardour/ardour_ui_ed.cc:336 +#: gtk2_ardour/ardour_ui_ed.cc:355 msgid "Toggle Record Enable Track20" msgstr "Bascule Enregistrement piste 20" -#: gtk2_ardour/ardour_ui_ed.cc:338 +#: gtk2_ardour/ardour_ui_ed.cc:357 msgid "Toggle Record Enable Track21" msgstr "Bascule Enregistrement piste 21" -#: gtk2_ardour/ardour_ui_ed.cc:340 +#: gtk2_ardour/ardour_ui_ed.cc:359 msgid "Toggle Record Enable Track22" msgstr "Bascule Enregistrement piste 22" -#: gtk2_ardour/ardour_ui_ed.cc:342 +#: gtk2_ardour/ardour_ui_ed.cc:361 msgid "Toggle Record Enable Track23" msgstr "Bascule Enregistrement piste 23" -#: gtk2_ardour/ardour_ui_ed.cc:344 +#: gtk2_ardour/ardour_ui_ed.cc:363 msgid "Toggle Record Enable Track24" msgstr "Bascule Enregistrement piste 24" -#: gtk2_ardour/ardour_ui_ed.cc:346 +#: gtk2_ardour/ardour_ui_ed.cc:365 msgid "Toggle Record Enable Track25" msgstr "Bascule Enregistrement piste 25" -#: gtk2_ardour/ardour_ui_ed.cc:348 +#: gtk2_ardour/ardour_ui_ed.cc:367 msgid "Toggle Record Enable Track26" msgstr "Bascule Enregistrement piste 26" -#: gtk2_ardour/ardour_ui_ed.cc:350 +#: gtk2_ardour/ardour_ui_ed.cc:369 msgid "Toggle Record Enable Track27" msgstr "Bascule Enregistrement piste 27" -#: gtk2_ardour/ardour_ui_ed.cc:352 +#: gtk2_ardour/ardour_ui_ed.cc:371 msgid "Toggle Record Enable Track28" msgstr "Bascule Enregistrement piste 28" -#: gtk2_ardour/ardour_ui_ed.cc:354 +#: gtk2_ardour/ardour_ui_ed.cc:373 msgid "Toggle Record Enable Track29" msgstr "Bascule Enregistrement piste 29" -#: gtk2_ardour/ardour_ui_ed.cc:356 +#: gtk2_ardour/ardour_ui_ed.cc:375 msgid "Toggle Record Enable Track30" msgstr "Bascule Enregistrement piste 30" -#: gtk2_ardour/ardour_ui_ed.cc:358 +#: gtk2_ardour/ardour_ui_ed.cc:377 msgid "Toggle Record Enable Track31" msgstr "Bascule Enregistrement piste 31" -#: gtk2_ardour/ardour_ui_ed.cc:360 +#: gtk2_ardour/ardour_ui_ed.cc:379 msgid "Toggle Record Enable Track32" msgstr "Bascule Enregistrement piste 32" -#: gtk2_ardour/ardour_ui_ed.cc:365 +#: gtk2_ardour/ardour_ui_ed.cc:384 msgid "Percentage" msgstr "pourcentage" -#: gtk2_ardour/ardour_ui_ed.cc:366 +#: gtk2_ardour/ardour_ui_ed.cc:385 msgid "Semitones" msgstr "demi-tons" -#: gtk2_ardour/ardour_ui_ed.cc:370 +#: gtk2_ardour/ardour_ui_ed.cc:389 msgid "Send MTC" -msgstr "Envoyer un code temporel MIDI (MTC)" +msgstr "Envoi MTC (Midi Time Code)" -#: gtk2_ardour/ardour_ui_ed.cc:372 +#: gtk2_ardour/ardour_ui_ed.cc:391 msgid "Send MMC" -msgstr "Envoi des commandes de contrôle MIDI (MMC)" +msgstr "Envoi MMC (Midi Machine Control)" -#: gtk2_ardour/ardour_ui_ed.cc:374 +#: gtk2_ardour/ardour_ui_ed.cc:393 msgid "Use MMC" -msgstr "Utiliser les commandes MIDI (MMC)" +msgstr "Réception MMC (Midi Machine Control)" -#: gtk2_ardour/ardour_ui_ed.cc:376 +#: gtk2_ardour/ardour_ui_ed.cc:395 msgid "Send MIDI feedback" msgstr "Envoi des réponses MIDI" -#: gtk2_ardour/ardour_ui_ed.cc:378 -msgid "Use MIDI control" -msgstr "Réception des commandes MIDI (MMC)" +#: gtk2_ardour/ardour_ui_ed.cc:400 +msgid "Use OSC" +msgstr "Utiliser OSC (OpenSound Control)" -#: gtk2_ardour/ardour_ui_ed.cc:381 +#: gtk2_ardour/ardour_ui_ed.cc:405 msgid "Stop plugins with transport" -msgstr "Arrêter les plugins avec le déplacement" +msgstr "Arrêt des plugins lors des déplacements" -#: gtk2_ardour/ardour_ui_ed.cc:382 +#: gtk2_ardour/ardour_ui_ed.cc:406 msgid "Verify remove last capture" -msgstr "Confirmer la destruction du dernier enregistrement" +msgstr "Confirmer la destruction du dernier enregistr." -#: gtk2_ardour/ardour_ui_ed.cc:383 +#: gtk2_ardour/ardour_ui_ed.cc:407 msgid "Stop recording on xrun" -msgstr "Arrêter l'enregistrement en cas de désynchronisation (xrun)" +msgstr "Arrêt d'enregistr. en cas de désynchro (xrun)" -#: gtk2_ardour/ardour_ui_ed.cc:384 +#: gtk2_ardour/ardour_ui_ed.cc:408 msgid "Stop transport at session end" msgstr "Stopper la lecture en fin de session" -#: gtk2_ardour/ardour_ui_ed.cc:385 +#: gtk2_ardour/ardour_ui_ed.cc:409 msgid "-12dB gain reduce ffwd/rewind" msgstr "-12 dB pendant le déplacement rapide" -#: gtk2_ardour/ardour_ui_ed.cc:386 +#: gtk2_ardour/ardour_ui_ed.cc:410 msgid "Rec-enable stays engaged at stop" msgstr "Rester en enregistrement à l'arrêt" -#: gtk2_ardour/ardour_ui_ed.cc:388 +#: gtk2_ardour/ardour_ui_ed.cc:411 +msgid "Region equivalents overlap" +msgstr "Chevauch. des régions équivalentes" + +#: gtk2_ardour/ardour_ui_ed.cc:413 msgid "Do not run plugins while recording" -msgstr "Arrêter les plugins à l'enregistrement" +msgstr "Arrêt des plugins à l'enregistrement" -#: gtk2_ardour/ardour_ui_ed.cc:391 +#: gtk2_ardour/ardour_ui_ed.cc:416 msgid "Latched solo" msgstr "Plusieurs solos possibles" -#: gtk2_ardour/ardour_ui_ed.cc:399 gtk2_ardour/ardour_ui_ed.cc:407 -#: gtk2_ardour/audio_clock.cc:1719 gtk2_ardour/gain_meter.cc:167 -#: gtk2_ardour/ladspa_pluginui.cc:330 gtk2_ardour/ladspa_pluginui.cc:573 -#: gtk2_ardour/panner_ui.cc:87 +#: gtk2_ardour/ardour_ui_ed.cc:418 +msgid "Show solo muting" +msgstr "Le solo montre les sourdines" + +#: gtk2_ardour/ardour_ui_ed.cc:426 gtk2_ardour/ardour_ui_ed.cc:434 +#: gtk2_ardour/audio_clock.cc:1805 msgid "Off" msgstr "(rien)" -#: gtk2_ardour/ardour_ui_ed.cc:400 gtk2_ardour/editor.cc:1327 -#: gtk2_ardour/editor.cc:1344 +#: gtk2_ardour/ardour_ui_ed.cc:427 gtk2_ardour/editor.cc:1246 +#: gtk2_ardour/editor.cc:1263 msgid "Slowest" msgstr "Très lent" -#: gtk2_ardour/ardour_ui_ed.cc:401 gtk2_ardour/editor.cc:1328 -#: gtk2_ardour/editor.cc:1345 +#: gtk2_ardour/ardour_ui_ed.cc:428 gtk2_ardour/editor.cc:1247 +#: gtk2_ardour/editor.cc:1264 msgid "Slow" msgstr "Lent" -#: gtk2_ardour/ardour_ui_ed.cc:402 gtk2_ardour/ardour_ui_ed.cc:409 +#: gtk2_ardour/ardour_ui_ed.cc:429 gtk2_ardour/ardour_ui_ed.cc:436 msgid "Medium" msgstr "Moyen" -#: gtk2_ardour/ardour_ui_ed.cc:403 gtk2_ardour/editor.cc:1329 -#: gtk2_ardour/editor.cc:1346 +#: gtk2_ardour/ardour_ui_ed.cc:430 gtk2_ardour/editor.cc:1248 +#: gtk2_ardour/editor.cc:1265 msgid "Fast" msgstr "Rapide" -#: gtk2_ardour/ardour_ui_ed.cc:404 +#: gtk2_ardour/ardour_ui_ed.cc:431 msgid "Faster" msgstr "Plus rapide" -#: gtk2_ardour/ardour_ui_ed.cc:405 gtk2_ardour/editor.cc:1330 -#: gtk2_ardour/editor.cc:1347 +#: gtk2_ardour/ardour_ui_ed.cc:432 gtk2_ardour/editor.cc:1249 +#: gtk2_ardour/editor.cc:1266 msgid "Fastest" msgstr "Très rapide" -#: gtk2_ardour/ardour_ui_ed.cc:408 gtk2_ardour/editor_actions.cc:57 +#: gtk2_ardour/ardour_ui_ed.cc:435 gtk2_ardour/editor_actions.cc:58 msgid "Short" msgstr "Court" -#: gtk2_ardour/ardour_ui_ed.cc:410 +#: gtk2_ardour/ardour_ui_ed.cc:437 msgid "Long" msgstr "Long" -#: gtk2_ardour/ardour_ui_ed.cc:428 +#: gtk2_ardour/ardour_ui_ed.cc:455 msgid "Hardware monitoring" msgstr "Monitoring matériel" -#: gtk2_ardour/ardour_ui_ed.cc:429 +#: gtk2_ardour/ardour_ui_ed.cc:456 msgid "Software monitoring" msgstr "Monitoring logiciel" -#: gtk2_ardour/ardour_ui_ed.cc:430 +#: gtk2_ardour/ardour_ui_ed.cc:457 msgid "External monitoring" msgstr "Monitoring externe" -#: gtk2_ardour/ardour_ui_ed.cc:434 +#: gtk2_ardour/ardour_ui_ed.cc:461 msgid "Solo in-place" msgstr "Solo en direct" -#: gtk2_ardour/ardour_ui_ed.cc:436 +#: gtk2_ardour/ardour_ui_ed.cc:463 msgid "Solo via bus" msgstr "Solo via le bus" -#: gtk2_ardour/ardour_ui_ed.cc:441 +#: gtk2_ardour/ardour_ui_ed.cc:468 msgid "Auto-connect inputs to physical inputs" -msgstr "relier les pistes aux entrées matérielles" +msgstr "entrées audio → pistes Ardour" -#: gtk2_ardour/ardour_ui_ed.cc:443 +#: gtk2_ardour/ardour_ui_ed.cc:470 msgid "Manually connect inputs" -msgstr "Ne pas connecter les entrées des pistes" +msgstr "Pas d'entrées automatiques" -#: gtk2_ardour/ardour_ui_ed.cc:448 +#: gtk2_ardour/ardour_ui_ed.cc:475 msgid "Auto-connect outputs to physical outs" -msgstr "Relier les pistes aux sorties physiques" +msgstr "Pistes Ardour → sorties physiques" -#: gtk2_ardour/ardour_ui_ed.cc:450 +#: gtk2_ardour/ardour_ui_ed.cc:477 msgid "Auto-connect outputs to master bus" -msgstr "Relier les pistes au bus général" +msgstr "Pistes ardour → bus général" -#: gtk2_ardour/ardour_ui_ed.cc:452 +#: gtk2_ardour/ardour_ui_ed.cc:479 msgid "Manually connect outputs" -msgstr "ne pas relier les sorties des pistes" +msgstr "Pas de sorties automatiques" + +#: gtk2_ardour/ardour_ui_ed.cc:484 +msgid "Remote ID assigned by User" +msgstr "identifiant assigné manuellement" + +#: gtk2_ardour/ardour_ui_ed.cc:486 +msgid "Remote ID follows order of Mixer" +msgstr "identifiant donné par la Console de mixage" -#: gtk2_ardour/ardour_ui_ed.cc:547 gtk2_ardour/ladspa_pluginui.cc:168 +#: gtk2_ardour/ardour_ui_ed.cc:488 +msgid "Remote ID follows order of Editor" +msgstr "identifiant donné par l'Éditeur" + +#: gtk2_ardour/ardour_ui_ed.cc:637 gtk2_ardour/ladspa_pluginui.cc:168 msgid "Controls" msgstr "contrôles" -#: gtk2_ardour/ardour_ui_ed.cc:551 +#: gtk2_ardour/ardour_ui_ed.cc:641 msgid "Feedback" -msgstr "Retour de force" +msgstr "Motorisation" + +#: gtk2_ardour/ardour_ui_ed.cc:725 +msgid "Clock" +msgstr "Horloge" -#: gtk2_ardour/ardour_ui_ed.cc:631 -msgid "ardour: clock" -msgstr "ardour : horloge" +#: gtk2_ardour/ardour_ui_options.cc:112 gtk2_ardour/ardour_ui_options.cc:139 +#: gtk2_ardour/editor_actions.cc:725 gtk2_ardour/editor_actions.cc:953 +#: gtk2_ardour/editor_actions.cc:966 gtk2_ardour/editor_actions.cc:1030 +#: gtk2_ardour/sfdb_ui.cc:536 gtk2_ardour/audio_streamview.cc:173 +msgid "programming error: %1" +msgstr "programming error: %1" -#: gtk2_ardour/ardour_ui_options.cc:205 gtk2_ardour/ardour_ui_options.cc:239 +#: gtk2_ardour/ardour_ui_options.cc:218 msgid "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1" +msgstr "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1" + +#: gtk2_ardour/ardour_ui_options.cc:251 +msgid "" +"programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1" msgstr "" -"erreur du logiciel : modèle de solo inconnu dans ARDOUR_UI::set_solo_model : " -"%1" +"programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1" -#: gtk2_ardour/ardour_ui_options.cc:492 +#: gtk2_ardour/ardour_ui_options.cc:285 +msgid "" +"programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1" +msgstr "" +"programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1" + +#: gtk2_ardour/ardour_ui_options.cc:577 msgid "" "programming error: unknown file header format passed to ARDOUR_UI::" "map_file_data_format: %1" msgstr "" -"erreur du logiciel : format d'en-tête de fichier inconnu transmis à " -"ARDOUR_UI::map_file_data_format : %1" +"programming error: unknown file header format passed to ARDOUR_UI::" +"map_file_data_format: %1" -#: gtk2_ardour/ardour_ui_options.cc:524 +#: gtk2_ardour/ardour_ui_options.cc:609 msgid "" "programming error: unknown file data format passed to ARDOUR_UI::" "map_file_data_format: %1" msgstr "" -"erreur du logiciel : format inconnu de contenu de fichier transmis à " -"ARDOUR_UI::map_file_data_format : %1" +"programming error: unknown file data format passed to ARDOUR_UI::" +"map_file_data_format: %1" -#: gtk2_ardour/ardour_ui_options.cc:828 +#: gtk2_ardour/ardour_ui_options.cc:940 msgid "ST" msgstr "½ton" -#: gtk2_ardour/audio_clock.cc:1715 gtk2_ardour/editor.cc:180 -msgid "SMPTE" -msgstr "SMPTE" +#: gtk2_ardour/audio_clock.cc:1801 gtk2_ardour/editor.cc:181 +msgid "Timecode" +msgstr "Timecode" -#: gtk2_ardour/audio_clock.cc:1716 gtk2_ardour/editor.cc:179 -#: gtk2_ardour/editor_rulers.cc:359 +#: gtk2_ardour/audio_clock.cc:1802 gtk2_ardour/editor.cc:180 +#: gtk2_ardour/editor_rulers.cc:395 msgid "Bars:Beats" msgstr "mesures:temps" -#: gtk2_ardour/audio_clock.cc:1717 +#: gtk2_ardour/audio_clock.cc:1803 msgid "Minutes:Seconds" msgstr "minutes:secondes" -#: gtk2_ardour/audio_clock.cc:1718 +#: gtk2_ardour/audio_clock.cc:1804 msgid "Audio Frames" msgstr "trames audio" -#: gtk2_ardour/audio_clock.cc:1721 +#: gtk2_ardour/audio_clock.cc:1807 msgid "Mode" msgstr "Mode" -#: gtk2_ardour/route_time_axis.cc:86 +#: gtk2_ardour/route_time_axis.cc:87 msgid "m" msgstr "m" -#: gtk2_ardour/route_time_axis.cc:86 +#: gtk2_ardour/route_time_axis.cc:87 msgid "s" msgstr "s" -#: gtk2_ardour/route_time_axis.cc:86 +#: gtk2_ardour/route_time_axis.cc:87 msgid "r" msgstr "r" -#: gtk2_ardour/route_time_axis.cc:90 +#: gtk2_ardour/route_time_axis.cc:91 msgid "g" msgstr "g" -#: gtk2_ardour/route_time_axis.cc:91 +#: gtk2_ardour/route_time_axis.cc:92 msgid "p" msgstr "p" -#: gtk2_ardour/route_time_axis.cc:92 gtk2_ardour/automation_time_axis.cc:33 -#: gtk2_ardour/visual_time_axis.cc:74 +#: gtk2_ardour/route_time_axis.cc:93 gtk2_ardour/automation_time_axis.cc:36 +#: gtk2_ardour/visual_time_axis.cc:73 msgid "h" msgstr "h" -#: gtk2_ardour/route_time_axis.cc:93 +#: gtk2_ardour/route_time_axis.cc:94 msgid "a" msgstr "a" -#: gtk2_ardour/route_time_axis.cc:94 gtk2_ardour/visual_time_axis.cc:73 +#: gtk2_ardour/route_time_axis.cc:95 gtk2_ardour/visual_time_axis.cc:72 msgid "v" msgstr "v" -#: gtk2_ardour/route_time_axis.cc:138 gtk2_ardour/mixer_strip.cc:83 +#: gtk2_ardour/route_time_axis.cc:148 gtk2_ardour/mixer_strip.cc:86 msgid "Record" msgstr "Enregistrement" -#: gtk2_ardour/route_time_axis.cc:146 gtk2_ardour/editor_actions.cc:38 -#: gtk2_ardour/mixer_strip.cc:83 +#: gtk2_ardour/route_time_axis.cc:156 gtk2_ardour/editor_actions.cc:38 +#: gtk2_ardour/mixer_strip.cc:86 gtk2_ardour/mixer_strip.cc:426 msgid "Solo" msgstr "Solo" -#: gtk2_ardour/route_time_axis.cc:147 gtk2_ardour/editor.cc:1629 -#: gtk2_ardour/editor.cc:1728 gtk2_ardour/mixer_strip.cc:83 -#: gtk2_ardour/panner_ui.cc:417 +#: gtk2_ardour/route_time_axis.cc:157 gtk2_ardour/editor.cc:1549 +#: gtk2_ardour/editor.cc:1639 gtk2_ardour/mixer_strip.cc:86 +#: gtk2_ardour/mixer_strip.cc:425 gtk2_ardour/panner_ui.cc:404 msgid "Mute" msgstr "Muet" -#: gtk2_ardour/route_time_axis.cc:148 +#: gtk2_ardour/route_time_axis.cc:158 msgid "Edit Group" msgstr "Groupe" -#: gtk2_ardour/route_time_axis.cc:149 gtk2_ardour/visual_time_axis.cc:92 +#: gtk2_ardour/route_time_axis.cc:159 gtk2_ardour/visual_time_axis.cc:91 msgid "Display Height" msgstr "hauteur de piste" -#: gtk2_ardour/route_time_axis.cc:150 +#: gtk2_ardour/route_time_axis.cc:160 msgid "Playlist" msgstr "Liste de lecture" -#: gtk2_ardour/route_time_axis.cc:151 gtk2_ardour/route_time_axis.cc:428 +#: gtk2_ardour/route_time_axis.cc:161 gtk2_ardour/route_time_axis.cc:414 msgid "Automation" msgstr "Automatisation" -#: gtk2_ardour/route_time_axis.cc:152 gtk2_ardour/visual_time_axis.cc:93 +#: gtk2_ardour/route_time_axis.cc:162 gtk2_ardour/visual_time_axis.cc:92 msgid "Visual options" msgstr "Options d'affichage" -#: gtk2_ardour/route_time_axis.cc:153 gtk2_ardour/visual_time_axis.cc:94 +#: gtk2_ardour/route_time_axis.cc:163 gtk2_ardour/visual_time_axis.cc:93 msgid "Hide this track" msgstr "Cacher la piste" -#: gtk2_ardour/route_time_axis.cc:272 gtk2_ardour/mixer_strip.cc:887 +#: gtk2_ardour/route_time_axis.cc:265 gtk2_ardour/mixer_strip.cc:910 msgid "No group" msgstr "Aucun groupe" -#: gtk2_ardour/route_time_axis.cc:389 +#: gtk2_ardour/route_time_axis.cc:375 msgid "Show all automation" msgstr "afficher toute l'automatisation" -#: gtk2_ardour/route_time_axis.cc:392 +#: gtk2_ardour/route_time_axis.cc:378 msgid "Show existing automation" msgstr "afficher l'automatisation existante" -#: gtk2_ardour/route_time_axis.cc:395 +#: gtk2_ardour/route_time_axis.cc:381 msgid "Hide all automation" msgstr "cacher toute l'automatisation" -#: gtk2_ardour/route_time_axis.cc:398 +#: gtk2_ardour/route_time_axis.cc:384 msgid "Plugins" msgstr "Plugins" -#: gtk2_ardour/route_time_axis.cc:419 gtk2_ardour/automation_time_axis.cc:426 -#: gtk2_ardour/imageframe_time_axis.cc:255 gtk2_ardour/marker_time_axis.cc:211 +#: gtk2_ardour/route_time_axis.cc:405 gtk2_ardour/automation_time_axis.cc:431 +#: gtk2_ardour/imageframe_time_axis.cc:254 gtk2_ardour/marker_time_axis.cc:210 msgid "Height" msgstr "Hauteur" -#: gtk2_ardour/route_time_axis.cc:420 gtk2_ardour/color_manager.cc:41 -#: gtk2_ardour/imageframe_time_axis.cc:256 gtk2_ardour/marker_time_axis.cc:212 +#: gtk2_ardour/route_time_axis.cc:406 gtk2_ardour/color_manager.cc:41 +#: gtk2_ardour/imageframe_time_axis.cc:255 gtk2_ardour/marker_time_axis.cc:211 msgid "Color" msgstr "Couleur" -#: gtk2_ardour/route_time_axis.cc:425 gtk2_ardour/mixer_strip.cc:971 +#: gtk2_ardour/route_time_axis.cc:411 gtk2_ardour/mixer_strip.cc:995 msgid "Remote Control ID" msgstr "Identifiant de contrôleur" -#: gtk2_ardour/route_time_axis.cc:443 +#: gtk2_ardour/route_time_axis.cc:429 msgid "Align with existing material" msgstr "aligner avec le contenu actuel" -#: gtk2_ardour/route_time_axis.cc:449 +#: gtk2_ardour/route_time_axis.cc:435 msgid "Align with capture time" -msgstr "aligner avec l'heure d'enregistrement" +msgstr "aligner avec l'enregistrement" -#: gtk2_ardour/route_time_axis.cc:455 +#: gtk2_ardour/route_time_axis.cc:441 msgid "Alignment" msgstr "Alignement" -#: gtk2_ardour/route_time_axis.cc:462 gtk2_ardour/editor.cc:472 -#: gtk2_ardour/editor_actions.cc:60 gtk2_ardour/mixer_strip.cc:960 -#: gtk2_ardour/mixer_ui.cc:109 +#: gtk2_ardour/route_time_axis.cc:447 +msgid "Normal mode" +msgstr "Mode normal" + +#: gtk2_ardour/route_time_axis.cc:450 +msgid "Tape mode" +msgstr "Mode cassette" + +#: gtk2_ardour/route_time_axis.cc:466 gtk2_ardour/editor.cc:487 +#: gtk2_ardour/editor_actions.cc:61 gtk2_ardour/mixer_strip.cc:984 +#: gtk2_ardour/mixer_ui.cc:108 msgid "Active" msgstr "Actif" -#: gtk2_ardour/route_time_axis.cc:467 gtk2_ardour/editor.cc:1791 -#: gtk2_ardour/editor_actions.cc:320 gtk2_ardour/editor_markers.cc:511 -#: gtk2_ardour/imageframe_time_axis.cc:259 gtk2_ardour/location_ui.cc:58 -#: gtk2_ardour/marker_time_axis.cc:215 gtk2_ardour/mixer_strip.cc:974 +#: gtk2_ardour/route_time_axis.cc:471 gtk2_ardour/editor.cc:1729 +#: gtk2_ardour/editor.cc:3439 gtk2_ardour/editor_actions.cc:328 +#: gtk2_ardour/editor_markers.cc:529 gtk2_ardour/imageframe_time_axis.cc:258 +#: gtk2_ardour/location_ui.cc:58 gtk2_ardour/marker_time_axis.cc:214 +#: gtk2_ardour/mixer_strip.cc:998 msgid "Remove" msgstr "Supprimer" -#: gtk2_ardour/route_time_axis.cc:733 +#: gtk2_ardour/route_time_axis.cc:496 gtk2_ardour/route_time_axis.cc:551 +#: gtk2_ardour/route_time_axis.cc:816 gtk2_ardour/editor_actions.cc:1017 +msgid "programming error: %1 %2" +msgstr "programming error: %1 %2" + +#: gtk2_ardour/route_time_axis.cc:840 msgid "Name for playlist" msgstr "Nom de la liste de lecture" -#: gtk2_ardour/route_time_axis.cc:735 gtk2_ardour/route_time_axis.cc:1136 -#: gtk2_ardour/editor_markers.cc:830 gtk2_ardour/editor_mouse.cc:4723 -#: gtk2_ardour/imageframe_time_axis.cc:248 gtk2_ardour/marker_time_axis.cc:208 -#: gtk2_ardour/mixer_strip.cc:958 gtk2_ardour/redirect_box.cc:752 -#: gtk2_ardour/redirect_box.cc:1080 gtk2_ardour/route_ui.cc:746 -#: gtk2_ardour/visual_time_axis.cc:326 +#: gtk2_ardour/route_time_axis.cc:842 gtk2_ardour/route_time_axis.cc:1305 +#: gtk2_ardour/editor.cc:3444 gtk2_ardour/editor_markers.cc:875 +#: gtk2_ardour/editor_mouse.cc:4752 gtk2_ardour/imageframe_time_axis.cc:247 +#: gtk2_ardour/marker_time_axis.cc:207 gtk2_ardour/mixer_strip.cc:982 +#: gtk2_ardour/redirect_box.cc:825 gtk2_ardour/redirect_box.cc:1155 +#: gtk2_ardour/route_ui.cc:807 gtk2_ardour/visual_time_axis.cc:330 msgid "Rename" msgstr "Renommer" -#: gtk2_ardour/route_time_axis.cc:770 gtk2_ardour/route_time_axis.cc:811 +#: gtk2_ardour/route_time_axis.cc:884 gtk2_ardour/route_time_axis.cc:930 msgid "Name for Playlist" msgstr "Nom de la liste de lecture" -#: gtk2_ardour/route_time_axis.cc:990 gtk2_ardour/visual_time_axis.cc:383 -msgid "a track already exists with that name" -msgstr "ce nom est déjà utilisé pour une autre piste" - -#: gtk2_ardour/route_time_axis.cc:1133 -msgid "Current: %1" -msgstr "Actuelle : %1" +#: gtk2_ardour/route_time_axis.cc:1133 gtk2_ardour/visual_time_axis.cc:340 +#: gtk2_ardour/visual_time_axis.cc:387 +msgid "A track already exists with that name" +msgstr "Une piste portant le même nom existe déjà " -#: gtk2_ardour/route_time_axis.cc:1140 +#: gtk2_ardour/route_time_axis.cc:1309 msgid "New Copy" msgstr "Nouvelle copie" -#: gtk2_ardour/route_time_axis.cc:1142 +#: gtk2_ardour/route_time_axis.cc:1311 msgid "Clear Current" msgstr "Effacer actuelle" -#: gtk2_ardour/route_time_axis.cc:1144 gtk2_ardour/editor.cc:1893 -#: gtk2_ardour/editor.cc:1969 -msgid "Select" -msgstr "Sélectionner" +#: gtk2_ardour/route_time_axis.cc:1314 +msgid "Select from all ..." +msgstr "Choisir..." -#: gtk2_ardour/route_time_axis.cc:1333 gtk2_ardour/editor.cc:1351 -#: gtk2_ardour/selection.cc:642 +#: gtk2_ardour/route_time_axis.cc:1520 gtk2_ardour/editor.cc:1271 +#: gtk2_ardour/selection.cc:661 gtk2_ardour/selection.cc:700 msgid "programming error: " -msgstr "erreur de programmation : " +msgstr "programming error: " -#: gtk2_ardour/audio_time_axis.cc:229 +#: gtk2_ardour/audio_time_axis.cc:213 msgid "Fader" msgstr "Atténuateur" -#: gtk2_ardour/audio_time_axis.cc:234 +#: gtk2_ardour/audio_time_axis.cc:218 msgid "Pan" msgstr "panoramique" -#: gtk2_ardour/audio_time_axis.cc:249 +#: gtk2_ardour/audio_time_axis.cc:233 msgid "Hide all crossfades" msgstr "Cacher les fondus enchaînés" -#: gtk2_ardour/audio_time_axis.cc:250 +#: gtk2_ardour/audio_time_axis.cc:234 msgid "Show all crossfades" msgstr "afficher tous les fondus enchaînés" -#: gtk2_ardour/audio_time_axis.cc:257 +#: gtk2_ardour/audio_time_axis.cc:241 msgid "Show waveforms" msgstr "Afficher les formes d'ondes" -#: gtk2_ardour/audio_time_axis.cc:265 +#: gtk2_ardour/audio_time_axis.cc:251 msgid "Traditional" msgstr "Traditionnel" -#: gtk2_ardour/audio_time_axis.cc:268 +#: gtk2_ardour/audio_time_axis.cc:254 msgid "Rectified" msgstr "Redressé" -#: gtk2_ardour/audio_time_axis.cc:271 +#: gtk2_ardour/audio_time_axis.cc:261 gtk2_ardour/editor.cc:1245 +#: gtk2_ardour/editor.cc:1262 +msgid "Linear" +msgstr "Linéaire" + +#: gtk2_ardour/audio_time_axis.cc:264 +msgid "Logarithmic" +msgstr "logarithmique" + +#: gtk2_ardour/audio_time_axis.cc:281 msgid "Waveform" msgstr "Forme d'onde" -#: gtk2_ardour/audio_time_axis.cc:331 +#: gtk2_ardour/audio_time_axis.cc:353 msgid "gain" msgstr "gain" -#: gtk2_ardour/audio_time_axis.cc:371 +#: gtk2_ardour/audio_time_axis.cc:393 msgid "pan" msgstr "panoramique" -#: gtk2_ardour/automation_line.cc:888 +#: gtk2_ardour/automation_line.cc:794 msgid "automation event move" msgstr "déplacement d'événement d'automatisation" -#: gtk2_ardour/automation_line.cc:890 +#: gtk2_ardour/automation_line.cc:796 msgid "automation range drag" msgstr "déplacement d'intervalle d'automatisation" -#: gtk2_ardour/automation_line.cc:1019 gtk2_ardour/region_gain_line.cc:64 +#: gtk2_ardour/automation_line.cc:1021 gtk2_ardour/region_gain_line.cc:64 msgid "remove control point" msgstr "retrait de point de contrôle" -#: gtk2_ardour/automation_time_axis.cc:34 gtk2_ardour/editor_ops.cc:2848 +#: gtk2_ardour/automation_time_axis.cc:37 gtk2_ardour/editor_ops.cc:2650 msgid "clear" msgstr "effacer" -#: gtk2_ardour/automation_time_axis.cc:79 +#: gtk2_ardour/automation_time_axis.cc:78 msgid "track height" msgstr "hauteur de piste" -#: gtk2_ardour/automation_time_axis.cc:80 +#: gtk2_ardour/automation_time_axis.cc:79 msgid "automation state" msgstr "état de l'automatisation" -#: gtk2_ardour/automation_time_axis.cc:81 +#: gtk2_ardour/automation_time_axis.cc:80 msgid "clear track" msgstr "effacer la piste" -#: gtk2_ardour/automation_time_axis.cc:82 +#: gtk2_ardour/automation_time_axis.cc:81 msgid "hide track" msgstr "cacher la piste" #: gtk2_ardour/automation_time_axis.cc:188 #: gtk2_ardour/automation_time_axis.cc:217 -#: gtk2_ardour/automation_time_axis.cc:437 +#: gtk2_ardour/automation_time_axis.cc:442 gtk2_ardour/gain_meter.cc:159 +#: gtk2_ardour/ladspa_pluginui.cc:332 gtk2_ardour/ladspa_pluginui.cc:576 +#: gtk2_ardour/panner_ui.cc:88 msgid "Manual" msgstr "Manuel" #: gtk2_ardour/automation_time_axis.cc:190 #: gtk2_ardour/automation_time_axis.cc:228 -#: gtk2_ardour/automation_time_axis.cc:441 gtk2_ardour/editor.cc:1870 -#: gtk2_ardour/editor.cc:1951 gtk2_ardour/gain_meter.cc:169 -#: gtk2_ardour/ladspa_pluginui.cc:333 gtk2_ardour/ladspa_pluginui.cc:575 -#: gtk2_ardour/panner_ui.cc:89 gtk2_ardour/sfdb_ui.cc:59 +#: gtk2_ardour/automation_time_axis.cc:446 gtk2_ardour/editor.cc:1807 +#: gtk2_ardour/editor.cc:1888 gtk2_ardour/gain_meter.cc:161 +#: gtk2_ardour/ladspa_pluginui.cc:335 gtk2_ardour/ladspa_pluginui.cc:578 +#: gtk2_ardour/panner_ui.cc:90 gtk2_ardour/sfdb_ui.cc:61 msgid "Play" msgstr "Lire" #: gtk2_ardour/automation_time_axis.cc:192 #: gtk2_ardour/automation_time_axis.cc:239 -#: gtk2_ardour/automation_time_axis.cc:445 gtk2_ardour/gain_meter.cc:171 -#: gtk2_ardour/ladspa_pluginui.cc:336 gtk2_ardour/ladspa_pluginui.cc:577 -#: gtk2_ardour/panner_ui.cc:91 +#: gtk2_ardour/automation_time_axis.cc:450 gtk2_ardour/gain_meter.cc:163 +#: gtk2_ardour/ladspa_pluginui.cc:338 gtk2_ardour/ladspa_pluginui.cc:580 +#: gtk2_ardour/panner_ui.cc:92 msgid "Write" msgstr "écrire" #: gtk2_ardour/automation_time_axis.cc:194 #: gtk2_ardour/automation_time_axis.cc:250 -#: gtk2_ardour/automation_time_axis.cc:449 gtk2_ardour/gain_meter.cc:173 -#: gtk2_ardour/ladspa_pluginui.cc:339 gtk2_ardour/ladspa_pluginui.cc:579 -#: gtk2_ardour/panner_ui.cc:93 +#: gtk2_ardour/automation_time_axis.cc:454 gtk2_ardour/gain_meter.cc:165 +#: gtk2_ardour/ladspa_pluginui.cc:341 gtk2_ardour/ladspa_pluginui.cc:582 +#: gtk2_ardour/panner_ui.cc:94 msgid "Touch" msgstr "Reprise" -#: gtk2_ardour/automation_time_axis.cc:261 gtk2_ardour/ladspa_pluginui.cc:342 +#: gtk2_ardour/automation_time_axis.cc:261 gtk2_ardour/ladspa_pluginui.cc:344 msgid "???" msgstr "???" @@ -1693,16 +1853,16 @@ msgstr "???" msgid "clear automation" msgstr "effacer l'automatisation" -#: gtk2_ardour/automation_time_axis.cc:428 gtk2_ardour/editor_actions.cc:318 +#: gtk2_ardour/automation_time_axis.cc:433 gtk2_ardour/editor_actions.cc:326 msgid "Hide" msgstr "Cacher" -#: gtk2_ardour/automation_time_axis.cc:430 gtk2_ardour/crossfade_edit.cc:79 -#: gtk2_ardour/redirect_box.cc:1072 gtk2_ardour/connection_editor.cc:57 +#: gtk2_ardour/automation_time_axis.cc:435 gtk2_ardour/crossfade_edit.cc:78 +#: gtk2_ardour/redirect_box.cc:1147 gtk2_ardour/connection_editor.cc:56 msgid "Clear" msgstr "Effacer" -#: gtk2_ardour/automation_time_axis.cc:453 +#: gtk2_ardour/automation_time_axis.cc:458 msgid "State" msgstr "État" @@ -1852,728 +2012,669 @@ msgstr "Objet" msgid "cannot open color definition file %1: %2" msgstr "impossible d'ouvrir le fichier de définition de couleurs %1 : %2" -#: gtk2_ardour/crossfade_edit.cc:76 +#: gtk2_ardour/crossfade_edit.cc:75 msgid "ardour: x-fade edit" msgstr "ardour : édition fondu enchaîné" -#: gtk2_ardour/crossfade_edit.cc:80 gtk2_ardour/panner_ui.cc:433 +#: gtk2_ardour/crossfade_edit.cc:79 gtk2_ardour/panner_ui.cc:420 msgid "Reset" msgstr "Réinitialiser" -#: gtk2_ardour/crossfade_edit.cc:81 +#: gtk2_ardour/crossfade_edit.cc:80 msgid "Fade" msgstr "Fondu" -#: gtk2_ardour/crossfade_edit.cc:82 +#: gtk2_ardour/crossfade_edit.cc:81 msgid "Out (dry)" msgstr "descente (brute)" -#: gtk2_ardour/crossfade_edit.cc:83 +#: gtk2_ardour/crossfade_edit.cc:82 msgid "Out" msgstr "descente" -#: gtk2_ardour/crossfade_edit.cc:84 +#: gtk2_ardour/crossfade_edit.cc:83 msgid "In (dry)" msgstr "montée (brute)" -#: gtk2_ardour/crossfade_edit.cc:85 +#: gtk2_ardour/crossfade_edit.cc:84 msgid "In" msgstr "montée" -#: gtk2_ardour/crossfade_edit.cc:87 +#: gtk2_ardour/crossfade_edit.cc:86 msgid "With Pre-roll" msgstr "Avec pré-roll" -#: gtk2_ardour/crossfade_edit.cc:88 +#: gtk2_ardour/crossfade_edit.cc:87 msgid "With Post-roll" msgstr "Avec post-roll" -#: gtk2_ardour/crossfade_edit.cc:96 +#: gtk2_ardour/crossfade_edit.cc:95 msgid "Fade In" msgstr "Type de montée" -#: gtk2_ardour/crossfade_edit.cc:97 +#: gtk2_ardour/crossfade_edit.cc:96 msgid "Fade Out" msgstr "Type de descente" -#: gtk2_ardour/crossfade_edit.cc:173 gtk2_ardour/editor.cc:1704 -#: gtk2_ardour/editor_actions.cc:316 gtk2_ardour/option_editor.cc:129 +#: gtk2_ardour/crossfade_edit.cc:172 gtk2_ardour/editor.cc:1624 +#: gtk2_ardour/editor_actions.cc:324 gtk2_ardour/option_editor.cc:134 msgid "Audition" msgstr "écoute" -#: gtk2_ardour/editor.cc:102 gtk2_ardour/editor.cc:3500 -#: gtk2_ardour/editor_actions.cc:394 gtk2_ardour/export_dialog.cc:78 -#: gtk2_ardour/export_dialog.cc:92 gtk2_ardour/export_dialog.cc:893 -#: gtk2_ardour/export_dialog.cc:1225 gtk2_ardour/route_ui.cc:438 +#: gtk2_ardour/editor.cc:104 gtk2_ardour/editor.cc:2978 +#: gtk2_ardour/editor_actions.cc:402 gtk2_ardour/export_dialog.cc:78 +#: gtk2_ardour/export_dialog.cc:92 gtk2_ardour/export_dialog.cc:895 +#: gtk2_ardour/export_dialog.cc:1227 gtk2_ardour/route_ui.cc:506 msgid "None" msgstr "(aucun)" -#: gtk2_ardour/editor.cc:103 gtk2_ardour/editor.cc:3488 +#: gtk2_ardour/editor.cc:105 gtk2_ardour/editor.cc:2966 msgid "CD Frames" msgstr "trames de CD" -#: gtk2_ardour/editor.cc:104 gtk2_ardour/editor.cc:3490 +#: gtk2_ardour/editor.cc:106 gtk2_ardour/editor.cc:2968 msgid "SMPTE Frames" msgstr "trames SMPTE" -#: gtk2_ardour/editor.cc:105 gtk2_ardour/editor.cc:3492 +#: gtk2_ardour/editor.cc:107 gtk2_ardour/editor.cc:2970 msgid "SMPTE Seconds" msgstr "secondes SMPTE" -#: gtk2_ardour/editor.cc:106 gtk2_ardour/editor.cc:3494 +#: gtk2_ardour/editor.cc:108 gtk2_ardour/editor.cc:2972 msgid "SMPTE Minutes" msgstr "minutes SMPTE" -#: gtk2_ardour/editor.cc:107 gtk2_ardour/editor.cc:3496 +#: gtk2_ardour/editor.cc:109 gtk2_ardour/editor.cc:2974 msgid "Seconds" msgstr "secondes" -#: gtk2_ardour/editor.cc:108 gtk2_ardour/editor.cc:3498 +#: gtk2_ardour/editor.cc:110 gtk2_ardour/editor.cc:2976 msgid "Minutes" msgstr "minutes" -#: gtk2_ardour/editor.cc:109 gtk2_ardour/editor.cc:3470 +#: gtk2_ardour/editor.cc:111 gtk2_ardour/editor.cc:2948 msgid "Beats/32" msgstr "32ème de temps" -#: gtk2_ardour/editor.cc:110 gtk2_ardour/editor.cc:3468 +#: gtk2_ardour/editor.cc:112 gtk2_ardour/editor.cc:2946 msgid "Beats/16" msgstr "16ème de temps" -#: gtk2_ardour/editor.cc:111 gtk2_ardour/editor.cc:3466 +#: gtk2_ardour/editor.cc:113 gtk2_ardour/editor.cc:2944 msgid "Beats/8" msgstr "8ème de temps" -#: gtk2_ardour/editor.cc:112 gtk2_ardour/editor.cc:3464 +#: gtk2_ardour/editor.cc:114 gtk2_ardour/editor.cc:2942 msgid "Beats/4" msgstr "quart de temps" -#: gtk2_ardour/editor.cc:113 gtk2_ardour/editor.cc:3462 +#: gtk2_ardour/editor.cc:115 gtk2_ardour/editor.cc:2940 msgid "Beats/3" msgstr "tiers de temps" -#: gtk2_ardour/editor.cc:114 gtk2_ardour/editor.cc:3472 +#: gtk2_ardour/editor.cc:116 gtk2_ardour/editor.cc:2950 msgid "Beats" msgstr "temps" -#: gtk2_ardour/editor.cc:115 gtk2_ardour/editor.cc:3474 +#: gtk2_ardour/editor.cc:117 gtk2_ardour/editor.cc:2952 msgid "Bars" msgstr "mesures" -#: gtk2_ardour/editor.cc:116 gtk2_ardour/editor.cc:3476 +#: gtk2_ardour/editor.cc:118 gtk2_ardour/editor.cc:2954 msgid "Marks" msgstr "Repères" -#: gtk2_ardour/editor.cc:117 gtk2_ardour/editor.cc:136 -#: gtk2_ardour/editor.cc:3478 +#: gtk2_ardour/editor.cc:119 gtk2_ardour/editor.cc:138 +#: gtk2_ardour/editor.cc:2956 gtk2_ardour/editor.cc:3021 msgid "Edit Cursor" msgstr "curseur d'édition" -#: gtk2_ardour/editor.cc:118 gtk2_ardour/editor.cc:3480 +#: gtk2_ardour/editor.cc:120 gtk2_ardour/editor.cc:2958 msgid "Region starts" msgstr "débuts de régions" -#: gtk2_ardour/editor.cc:119 gtk2_ardour/editor.cc:3482 +#: gtk2_ardour/editor.cc:121 gtk2_ardour/editor.cc:2960 msgid "Region ends" msgstr "fins de régions" -#: gtk2_ardour/editor.cc:120 gtk2_ardour/editor.cc:3486 +#: gtk2_ardour/editor.cc:122 gtk2_ardour/editor.cc:2964 msgid "Region syncs" msgstr "synchro de régions" -#: gtk2_ardour/editor.cc:121 gtk2_ardour/editor.cc:3484 +#: gtk2_ardour/editor.cc:123 gtk2_ardour/editor.cc:2962 msgid "Region bounds" msgstr "limites de régions" -#: gtk2_ardour/editor.cc:126 gtk2_ardour/editor.cc:3517 -msgid "Normal Snap" -msgstr "Aligné sur :" - -#: gtk2_ardour/editor.cc:127 gtk2_ardour/editor.cc:3519 -msgid "Magnetic Snap" -msgstr "Aimanté sur :" +#: gtk2_ardour/editor.cc:129 gtk2_ardour/editor.cc:2996 +#: gtk2_ardour/editor_actions.cc:289 +msgid "Magnetic" +msgstr "Magnétique" -#: gtk2_ardour/editor.cc:132 gtk2_ardour/export_dialog.cc:140 -#: gtk2_ardour/export_dialog.cc:156 gtk2_ardour/export_dialog.cc:1068 -#: gtk2_ardour/export_dialog.cc:1072 +#: gtk2_ardour/editor.cc:134 gtk2_ardour/editor.cc:3013 +#: gtk2_ardour/export_dialog.cc:142 gtk2_ardour/export_dialog.cc:158 +#: gtk2_ardour/export_dialog.cc:1070 gtk2_ardour/export_dialog.cc:1074 msgid "Left" msgstr "gauche" -#: gtk2_ardour/editor.cc:133 gtk2_ardour/export_dialog.cc:141 -#: gtk2_ardour/export_dialog.cc:157 +#: gtk2_ardour/editor.cc:135 gtk2_ardour/editor.cc:3015 +#: gtk2_ardour/export_dialog.cc:143 gtk2_ardour/export_dialog.cc:159 msgid "Right" msgstr "droite" -#: gtk2_ardour/editor.cc:134 +#: gtk2_ardour/editor.cc:136 gtk2_ardour/editor.cc:3017 msgid "Center" msgstr "centre" -#: gtk2_ardour/editor.cc:135 +#: gtk2_ardour/editor.cc:137 gtk2_ardour/editor.cc:3019 msgid "Playhead" msgstr "tête de lecture" -#: gtk2_ardour/editor.cc:178 +#: gtk2_ardour/editor.cc:179 msgid "Mins:Secs" msgstr "min:s" -#: gtk2_ardour/editor.cc:181 gtk2_ardour/editor_rulers.cc:353 +#: gtk2_ardour/editor.cc:182 gtk2_ardour/editor_rulers.cc:389 msgid "Frames" msgstr "trames" -#: gtk2_ardour/editor.cc:182 gtk2_ardour/editor_rulers.cc:373 +#: gtk2_ardour/editor.cc:183 gtk2_ardour/editor_rulers.cc:409 msgid "Tempo" msgstr "tempo" -#: gtk2_ardour/editor.cc:183 gtk2_ardour/editor_rulers.cc:367 +#: gtk2_ardour/editor.cc:184 gtk2_ardour/editor_rulers.cc:403 msgid "Meter" msgstr "mesure" -#: gtk2_ardour/editor.cc:184 gtk2_ardour/editor_rulers.cc:379 +#: gtk2_ardour/editor.cc:185 gtk2_ardour/editor_rulers.cc:415 msgid "Location Markers" msgstr "repères" -#: gtk2_ardour/editor.cc:185 gtk2_ardour/editor_rulers.cc:385 +#: gtk2_ardour/editor.cc:186 gtk2_ardour/editor_rulers.cc:421 msgid "Range Markers" msgstr "intervalles" -#: gtk2_ardour/editor.cc:186 gtk2_ardour/editor_rulers.cc:391 +#: gtk2_ardour/editor.cc:187 gtk2_ardour/editor_rulers.cc:427 msgid "Loop/Punch Ranges" msgstr "boucle et punch-in/out" -#: gtk2_ardour/editor.cc:204 +#: gtk2_ardour/editor.cc:205 msgid "mode" msgstr "mode" -#: gtk2_ardour/editor.cc:205 +#: gtk2_ardour/editor.cc:206 msgid "automation" msgstr "automatisation" -#: gtk2_ardour/editor.cc:447 gtk2_ardour/editor.cc:473 -#: gtk2_ardour/editor_actions.cc:62 gtk2_ardour/mixer_ui.cc:84 -#: gtk2_ardour/mixer_ui.cc:110 gtk2_ardour/analysis_window.cc:64 -msgid "Visible" -msgstr "visible" +#: gtk2_ardour/editor.cc:462 gtk2_ardour/editor.cc:488 +#: gtk2_ardour/editor_actions.cc:63 gtk2_ardour/mixer_ui.cc:83 +#: gtk2_ardour/mixer_ui.cc:109 gtk2_ardour/analysis_window.cc:63 +msgid "Show" +msgstr "Afficher" -#: gtk2_ardour/editor.cc:448 gtk2_ardour/editor.cc:471 +#: gtk2_ardour/editor.cc:463 gtk2_ardour/editor.cc:486 msgid "Name" msgstr "Nom" -#: gtk2_ardour/editor.cc:547 gtk2_ardour/editor.cc:614 +#: gtk2_ardour/editor.cc:561 gtk2_ardour/editor.cc:628 msgid "Regions" msgstr "Régions" -#: gtk2_ardour/editor.cc:587 gtk2_ardour/editor.cc:626 +#: gtk2_ardour/editor.cc:600 gtk2_ardour/editor.cc:640 msgid "Chunks" msgstr "Fragments" -#: gtk2_ardour/editor.cc:617 +#: gtk2_ardour/editor.cc:631 msgid "Tracks/Busses" msgstr "Pistes / Bus" -#: gtk2_ardour/editor.cc:620 +#: gtk2_ardour/editor.cc:634 msgid "Snapshots" msgstr "Clichés" -#: gtk2_ardour/editor.cc:623 +#: gtk2_ardour/editor.cc:637 msgid "Edit Groups" msgstr "Groupes" -#: gtk2_ardour/editor.cc:672 +#: gtk2_ardour/editor.cc:688 msgid "Nudge Region/Selection Forwards" msgstr "Décaler vers la droite (région ou sélection)" -#: gtk2_ardour/editor.cc:673 +#: gtk2_ardour/editor.cc:689 msgid "Nudge Region/Selection Backwards" msgstr "Décaler vers la gauche (région ou sélection)" -#: gtk2_ardour/editor.cc:680 gtk2_ardour/editor_mixer.cc:296 -msgid "ardour: editor" -msgstr "Ardour : éditeur" - -#: gtk2_ardour/editor.cc:681 -msgid "ardour_editor" -msgstr "ardour_editor" - -#: gtk2_ardour/editor.cc:1086 -msgid "ardour: editor: " -msgstr "Ardour : éditeur : " +#: gtk2_ardour/editor.cc:719 gtk2_ardour/editor_mixer.cc:352 +msgid "Editor" +msgstr "Éditeur" -#: gtk2_ardour/editor.cc:1158 gtk2_ardour/editor.cc:1167 -#: gtk2_ardour/editor_markers.cc:874 +#: gtk2_ardour/editor.cc:1095 gtk2_ardour/editor.cc:1103 +#: gtk2_ardour/editor_markers.cc:919 msgid "Loop" msgstr "Boucle" -#: gtk2_ardour/editor.cc:1172 gtk2_ardour/editor.cc:1181 -#: gtk2_ardour/editor_markers.cc:902 +#: gtk2_ardour/editor.cc:1108 gtk2_ardour/editor.cc:1116 +#: gtk2_ardour/editor_markers.cc:947 msgid "Punch" msgstr "Punch in/out" -#: gtk2_ardour/editor.cc:1306 gtk2_ardour/editor_mouse.cc:1748 +#: gtk2_ardour/editor.cc:1226 gtk2_ardour/editor_mouse.cc:1691 msgid "programming error: fade in canvas item has no regionview data pointer!" -msgstr "" -"erreur de programmation : fade in canvas item has no regionview data pointer!" +msgstr "programming error: fade in canvas item has no regionview data pointer!" -#: gtk2_ardour/editor.cc:1319 gtk2_ardour/editor.cc:1336 -#: gtk2_ardour/redirect_box.cc:1088 +#: gtk2_ardour/editor.cc:1238 gtk2_ardour/editor.cc:1255 +#: gtk2_ardour/redirect_box.cc:1163 msgid "Deactivate" msgstr "Désactiver" -#: gtk2_ardour/editor.cc:1321 gtk2_ardour/editor.cc:1338 -#: gtk2_ardour/redirect_box.cc:1086 +#: gtk2_ardour/editor.cc:1240 gtk2_ardour/editor.cc:1257 +#: gtk2_ardour/redirect_box.cc:1161 msgid "Activate" msgstr "Activer" -#: gtk2_ardour/editor.cc:1326 gtk2_ardour/editor.cc:1343 -msgid "Linear" -msgstr "Linéaire" - -#: gtk2_ardour/editor.cc:1458 gtk2_ardour/editor.cc:1466 +#: gtk2_ardour/editor.cc:1378 gtk2_ardour/editor.cc:1386 +#: gtk2_ardour/editor_ops.cc:2543 msgid "Freeze" msgstr "Bloquer" -#: gtk2_ardour/editor.cc:1462 +#: gtk2_ardour/editor.cc:1382 msgid "Unfreeze" msgstr "Débloquer" -#: gtk2_ardour/editor.cc:1631 gtk2_ardour/editor.cc:1726 +#: gtk2_ardour/editor.cc:1551 msgid "Unmute" msgstr "Réactiver" -#: gtk2_ardour/editor.cc:1635 gtk2_ardour/editor.cc:1915 -#: gtk2_ardour/editor_actions.cc:28 gtk2_ardour/editor_markers.cc:510 -#: gtk2_ardour/mixer_strip.cc:496 gtk2_ardour/mixer_strip.cc:559 -#: gtk2_ardour/redirect_box.cc:1094 +#: gtk2_ardour/editor.cc:1555 gtk2_ardour/editor.cc:1852 +#: gtk2_ardour/editor_actions.cc:28 gtk2_ardour/editor_markers.cc:528 +#: gtk2_ardour/mixer_strip.cc:508 gtk2_ardour/mixer_strip.cc:570 +#: gtk2_ardour/redirect_box.cc:1169 msgid "Edit" msgstr "Édition" -#: gtk2_ardour/editor.cc:1640 +#: gtk2_ardour/editor.cc:1560 msgid "Convert to short" msgstr "Convertir en fondu rapide" -#: gtk2_ardour/editor.cc:1642 +#: gtk2_ardour/editor.cc:1562 msgid "Convert to full" msgstr "Convertir en fondu long" -#: gtk2_ardour/editor.cc:1653 +#: gtk2_ardour/editor.cc:1573 msgid "Crossfade" msgstr "Fondu enchaîné" -#: gtk2_ardour/editor.cc:1696 +#: gtk2_ardour/editor.cc:1616 msgid "Popup region editor" msgstr "Éditeur de région..." -#: gtk2_ardour/editor.cc:1697 +#: gtk2_ardour/editor.cc:1617 msgid "Raise to top layer" msgstr "Monter tout en haut" -#: gtk2_ardour/editor.cc:1698 +#: gtk2_ardour/editor.cc:1618 msgid "Lower to bottom layer" msgstr "Descendre tout en bas" -#: gtk2_ardour/editor.cc:1700 +#: gtk2_ardour/editor.cc:1620 msgid "Define sync point" msgstr "Placer le point de synchro" -#: gtk2_ardour/editor.cc:1701 +#: gtk2_ardour/editor.cc:1621 msgid "Remove sync point" msgstr "Enlever le point de synchro" -#: gtk2_ardour/editor.cc:1706 +#: gtk2_ardour/editor.cc:1626 msgid "Bounce" msgstr "Copier vers un fichier audio (bounce)" -#: gtk2_ardour/editor.cc:1709 +#: gtk2_ardour/editor.cc:1629 msgid "Analyze region" msgstr "Analyse la région" -#: gtk2_ardour/editor.cc:1721 +#: gtk2_ardour/editor.cc:1634 msgid "Lock" msgstr "Verrouiller" -#: gtk2_ardour/editor.cc:1722 -msgid "Unlock" -msgstr "Déverrouiller" +#: gtk2_ardour/editor.cc:1644 +msgid "Opaque" +msgstr "Opaque" -#: gtk2_ardour/editor.cc:1732 +#: gtk2_ardour/editor.cc:1650 msgid "Original position" msgstr "Remettre à sa position d'origine" -#: gtk2_ardour/editor.cc:1738 -msgid "Toggle envelope visibility" -msgstr "Enveloppe (in)visible" +#: gtk2_ardour/editor.cc:1662 +msgid "Reset Envelope" +msgstr "Réinitialiser l'enveloppe" + +#: gtk2_ardour/editor.cc:1664 +msgid "Envelope Visible" +msgstr "Enveloppe Visible" -#: gtk2_ardour/editor.cc:1739 -msgid "Toggle envelope active" -msgstr "Enveloppe (in)active" +#: gtk2_ardour/editor.cc:1671 +msgid "Envelope Active" +msgstr "Enveloppe Active" -#: gtk2_ardour/editor.cc:1743 +#: gtk2_ardour/editor.cc:1681 msgid "DeNormalize" msgstr "Dénormaliser" -#: gtk2_ardour/editor.cc:1745 +#: gtk2_ardour/editor.cc:1683 msgid "Normalize" msgstr "Normaliser" -#: gtk2_ardour/editor.cc:1748 +#: gtk2_ardour/editor.cc:1686 msgid "Reverse" -msgstr "Inversion temporelle" +msgstr "Inverser" -#: gtk2_ardour/editor.cc:1754 +#: gtk2_ardour/editor.cc:1692 gtk2_ardour/editor.cc:1774 msgid "Add Range Markers" msgstr "Ajoute des repères d'intervalle" -#: gtk2_ardour/editor.cc:1755 -msgid "Set Range" -msgstr "Définit la zone de sélection" +#: gtk2_ardour/editor.cc:1693 +msgid "Set Range Selection" +msgstr "zone de sélection depuis la région" -#: gtk2_ardour/editor.cc:1764 +#: gtk2_ardour/editor.cc:1702 msgid "Nudge fwd" msgstr "Décaler à droite" -#: gtk2_ardour/editor.cc:1765 +#: gtk2_ardour/editor.cc:1703 msgid "Nudge bwd" msgstr "Décaler à gauche" -#: gtk2_ardour/editor.cc:1766 +#: gtk2_ardour/editor.cc:1704 msgid "Nudge fwd by capture offset" msgstr "Décaler à droite de l'offset de capture" -#: gtk2_ardour/editor.cc:1767 +#: gtk2_ardour/editor.cc:1705 msgid "Nudge bwd by capture offset" msgstr "Décaler à gauche de l'offset de capture" -#: gtk2_ardour/editor.cc:1769 gtk2_ardour/editor.cc:1935 -#: gtk2_ardour/editor.cc:1991 +#: gtk2_ardour/editor.cc:1707 gtk2_ardour/editor.cc:1872 +#: gtk2_ardour/editor.cc:1928 msgid "Nudge" msgstr "décaler" -#: gtk2_ardour/editor.cc:1776 +#: gtk2_ardour/editor.cc:1714 msgid "Start to edit cursor" msgstr "début au curseur d'édition" -#: gtk2_ardour/editor.cc:1777 +#: gtk2_ardour/editor.cc:1715 msgid "Edit cursor to end" msgstr "fin au curseur d'édition" -#: gtk2_ardour/editor.cc:1779 gtk2_ardour/gain_meter.cc:176 -#: gtk2_ardour/gain_meter.cc:815 gtk2_ardour/panner_ui.cc:96 -#: gtk2_ardour/panner_ui.cc:793 +#: gtk2_ardour/editor.cc:1717 gtk2_ardour/gain_meter.cc:168 +#: gtk2_ardour/gain_meter.cc:880 gtk2_ardour/panner_ui.cc:97 +#: gtk2_ardour/panner_ui.cc:780 msgid "Trim" msgstr "Raccourcir" -#: gtk2_ardour/editor.cc:1782 +#: gtk2_ardour/editor.cc:1720 msgid "Split" msgstr "Séparer" -#: gtk2_ardour/editor.cc:1785 +#: gtk2_ardour/editor.cc:1723 msgid "Make mono regions" msgstr "Créer des régions mono" -#: gtk2_ardour/editor.cc:1788 +#: gtk2_ardour/editor.cc:1726 msgid "Duplicate" msgstr "Dupliquer" -#: gtk2_ardour/editor.cc:1789 +#: gtk2_ardour/editor.cc:1727 msgid "Fill Track" msgstr "Remplir la piste" -#: gtk2_ardour/editor.cc:1793 -msgid "Destroy" -msgstr "Détruire" - -#: gtk2_ardour/editor.cc:1823 +#: gtk2_ardour/editor.cc:1759 msgid "Play range" msgstr "Lire" -#: gtk2_ardour/editor.cc:1824 +#: gtk2_ardour/editor.cc:1760 msgid "Loop range" msgstr "Lire en boucle" -#: gtk2_ardour/editor.cc:1828 +#: gtk2_ardour/editor.cc:1764 msgid "Analyze range" msgstr "Analyse la zone de sélection" -#: gtk2_ardour/editor.cc:1832 +#: gtk2_ardour/editor.cc:1768 msgid "Separate range to track" msgstr "Découper la région" -#: gtk2_ardour/editor.cc:1833 +#: gtk2_ardour/editor.cc:1769 msgid "Separate range to region list" msgstr "Copier vers la liste des régions" -#: gtk2_ardour/editor.cc:1836 +#: gtk2_ardour/editor.cc:1772 msgid "Select all in range" msgstr "Sélectionner tout dans la zone" -#: gtk2_ardour/editor.cc:1838 gtk2_ardour/editor.cc:1883 +#: gtk2_ardour/editor.cc:1775 gtk2_ardour/editor.cc:1820 msgid "Set range to loop range" msgstr "Créer l'intervalle de boucle" -#: gtk2_ardour/editor.cc:1839 gtk2_ardour/editor.cc:1884 +#: gtk2_ardour/editor.cc:1776 gtk2_ardour/editor.cc:1821 msgid "Set range to punch range" msgstr "Créer l'intervalle de punch in/out" -#: gtk2_ardour/editor.cc:1841 +#: gtk2_ardour/editor.cc:1778 msgid "Crop region to range" msgstr "Raccourcir la région à la zone" -#: gtk2_ardour/editor.cc:1842 +#: gtk2_ardour/editor.cc:1779 msgid "Fill range with region" msgstr "Remplir avec la région choisie dans la liste" -#: gtk2_ardour/editor.cc:1843 +#: gtk2_ardour/editor.cc:1780 msgid "Duplicate range" msgstr "Dupliquer" -#: gtk2_ardour/editor.cc:1844 +#: gtk2_ardour/editor.cc:1781 msgid "Create chunk from range" msgstr "Nouveau fragment depuis la sélection" -#: gtk2_ardour/editor.cc:1846 +#: gtk2_ardour/editor.cc:1783 msgid "Bounce range" msgstr "Copier la sélection vers un fichier audio (bounce)" -#: gtk2_ardour/editor.cc:1847 +#: gtk2_ardour/editor.cc:1784 msgid "Export range" msgstr "Exporter" -#: gtk2_ardour/editor.cc:1849 +#: gtk2_ardour/editor.cc:1786 msgid "Range" msgstr "Zone de sélection" -#: gtk2_ardour/editor.cc:1864 gtk2_ardour/editor.cc:1949 +#: gtk2_ardour/editor.cc:1801 gtk2_ardour/editor.cc:1886 msgid "Play from edit cursor" msgstr "Lire depuis le curseur d'édition" -#: gtk2_ardour/editor.cc:1865 gtk2_ardour/editor.cc:1950 +#: gtk2_ardour/editor.cc:1802 gtk2_ardour/editor.cc:1887 msgid "Play from start" msgstr "Lire depuis le début" -#: gtk2_ardour/editor.cc:1866 +#: gtk2_ardour/editor.cc:1803 msgid "Play region" msgstr "Lire la région" -#: gtk2_ardour/editor.cc:1868 +#: gtk2_ardour/editor.cc:1805 msgid "Loop Region" msgstr "Lire la région en boucle" -#: gtk2_ardour/editor.cc:1878 gtk2_ardour/editor.cc:1959 +#: gtk2_ardour/editor.cc:1815 gtk2_ardour/editor.cc:1896 msgid "Select All in track" msgstr "Sélectionner tout dans la piste" -#: gtk2_ardour/editor.cc:1879 gtk2_ardour/editor.cc:1960 -#: gtk2_ardour/redirect_box.cc:1082 +#: gtk2_ardour/editor.cc:1816 gtk2_ardour/editor.cc:1897 +#: gtk2_ardour/redirect_box.cc:1157 msgid "Select All" msgstr "Sélectionner tout" -#: gtk2_ardour/editor.cc:1880 gtk2_ardour/editor.cc:1961 +#: gtk2_ardour/editor.cc:1817 gtk2_ardour/editor.cc:1898 msgid "Invert selection in track" msgstr "Inverser la sélection dans la piste" -#: gtk2_ardour/editor.cc:1881 gtk2_ardour/editor.cc:1962 +#: gtk2_ardour/editor.cc:1818 gtk2_ardour/editor.cc:1899 msgid "Invert selection" msgstr "inverser la sélection" -#: gtk2_ardour/editor.cc:1886 gtk2_ardour/editor.cc:1964 +#: gtk2_ardour/editor.cc:1823 gtk2_ardour/editor.cc:1901 msgid "Select all after edit cursor" msgstr "Sélectionner tout après le curseur d'édition" -#: gtk2_ardour/editor.cc:1887 gtk2_ardour/editor.cc:1965 +#: gtk2_ardour/editor.cc:1824 gtk2_ardour/editor.cc:1902 msgid "Select all before edit cursor" msgstr "sélectionner tout avant le curseur d'édition" -#: gtk2_ardour/editor.cc:1888 gtk2_ardour/editor.cc:1966 +#: gtk2_ardour/editor.cc:1825 gtk2_ardour/editor.cc:1903 msgid "Select all after playhead" msgstr "Sélectionner tout après la tête de lecture" -#: gtk2_ardour/editor.cc:1889 gtk2_ardour/editor.cc:1967 +#: gtk2_ardour/editor.cc:1826 gtk2_ardour/editor.cc:1904 msgid "Select all before playhead" msgstr "Sélectionner tout avant la tête de lecture" -#: gtk2_ardour/editor.cc:1890 +#: gtk2_ardour/editor.cc:1827 msgid "Select all between cursors" msgstr "Sélectionner tout entre les 2 curseurs" -#: gtk2_ardour/editor.cc:1901 gtk2_ardour/editor.cc:1977 -#: gtk2_ardour/editor.cc:3312 gtk2_ardour/editor_actions.cc:214 -#: gtk2_ardour/redirect_box.cc:1075 +#: gtk2_ardour/editor.cc:1830 gtk2_ardour/editor.cc:1906 +msgid "Select" +msgstr "Sélectionner" + +#: gtk2_ardour/editor.cc:1838 gtk2_ardour/editor.cc:1914 +#: gtk2_ardour/editor_actions.cc:217 gtk2_ardour/redirect_box.cc:1150 msgid "Cut" msgstr "Couper" -#: gtk2_ardour/editor.cc:1902 gtk2_ardour/editor.cc:1978 -#: gtk2_ardour/editor.cc:3314 gtk2_ardour/editor_actions.cc:219 -#: gtk2_ardour/redirect_box.cc:1077 +#: gtk2_ardour/editor.cc:1839 gtk2_ardour/editor.cc:1915 +#: gtk2_ardour/editor_actions.cc:222 gtk2_ardour/redirect_box.cc:1152 msgid "Copy" msgstr "Copier" -#: gtk2_ardour/editor.cc:1903 +#: gtk2_ardour/editor.cc:1840 msgid "Paste at edit cursor" msgstr "Coller au curseur d'édition" -#: gtk2_ardour/editor.cc:1904 +#: gtk2_ardour/editor.cc:1841 msgid "Paste at mouse" msgstr "Coller au pointeur de la souris" -#: gtk2_ardour/editor.cc:1908 gtk2_ardour/editor.cc:3319 +#: gtk2_ardour/editor.cc:1845 msgid "Align" msgstr "Aligner" -#: gtk2_ardour/editor.cc:1909 gtk2_ardour/editor.cc:3321 +#: gtk2_ardour/editor.cc:1846 msgid "Align Relative" msgstr "Aligner relativement" -#: gtk2_ardour/editor.cc:1913 +#: gtk2_ardour/editor.cc:1850 msgid "Insert chunk" msgstr "Insérer un fragment" -#: gtk2_ardour/editor.cc:1920 +#: gtk2_ardour/editor.cc:1857 msgid "Insert Selected Region" msgstr "Insérer la région sélectionnée" -#: gtk2_ardour/editor.cc:1921 +#: gtk2_ardour/editor.cc:1858 msgid "Insert Existing Audio" msgstr "Insérer des fichiers audio externes" -#: gtk2_ardour/editor.cc:1930 gtk2_ardour/editor.cc:1986 +#: gtk2_ardour/editor.cc:1867 gtk2_ardour/editor.cc:1923 msgid "Nudge entire track fwd" msgstr "Décaler toute la piste à droite" -#: gtk2_ardour/editor.cc:1931 gtk2_ardour/editor.cc:1987 +#: gtk2_ardour/editor.cc:1868 gtk2_ardour/editor.cc:1924 msgid "Nudge track after edit cursor fwd" msgstr "Décaler à droite les régions après le curseur" -#: gtk2_ardour/editor.cc:1932 gtk2_ardour/editor.cc:1988 +#: gtk2_ardour/editor.cc:1869 gtk2_ardour/editor.cc:1925 msgid "Nudge entire track bwd" msgstr "Décaler toute la piste à gauche" -#: gtk2_ardour/editor.cc:1933 gtk2_ardour/editor.cc:1989 +#: gtk2_ardour/editor.cc:1870 gtk2_ardour/editor.cc:1926 msgid "Nudge track after edit cursor bwd" msgstr "Décaler à gauche les régions après le curseur" -#: gtk2_ardour/editor.cc:1979 gtk2_ardour/editor.cc:3316 -#: gtk2_ardour/editor_actions.cc:221 gtk2_ardour/redirect_box.cc:1079 +#: gtk2_ardour/editor.cc:1916 gtk2_ardour/editor_actions.cc:224 +#: gtk2_ardour/redirect_box.cc:1154 msgid "Paste" msgstr "Coller" -#: gtk2_ardour/editor.cc:2535 +#: gtk2_ardour/editor.cc:2501 msgid "Select/Move Objects" msgstr "pour sélectionner ou déplacer des objets" -#: gtk2_ardour/editor.cc:2536 +#: gtk2_ardour/editor.cc:2502 msgid "Select/Move Ranges" -msgstr "pour sélectionner ou déplacer des régions" +msgstr "pour travailler sur la zone de sélection" -#: gtk2_ardour/editor.cc:2537 +#: gtk2_ardour/editor.cc:2503 msgid "Draw Gain Automation" -msgstr "pour dessiner l'automatisation du gain" +msgstr "pour dessiner la courbe de gain" -#: gtk2_ardour/editor.cc:2538 +#: gtk2_ardour/editor.cc:2504 msgid "Select Zoom Range" msgstr "pour sélectionner l'intervalle de zoom" -#: gtk2_ardour/editor.cc:2539 +#: gtk2_ardour/editor.cc:2505 msgid "Stretch/Shrink Regions" msgstr "pour étirer ou contracter des régions" -#: gtk2_ardour/editor.cc:2540 +#: gtk2_ardour/editor.cc:2506 msgid "Listen to Specific Regions" msgstr "pour écouter les régions une par une" -#: gtk2_ardour/editor.cc:2569 gtk2_ardour/editor_actions.cc:142 +#: gtk2_ardour/editor.cc:2536 gtk2_ardour/editor_actions.cc:143 msgid "Zoom In" msgstr "zoom avant" -#: gtk2_ardour/editor.cc:2574 gtk2_ardour/editor_actions.cc:140 +#: gtk2_ardour/editor.cc:2542 gtk2_ardour/editor_actions.cc:141 msgid "Zoom Out" msgstr "zoom arrière" -#: gtk2_ardour/editor.cc:2579 gtk2_ardour/editor_actions.cc:144 +#: gtk2_ardour/editor.cc:2548 gtk2_ardour/editor_actions.cc:145 msgid "Zoom to Session" msgstr "montrer toute la session" -#: gtk2_ardour/editor.cc:2586 -msgid "" -"Current Zoom Range\n" -"(Width of visible area)" -msgstr "durée de la zone visible" - -#: gtk2_ardour/editor.cc:2592 +#: gtk2_ardour/editor.cc:2554 msgid "Zoom focus" msgstr "zoomer vers" -#: gtk2_ardour/editor.cc:2606 +#: gtk2_ardour/editor.cc:2570 msgid "Unit to snap cursors and ranges to" msgstr "Unité d'alignement des curseurs et zones" -#: gtk2_ardour/editor.cc:3191 gtk2_ardour/editor.cc:3231 -msgid "set selected regions" -msgstr "sélection de régions" - -#: gtk2_ardour/editor.cc:3287 gtk2_ardour/editor_actions.cc:204 +#: gtk2_ardour/editor.cc:2818 gtk2_ardour/editor_actions.cc:207 msgid "Undo" msgstr "Annuler" -#: gtk2_ardour/editor.cc:3289 +#: gtk2_ardour/editor.cc:2820 msgid "Undo (%1)" msgstr "Annuler (%1)" -#: gtk2_ardour/editor.cc:3299 gtk2_ardour/editor_actions.cc:206 +#: gtk2_ardour/editor.cc:2827 gtk2_ardour/editor_actions.cc:209 msgid "Redo" msgstr "Refaire" -#: gtk2_ardour/editor.cc:3301 +#: gtk2_ardour/editor.cc:2829 msgid "Redo (%1)" msgstr "Refaire (%1)" -#: gtk2_ardour/editor.cc:3335 -msgid "... as new track" -msgstr "...comme nouvelle piste" - -#: gtk2_ardour/editor.cc:3336 -msgid "... as new region" -msgstr "...comme nouvelle région" - -#: gtk2_ardour/editor.cc:3338 -msgid "Import audio (copy)" -msgstr "Importer un fichier audio (par copie)" - -#: gtk2_ardour/editor.cc:3341 -msgid "Remove last capture" -msgstr "Enlever la dernière capture" - -#: gtk2_ardour/editor.cc:3365 +#: gtk2_ardour/editor.cc:2843 msgid "Duplicate how many times?" msgstr "Dupliquer combien de fois ?" -#: gtk2_ardour/editor.cc:3443 +#: gtk2_ardour/editor.cc:2925 msgid "Splice Edit" -msgstr "régions adjacentes" +msgstr "adjacent" -#: gtk2_ardour/editor.cc:3445 +#: gtk2_ardour/editor.cc:2927 msgid "Slide Edit" -msgstr "régions superposables" +msgstr "superposable" -#: gtk2_ardour/editor.cc:3536 -msgid "Focus Left" -msgstr "à gauche" - -#: gtk2_ardour/editor.cc:3538 -msgid "Focus Right" -msgstr "à droite" - -#: gtk2_ardour/editor.cc:3540 -msgid "Focus Center" -msgstr "au centre" - -#: gtk2_ardour/editor.cc:3542 -msgid "Focus Playhead" -msgstr "suivre tête de lecture" - -#: gtk2_ardour/editor.cc:3544 -msgid "Focus Edit Cursor" -msgstr "suivre curseur d'édition" - -#: gtk2_ardour/editor.cc:3853 +#: gtk2_ardour/editor.cc:3281 msgid "" "Playlist %1 is currently unused.\n" "If left alone, no audio files used by it will be cleaned.\n" @@ -2583,33 +2684,56 @@ msgstr "" "Si vous la conservez, aucun fichier audio qu'elle utilise ne sera nettoyé.\n" "Si vous l'effacez, les fichiers audio qu'elle seule utilise seront nettoyés." -#: gtk2_ardour/editor.cc:3861 +#: gtk2_ardour/editor.cc:3291 msgid "Delete playlist" msgstr "Supprimer la liste de lecture" -#: gtk2_ardour/editor.cc:3862 +#: gtk2_ardour/editor.cc:3292 msgid "Keep playlist" msgstr "Garder la liste de lecture" -#: gtk2_ardour/editor.cc:3863 gtk2_ardour/editor_audio_import.cc:239 -#: gtk2_ardour/editor_ops.cc:1987 gtk2_ardour/editor_timefx.cc:72 -#: gtk2_ardour/export_dialog.cc:971 gtk2_ardour/io_selector.cc:61 -#: gtk2_ardour/io_selector.cc:795 gtk2_ardour/redirect_box.cc:901 -#: gtk2_ardour/tempo_dialog.cc:20 gtk2_ardour/tempo_dialog.cc:37 -#: gtk2_ardour/tempo_dialog.cc:202 gtk2_ardour/tempo_dialog.cc:220 -#: gtk2_ardour/connection_editor.cc:60 +#: gtk2_ardour/editor.cc:3293 gtk2_ardour/editor_audio_import.cc:366 +#: gtk2_ardour/editor_ops.cc:1756 gtk2_ardour/editor_timefx.cc:77 +#: gtk2_ardour/export_dialog.cc:973 gtk2_ardour/io_selector.cc:60 +#: gtk2_ardour/io_selector.cc:748 gtk2_ardour/redirect_box.cc:977 +#: gtk2_ardour/tempo_dialog.cc:22 gtk2_ardour/tempo_dialog.cc:41 +#: gtk2_ardour/tempo_dialog.cc:158 gtk2_ardour/tempo_dialog.cc:176 +#: gtk2_ardour/connection_editor.cc:59 msgid "Cancel" msgstr "Annuler" -#: gtk2_ardour/editor.cc:4031 +#: gtk2_ardour/editor.cc:3461 +msgid "New name of snapshot" +msgstr "Nouveau nom du cliché" + +#: gtk2_ardour/editor.cc:3479 +msgid "" +"Do you really want to remove snapshot \"%1\" ?\n" +"(cannot be undone)" +msgstr "" +"Voulez-vous vraiment supprimer le cliché « %1 » ?\n" +"(cela ne pourra pas être annulé)" + +#: gtk2_ardour/editor.cc:3481 gtk2_ardour/editor_ops.cc:181 +#: gtk2_ardour/editor_ops.cc:3162 gtk2_ardour/route_ui.cc:783 +#: gtk2_ardour/visual_time_axis.cc:282 +msgid "No, do nothing." +msgstr "Non, ne rien faire" + +#: gtk2_ardour/editor.cc:3482 gtk2_ardour/route_ui.cc:784 +#: gtk2_ardour/visual_time_axis.cc:283 +msgid "Yes, remove it." +msgstr "Oui, supprimer" + +#: gtk2_ardour/editor.cc:3586 msgid "new playlists" msgstr "nouvelles listes de lecture" -#: gtk2_ardour/editor.cc:4039 +#: gtk2_ardour/editor.cc:3594 msgid "copy playlists" msgstr "copier les listes de lecture" -#: gtk2_ardour/editor.cc:4047 +#: gtk2_ardour/editor.cc:3602 msgid "clear playlists" msgstr "effacer les listes de lecture" @@ -2663,365 +2787,369 @@ msgstr "Connexions automatiques" #: gtk2_ardour/editor_actions.cc:42 msgid "Layering" -msgstr "mettre au dessus les régions" +msgstr "Empilement des régions" #: gtk2_ardour/editor_actions.cc:43 -msgid "SMPTE fps" -msgstr "nb trames SMPTE par seconde" +msgid "Timecode fps" +msgstr "Timecode (trames/s)" #: gtk2_ardour/editor_actions.cc:44 msgid "Pullup / Pulldown" msgstr "Pullup / Pulldown" #: gtk2_ardour/editor_actions.cc:45 +msgid "Subframes" +msgstr "Sous-trames" + +#: gtk2_ardour/editor_actions.cc:46 msgid "Add Existing Audio" msgstr "Importer" -#: gtk2_ardour/editor_actions.cc:50 +#: gtk2_ardour/editor_actions.cc:51 msgid "Show Editor Mixer" msgstr "Afficher la tranche de mix" -#: gtk2_ardour/editor_actions.cc:55 +#: gtk2_ardour/editor_actions.cc:56 msgid "Span Entire Overlap" -msgstr "Long (sur toute la zone de recouvrement)" +msgstr "Long (toute la zone de recouvrement)" -#: gtk2_ardour/editor_actions.cc:64 +#: gtk2_ardour/editor_actions.cc:65 msgid "Created Automatically" msgstr "créé automatiquement" -#: gtk2_ardour/editor_actions.cc:67 +#: gtk2_ardour/editor_actions.cc:68 msgid "Playhead to Next Region Start" msgstr "début de la région suivante" -#: gtk2_ardour/editor_actions.cc:69 +#: gtk2_ardour/editor_actions.cc:70 msgid "Playhead to Next Region End" msgstr "fin de la région suivante" -#: gtk2_ardour/editor_actions.cc:71 +#: gtk2_ardour/editor_actions.cc:72 msgid "Playhead to Next Region Sync" msgstr "synchro de la région suivante" -#: gtk2_ardour/editor_actions.cc:74 +#: gtk2_ardour/editor_actions.cc:75 msgid "Playhead to Previous Region Start" msgstr "début de la région précédente" -#: gtk2_ardour/editor_actions.cc:76 +#: gtk2_ardour/editor_actions.cc:77 msgid "Playhead to Previous Region End" msgstr "fin de la région précédente" -#: gtk2_ardour/editor_actions.cc:78 +#: gtk2_ardour/editor_actions.cc:79 msgid "Playhead to Previous Region Sync" msgstr "synchro de la région précédente" -#: gtk2_ardour/editor_actions.cc:81 +#: gtk2_ardour/editor_actions.cc:82 msgid "Edit Cursor to Next Region Start" msgstr "début de la région suivante" -#: gtk2_ardour/editor_actions.cc:83 +#: gtk2_ardour/editor_actions.cc:84 msgid "Edit Cursor to Next Region End" msgstr "fin de la région suivante" -#: gtk2_ardour/editor_actions.cc:85 +#: gtk2_ardour/editor_actions.cc:86 msgid "Edit Cursor to Next Region Sync" msgstr "synchro de la région suivante" -#: gtk2_ardour/editor_actions.cc:88 +#: gtk2_ardour/editor_actions.cc:89 msgid "Edit Cursor to Previous Region Start" msgstr "début de la région précédente" -#: gtk2_ardour/editor_actions.cc:90 +#: gtk2_ardour/editor_actions.cc:91 msgid "Edit Cursor to Previous Region End" msgstr "fin de la région précédente" -#: gtk2_ardour/editor_actions.cc:92 +#: gtk2_ardour/editor_actions.cc:93 msgid "Edit Cursor to Previous Region Sync" msgstr "synchro de la région précédente" -#: gtk2_ardour/editor_actions.cc:95 +#: gtk2_ardour/editor_actions.cc:96 msgid "Playhead to Range Start" msgstr "début de la région" -#: gtk2_ardour/editor_actions.cc:97 +#: gtk2_ardour/editor_actions.cc:98 msgid "Playhead to Range End" msgstr "fin de la région" -#: gtk2_ardour/editor_actions.cc:100 +#: gtk2_ardour/editor_actions.cc:101 msgid "Edit Cursor to Range Start" msgstr "début de la région" -#: gtk2_ardour/editor_actions.cc:102 +#: gtk2_ardour/editor_actions.cc:103 msgid "Edit Cursor to Range End" msgstr "fin de la région" -#: gtk2_ardour/editor_actions.cc:105 gtk2_ardour/editor_ops.cc:1292 +#: gtk2_ardour/editor_actions.cc:106 gtk2_ardour/editor_selection.cc:726 msgid "select all" msgstr "sélectionner tout" -#: gtk2_ardour/editor_actions.cc:107 +#: gtk2_ardour/editor_actions.cc:108 msgid "Select All After Edit Cursor" msgstr "tout après le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:109 +#: gtk2_ardour/editor_actions.cc:110 msgid "Select All Before Edit Cursor" msgstr "tout avant le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:112 +#: gtk2_ardour/editor_actions.cc:113 msgid "Select All After Playhead" msgstr "tout après la tête de lecture" -#: gtk2_ardour/editor_actions.cc:114 +#: gtk2_ardour/editor_actions.cc:115 msgid "Select All Before Playhead" msgstr "tout avant la tête de lecture" -#: gtk2_ardour/editor_actions.cc:116 +#: gtk2_ardour/editor_actions.cc:117 msgid "Select All Between Cursors" msgstr "tout entre les 2 curseurs" -#: gtk2_ardour/editor_actions.cc:119 +#: gtk2_ardour/editor_actions.cc:120 msgid "Select All in Punch Range" msgstr "tout dans l'intervalle de punch in/out" -#: gtk2_ardour/editor_actions.cc:121 +#: gtk2_ardour/editor_actions.cc:122 msgid "Select All in Loop Range" msgstr "tout dans l'intervalle de boucle" -#: gtk2_ardour/editor_actions.cc:124 +#: gtk2_ardour/editor_actions.cc:125 msgid "Jump Forward to Mark" msgstr "repère suivant" -#: gtk2_ardour/editor_actions.cc:126 +#: gtk2_ardour/editor_actions.cc:127 msgid "Jump Backward to Mark" msgstr "repère précédent" -#: gtk2_ardour/editor_actions.cc:128 -msgid "Add Location from Playhead" -msgstr "repère à la tête de lecture" +#: gtk2_ardour/editor_actions.cc:129 +msgid "Add Mark from Playhead" +msgstr "créer un repère à la tête de lecture" -#: gtk2_ardour/editor_actions.cc:131 +#: gtk2_ardour/editor_actions.cc:132 msgid "Nudge Forward" msgstr "décaler vers la droite" -#: gtk2_ardour/editor_actions.cc:133 +#: gtk2_ardour/editor_actions.cc:134 msgid "Nudge Next Forward" msgstr "décaler suivant vers la droite" -#: gtk2_ardour/editor_actions.cc:135 +#: gtk2_ardour/editor_actions.cc:136 msgid "Nudge Backward" msgstr "Décaler vers la gauche" -#: gtk2_ardour/editor_actions.cc:137 +#: gtk2_ardour/editor_actions.cc:138 msgid "Nudge Next Backward" msgstr "décaler suivant vers la gauche" -#: gtk2_ardour/editor_actions.cc:147 +#: gtk2_ardour/editor_actions.cc:148 msgid "Scroll Tracks Up" msgstr "monter d'une page" -#: gtk2_ardour/editor_actions.cc:149 +#: gtk2_ardour/editor_actions.cc:150 msgid "Scroll Tracks Down" msgstr "descendre d'une page" -#: gtk2_ardour/editor_actions.cc:151 +#: gtk2_ardour/editor_actions.cc:152 msgid "Step Tracks Up" msgstr "défiler vers le haut" -#: gtk2_ardour/editor_actions.cc:153 +#: gtk2_ardour/editor_actions.cc:154 msgid "Step Tracks Down" msgstr "défiler vers le bas" -#: gtk2_ardour/editor_actions.cc:156 +#: gtk2_ardour/editor_actions.cc:157 msgid "Scroll Backward" msgstr "défiler en arrière" -#: gtk2_ardour/editor_actions.cc:158 +#: gtk2_ardour/editor_actions.cc:159 msgid "Scroll Forward" msgstr "défiler en avant" -#: gtk2_ardour/editor_actions.cc:160 +#: gtk2_ardour/editor_actions.cc:161 msgid "goto" msgstr "aller à " -#: gtk2_ardour/editor_actions.cc:162 +#: gtk2_ardour/editor_actions.cc:163 msgid "Center Playhead" msgstr "centrer sur la tête de lecture" -#: gtk2_ardour/editor_actions.cc:164 +#: gtk2_ardour/editor_actions.cc:165 msgid "Center Edit Cursor" msgstr "centrer sur le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:166 -msgid "Playhead Forward" -msgstr "avancer la tête de lecture" - #: gtk2_ardour/editor_actions.cc:168 -msgid "Playhead Backward" -msgstr "reculer la tête de lecture" +msgid "Playhead forward" +msgstr "tête de lecture en avant" #: gtk2_ardour/editor_actions.cc:170 +msgid "Playhead Backward" +msgstr "tête de lecture en arrière" + +#: gtk2_ardour/editor_actions.cc:173 msgid "Playhead to Edit" msgstr "sur le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:172 +#: gtk2_ardour/editor_actions.cc:175 msgid "Edit to Playhead" msgstr "sur la tête de lecture" -#: gtk2_ardour/editor_actions.cc:175 +#: gtk2_ardour/editor_actions.cc:178 msgid "Align Regions Start" msgstr "aligner le début des régions" -#: gtk2_ardour/editor_actions.cc:177 +#: gtk2_ardour/editor_actions.cc:180 msgid "Align Regions Start Relative" msgstr "aligner relativement le début des régions" -#: gtk2_ardour/editor_actions.cc:179 +#: gtk2_ardour/editor_actions.cc:182 msgid "Align Regions End" msgstr "aligner la fin des régions" -#: gtk2_ardour/editor_actions.cc:181 +#: gtk2_ardour/editor_actions.cc:184 msgid "Align Regions End Relative" msgstr "aligner relativement la fin des régions" -#: gtk2_ardour/editor_actions.cc:184 +#: gtk2_ardour/editor_actions.cc:187 msgid "Align Regions Sync" msgstr "aligner les synchro des régions" -#: gtk2_ardour/editor_actions.cc:186 +#: gtk2_ardour/editor_actions.cc:189 msgid "Align Regions Sync Relative" msgstr "aligner relativement les synchro des régions" -#: gtk2_ardour/editor_actions.cc:189 +#: gtk2_ardour/editor_actions.cc:192 msgid "Audition at Mouse" msgstr "écoute à la souris" -#: gtk2_ardour/editor_actions.cc:191 +#: gtk2_ardour/editor_actions.cc:194 msgid "Brush at Mouse" msgstr "brosse à la souris" -#: gtk2_ardour/editor_actions.cc:193 +#: gtk2_ardour/editor_actions.cc:196 msgid "Set Edit Cursor" msgstr "placer le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:195 +#: gtk2_ardour/editor_actions.cc:198 msgid "Mute/Unmute Region" msgstr "région muette/active" -#: gtk2_ardour/editor_actions.cc:197 +#: gtk2_ardour/editor_actions.cc:200 msgid "Set Playhead" msgstr "placer la tête de lecture" -#: gtk2_ardour/editor_actions.cc:199 +#: gtk2_ardour/editor_actions.cc:202 msgid "Split Region" msgstr "découper la région" -#: gtk2_ardour/editor_actions.cc:201 +#: gtk2_ardour/editor_actions.cc:204 msgid "Set Region Sync Position" msgstr "placer la synchro de région" -#: gtk2_ardour/editor_actions.cc:209 +#: gtk2_ardour/editor_actions.cc:212 msgid "Export Session" msgstr "exporter la session..." -#: gtk2_ardour/editor_actions.cc:211 +#: gtk2_ardour/editor_actions.cc:214 msgid "Export Range" msgstr "exporter la zone de sélection..." -#: gtk2_ardour/editor_actions.cc:217 gtk2_ardour/connection_editor.cc:56 +#: gtk2_ardour/editor_actions.cc:220 gtk2_ardour/connection_editor.cc:55 msgid "Delete" msgstr "Enlever" -#: gtk2_ardour/editor_actions.cc:223 +#: gtk2_ardour/editor_actions.cc:226 msgid "Duplicate Region" msgstr "dupliquer la région" -#: gtk2_ardour/editor_actions.cc:225 +#: gtk2_ardour/editor_actions.cc:228 msgid "Duplicate Range" msgstr "dupliquer la zone de sélection" -#: gtk2_ardour/editor_actions.cc:227 +#: gtk2_ardour/editor_actions.cc:230 msgid "Insert Region" msgstr "Insérer une région" -#: gtk2_ardour/editor_actions.cc:229 +#: gtk2_ardour/editor_actions.cc:232 msgid "Reverse Region" msgstr "inverser la région" -#: gtk2_ardour/editor_actions.cc:231 +#: gtk2_ardour/editor_actions.cc:234 msgid "Normalize Region" msgstr "normaliser la région" -#: gtk2_ardour/editor_actions.cc:233 +#: gtk2_ardour/editor_actions.cc:236 msgid "crop" msgstr "recadrer" -#: gtk2_ardour/editor_actions.cc:235 +#: gtk2_ardour/editor_actions.cc:238 msgid "Insert Chunk" msgstr "insérer un fragment" -#: gtk2_ardour/editor_actions.cc:238 +#: gtk2_ardour/editor_actions.cc:241 msgid "Split at edit cursor" msgstr "découper au curseur d'édition" -#: gtk2_ardour/editor_actions.cc:241 +#: gtk2_ardour/editor_actions.cc:244 msgid "Start Range" msgstr "zone de début" -#: gtk2_ardour/editor_actions.cc:243 +#: gtk2_ardour/editor_actions.cc:246 msgid "Finish Range" msgstr "zone de fin" -#: gtk2_ardour/editor_actions.cc:245 +#: gtk2_ardour/editor_actions.cc:248 msgid "Finish add Range" msgstr "Terminer l'ajout d'intervalle" -#: gtk2_ardour/editor_actions.cc:248 +#: gtk2_ardour/editor_actions.cc:251 msgid "Extend Range to End of Region" -msgstr "étendre la zone à la fin de la région" +msgstr "étendre à la fin de la région" -#: gtk2_ardour/editor_actions.cc:250 +#: gtk2_ardour/editor_actions.cc:253 msgid "Extend Range to Start of Region" -msgstr "étendre la zone au début de la région" +msgstr "étendre au début de la région" -#: gtk2_ardour/editor_actions.cc:253 +#: gtk2_ardour/editor_actions.cc:256 msgid "Follow Playhead" msgstr "suivre la tête de lecture" -#: gtk2_ardour/editor_actions.cc:261 +#: gtk2_ardour/editor_actions.cc:264 msgid "Zoom Focus Left" msgstr "la gauche" -#: gtk2_ardour/editor_actions.cc:263 +#: gtk2_ardour/editor_actions.cc:266 msgid "Zoom Focus Right" msgstr "la droite" -#: gtk2_ardour/editor_actions.cc:265 +#: gtk2_ardour/editor_actions.cc:268 msgid "Zoom Focus Center" msgstr "le centre" -#: gtk2_ardour/editor_actions.cc:267 +#: gtk2_ardour/editor_actions.cc:270 msgid "Zoom Focus Playhead" msgstr "la tête de lecture" -#: gtk2_ardour/editor_actions.cc:269 +#: gtk2_ardour/editor_actions.cc:272 msgid "Zoom Focus Edit" msgstr "le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:275 +#: gtk2_ardour/editor_actions.cc:278 msgid "Object Tool" msgstr "outil d'objet" -#: gtk2_ardour/editor_actions.cc:276 +#: gtk2_ardour/editor_actions.cc:279 msgid "Range Tool" msgstr "outil de zone de sélection" -#: gtk2_ardour/editor_actions.cc:277 +#: gtk2_ardour/editor_actions.cc:280 msgid "Gain Tool" msgstr "outil de gain" -#: gtk2_ardour/editor_actions.cc:278 +#: gtk2_ardour/editor_actions.cc:281 msgid "Zoom Tool" msgstr "outil de zoom" -#: gtk2_ardour/editor_actions.cc:279 +#: gtk2_ardour/editor_actions.cc:282 msgid "Timefx Tool" msgstr "outil d'étirement/contraction" @@ -3029,314 +3157,344 @@ msgstr "outil d'étirement/contraction" msgid "Snap To" msgstr "aligner sur" -#: gtk2_ardour/editor_actions.cc:286 +#: gtk2_ardour/editor_actions.cc:285 +msgid "Snap Mode" +msgstr "mode d'alignement" + +#: gtk2_ardour/editor_actions.cc:294 msgid "Snap to frame" msgstr "aligner sur la trame" -#: gtk2_ardour/editor_actions.cc:287 +#: gtk2_ardour/editor_actions.cc:295 msgid "Snap to cd frame" msgstr "aligner sur la trame de CD" -#: gtk2_ardour/editor_actions.cc:288 +#: gtk2_ardour/editor_actions.cc:296 msgid "Snap to SMPTE frame" msgstr "aligner sur la trame SMPTE" -#: gtk2_ardour/editor_actions.cc:289 +#: gtk2_ardour/editor_actions.cc:297 msgid "Snap to SMPTE seconds" msgstr "aligner sur les secondes SMPTE" -#: gtk2_ardour/editor_actions.cc:290 +#: gtk2_ardour/editor_actions.cc:298 msgid "Snap to SMPTE minutes" msgstr "aligner sur les minutes SMPTE" -#: gtk2_ardour/editor_actions.cc:291 +#: gtk2_ardour/editor_actions.cc:299 msgid "Snap to seconds" msgstr "aligner sur les secondes" -#: gtk2_ardour/editor_actions.cc:292 +#: gtk2_ardour/editor_actions.cc:300 msgid "Snap to minutes" msgstr "aligner sur les minutes" -#: gtk2_ardour/editor_actions.cc:293 +#: gtk2_ardour/editor_actions.cc:301 msgid "Snap to thirtyseconds" msgstr "aligner sur les 32ème de seconde" -#: gtk2_ardour/editor_actions.cc:294 +#: gtk2_ardour/editor_actions.cc:302 msgid "Snap to asixteenthbeat" msgstr "aligner sur un 16ème de temps" -#: gtk2_ardour/editor_actions.cc:295 +#: gtk2_ardour/editor_actions.cc:303 msgid "Snap to eighths" msgstr "aligner sur les 8ème de temps" -#: gtk2_ardour/editor_actions.cc:296 +#: gtk2_ardour/editor_actions.cc:304 msgid "Snap to quarters" msgstr "aligner sur les quart de temps" -#: gtk2_ardour/editor_actions.cc:297 +#: gtk2_ardour/editor_actions.cc:305 msgid "Snap to thirds" msgstr "aligner sur les triolets" -#: gtk2_ardour/editor_actions.cc:298 +#: gtk2_ardour/editor_actions.cc:306 msgid "Snap to beat" msgstr "les temps" -#: gtk2_ardour/editor_actions.cc:299 +#: gtk2_ardour/editor_actions.cc:307 msgid "Snap to bar" msgstr "les mesures" -#: gtk2_ardour/editor_actions.cc:300 +#: gtk2_ardour/editor_actions.cc:308 msgid "Snap to mark" msgstr "aligner sur le repère" -#: gtk2_ardour/editor_actions.cc:301 +#: gtk2_ardour/editor_actions.cc:309 msgid "Snap to edit cursor" msgstr "aligner sur le curseur d'édition" -#: gtk2_ardour/editor_actions.cc:302 +#: gtk2_ardour/editor_actions.cc:310 msgid "Snap to region start" msgstr "aligner sur le début de région" -#: gtk2_ardour/editor_actions.cc:303 +#: gtk2_ardour/editor_actions.cc:311 msgid "Snap to region end" msgstr "aligner sur la fin de région" -#: gtk2_ardour/editor_actions.cc:304 +#: gtk2_ardour/editor_actions.cc:312 msgid "Snap to region sync" msgstr "aligne sur la synchro de région" -#: gtk2_ardour/editor_actions.cc:305 +#: gtk2_ardour/editor_actions.cc:313 msgid "Snap to region boundary" msgstr "aligner sur les limites de région" -#: gtk2_ardour/editor_actions.cc:314 +#: gtk2_ardour/editor_actions.cc:322 msgid "Sort" msgstr "trier" -#: gtk2_ardour/editor_actions.cc:322 +#: gtk2_ardour/editor_actions.cc:330 msgid "Show all" msgstr "afficher tout" -#: gtk2_ardour/editor_actions.cc:323 +#: gtk2_ardour/editor_actions.cc:331 msgid "Show automatic regions" msgstr "afficher les régions automatiques" -#: gtk2_ardour/editor_actions.cc:325 +#: gtk2_ardour/editor_actions.cc:333 msgid "Ascending" msgstr "croissant" -#: gtk2_ardour/editor_actions.cc:327 +#: gtk2_ardour/editor_actions.cc:335 msgid "Descending" msgstr "décroissant" -#: gtk2_ardour/editor_actions.cc:330 +#: gtk2_ardour/editor_actions.cc:338 msgid "By Region Name" msgstr "par nom de région" -#: gtk2_ardour/editor_actions.cc:332 +#: gtk2_ardour/editor_actions.cc:340 msgid "By Region Length" msgstr "par longueur de région" -#: gtk2_ardour/editor_actions.cc:334 +#: gtk2_ardour/editor_actions.cc:342 msgid "By Region Position" msgstr "par position de région" -#: gtk2_ardour/editor_actions.cc:336 +#: gtk2_ardour/editor_actions.cc:344 msgid "By Region Timestamp" msgstr "par date de région" -#: gtk2_ardour/editor_actions.cc:338 +#: gtk2_ardour/editor_actions.cc:346 msgid "By Region Start in File" msgstr "par début de région (dans le fichier)" -#: gtk2_ardour/editor_actions.cc:340 +#: gtk2_ardour/editor_actions.cc:348 msgid "By Region End in File" msgstr "par fin de région (dans le fichier)" -#: gtk2_ardour/editor_actions.cc:342 +#: gtk2_ardour/editor_actions.cc:350 msgid "By Source File Name" msgstr "par nom de fichier source" -#: gtk2_ardour/editor_actions.cc:344 +#: gtk2_ardour/editor_actions.cc:352 msgid "By Source File Length" msgstr "par longueur de fichier source" -#: gtk2_ardour/editor_actions.cc:346 +#: gtk2_ardour/editor_actions.cc:354 msgid "By Source File Creation Date" msgstr "par date de création du fichier source" -#: gtk2_ardour/editor_actions.cc:348 +#: gtk2_ardour/editor_actions.cc:356 msgid "By Source Filesystem" msgstr "par système de fichier source" -#: gtk2_ardour/editor_actions.cc:354 +#: gtk2_ardour/editor_actions.cc:362 msgid "Add External Audio" msgstr "importer des fichiers audio" -#: gtk2_ardour/editor_actions.cc:356 +#: gtk2_ardour/editor_actions.cc:364 msgid "as Region(s)" -msgstr "dans la liste des régions..." +msgstr "vers la liste des régions..." -#: gtk2_ardour/editor_actions.cc:358 +#: gtk2_ardour/editor_actions.cc:366 msgid "as Tracks" -msgstr "comme nouvelles pistes audio..." +msgstr "vers nouvelles pistes..." -#: gtk2_ardour/editor_actions.cc:360 +#: gtk2_ardour/editor_actions.cc:368 msgid "as Tape Tracks" -msgstr "comme nouvelles pistes bandes..." +msgstr "vers nouvelles pistes (mode cassette)..." -#: gtk2_ardour/editor_actions.cc:362 +#: gtk2_ardour/editor_actions.cc:370 msgid "to Tracks" -msgstr "dans les pistes sélectionnées..." +msgstr "vers les pistes sélectionnées..." -#: gtk2_ardour/editor_actions.cc:365 +#: gtk2_ardour/editor_actions.cc:373 msgid "Show Waveforms" -msgstr "afficher les formes d'onde" +msgstr "formes d'onde" -#: gtk2_ardour/editor_actions.cc:366 +#: gtk2_ardour/editor_actions.cc:374 msgid "Show Waveforms While Recording" -msgstr "afficher les formes d'onde pendant l'enregistrement" +msgstr "formes d'onde pendant l'enregistr." -#: gtk2_ardour/editor_actions.cc:367 +#: gtk2_ardour/editor_actions.cc:375 msgid "Show Measures" msgstr "montrer les barres de mesures" -#: gtk2_ardour/editor_actions.cc:371 +#: gtk2_ardour/editor_actions.cc:379 msgid "Later is Higher" -msgstr "ultérieurs" +msgstr "ultérieures au dessus" -#: gtk2_ardour/editor_actions.cc:372 +#: gtk2_ardour/editor_actions.cc:380 msgid "Most Recently Moved/Added is Higher" -msgstr "récemment déplacées/ajoutées" +msgstr "déplacées/ajoutées au dessus" -#: gtk2_ardour/editor_actions.cc:373 +#: gtk2_ardour/editor_actions.cc:381 msgid "Most Recently Added is Higher" -msgstr "récemment ajoutées" +msgstr "ajoutées au dessus" -#: gtk2_ardour/editor_actions.cc:377 +#: gtk2_ardour/editor_actions.cc:385 msgid "23.976" msgstr "23.976" -#: gtk2_ardour/editor_actions.cc:378 +#: gtk2_ardour/editor_actions.cc:386 msgid "24" msgstr "24" -#: gtk2_ardour/editor_actions.cc:379 +#: gtk2_ardour/editor_actions.cc:387 msgid "24.976" msgstr "24.976" -#: gtk2_ardour/editor_actions.cc:380 +#: gtk2_ardour/editor_actions.cc:388 msgid "25" msgstr "25" -#: gtk2_ardour/editor_actions.cc:381 +#: gtk2_ardour/editor_actions.cc:389 msgid "29.97" msgstr "29.97" -#: gtk2_ardour/editor_actions.cc:382 +#: gtk2_ardour/editor_actions.cc:390 msgid "29.97 drop" msgstr "29.97 drop" -#: gtk2_ardour/editor_actions.cc:383 +#: gtk2_ardour/editor_actions.cc:391 msgid "30" msgstr "30" -#: gtk2_ardour/editor_actions.cc:384 +#: gtk2_ardour/editor_actions.cc:392 msgid "30 drop" msgstr "30 drop" -#: gtk2_ardour/editor_actions.cc:385 +#: gtk2_ardour/editor_actions.cc:393 msgid "59.94" msgstr "59.94" -#: gtk2_ardour/editor_actions.cc:386 +#: gtk2_ardour/editor_actions.cc:394 msgid "60" msgstr "60" -#: gtk2_ardour/editor_actions.cc:390 +#: gtk2_ardour/editor_actions.cc:398 msgid "+4.1667% + 0.1%" msgstr "+4.1667% + 0.1%" -#: gtk2_ardour/editor_actions.cc:391 +#: gtk2_ardour/editor_actions.cc:399 msgid "+4.1667%" msgstr "+4.1667%" -#: gtk2_ardour/editor_actions.cc:392 +#: gtk2_ardour/editor_actions.cc:400 msgid "+4.1667% - 0.1%" msgstr "+4.1667% - 0.1%" -#: gtk2_ardour/editor_actions.cc:393 +#: gtk2_ardour/editor_actions.cc:401 msgid "+ 0.1%" msgstr "+ 0.1%" -#: gtk2_ardour/editor_actions.cc:395 +#: gtk2_ardour/editor_actions.cc:403 msgid "- 0.1%" msgstr "- 0.1%" -#: gtk2_ardour/editor_actions.cc:396 +#: gtk2_ardour/editor_actions.cc:404 msgid "-4.1667% + 0.1%" msgstr "-4.1667% + 0.1%" -#: gtk2_ardour/editor_actions.cc:397 +#: gtk2_ardour/editor_actions.cc:405 msgid "-4.1667%" msgstr "-4.1667%" -#: gtk2_ardour/editor_actions.cc:398 +#: gtk2_ardour/editor_actions.cc:406 msgid "-4.1667% - 0.1%" msgstr "-4.1667% - 0.1%" -#: gtk2_ardour/editor_actions.cc:518 -msgid "" -"programming error: Unexpected SMPTE value (%1, drop = %2) in " -"update_smpte_mode. Menu is probably wrong." -msgstr "" -"erreur du logiciel: valeur SMPTE inattendue (%1, drop = %2) dans " -"update_smpte_mode. Le menu est probablement mauvais" +#: gtk2_ardour/editor_actions.cc:410 +msgid "80 per frame" +msgstr "80 par trame" -#: gtk2_ardour/editor_actions.cc:759 gtk2_ardour/editor_actions.cc:772 -#: gtk2_ardour/sfdb_ui.cc:438 -msgid "programming error: %1" -msgstr "erreur du logiciel : %1" +#: gtk2_ardour/editor_actions.cc:411 +msgid "100 per frame" +msgstr "100 par trame" + +#: gtk2_ardour/editor_actions.cc:714 gtk2_ardour/editor_actions.cc:759 +#: gtk2_ardour/editor_actions.cc:770 gtk2_ardour/editor_actions.cc:814 +#: gtk2_ardour/editor_actions.cc:824 +msgid "programming error: %1: %2" +msgstr "programming error: %1: %2" -#: gtk2_ardour/editor_audio_import.cc:75 +#: gtk2_ardour/editor_actions.cc:985 +msgid "Configuraton is using unhandled subframes per frame value: %1" +msgstr "La configuration utilise une valeur non prise en charge de sous-trames par trame : %1" + +#: gtk2_ardour/editor_audio_import.cc:84 msgid "You can't import or embed an audiofile until you have a session loaded." msgstr "" "Vous ne pouvez pas importer ou lier un fichier audio avant d'avoir chargé " "une session." -#: gtk2_ardour/editor_audio_import.cc:80 +#: gtk2_ardour/editor_audio_import.cc:89 msgid "Add existing audio to session" msgstr "Import de fichiers audio dans la session" -#: gtk2_ardour/editor_audio_import.cc:145 -msgid "ardour: importing %1" -msgstr "ardour : importation de %1" +#: gtk2_ardour/editor_audio_import.cc:176 +msgid "Import as a %1 region" +msgstr "Importer comme région %1" + +#: gtk2_ardour/editor_audio_import.cc:177 +msgid "multichannel" +msgstr "multivoies" + +#: gtk2_ardour/editor_audio_import.cc:177 gtk2_ardour/export_dialog.cc:86 +msgid "stereo" +msgstr "stéréo" + +#: gtk2_ardour/editor_audio_import.cc:178 +msgid "Import as multiple regions" +msgstr "importer vers des régions multiples" + +#: gtk2_ardour/editor_audio_import.cc:180 +msgid "" +"Paired files detected (%1, %2 ...).\n" +"Do you want to:" +msgstr "" +"Paire de fichiers détectée (%1, %2 ...).\n" +"Voulez-vous :" -#: gtk2_ardour/editor_audio_import.cc:149 +#: gtk2_ardour/editor_audio_import.cc:226 +msgid "importing %1" +msgstr "importation de %1" + +#: gtk2_ardour/editor_audio_import.cc:232 msgid "Cancel Import" msgstr "Annuler l'importation" -#: gtk2_ardour/editor_audio_import.cc:227 +#: gtk2_ardour/editor_audio_import.cc:332 msgid "Editor: cannot open file \"%1\", (%2)" msgstr "Éditeur : impossible d'ouvrir le fichier « %1 » (%2)" -#: gtk2_ardour/editor_audio_import.cc:235 +#: gtk2_ardour/editor_audio_import.cc:340 msgid "Cancel entire import" msgstr "Annuler toute l'importation" -#: gtk2_ardour/editor_audio_import.cc:236 +#: gtk2_ardour/editor_audio_import.cc:341 msgid "Don't embed it" msgstr "Ne pas le lier" -#: gtk2_ardour/editor_audio_import.cc:237 +#: gtk2_ardour/editor_audio_import.cc:342 msgid "Embed all without questions" msgstr "Lier tout sans poser de question" -#: gtk2_ardour/editor_audio_import.cc:242 -msgid "Embed it anyway" -msgstr "Lier quand même" - -#: gtk2_ardour/editor_audio_import.cc:245 +#: gtk2_ardour/editor_audio_import.cc:345 +#: gtk2_ardour/editor_audio_import.cc:370 msgid "" "%1\n" "This audiofile's sample rate doesn't match the session sample rate!" @@ -3345,39 +3503,51 @@ msgstr "" "La fréquence d'échantillonnage de ce fichier audio ne correspond pas à celle " "de la session !" -#: gtk2_ardour/editor_audio_import.cc:278 +#: gtk2_ardour/editor_audio_import.cc:367 +msgid "Embed it anyway" +msgstr "Lier quand même" + +#: gtk2_ardour/editor_audio_import.cc:417 msgid "could not open %1" msgstr "impossible d'ouvrir %1" -#: gtk2_ardour/editor_audio_import.cc:323 +#: gtk2_ardour/editor_audio_import.cc:464 msgid "insert sndfile" msgstr "Insérer un fichier audio" -#: gtk2_ardour/editor_canvas.cc:119 +#: gtk2_ardour/editor_canvas.cc:118 msgid "VerboseCanvasCursor" msgstr "VerboseCanvasCursor" -#: gtk2_ardour/editor_edit_groups.cc:53 gtk2_ardour/mixer_ui.cc:754 +#: gtk2_ardour/editor_canvas.cc:267 +msgid "edit cursor color not defined, check your ardour.colors file!" +msgstr "Pas de couleur définie pour le curseur d'édition. Vérifiez votre fichier ardour.colors !" + +#: gtk2_ardour/editor_canvas.cc:272 +msgid "playhead color not defined, check your ardour.colors file!" +msgstr "Pas de couleur définie pour la tête de lecture. Vérifiez votre fichier ardour.colors !" + +#: gtk2_ardour/editor_edit_groups.cc:52 gtk2_ardour/mixer_ui.cc:765 msgid "Activate All" msgstr "Activer tout" -#: gtk2_ardour/editor_edit_groups.cc:54 gtk2_ardour/mixer_ui.cc:755 +#: gtk2_ardour/editor_edit_groups.cc:53 gtk2_ardour/mixer_ui.cc:766 msgid "Disable All" msgstr "désactiver tout" -#: gtk2_ardour/editor_edit_groups.cc:56 gtk2_ardour/mixer_ui.cc:757 +#: gtk2_ardour/editor_edit_groups.cc:55 gtk2_ardour/mixer_ui.cc:768 msgid "Add group" msgstr "ajouter un groupe" -#: gtk2_ardour/editor_edit_groups.cc:229 gtk2_ardour/mixer_ui.cc:988 +#: gtk2_ardour/editor_edit_groups.cc:228 gtk2_ardour/mixer_ui.cc:1009 msgid "unnamed" msgstr "(sans nom)" -#: gtk2_ardour/editor_edit_groups.cc:258 gtk2_ardour/mixer_ui.cc:852 +#: gtk2_ardour/editor_edit_groups.cc:257 gtk2_ardour/mixer_ui.cc:863 msgid "-all-" msgstr "-(tout)-" -#: gtk2_ardour/editor_export_audio.cc:67 +#: gtk2_ardour/editor_export_audio.cc:66 msgid "" "There is no selection to export.\n" "\n" @@ -3387,7 +3557,7 @@ msgstr "" "\n" "Sélectionnez une zone en utilisant le mode « sélection »" -#: gtk2_ardour/editor_export_audio.cc:112 +#: gtk2_ardour/editor_export_audio.cc:111 msgid "" "There are no ranges to export.\n" "\n" @@ -3397,138 +3567,137 @@ msgstr "" "\n" "Sélectionnez des intervalles dans la barre des intervalles" -#: gtk2_ardour/editor_imageframe.cc:625 gtk2_ardour/editor_imageframe.cc:655 +#: gtk2_ardour/editor_imageframe.cc:622 gtk2_ardour/editor_imageframe.cc:652 msgid "programming error: no ImageFrameView selected" -msgstr "erreur de programmation : aucun ImageFrameView selectionné" +msgstr "programming error: no ImageFrameView selected" -#: gtk2_ardour/editor_imageframe.cc:848 gtk2_ardour/editor_imageframe.cc:870 +#: gtk2_ardour/editor_imageframe.cc:845 gtk2_ardour/editor_imageframe.cc:867 msgid "programming error: no MarkerView selected" -msgstr "erreur de programmation : aucun MarkerView sélectionné" +msgstr "programming error: no MarkerView selected" -#: gtk2_ardour/editor_keyboard.cc:105 +#: gtk2_ardour/editor_keyboard.cc:104 msgid "mute region" msgstr "rendre la région muette" -#: gtk2_ardour/editor_keys.cc:46 +#: gtk2_ardour/editor_keys.cc:45 msgid "keyboard selection" msgstr "sélection au clavier" -#: gtk2_ardour/editor_markers.cc:293 gtk2_ardour/editor_ops.cc:1216 -#: gtk2_ardour/editor_ops.cc:1230 gtk2_ardour/editor_ops.cc:1249 -#: gtk2_ardour/location_ui.cc:776 +#: gtk2_ardour/editor_markers.cc:296 gtk2_ardour/editor_ops.cc:1250 +#: gtk2_ardour/editor_ops.cc:1267 gtk2_ardour/editor_ops.cc:1286 +#: gtk2_ardour/location_ui.cc:782 msgid "add marker" msgstr "ajouter un repère" -#: gtk2_ardour/editor_markers.cc:309 gtk2_ardour/editor_markers.cc:383 -#: gtk2_ardour/editor_markers.cc:555 gtk2_ardour/editor_markers.cc:573 -#: gtk2_ardour/editor_markers.cc:592 gtk2_ardour/editor_markers.cc:611 -#: gtk2_ardour/editor_markers.cc:641 gtk2_ardour/editor_markers.cc:669 -#: gtk2_ardour/editor_markers.cc:697 gtk2_ardour/editor_markers.cc:735 -#: gtk2_ardour/editor_markers.cc:762 gtk2_ardour/editor_markers.cc:785 -#: gtk2_ardour/editor_markers.cc:804 gtk2_ardour/editor_mouse.cc:2027 -#: gtk2_ardour/editor_mouse.cc:4322 +#: gtk2_ardour/editor_markers.cc:312 gtk2_ardour/editor_markers.cc:376 +#: gtk2_ardour/editor_markers.cc:553 gtk2_ardour/editor_markers.cc:571 +#: gtk2_ardour/editor_markers.cc:589 gtk2_ardour/editor_markers.cc:608 +#: gtk2_ardour/editor_markers.cc:627 gtk2_ardour/editor_markers.cc:657 +#: gtk2_ardour/editor_markers.cc:685 gtk2_ardour/editor_markers.cc:713 +#: gtk2_ardour/editor_markers.cc:752 gtk2_ardour/editor_markers.cc:777 +#: gtk2_ardour/editor_markers.cc:804 gtk2_ardour/editor_markers.cc:827 +#: gtk2_ardour/editor_markers.cc:846 gtk2_ardour/editor_mouse.cc:2015 +#: gtk2_ardour/editor_mouse.cc:4351 msgid "programming error: marker canvas item has no marker object pointer!" -msgstr "" -"erreur de programmation : objet canvas de marker sans pointeur d'objet " -"marker !" +msgstr "programming error: marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_markers.cc:333 gtk2_ardour/location_ui.cc:657 +#: gtk2_ardour/editor_markers.cc:326 gtk2_ardour/location_ui.cc:660 msgid "remove marker" msgstr "enlever le repère" -#: gtk2_ardour/editor_markers.cc:461 +#: gtk2_ardour/editor_markers.cc:467 msgid "Locate to Mark" msgstr "Placer la tête de lecture ici" -#: gtk2_ardour/editor_markers.cc:462 +#: gtk2_ardour/editor_markers.cc:468 msgid "Play from Mark" msgstr "Lire depuis ce repère" -#: gtk2_ardour/editor_markers.cc:463 +#: gtk2_ardour/editor_markers.cc:469 msgid "Set Mark from Playhead" -msgstr "créer un repère sur la tête de lecture" - -#: gtk2_ardour/editor_markers.cc:467 -msgid "Rename Mark" -msgstr "renommer le repère" +msgstr "nouv. repère à la tête de lect." -#: gtk2_ardour/editor_markers.cc:468 +#: gtk2_ardour/editor_markers.cc:473 msgid "Hide Mark" msgstr "cacher le repère" -#: gtk2_ardour/editor_markers.cc:469 +#: gtk2_ardour/editor_markers.cc:475 gtk2_ardour/editor_markers.cc:864 +msgid "Rename Mark" +msgstr "renommer le repère" + +#: gtk2_ardour/editor_markers.cc:476 msgid "Remove Mark" msgstr "enlever le repère" -#: gtk2_ardour/editor_markers.cc:482 gtk2_ardour/editor_markers.cc:538 +#: gtk2_ardour/editor_markers.cc:494 msgid "Locate to Range Mark" msgstr "placer la tête de lecture ici" -#: gtk2_ardour/editor_markers.cc:483 gtk2_ardour/editor_markers.cc:539 +#: gtk2_ardour/editor_markers.cc:495 msgid "Play from Range Mark" -msgstr "Lire depuis ce repère" +msgstr "lire depuis ce repère" + +#: gtk2_ardour/editor_markers.cc:497 +msgid "Play Range" +msgstr "lire l'intervalle" -#: gtk2_ardour/editor_markers.cc:484 +#: gtk2_ardour/editor_markers.cc:498 msgid "Loop Range" msgstr "lire en boucle" -#: gtk2_ardour/editor_markers.cc:485 gtk2_ardour/editor_markers.cc:540 +#: gtk2_ardour/editor_markers.cc:500 msgid "Set Range Mark from Playhead" msgstr "placer sur la tête de lecture" -#: gtk2_ardour/editor_markers.cc:486 gtk2_ardour/editor_markers.cc:541 +#: gtk2_ardour/editor_markers.cc:501 msgid "Set Range from Range Selection" msgstr "aligner sur la zone de sélection" -#: gtk2_ardour/editor_markers.cc:490 -msgid "Rename Range" -msgstr "renommer" - -#: gtk2_ardour/editor_markers.cc:491 gtk2_ardour/editor_markers.cc:543 +#: gtk2_ardour/editor_markers.cc:505 msgid "Hide Range" msgstr "cacher" -#: gtk2_ardour/editor_markers.cc:492 +#: gtk2_ardour/editor_markers.cc:507 gtk2_ardour/editor_markers.cc:866 +msgid "Rename Range" +msgstr "renommer" + +#: gtk2_ardour/editor_markers.cc:508 msgid "Remove Range" msgstr "enlever" -#: gtk2_ardour/editor_markers.cc:496 gtk2_ardour/editor_markers.cc:545 +#: gtk2_ardour/editor_markers.cc:513 msgid "Separate Regions in Range" msgstr "séparer la région" -#: gtk2_ardour/editor_markers.cc:497 gtk2_ardour/editor_markers.cc:546 +#: gtk2_ardour/editor_markers.cc:514 msgid "Select All in Range" msgstr "tout dans l'intervalle" -#: gtk2_ardour/editor_markers.cc:523 +#: gtk2_ardour/editor_markers.cc:515 +msgid "Select Range" +msgstr "Définit la zone de sélection" + +#: gtk2_ardour/editor_markers.cc:541 msgid "Set Loop Range" -msgstr "Définir l'intervalle de boucle" +msgstr "Boucle" -#: gtk2_ardour/editor_markers.cc:524 +#: gtk2_ardour/editor_markers.cc:542 msgid "Set Punch Range" -msgstr "Définir l'intervalle de punch in/out" +msgstr "Punch in→out" -#: gtk2_ardour/editor_markers.cc:818 +#: gtk2_ardour/editor_markers.cc:860 msgid "New Name:" msgstr "nouveau nom :" -#: gtk2_ardour/editor_markers.cc:821 -msgid "ardour: rename mark" -msgstr "ardour : renommer le repère" - -#: gtk2_ardour/editor_markers.cc:823 -msgid "ardour: rename range" -msgstr "ardour : renommer l'intervalle" - -#: gtk2_ardour/editor_markers.cc:843 +#: gtk2_ardour/editor_markers.cc:888 msgid "rename marker" msgstr "renommer le repère" -#: gtk2_ardour/editor_markers.cc:869 +#: gtk2_ardour/editor_markers.cc:914 msgid "set loop range" msgstr "définir l'intervalle de boucle" -#: gtk2_ardour/editor_markers.cc:897 +#: gtk2_ardour/editor_markers.cc:942 msgid "set punch range" msgstr "définir l'intervalle de punch in/out" @@ -3536,166 +3705,166 @@ msgstr "définir l'intervalle de punch in/out" msgid "Editor::event_frame() used on unhandled event type %1" msgstr "Editor::event_frame() utilisé sur un événement non géré de type %1" -#: gtk2_ardour/editor_mouse.cc:315 -msgid "select on click" -msgstr "sélectionner au clic" - -#: gtk2_ardour/editor_mouse.cc:1596 +#: gtk2_ardour/editor_mouse.cc:1539 msgid "programming error: start_grab called without drag item" -msgstr "erreur de programmation : start_grab appelé sans objet a ramasser" +msgstr "programming error: start_grab called without drag item" -#: gtk2_ardour/editor_mouse.cc:1820 +#: gtk2_ardour/editor_mouse.cc:1766 msgid "change fade in length" msgstr "modifier la durée de la montée du fondu" -#: gtk2_ardour/editor_mouse.cc:1841 +#: gtk2_ardour/editor_mouse.cc:1798 msgid "programming error: fade out canvas item has no regionview data pointer!" -msgstr "" -"erreur de programmation : fade out canvas item has no regionview data " -"pointer !" +msgstr "programming error: fade out canvas item has no regionview data pointer!" -#: gtk2_ardour/editor_mouse.cc:1915 +#: gtk2_ardour/editor_mouse.cc:1883 msgid "change fade out length" msgstr "modifier la durée de la descente du fondu" -#: gtk2_ardour/editor_mouse.cc:1937 +#: gtk2_ardour/editor_mouse.cc:1915 msgid "programming error: cursor canvas item has no cursor data pointer!" -msgstr "" -"erreur de programmation : objet canvas de curseur sans pointeur de données " -"curseur" +msgstr "programming error: cursor canvas item has no cursor data pointer!" -#: gtk2_ardour/editor_mouse.cc:2162 +#: gtk2_ardour/editor_mouse.cc:2150 msgid "move marker" msgstr "déplacer le repère" -#: gtk2_ardour/editor_mouse.cc:2190 gtk2_ardour/editor_mouse.cc:2221 -#: gtk2_ardour/editor_tempodisplay.cc:488 +#: gtk2_ardour/editor_mouse.cc:2178 gtk2_ardour/editor_mouse.cc:2209 +#: gtk2_ardour/editor_tempodisplay.cc:500 msgid "" "programming error: meter marker canvas item has no marker object pointer!" msgstr "" -"erreur de programmation: meter marker canvas item has no marker object " -"pointer!" +"programming error: meter marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_mouse.cc:2289 +#: gtk2_ardour/editor_mouse.cc:2277 msgid "copy meter mark" msgstr "copier l'indicateur de mesure" -#: gtk2_ardour/editor_mouse.cc:2300 +#: gtk2_ardour/editor_mouse.cc:2288 msgid "move meter mark" msgstr "déplacer l'indicateur de mesure" -#: gtk2_ardour/editor_mouse.cc:2316 gtk2_ardour/editor_mouse.cc:2349 -#: gtk2_ardour/editor_tempodisplay.cc:351 -#: gtk2_ardour/editor_tempodisplay.cc:435 -#: gtk2_ardour/editor_tempodisplay.cc:454 +#: gtk2_ardour/editor_mouse.cc:2304 gtk2_ardour/editor_mouse.cc:2337 +#: gtk2_ardour/editor_tempodisplay.cc:369 +#: gtk2_ardour/editor_tempodisplay.cc:449 +#: gtk2_ardour/editor_tempodisplay.cc:468 msgid "" "programming error: tempo marker canvas item has no marker object pointer!" msgstr "" -"erreur de programmation : objet canvas de marker de tempo sans pointeur " -"d'objet marker !" +"programming error: tempo marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_mouse.cc:2321 gtk2_ardour/editor_mouse.cc:2354 -#: gtk2_ardour/editor_tempodisplay.cc:356 -#: gtk2_ardour/editor_tempodisplay.cc:440 +#: gtk2_ardour/editor_mouse.cc:2309 gtk2_ardour/editor_mouse.cc:2342 +#: gtk2_ardour/editor_tempodisplay.cc:374 +#: gtk2_ardour/editor_tempodisplay.cc:454 msgid "programming error: marker for tempo is not a tempo marker!" -msgstr "" -"erreur de programmation : le marker du tempo n'est pas un marker de tempo !" +msgstr "programming error: marker for tempo is not a tempo marker!" -#: gtk2_ardour/editor_mouse.cc:2421 +#: gtk2_ardour/editor_mouse.cc:2409 msgid "copy tempo mark" msgstr "copier le changement tempo" -#: gtk2_ardour/editor_mouse.cc:2432 +#: gtk2_ardour/editor_mouse.cc:2420 msgid "move tempo mark" msgstr "déplacer le changement tempo" -#: gtk2_ardour/editor_mouse.cc:2447 gtk2_ardour/editor_mouse.cc:2466 -#: gtk2_ardour/editor_mouse.cc:2479 +#: gtk2_ardour/editor_mouse.cc:2435 gtk2_ardour/editor_mouse.cc:2454 +#: gtk2_ardour/editor_mouse.cc:2467 msgid "" "programming error: control point canvas item has no control point object " "pointer!" msgstr "" -"erreur de programmation : point de contrôle de l'objet canvas sans pointeur " -"d'objet point de contrôle !" +"programming error: control point canvas item has no control point object " +"pointer!" -#: gtk2_ardour/editor_mouse.cc:2585 +#: gtk2_ardour/editor_mouse.cc:2573 msgid "programming error: line canvas item has no line pointer!" -msgstr "" -"erreur de programmation : objet canvas de ligne sans pointeur de ligne !" +msgstr "programming error: line canvas item has no line pointer!" -#: gtk2_ardour/editor_mouse.cc:2694 +#: gtk2_ardour/editor_mouse.cc:2682 msgid "move region(s)" msgstr "déplacement de régions" -#: gtk2_ardour/editor_mouse.cc:2757 +#: gtk2_ardour/editor_mouse.cc:2746 msgid "Drag region brush" msgstr "brosse de glissé-déposé de région" -#: gtk2_ardour/editor_mouse.cc:2781 -msgid "Drag region copy" -msgstr "Déplacer la copie de la région" +#: gtk2_ardour/editor_mouse.cc:3274 +msgid "fixed time region copy" +msgstr "Copie verticale de région" -#: gtk2_ardour/editor_mouse.cc:3641 +#: gtk2_ardour/editor_mouse.cc:3276 +msgid "region copy" +msgstr "Copie de région" + +#: gtk2_ardour/editor_mouse.cc:3280 +msgid "fixed time region drag" +msgstr "Déplacement vertical de région" + +#: gtk2_ardour/editor_mouse.cc:3282 +msgid "region drag" +msgstr "Déplacement de région" + +#: gtk2_ardour/editor_mouse.cc:3670 msgid "selection grab" msgstr "capture de sélection" -#: gtk2_ardour/editor_mouse.cc:3683 +#: gtk2_ardour/editor_mouse.cc:3712 msgid "cancel selection" msgstr "annuler la sélection" -#: gtk2_ardour/editor_mouse.cc:3793 +#: gtk2_ardour/editor_mouse.cc:3822 msgid "range selection" msgstr "sélection de zone" -#: gtk2_ardour/editor_mouse.cc:3809 +#: gtk2_ardour/editor_mouse.cc:3838 msgid "trim selection start" msgstr "déplacement début de sélection" -#: gtk2_ardour/editor_mouse.cc:3825 +#: gtk2_ardour/editor_mouse.cc:3854 msgid "trim selection end" msgstr "déplacement fin de sélection" -#: gtk2_ardour/editor_mouse.cc:3842 +#: gtk2_ardour/editor_mouse.cc:3871 msgid "move selection" msgstr "déplacement sélection" -#: gtk2_ardour/editor_mouse.cc:4231 +#: gtk2_ardour/editor_mouse.cc:4260 msgid "Start point trim" msgstr "déplacement point de départ" -#: gtk2_ardour/editor_mouse.cc:4263 +#: gtk2_ardour/editor_mouse.cc:4292 msgid "End point trim" msgstr "déplacement point de fin" -#: gtk2_ardour/editor_mouse.cc:4306 +#: gtk2_ardour/editor_mouse.cc:4335 msgid "trimmed region" msgstr "région raccourcie" -#: gtk2_ardour/editor_mouse.cc:4448 +#: gtk2_ardour/editor_mouse.cc:4478 msgid "new range marker" msgstr "nouvel intervalle" -#: gtk2_ardour/editor_mouse.cc:4692 -msgid "select regions" -msgstr "sélectionner les régions" +#: gtk2_ardour/editor_mouse.cc:4720 +msgid "rubberband selection" +msgstr "sélection élastique" -#: gtk2_ardour/editor_mouse.cc:4721 +#: gtk2_ardour/editor_mouse.cc:4750 msgid "Name for region:" msgstr "Nom de la région :" -#: gtk2_ardour/editor_mouse.cc:4785 +#: gtk2_ardour/editor_mouse.cc:4814 msgid "timestretch" msgstr "déformation temporelle" -#: gtk2_ardour/editor_ops.cc:115 +#: gtk2_ardour/editor_ops.cc:116 msgid "split" msgstr "séparer" -#: gtk2_ardour/editor_ops.cc:154 +#: gtk2_ardour/editor_ops.cc:155 msgid "remove region" msgstr "enlever la région" -#: gtk2_ardour/editor_ops.cc:174 +#: gtk2_ardour/editor_ops.cc:175 msgid "" " This is destructive, will possibly delete audio files\n" "It cannot be undone\n" @@ -3705,214 +3874,169 @@ msgstr "" "Elle ne pourra pas être annulée.\n" "Voulez-vous vraiment détruire %1 ?" -#: gtk2_ardour/editor_ops.cc:178 +#: gtk2_ardour/editor_ops.cc:179 msgid "these regions" msgstr "ces régions" -#: gtk2_ardour/editor_ops.cc:178 +#: gtk2_ardour/editor_ops.cc:179 msgid "this region" msgstr "cette région" -#: gtk2_ardour/editor_ops.cc:180 gtk2_ardour/editor_ops.cc:3290 -#: gtk2_ardour/route_ui.cc:715 gtk2_ardour/visual_time_axis.cc:278 -msgid "No, do nothing." -msgstr "Non, ne rien faire" - -#: gtk2_ardour/editor_ops.cc:183 +#: gtk2_ardour/editor_ops.cc:184 msgid "Yes, destroy them." msgstr "Oui, les détruire." -#: gtk2_ardour/editor_ops.cc:185 gtk2_ardour/editor_ops.cc:3291 +#: gtk2_ardour/editor_ops.cc:186 gtk2_ardour/editor_ops.cc:3163 msgid "Yes, destroy it." msgstr "Oui, la détruire" -#: gtk2_ardour/editor_ops.cc:274 gtk2_ardour/editor_ops.cc:302 +#: gtk2_ardour/editor_ops.cc:272 gtk2_ardour/editor_ops.cc:300 msgid "extend selection" msgstr "étendre la sélection" -#: gtk2_ardour/editor_ops.cc:318 gtk2_ardour/editor_ops.cc:353 -#: gtk2_ardour/editor_ops.cc:398 gtk2_ardour/editor_ops.cc:425 +#: gtk2_ardour/editor_ops.cc:316 gtk2_ardour/editor_ops.cc:351 +#: gtk2_ardour/editor_ops.cc:396 gtk2_ardour/editor_ops.cc:423 msgid "nudge forward" msgstr "décaler vers la droite" -#: gtk2_ardour/editor_ops.cc:490 +#: gtk2_ardour/editor_ops.cc:488 msgid "build_region_boundary_cache called with snap_type = %1" msgstr "build_region_boundary_cache appelé avec snap_type = %1" -#: gtk2_ardour/editor_ops.cc:1349 -msgid "select all within" -msgstr "sélectionner tout dedans" - -#: gtk2_ardour/editor_ops.cc:1381 -msgid "set selection from region" -msgstr "zone de sélection sur la région" - -#: gtk2_ardour/editor_ops.cc:1414 -msgid "set selection from range" -msgstr "sélection depuis l'intervalle" - -#: gtk2_ardour/editor_ops.cc:1444 -msgid "select all from range" -msgstr "sélectionner tout à partir de la zone" - -#: gtk2_ardour/editor_ops.cc:1466 -msgid "select all from punch" -msgstr "sélectionner tout depuis le point de punch in/out" - -#: gtk2_ardour/editor_ops.cc:1488 -msgid "select all from loop" -msgstr "sélectionner tout depuis la boucle" - -#: gtk2_ardour/editor_ops.cc:1502 -msgid "select all after cursor" -msgstr "sélectionner tout après le curseur" - -#: gtk2_ardour/editor_ops.cc:1507 -msgid "select all before cursor" -msgstr "sélectionner tout avant le curseur" - -#: gtk2_ardour/editor_ops.cc:1537 -msgid "select all between cursors" -msgstr "sélectionner tout entre les curseurs" - -#: gtk2_ardour/editor_ops.cc:1668 +#: gtk2_ardour/editor_ops.cc:1407 msgid "clear markers" msgstr "effacer les repères" -#: gtk2_ardour/editor_ops.cc:1681 +#: gtk2_ardour/editor_ops.cc:1420 msgid "clear ranges" msgstr "effacer les intervalles" -#: gtk2_ardour/editor_ops.cc:1701 +#: gtk2_ardour/editor_ops.cc:1440 msgid "clear locations" msgstr "effacer les repères temporels" -#: gtk2_ardour/editor_ops.cc:1752 +#: gtk2_ardour/editor_ops.cc:1513 msgid "insert dragged region" msgstr "glissé-déposé de région" -#: gtk2_ardour/editor_ops.cc:1795 +#: gtk2_ardour/editor_ops.cc:1556 msgid "insert region" msgstr "insertion de région" -#: gtk2_ardour/editor_ops.cc:1986 gtk2_ardour/io_selector.cc:60 -#: gtk2_ardour/io_selector.cc:794 gtk2_ardour/connection_editor.cc:86 +#: gtk2_ardour/editor_ops.cc:1755 gtk2_ardour/io_selector.cc:59 +#: gtk2_ardour/io_selector.cc:747 gtk2_ardour/connection_editor.cc:85 msgid "OK" msgstr "OK" -#: gtk2_ardour/editor_ops.cc:1993 -msgid "ardour: rename region" -msgstr "ardour : renommer la région" +#: gtk2_ardour/editor_ops.cc:1763 +msgid "Rename Region" +msgstr "renommer la région" -#: gtk2_ardour/editor_ops.cc:2218 gtk2_ardour/editor_ops.cc:2271 +#: gtk2_ardour/editor_ops.cc:2005 gtk2_ardour/editor_ops.cc:2064 msgid "separate" msgstr "séparer" -#: gtk2_ardour/editor_ops.cc:2336 +#: gtk2_ardour/editor_ops.cc:2128 msgid "trim to selection" msgstr "raccourcir à la sélection" -#: gtk2_ardour/editor_ops.cc:2377 +#: gtk2_ardour/editor_ops.cc:2173 msgid "region fill" msgstr "remplissage" -#: gtk2_ardour/editor_ops.cc:2441 +#: gtk2_ardour/editor_ops.cc:2237 msgid "fill selection" msgstr "remplir la sélection" -#: gtk2_ardour/editor_ops.cc:2462 +#: gtk2_ardour/editor_ops.cc:2258 msgid "Programming error. that region doesn't cover that position" -msgstr "erreur du logiciel : cette région ne recouvre pas cette position" +msgstr "Programming error. that region doesn't cover that position" -#: gtk2_ardour/editor_ops.cc:2465 +#: gtk2_ardour/editor_ops.cc:2261 msgid "set region sync position" msgstr "placer la synchro de région" -#: gtk2_ardour/editor_ops.cc:2481 +#: gtk2_ardour/editor_ops.cc:2277 msgid "Place the edit cursor at the desired sync point" msgstr "Placer le curseur d'édition au point de synchronisation voulu" -#: gtk2_ardour/editor_ops.cc:2486 +#: gtk2_ardour/editor_ops.cc:2282 msgid "set sync from edit cursor" msgstr "point de synchro au curseur d'édition" -#: gtk2_ardour/editor_ops.cc:2499 +#: gtk2_ardour/editor_ops.cc:2295 msgid "remove sync" msgstr "enlever le point de synchro" -#: gtk2_ardour/editor_ops.cc:2514 +#: gtk2_ardour/editor_ops.cc:2310 msgid "naturalize" msgstr "naturaliser" -#: gtk2_ardour/editor_ops.cc:2579 +#: gtk2_ardour/editor_ops.cc:2375 msgid "align selection (relative)" msgstr "aligner la sélection (relatif)" -#: gtk2_ardour/editor_ops.cc:2608 +#: gtk2_ardour/editor_ops.cc:2404 msgid "align selection" msgstr "aligner la sélection" -#: gtk2_ardour/editor_ops.cc:2620 +#: gtk2_ardour/editor_ops.cc:2416 msgid "align region" msgstr "aligner la région" -#: gtk2_ardour/editor_ops.cc:2668 gtk2_ardour/editor_ops.cc:2694 +#: gtk2_ardour/editor_ops.cc:2464 gtk2_ardour/editor_ops.cc:2490 msgid "trim to edit" msgstr "raccourcir au curseur" -#: gtk2_ardour/editor_ops.cc:2746 -msgid "ardour: freeze" -msgstr "ardour : blocage de la piste" - -#: gtk2_ardour/editor_ops.cc:2751 +#: gtk2_ardour/editor_ops.cc:2549 msgid "Cancel Freeze" msgstr "annuler le blocage" -#: gtk2_ardour/editor_ops.cc:2788 +#: gtk2_ardour/editor_ops.cc:2592 msgid "bounce range" msgstr "copier la sélection vers un fichier audio (bounce)" -#: gtk2_ardour/editor_ops.cc:2842 +#: gtk2_ardour/editor_ops.cc:2644 msgid "cut" msgstr "couper" -#: gtk2_ardour/editor_ops.cc:2845 +#: gtk2_ardour/editor_ops.cc:2647 msgid "copy" msgstr "copier" -#: gtk2_ardour/editor_ops.cc:2858 +#: gtk2_ardour/editor_ops.cc:2660 msgid " objects" msgstr " objets" -#: gtk2_ardour/editor_ops.cc:2884 +#: gtk2_ardour/editor_ops.cc:2686 msgid " range" msgstr " intervalle" -#: gtk2_ardour/editor_ops.cc:3047 +#: gtk2_ardour/editor_ops.cc:2915 msgid "paste" msgstr "coller" -#: gtk2_ardour/editor_ops.cc:3085 +#: gtk2_ardour/editor_ops.cc:2957 msgid "paste chunk" msgstr "coller le fragment" -#: gtk2_ardour/editor_ops.cc:3126 +#: gtk2_ardour/editor_ops.cc:3000 msgid "duplicate region" msgstr "dupliquer la région" -#: gtk2_ardour/editor_ops.cc:3171 +#: gtk2_ardour/editor_ops.cc:3045 msgid "duplicate selection" msgstr "dupliquer la sélection" -#: gtk2_ardour/editor_ops.cc:3229 +#: gtk2_ardour/editor_ops.cc:3101 msgid "clear playlist" msgstr "effacer la liste de lecture" -#: gtk2_ardour/editor_ops.cc:3259 +#: gtk2_ardour/editor_ops.cc:3131 msgid "nudge track" msgstr "décaler la piste" -#: gtk2_ardour/editor_ops.cc:3287 +#: gtk2_ardour/editor_ops.cc:3159 msgid "" "Do you really want to destroy the last capture?\n" "(This is destructive and cannot be undone)" @@ -3920,186 +4044,262 @@ msgstr "" "Voulez-vous vraiment supprimer le dernier enregistrement ?\n" "(cette opération est destructive et ne pourra pas être annulée)" -#: gtk2_ardour/editor_ops.cc:3315 +#: gtk2_ardour/editor_ops.cc:3187 msgid "normalize" msgstr "normaliser" -#: gtk2_ardour/editor_ops.cc:3368 +#: gtk2_ardour/editor_ops.cc:3240 msgid "reverse regions" msgstr "inverser les régions" -#: gtk2_ardour/editor_region_list.cc:98 gtk2_ardour/editor_region_list.cc:103 -#: gtk2_ardour/editor_region_list.cc:106 gtk2_ardour/location_ui.cc:57 +#: gtk2_ardour/editor_ops.cc:3353 +msgid "reset region gain" +msgstr "réinitialiser le gain" + +#: gtk2_ardour/editor_ops.cc:3442 +msgid "set fade in shape" +msgstr "règle la forme de la montée" + +#: gtk2_ardour/editor_ops.cc:3466 +msgid "set fade out shape" +msgstr "règle la forme de la descente" + +#: gtk2_ardour/editor_ops.cc:3490 +msgid "set fade in active" +msgstr "active la montée" + +#: gtk2_ardour/editor_ops.cc:3514 +msgid "set fade out active" +msgstr "active la descente" + +#: gtk2_ardour/editor_region_list.cc:108 gtk2_ardour/editor_region_list.cc:114 +#: gtk2_ardour/editor_region_list.cc:117 gtk2_ardour/location_ui.cc:57 msgid "Hidden" msgstr "Caché" -#: gtk2_ardour/editor_route_list.cc:100 gtk2_ardour/editor_route_list.cc:101 -#: gtk2_ardour/editor_route_list.cc:246 +#: gtk2_ardour/editor_region_list.cc:172 +msgid " (MISSING)" +msgstr " (MANQUANT)" + +#: gtk2_ardour/editor_route_list.cc:101 gtk2_ardour/editor_route_list.cc:102 +#: gtk2_ardour/editor_route_list.cc:252 msgid "editor" msgstr "éditeur" -#: gtk2_ardour/editor_route_list.cc:313 gtk2_ardour/mixer_ui.cc:717 +#: gtk2_ardour/editor_route_list.cc:320 gtk2_ardour/mixer_ui.cc:728 msgid "Show All" msgstr "Tout montrer" -#: gtk2_ardour/editor_route_list.cc:314 gtk2_ardour/mixer_ui.cc:718 +#: gtk2_ardour/editor_route_list.cc:321 gtk2_ardour/mixer_ui.cc:729 msgid "Hide All" msgstr "Tout cacher" -#: gtk2_ardour/editor_route_list.cc:315 gtk2_ardour/mixer_ui.cc:719 +#: gtk2_ardour/editor_route_list.cc:322 gtk2_ardour/mixer_ui.cc:730 msgid "Show All Audio Tracks" msgstr "Afficher toutes les pistes" -#: gtk2_ardour/editor_route_list.cc:316 gtk2_ardour/mixer_ui.cc:720 +#: gtk2_ardour/editor_route_list.cc:323 gtk2_ardour/mixer_ui.cc:731 msgid "Hide All Audio Tracks" msgstr "cacher toutes les pistes" -#: gtk2_ardour/editor_route_list.cc:317 gtk2_ardour/mixer_ui.cc:721 +#: gtk2_ardour/editor_route_list.cc:324 gtk2_ardour/mixer_ui.cc:732 msgid "Show All Audio Busses" msgstr "afficher tous les bus" -#: gtk2_ardour/editor_route_list.cc:318 gtk2_ardour/mixer_ui.cc:722 +#: gtk2_ardour/editor_route_list.cc:325 gtk2_ardour/mixer_ui.cc:733 msgid "Hide All Audio Busses" msgstr "cacher tous les bus" -#: gtk2_ardour/editor_rulers.cc:311 +#: gtk2_ardour/editor_rulers.cc:345 msgid "New location marker" msgstr "Nouveau repère temporel" -#: gtk2_ardour/editor_rulers.cc:312 +#: gtk2_ardour/editor_rulers.cc:346 msgid "Clear all locations" -msgstr "Effacer tous les repères temporels" +msgstr "Supprimer tous les repères temporels" + +#: gtk2_ardour/editor_rulers.cc:347 +msgid "Unhide locations" +msgstr "Réafficher les repères temporels" -#: gtk2_ardour/editor_rulers.cc:317 +#: gtk2_ardour/editor_rulers.cc:352 msgid "Clear all ranges" -msgstr "Effacer tous les intervalles" +msgstr "Supprimer tous les intervalles" -#: gtk2_ardour/editor_rulers.cc:326 +#: gtk2_ardour/editor_rulers.cc:353 +msgid "Unhide ranges" +msgstr "Réafficher les intervalles" + +#: gtk2_ardour/editor_rulers.cc:362 msgid "New Tempo" msgstr "Nouveau tempo" -#: gtk2_ardour/editor_rulers.cc:327 +#: gtk2_ardour/editor_rulers.cc:363 msgid "Clear tempo" msgstr "Effacer le tempo" -#: gtk2_ardour/editor_rulers.cc:332 +#: gtk2_ardour/editor_rulers.cc:368 msgid "New Meter" msgstr "Nouveau type de mesure" -#: gtk2_ardour/editor_rulers.cc:333 +#: gtk2_ardour/editor_rulers.cc:369 msgid "Clear meter" msgstr "Effacer les types de mesure" -#: gtk2_ardour/editor_rulers.cc:341 +#: gtk2_ardour/editor_rulers.cc:377 msgid "Min:Secs" msgstr "h:min:sec" -#: gtk2_ardour/editor_selection_list.cc:108 +#: gtk2_ardour/editor_selection.cc:564 gtk2_ardour/editor_selection.cc:613 +msgid "set selected regions" +msgstr "sélection de régions" + +#: gtk2_ardour/editor_selection.cc:810 +msgid "select all within" +msgstr "sélectionner tout dedans" + +#: gtk2_ardour/editor_selection.cc:840 +msgid "set selection from region" +msgstr "zone de sélection sur la région" + +#: gtk2_ardour/editor_selection.cc:873 +msgid "set selection from range" +msgstr "sélection depuis l'intervalle" + +#: gtk2_ardour/editor_selection.cc:903 +msgid "select all from range" +msgstr "sélectionner tout à partir de la zone" + +#: gtk2_ardour/editor_selection.cc:925 +msgid "select all from punch" +msgstr "sélectionner tout depuis le point de punch in/out" + +#: gtk2_ardour/editor_selection.cc:947 +msgid "select all from loop" +msgstr "sélectionner tout depuis la boucle" + +#: gtk2_ardour/editor_selection.cc:961 +msgid "select all after cursor" +msgstr "sélectionner tout après le curseur" + +#: gtk2_ardour/editor_selection.cc:966 +msgid "select all before cursor" +msgstr "sélectionner tout avant le curseur" + +#: gtk2_ardour/editor_selection.cc:996 +msgid "select all between cursors" +msgstr "sélectionner tout entre les curseurs" + +#: gtk2_ardour/editor_selection_list.cc:180 msgid "Name for Chunk:" msgstr "nom du fragment :" -#: gtk2_ardour/editor_selection_list.cc:111 +#: gtk2_ardour/editor_selection_list.cc:183 msgid "Create Chunk" msgstr "créer un fragment" -#: gtk2_ardour/editor_selection_list.cc:111 +#: gtk2_ardour/editor_selection_list.cc:183 msgid "Forget it" msgstr "Abandonner" -#: gtk2_ardour/editor_tempodisplay.cc:268 -#: gtk2_ardour/editor_tempodisplay.cc:311 +#: gtk2_ardour/editor_selection_list.cc:206 +msgid "No selectable material found in the currently selected time range" +msgstr "Rien ne peut être sélectionné dans la zone choisie" + +#: gtk2_ardour/editor_tempodisplay.cc:290 +#: gtk2_ardour/editor_tempodisplay.cc:331 msgid "add" msgstr "ajouter" -#: gtk2_ardour/editor_tempodisplay.cc:290 +#: gtk2_ardour/editor_tempodisplay.cc:312 msgid "add tempo mark" msgstr "ajouter un changement de tempo" -#: gtk2_ardour/editor_tempodisplay.cc:333 +#: gtk2_ardour/editor_tempodisplay.cc:353 msgid "add meter mark" msgstr "ajouter un indicateur de type de mesure" -#: gtk2_ardour/editor_tempodisplay.cc:368 -#: gtk2_ardour/editor_tempodisplay.cc:399 +#: gtk2_ardour/editor_tempodisplay.cc:386 +#: gtk2_ardour/editor_tempodisplay.cc:415 msgid "done" msgstr "terminé" -#: gtk2_ardour/editor_tempodisplay.cc:386 -#: gtk2_ardour/editor_tempodisplay.cc:417 +#: gtk2_ardour/editor_tempodisplay.cc:404 +#: gtk2_ardour/editor_tempodisplay.cc:433 msgid "replace tempo mark" msgstr "remplacer le changement de tempo" -#: gtk2_ardour/editor_tempodisplay.cc:459 -#: gtk2_ardour/editor_tempodisplay.cc:493 +#: gtk2_ardour/editor_tempodisplay.cc:473 +#: gtk2_ardour/editor_tempodisplay.cc:505 msgid "programming error: marker for meter is not a meter marker!" -msgstr "erreur de programmation : marker for meter is not a meter marker!" +msgstr "programming error: marker for meter is not a meter marker!" -#: gtk2_ardour/editor_tempodisplay.cc:469 -#: gtk2_ardour/editor_tempodisplay.cc:505 +#: gtk2_ardour/editor_tempodisplay.cc:483 +#: gtk2_ardour/editor_tempodisplay.cc:517 msgid "remove tempo mark" msgstr "enlever le changement de tempo" -#: gtk2_ardour/editor_timefx.cc:52 +#: gtk2_ardour/editor_timefx.cc:54 msgid "Quick but Ugly" msgstr "rapide, basse qualité" -#: gtk2_ardour/editor_timefx.cc:53 +#: gtk2_ardour/editor_timefx.cc:55 msgid "Skip Anti-aliasing" msgstr "pas d'anti-crénelage" -#: gtk2_ardour/editor_timefx.cc:57 -msgid "ardour: timestretch" -msgstr "ardour : déformation temporelle" - -#: gtk2_ardour/editor_timefx.cc:58 +#: gtk2_ardour/editor_timefx.cc:59 msgid "TimeStretchDialog" msgstr "TimeStretchDialog" -#: gtk2_ardour/editor_timefx.cc:71 +#: gtk2_ardour/editor_timefx.cc:62 +msgid "Timestretch" +msgstr "Étirer / Contracter" + +#: gtk2_ardour/editor_timefx.cc:76 msgid "Stretch/Shrink it" msgstr "allonger ou contracter" -#: gtk2_ardour/editor_timefx.cc:74 gtk2_ardour/editor_timefx.cc:75 +#: gtk2_ardour/editor_timefx.cc:79 gtk2_ardour/editor_timefx.cc:80 msgid "TimeStretchButton" msgstr "TimeStretchButton" -#: gtk2_ardour/editor_timefx.cc:76 +#: gtk2_ardour/editor_timefx.cc:81 msgid "TimeStretchProgress" msgstr "TimeStretchProgress" -#: gtk2_ardour/editor_timefx.cc:140 +#: gtk2_ardour/editor_timefx.cc:145 msgid "timestretch cannot be started - thread creation error" msgstr "" "déformation temporelle impossible à démarrer – erreur de création de thread" -#: gtk2_ardour/export_dialog.cc:59 gtk2_ardour/export_dialog.cc:399 -#: gtk2_ardour/export_dialog.cc:1027 gtk2_ardour/export_dialog.cc:1195 +#: gtk2_ardour/export_dialog.cc:59 gtk2_ardour/export_dialog.cc:401 +#: gtk2_ardour/export_dialog.cc:1029 gtk2_ardour/export_dialog.cc:1197 msgid "22.05kHz" msgstr "22,05 kHz" -#: gtk2_ardour/export_dialog.cc:60 gtk2_ardour/export_dialog.cc:402 -#: gtk2_ardour/export_dialog.cc:417 gtk2_ardour/export_dialog.cc:1029 -#: gtk2_ardour/export_dialog.cc:1197 +#: gtk2_ardour/export_dialog.cc:60 gtk2_ardour/export_dialog.cc:404 +#: gtk2_ardour/export_dialog.cc:419 gtk2_ardour/export_dialog.cc:1031 +#: gtk2_ardour/export_dialog.cc:1199 msgid "44.1kHz" msgstr "44,1 kHz" -#: gtk2_ardour/export_dialog.cc:61 gtk2_ardour/export_dialog.cc:405 -#: gtk2_ardour/export_dialog.cc:1031 gtk2_ardour/export_dialog.cc:1199 +#: gtk2_ardour/export_dialog.cc:61 gtk2_ardour/export_dialog.cc:407 +#: gtk2_ardour/export_dialog.cc:1033 gtk2_ardour/export_dialog.cc:1201 msgid "48kHz" msgstr "48 kHz" -#: gtk2_ardour/export_dialog.cc:62 gtk2_ardour/export_dialog.cc:408 -#: gtk2_ardour/export_dialog.cc:1033 gtk2_ardour/export_dialog.cc:1201 +#: gtk2_ardour/export_dialog.cc:62 gtk2_ardour/export_dialog.cc:410 +#: gtk2_ardour/export_dialog.cc:1035 gtk2_ardour/export_dialog.cc:1203 msgid "88.2kHz" msgstr "88,2 kHz" -#: gtk2_ardour/export_dialog.cc:63 gtk2_ardour/export_dialog.cc:411 -#: gtk2_ardour/export_dialog.cc:1035 gtk2_ardour/export_dialog.cc:1203 +#: gtk2_ardour/export_dialog.cc:63 gtk2_ardour/export_dialog.cc:413 +#: gtk2_ardour/export_dialog.cc:1037 gtk2_ardour/export_dialog.cc:1205 msgid "96kHz" msgstr "96 kHz" -#: gtk2_ardour/export_dialog.cc:64 gtk2_ardour/export_dialog.cc:414 -#: gtk2_ardour/export_dialog.cc:1037 gtk2_ardour/export_dialog.cc:1205 +#: gtk2_ardour/export_dialog.cc:64 gtk2_ardour/export_dialog.cc:416 +#: gtk2_ardour/export_dialog.cc:1039 gtk2_ardour/export_dialog.cc:1207 msgid "192kHz" msgstr "192 kHz" @@ -4107,23 +4307,23 @@ msgstr "192 kHz" msgid "best" msgstr "meilleur" -#: gtk2_ardour/export_dialog.cc:70 gtk2_ardour/export_dialog.cc:1212 +#: gtk2_ardour/export_dialog.cc:70 gtk2_ardour/export_dialog.cc:1214 msgid "fastest" msgstr "rapide" -#: gtk2_ardour/export_dialog.cc:71 gtk2_ardour/export_dialog.cc:1214 +#: gtk2_ardour/export_dialog.cc:71 gtk2_ardour/export_dialog.cc:1216 msgid "linear" msgstr "linéaire" -#: gtk2_ardour/export_dialog.cc:72 gtk2_ardour/export_dialog.cc:1216 +#: gtk2_ardour/export_dialog.cc:72 gtk2_ardour/export_dialog.cc:1218 msgid "better" msgstr "mieux" -#: gtk2_ardour/export_dialog.cc:73 gtk2_ardour/export_dialog.cc:1218 +#: gtk2_ardour/export_dialog.cc:73 gtk2_ardour/export_dialog.cc:1220 msgid "intermediate" msgstr "intermédiaire" -#: gtk2_ardour/export_dialog.cc:79 gtk2_ardour/export_dialog.cc:1227 +#: gtk2_ardour/export_dialog.cc:79 gtk2_ardour/export_dialog.cc:1229 msgid "Rectangular" msgstr "Rectangulaire" @@ -4131,16 +4331,12 @@ msgstr "Rectangulaire" msgid "Shaped Noise" msgstr "Remodelage (shaped noise)" -#: gtk2_ardour/export_dialog.cc:81 gtk2_ardour/export_dialog.cc:1229 +#: gtk2_ardour/export_dialog.cc:81 gtk2_ardour/export_dialog.cc:1231 msgid "Triangular" msgstr "Triangulaire" -#: gtk2_ardour/export_dialog.cc:86 -msgid "stereo" -msgstr "stéréo" - -#: gtk2_ardour/export_dialog.cc:87 gtk2_ardour/export_dialog.cc:486 -#: gtk2_ardour/export_dialog.cc:1055 gtk2_ardour/export_dialog.cc:1177 +#: gtk2_ardour/export_dialog.cc:87 gtk2_ardour/export_dialog.cc:488 +#: gtk2_ardour/export_dialog.cc:1057 gtk2_ardour/export_dialog.cc:1179 msgid "mono" msgstr "mono" @@ -4192,126 +4388,123 @@ msgstr "type d'interpolation" msgid "Export CD Marker File Only" msgstr "exporter simplement un fichier de marqueurs de CD" -#: gtk2_ardour/export_dialog.cc:112 -msgid "Export to File" -msgstr "exporter vers un fichier" - -#: gtk2_ardour/export_dialog.cc:113 gtk2_ardour/option_editor.cc:82 -#: gtk2_ardour/option_editor.cc:83 +#: gtk2_ardour/export_dialog.cc:112 gtk2_ardour/option_editor.cc:84 +#: gtk2_ardour/option_editor.cc:85 msgid "Browse" msgstr "Parcourir" -#: gtk2_ardour/export_dialog.cc:114 +#: gtk2_ardour/export_dialog.cc:113 msgid "Specific tracks ..." msgstr "Pistes spécifiques..." -#: gtk2_ardour/export_dialog.cc:125 -msgid "ardour: export" -msgstr "ardour : exporter" - -#: gtk2_ardour/export_dialog.cc:126 -msgid "ardour_export" -msgstr "ardour_export" - -#: gtk2_ardour/export_dialog.cc:139 gtk2_ardour/export_dialog.cc:155 -#: gtk2_ardour/mixer_strip.cc:121 gtk2_ardour/mixer_strip.cc:727 +#: gtk2_ardour/export_dialog.cc:141 gtk2_ardour/export_dialog.cc:157 +#: gtk2_ardour/mixer_strip.cc:124 gtk2_ardour/mixer_strip.cc:739 msgid "Output" msgstr "Sortie" -#: gtk2_ardour/export_dialog.cc:633 +#: gtk2_ardour/export_dialog.cc:635 msgid "Editor: cannot open \"%1\" as export file for CD toc file" msgstr "Editeur : impossible d'écrire l'index TOC du CD dans le fichier « %1 »" -#: gtk2_ardour/export_dialog.cc:759 +#: gtk2_ardour/export_dialog.cc:761 msgid "Editor: cannot open \"%1\" as export file for CD cue file" msgstr "" "Editeur : impossible d'écrire le descripteur CUE du CD dans le fichier « %1 »" -#: gtk2_ardour/export_dialog.cc:778 +#: gtk2_ardour/export_dialog.cc:780 msgid "WAV" msgstr "WAV" -#: gtk2_ardour/export_dialog.cc:912 +#: gtk2_ardour/export_dialog.cc:914 msgid "Stop Export" msgstr "Arrêter l'exportation" -#: gtk2_ardour/export_dialog.cc:1131 +#: gtk2_ardour/export_dialog.cc:1133 msgid "Please enter a valid filename." msgstr "veuillez entrer un nom de fichier valide" -#: gtk2_ardour/export_dialog.cc:1141 +#: gtk2_ardour/export_dialog.cc:1143 msgid "Please specify a complete filename for the audio file." msgstr "veuiller donner un nom complet pour le fichier audio" -#: gtk2_ardour/export_dialog.cc:1147 +#: gtk2_ardour/export_dialog.cc:1149 msgid "File already exists, do you want to overwrite it?" msgstr "Le fichier existe déjà . Voulez-vous l'écraser ?" -#: gtk2_ardour/export_dialog.cc:1159 -#: gtk2_ardour/export_range_markers_dialog.cc:153 +#: gtk2_ardour/export_dialog.cc:1161 +#: gtk2_ardour/export_range_markers_dialog.cc:160 msgid "Cannot write file in: " msgstr "Impossible d'écrire le fichier dans :" -#: gtk2_ardour/export_range_markers_dialog.cc:135 +#: gtk2_ardour/export_session_dialog.cc:29 +#: gtk2_ardour/export_region_dialog.cc:35 +msgid "Export to File" +msgstr "exporter vers un fichier" + +#: gtk2_ardour/export_region_dialog.cc:34 +msgid "ardour: export region" +msgstr "ardour : export d'une région" + +#: gtk2_ardour/export_range_markers_dialog.cc:41 +msgid "ardour: export ranges" +msgstr "ardour : export de régions" + +#: gtk2_ardour/export_range_markers_dialog.cc:42 +msgid "Export to Directory" +msgstr "exporter vers un dossier" + +#: gtk2_ardour/export_range_markers_dialog.cc:143 msgid "Please enter a valid target directory." msgstr "Veuillez entrer un nom de dossier valide." -#: gtk2_ardour/export_range_markers_dialog.cc:143 -msgid "" -"Please select an existing target directory. Files\n" -"are not allowed!" -msgstr "" -"Veuillez sélectionner un dossier existant.\n" -"(et pas un fichier)" +#: gtk2_ardour/export_range_markers_dialog.cc:151 +msgid "Please select an existing target directory. Files are not allowed!" +msgstr "Veuillez sélectionner un dossier existant (pas un fichier)" -#: gtk2_ardour/gain_automation_time_axis.cc:65 +#: gtk2_ardour/gain_automation_time_axis.cc:64 msgid "add gain automation event" msgstr "ajout d'événement d'autom. de gain" -#: gtk2_ardour/gain_meter.cc:67 -msgid "cannot find images for fader slider" -msgstr "Impossible de trouver les images des atténuateurs" - -#: gtk2_ardour/gain_meter.cc:74 -msgid "cannot find images for fader rail" -msgstr "Impossible de trouver les images des rails d'attenuateurs" - -#: gtk2_ardour/gain_meter.cc:125 gtk2_ardour/gain_meter.cc:334 -#: gtk2_ardour/gain_meter.cc:496 gtk2_ardour/gain_meter.cc:541 +#: gtk2_ardour/gain_meter.cc:112 gtk2_ardour/gain_meter.cc:330 +#: gtk2_ardour/gain_meter.cc:519 gtk2_ardour/gain_meter.cc:590 msgid "-inf" msgstr "-inf" -#: gtk2_ardour/gain_meter.cc:135 +#: gtk2_ardour/gain_meter.cc:123 msgid "Fader automation mode" -msgstr "mode d'automatisation d'atténuateur" +msgstr "mode d'automatisation du gain" -#: gtk2_ardour/gain_meter.cc:136 +#: gtk2_ardour/gain_meter.cc:124 msgid "Fader automation type" -msgstr "type d'automatisation d'atténuateur" +msgstr "type d'automatisation du gain" -#: gtk2_ardour/gain_meter.cc:177 gtk2_ardour/gain_meter.cc:819 -#: gtk2_ardour/panner_ui.cc:97 gtk2_ardour/panner_ui.cc:797 +#: gtk2_ardour/gain_meter.cc:169 gtk2_ardour/gain_meter.cc:884 +#: gtk2_ardour/panner_ui.cc:98 gtk2_ardour/panner_ui.cc:784 msgid "Abs" msgstr "abs" -#: gtk2_ardour/gain_meter.cc:474 +#: gtk2_ardour/gain_meter.cc:497 msgid "-Inf" msgstr "-inf" -#: gtk2_ardour/gain_meter.cc:783 gtk2_ardour/mixer_strip.cc:730 -#: gtk2_ardour/panner_ui.cc:761 -msgid "O" -msgstr "O" +#: gtk2_ardour/gain_meter.cc:700 gtk2_ardour/gain_meter.cc:715 +msgid "meter point change" +msgstr "changt source vu-mètre" + +#: gtk2_ardour/gain_meter.cc:848 gtk2_ardour/mixer_strip.cc:449 +#: gtk2_ardour/panner_ui.cc:748 +msgid "M" +msgstr "M" -#: gtk2_ardour/gain_meter.cc:786 gtk2_ardour/panner_ui.cc:764 +#: gtk2_ardour/gain_meter.cc:851 gtk2_ardour/panner_ui.cc:751 msgid "P" msgstr "P" -#: gtk2_ardour/gain_meter.cc:789 gtk2_ardour/panner_ui.cc:767 +#: gtk2_ardour/gain_meter.cc:854 gtk2_ardour/panner_ui.cc:754 msgid "T" msgstr "T" -#: gtk2_ardour/gain_meter.cc:792 gtk2_ardour/panner_ui.cc:770 +#: gtk2_ardour/gain_meter.cc:857 gtk2_ardour/panner_ui.cc:757 msgid "W" msgstr "W" @@ -4355,150 +4548,103 @@ msgstr "afficher la position" msgid "Draw current ruler position" msgstr "dessiner la position actuelle de la règle" -#: gtk2_ardour/imageframe_socket_handler.cc:127 +#: gtk2_ardour/imageframe_socket_handler.cc:126 msgid "Image Compositor Socket has been shutdown/closed" msgstr "Le socket du compositeur d'image a été arrêté ou fermé" -#: gtk2_ardour/imageframe_time_axis.cc:286 +#: gtk2_ardour/imageframe_time_axis.cc:285 msgid "0.5 seconds" msgstr "0,5 seconde" -#: gtk2_ardour/imageframe_time_axis.cc:287 gtk2_ardour/marker_time_axis.cc:242 +#: gtk2_ardour/imageframe_time_axis.cc:286 gtk2_ardour/marker_time_axis.cc:241 msgid "1 seconds" msgstr "1 seconde" -#: gtk2_ardour/imageframe_time_axis.cc:288 gtk2_ardour/marker_time_axis.cc:243 +#: gtk2_ardour/imageframe_time_axis.cc:287 gtk2_ardour/marker_time_axis.cc:242 msgid "1.5 seconds" msgstr "1,5 secondes" -#: gtk2_ardour/imageframe_time_axis.cc:289 gtk2_ardour/marker_time_axis.cc:244 +#: gtk2_ardour/imageframe_time_axis.cc:288 gtk2_ardour/marker_time_axis.cc:243 msgid "2 seconds" msgstr "2 secondes" -#: gtk2_ardour/imageframe_time_axis.cc:290 gtk2_ardour/marker_time_axis.cc:245 +#: gtk2_ardour/imageframe_time_axis.cc:289 gtk2_ardour/marker_time_axis.cc:244 msgid "2.5 seconds" msgstr "2,5 secondes" -#: gtk2_ardour/imageframe_time_axis.cc:291 gtk2_ardour/marker_time_axis.cc:246 +#: gtk2_ardour/imageframe_time_axis.cc:290 gtk2_ardour/marker_time_axis.cc:245 msgid "3 seconds" msgstr "3 secondes" -#: gtk2_ardour/imageframe_time_axis.cc:296 gtk2_ardour/marker_time_axis.cc:251 +#: gtk2_ardour/imageframe_time_axis.cc:295 gtk2_ardour/marker_time_axis.cc:250 msgid "Duration (sec)" msgstr "durée (s)" -#: gtk2_ardour/imageframe_time_axis.cc:301 +#: gtk2_ardour/imageframe_time_axis.cc:300 msgid "Remove Frame" msgstr "Enlever une trame" -#: gtk2_ardour/imageframe_time_axis.cc:304 +#: gtk2_ardour/imageframe_time_axis.cc:303 msgid "Image Frame" msgstr "Trame d'image" -#: gtk2_ardour/imageframe_time_axis.cc:305 gtk2_ardour/marker_time_axis.cc:257 +#: gtk2_ardour/imageframe_time_axis.cc:304 gtk2_ardour/marker_time_axis.cc:256 msgid "Rename Track" msgstr "Renommer la piste" -#: gtk2_ardour/io_selector.cc:62 gtk2_ardour/io_selector.cc:796 -#: gtk2_ardour/connection_editor.cc:61 gtk2_ardour/connection_editor.cc:110 +#: gtk2_ardour/io_selector.cc:61 gtk2_ardour/io_selector.cc:749 +#: gtk2_ardour/connection_editor.cc:60 gtk2_ardour/connection_editor.cc:109 msgid "Rescan" msgstr "Rafraîchir" -#: gtk2_ardour/io_selector.cc:70 +#: gtk2_ardour/io_selector.cc:69 msgid "%1 input" msgstr "entrée %1" -#: gtk2_ardour/io_selector.cc:72 +#: gtk2_ardour/io_selector.cc:71 msgid "%1 output" msgstr "sortie %1" -#: gtk2_ardour/io_selector.cc:144 gtk2_ardour/route_params_ui.cc:103 +#: gtk2_ardour/io_selector.cc:143 gtk2_ardour/route_params_ui.cc:103 msgid "Inputs" msgstr "Entrées" -#: gtk2_ardour/io_selector.cc:144 gtk2_ardour/route_params_ui.cc:104 +#: gtk2_ardour/io_selector.cc:143 gtk2_ardour/route_params_ui.cc:104 msgid "Outputs" msgstr "Sorties" -#: gtk2_ardour/io_selector.cc:145 +#: gtk2_ardour/io_selector.cc:144 msgid "Add Input" msgstr "Ajouter une entrée" -#: gtk2_ardour/io_selector.cc:145 +#: gtk2_ardour/io_selector.cc:144 msgid "Add Output" msgstr "Ajouter une sortie" -#: gtk2_ardour/io_selector.cc:146 +#: gtk2_ardour/io_selector.cc:145 msgid "Remove Input" msgstr "Enlever une entrée" -#: gtk2_ardour/io_selector.cc:146 +#: gtk2_ardour/io_selector.cc:145 msgid "Remove Output" msgstr "Enlever une sortie" -#: gtk2_ardour/io_selector.cc:147 +#: gtk2_ardour/io_selector.cc:146 msgid "Disconnect All" msgstr "Déconnecter tout" -#: gtk2_ardour/io_selector.cc:161 +#: gtk2_ardour/io_selector.cc:160 msgid "Available connections" msgstr "Connexions disponibles" -#: gtk2_ardour/io_selector.cc:557 gtk2_ardour/io_selector.cc:576 +#: gtk2_ardour/io_selector.cc:548 gtk2_ardour/io_selector.cc:559 msgid "There are no more JACK ports available." msgstr "Il n'y a plus de port JACK disponible" -#: gtk2_ardour/io_selector.cc:651 gtk2_ardour/io_selector.cc:678 -#: gtk2_ardour/io_selector.cc:731 -msgid "port" -msgstr "port" - -#: gtk2_ardour/io_selector.cc:800 +#: gtk2_ardour/io_selector.cc:753 msgid "ardour: " msgstr "ardour : " -#: gtk2_ardour/keyboard.cc:299 -msgid "KeyboardTarget: keyname \"%1\" is unknown." -msgstr "KeyboardTarget : nom de touche inconnue : « %1 »" - -#: gtk2_ardour/keyboard.cc:525 -msgid "" -"Your system is completely broken - NumLock uses \"%1\"as its modifier. This " -"is madness - see the man page for xmodmap to find out how to fix this." -msgstr "" -"Votre système est très mal configuré -- la touche VerrNum (Numlock)utilise « " -"%1 » comme modificateur. C'est une aberration -- consultez la page de manuel " -"de « xmodmap » pour savoir comment réparer ça." - -#: gtk2_ardour/keyboard.cc:533 -msgid "" -"Your system generates \"%1\" when the NumLock key is pressed. This can cause " -"problems when editing so Ardour will use %2 to mean Meta rather than %1" -msgstr "" -"Votre système génère le code « %1 » quand la touche VerrNum (Numlock) est " -"pressée. Cela peut causer des problèmes pendant l'édition, de sorte " -"qu'Ardour utilisera « %2 » comme touche Meta plutôt que « %1 »." - -#: gtk2_ardour/keyboard.cc:594 -msgid "You have %1 keys bound to \"mod1\"" -msgstr "%1 touches sont affectées à « mod1 »" - -#: gtk2_ardour/keyboard.cc:609 -msgid "You have %1 keys bound to \"mod2\"" -msgstr "%1 touches sont affectées à « mod2 »" - -#: gtk2_ardour/keyboard.cc:624 -msgid "You have %1 keys bound to \"mod3\"" -msgstr "%1 touches sont affectées à « mod3 »" - -#: gtk2_ardour/keyboard.cc:639 -msgid "You have %1 keys bound to \"mod4\"" -msgstr "%1 touches sont affectées à « mod4 »" - -#: gtk2_ardour/keyboard.cc:654 -msgid "You have %1 keys bound to \"mod5\"" -msgstr "%1 touches sont affectées à « mod5 »" - #: gtk2_ardour/ladspa_pluginui.cc:77 msgid "<span size=\"large\">Presets</span>" msgstr "<span size=\"large\">réglages préféfinis</span>" @@ -4509,10 +4655,14 @@ msgstr "" "Éditeur de plugin : impossible de construire l'élément de contrôle pour le " "port %1" -#: gtk2_ardour/ladspa_pluginui.cc:296 +#: gtk2_ardour/ladspa_pluginui.cc:295 msgid "Automation control" msgstr "contrôle d'automatisation" +#: gtk2_ardour/ladspa_pluginui.cc:302 +msgid "Mgnual" +msgstr "Manuel" + #: gtk2_ardour/location_ui.cc:49 gtk2_ardour/location_ui.cc:52 msgid "Set" msgstr "Définir" @@ -4541,52 +4691,19 @@ msgstr "ajouter un repère temporel" msgid "Add New Range" msgstr "ajouter un intervalle" -#: gtk2_ardour/location_ui.cc:576 -msgid "ardour: locations" -msgstr "ardour : repères et intervalles" - -#: gtk2_ardour/location_ui.cc:577 -msgid "ardour_locations" -msgstr "ardour_locations" - -#: gtk2_ardour/location_ui.cc:605 +#: gtk2_ardour/location_ui.cc:608 msgid "Location (CD Index) Markers" msgstr "Repères temporels (et index de CD)" -#: gtk2_ardour/location_ui.cc:625 +#: gtk2_ardour/location_ui.cc:628 msgid "Range (CD Track) Markers" msgstr "Intervalles (et plages de CD)" -#: gtk2_ardour/location_ui.cc:793 +#: gtk2_ardour/location_ui.cc:801 msgid "add range marker" msgstr "ajouter un intervalle" -#: gtk2_ardour/main.cc:72 -msgid "ardour is killing itself for a clean exit\n" -msgstr "récupération du signal pour effectuer une sortie propre\n" - -#: gtk2_ardour/main.cc:81 -msgid "stopping user interface\n" -msgstr "arrêt de l'interface utilisateur\n" - -#: gtk2_ardour/main.cc:100 -#, c-format -msgid "%d(%d): received signal %d\n" -msgstr "%d(%d) : reçu le signal %d\n" - -#: gtk2_ardour/main.cc:180 -msgid "cannot become new process group leader (%1)" -msgstr "impossible de devenir le leader du nouveau groupe de processus" - -#: gtk2_ardour/main.cc:207 -msgid "cannot setup signal handling for %1" -msgstr "impossible d'installer le gestionnaire de signaux pour %1" - -#: gtk2_ardour/main.cc:218 -msgid "cannot set default signal mask (%1)" -msgstr "impossible de définir le masque de signal par défaut (%1)" - -#: gtk2_ardour/main.cc:248 +#: gtk2_ardour/main.cc:75 msgid "" "Without a UI style file, ardour will look strange.\n" " Please set ARDOUR2_UI_RC to point to a valid UI style file" @@ -4595,11 +4712,11 @@ msgstr "" "bizarre.\n" "Veuillez faire pointer ARDOUR2_UI_RC vers un fichier de style valide" -#: gtk2_ardour/main.cc:270 +#: gtk2_ardour/main.cc:96 msgid "Ardour could not connect to JACK." msgstr "Impossible de se connecter à JACK" -#: gtk2_ardour/main.cc:274 +#: gtk2_ardour/main.cc:100 msgid "" "There are several possible reasons:\n" "\n" @@ -4617,11 +4734,11 @@ msgstr "" "\n" "Veuillez étudier ces possibilités, et peut-être (re)lancer JACK." -#: gtk2_ardour/main.cc:316 +#: gtk2_ardour/main.cc:144 msgid "could not load command line session \"%1\"" msgstr "impossible de charger la session indiquée en ligne de commande « %1 »" -#: gtk2_ardour/main.cc:324 +#: gtk2_ardour/main.cc:152 msgid "" "\n" "\n" @@ -4634,11 +4751,11 @@ msgstr "" "Pour la créer depuis la ligne de commande, lancez ardour en tapant ceci : " "\"ardour --new %1" -#: gtk2_ardour/main.cc:383 +#: gtk2_ardour/main.cc:225 msgid "Ardour/GTK " msgstr "Ardour/GTK" -#: gtk2_ardour/main.cc:385 +#: gtk2_ardour/main.cc:227 msgid "" "\n" " (built using " @@ -4646,15 +4763,15 @@ msgstr "" "\n" " (construit avec " -#: gtk2_ardour/main.cc:388 +#: gtk2_ardour/main.cc:230 msgid " and GCC version " msgstr " et GCC version " -#: gtk2_ardour/main.cc:398 -msgid "Copyright (C) 1999-2006 Paul Davis" -msgstr "Copyright (C) 1999-2006 Paul Davis" +#: gtk2_ardour/main.cc:240 +msgid "Copyright (C) 1999-2007 Paul Davis" +msgstr "Copyright (C) 1999-2007 Paul Davis" -#: gtk2_ardour/main.cc:399 +#: gtk2_ardour/main.cc:241 msgid "" "Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel " "Baker" @@ -4662,369 +4779,383 @@ msgstr "" "Pour certaines parties, Copyright (C) Steve Harris, Ari Johnson, Brett " "Viren, Joel Baker" -#: gtk2_ardour/main.cc:401 +#: gtk2_ardour/main.cc:243 msgid "Ardour comes with ABSOLUTELY NO WARRANTY" msgstr "Ardour est distribué sans AUCUNE GARANTIE" -#: gtk2_ardour/main.cc:402 +#: gtk2_ardour/main.cc:244 msgid "not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." msgstr "" "pas même de COMMERCIALISATION\n" "ou d'ADÉQUATION À UN BUT PARTICULIER." -#: gtk2_ardour/main.cc:403 +#: gtk2_ardour/main.cc:245 msgid "This is free software, and you are welcome to redistribute it " msgstr "Ceci est un logiciel libre, et vous êtes encouragé à le distribuer " -#: gtk2_ardour/main.cc:404 +#: gtk2_ardour/main.cc:246 msgid "under certain conditions; see the source for copying conditions." msgstr "" "sous certaines conditions ; voir le fichier source pour les conditions de " "distribution." -#: gtk2_ardour/main.cc:414 +#: gtk2_ardour/main.cc:257 msgid "could not create ARDOUR GUI" msgstr "impossible de créer l'interface utilisateur d'Ardour" -#: gtk2_ardour/main.cc:431 +#: gtk2_ardour/main.cc:282 msgid "Could not connect to JACK server as \"%1\"" msgstr "Impossible de se connecter au serveur JACK en tant que « %1 »" -#: gtk2_ardour/main.cc:441 +#: gtk2_ardour/main.cc:289 msgid "could not initialize Ardour." msgstr "impossible d'initialiser Ardour." -#: gtk2_ardour/marker.cc:244 +#: gtk2_ardour/marker.cc:243 msgid "MarkerText" msgstr "MarkerText" -#: gtk2_ardour/marker_time_axis.cc:254 +#: gtk2_ardour/marker_time_axis.cc:253 msgid "Remove Marker" msgstr "Enlever le repère" -#: gtk2_ardour/marker_time_axis.cc:256 +#: gtk2_ardour/marker_time_axis.cc:255 msgid "Marker" msgstr "Marqueur" -#: gtk2_ardour/mixer_strip.cc:92 gtk2_ardour/mixer_strip.cc:137 -#: gtk2_ardour/mixer_strip.cc:1191 +#: gtk2_ardour/mixer_strip.cc:95 gtk2_ardour/mixer_strip.cc:140 +#: gtk2_ardour/mixer_strip.cc:1211 msgid "pre" msgstr "pré" -#: gtk2_ardour/mixer_strip.cc:93 gtk2_ardour/mixer_strip.cc:782 +#: gtk2_ardour/mixer_strip.cc:96 gtk2_ardour/mixer_strip.cc:789 msgid "Comments" msgstr "commentaires" -#: gtk2_ardour/mixer_strip.cc:116 +#: gtk2_ardour/mixer_strip.cc:119 msgid "Input" msgstr "Entrée" -#: gtk2_ardour/mixer_strip.cc:133 gtk2_ardour/mixer_strip.cc:1187 +#: gtk2_ardour/mixer_strip.cc:136 gtk2_ardour/mixer_strip.cc:1207 msgid "input" msgstr "entrée" -#: gtk2_ardour/mixer_strip.cc:141 gtk2_ardour/mixer_strip.cc:1195 +#: gtk2_ardour/mixer_strip.cc:144 gtk2_ardour/mixer_strip.cc:1215 msgid "post" msgstr "post" -#: gtk2_ardour/mixer_strip.cc:149 +#: gtk2_ardour/mixer_strip.cc:151 msgid "tupni" msgstr "tupni" -#: gtk2_ardour/mixer_strip.cc:205 +#: gtk2_ardour/mixer_strip.cc:199 msgid "Varispeed" msgstr "molette" -#: gtk2_ardour/mixer_strip.cc:231 gtk2_ardour/mixer_strip.cc:796 +#: gtk2_ardour/mixer_strip.cc:225 gtk2_ardour/mixer_strip.cc:805 msgid "Click to Add/Edit Comments" msgstr "ajouter ou modifier des commentaires" -#: gtk2_ardour/mixer_strip.cc:371 +#: gtk2_ardour/mixer_strip.cc:380 msgid "unknown strip width \"%1\" in XML GUI information" msgstr "" "largeur de tranche inconnue « %1 » dans les données XML de l'interface " "utilisateur" -#: gtk2_ardour/mixer_strip.cc:415 +#: gtk2_ardour/mixer_strip.cc:423 msgid "record" msgstr "Enregistrement" -#: gtk2_ardour/mixer_strip.cc:417 gtk2_ardour/audio_region_editor.cc:46 -msgid "mute" -msgstr "muet" - -#: gtk2_ardour/mixer_strip.cc:418 -msgid "solo" -msgstr "solo" - -#: gtk2_ardour/mixer_strip.cc:421 +#: gtk2_ardour/mixer_strip.cc:430 msgid "comments" msgstr "commentaires" -#: gtk2_ardour/mixer_strip.cc:423 +#: gtk2_ardour/mixer_strip.cc:433 msgid "*comments*" msgstr "commentaires" -#: gtk2_ardour/mixer_strip.cc:438 +#: gtk2_ardour/mixer_strip.cc:447 msgid "Rec" msgstr "Enreg." -#: gtk2_ardour/mixer_strip.cc:440 -msgid "M" -msgstr "M" - -#: gtk2_ardour/mixer_strip.cc:441 +#: gtk2_ardour/mixer_strip.cc:450 msgid "S" msgstr "S" -#: gtk2_ardour/mixer_strip.cc:444 gtk2_ardour/mixer_strip.cc:790 +#: gtk2_ardour/mixer_strip.cc:454 gtk2_ardour/mixer_strip.cc:799 msgid "Cmt" msgstr "Cmt" -#: gtk2_ardour/mixer_strip.cc:446 gtk2_ardour/mixer_strip.cc:788 +#: gtk2_ardour/mixer_strip.cc:457 gtk2_ardour/mixer_strip.cc:796 msgid "*Cmt*" msgstr "*Cmt*" -#: gtk2_ardour/mixer_strip.cc:484 gtk2_ardour/mixer_strip.cc:550 -#: gtk2_ardour/redirect_box.cc:1021 +#: gtk2_ardour/mixer_strip.cc:496 gtk2_ardour/mixer_strip.cc:562 +#: gtk2_ardour/redirect_box.cc:1092 msgid "Not connected to JACK - no I/O changes are possible" msgstr "Non connecté à JACK – aucun changement d'entrée/sortie n'est possible" -#: gtk2_ardour/mixer_strip.cc:584 gtk2_ardour/mixer_strip.cc:600 +#: gtk2_ardour/mixer_strip.cc:596 gtk2_ardour/mixer_strip.cc:612 msgid "could not register new ports required for that connection" msgstr "impossible de définir les nouveaux ports requis pour cette connexion" -#: gtk2_ardour/mixer_strip.cc:707 +#: gtk2_ardour/mixer_strip.cc:719 msgid " Input" msgstr " entrée" -#: gtk2_ardour/mixer_strip.cc:710 +#: gtk2_ardour/mixer_strip.cc:722 msgid "I" msgstr "I" -#: gtk2_ardour/mixer_strip.cc:780 +#: gtk2_ardour/mixer_strip.cc:742 +msgid "O" +msgstr "O" + +#: gtk2_ardour/mixer_strip.cc:786 msgid "*Comments*" msgstr "*commentaires*" -#: gtk2_ardour/mixer_strip.cc:819 +#: gtk2_ardour/mixer_strip.cc:841 msgid ": comment editor" msgstr ": éditeur de commentaires" -#: gtk2_ardour/mixer_strip.cc:913 +#: gtk2_ardour/mixer_strip.cc:936 msgid "Grp" msgstr "Grp" -#: gtk2_ardour/mixer_strip.cc:916 +#: gtk2_ardour/mixer_strip.cc:939 msgid "~G" msgstr "~G" -#: gtk2_ardour/mixer_strip.cc:964 +#: gtk2_ardour/mixer_strip.cc:988 msgid "Invert Polarity" msgstr "inverser la polarité" -#: gtk2_ardour/mixer_ui.cc:83 +#: gtk2_ardour/mixer_ui.cc:82 msgid "Strips" msgstr "Tranches" -#: gtk2_ardour/mixer_ui.cc:108 +#: gtk2_ardour/mixer_ui.cc:107 msgid "Group" msgstr "Groupe" -#: gtk2_ardour/mixer_ui.cc:209 gtk2_ardour/mixer_ui.cc:389 -msgid "ardour: mixer" -msgstr "ardour : console de mixage" - -#: gtk2_ardour/mixer_ui.cc:210 -msgid "ardour_mixer" -msgstr "ardour_mixer" - -#: gtk2_ardour/mixer_ui.cc:361 -msgid "ardour: mixer: " -msgstr "ardour : console de mixage : " +#: gtk2_ardour/mixer_ui.cc:207 gtk2_ardour/mixer_ui.cc:362 +#: gtk2_ardour/mixer_ui.cc:394 +msgid "Mixer" +msgstr "Console de mixage..." -#: gtk2_ardour/mixer_ui.cc:592 +#: gtk2_ardour/mixer_ui.cc:601 msgid "signal" msgstr "signal" -#: gtk2_ardour/mixer_ui.cc:741 +#: gtk2_ardour/mixer_ui.cc:752 msgid "track display list item for renamed strip not found!" msgstr "" "élément de liste d'affichage de piste introuvable pour la tranche renommée !" -#: gtk2_ardour/new_session_dialog.cc:41 +#: gtk2_ardour/new_session_dialog.cc:44 msgid "Name :" msgstr "Nom de la session :" -#: gtk2_ardour/new_session_dialog.cc:45 gtk2_ardour/new_session_dialog.cc:46 -#: gtk2_ardour/new_session_dialog.cc:47 gtk2_ardour/new_session_dialog.cc:48 -#: gtk2_ardour/sfdb_ui.cc:167 +#: gtk2_ardour/new_session_dialog.cc:48 gtk2_ardour/new_session_dialog.cc:49 +#: gtk2_ardour/new_session_dialog.cc:50 gtk2_ardour/new_session_dialog.cc:51 msgid "channels" msgstr "voies" -#: gtk2_ardour/new_session_dialog.cc:66 +#: gtk2_ardour/new_session_dialog.cc:69 msgid "<b>Busses</b>" msgstr "<b>Bus :</b>" -#: gtk2_ardour/new_session_dialog.cc:67 +#: gtk2_ardour/new_session_dialog.cc:70 msgid "<b>Inputs</b>" msgstr "<b>Entrées :</b>" -#: gtk2_ardour/new_session_dialog.cc:68 +#: gtk2_ardour/new_session_dialog.cc:71 msgid "<b>Outputs</b>" msgstr "<b>Sorties :</b>" -#: gtk2_ardour/new_session_dialog.cc:70 +#: gtk2_ardour/new_session_dialog.cc:73 msgid "Create Folder In :" msgstr "Créer le dossier dans :" -#: gtk2_ardour/new_session_dialog.cc:72 +#: gtk2_ardour/new_session_dialog.cc:75 msgid "Template :" msgstr "Modèle de session :" -#: gtk2_ardour/new_session_dialog.cc:74 +#: gtk2_ardour/new_session_dialog.cc:77 msgid "Create Monitor Bus" -msgstr "Créer un bus de contrôle avec" +msgstr "Bus d'écoute à " -#: gtk2_ardour/new_session_dialog.cc:81 +#: gtk2_ardour/new_session_dialog.cc:84 msgid "Create Master Bus" -msgstr "Créer un bus général avec" +msgstr "Bus de sortie à " -#: gtk2_ardour/new_session_dialog.cc:83 +#: gtk2_ardour/new_session_dialog.cc:86 msgid "Automatically Connect to Physical Inputs" msgstr "relier aux entrées matérielles" -#: gtk2_ardour/new_session_dialog.cc:84 gtk2_ardour/new_session_dialog.cc:97 +#: gtk2_ardour/new_session_dialog.cc:87 gtk2_ardour/new_session_dialog.cc:100 msgid "Use only" msgstr "Utiliser seulement" -#: gtk2_ardour/new_session_dialog.cc:96 +#: gtk2_ardour/new_session_dialog.cc:99 msgid "Automatically Connect Outputs" msgstr "relier les sorties..." -#: gtk2_ardour/new_session_dialog.cc:105 +#: gtk2_ardour/new_session_dialog.cc:108 msgid "... to Master Bus" msgstr "...au bus général" -#: gtk2_ardour/new_session_dialog.cc:106 +#: gtk2_ardour/new_session_dialog.cc:109 msgid "... to Physical Outputs" msgstr "...aux sorties matérielles" -#: gtk2_ardour/new_session_dialog.cc:112 +#: gtk2_ardour/new_session_dialog.cc:115 msgid "Advanced Options" msgstr "Options..." -#: gtk2_ardour/new_session_dialog.cc:120 +#: gtk2_ardour/new_session_dialog.cc:123 msgid "Recent:" msgstr "Sessions récentes :" -#: gtk2_ardour/new_session_dialog.cc:157 +#: gtk2_ardour/new_session_dialog.cc:160 msgid "Browse:" msgstr "Autre session :" -#: gtk2_ardour/new_session_dialog.cc:336 +#: gtk2_ardour/new_session_dialog.cc:338 msgid "New Session" -msgstr "Nouvelle session" +msgstr "Créer une session" -#: gtk2_ardour/new_session_dialog.cc:338 +#: gtk2_ardour/new_session_dialog.cc:340 msgid "Open Session" msgstr "Ouvrir une session" -#: gtk2_ardour/new_session_dialog.cc:343 -msgid "ardour: session control" +#: gtk2_ardour/new_session_dialog.cc:347 +msgid "Session Control" msgstr "ardour : gestion des sessions" -#: gtk2_ardour/new_session_dialog.cc:372 +#: gtk2_ardour/new_session_dialog.cc:390 msgid "select template" msgstr "choix du modèle" -#: gtk2_ardour/new_session_dialog.cc:378 +#: gtk2_ardour/new_session_dialog.cc:396 msgid "select session file" msgstr "sélection du fichier de session" -#: gtk2_ardour/new_session_dialog.cc:387 +#: gtk2_ardour/new_session_dialog.cc:405 msgid "select directory" msgstr "sélection d'un dossier" -#: gtk2_ardour/option_editor.cc:75 +#: gtk2_ardour/option_editor.cc:74 msgid "SMPTE offset is negative" msgstr "décalage négatif" -#: gtk2_ardour/option_editor.cc:101 -msgid "ardour: options editor" -msgstr "ardour : éditeur d'options" - -#: gtk2_ardour/option_editor.cc:102 -msgid "ardour_option_editor" -msgstr "ardour_option_editor" - -#: gtk2_ardour/option_editor.cc:126 +#: gtk2_ardour/option_editor.cc:131 msgid "Paths/Files" -msgstr "Chemins et Fichiers" +msgstr "Chemins/Fichiers" -#: gtk2_ardour/option_editor.cc:127 +#: gtk2_ardour/option_editor.cc:132 msgid "Kbd/Mouse" -msgstr "Clavier et Souris" +msgstr "Clavier/Souris" -#: gtk2_ardour/option_editor.cc:130 +#: gtk2_ardour/option_editor.cc:135 msgid "Layers & Fades" -msgstr "Calques et fondus" +msgstr "Calques/Fondus" -#: gtk2_ardour/option_editor.cc:134 +#: gtk2_ardour/option_editor.cc:139 msgid "MIDI" -msgstr "MIDI" +msgstr "périph. MIDI" -#: gtk2_ardour/option_editor.cc:222 +#: gtk2_ardour/option_editor.cc:227 msgid "session RAID path" msgstr "chemin vers la session (RAID de préférence)" -#: gtk2_ardour/option_editor.cc:227 -msgid "Soundfile Search Paths" -msgstr "Chemins de recherche des fichiers audio" - -#: gtk2_ardour/option_editor.cc:252 gtk2_ardour/option_editor.cc:258 -#: gtk2_ardour/option_editor.cc:670 gtk2_ardour/option_editor.cc:697 +#: gtk2_ardour/option_editor.cc:243 gtk2_ardour/option_editor.cc:249 +#: gtk2_ardour/option_editor.cc:671 gtk2_ardour/option_editor.cc:691 msgid "internal" msgstr "interne" -#: gtk2_ardour/option_editor.cc:271 +#: gtk2_ardour/option_editor.cc:262 msgid "Short crossfade length (msecs)" msgstr "durée du fondu court (ms)" -#: gtk2_ardour/option_editor.cc:283 +#: gtk2_ardour/option_editor.cc:274 msgid "Destructive crossfade length (msecs)" msgstr "longueur du fondu destructif (ms)" -#: gtk2_ardour/option_editor.cc:342 +#: gtk2_ardour/option_editor.cc:334 msgid "SMPTE Offset" msgstr "Décalage SMPTE" -#: gtk2_ardour/option_editor.cc:409 gtk2_ardour/option_editor.cc:416 -#: gtk2_ardour/option_editor.cc:419 gtk2_ardour/option_editor.cc:565 +#: gtk2_ardour/option_editor.cc:382 +msgid "Port" +msgstr "Port" + +#: gtk2_ardour/option_editor.cc:383 +msgid "Offline" +msgstr "présence" + +#: gtk2_ardour/option_editor.cc:384 +msgid "" +"Trace\n" +"Input" +msgstr "" +"voir entrée\n" +"dans la console" + +#: gtk2_ardour/option_editor.cc:385 +msgid "" +"Trace\n" +"Output" +msgstr "" +"voir sortie\n" +"dans la console" + +#: gtk2_ardour/option_editor.cc:386 +msgid "MTC" +msgstr "MTC" + +#: gtk2_ardour/option_editor.cc:387 +msgid "MMC" +msgstr "MMC" + +#: gtk2_ardour/option_editor.cc:388 +msgid "" +"MIDI Parameter\n" +"Control" +msgstr "param.\nMIDI" + +#: gtk2_ardour/option_editor.cc:394 +msgid "MMC Device ID" +msgstr "identifiant\nMMC" + +#: gtk2_ardour/option_editor.cc:406 gtk2_ardour/option_editor.cc:413 +#: gtk2_ardour/option_editor.cc:416 gtk2_ardour/option_editor.cc:561 msgid "online" msgstr "actif" -#: gtk2_ardour/option_editor.cc:416 gtk2_ardour/option_editor.cc:417 -#: gtk2_ardour/option_editor.cc:562 +#: gtk2_ardour/option_editor.cc:413 gtk2_ardour/option_editor.cc:414 +#: gtk2_ardour/option_editor.cc:558 msgid "offline" msgstr "inactif" -#: gtk2_ardour/option_editor.cc:617 +#: gtk2_ardour/option_editor.cc:624 msgid "Choose Click" msgstr "choix du clic" -#: gtk2_ardour/option_editor.cc:636 +#: gtk2_ardour/option_editor.cc:643 msgid "Choose Click Emphasis" msgstr "choix du clic accentué" -#: gtk2_ardour/option_editor.cc:750 +#: gtk2_ardour/option_editor.cc:743 msgid "Click audio file" msgstr "son du clic :" -#: gtk2_ardour/option_editor.cc:756 +#: gtk2_ardour/option_editor.cc:749 msgid "Click emphasis audiofile" msgstr "son du clic accentué :" -#: gtk2_ardour/option_editor.cc:793 +#: gtk2_ardour/option_editor.cc:786 msgid "" "The auditioner is a dedicated mixer strip used\n" "for listening to specific regions outside the context\n" @@ -5037,19 +5168,19 @@ msgstr "" "n'importe\n" "quelle autre tranche de mixage." -#: gtk2_ardour/option_editor.cc:866 +#: gtk2_ardour/option_editor.cc:859 msgid "Edit using" msgstr "Raccourci pour l'édition : utiliser la touche" -#: gtk2_ardour/option_editor.cc:873 gtk2_ardour/option_editor.cc:900 +#: gtk2_ardour/option_editor.cc:866 gtk2_ardour/option_editor.cc:893 msgid "+ button" msgstr "avec le bouton de la souris n°" -#: gtk2_ardour/option_editor.cc:893 +#: gtk2_ardour/option_editor.cc:886 msgid "Delete using" msgstr "Raccourci pour l'effacement : utiliser la touche" -#: gtk2_ardour/option_editor.cc:920 +#: gtk2_ardour/option_editor.cc:913 msgid "Ignore snap using" msgstr "Ignorer la grille d'alignement avec la touche" @@ -5095,93 +5226,97 @@ msgstr "" "ligne de commande\n" #: gtk2_ardour/opts.cc:53 -msgid "" -" -o, --use-hw-optimizations Try to use h/w specific optimizations\n" -msgstr "" -" -o,·--use-hw-optimizations Tenter d'utiliser des optimisations " -"matérielles spécifiques\n" +msgid " -O, --no-hw-optimizations Disable h/w specific optimizations\n" +msgstr " -O, --no-hw-optimizations Désactiver les optimisations matérielles spécifiques\n" + +#: gtk2_ardour/opts.cc:54 +msgid " -S, --sync\t Draw the gui synchronously \n" +msgstr " -S, --sync\t Dessiner l'interface graphique en mode synchrone\n" -#: gtk2_ardour/opts.cc:55 +#: gtk2_ardour/opts.cc:56 msgid " -V, --novst Do not use VST support\n" msgstr "" "··-V,·--novst Désactiver la prise en charge des VST\n" -#: gtk2_ardour/opts.cc:57 +#: gtk2_ardour/opts.cc:58 msgid " [session-name] Name of session to load\n" msgstr " [nomsession] Nom de la session à charger\n" -#: gtk2_ardour/opts.cc:58 +#: gtk2_ardour/opts.cc:59 msgid " -C, --curvetest filename Curve algorithm debugger\n" msgstr " -C, --curvetest nomfichier Débogueur d'algorithme de courbe\n" -#: gtk2_ardour/opts.cc:59 -msgid " -g, --gtktheme Allow GTK to load a theme\n" +#: gtk2_ardour/opts.cc:60 +msgid "" +" -k, --keybindings filename Name of key bindings to load (default is " +"~/.ardour2/ardour.bindings)\n" msgstr "" -" -g, --gtktheme Autoriser le chargement d'un thème\n" +" -k, --keybindings nomfichier Nom du fichier des raccourcis claviers à charger (par défaut " +"~/.ardour2/ardour.bindings)\n" -#: gtk2_ardour/pan_automation_time_axis.cc:70 +#: gtk2_ardour/pan_automation_time_axis.cc:69 msgid "You need to select which line to edit" msgstr "vous devez choisir la ligne à modifier" -#: gtk2_ardour/pan_automation_time_axis.cc:91 +#: gtk2_ardour/pan_automation_time_axis.cc:90 msgid "add pan automation event" msgstr "ajout d'événement de pan." -#: gtk2_ardour/panner2d.cc:589 gtk2_ardour/panner_ui.cc:425 -#: gtk2_ardour/plugin_ui.cc:146 +#: gtk2_ardour/panner2d.cc:588 gtk2_ardour/panner_ui.cc:412 +#: gtk2_ardour/plugin_ui.cc:152 msgid "Bypass" msgstr "Court-circuiter" -#: gtk2_ardour/panner_ui.cc:56 gtk2_ardour/panner_ui.cc:223 +#: gtk2_ardour/panner_ui.cc:58 gtk2_ardour/panner_ui.cc:217 msgid "link" msgstr "lier" -#: gtk2_ardour/panner_ui.cc:67 +#: gtk2_ardour/panner_ui.cc:69 msgid "Pan automation mode" -msgstr "mode de l'automatisation de panoramique" +msgstr "mode d'automatisation du panoramique" -#: gtk2_ardour/panner_ui.cc:68 +#: gtk2_ardour/panner_ui.cc:70 msgid "Pan automation type" msgstr "Type d'automatisation de panoramique" -#: gtk2_ardour/panner_ui.cc:79 +#: gtk2_ardour/panner_ui.cc:80 msgid "panning link control" msgstr "liaison gauche–droite du panoramique" -#: gtk2_ardour/panner_ui.cc:81 +#: gtk2_ardour/panner_ui.cc:82 msgid "panning link direction" msgstr "direction de la liaison" -#: gtk2_ardour/panner_ui.cc:233 +#: gtk2_ardour/panner_ui.cc:220 msgid "L" msgstr "L" -#: gtk2_ardour/panner_ui.cc:328 +#: gtk2_ardour/panner_ui.cc:333 #, c-format msgid "panner for channel %zu" msgstr "panoramique de la voie %zu" -#: gtk2_ardour/panner_ui.cc:435 +#: gtk2_ardour/panner_ui.cc:422 msgid "Reset all" msgstr "Réinitialiser tout" -#: gtk2_ardour/playlist_selector.cc:52 -msgid "ardour: playlists" -msgstr "ardour : listes de lecture" +#: gtk2_ardour/playlist_selector.cc:58 +msgid "Playlists" +msgstr "Listes de lecture" -#: gtk2_ardour/playlist_selector.cc:59 +#: gtk2_ardour/playlist_selector.cc:63 msgid "Playlists grouped by track" msgstr "Listes de lecture groupées par piste" -#: gtk2_ardour/playlist_selector.cc:98 -msgid "ardour: playlist for " -msgstr "ardour : liste de lecture pour " +#: gtk2_ardour/playlist_selector.cc:112 +msgid "Playlist for %1" +msgstr "Liste de lecture pour %1" -#: gtk2_ardour/playlist_selector.cc:114 +#: gtk2_ardour/playlist_selector.cc:126 msgid "Other tracks" msgstr "Autres pistes" -#: gtk2_ardour/playlist_selector.cc:130 +#: gtk2_ardour/playlist_selector.cc:143 msgid "unassigned" msgstr "non assigné" @@ -5239,7 +5374,7 @@ msgstr "VST" msgid "AudioUnit" msgstr "Unité audio" -#: gtk2_ardour/plugin_ui.cc:85 +#: gtk2_ardour/plugin_ui.cc:84 msgid "" "unknown type of editor-supplying plugin (note: no VST support in this " "version of ardour)" @@ -5247,31 +5382,35 @@ msgstr "" "type de plugin à éditeur inconnu (note : VST n'est pas pris en charge dans " "cette version d'ardour)" -#: gtk2_ardour/plugin_ui.cc:166 +#: gtk2_ardour/plugin_ui.cc:172 msgid "Plugin preset %1 not found" msgstr "Réglage de plugin « %1 » non trouvé" -#: gtk2_ardour/plugin_ui.cc:176 +#: gtk2_ardour/plugin_ui.cc:182 msgid "Name of New Preset:" msgstr "Nom du nouveau réglage :" -#: gtk2_ardour/redirect_automation_line.cc:54 +#: gtk2_ardour/redirect_automation_line.cc:53 msgid "redirect automation created for non-plugin" msgstr "rediriger l'automatisation créée pour le non-plugin" -#: gtk2_ardour/redirect_automation_time_axis.cc:96 +#: gtk2_ardour/redirect_automation_time_axis.cc:95 msgid "add automation event to " msgstr "ajouter un événement d'automatisation à " -#: gtk2_ardour/redirect_box.cc:226 +#: gtk2_ardour/redirect_box.cc:237 msgid "New send" msgstr "Nouveau départ" -#: gtk2_ardour/redirect_box.cc:227 +#: gtk2_ardour/redirect_box.cc:238 msgid "Show send controls" msgstr "Afficher les contrôles de départ" -#: gtk2_ardour/redirect_box.cc:386 +#: gtk2_ardour/redirect_box.cc:412 gtk2_ardour/redirect_box.cc:707 +msgid "ardour: weird plugin dialog" +msgstr "ardour : boite de dialogue pour plugin" + +#: gtk2_ardour/redirect_box.cc:419 msgid "" "You attempted to add a plugin (%1).\n" "The plugin has %2 inputs\n" @@ -5288,7 +5427,7 @@ msgstr "" "\n" "C'est incohérent car vous allez jeter une partie du signal." -#: gtk2_ardour/redirect_box.cc:398 +#: gtk2_ardour/redirect_box.cc:431 msgid "" "You attempted to add a plugin (%1).\n" "The plugin has %2 inputs\n" @@ -5308,7 +5447,7 @@ msgstr "" "C'est incohérent à moins que le plugin supporte les entrées latérales.\n" "Une version future d'Ardour prendra en charge ce type de configuration." -#: gtk2_ardour/redirect_box.cc:411 +#: gtk2_ardour/redirect_box.cc:444 msgid "" "You attempted to add a plugin (%1).\n" "\n" @@ -5331,15 +5470,15 @@ msgstr "" "\n" "Ardour ne sait pas comment faire dans ce genre de situations.\n" -#: gtk2_ardour/redirect_box.cc:499 +#: gtk2_ardour/redirect_box.cc:541 msgid "Pre-fader inserts, sends & plugins:" msgstr "Insertions, départs et plugins pré-atténuation" -#: gtk2_ardour/redirect_box.cc:502 +#: gtk2_ardour/redirect_box.cc:544 msgid "Post-fader inserts, sends & plugins:" msgstr "Insertions, départs et plugins post-atténuation" -#: gtk2_ardour/redirect_box.cc:650 +#: gtk2_ardour/redirect_box.cc:710 msgid "" "You cannot reorder this set of redirects\n" "in that way because the inputs and\n" @@ -5349,11 +5488,11 @@ msgstr "" "de cette façon car les entrées et les sorties ne fonctionnent\n" "pas correctement." -#: gtk2_ardour/redirect_box.cc:750 +#: gtk2_ardour/redirect_box.cc:823 msgid "rename redirect" msgstr "renommer la redirection" -#: gtk2_ardour/redirect_box.cc:824 gtk2_ardour/redirect_box.cc:872 +#: gtk2_ardour/redirect_box.cc:899 gtk2_ardour/redirect_box.cc:948 msgid "" "Copying the set of redirects on the clipboard failed,\n" "probably because the I/O configuration of the plugins\n" @@ -5363,7 +5502,7 @@ msgstr "" "probablement car la configuration d'entrées/sorties des plugins\n" "ne correspond pas à la configuration de cette piste." -#: gtk2_ardour/redirect_box.cc:894 +#: gtk2_ardour/redirect_box.cc:970 msgid "" "Do you really want to remove all redirects from this track?\n" "(this cannot be undone)" @@ -5371,7 +5510,7 @@ msgstr "" "Voulez-vous vraiment enlever toutes les redirections de cette piste ?\n" "(cela ne pourra pas être annulé)" -#: gtk2_ardour/redirect_box.cc:897 +#: gtk2_ardour/redirect_box.cc:973 msgid "" "Do you really want to remove all redirects from this bus?\n" "(this cannot be undone)" @@ -5379,146 +5518,79 @@ msgstr "" "Voulez-vous vraiment enlever toutes les redirections de ce bus ?\n" "(cela ne pourra pas être annulé)" -#: gtk2_ardour/redirect_box.cc:902 +#: gtk2_ardour/redirect_box.cc:978 msgid "Yes, remove them all" msgstr "Oui, les enlever." -#: gtk2_ardour/redirect_box.cc:938 -msgid "ardour: %1" -msgstr "ardour : %1" - -#: gtk2_ardour/redirect_box.cc:983 -msgid "ardour: %1: %2 (by %3)" -msgstr "ardour : %1 :·%2·(par·%3)" - -#: gtk2_ardour/redirect_box.cc:1069 +#: gtk2_ardour/redirect_box.cc:1140 msgid "New Plugin ..." msgstr "Nouveau plugin..." -#: gtk2_ardour/redirect_box.cc:1070 +#: gtk2_ardour/redirect_box.cc:1142 msgid "New Insert" msgstr "Nouvelle insertion" -#: gtk2_ardour/redirect_box.cc:1071 +#: gtk2_ardour/redirect_box.cc:1144 msgid "New Send ..." msgstr "Nouveau départ..." -#: gtk2_ardour/redirect_box.cc:1083 +#: gtk2_ardour/redirect_box.cc:1158 msgid "Deselect All" msgstr "désélectionner tout" -#: gtk2_ardour/redirect_box.cc:1090 +#: gtk2_ardour/redirect_box.cc:1165 msgid "Activate all" msgstr "activer tout" -#: gtk2_ardour/redirect_box.cc:1091 +#: gtk2_ardour/redirect_box.cc:1166 msgid "Deactivate all" msgstr "désactiver tout" -#: gtk2_ardour/audio_region_editor.cc:44 -msgid "NAME:" -msgstr "NOM :" - -#: gtk2_ardour/audio_region_editor.cc:45 -msgid "lock" -msgstr "verrouiller" - -#: gtk2_ardour/audio_region_editor.cc:47 -msgid "opaque" -msgstr "opaque" +#: gtk2_ardour/redirect_box.cc:1349 +msgid "%1: %2 (by %3)" +msgstr "%1: %2 (par %3)" #: gtk2_ardour/audio_region_editor.cc:48 -#: gtk2_ardour/audio_region_editor.cc:191 -#: gtk2_ardour/audio_region_editor.cc:225 -msgid "active" -msgstr "active" +msgid "NAME:" +msgstr "NOM :" #: gtk2_ardour/audio_region_editor.cc:49 -msgid "visible" -msgstr "visible" - -#: gtk2_ardour/audio_region_editor.cc:52 -msgid "Layer" -msgstr "Couche n°" - -#: gtk2_ardour/audio_region_editor.cc:53 msgid "play" msgstr "lire" -#: gtk2_ardour/audio_region_editor.cc:60 -msgid "ENVELOPE" -msgstr "enveloppe" - -#: gtk2_ardour/audio_region_editor.cc:106 -msgid "mute this region" -msgstr "Assourdir cette région" - -#: gtk2_ardour/audio_region_editor.cc:107 -msgid "regions underneath this one cannot be heard" -msgstr "les régions en dessous de celle-ci sont muettes" - -#: gtk2_ardour/audio_region_editor.cc:108 -msgid "prevent any changes to this region" -msgstr "empêche toute modification de cette région" - -#: gtk2_ardour/audio_region_editor.cc:109 -msgid "use the gain envelope during playback" -msgstr "utiliser l'enveloppe de gain pendant la lecture" - -#: gtk2_ardour/audio_region_editor.cc:110 -msgid "show the gain envelope" -msgstr "afficher l'enveloppe de gain" - -#: gtk2_ardour/audio_region_editor.cc:111 -msgid "use fade in curve during playback" -msgstr "utiliser un fondu ascendant pendant la lecture" - -#: gtk2_ardour/audio_region_editor.cc:112 -msgid "use fade out curve during playback" -msgstr "utiliser un fondu descendant pendant la lecture" - -#: gtk2_ardour/audio_region_editor.cc:113 +#: gtk2_ardour/audio_region_editor.cc:68 msgid "audition this region" msgstr "écouter cette région" -#: gtk2_ardour/audio_region_editor.cc:146 +#: gtk2_ardour/audio_region_editor.cc:83 msgid "START:" msgstr "début :" -#: gtk2_ardour/audio_region_editor.cc:148 +#: gtk2_ardour/audio_region_editor.cc:85 msgid "END:" msgstr "fin :" -#: gtk2_ardour/audio_region_editor.cc:150 +#: gtk2_ardour/audio_region_editor.cc:87 msgid "LENGTH:" msgstr "longueur :" -#: gtk2_ardour/audio_region_editor.cc:190 -msgid "FADE IN" -msgstr "montée" - -#: gtk2_ardour/audio_region_editor.cc:192 -#: gtk2_ardour/audio_region_editor.cc:226 -msgid "msecs" -msgstr "ms" - -#: gtk2_ardour/audio_region_editor.cc:224 -msgid "FADE OUT" -msgstr "descente" +#: gtk2_ardour/audio_region_editor.cc:123 +msgid "Region %1" +msgstr "Région %1" -#: gtk2_ardour/audio_region_editor.cc:264 -msgid "ardour: region " -msgstr "ardour : région " +#: gtk2_ardour/audio_region_editor.cc:204 +msgid "change region start position" +msgstr "changer le début de la région" -#: gtk2_ardour/audio_region_editor.cc:401 -msgid "fade in edit" -msgstr "édition de la montée" +#: gtk2_ardour/audio_region_editor.cc:221 +msgid "change region end position" +msgstr "changer la fin de la région" -#: gtk2_ardour/audio_region_editor.cc:413 -msgid "fade out edit" -msgstr "édition de la descente" +#: gtk2_ardour/audio_region_editor.cc:242 +msgid "change region length" +msgstr "changer la longueur de la région" -#: gtk2_ardour/audio_region_view.cc:904 +#: gtk2_ardour/audio_region_view.cc:911 msgid "add gain control point" msgstr "ajout d'un point de contrôle de gain" @@ -5534,84 +5606,72 @@ msgstr "Redirections pré-atténuation" msgid "Post-fader Redirects" msgstr "Redirections post-atténuation" -#: gtk2_ardour/route_params_ui.cc:140 -msgid "ardour: track/bus inspector" -msgstr "ardour : inspecteur de pistes et de bus" - -#: gtk2_ardour/route_params_ui.cc:141 -msgid "ardour_route_parameters" -msgstr "ardour_route_parameters" - -#: gtk2_ardour/route_params_ui.cc:202 +#: gtk2_ardour/route_params_ui.cc:205 msgid "route display list item for renamed route not found!" msgstr "" "élément de liste d'affichage de route pour la route renommée introuvable !" -#: gtk2_ardour/route_params_ui.cc:449 +#: gtk2_ardour/route_params_ui.cc:452 msgid "NO TRACK" msgstr "PAS DE PISTE" -#: gtk2_ardour/route_params_ui.cc:672 -msgid "ardour: track/bus inspector: " -msgstr "ardour : inspecteur de piste et de bus :" - -#: gtk2_ardour/route_params_ui.cc:676 +#: gtk2_ardour/route_params_ui.cc:682 gtk2_ardour/route_params_ui.cc:683 msgid "No Route Selected" msgstr "Aucune route sélectionnée" -#: gtk2_ardour/route_params_ui.cc:677 -msgid "ardour: track/bus/inspector: no route selected" -msgstr "ardour : inspecteur de piste et de bus : aucune route sélectionnée" - -#: gtk2_ardour/route_ui.cc:131 +#: gtk2_ardour/route_ui.cc:154 msgid "mute change" msgstr "modification de la sourdine" -#: gtk2_ardour/route_ui.cc:207 gtk2_ardour/route_ui.cc:218 +#: gtk2_ardour/route_ui.cc:232 gtk2_ardour/route_ui.cc:243 msgid "solo change" msgstr "modification du solo" -#: gtk2_ardour/route_ui.cc:282 +#: gtk2_ardour/route_ui.cc:301 +msgid "Not connected to JACK - cannot engage record" +msgstr "Non connecté à JACK – impossible d'enclencher l'enregistrement" + +#: gtk2_ardour/route_ui.cc:314 msgid "rec-enable change" msgstr "(dés)activation d'enregistrement" -#: gtk2_ardour/route_ui.cc:480 +#: gtk2_ardour/route_ui.cc:548 msgid "Solo-safe" msgstr "bloquer le solo" -#: gtk2_ardour/route_ui.cc:502 +#: gtk2_ardour/route_ui.cc:570 msgid "Pre Fader" msgstr "Pré-atténuation" -#: gtk2_ardour/route_ui.cc:509 +#: gtk2_ardour/route_ui.cc:577 msgid "Post Fader" msgstr "Post-atténuation" -#: gtk2_ardour/route_ui.cc:516 +#: gtk2_ardour/route_ui.cc:584 msgid "Control Outs" msgstr "Sorties de contrôle" -#: gtk2_ardour/route_ui.cc:523 +#: gtk2_ardour/route_ui.cc:591 msgid "Main Outs" msgstr "Sorties principales" -#: gtk2_ardour/route_ui.cc:560 +#: gtk2_ardour/route_ui.cc:628 msgid "mix group solo change" msgstr "changt solo de groupe" -#: gtk2_ardour/route_ui.cc:599 +#: gtk2_ardour/route_ui.cc:667 msgid "mix group mute change" msgstr "changt sourdine de groupe" -#: gtk2_ardour/route_ui.cc:616 +#: gtk2_ardour/route_ui.cc:684 msgid "mix group rec-enable change" msgstr "changt d'activation d'enreg de groupe" -#: gtk2_ardour/route_ui.cc:634 gtk2_ardour/visual_time_axis.cc:237 +#: gtk2_ardour/route_ui.cc:702 gtk2_ardour/visual_time_axis.cc:241 msgid "ardour: color selection" msgstr "ardour : sélection de couleur" -#: gtk2_ardour/route_ui.cc:710 +#: gtk2_ardour/route_ui.cc:778 msgid "" "Do you really want to remove track \"%1\" ?\n" "\n" @@ -5622,7 +5682,7 @@ msgstr "" "Vous pourrez aussi perdre la liste de lecture utilisée par cette piste.\n" "(cela ne pourra pas être annulé)" -#: gtk2_ardour/route_ui.cc:712 +#: gtk2_ardour/route_ui.cc:780 msgid "" "Do you really want to remove bus \"%1\" ?\n" "(cannot be undone)" @@ -5630,199 +5690,251 @@ msgstr "" "Voulez-vous vraiment supprimer le bus « %1 » ?\n" "(cela ne pourra pas être annulé)" -#: gtk2_ardour/route_ui.cc:716 gtk2_ardour/visual_time_axis.cc:279 -msgid "Yes, remove it." -msgstr "Oui, supprimer" - -#: gtk2_ardour/route_ui.cc:744 +#: gtk2_ardour/route_ui.cc:805 msgid "New Name: " msgstr "nouveau nom :" -#: gtk2_ardour/sfdb_ui.cc:61 -msgid "Add Field..." -msgstr "Ajouter un champ..." - -#: gtk2_ardour/sfdb_ui.cc:62 -msgid "Remove Field" -msgstr "Enlever le champ" +#: gtk2_ardour/sfdb_ui.cc:63 +msgid "Apply" +msgstr "Appliquer" -#: gtk2_ardour/sfdb_ui.cc:65 +#: gtk2_ardour/sfdb_ui.cc:69 msgid "Soundfile Info" msgstr "Informations sur le fichier audio" -#: gtk2_ardour/sfdb_ui.cc:83 -msgid "Field" -msgstr "champ" +#: gtk2_ardour/sfdb_ui.cc:72 +msgid "comma seperated tags" +msgstr "tags séparées par des virgules" -#: gtk2_ardour/sfdb_ui.cc:84 -msgid "Value" -msgstr "valeur" +#: gtk2_ardour/sfdb_ui.cc:130 +msgid "Length: n/a" +msgstr "Longueur : n/a" -#: gtk2_ardour/sfdb_ui.cc:167 -msgid "samplerate" -msgstr "taux d'échantillonnage" +#: gtk2_ardour/sfdb_ui.cc:131 +msgid "Format: n/a" +msgstr "Format : n/a" -#: gtk2_ardour/sfdb_ui.cc:168 -msgid "resolution" -msgstr "résolution" +#: gtk2_ardour/sfdb_ui.cc:132 +msgid "Channels: n/a" +msgstr "Voies : n/a" -#: gtk2_ardour/sfdb_ui.cc:168 -msgid "format" -msgstr "format" +#: gtk2_ardour/sfdb_ui.cc:133 +msgid "Samplerate: n/a" +msgstr "Taux d'échantillonnage : n/a" + +#: gtk2_ardour/sfdb_ui.cc:134 +msgid "Timecode: n/a" +msgstr "Timecode : n/a" -#: gtk2_ardour/sfdb_ui.cc:189 +#: gtk2_ardour/sfdb_ui.cc:144 +msgid "Length: %1" +msgstr "Longueur : %1" + +#: gtk2_ardour/sfdb_ui.cc:146 +msgid "Channels: %1" +msgstr "Voies : %1" + +#: gtk2_ardour/sfdb_ui.cc:147 +msgid "Samplerate: %1" +msgstr "Taux d'échantillonnage : %1" + +#: gtk2_ardour/sfdb_ui.cc:148 +msgid "Timecode: %1" +msgstr "Timecode : %1" + +#: gtk2_ardour/sfdb_ui.cc:188 msgid "Could not read file: %1 (%2)." msgstr "Impossible de lire le fichier « %1 » (%2)." -#: gtk2_ardour/sfdb_ui.cc:205 +#: gtk2_ardour/sfdb_ui.cc:206 msgid "Could not access soundfile: " msgstr "Impossible d'accéder au fichier audio : " -#: gtk2_ardour/sfdb_ui.cc:244 -msgid "Name for Field" -msgstr "Nom du champ :" +#: gtk2_ardour/sfdb_ui.cc:255 +msgid "SoundFileBox: Could not tokenize string: " +msgstr "SoundFileBox : Could not tokenize string: " + +#: gtk2_ardour/sfdb_ui.cc:275 +msgid "Add to Region list" +msgstr "ajouter à la liste des régions" + +#: gtk2_ardour/sfdb_ui.cc:276 +msgid "Add to selected Track(s)" +msgstr "ajouter aux pistes sélectionnées" + +#: gtk2_ardour/sfdb_ui.cc:277 +msgid "Add as new Track(s)" +msgstr "ajouter comme nouvelles pistes" + +#: gtk2_ardour/sfdb_ui.cc:278 +msgid "Add as new Tape Track(s)" +msgstr "ajouter comme nouvelles pistes bandes" + +#: gtk2_ardour/sfdb_ui.cc:287 +msgid "Search" +msgstr "Recherche" + +#: gtk2_ardour/sfdb_ui.cc:302 +msgid "Paths" +msgstr "Chemins" + +#: gtk2_ardour/sfdb_ui.cc:304 +msgid "Files" +msgstr "Fichiers" + +#: gtk2_ardour/sfdb_ui.cc:305 +msgid "Tags" +msgstr "Tags" + +#: gtk2_ardour/sfdb_ui.cc:374 +msgid "SoundFileBrowser: Could not tokenize string: " +msgstr "SoundFileBrowser: Could not tokenize string: " -#: gtk2_ardour/sfdb_ui.cc:356 +#: gtk2_ardour/sfdb_ui.cc:432 msgid "Split Channels" msgstr "Séparer les voies" -#: gtk2_ardour/sfdb_ui.cc:363 +#: gtk2_ardour/sfdb_ui.cc:435 msgid "Create a region for each channel" msgstr "créer une région pour chaque voie" -#: gtk2_ardour/sfdb_ui.cc:365 +#: gtk2_ardour/sfdb_ui.cc:437 msgid "Embed" msgstr "Lier" -#: gtk2_ardour/sfdb_ui.cc:367 +#: gtk2_ardour/sfdb_ui.cc:439 msgid "Link to an external file" msgstr "Lier à un fichier audio externe" -#: gtk2_ardour/sfdb_ui.cc:369 +#: gtk2_ardour/sfdb_ui.cc:441 msgid "Import" msgstr "Importer" -#: gtk2_ardour/sfdb_ui.cc:371 +#: gtk2_ardour/sfdb_ui.cc:443 msgid "Copy a file to the session folder" msgstr "Copier un fichier vers le dossier de session" -#: gtk2_ardour/tempo_dialog.cc:18 gtk2_ardour/tempo_dialog.cc:35 +#: gtk2_ardour/tempo_dialog.cc:17 +msgid "edit tempo" +msgstr "modifier le tempo" + +#: gtk2_ardour/tempo_dialog.cc:20 gtk2_ardour/tempo_dialog.cc:39 msgid "Beats per minute" msgstr "battements par minute" -#: gtk2_ardour/tempo_dialog.cc:21 gtk2_ardour/tempo_dialog.cc:38 -#: gtk2_ardour/tempo_dialog.cc:203 gtk2_ardour/tempo_dialog.cc:221 +#: gtk2_ardour/tempo_dialog.cc:23 gtk2_ardour/tempo_dialog.cc:42 +#: gtk2_ardour/tempo_dialog.cc:159 gtk2_ardour/tempo_dialog.cc:177 msgid "Bar" msgstr "Mesure" -#: gtk2_ardour/tempo_dialog.cc:22 gtk2_ardour/tempo_dialog.cc:39 -#: gtk2_ardour/tempo_dialog.cc:204 gtk2_ardour/tempo_dialog.cc:222 +#: gtk2_ardour/tempo_dialog.cc:24 gtk2_ardour/tempo_dialog.cc:43 +#: gtk2_ardour/tempo_dialog.cc:160 gtk2_ardour/tempo_dialog.cc:178 msgid "Beat" msgstr "Temps" -#: gtk2_ardour/tempo_dialog.cc:24 gtk2_ardour/tempo_dialog.cc:41 -#: gtk2_ardour/tempo_dialog.cc:205 gtk2_ardour/tempo_dialog.cc:223 +#: gtk2_ardour/tempo_dialog.cc:26 gtk2_ardour/tempo_dialog.cc:45 +#: gtk2_ardour/tempo_dialog.cc:161 gtk2_ardour/tempo_dialog.cc:179 msgid "Location" msgstr "Emplacement" -#: gtk2_ardour/tempo_dialog.cc:199 gtk2_ardour/tempo_dialog.cc:217 +#: gtk2_ardour/tempo_dialog.cc:155 gtk2_ardour/tempo_dialog.cc:173 msgid "Meter denominator" msgstr "Dénominateur de l'indicateur de mesure" -#: gtk2_ardour/tempo_dialog.cc:200 gtk2_ardour/tempo_dialog.cc:218 +#: gtk2_ardour/tempo_dialog.cc:156 gtk2_ardour/tempo_dialog.cc:174 msgid "Beats per bar" msgstr "Temps par mesure" -#: gtk2_ardour/tempo_dialog.cc:236 gtk2_ardour/tempo_dialog.cc:247 +#: gtk2_ardour/tempo_dialog.cc:192 gtk2_ardour/tempo_dialog.cc:203 msgid "whole (1)" msgstr "noire (1)" -#: gtk2_ardour/tempo_dialog.cc:237 gtk2_ardour/tempo_dialog.cc:249 +#: gtk2_ardour/tempo_dialog.cc:193 gtk2_ardour/tempo_dialog.cc:205 msgid "second (2)" msgstr "croche (2)" -#: gtk2_ardour/tempo_dialog.cc:238 gtk2_ardour/tempo_dialog.cc:251 +#: gtk2_ardour/tempo_dialog.cc:194 gtk2_ardour/tempo_dialog.cc:207 msgid "third (3)" msgstr "triolet (3)" -#: gtk2_ardour/tempo_dialog.cc:239 gtk2_ardour/tempo_dialog.cc:253 -#: gtk2_ardour/tempo_dialog.cc:261 +#: gtk2_ardour/tempo_dialog.cc:195 gtk2_ardour/tempo_dialog.cc:209 +#: gtk2_ardour/tempo_dialog.cc:217 msgid "quarter (4)" msgstr "double croche (4)" -#: gtk2_ardour/tempo_dialog.cc:240 gtk2_ardour/tempo_dialog.cc:255 +#: gtk2_ardour/tempo_dialog.cc:196 gtk2_ardour/tempo_dialog.cc:211 msgid "eighth (8)" msgstr "huitième (8)" -#: gtk2_ardour/tempo_dialog.cc:241 gtk2_ardour/tempo_dialog.cc:257 +#: gtk2_ardour/tempo_dialog.cc:197 gtk2_ardour/tempo_dialog.cc:213 msgid "sixteenth (16)" msgstr "seizième (16)" -#: gtk2_ardour/tempo_dialog.cc:242 gtk2_ardour/tempo_dialog.cc:259 +#: gtk2_ardour/tempo_dialog.cc:198 gtk2_ardour/tempo_dialog.cc:215 msgid "thirty-second (32)" msgstr "trente-deuxième (32)" -#: gtk2_ardour/tempo_dialog.cc:420 +#: gtk2_ardour/tempo_dialog.cc:376 msgid "garbaged note type entry (%1)" msgstr "entrée type de note endommagée (%1)" -#: gtk2_ardour/tempo_dialog.cc:430 +#: gtk2_ardour/tempo_dialog.cc:386 msgid "incomprehensible note type entry (%1)" msgstr "entrée type de note incompréhensible (%1)" -#: gtk2_ardour/time_axis_view.cc:112 +#: gtk2_ardour/time_axis_view.cc:111 msgid "gTortnam" msgstr "gTortnam" -#: gtk2_ardour/time_axis_view.cc:550 +#: gtk2_ardour/time_axis_view.cc:586 msgid "Largest" msgstr "Énorme" -#: gtk2_ardour/time_axis_view.cc:551 +#: gtk2_ardour/time_axis_view.cc:587 msgid "Large" msgstr "Très grand" -#: gtk2_ardour/time_axis_view.cc:552 +#: gtk2_ardour/time_axis_view.cc:588 msgid "Larger" msgstr "Grand" -#: gtk2_ardour/time_axis_view.cc:554 +#: gtk2_ardour/time_axis_view.cc:590 msgid "Smaller" msgstr "Petit" -#: gtk2_ardour/time_axis_view.cc:555 +#: gtk2_ardour/time_axis_view.cc:591 msgid "Small" msgstr "Très petit" -#: gtk2_ardour/time_axis_view.cc:869 +#: gtk2_ardour/time_axis_view.cc:906 msgid "unknown track height name \"%1\" in XML GUI information" msgstr "nom de hauteur de piste inconnu \"%1\" dans les données XML de l'IHM" -#: gtk2_ardour/time_axis_view_item.cc:79 +#: gtk2_ardour/time_axis_view_item.cc:78 msgid "TimeAxisViewItemName" msgstr "TimeAxisViewItemName" -#: gtk2_ardour/time_axis_view_item.cc:302 +#: gtk2_ardour/time_axis_view_item.cc:330 msgid "new duration %1 frames is out of bounds for %2" msgstr "la nouvelle durée %1 trames est hors limites pour %2" -#: gtk2_ardour/time_selection.cc:41 +#: gtk2_ardour/time_selection.cc:40 msgid "programming error: request for non-existent audio range (%1)!" -msgstr "erreur de programmation : demande d'intervalle audio inexistant (%1) !" +msgstr "programming error: request for non-existent audio range (%1)!" -#: gtk2_ardour/utils.cc:106 gtk2_ardour/utils.cc:149 +#: gtk2_ardour/utils.cc:131 gtk2_ardour/utils.cc:174 msgid "bad XPM header %1" msgstr "mauvais entête XPM %1" -#: gtk2_ardour/utils.cc:331 +#: gtk2_ardour/utils.cc:313 msgid "missing RGBA style for \"%1\"" msgstr "style RGBA manquant pour « %1 »" -#: gtk2_ardour/utils.cc:480 +#: gtk2_ardour/utils.cc:495 msgid "cannot find icon image for %1" msgstr "Impossible de trouver les icônes pour %1" -#: gtk2_ardour/visual_time_axis.cc:276 +#: gtk2_ardour/visual_time_axis.cc:280 msgid "" "Do you really want to remove track \"%1\" ?\n" "(cannot be undone)" @@ -5830,142 +5942,421 @@ msgstr "" "Voulez-vous vraiment supprimer la piste « %1 » ?\n" "(cela ne pourra pas être annulé)" -#: gtk2_ardour/visual_time_axis.cc:325 +#: gtk2_ardour/visual_time_axis.cc:329 msgid "new name: " msgstr "nouveau nom :" -#: gtk2_ardour/visual_time_axis.cc:336 -msgid "A track already exists with that name" -msgstr "Une piste portant le même nom existe déjà " - -#: gtk2_ardour/connection_editor.cc:51 +#: gtk2_ardour/connection_editor.cc:50 msgid "ardour: connections" msgstr "ardour : connexions" -#: gtk2_ardour/connection_editor.cc:52 +#: gtk2_ardour/connection_editor.cc:51 msgid "Input Connections" msgstr "Connexions en entrée" -#: gtk2_ardour/connection_editor.cc:53 +#: gtk2_ardour/connection_editor.cc:52 msgid "Output Connections" msgstr "Connexions en sortie" -#: gtk2_ardour/connection_editor.cc:54 +#: gtk2_ardour/connection_editor.cc:53 msgid "New Input" msgstr "Nouvelle entrée" -#: gtk2_ardour/connection_editor.cc:55 +#: gtk2_ardour/connection_editor.cc:54 msgid "New Output" msgstr "Nouvelle sortie" -#: gtk2_ardour/connection_editor.cc:58 gtk2_ardour/connection_editor.cc:101 +#: gtk2_ardour/connection_editor.cc:57 gtk2_ardour/connection_editor.cc:100 msgid "Add Port" msgstr "Ajouter un port" -#: gtk2_ardour/connection_editor.cc:106 +#: gtk2_ardour/connection_editor.cc:105 msgid "Available Ports" msgstr "Ports disponibles" -#: gtk2_ardour/connection_editor.cc:501 +#: gtk2_ardour/connection_editor.cc:500 msgid "Connection \"" msgstr "Connexion \"" -#: gtk2_ardour/connection_editor.cc:503 +#: gtk2_ardour/connection_editor.cc:502 msgid "\"" msgstr "\"" -#: gtk2_ardour/connection_editor.cc:532 +#: gtk2_ardour/connection_editor.cc:531 #, c-format msgid "in %d" msgstr "entrée %d" -#: gtk2_ardour/connection_editor.cc:534 +#: gtk2_ardour/connection_editor.cc:533 #, c-format msgid "out %d" msgstr "sortie %d" -#: gtk2_ardour/connection_editor.cc:658 +#: gtk2_ardour/connection_editor.cc:657 msgid "Name for new connection:" msgstr "Nom de la nouvelle connexion :" -#: gtk2_ardour/analysis_window.cc:46 +#: gtk2_ardour/analysis_window.cc:45 msgid "analysis window" msgstr "fenêtre d'analyse" -#: gtk2_ardour/analysis_window.cc:48 +#: gtk2_ardour/analysis_window.cc:47 msgid "Signal source" msgstr "source du signal" -#: gtk2_ardour/analysis_window.cc:49 +#: gtk2_ardour/analysis_window.cc:48 msgid "Selected ranges" msgstr "intervalles sélectionnés" -#: gtk2_ardour/analysis_window.cc:50 +#: gtk2_ardour/analysis_window.cc:49 msgid "Selected regions" msgstr "régions sélectionnées" -#: gtk2_ardour/analysis_window.cc:52 +#: gtk2_ardour/analysis_window.cc:51 msgid "Display model" msgstr "Modèle d'affichage" -#: gtk2_ardour/analysis_window.cc:53 +#: gtk2_ardour/analysis_window.cc:52 msgid "Composite graphs for each track" msgstr "graphique composite pour chaque piste" -#: gtk2_ardour/analysis_window.cc:54 +#: gtk2_ardour/analysis_window.cc:53 msgid "Composite graph of all tracks" msgstr "graphique composite de toutes les pistes" -#: gtk2_ardour/analysis_window.cc:63 +#: gtk2_ardour/analysis_window.cc:62 msgid "Track" msgstr "Piste" -#: gtk2_ardour/analysis_window.cc:131 +#: gtk2_ardour/analysis_window.cc:130 msgid "Analyze data" msgstr "analyser les données" -#~ msgid "32-bit floating point" -#~ msgstr "32 bits à virgule flottante" +#~ msgid "" +#~ "%1\n" +#~ "(built with ardour/gtk %2.%3.%4 libardour: %5.%6.%7)" +#~ msgstr "" +#~ "%1\n" +#~ "(ardour/gtk %2.%3.%4 libardour : %5.%6.%7)" -#~ msgid "24-bit signed integer" -#~ msgstr "24 bits à entiers signés" +#~ msgid "Autuo Play" +#~ msgstr "lecture auto" -#~ msgid "channel1" -#~ msgstr "voie 1" +#~ msgid "programming error: impossible control method" +#~ msgstr "erreur du logiciel : méthode de contrôle impossible" -#~ msgid "channel2" -#~ msgstr "voie 2" +#~ msgid "Unable to create all required ports" +#~ msgstr "Impossible de créer tous les ports" -#~ msgid "Export Region" -#~ msgstr "Exporter la région" +#~ msgid "ardour_cleanup" +#~ msgstr "ardour_cleanup" + +#~ msgid "MMC + Local" +#~ msgstr "MMC + Local" + +#~ msgid "Local" +#~ msgstr "Local" + +#~ msgid "Sound File Browser" +#~ msgstr "Navigateur de fichiers audio..." + +#~ msgid "start prefix" +#~ msgstr "préfixe de début" + +#~ msgid "ardour: clock" +#~ msgstr "ardour : horloge" + +#~ msgid "SMPTE" +#~ msgstr "SMPTE" + +#~ msgid "a track already exists with that name" +#~ msgstr "ce nom est déjà utilisé pour une autre piste" + +#~ msgid "Normal Snap" +#~ msgstr "Aligné sur :" + +#~ msgid "Visible" +#~ msgstr "visible" + +#~ msgid "ardour: editor" +#~ msgstr "Ardour : éditeur" + +#~ msgid "ardour_editor" +#~ msgstr "ardour_editor" + +#~ msgid "ardour: editor: " +#~ msgstr "Ardour : éditeur : " + +#~ msgid "Unlock" +#~ msgstr "Déverrouiller" + +#~ msgid "Destroy" +#~ msgstr "Détruire" #~ msgid "" -#~ "Trace\n" -#~ "Input" +#~ "Current Zoom Range\n" +#~ "(Width of visible area)" +#~ msgstr "durée de la zone visible" + +#~ msgid "... as new track" +#~ msgstr "...comme nouvelle piste" + +#~ msgid "... as new region" +#~ msgstr "...comme nouvelle région" + +#~ msgid "Import audio (copy)" +#~ msgstr "Importer un fichier audio (par copie)" + +#~ msgid "Remove last capture" +#~ msgstr "Enlever la dernière capture" + +#~ msgid "Focus Left" +#~ msgstr "à gauche" + +#~ msgid "Focus Right" +#~ msgstr "à droite" + +#~ msgid "Focus Center" +#~ msgstr "au centre" + +#~ msgid "Focus Playhead" +#~ msgstr "suivre tête de lecture" + +#~ msgid "Focus Edit Cursor" +#~ msgstr "suivre curseur d'édition" + +#~ msgid "SMPTE fps" +#~ msgstr "nb trames SMPTE par seconde" + +#~ msgid "Add Location from Playhead" +#~ msgstr "repère à la tête de lecture" + +#~ msgid "" +#~ "programming error: Unexpected SMPTE value (%1, drop = %2) in " +#~ "update_smpte_mode. Menu is probably wrong." #~ msgstr "" -#~ "tracer\n" -#~ "l'entrée" +#~ "erreur du logiciel: valeur SMPTE inattendue (%1, drop = %2) dans " +#~ "update_smpte_mode. Le menu est probablement mauvais" + +#~ msgid "ardour: rename mark" +#~ msgstr "ardour : renommer le repère" + +#~ msgid "ardour: rename range" +#~ msgstr "ardour : renommer l'intervalle" + +#~ msgid "select on click" +#~ msgstr "sélectionner au clic" + +#~ msgid "select regions" +#~ msgstr "sélectionner les régions" + +#~ msgid "ardour: rename region" +#~ msgstr "ardour : renommer la région" + +#~ msgid "ardour: freeze" +#~ msgstr "ardour : blocage de la piste" + +#~ msgid "ardour: timestretch" +#~ msgstr "ardour : déformation temporelle" + +#~ msgid "ardour_export" +#~ msgstr "ardour_export" + +#~ msgid "cannot find images for fader slider" +#~ msgstr "Impossible de trouver les images des atténuateurs" + +#~ msgid "cannot find images for fader rail" +#~ msgstr "Impossible de trouver les images des rails d'attenuateurs" + +#~ msgid "port" +#~ msgstr "port" + +#~ msgid "KeyboardTarget: keyname \"%1\" is unknown." +#~ msgstr "KeyboardTarget : nom de touche inconnue : « %1 »" #~ msgid "" -#~ "Trace\n" -#~ "Output" +#~ "Your system is completely broken - NumLock uses \"%1\"as its modifier. " +#~ "This is madness - see the man page for xmodmap to find out how to fix " +#~ "this." #~ msgstr "" -#~ "tracer\n" -#~ "la sortie" +#~ "Votre système est très mal configuré -- la touche VerrNum (Numlock)" +#~ "utilise « %1 » comme modificateur. C'est une aberration -- consultez la " +#~ "page de manuel de « xmodmap » pour savoir comment réparer ça." #~ msgid "" -#~ "MIDI Parameter\n" -#~ "Control" -#~ msgstr "paramètres MIDI" +#~ "Your system generates \"%1\" when the NumLock key is pressed. This can " +#~ "cause problems when editing so Ardour will use %2 to mean Meta rather " +#~ "than %1" +#~ msgstr "" +#~ "Votre système génère le code « %1 » quand la touche VerrNum (Numlock) est " +#~ "pressée. Cela peut causer des problèmes pendant l'édition, de sorte " +#~ "qu'Ardour utilisera « %2 » comme touche Meta plutôt que « %1 »." + +#~ msgid "You have %1 keys bound to \"mod1\"" +#~ msgstr "%1 touches sont affectées à « mod1 »" + +#~ msgid "You have %1 keys bound to \"mod2\"" +#~ msgstr "%1 touches sont affectées à « mod2 »" + +#~ msgid "You have %1 keys bound to \"mod3\"" +#~ msgstr "%1 touches sont affectées à « mod3 »" + +#~ msgid "You have %1 keys bound to \"mod4\"" +#~ msgstr "%1 touches sont affectées à « mod4 »" + +#~ msgid "You have %1 keys bound to \"mod5\"" +#~ msgstr "%1 touches sont affectées à « mod5 »" + +#~ msgid "ardour: locations" +#~ msgstr "ardour : repères et intervalles" + +#~ msgid "ardour_locations" +#~ msgstr "ardour_locations" + +#~ msgid "ardour is killing itself for a clean exit\n" +#~ msgstr "récupération du signal pour effectuer une sortie propre\n" + +#~ msgid "stopping user interface\n" +#~ msgstr "arrêt de l'interface utilisateur\n" + +#~ msgid "%d(%d): received signal %d\n" +#~ msgstr "%d(%d) : reçu le signal %d\n" + +#~ msgid "cannot become new process group leader (%1)" +#~ msgstr "impossible de devenir le leader du nouveau groupe de processus" + +#~ msgid "cannot setup signal handling for %1" +#~ msgstr "impossible d'installer le gestionnaire de signaux pour %1" + +#~ msgid "cannot set default signal mask (%1)" +#~ msgstr "impossible de définir le masque de signal par défaut (%1)" + +#~ msgid "mute" +#~ msgstr "muet" -#~ msgid "Add to Region list" -#~ msgstr "ajouter à la liste des régions" +#~ msgid "solo" +#~ msgstr "solo" -#~ msgid "Add to selected Track(s)" -#~ msgstr "ajouter aux pistes sélectionnées" +#~ msgid "ardour: mixer" +#~ msgstr "ardour : console de mixage" -#~ msgid "Add as new Track(s)" -#~ msgstr "ajouter comme nouvelles pistes" +#~ msgid "ardour_mixer" +#~ msgstr "ardour_mixer" -#~ msgid "Add as new Tape Track(s)" -#~ msgstr "ajouter comme nouvelles pistes bandes" +#~ msgid "ardour: mixer: " +#~ msgstr "ardour : console de mixage : " + +#~ msgid "ardour: options editor" +#~ msgstr "ardour : éditeur d'options" + +#~ msgid "ardour_option_editor" +#~ msgstr "ardour_option_editor" + +#~ msgid "Soundfile Search Paths" +#~ msgstr "Chemins de recherche des fichiers audio" + +#~ msgid " -g, --gtktheme Allow GTK to load a theme\n" +#~ msgstr "" +#~ " -g, --gtktheme Autoriser le chargement d'un thème\n" + +#~ msgid "ardour: playlists" +#~ msgstr "ardour : listes de lecture" + +#~ msgid "ardour: playlist for " +#~ msgstr "ardour : liste de lecture pour " + +#~ msgid "ardour: %1" +#~ msgstr "ardour : %1" + +#~ msgid "active" +#~ msgstr "active" + +#~ msgid "visible" +#~ msgstr "visible" + +#~ msgid "Layer" +#~ msgstr "Couche n°" + +#~ msgid "ENVELOPE" +#~ msgstr "enveloppe" + +#~ msgid "mute this region" +#~ msgstr "Assourdir cette région" + +#~ msgid "regions underneath this one cannot be heard" +#~ msgstr "les régions en dessous de celle-ci sont muettes" + +#~ msgid "prevent any changes to this region" +#~ msgstr "empêche toute modification de cette région" + +#~ msgid "use the gain envelope during playback" +#~ msgstr "utiliser l'enveloppe de gain pendant la lecture" + +#~ msgid "show the gain envelope" +#~ msgstr "afficher l'enveloppe de gain" + +#~ msgid "use fade in curve during playback" +#~ msgstr "utiliser un fondu ascendant pendant la lecture" + +#~ msgid "use fade out curve during playback" +#~ msgstr "utiliser un fondu descendant pendant la lecture" + +#~ msgid "FADE IN" +#~ msgstr "montée" + +#~ msgid "msecs" +#~ msgstr "ms" + +#~ msgid "FADE OUT" +#~ msgstr "descente" + +#~ msgid "ardour: region " +#~ msgstr "ardour : région " + +#~ msgid "ardour: track/bus inspector" +#~ msgstr "ardour : inspecteur de pistes et de bus" + +#~ msgid "ardour_route_parameters" +#~ msgstr "ardour_route_parameters" + +#~ msgid "ardour: track/bus inspector: " +#~ msgstr "ardour : inspecteur de piste et de bus :" + +#~ msgid "ardour: track/bus/inspector: no route selected" +#~ msgstr "ardour : inspecteur de piste et de bus : aucune route sélectionnée" + +#~ msgid "Add Field..." +#~ msgstr "Ajouter un champ..." + +#~ msgid "Remove Field" +#~ msgstr "Enlever le champ" + +#~ msgid "Field" +#~ msgstr "champ" + +#~ msgid "Value" +#~ msgstr "valeur" + +#~ msgid "resolution" +#~ msgstr "résolution" + +#~ msgid "format" +#~ msgstr "format" + +#~ msgid "Name for Field" +#~ msgstr "Nom du champ :" + +#~ msgid "32-bit floating point" +#~ msgstr "32 bits à virgule flottante" + +#~ msgid "24-bit signed integer" +#~ msgstr "24 bits à entiers signés" + +#~ msgid "channel1" +#~ msgstr "voie 1" + +#~ msgid "channel2" +#~ msgstr "voie 2" + +#~ msgid "Export Region" +#~ msgstr "Exporter la région" diff --git a/gtk2_ardour/po/ru_RU.po b/gtk2_ardour/po/ru_RU.po index 7a11f8bb1d..e5db030c2d 100644 --- a/gtk2_ardour/po/ru_RU.po +++ b/gtk2_ardour/po/ru_RU.po @@ -3,118 +3,148 @@ # This file is distributed under the same license as the gtk-ardour package. # # Igor Blinov pitstop@nm.ru, 2004. -# Alexandre Prokoudine <alexandre.prokoudine@gmail.com>, 2006. +# Alexandre Prokoudine <alexandre.prokoudine@gmail.com>, 2006, 2007. msgid "" msgstr "" "Project-Id-Version: ru_RU\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-09-21 04:11+0400\n" -"PO-Revision-Date: 2006-09-21 07:53+0400\n" +"POT-Creation-Date: 2007-01-05 08:01+0300\n" +"PO-Revision-Date: 2007-01-11 06:31+0300\n" "Last-Translator: Alexandre Prokoudine <alexandre.prokoudine@gmail.com>\n" -"Language-Team: Russian <ru@li.org>\n" +"Language-Team: Russian <gnome-cyr@lists.gnome.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: gtk2_ardour/about.cc:120 +#: gtk2_ardour/about.cc:121 msgid "Paul Davis" msgstr "Paul Davis" -#: gtk2_ardour/about.cc:121 +#: gtk2_ardour/about.cc:122 msgid "Jesse Chappell" msgstr "Jesse Chappell" -#: gtk2_ardour/about.cc:122 +#: gtk2_ardour/about.cc:123 msgid "Taybin Rutkin" msgstr "Taybin Rutkin" -#: gtk2_ardour/about.cc:123 +#: gtk2_ardour/about.cc:124 msgid "Marcus Andersson" msgstr "Marcus Andersson" -#: gtk2_ardour/about.cc:124 +#: gtk2_ardour/about.cc:125 msgid "Jeremy Hall" msgstr "Jeremy Hall" -#: gtk2_ardour/about.cc:125 +#: gtk2_ardour/about.cc:126 msgid "Steve Harris" msgstr "Steve Harris" -#: gtk2_ardour/about.cc:126 +#: gtk2_ardour/about.cc:127 msgid "Tim Mayberry" msgstr "Tim Mayberry" -#: gtk2_ardour/about.cc:127 +#: gtk2_ardour/about.cc:128 msgid "Mark Stewart" msgstr "Mark Stewart" -#: gtk2_ardour/about.cc:128 +#: gtk2_ardour/about.cc:129 msgid "Sam Chessman" msgstr "Sam Chessman" -#: gtk2_ardour/about.cc:129 +#: gtk2_ardour/about.cc:130 msgid "Jack O'Quin" msgstr "Jack O'Quin" -#: gtk2_ardour/about.cc:130 +#: gtk2_ardour/about.cc:131 msgid "Matt Krai" msgstr "Matt Krai" -#: gtk2_ardour/about.cc:131 +#: gtk2_ardour/about.cc:132 msgid "Ben Bell" msgstr "Ben Bell" -#: gtk2_ardour/about.cc:132 +#: gtk2_ardour/about.cc:133 msgid "Gerard van Dongen" msgstr "Gerard van Dongen" -#: gtk2_ardour/about.cc:133 +#: gtk2_ardour/about.cc:134 msgid "Thomas Charbonnel" msgstr "Thomas Charbonnel" -#: gtk2_ardour/about.cc:134 +#: gtk2_ardour/about.cc:135 msgid "Nick Mainsbridge" msgstr "Nick Mainsbridge" -#: gtk2_ardour/about.cc:135 +#: gtk2_ardour/about.cc:136 msgid "Colin Law" msgstr "Colin Law" -#: gtk2_ardour/about.cc:136 +#: gtk2_ardour/about.cc:137 msgid "Sampo Savolainen" msgstr "Sampo Savolainen" -#: gtk2_ardour/about.cc:137 +#: gtk2_ardour/about.cc:138 msgid "Joshua Leach" msgstr "Joshua Leach" -#: gtk2_ardour/about.cc:138 +#: gtk2_ardour/about.cc:139 msgid "Rob Holland" msgstr "Rob Holland" -#: gtk2_ardour/about.cc:139 +#: gtk2_ardour/about.cc:140 msgid "Per Sigmond" msgstr "Per Sigmond" -#: gtk2_ardour/about.cc:140 +#: gtk2_ardour/about.cc:141 msgid "Doug Mclain" msgstr "Doug Mclain" -#: gtk2_ardour/about.cc:141 +#: gtk2_ardour/about.cc:142 msgid "Petter Sundlöf" msgstr "Petter Sundlöf" +#: gtk2_ardour/about.cc:143 +msgid "Thorsten Wilms" +msgstr "Thorsten Wilms" + +#: gtk2_ardour/about.cc:144 +msgid "Ben Loftis" +msgstr "Ben Loftis" + +#: gtk2_ardour/about.cc:145 +msgid "Stefan Kersten" +msgstr "Stefan Kersten" + #: gtk2_ardour/about.cc:146 +msgid "Christopher George" +msgstr "Christopher George" + +#: gtk2_ardour/about.cc:147 +msgid "Robert Jordens" +msgstr "Robert Jordens" + +#: gtk2_ardour/about.cc:148 +msgid "Brian Ahr" +msgstr "Brian Ahr" + +#: gtk2_ardour/about.cc:149 +msgid "Nimal Ratnayake" +msgstr "Nimal Ratnayake" + +#: gtk2_ardour/about.cc:154 msgid "" "French:\n" "\tAlain Fréhel <alain.frehel@free.fr>\n" +"\tChristophe Combelles <ccomb@free.fr>\n" msgstr "" "ФранцузÑкий:\n" "\tAlain Fréhel <alain.frehel@free.fr>\n" +"\tChristophe Combelles <ccomb@free.fr>\n" -#: gtk2_ardour/about.cc:147 +#: gtk2_ardour/about.cc:155 msgid "" "German:\n" "\tKarsten Petersen <kapet@kapet.de>\n" @@ -122,7 +152,7 @@ msgstr "" "Ðемецкий:\n" "\tKarsten Petersen <kapet@kapet.de>\n" -#: gtk2_ardour/about.cc:148 +#: gtk2_ardour/about.cc:156 msgid "" "Italian:\n" "\tFilippo Pappalardo <filippo@email.it>\n" @@ -130,7 +160,7 @@ msgstr "" "ИтальÑнÑкий:\n" "\tFilippo Pappalardo <filippo@email.it>\n" -#: gtk2_ardour/about.cc:149 +#: gtk2_ardour/about.cc:157 msgid "" "Portuguese:\n" "\tRui Nuno Capela <rncbc@rncbc.org>\n" @@ -138,7 +168,7 @@ msgstr "" "ПортугальÑкий:\n" "\tRui Nuno Capela <rncbc@rncbc.org>\n" -#: gtk2_ardour/about.cc:150 +#: gtk2_ardour/about.cc:158 msgid "" "Brazilian Portuguese:\n" "\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n" @@ -148,7 +178,7 @@ msgstr "" "\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n" "\tChris Ross <chris@tebibyte.org>\n" -#: gtk2_ardour/about.cc:152 +#: gtk2_ardour/about.cc:160 msgid "" "Spanish:\n" "\t Alex Krohn <alexkrohn@fastmail.fm>\n" @@ -156,7 +186,7 @@ msgstr "" "ИÑпанÑкий:\n" "\t Alex Krohn <alexkrohn@fastmail.fm>\n" -#: gtk2_ardour/about.cc:153 +#: gtk2_ardour/about.cc:161 msgid "" "Russian:\n" "\t Igor Blinov <pitstop@nm.ru>\n" @@ -165,47 +195,93 @@ msgstr "" "\t Igor Blinov <pitstop@nm.ru>\n" "\t Alexandre Prokoudine <alexandre.prokoudine@gmail.com>\n" -#: gtk2_ardour/about.cc:181 -msgid "Copyright (C) 1999-2005 Paul Davis\n" -msgstr "ÐвторÑкие права 1999-2005 Paul Davis\n" +#: gtk2_ardour/about.cc:189 +#, fuzzy +msgid "Copyright (C) 1999-2006 Paul Davis\n" +msgstr "ÐвторÑкие права © 1999-2006 Paul Davis" -#: gtk2_ardour/about.cc:182 +#: gtk2_ardour/about.cc:190 msgid "" "Ardour comes with ABSOLUTELY NO WARRANTY\n" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; see the file COPYING for details.\n" msgstr "" -#: gtk2_ardour/about.cc:188 +#: gtk2_ardour/about.cc:195 +msgid "visit http://www.ardour.org/" +msgstr "Зайдите на http://www.ardour.org/" + +#: gtk2_ardour/about.cc:196 +#, fuzzy msgid "" "%1\n" -"(built with ardour/gtk %2.%3.%4 libardour: %5.%6.%7)" +"(built from revision %2)" msgstr "" +"%1\n" +"(Ñобрано из ревизии %2)" -#: gtk2_ardour/actions.cc:76 +#: gtk2_ardour/actions.cc:77 msgid "badly formatted UI definition file" -msgstr "" +msgstr "некорректно отформатированный файл Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñа" -#: gtk2_ardour/actions.cc:78 +#: gtk2_ardour/actions.cc:79 msgid "Ardour menu definition file not found" -msgstr "" +msgstr "Файл Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¼ÐµÐ½ÑŽ Ardour не найден" -#: gtk2_ardour/actions.cc:82 +#: gtk2_ardour/actions.cc:83 msgid "ardour will not work without a valid ardour.menus file" -msgstr "" +msgstr "Ardour не будет работать без корректного файла ardour.menus" -#: gtk2_ardour/actions.cc:261 +#: gtk2_ardour/actions.cc:235 #, fuzzy msgid "programmer error: %1 %2" msgstr "ошибка в программе: " -#: gtk2_ardour/actions.cc:280 +#: gtk2_ardour/actions.cc:254 msgid "Unknown action name: %1" +msgstr "ÐеизвеÑтное Ð¸Ð¼Ñ Ð´ÐµÐ¹ÑтвиÑ: %1" + +#: gtk2_ardour/add_route_dialog.cc:41 gtk2_ardour/add_route_dialog.cc:196 +msgid "Mono" +msgstr "Моно" + +#: gtk2_ardour/add_route_dialog.cc:42 gtk2_ardour/add_route_dialog.cc:198 +msgid "Stereo" +msgstr "Стерео" + +#: gtk2_ardour/add_route_dialog.cc:43 +msgid "3 Channels" +msgstr "3 канала" + +#: gtk2_ardour/add_route_dialog.cc:44 +msgid "4 Channels" +msgstr "4 канала" + +#: gtk2_ardour/add_route_dialog.cc:45 +msgid "6 Channels" +msgstr "6 каналов" + +#: gtk2_ardour/add_route_dialog.cc:46 +msgid "8 Channels" +msgstr "8 каналов" + +#: gtk2_ardour/add_route_dialog.cc:47 +msgid "Manual Setup" +msgstr "Ð ÑƒÑ‡Ð½Ð°Ñ Ð½Ð°Ñтройка" + +#: gtk2_ardour/add_route_dialog.cc:52 gtk2_ardour/add_route_dialog.cc:177 +#: gtk2_ardour/editor.cc:126 gtk2_ardour/editor.cc:3616 +#: gtk2_ardour/editor_actions.cc:286 gtk2_ardour/time_axis_view.cc:586 +msgid "Normal" +msgstr "Ðорм." + +#: gtk2_ardour/add_route_dialog.cc:53 gtk2_ardour/add_route_dialog.cc:179 +msgid "Tape" msgstr "" #: gtk2_ardour/add_route_dialog.cc:62 msgid "ardour: add track/bus" -msgstr "ardour: добавить трек/шину" +msgstr "ardour: добавить дорожку/шину" #: gtk2_ardour/add_route_dialog.cc:63 gtk2_ardour/editor_route_list.cc:71 msgid "Tracks" @@ -215,7 +291,7 @@ msgstr "Дорожки" msgid "Busses" msgstr "Шины" -#: gtk2_ardour/add_route_dialog.cc:96 gtk2_ardour/plugin_ui.cc:145 +#: gtk2_ardour/add_route_dialog.cc:96 gtk2_ardour/plugin_ui.cc:151 msgid "Add" msgstr "Добавить" @@ -224,25 +300,8 @@ msgid "Name (template)" msgstr "Ð˜Ð¼Ñ (шаблона)" #: gtk2_ardour/add_route_dialog.cc:120 -#, fuzzy msgid "Channel Configuration" -msgstr "Отменить импорт" - -#: gtk2_ardour/add_route_dialog.cc:177 gtk2_ardour/time_axis_view.cc:553 -msgid "Normal" -msgstr "Ðорм." - -#: gtk2_ardour/add_route_dialog.cc:179 -msgid "Tape" -msgstr "" - -#: gtk2_ardour/add_route_dialog.cc:196 -msgid "Mono" -msgstr "Моно" - -#: gtk2_ardour/add_route_dialog.cc:198 -msgid "Stereo" -msgstr "Стерео" +msgstr "Парометры каналов" #: gtk2_ardour/ardour_ui.cc:106 msgid "" @@ -266,15 +325,15 @@ msgstr "" msgid "% " msgstr "% " -#: gtk2_ardour/ardour_ui.cc:119 gtk2_ardour/ardour_ui_ed.cc:267 +#: gtk2_ardour/ardour_ui.cc:119 gtk2_ardour/ardour_ui_ed.cc:274 msgid "Punch In" msgstr "Ðачало врезки" -#: gtk2_ardour/ardour_ui.cc:120 gtk2_ardour/ardour_ui_ed.cc:270 +#: gtk2_ardour/ardour_ui.cc:120 gtk2_ardour/ardour_ui_ed.cc:277 msgid "Punch Out" msgstr "Конец врезки" -#: gtk2_ardour/ardour_ui.cc:121 gtk2_ardour/ardour_ui_ed.cc:282 +#: gtk2_ardour/ardour_ui.cc:121 gtk2_ardour/ardour_ui_ed.cc:289 msgid "Auto Return" msgstr "Ðвтовозврат" @@ -282,12 +341,12 @@ msgstr "Ðвтовозврат" msgid "Autuo Play" msgstr "ÐвтовоÑпр." -#: gtk2_ardour/ardour_ui.cc:123 gtk2_ardour/ardour_ui_ed.cc:276 +#: gtk2_ardour/ardour_ui.cc:123 gtk2_ardour/ardour_ui_ed.cc:283 msgid "Auto Input" msgstr "Ðвтовход" -#: gtk2_ardour/ardour_ui.cc:124 gtk2_ardour/ardour_ui_ed.cc:273 -#: gtk2_ardour/option_editor.cc:128 +#: gtk2_ardour/ardour_ui.cc:124 gtk2_ardour/ardour_ui_ed.cc:280 +#: gtk2_ardour/option_editor.cc:126 msgid "Click" msgstr "Метроном" @@ -299,11 +358,11 @@ msgstr "КОÐТРОЛЬ" msgid "SOLO" msgstr "СОЛО" -#: gtk2_ardour/ardour_ui.cc:374 +#: gtk2_ardour/ardour_ui.cc:364 msgid "quit" msgstr "выйти" -#: gtk2_ardour/ardour_ui.cc:383 +#: gtk2_ardour/ardour_ui.cc:373 msgid "" "Ardour was unable to save your session.\n" "\n" @@ -312,34 +371,33 @@ msgid "" "\"Just quit\" option." msgstr "" -#: gtk2_ardour/ardour_ui.cc:402 +#: gtk2_ardour/ardour_ui.cc:397 msgid "ardour: save session?" msgstr "ardour: Ñохранить ÑеÑÑию?" -#: gtk2_ardour/ardour_ui.cc:409 +#: gtk2_ardour/ardour_ui.cc:404 msgid "Don't %1" msgstr "Отмена" -#: gtk2_ardour/ardour_ui.cc:411 +#: gtk2_ardour/ardour_ui.cc:406 msgid "Just %1" msgstr "Да, %1" -#: gtk2_ardour/ardour_ui.cc:413 +#: gtk2_ardour/ardour_ui.cc:408 msgid "Save and %1" msgstr "Сохранить и %1" -#: gtk2_ardour/ardour_ui.cc:425 +#: gtk2_ardour/ardour_ui.cc:420 #, fuzzy msgid "session" msgstr "СеÑÑиÑ" -#: gtk2_ardour/ardour_ui.cc:427 +#: gtk2_ardour/ardour_ui.cc:422 #, fuzzy msgid "snapshot" msgstr "Снимок" -#: gtk2_ardour/ardour_ui.cc:429 -#, fuzzy +#: gtk2_ardour/ardour_ui.cc:424 msgid "" "The %1\"%2\"\n" "has not been saved.\n" @@ -355,84 +413,84 @@ msgstr "" "Ð’Ñе Ñделанные изменениÑ\n" "будут потерÑны, еÑли не Ñохранить их.\n" "\n" -"Что Ð’Ñ‹ хотите Ñделать?" +"Что вы хотите Ñделать?" -#: gtk2_ardour/ardour_ui.cc:443 +#: gtk2_ardour/ardour_ui.cc:438 msgid "Prompter" msgstr "" -#: gtk2_ardour/ardour_ui.cc:502 -#, fuzzy, c-format +#: gtk2_ardour/ardour_ui.cc:498 +#, c-format msgid "disconnected" -msgstr "ОтÑоединить" +msgstr "отÑоединено" -#: gtk2_ardour/ardour_ui.cc:509 +#: gtk2_ardour/ardour_ui.cc:505 #, fuzzy, c-format msgid "%.1f kHz / %4.1f msecs" msgstr "SR: %.1f кГц" -#: gtk2_ardour/ardour_ui.cc:513 +#: gtk2_ardour/ardour_ui.cc:509 #, fuzzy, c-format msgid "%u kHz / %4.1f msecs" msgstr "SR: %.1f кГц" -#: gtk2_ardour/ardour_ui.cc:526 +#: gtk2_ardour/ardour_ui.cc:522 #, fuzzy, c-format msgid "DSP: %.1f%%" msgstr "Загрузка DSP: %.1f%%" -#: gtk2_ardour/ardour_ui.cc:536 +#: gtk2_ardour/ardour_ui.cc:532 #, fuzzy, c-format msgid "Buffers p:%<PRIu32>%% c:%<PRIu32>%%" msgstr "Буферы p:%5.0f%% c:%5.0f%%" -#: gtk2_ardour/ardour_ui.cc:564 +#: gtk2_ardour/ardour_ui.cc:560 #, fuzzy msgid "Disk: 24hrs+" msgstr "меÑто на диÑке: 24 чаÑа +" -#: gtk2_ardour/ardour_ui.cc:594 +#: gtk2_ardour/ardour_ui.cc:580 #, fuzzy, c-format msgid "Disk: %02dh:%02dm:%02ds" msgstr "Ñвободное меÑто: %02dч:%02dмин:%02dÑек" -#: gtk2_ardour/ardour_ui.cc:633 +#: gtk2_ardour/ardour_ui.cc:619 msgid "programming error: impossible control method" msgstr "ошибка в программе: impossible control method" -#: gtk2_ardour/ardour_ui.cc:741 gtk2_ardour/new_session_dialog.cc:301 +#: gtk2_ardour/ardour_ui.cc:727 gtk2_ardour/new_session_dialog.cc:355 #, fuzzy msgid "Recent Sessions" msgstr "открыть ÑеÑÑию" -#: gtk2_ardour/ardour_ui.cc:834 +#: gtk2_ardour/ardour_ui.cc:820 msgid "open session" msgstr "открыть ÑеÑÑию" -#: gtk2_ardour/ardour_ui.cc:840 +#: gtk2_ardour/ardour_ui.cc:826 msgid "Ardour sessions" msgstr "СеÑÑии Ardour" -#: gtk2_ardour/ardour_ui.cc:873 +#: gtk2_ardour/ardour_ui.cc:859 msgid "Patience is a virtue.\n" msgstr "По нитке дойдёшь и до клубка.\n" -#: gtk2_ardour/ardour_ui.cc:883 +#: gtk2_ardour/ardour_ui.cc:869 #, fuzzy msgid "You cannot add a track or bus without a session already loaded." msgstr "Ð’Ñ‹ не можете добавить трек пока ÑеÑÑÐ¸Ñ Ð½Ðµ загружена." -#: gtk2_ardour/ardour_ui.cc:893 gtk2_ardour/ardour_ui.cc:905 +#: gtk2_ardour/ardour_ui.cc:879 gtk2_ardour/ardour_ui.cc:891 #, fuzzy msgid "could not create a new audio track" msgstr "не удалоÑÑŒ Ñоздать новый аудиотрек" -#: gtk2_ardour/ardour_ui.cc:895 gtk2_ardour/ardour_ui.cc:907 +#: gtk2_ardour/ardour_ui.cc:881 gtk2_ardour/ardour_ui.cc:893 #, fuzzy msgid "could not create %1 new audio tracks" msgstr "не удалоÑÑŒ Ñоздать новый аудиотрек" -#: gtk2_ardour/ardour_ui.cc:927 +#: gtk2_ardour/ardour_ui.cc:913 msgid "" "There are insufficient JACK ports available\n" "to create a new track or bus.\n" @@ -440,14 +498,14 @@ msgid "" "restart JACK with more ports." msgstr "" -#: gtk2_ardour/ardour_ui.cc:1046 +#: gtk2_ardour/ardour_ui.cc:1033 msgid "" "Please create 1 or more track\n" "before trying to record.\n" "Check the Session menu." msgstr "" -#: gtk2_ardour/ardour_ui.cc:1268 +#: gtk2_ardour/ardour_ui.cc:1253 #, fuzzy msgid "" "JACK has either been shutdown or it\n" @@ -460,42 +518,47 @@ msgstr "" "Ðеобходимо Ñохранить ÑеÑÑию и\n" "перезапуÑтить JACK и Ardour." -#: gtk2_ardour/ardour_ui.cc:1285 -msgid "Unable to create all required ports" -msgstr "" - -#: gtk2_ardour/ardour_ui.cc:1293 +#: gtk2_ardour/ardour_ui.cc:1270 #, fuzzy msgid "Unable to start the session running" msgstr "Ð’ начало ÑеÑÑии" -#: gtk2_ardour/ardour_ui.cc:1399 gtk2_ardour/ardour_ui.cc:1418 +#: gtk2_ardour/ardour_ui.cc:1370 gtk2_ardour/ardour_ui.cc:1389 +#: gtk2_ardour/audio_clock.cc:451 msgid "none" msgstr "нет" -#: gtk2_ardour/ardour_ui.cc:1408 gtk2_ardour/ardour_ui.cc:1427 +#: gtk2_ardour/ardour_ui.cc:1379 gtk2_ardour/ardour_ui.cc:1398 msgid "off" -msgstr "выкл" +msgstr "выкл." -#: gtk2_ardour/ardour_ui.cc:1451 +#: gtk2_ardour/ardour_ui.cc:1421 msgid "Name of New Snapshot" msgstr "Ð˜Ð¼Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ñнимка:" -#: gtk2_ardour/ardour_ui.cc:1597 +#: gtk2_ardour/ardour_ui.cc:1567 msgid "Name for mix template:" msgstr "Ð˜Ð¼Ñ mix-шаблона:" -#: gtk2_ardour/ardour_ui.cc:1598 +#: gtk2_ardour/ardour_ui.cc:1568 msgid "-template" msgstr "-шаблон" -#: gtk2_ardour/ardour_ui.cc:1806 +#: gtk2_ardour/ardour_ui.cc:1689 +#, fuzzy +msgid "" +"This session\n" +"%1\n" +"already exists. Do you want to open it?" +msgstr "Файл Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже еÑÑ‚ÑŒ. ПерезапиÑать его?" + +#: gtk2_ardour/ardour_ui.cc:1805 msgid "" "You do not have write access to this session.\n" "This prevents the session from being loaded." msgstr "" -#: gtk2_ardour/ardour_ui.cc:1819 gtk2_ardour/ardour_ui.cc:1871 +#: gtk2_ardour/ardour_ui.cc:1818 gtk2_ardour/ardour_ui.cc:1867 msgid "Session \"%1 (snapshot %2)\" did not load successfully" msgstr "Ðе удалоÑÑŒ загрузить ÑеÑÑию \"%1 (Ñнимок %2)\"" @@ -545,14 +608,9 @@ msgstr "ОчиÑтка" msgid "CleanupDialog" msgstr "ОчиÑтка" -#: gtk2_ardour/ardour_ui.cc:2039 -#, fuzzy -msgid "ardour_cleanup" -msgstr "ardour: очиÑтка" - #: gtk2_ardour/ardour_ui.cc:2058 msgid "cleaned files" -msgstr "" +msgstr "очищенные файлы" #: gtk2_ardour/ardour_ui.cc:2059 #, fuzzy @@ -586,7 +644,7 @@ msgstr "Следующие %1 файлов были удалены, оÑвобо msgid "Recording was stopped because your system could not keep up." msgstr "ЗапиÑÑŒ оÑтановлена из-за недоÑтаточного быÑтродейÑÑ‚Ð²Ð¸Ñ ÑиÑтемы" -#: gtk2_ardour/ardour_ui.cc:2224 +#: gtk2_ardour/ardour_ui.cc:2212 msgid "" "The disk system on your computer\n" "was not able to keep up with Ardour.\n" @@ -595,7 +653,7 @@ msgid "" "quickly enough to keep up with recording.\n" msgstr "" -#: gtk2_ardour/ardour_ui.cc:2243 +#: gtk2_ardour/ardour_ui.cc:2231 msgid "" "The disk system on your computer\n" "was not able to keep up with Ardour.\n" @@ -604,7 +662,7 @@ msgid "" "quickly enough to keep up with playback.\n" msgstr "" -#: gtk2_ardour/ardour_ui.cc:2269 +#: gtk2_ardour/ardour_ui.cc:2257 msgid "" "This session appears to have been in\n" "middle of recording when ardour or\n" @@ -615,20 +673,20 @@ msgid "" "what you would like to do.\n" msgstr "" -#: gtk2_ardour/ardour_ui.cc:2279 +#: gtk2_ardour/ardour_ui.cc:2267 msgid "Recover from crash" msgstr "" -#: gtk2_ardour/ardour_ui.cc:2280 +#: gtk2_ardour/ardour_ui.cc:2268 msgid "Ignore crash data" msgstr "" -#: gtk2_ardour/ardour_ui.cc:2298 +#: gtk2_ardour/ardour_ui.cc:2286 #, fuzzy msgid "Could not disconnect from JACK" msgstr "Ðе удалоÑÑŒ ÑоединитьÑÑ Ñ Ñервером JACK как \"%1\"" -#: gtk2_ardour/ardour_ui.cc:2311 +#: gtk2_ardour/ardour_ui.cc:2299 #, fuzzy msgid "Could not reconnect to JACK" msgstr "Ðе удалоÑÑŒ ÑоединитьÑÑ Ñ Ñервером JACK как \"%1\"" @@ -657,977 +715,1056 @@ msgstr "" msgid "MMC ID" msgstr "MMC идентификатор" -#: gtk2_ardour/ardour_ui2.cc:291 +#: gtk2_ardour/ardour_ui2.cc:295 msgid "Play from playhead" msgstr "ВоÑпроизвеÑти от указателÑ" -#: gtk2_ardour/ardour_ui2.cc:292 +#: gtk2_ardour/ardour_ui2.cc:296 msgid "Stop playback" msgstr "Стоп" -#: gtk2_ardour/ardour_ui2.cc:293 -#, fuzzy +#: gtk2_ardour/ardour_ui2.cc:297 msgid "Play range/selection" -msgstr "ВоÑпроизвеÑти выделенное" +msgstr "ВоÑпроизвеÑти выделение" -#: gtk2_ardour/ardour_ui2.cc:294 +#: gtk2_ardour/ardour_ui2.cc:298 msgid "Go to start of session" msgstr "Ð’ начало ÑеÑÑии" -#: gtk2_ardour/ardour_ui2.cc:295 +#: gtk2_ardour/ardour_ui2.cc:299 msgid "Go to end of session" msgstr "Ð’ конец ÑеÑÑии" -#: gtk2_ardour/ardour_ui2.cc:296 +#: gtk2_ardour/ardour_ui2.cc:300 msgid "Play loop range" -msgstr "ВоÑпроизвеÑти \"кольцо\"" +msgstr "Закольцевать выделение" -#: gtk2_ardour/ardour_ui2.cc:297 +#: gtk2_ardour/ardour_ui2.cc:301 msgid "Return to last playback start when stopped" msgstr "ВернутьÑÑ Ðº точке начала воÑпроизведениÑ" -#: gtk2_ardour/ardour_ui2.cc:298 +#: gtk2_ardour/ardour_ui2.cc:302 msgid "Start playback after any locate" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:299 +#: gtk2_ardour/ardour_ui2.cc:303 msgid "Be sensible about input monitoring" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:300 +#: gtk2_ardour/ardour_ui2.cc:304 msgid "Start recording at auto-punch start" msgstr "Ðачать запиÑÑŒ Ñ Ð½Ð°Ñ‡Ð°Ð»Ð° \"авто-врезки\"" -#: gtk2_ardour/ardour_ui2.cc:301 +#: gtk2_ardour/ardour_ui2.cc:305 msgid "Stop recording at auto-punch end" msgstr "ОÑтановить запиÑÑŒ в конце \"авто-врезки\"" -#: gtk2_ardour/ardour_ui2.cc:302 +#: gtk2_ardour/ardour_ui2.cc:306 msgid "Enable/Disable audio click" msgstr "Вкл./Выкл. метроном" -#: gtk2_ardour/ardour_ui2.cc:303 +#: gtk2_ardour/ardour_ui2.cc:307 msgid "Positional sync source" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:304 +#: gtk2_ardour/ardour_ui2.cc:308 msgid "Does Ardour control the time?" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:305 +#: gtk2_ardour/ardour_ui2.cc:309 msgid "Shuttle speed control" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:306 +#: gtk2_ardour/ardour_ui2.cc:310 #, c-format msgid "Select semitones or %%-age for speed display" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:307 +#: gtk2_ardour/ardour_ui2.cc:311 msgid "Current transport speed" msgstr "ТекщаÑÑ ÑкорÑÑ‚ÑŒ транÑпорта" -#: gtk2_ardour/ardour_ui2.cc:330 +#: gtk2_ardour/ardour_ui2.cc:334 msgid "Primary clock" msgstr "ОÑновной Ñчётчик" -#: gtk2_ardour/ardour_ui2.cc:331 +#: gtk2_ardour/ardour_ui2.cc:335 msgid "secondary clock" msgstr "дополнительный Ñчётчик" -#: gtk2_ardour/ardour_ui2.cc:388 gtk2_ardour/ardour_ui2.cc:849 -#: gtk2_ardour/ardour_ui2.cc:862 gtk2_ardour/ardour_ui2.cc:925 -#: gtk2_ardour/ardour_ui2.cc:927 +#: gtk2_ardour/ardour_ui2.cc:366 +msgid "" +"When active, something is soloed.\n" +"Click to de-solo everything" +msgstr "" + +#: gtk2_ardour/ardour_ui2.cc:367 +msgid "" +"When active, auditioning is taking place\n" +"Click to stop the audition" +msgstr "" + +#: gtk2_ardour/ardour_ui2.cc:395 gtk2_ardour/ardour_ui2.cc:826 +#: gtk2_ardour/ardour_ui2.cc:882 gtk2_ardour/ardour_ui_options.cc:802 msgid "sprung" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:389 gtk2_ardour/ardour_ui2.cc:851 -#: gtk2_ardour/ardour_ui2.cc:873 +#: gtk2_ardour/ardour_ui2.cc:396 gtk2_ardour/ardour_ui2.cc:828 +#: gtk2_ardour/ardour_ui_options.cc:813 msgid "wheel" msgstr "" -#: gtk2_ardour/ardour_ui2.cc:467 -msgid "ardour: clock" -msgstr "ardour: Ñчётчик" - -#: gtk2_ardour/ardour_ui2.cc:612 +#: gtk2_ardour/ardour_ui2.cc:602 msgid "Maximum speed" msgstr "МакÑ. ÑкороÑÑ‚ÑŒ" -#: gtk2_ardour/ardour_ui2.cc:839 -#, fuzzy -msgid "ST" -msgstr "УСТÐÐОВИТЬ" - -#: gtk2_ardour/ardour_ui2.cc:883 gtk2_ardour/ardour_ui2.cc:906 +#: gtk2_ardour/ardour_ui2.cc:838 gtk2_ardour/ardour_ui2.cc:861 #, fuzzy msgid "stop" msgstr "Стоп" -#: gtk2_ardour/ardour_ui2.cc:923 +#: gtk2_ardour/ardour_ui2.cc:880 msgid "-0.55" msgstr "-0.55" -#: gtk2_ardour/ardour_ui_dialogs.cc:145 gtk2_ardour/playlist_selector.cc:70 -#, fuzzy +#: gtk2_ardour/ardour_ui_dependents.cc:85 +msgid "Ardour key bindings file not found at \"%1\" or contains errors." +msgstr "Файл комбинаций клавиш Ð´Ð»Ñ Ardour не найден в каталоге \"%1\" или Ñодержит ошибки." + +#: gtk2_ardour/ardour_ui_dialogs.cc:142 gtk2_ardour/playlist_selector.cc:69 msgid "close" msgstr "Закрыть" -#: gtk2_ardour/ardour_ui_dialogs.cc:352 gtk2_ardour/ardour_ui_ed.cc:184 -msgid "Sound File Browser" -msgstr "Ðудиобиблиотека" - -#: gtk2_ardour/ardour_ui_ed.cc:72 +#: gtk2_ardour/ardour_ui_ed.cc:77 msgid "Session" msgstr "СеÑÑиÑ" -#: gtk2_ardour/ardour_ui_ed.cc:73 gtk2_ardour/ardour_ui_ed.cc:130 -#: gtk2_ardour/editor.cc:1786 gtk2_ardour/export_dialog.cc:350 -#: gtk2_ardour/export_dialog.cc:1059 gtk2_ardour/export_dialog.cc:1063 +#: gtk2_ardour/ardour_ui_ed.cc:78 gtk2_ardour/ardour_ui_ed.cc:138 +#: gtk2_ardour/editor.cc:1736 gtk2_ardour/export_dialog.cc:348 +#: gtk2_ardour/export_dialog.cc:1057 gtk2_ardour/export_dialog.cc:1061 msgid "Export" msgstr "ÐкÑпортировать" -#: gtk2_ardour/ardour_ui_ed.cc:74 +#: gtk2_ardour/ardour_ui_ed.cc:79 msgid "Cleanup" msgstr "ОчиÑтить" -#: gtk2_ardour/ardour_ui_ed.cc:75 gtk2_ardour/option_editor.cc:125 +#: gtk2_ardour/ardour_ui_ed.cc:80 gtk2_ardour/option_editor.cc:123 msgid "Sync" -msgstr "Синхр." +msgstr "СинхронизациÑ" -#: gtk2_ardour/ardour_ui_ed.cc:76 gtk2_ardour/ardour_ui_ed.cc:77 +#: gtk2_ardour/ardour_ui_ed.cc:81 gtk2_ardour/ardour_ui_ed.cc:82 msgid "Options" msgstr "Параметры" -#: gtk2_ardour/ardour_ui_ed.cc:78 +#: gtk2_ardour/ardour_ui_ed.cc:83 msgid "Help" msgstr "Справка" -#: gtk2_ardour/ardour_ui_ed.cc:79 +#: gtk2_ardour/ardour_ui_ed.cc:84 msgid "KeyMouse Actions" -msgstr "ГорÑчие клавиши" +msgstr "Клавиатурные комбинации" -#: gtk2_ardour/ardour_ui_ed.cc:80 +#: gtk2_ardour/ardour_ui_ed.cc:85 msgid "Audio File Format" msgstr "Формат звуковых файлов" -#: gtk2_ardour/ardour_ui_ed.cc:81 +#: gtk2_ardour/ardour_ui_ed.cc:86 msgid "Header" msgstr "Заголовок" -#: gtk2_ardour/ardour_ui_ed.cc:82 +#: gtk2_ardour/ardour_ui_ed.cc:87 msgid "Data" msgstr "Данные" -#: gtk2_ardour/ardour_ui_ed.cc:83 +#: gtk2_ardour/ardour_ui_ed.cc:88 msgid "Control Surfaces" -msgstr "" +msgstr "УÑтройÑтва управлениÑ" + +#: gtk2_ardour/ardour_ui_ed.cc:89 +msgid "Metering" +msgstr "Индикаторы" + +#: gtk2_ardour/ardour_ui_ed.cc:90 +msgid "Fall off rate" +msgstr "ЧаÑтота Ñпада" + +#: gtk2_ardour/ardour_ui_ed.cc:91 +msgid "Hold Time" +msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð·Ð°Ð´ÐµÑ€Ð¶ÐºÐ¸" -#: gtk2_ardour/ardour_ui_ed.cc:87 gtk2_ardour/route_time_axis.cc:1139 -#: gtk2_ardour/new_session_dialog.cc:546 +#: gtk2_ardour/ardour_ui_ed.cc:95 gtk2_ardour/route_time_axis.cc:1309 +#: gtk2_ardour/new_session_dialog.cc:612 msgid "New" msgstr "ÐоваÑ" -#: gtk2_ardour/ardour_ui_ed.cc:89 gtk2_ardour/new_session_dialog.cc:533 +#: gtk2_ardour/ardour_ui_ed.cc:97 gtk2_ardour/new_session_dialog.cc:599 msgid "Open" msgstr "Открыть" -#: gtk2_ardour/ardour_ui_ed.cc:90 +#: gtk2_ardour/ardour_ui_ed.cc:98 msgid "Recent" msgstr "ПоÑледние" -#: gtk2_ardour/ardour_ui_ed.cc:91 gtk2_ardour/io_selector.cc:60 -#: gtk2_ardour/io_selector.cc:794 gtk2_ardour/connection_editor.cc:59 +#: gtk2_ardour/ardour_ui_ed.cc:99 gtk2_ardour/io_selector.cc:60 +#: gtk2_ardour/io_selector.cc:748 gtk2_ardour/connection_editor.cc:59 msgid "Close" msgstr "Закрыть" -#: gtk2_ardour/ardour_ui_ed.cc:94 gtk2_ardour/route_params_ui.cc:510 +#: gtk2_ardour/ardour_ui_ed.cc:102 gtk2_ardour/route_params_ui.cc:510 msgid "Add Track/Bus" -msgstr "Добавить Дорожку/Шину" +msgstr "Добавить дорожку/шину" -#: gtk2_ardour/ardour_ui_ed.cc:105 +#: gtk2_ardour/ardour_ui_ed.cc:113 msgid "Connect" msgstr "Соединить" -#: gtk2_ardour/ardour_ui_ed.cc:113 +#: gtk2_ardour/ardour_ui_ed.cc:121 msgid "Snapshot" msgstr "Снимок" -#: gtk2_ardour/ardour_ui_ed.cc:116 +#: gtk2_ardour/ardour_ui_ed.cc:124 msgid "Save Template..." msgstr "Сохранить шаблон..." -#: gtk2_ardour/ardour_ui_ed.cc:119 +#: gtk2_ardour/ardour_ui_ed.cc:127 msgid "Export session to audiofile..." -msgstr "ÐкÑпорт ÑеÑÑии в аудиофайл..." +msgstr "СеÑÑию в аудиофайл..." -#: gtk2_ardour/ardour_ui_ed.cc:122 +#: gtk2_ardour/ardour_ui_ed.cc:130 msgid "Export selection to audiofile..." -msgstr "ÐкÑпорт выделение в аудиофайл..." +msgstr "Выделение в аудиофайл..." -#: gtk2_ardour/ardour_ui_ed.cc:126 +#: gtk2_ardour/ardour_ui_ed.cc:134 msgid "Export range markers to audiofile..." -msgstr "ÐкÑпортировать маркеры облаÑти в аудиофайл..." +msgstr "Маркеры облаÑти в аудиофайл..." -#: gtk2_ardour/ardour_ui_ed.cc:133 +#: gtk2_ardour/ardour_ui_ed.cc:141 msgid "Cleanup unused sources" msgstr "ОчиÑтить неиÑпользуемые иÑточники" -#: gtk2_ardour/ardour_ui_ed.cc:135 +#: gtk2_ardour/ardour_ui_ed.cc:143 msgid "Flush wastebasket" msgstr "ОчиÑтить корзину" -#: gtk2_ardour/ardour_ui_ed.cc:141 gtk2_ardour/ardour_ui_options.cc:425 -#: gtk2_ardour/ardour_ui_options.cc:434 gtk2_ardour/ardour_ui_options.cc:507 +#: gtk2_ardour/ardour_ui_ed.cc:149 msgid "JACK" msgstr "JACK" -#: gtk2_ardour/ardour_ui_ed.cc:142 +#: gtk2_ardour/ardour_ui_ed.cc:150 msgid "Latency" msgstr "Задержка отклика" -#: gtk2_ardour/ardour_ui_ed.cc:144 +#: gtk2_ardour/ardour_ui_ed.cc:152 msgid "Reconnect" msgstr "ПереÑоединитьÑÑ" -#: gtk2_ardour/ardour_ui_ed.cc:147 gtk2_ardour/mixer_strip.cc:498 -#: gtk2_ardour/mixer_strip.cc:561 +#: gtk2_ardour/ardour_ui_ed.cc:155 gtk2_ardour/mixer_strip.cc:517 +#: gtk2_ardour/mixer_strip.cc:579 msgid "Disconnect" msgstr "ОтÑоединитьÑÑ" -#: gtk2_ardour/ardour_ui_ed.cc:174 +#: gtk2_ardour/ardour_ui_ed.cc:182 msgid "Windows" msgstr "Окна" -#: gtk2_ardour/ardour_ui_ed.cc:175 +#: gtk2_ardour/ardour_ui_ed.cc:183 msgid "start prefix" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:176 +#: gtk2_ardour/ardour_ui_ed.cc:184 msgid "Quit" msgstr "Выйти" -#: gtk2_ardour/ardour_ui_ed.cc:180 +#: gtk2_ardour/ardour_ui_ed.cc:188 msgid "Maximise Editor Space" msgstr "Редактор на полный Ñкран" -#: gtk2_ardour/ardour_ui_ed.cc:182 +#: gtk2_ardour/ardour_ui_ed.cc:190 msgid "Show Editor" msgstr "Показать редактор" -#: gtk2_ardour/ardour_ui_ed.cc:183 +#: gtk2_ardour/ardour_ui_ed.cc:191 msgid "Show Mixer" msgstr "Показать микшер" -#: gtk2_ardour/ardour_ui_ed.cc:185 +#: gtk2_ardour/ardour_ui_ed.cc:192 msgid "Options Editor" -msgstr "Редактор параметров" +msgstr "Параметры программы" -#: gtk2_ardour/ardour_ui_ed.cc:186 +#: gtk2_ardour/ardour_ui_ed.cc:193 msgid "Track/Bus Inspector" msgstr "ИнÑпектор дорожек/шин" -#: gtk2_ardour/ardour_ui_ed.cc:188 gtk2_ardour/connection_editor.cc:147 +#: gtk2_ardour/ardour_ui_ed.cc:195 gtk2_ardour/connection_editor.cc:147 #: gtk2_ardour/connection_editor.cc:148 msgid "Connections" msgstr "СоединениÑ" -#: gtk2_ardour/ardour_ui_ed.cc:190 +#: gtk2_ardour/ardour_ui_ed.cc:197 msgid "Locations" msgstr "Интервалы" -#: gtk2_ardour/ardour_ui_ed.cc:192 +#: gtk2_ardour/ardour_ui_ed.cc:199 msgid "Big Clock" msgstr "Большой Ñчётчик" -#: gtk2_ardour/ardour_ui_ed.cc:194 +#: gtk2_ardour/ardour_ui_ed.cc:201 msgid "About" msgstr "О программе" -#: gtk2_ardour/ardour_ui_ed.cc:195 +#: gtk2_ardour/ardour_ui_ed.cc:202 msgid "Colors" msgstr "Цвета" -#: gtk2_ardour/ardour_ui_ed.cc:197 +#: gtk2_ardour/ardour_ui_ed.cc:204 msgid "Add Audio Track" msgstr "Добавить звуковую дорожку" -#: gtk2_ardour/ardour_ui_ed.cc:199 +#: gtk2_ardour/ardour_ui_ed.cc:206 msgid "Add Audio Bus" msgstr "Добавить звуковую шину" -#: gtk2_ardour/ardour_ui_ed.cc:201 +#: gtk2_ardour/ardour_ui_ed.cc:208 msgid "Save" msgstr "Сохранить" -#: gtk2_ardour/ardour_ui_ed.cc:203 gtk2_ardour/editor_actions.cc:257 -#, fuzzy +#: gtk2_ardour/ardour_ui_ed.cc:210 gtk2_ardour/editor_actions.cc:256 msgid "Remove Last Capture" msgstr "Удалить поÑледнюю запиÑÑŒ" -#: gtk2_ardour/ardour_ui_ed.cc:210 +#: gtk2_ardour/ardour_ui_ed.cc:217 msgid "Transport" msgstr "ТранÑпорт" -#: gtk2_ardour/ardour_ui_ed.cc:216 gtk2_ardour/sfdb_ui.cc:60 +#: gtk2_ardour/ardour_ui_ed.cc:223 gtk2_ardour/sfdb_ui.cc:59 msgid "Stop" msgstr "Стоп" -#: gtk2_ardour/ardour_ui_ed.cc:219 +#: gtk2_ardour/ardour_ui_ed.cc:226 msgid "Roll" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:223 +#: gtk2_ardour/ardour_ui_ed.cc:230 msgid "Start/Stop" msgstr "Старт/Стоп" -#: gtk2_ardour/ardour_ui_ed.cc:226 +#: gtk2_ardour/ardour_ui_ed.cc:233 msgid "Stop + Forget Capture" msgstr "Стоп+ Забыть захват" -#: gtk2_ardour/ardour_ui_ed.cc:229 +#: gtk2_ardour/ardour_ui_ed.cc:236 msgid "Play Loop Range" msgstr "ВоÑпроизвеÑти петлю" -#: gtk2_ardour/ardour_ui_ed.cc:232 +#: gtk2_ardour/ardour_ui_ed.cc:239 msgid "Play Selection" msgstr "ВоÑпроизвеÑти выделение" -#: gtk2_ardour/ardour_ui_ed.cc:236 +#: gtk2_ardour/ardour_ui_ed.cc:243 msgid "Enable Record" msgstr "Разрешить запиÑÑŒ" -#: gtk2_ardour/ardour_ui_ed.cc:239 +#: gtk2_ardour/ardour_ui_ed.cc:246 msgid "Rewind" msgstr "Перемотать назад" -#: gtk2_ardour/ardour_ui_ed.cc:242 +#: gtk2_ardour/ardour_ui_ed.cc:249 msgid "Rewind (Slow)" msgstr "Перемотать назад (медленно)" -#: gtk2_ardour/ardour_ui_ed.cc:245 +#: gtk2_ardour/ardour_ui_ed.cc:252 msgid "Rewind (Fast)" msgstr "Перемотать назад (быÑтро)" -#: gtk2_ardour/ardour_ui_ed.cc:248 +#: gtk2_ardour/ardour_ui_ed.cc:255 msgid "Forward" msgstr "Перемотать вперёд" -#: gtk2_ardour/ardour_ui_ed.cc:251 +#: gtk2_ardour/ardour_ui_ed.cc:258 msgid "Forward (Slow)" msgstr "Перемотать вперёд (медленно)" -#: gtk2_ardour/ardour_ui_ed.cc:254 +#: gtk2_ardour/ardour_ui_ed.cc:261 msgid "Forward (Fast)" msgstr "Перемотать вперёд (быÑтро)" -#: gtk2_ardour/ardour_ui_ed.cc:257 +#: gtk2_ardour/ardour_ui_ed.cc:264 msgid "Goto Zero" msgstr "К нулевой отметке" -#: gtk2_ardour/ardour_ui_ed.cc:260 +#: gtk2_ardour/ardour_ui_ed.cc:267 msgid "Goto Start" msgstr "К началу" -#: gtk2_ardour/ardour_ui_ed.cc:263 +#: gtk2_ardour/ardour_ui_ed.cc:270 msgid "Goto End" msgstr "Ð’ конец" -#: gtk2_ardour/ardour_ui_ed.cc:279 +#: gtk2_ardour/ardour_ui_ed.cc:286 msgid "Auto Play" msgstr "ÐвтовоÑпроизведение" -#: gtk2_ardour/ardour_ui_ed.cc:286 +#: gtk2_ardour/ardour_ui_ed.cc:293 msgid "Sync startup to video" msgstr "Синхронизировать начало Ñ Ð²Ð¸Ð´ÐµÐ¾" -#: gtk2_ardour/ardour_ui_ed.cc:287 +#: gtk2_ardour/ardour_ui_ed.cc:294 #, fuzzy msgid "Time master" msgstr "JACK-Ñчётчик - маÑтер" -#: gtk2_ardour/ardour_ui_ed.cc:290 +#: gtk2_ardour/ardour_ui_ed.cc:297 msgid "Toggle Record Enable Track1" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:292 +#: gtk2_ardour/ardour_ui_ed.cc:299 msgid "Toggle Record Enable Track2" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:294 +#: gtk2_ardour/ardour_ui_ed.cc:301 msgid "Toggle Record Enable Track3" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:296 +#: gtk2_ardour/ardour_ui_ed.cc:303 msgid "Toggle Record Enable Track4" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:298 +#: gtk2_ardour/ardour_ui_ed.cc:305 msgid "Toggle Record Enable Track5" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:300 +#: gtk2_ardour/ardour_ui_ed.cc:307 msgid "Toggle Record Enable Track6" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:302 +#: gtk2_ardour/ardour_ui_ed.cc:309 msgid "Toggle Record Enable Track7" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:304 +#: gtk2_ardour/ardour_ui_ed.cc:311 msgid "Toggle Record Enable Track8" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:306 +#: gtk2_ardour/ardour_ui_ed.cc:313 msgid "Toggle Record Enable Track9" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:308 +#: gtk2_ardour/ardour_ui_ed.cc:315 msgid "Toggle Record Enable Track10" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:310 +#: gtk2_ardour/ardour_ui_ed.cc:317 msgid "Toggle Record Enable Track11" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:312 +#: gtk2_ardour/ardour_ui_ed.cc:319 msgid "Toggle Record Enable Track12" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:314 +#: gtk2_ardour/ardour_ui_ed.cc:321 msgid "Toggle Record Enable Track13" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:316 +#: gtk2_ardour/ardour_ui_ed.cc:323 msgid "Toggle Record Enable Track14" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:318 +#: gtk2_ardour/ardour_ui_ed.cc:325 msgid "Toggle Record Enable Track15" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:320 +#: gtk2_ardour/ardour_ui_ed.cc:327 msgid "Toggle Record Enable Track16" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:322 +#: gtk2_ardour/ardour_ui_ed.cc:329 msgid "Toggle Record Enable Track17" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:324 +#: gtk2_ardour/ardour_ui_ed.cc:331 msgid "Toggle Record Enable Track18" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:326 +#: gtk2_ardour/ardour_ui_ed.cc:333 msgid "Toggle Record Enable Track19" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:328 +#: gtk2_ardour/ardour_ui_ed.cc:335 msgid "Toggle Record Enable Track20" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:330 +#: gtk2_ardour/ardour_ui_ed.cc:337 msgid "Toggle Record Enable Track21" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:332 +#: gtk2_ardour/ardour_ui_ed.cc:339 msgid "Toggle Record Enable Track22" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:334 +#: gtk2_ardour/ardour_ui_ed.cc:341 msgid "Toggle Record Enable Track23" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:336 +#: gtk2_ardour/ardour_ui_ed.cc:343 msgid "Toggle Record Enable Track24" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:338 +#: gtk2_ardour/ardour_ui_ed.cc:345 msgid "Toggle Record Enable Track25" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:340 +#: gtk2_ardour/ardour_ui_ed.cc:347 msgid "Toggle Record Enable Track26" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:342 +#: gtk2_ardour/ardour_ui_ed.cc:349 msgid "Toggle Record Enable Track27" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:344 +#: gtk2_ardour/ardour_ui_ed.cc:351 msgid "Toggle Record Enable Track28" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:346 +#: gtk2_ardour/ardour_ui_ed.cc:353 msgid "Toggle Record Enable Track29" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:348 +#: gtk2_ardour/ardour_ui_ed.cc:355 msgid "Toggle Record Enable Track30" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:350 +#: gtk2_ardour/ardour_ui_ed.cc:357 msgid "Toggle Record Enable Track31" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:352 +#: gtk2_ardour/ardour_ui_ed.cc:359 msgid "Toggle Record Enable Track32" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:357 +#: gtk2_ardour/ardour_ui_ed.cc:364 msgid "Percentage" msgstr "Процентов" -#: gtk2_ardour/ardour_ui_ed.cc:358 +#: gtk2_ardour/ardour_ui_ed.cc:365 msgid "Semitones" msgstr "Полутонов" -#: gtk2_ardour/ardour_ui_ed.cc:362 +#: gtk2_ardour/ardour_ui_ed.cc:369 msgid "Send MTC" msgstr "Передавать MTC" -#: gtk2_ardour/ardour_ui_ed.cc:364 +#: gtk2_ardour/ardour_ui_ed.cc:371 msgid "Send MMC" msgstr "Передавать MMC" -#: gtk2_ardour/ardour_ui_ed.cc:366 +#: gtk2_ardour/ardour_ui_ed.cc:373 msgid "Use MMC" msgstr "ИÑпользовать MMC" -#: gtk2_ardour/ardour_ui_ed.cc:368 +#: gtk2_ardour/ardour_ui_ed.cc:375 msgid "Send MIDI feedback" msgstr "Передавать отклик MIDI" -#: gtk2_ardour/ardour_ui_ed.cc:370 +#: gtk2_ardour/ardour_ui_ed.cc:377 msgid "Use MIDI control" msgstr "ИÑпользовать управление по MIDI" -#: gtk2_ardour/ardour_ui_ed.cc:373 -msgid "Connect new track inputs to hardware" -msgstr "Подключать входы новых дорожек к уÑтройÑтву" - -#: gtk2_ardour/ardour_ui_ed.cc:392 -msgid "Connect new track outputs to hardware" -msgstr "Подключать выходы новых дорожек к уÑтройÑтву" - -#: gtk2_ardour/ardour_ui_ed.cc:394 -msgid "Connect new track outputs to master" -msgstr "Подключать выходы новых дорожек к маÑтеру" - -#: gtk2_ardour/ardour_ui_ed.cc:396 -msgid "Manually connect new track outputs" -msgstr "Ручное подключение дорожек к выходам" - -#: gtk2_ardour/ardour_ui_ed.cc:401 -msgid "Hardware monitoring" -msgstr "Ðппаратный контроль" - -#: gtk2_ardour/ardour_ui_ed.cc:402 -msgid "Software monitoring" -msgstr "Программный контроль" - -#: gtk2_ardour/ardour_ui_ed.cc:403 -msgid "External monitoring" -msgstr "Внешний контроль" - -#: gtk2_ardour/ardour_ui_ed.cc:407 +#: gtk2_ardour/ardour_ui_ed.cc:380 msgid "Stop plugins with transport" msgstr "ОÑтанавливать раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Ñ Ñ‚Ñ€Ð°Ð½Ñпортом" -#: gtk2_ardour/ardour_ui_ed.cc:408 +#: gtk2_ardour/ardour_ui_ed.cc:381 msgid "Verify remove last capture" msgstr "Проверить удаление поÑледней запиÑи" -#: gtk2_ardour/ardour_ui_ed.cc:409 +#: gtk2_ardour/ardour_ui_ed.cc:382 msgid "Stop recording on xrun" msgstr "ОÑтановить запиÑÑŒ при потере отÑчётов" -#: gtk2_ardour/ardour_ui_ed.cc:410 +#: gtk2_ardour/ardour_ui_ed.cc:383 msgid "Stop transport at session end" msgstr "ОÑтанавливать транÑпорт в конце ÑеÑÑии" -#: gtk2_ardour/ardour_ui_ed.cc:411 +#: gtk2_ardour/ardour_ui_ed.cc:384 msgid "-12dB gain reduce ffwd/rewind" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:412 +#: gtk2_ardour/ardour_ui_ed.cc:385 msgid "Rec-enable stays engaged at stop" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:416 -#, fuzzy +#: gtk2_ardour/ardour_ui_ed.cc:387 msgid "Do not run plugins while recording" -msgstr "ИÑпользовать модули (plugins) во Ð²Ñ€ÐµÐ¼Ñ Ð·Ð°Ð¿Ð¸Ñи" +msgstr "Ðе запуÑкать раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Ð²Ð¾ Ð²Ñ€ÐµÐ¼Ñ Ð·Ð°Ð¿Ð¸Ñи" -#: gtk2_ardour/ardour_ui_ed.cc:419 +#: gtk2_ardour/ardour_ui_ed.cc:390 msgid "Latched solo" -msgstr "" +msgstr "Запертое Ñоло" -#: gtk2_ardour/ardour_ui_ed.cc:424 +#: gtk2_ardour/ardour_ui_ed.cc:398 gtk2_ardour/ardour_ui_ed.cc:406 +#: gtk2_ardour/audio_clock.cc:1805 gtk2_ardour/gain_meter.cc:159 +#: gtk2_ardour/ladspa_pluginui.cc:330 gtk2_ardour/ladspa_pluginui.cc:573 +#: gtk2_ardour/panner_ui.cc:89 +msgid "Off" +msgstr "Выкл" + +#: gtk2_ardour/ardour_ui_ed.cc:399 gtk2_ardour/editor.cc:1357 +#: gtk2_ardour/editor.cc:1374 +msgid "Slowest" +msgstr "Медленнее вÑего" + +#: gtk2_ardour/ardour_ui_ed.cc:400 gtk2_ardour/editor.cc:1358 +#: gtk2_ardour/editor.cc:1375 +msgid "Slow" +msgstr "Медленно" + +#: gtk2_ardour/ardour_ui_ed.cc:401 gtk2_ardour/ardour_ui_ed.cc:408 +msgid "Medium" +msgstr "Средне" + +#: gtk2_ardour/ardour_ui_ed.cc:402 gtk2_ardour/editor.cc:1359 +#: gtk2_ardour/editor.cc:1376 +msgid "Fast" +msgstr "БыÑтро" + +#: gtk2_ardour/ardour_ui_ed.cc:403 +msgid "Faster" +msgstr "БыÑтрее" + +#: gtk2_ardour/ardour_ui_ed.cc:404 gtk2_ardour/editor.cc:1360 +#: gtk2_ardour/editor.cc:1377 +msgid "Fastest" +msgstr "БыÑтрее вÑего" + +#: gtk2_ardour/ardour_ui_ed.cc:407 gtk2_ardour/editor_actions.cc:58 +msgid "Short" +msgstr "КороткаÑ" + +#: gtk2_ardour/ardour_ui_ed.cc:409 +msgid "Long" +msgstr "ДолгаÑ" + +#: gtk2_ardour/ardour_ui_ed.cc:427 +msgid "Hardware monitoring" +msgstr "Ðппаратный контроль" + +#: gtk2_ardour/ardour_ui_ed.cc:428 +msgid "Software monitoring" +msgstr "Программный контроль" + +#: gtk2_ardour/ardour_ui_ed.cc:429 +msgid "External monitoring" +msgstr "Внешний контроль" + +#: gtk2_ardour/ardour_ui_ed.cc:433 #, fuzzy msgid "Solo in-place" msgstr "Соло" -#: gtk2_ardour/ardour_ui_ed.cc:426 +#: gtk2_ardour/ardour_ui_ed.cc:435 msgid "Solo via bus" msgstr "" -#: gtk2_ardour/ardour_ui_ed.cc:429 -#, fuzzy -msgid "Automatically create crossfades" -msgstr "ÐвтоматичеÑкий кроÑÑфейд на перекрытии" +#: gtk2_ardour/ardour_ui_ed.cc:440 +msgid "Auto-connect inputs to physical inputs" +msgstr "ÐвтоÑоединить входы Ñ Ñ„Ð¸Ð·Ð¸Ñ‡ÐµÑкими входами" + +#: gtk2_ardour/ardour_ui_ed.cc:442 +msgid "Manually connect inputs" +msgstr "Вручную подключитьÑÑ Ðº входам" + +#: gtk2_ardour/ardour_ui_ed.cc:447 +msgid "Auto-connect outputs to physical outs" +msgstr "Ðвтомат. Ñоединить выходы Ñ Ñ„Ð¸Ð·Ð¸Ñ‡ÐµÑкими выходами" + +#: gtk2_ardour/ardour_ui_ed.cc:449 +msgid "Auto-connect outputs to master bus" +msgstr "Ðвтомат. Ñоединить выходы Ñ Ð¼Ð°Ñтером" + +#: gtk2_ardour/ardour_ui_ed.cc:451 +msgid "Manually connect outputs" +msgstr "Вручную подключить выходы" + +#: gtk2_ardour/ardour_ui_ed.cc:549 gtk2_ardour/ladspa_pluginui.cc:168 +msgid "Controls" +msgstr "Управление" + +#: gtk2_ardour/ardour_ui_ed.cc:553 +msgid "Feedback" +msgstr "Отклик" -#: gtk2_ardour/ardour_ui_ed.cc:431 -msgid "Unmute new full crossfades" +#: gtk2_ardour/ardour_ui_ed.cc:633 +msgid "ardour: clock" +msgstr "ardour: Ñчётчик" + +#: gtk2_ardour/ardour_ui_options.cc:205 +msgid "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1" msgstr "" -#: gtk2_ardour/ardour_ui_options.cc:423 gtk2_ardour/ardour_ui_options.cc:433 -#: gtk2_ardour/ardour_ui_options.cc:501 -#, fuzzy -msgid "Internal" -msgstr "внутренний" +#: gtk2_ardour/ardour_ui_options.cc:239 +msgid "programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1" +msgstr "" + +#: gtk2_ardour/ardour_ui_options.cc:492 +msgid "" +"programming error: unknown file header format passed to ARDOUR_UI::" +"map_file_data_format: %1" +msgstr "" + +#: gtk2_ardour/ardour_ui_options.cc:524 +msgid "" +"programming error: unknown file data format passed to ARDOUR_UI::" +"map_file_data_format: %1" +msgstr "" -#: gtk2_ardour/ardour_ui_options.cc:424 gtk2_ardour/ardour_ui_options.cc:504 +#: gtk2_ardour/ardour_ui_options.cc:824 #, fuzzy -msgid "MTC" -msgstr "MMC" +msgid "ST" +msgstr "УСТÐÐОВИТЬ" -#: gtk2_ardour/audio_clock.cc:1742 gtk2_ardour/editor.cc:189 -msgid "SMPTE" -msgstr "SMPTE" +#: gtk2_ardour/audio_clock.cc:1801 gtk2_ardour/editor.cc:180 +msgid "Timecode" +msgstr "Тайм-код" -#: gtk2_ardour/audio_clock.cc:1743 gtk2_ardour/editor.cc:188 -#: gtk2_ardour/editor_rulers.cc:359 +#: gtk2_ardour/audio_clock.cc:1802 gtk2_ardour/editor.cc:179 +#: gtk2_ardour/editor_rulers.cc:386 msgid "Bars:Beats" msgstr "Такт:ДолÑ" -#: gtk2_ardour/audio_clock.cc:1744 +#: gtk2_ardour/audio_clock.cc:1803 msgid "Minutes:Seconds" msgstr "Минуты:Секунды" -#: gtk2_ardour/audio_clock.cc:1745 +#: gtk2_ardour/audio_clock.cc:1804 msgid "Audio Frames" msgstr "Ðудио кадры" -#: gtk2_ardour/audio_clock.cc:1746 gtk2_ardour/editor_actions.cc:379 -#: gtk2_ardour/editor_actions.cc:387 gtk2_ardour/gain_meter.cc:167 -#: gtk2_ardour/ladspa_pluginui.cc:330 gtk2_ardour/ladspa_pluginui.cc:573 -#: gtk2_ardour/panner_ui.cc:87 -msgid "Off" -msgstr "Выкл" - -#: gtk2_ardour/audio_clock.cc:1748 +#: gtk2_ardour/audio_clock.cc:1807 msgid "Mode" msgstr "Режим" -#: gtk2_ardour/route_time_axis.cc:86 +#: gtk2_ardour/route_time_axis.cc:87 msgid "m" msgstr "Ñ‚" -#: gtk2_ardour/route_time_axis.cc:86 +#: gtk2_ardour/route_time_axis.cc:87 msgid "s" msgstr "Ñ" -#: gtk2_ardour/route_time_axis.cc:86 +#: gtk2_ardour/route_time_axis.cc:87 msgid "r" msgstr "з" -#: gtk2_ardour/route_time_axis.cc:90 +#: gtk2_ardour/route_time_axis.cc:91 msgid "g" msgstr "г" -#: gtk2_ardour/route_time_axis.cc:91 +#: gtk2_ardour/route_time_axis.cc:92 msgid "p" msgstr "Ñп" -#: gtk2_ardour/route_time_axis.cc:92 gtk2_ardour/automation_time_axis.cc:33 +#: gtk2_ardour/route_time_axis.cc:93 gtk2_ardour/automation_time_axis.cc:36 #: gtk2_ardour/visual_time_axis.cc:74 msgid "h" msgstr "в" -#: gtk2_ardour/route_time_axis.cc:93 +#: gtk2_ardour/route_time_axis.cc:94 msgid "a" msgstr "а" -#: gtk2_ardour/route_time_axis.cc:94 gtk2_ardour/visual_time_axis.cc:73 +#: gtk2_ardour/route_time_axis.cc:95 gtk2_ardour/visual_time_axis.cc:73 msgid "v" msgstr "п" -#: gtk2_ardour/route_time_axis.cc:138 gtk2_ardour/mixer_strip.cc:83 +#: gtk2_ardour/route_time_axis.cc:150 gtk2_ardour/mixer_strip.cc:85 msgid "Record" msgstr "ЗапиÑÑŒ" -#: gtk2_ardour/route_time_axis.cc:146 gtk2_ardour/editor_actions.cc:37 -#: gtk2_ardour/mixer_strip.cc:83 +#: gtk2_ardour/route_time_axis.cc:158 gtk2_ardour/editor_actions.cc:38 +#: gtk2_ardour/mixer_strip.cc:85 gtk2_ardour/mixer_strip.cc:433 msgid "Solo" msgstr "Соло" -#: gtk2_ardour/route_time_axis.cc:147 gtk2_ardour/editor.cc:1710 -#: gtk2_ardour/editor.cc:1809 gtk2_ardour/mixer_strip.cc:83 -#: gtk2_ardour/panner_ui.cc:417 +#: gtk2_ardour/route_time_axis.cc:159 gtk2_ardour/editor.cc:1660 +#: gtk2_ardour/editor.cc:1750 gtk2_ardour/mixer_strip.cc:85 +#: gtk2_ardour/mixer_strip.cc:432 gtk2_ardour/panner_ui.cc:430 msgid "Mute" msgstr "Тихо" -#: gtk2_ardour/route_time_axis.cc:148 +#: gtk2_ardour/route_time_axis.cc:160 msgid "Edit Group" msgstr "Группы" -#: gtk2_ardour/route_time_axis.cc:149 gtk2_ardour/visual_time_axis.cc:92 +#: gtk2_ardour/route_time_axis.cc:161 gtk2_ardour/visual_time_axis.cc:92 msgid "Display Height" msgstr "Ð’Ñ‹Ñота дорожки" -#: gtk2_ardour/route_time_axis.cc:150 +#: gtk2_ardour/route_time_axis.cc:162 msgid "Playlist" msgstr "СпиÑок" -#: gtk2_ardour/route_time_axis.cc:151 gtk2_ardour/route_time_axis.cc:428 +#: gtk2_ardour/route_time_axis.cc:163 gtk2_ardour/route_time_axis.cc:425 msgid "Automation" msgstr "Ðвтомат" -#: gtk2_ardour/route_time_axis.cc:152 gtk2_ardour/visual_time_axis.cc:93 +#: gtk2_ardour/route_time_axis.cc:164 gtk2_ardour/visual_time_axis.cc:93 msgid "Visual options" msgstr "Параметры отображениÑ" -#: gtk2_ardour/route_time_axis.cc:153 gtk2_ardour/visual_time_axis.cc:94 +#: gtk2_ardour/route_time_axis.cc:165 gtk2_ardour/visual_time_axis.cc:94 msgid "Hide this track" -msgstr "Скрыть трек" +msgstr "Скрыть дорожку" -#: gtk2_ardour/route_time_axis.cc:272 gtk2_ardour/mixer_strip.cc:887 +#: gtk2_ardour/route_time_axis.cc:276 gtk2_ardour/mixer_strip.cc:917 msgid "No group" msgstr "Ðет группы" -#: gtk2_ardour/route_time_axis.cc:389 -#, fuzzy +#: gtk2_ardour/route_time_axis.cc:386 msgid "Show all automation" -msgstr "автомат" +msgstr "Показать вÑÑŽ автоматизацию" -#: gtk2_ardour/route_time_axis.cc:392 -#, fuzzy +#: gtk2_ardour/route_time_axis.cc:389 msgid "Show existing automation" -msgstr "иÑпользовать имеющийÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½" +msgstr "Показать ÑущеÑтвующую автоматизацию" -#: gtk2_ardour/route_time_axis.cc:395 -#, fuzzy +#: gtk2_ardour/route_time_axis.cc:392 msgid "Hide all automation" -msgstr "очиÑтить интервалы" +msgstr "СпрÑтать вÑÑŽ автоматизацию" -#: gtk2_ardour/route_time_axis.cc:398 +#: gtk2_ardour/route_time_axis.cc:395 msgid "Plugins" -msgstr "Модули (плагины)" +msgstr "РаÑширениÑ" -#: gtk2_ardour/route_time_axis.cc:419 gtk2_ardour/automation_time_axis.cc:426 +#: gtk2_ardour/route_time_axis.cc:416 gtk2_ardour/automation_time_axis.cc:430 #: gtk2_ardour/imageframe_time_axis.cc:255 gtk2_ardour/marker_time_axis.cc:211 msgid "Height" msgstr "Ð’Ñ‹Ñота" -#: gtk2_ardour/route_time_axis.cc:420 gtk2_ardour/color_manager.cc:41 +#: gtk2_ardour/route_time_axis.cc:417 gtk2_ardour/color_manager.cc:41 #: gtk2_ardour/imageframe_time_axis.cc:256 gtk2_ardour/marker_time_axis.cc:212 msgid "Color" msgstr "Цвет" -#: gtk2_ardour/route_time_axis.cc:425 gtk2_ardour/mixer_strip.cc:971 -#, fuzzy +#: gtk2_ardour/route_time_axis.cc:422 gtk2_ardour/mixer_strip.cc:1002 msgid "Remote Control ID" -msgstr "иÑпользовать контрольные выходы" +msgstr "" -#: gtk2_ardour/route_time_axis.cc:443 +#: gtk2_ardour/route_time_axis.cc:440 #, fuzzy msgid "Align with existing material" msgstr "СущеÑтвующий материал" -#: gtk2_ardour/route_time_axis.cc:449 +#: gtk2_ardour/route_time_axis.cc:446 #, fuzzy msgid "Align with capture time" msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð·Ð°Ð¿Ð¸Ñи" -#: gtk2_ardour/route_time_axis.cc:455 +#: gtk2_ardour/route_time_axis.cc:452 #, fuzzy msgid "Alignment" msgstr "ВыровнÑÑ‚ÑŒ" -#: gtk2_ardour/route_time_axis.cc:462 gtk2_ardour/editor.cc:480 -#: gtk2_ardour/editor_actions.cc:62 gtk2_ardour/mixer_strip.cc:960 +#: gtk2_ardour/route_time_axis.cc:458 +#, fuzzy +msgid "Normal mode" +msgstr "Ðорм." + +#: gtk2_ardour/route_time_axis.cc:461 +msgid "Tape mode" +msgstr "" + +#: gtk2_ardour/route_time_axis.cc:477 gtk2_ardour/editor.cc:480 +#: gtk2_ardour/editor_actions.cc:61 gtk2_ardour/mixer_strip.cc:991 #: gtk2_ardour/mixer_ui.cc:109 msgid "Active" msgstr "Ðктивны" -#: gtk2_ardour/route_time_axis.cc:467 gtk2_ardour/editor.cc:1872 -#: gtk2_ardour/editor_actions.cc:322 gtk2_ardour/editor_markers.cc:511 +#: gtk2_ardour/route_time_axis.cc:482 gtk2_ardour/editor.cc:1840 +#: gtk2_ardour/editor_actions.cc:326 gtk2_ardour/editor_markers.cc:512 #: gtk2_ardour/imageframe_time_axis.cc:259 gtk2_ardour/location_ui.cc:58 -#: gtk2_ardour/marker_time_axis.cc:215 gtk2_ardour/mixer_strip.cc:974 +#: gtk2_ardour/marker_time_axis.cc:215 gtk2_ardour/mixer_strip.cc:1005 msgid "Remove" msgstr "Удалить" -#: gtk2_ardour/route_time_axis.cc:733 -#, fuzzy +#: gtk2_ardour/route_time_axis.cc:508 gtk2_ardour/route_time_axis.cc:563 +#: gtk2_ardour/route_time_axis.cc:828 gtk2_ardour/editor_actions.cc:1015 +msgid "programming error: %1 %2" +msgstr "ошибка в программе: %1 %2" + +#: gtk2_ardour/route_time_axis.cc:852 msgid "Name for playlist" -msgstr "Ð˜Ð¼Ñ Ñнимка" +msgstr "Ð˜Ð¼Ñ ÑпиÑка воÑпроизведениÑ" -#: gtk2_ardour/route_time_axis.cc:735 gtk2_ardour/route_time_axis.cc:1136 -#: gtk2_ardour/editor_markers.cc:830 gtk2_ardour/editor_mouse.cc:4723 +#: gtk2_ardour/route_time_axis.cc:854 gtk2_ardour/route_time_axis.cc:1306 +#: gtk2_ardour/editor_markers.cc:857 gtk2_ardour/editor_mouse.cc:4757 #: gtk2_ardour/imageframe_time_axis.cc:248 gtk2_ardour/marker_time_axis.cc:208 -#: gtk2_ardour/mixer_strip.cc:958 gtk2_ardour/redirect_box.cc:752 -#: gtk2_ardour/redirect_box.cc:1080 gtk2_ardour/route_ui.cc:746 -#: gtk2_ardour/visual_time_axis.cc:326 +#: gtk2_ardour/mixer_strip.cc:989 gtk2_ardour/redirect_box.cc:823 +#: gtk2_ardour/redirect_box.cc:1149 gtk2_ardour/route_ui.cc:760 +#: gtk2_ardour/visual_time_axis.cc:331 msgid "Rename" msgstr "Переименовать" -#: gtk2_ardour/route_time_axis.cc:770 gtk2_ardour/route_time_axis.cc:811 -#, fuzzy +#: gtk2_ardour/route_time_axis.cc:896 gtk2_ardour/route_time_axis.cc:942 msgid "Name for Playlist" -msgstr "Ð˜Ð¼Ñ Ñнимка" +msgstr "Ð˜Ð¼Ñ ÑпиÑка воÑпроизведениÑ" -#: gtk2_ardour/route_time_axis.cc:990 gtk2_ardour/visual_time_axis.cc:383 -msgid "a track already exists with that name" +#: gtk2_ardour/route_time_axis.cc:1134 gtk2_ardour/visual_time_axis.cc:341 +#: gtk2_ardour/visual_time_axis.cc:388 +msgid "A track already exists with that name" msgstr "Дорожка Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует" -#: gtk2_ardour/route_time_axis.cc:1133 -msgid "Current: %1" -msgstr "" - -#: gtk2_ardour/route_time_axis.cc:1140 +#: gtk2_ardour/route_time_axis.cc:1310 msgid "New Copy" msgstr "ÐÐ¾Ð²Ð°Ñ ÐºÐ¾Ð¿Ð¸Ñ" -#: gtk2_ardour/route_time_axis.cc:1142 +#: gtk2_ardour/route_time_axis.cc:1312 msgid "Clear Current" msgstr "ОчиÑтить текущий" -#: gtk2_ardour/route_time_axis.cc:1144 gtk2_ardour/editor.cc:1974 -#: gtk2_ardour/editor.cc:2050 -msgid "Select" -msgstr "Выделить" +#: gtk2_ardour/route_time_axis.cc:1315 +msgid "Select from all ..." +msgstr "Выбрать из вÑех..." -#: gtk2_ardour/route_time_axis.cc:1333 gtk2_ardour/editor.cc:1432 +#: gtk2_ardour/route_time_axis.cc:1521 gtk2_ardour/editor.cc:1382 #: gtk2_ardour/selection.cc:642 msgid "programming error: " msgstr "Ошибка в программе: " -#: gtk2_ardour/audio_time_axis.cc:229 +#: gtk2_ardour/audio_time_axis.cc:222 msgid "Fader" msgstr "Фейдер" -#: gtk2_ardour/audio_time_axis.cc:234 +#: gtk2_ardour/audio_time_axis.cc:227 msgid "Pan" msgstr "Пан." -#: gtk2_ardour/audio_time_axis.cc:249 +#: gtk2_ardour/audio_time_axis.cc:242 msgid "Hide all crossfades" msgstr "Скрыть вÑе кроÑÑфейды" -#: gtk2_ardour/audio_time_axis.cc:250 +#: gtk2_ardour/audio_time_axis.cc:243 msgid "Show all crossfades" msgstr "Показать вÑе кроÑÑфейды" -#: gtk2_ardour/audio_time_axis.cc:257 +#: gtk2_ardour/audio_time_axis.cc:250 msgid "Show waveforms" -msgstr "Показывать форму Ñигнала" +msgstr "Показать форму Ñигнала" -#: gtk2_ardour/audio_time_axis.cc:265 +#: gtk2_ardour/audio_time_axis.cc:260 msgid "Traditional" msgstr "ОбычнаÑ" -#: gtk2_ardour/audio_time_axis.cc:268 +#: gtk2_ardour/audio_time_axis.cc:263 msgid "Rectified" msgstr "УвеличеннаÑ" -#: gtk2_ardour/audio_time_axis.cc:271 +#: gtk2_ardour/audio_time_axis.cc:270 gtk2_ardour/editor.cc:1356 +#: gtk2_ardour/editor.cc:1373 +msgid "Linear" +msgstr "ЛинейнаÑ" + +#: gtk2_ardour/audio_time_axis.cc:273 +msgid "Logarithmic" +msgstr "ЛогарифмичеÑкаÑ" + +#: gtk2_ardour/audio_time_axis.cc:290 msgid "Waveform" msgstr "Форма Ñигнала" -#: gtk2_ardour/audio_time_axis.cc:331 +#: gtk2_ardour/audio_time_axis.cc:362 msgid "gain" msgstr "уÑил." -#: gtk2_ardour/audio_time_axis.cc:371 +#: gtk2_ardour/audio_time_axis.cc:402 msgid "pan" msgstr "пан." -#: gtk2_ardour/automation_line.cc:888 +#: gtk2_ardour/automation_line.cc:795 #, fuzzy msgid "automation event move" msgstr "автомат" -#: gtk2_ardour/automation_line.cc:890 +#: gtk2_ardour/automation_line.cc:797 #, fuzzy msgid "automation range drag" msgstr "автомат" -#: gtk2_ardour/automation_line.cc:1019 gtk2_ardour/region_gain_line.cc:64 +#: gtk2_ardour/automation_line.cc:1022 gtk2_ardour/region_gain_line.cc:64 #, fuzzy msgid "remove control point" msgstr "иÑпользовать контрольные выходы" -#: gtk2_ardour/automation_time_axis.cc:34 gtk2_ardour/editor_ops.cc:2922 +#: gtk2_ardour/automation_time_axis.cc:37 gtk2_ardour/editor_ops.cc:2840 msgid "clear" msgstr "очиÑтить" -#: gtk2_ardour/automation_time_axis.cc:79 +#: gtk2_ardour/automation_time_axis.cc:78 msgid "track height" msgstr "Ð’Ñ‹Ñота дорожки" -#: gtk2_ardour/automation_time_axis.cc:80 +#: gtk2_ardour/automation_time_axis.cc:79 msgid "automation state" msgstr "СоÑтоÑние автоматизации" -#: gtk2_ardour/automation_time_axis.cc:81 +#: gtk2_ardour/automation_time_axis.cc:80 msgid "clear track" msgstr "ОчиÑтить дорожку" -#: gtk2_ardour/automation_time_axis.cc:82 +#: gtk2_ardour/automation_time_axis.cc:81 msgid "hide track" msgstr "Скрыть дорожку" -#: gtk2_ardour/automation_time_axis.cc:188 -#: gtk2_ardour/automation_time_axis.cc:217 -#: gtk2_ardour/automation_time_axis.cc:437 +#: gtk2_ardour/automation_time_axis.cc:187 +#: gtk2_ardour/automation_time_axis.cc:216 +#: gtk2_ardour/automation_time_axis.cc:441 msgid "Manual" msgstr "" -#: gtk2_ardour/automation_time_axis.cc:190 -#: gtk2_ardour/automation_time_axis.cc:228 -#: gtk2_ardour/automation_time_axis.cc:441 gtk2_ardour/editor.cc:1951 -#: gtk2_ardour/editor.cc:2032 gtk2_ardour/gain_meter.cc:169 +#: gtk2_ardour/automation_time_axis.cc:189 +#: gtk2_ardour/automation_time_axis.cc:227 +#: gtk2_ardour/automation_time_axis.cc:445 gtk2_ardour/editor.cc:1918 +#: gtk2_ardour/editor.cc:1999 gtk2_ardour/gain_meter.cc:161 #: gtk2_ardour/ladspa_pluginui.cc:333 gtk2_ardour/ladspa_pluginui.cc:575 -#: gtk2_ardour/panner_ui.cc:89 gtk2_ardour/sfdb_ui.cc:59 +#: gtk2_ardour/panner_ui.cc:91 gtk2_ardour/sfdb_ui.cc:58 msgid "Play" msgstr "ВоÑпроизвеÑти" -#: gtk2_ardour/automation_time_axis.cc:192 -#: gtk2_ardour/automation_time_axis.cc:239 -#: gtk2_ardour/automation_time_axis.cc:445 gtk2_ardour/gain_meter.cc:171 +#: gtk2_ardour/automation_time_axis.cc:191 +#: gtk2_ardour/automation_time_axis.cc:238 +#: gtk2_ardour/automation_time_axis.cc:449 gtk2_ardour/gain_meter.cc:163 #: gtk2_ardour/ladspa_pluginui.cc:336 gtk2_ardour/ladspa_pluginui.cc:577 -#: gtk2_ardour/panner_ui.cc:91 +#: gtk2_ardour/panner_ui.cc:93 msgid "Write" msgstr "ЗапиÑать" -#: gtk2_ardour/automation_time_axis.cc:194 -#: gtk2_ardour/automation_time_axis.cc:250 -#: gtk2_ardour/automation_time_axis.cc:449 gtk2_ardour/gain_meter.cc:173 +#: gtk2_ardour/automation_time_axis.cc:193 +#: gtk2_ardour/automation_time_axis.cc:249 +#: gtk2_ardour/automation_time_axis.cc:453 gtk2_ardour/gain_meter.cc:165 #: gtk2_ardour/ladspa_pluginui.cc:339 gtk2_ardour/ladspa_pluginui.cc:579 -#: gtk2_ardour/panner_ui.cc:93 +#: gtk2_ardour/panner_ui.cc:95 #, fuzzy msgid "Touch" msgstr "Врезка" -#: gtk2_ardour/automation_time_axis.cc:261 gtk2_ardour/ladspa_pluginui.cc:342 +#: gtk2_ardour/automation_time_axis.cc:260 gtk2_ardour/ladspa_pluginui.cc:342 msgid "???" msgstr "???" -#: gtk2_ardour/automation_time_axis.cc:275 +#: gtk2_ardour/automation_time_axis.cc:274 msgid "clear automation" msgstr "ОчиÑтить автоматизацию" -#: gtk2_ardour/automation_time_axis.cc:428 gtk2_ardour/editor_actions.cc:320 +#: gtk2_ardour/automation_time_axis.cc:432 gtk2_ardour/editor_actions.cc:324 msgid "Hide" msgstr "Скрыть" -#: gtk2_ardour/automation_time_axis.cc:430 gtk2_ardour/crossfade_edit.cc:79 -#: gtk2_ardour/redirect_box.cc:1072 gtk2_ardour/connection_editor.cc:57 +#: gtk2_ardour/automation_time_axis.cc:434 gtk2_ardour/crossfade_edit.cc:79 +#: gtk2_ardour/redirect_box.cc:1141 gtk2_ardour/connection_editor.cc:57 msgid "Clear" msgstr "ОчиÑтить" -#: gtk2_ardour/automation_time_axis.cc:453 +#: gtk2_ardour/automation_time_axis.cc:457 msgid "State" msgstr "СоÑтоÑние" @@ -1650,7 +1787,7 @@ msgstr "" #: gtk2_ardour/canvas-imageframe.c:120 msgid "y" -msgstr "" +msgstr "y" #: gtk2_ardour/canvas-imageframe.c:121 gtk2_ardour/canvas-simpleline.c:121 #: gtk2_ardour/canvas-simplerect.c:117 @@ -1658,9 +1795,8 @@ msgid "y coordinate of upper left corner of rect " msgstr "" #: gtk2_ardour/canvas-imageframe.c:129 -#, fuzzy msgid "width" -msgstr "запиÑÑŒ" +msgstr "Ширина" #: gtk2_ardour/canvas-imageframe.c:130 msgid "the width" @@ -1768,7 +1904,7 @@ msgstr "" #: gtk2_ardour/canvas-simplerect.c:199 msgid "fill color rgba" -msgstr "" +msgstr "Цвет заливки в RGBA" #: gtk2_ardour/canvas-simplerect.c:200 msgid "color of fill" @@ -1787,7 +1923,7 @@ msgstr "не удалоÑÑŒ отобразить заÑтавку (файл \"%1 msgid "ardour: x-fade edit" msgstr "ardour: редактор кроÑÑфейдов" -#: gtk2_ardour/crossfade_edit.cc:80 gtk2_ardour/panner_ui.cc:433 +#: gtk2_ardour/crossfade_edit.cc:80 gtk2_ardour/panner_ui.cc:446 msgid "Reset" msgstr "СброÑить" @@ -1829,1528 +1965,1463 @@ msgstr "ÐараÑтание" msgid "Fade Out" msgstr "Затухание" -#: gtk2_ardour/crossfade_edit.cc:173 gtk2_ardour/editor.cc:1785 -#: gtk2_ardour/editor_actions.cc:318 gtk2_ardour/option_editor.cc:129 +#: gtk2_ardour/crossfade_edit.cc:173 gtk2_ardour/editor.cc:1735 +#: gtk2_ardour/editor_actions.cc:322 gtk2_ardour/option_editor.cc:127 msgid "Audition" msgstr "Контроль" -#: gtk2_ardour/editor.cc:105 gtk2_ardour/editor.cc:3521 -#, fuzzy -msgid "Slide Edit" -msgstr "Скольжение" - -#: gtk2_ardour/editor.cc:106 gtk2_ardour/editor.cc:3519 -#, fuzzy -msgid "Splice Edit" -msgstr "Стыковка" - -#: gtk2_ardour/editor.cc:111 gtk2_ardour/editor.cc:3576 -#: gtk2_ardour/editor_actions.cc:417 gtk2_ardour/export_dialog.cc:78 -#: gtk2_ardour/export_dialog.cc:92 gtk2_ardour/export_dialog.cc:893 -#: gtk2_ardour/export_dialog.cc:1225 gtk2_ardour/route_ui.cc:438 +#: gtk2_ardour/editor.cc:102 gtk2_ardour/editor.cc:3600 +#: gtk2_ardour/editor_actions.cc:400 gtk2_ardour/export_dialog.cc:76 +#: gtk2_ardour/export_dialog.cc:90 gtk2_ardour/export_dialog.cc:891 +#: gtk2_ardour/export_dialog.cc:1223 gtk2_ardour/route_ui.cc:459 msgid "None" msgstr "Ðет" -#: gtk2_ardour/editor.cc:112 gtk2_ardour/editor.cc:3564 +#: gtk2_ardour/editor.cc:103 gtk2_ardour/editor.cc:3588 msgid "CD Frames" msgstr "Выборка CD" -#: gtk2_ardour/editor.cc:113 gtk2_ardour/editor.cc:3566 +#: gtk2_ardour/editor.cc:104 gtk2_ardour/editor.cc:3590 msgid "SMPTE Frames" msgstr "SMPTE кадры" -#: gtk2_ardour/editor.cc:114 gtk2_ardour/editor.cc:3568 +#: gtk2_ardour/editor.cc:105 gtk2_ardour/editor.cc:3592 msgid "SMPTE Seconds" msgstr "SMPTE Ñекунды" -#: gtk2_ardour/editor.cc:115 gtk2_ardour/editor.cc:3570 +#: gtk2_ardour/editor.cc:106 gtk2_ardour/editor.cc:3594 msgid "SMPTE Minutes" msgstr "SMPTE минуты" -#: gtk2_ardour/editor.cc:116 gtk2_ardour/editor.cc:3572 +#: gtk2_ardour/editor.cc:107 gtk2_ardour/editor.cc:3596 msgid "Seconds" msgstr "Секунд" -#: gtk2_ardour/editor.cc:117 gtk2_ardour/editor.cc:3574 +#: gtk2_ardour/editor.cc:108 gtk2_ardour/editor.cc:3598 msgid "Minutes" msgstr "Минут" -#: gtk2_ardour/editor.cc:118 gtk2_ardour/editor.cc:3546 +#: gtk2_ardour/editor.cc:109 gtk2_ardour/editor.cc:3570 msgid "Beats/32" msgstr "долÑм/32" -#: gtk2_ardour/editor.cc:119 gtk2_ardour/editor.cc:3544 +#: gtk2_ardour/editor.cc:110 gtk2_ardour/editor.cc:3568 msgid "Beats/16" msgstr "долÑм/16" -#: gtk2_ardour/editor.cc:120 gtk2_ardour/editor.cc:3542 +#: gtk2_ardour/editor.cc:111 gtk2_ardour/editor.cc:3566 msgid "Beats/8" msgstr "долÑм/8" -#: gtk2_ardour/editor.cc:121 gtk2_ardour/editor.cc:3540 +#: gtk2_ardour/editor.cc:112 gtk2_ardour/editor.cc:3564 msgid "Beats/4" msgstr "долÑм/4" -#: gtk2_ardour/editor.cc:122 gtk2_ardour/editor.cc:3538 +#: gtk2_ardour/editor.cc:113 gtk2_ardour/editor.cc:3562 msgid "Beats/3" msgstr "долÑм/3" -#: gtk2_ardour/editor.cc:123 gtk2_ardour/editor.cc:3548 +#: gtk2_ardour/editor.cc:114 gtk2_ardour/editor.cc:3572 msgid "Beats" msgstr "долÑм" -#: gtk2_ardour/editor.cc:124 gtk2_ardour/editor.cc:3550 +#: gtk2_ardour/editor.cc:115 gtk2_ardour/editor.cc:3574 msgid "Bars" msgstr "тактам" -#: gtk2_ardour/editor.cc:125 gtk2_ardour/editor.cc:3552 +#: gtk2_ardour/editor.cc:116 gtk2_ardour/editor.cc:3576 msgid "Marks" msgstr "маркерам" -#: gtk2_ardour/editor.cc:126 gtk2_ardour/editor.cc:3554 +#: gtk2_ardour/editor.cc:117 gtk2_ardour/editor.cc:136 +#: gtk2_ardour/editor.cc:3578 gtk2_ardour/editor.cc:3643 msgid "Edit Cursor" msgstr "курÑору" -#: gtk2_ardour/editor.cc:127 gtk2_ardour/editor.cc:3556 +#: gtk2_ardour/editor.cc:118 gtk2_ardour/editor.cc:3580 msgid "Region starts" msgstr "нач. облаÑтей" -#: gtk2_ardour/editor.cc:128 gtk2_ardour/editor.cc:3558 +#: gtk2_ardour/editor.cc:119 gtk2_ardour/editor.cc:3582 msgid "Region ends" msgstr "оконч. облаÑтей" -#: gtk2_ardour/editor.cc:129 gtk2_ardour/editor.cc:3562 +#: gtk2_ardour/editor.cc:120 gtk2_ardour/editor.cc:3586 msgid "Region syncs" msgstr "" -#: gtk2_ardour/editor.cc:130 gtk2_ardour/editor.cc:3560 +#: gtk2_ardour/editor.cc:121 gtk2_ardour/editor.cc:3584 msgid "Region bounds" msgstr "" -#: gtk2_ardour/editor.cc:135 gtk2_ardour/editor.cc:3593 -#, fuzzy -msgid "Normal Snap" -msgstr "Ðорм." - -#: gtk2_ardour/editor.cc:136 gtk2_ardour/editor.cc:3595 -#, fuzzy -msgid "Magnetic Snap" -msgstr "Магн." +#: gtk2_ardour/editor.cc:127 gtk2_ardour/editor.cc:3618 +#: gtk2_ardour/editor_actions.cc:287 +msgid "Magnetic" +msgstr "Магнитное" -#: gtk2_ardour/editor.cc:141 gtk2_ardour/editor.cc:3612 -#, fuzzy -msgid "Focus Left" -msgstr "МаÑштабировать к" - -#: gtk2_ardour/editor.cc:142 gtk2_ardour/editor.cc:3614 -#, fuzzy -msgid "Focus Right" -msgstr "МаÑштабировать к" +#: gtk2_ardour/editor.cc:132 gtk2_ardour/editor.cc:3635 +#: gtk2_ardour/export_dialog.cc:138 gtk2_ardour/export_dialog.cc:154 +#: gtk2_ardour/export_dialog.cc:1066 gtk2_ardour/export_dialog.cc:1070 +msgid "Left" +msgstr "Левый" -#: gtk2_ardour/editor.cc:143 gtk2_ardour/editor.cc:3616 -#, fuzzy -msgid "Focus Center" -msgstr "МаÑштабировать к" +#: gtk2_ardour/editor.cc:133 gtk2_ardour/editor.cc:3637 +#: gtk2_ardour/export_dialog.cc:139 gtk2_ardour/export_dialog.cc:155 +msgid "Right" +msgstr "Правый" -#: gtk2_ardour/editor.cc:144 +#: gtk2_ardour/editor.cc:134 gtk2_ardour/editor.cc:3639 #, fuzzy -msgid "Focus Play" -msgstr "МаÑштабировать к" +msgid "Center" +msgstr "Размер" -#: gtk2_ardour/editor.cc:145 +#: gtk2_ardour/editor.cc:135 gtk2_ardour/editor.cc:3641 #, fuzzy -msgid "Focus Edit" -msgstr "МаÑштабировать к" +msgid "Playhead" +msgstr "УÑтановить указатель" -#: gtk2_ardour/editor.cc:187 +#: gtk2_ardour/editor.cc:178 msgid "Mins:Secs" msgstr "Мин:Сек" -#: gtk2_ardour/editor.cc:190 gtk2_ardour/editor_rulers.cc:353 +#: gtk2_ardour/editor.cc:181 gtk2_ardour/editor_rulers.cc:380 msgid "Frames" msgstr "Кадры" -#: gtk2_ardour/editor.cc:191 gtk2_ardour/editor_rulers.cc:373 +#: gtk2_ardour/editor.cc:182 gtk2_ardour/editor_rulers.cc:400 msgid "Tempo" msgstr "Темп" -#: gtk2_ardour/editor.cc:192 gtk2_ardour/editor_rulers.cc:367 +#: gtk2_ardour/editor.cc:183 gtk2_ardour/editor_rulers.cc:394 msgid "Meter" msgstr "Размер" -#: gtk2_ardour/editor.cc:193 gtk2_ardour/editor_rulers.cc:379 +#: gtk2_ardour/editor.cc:184 gtk2_ardour/editor_rulers.cc:406 msgid "Location Markers" msgstr "Маркеры интервалов" -#: gtk2_ardour/editor.cc:194 gtk2_ardour/editor_rulers.cc:385 +#: gtk2_ardour/editor.cc:185 gtk2_ardour/editor_rulers.cc:412 msgid "Range Markers" msgstr "Маркеры облаÑтей" -#: gtk2_ardour/editor.cc:195 gtk2_ardour/editor_rulers.cc:391 +#: gtk2_ardour/editor.cc:186 gtk2_ardour/editor_rulers.cc:418 msgid "Loop/Punch Ranges" msgstr "ОблаÑти колец/врезок" -#: gtk2_ardour/editor.cc:213 +#: gtk2_ardour/editor.cc:204 msgid "mode" msgstr "режим" -#: gtk2_ardour/editor.cc:214 +#: gtk2_ardour/editor.cc:205 msgid "automation" msgstr "автомат" #: gtk2_ardour/editor.cc:455 gtk2_ardour/editor.cc:481 -#: gtk2_ardour/editor_actions.cc:64 gtk2_ardour/mixer_ui.cc:84 +#: gtk2_ardour/editor_actions.cc:63 gtk2_ardour/mixer_ui.cc:84 #: gtk2_ardour/mixer_ui.cc:110 gtk2_ardour/analysis_window.cc:64 -msgid "Visible" -msgstr "Видимы" +msgid "Show" +msgstr "Показать" #: gtk2_ardour/editor.cc:456 gtk2_ardour/editor.cc:479 msgid "Name" msgstr "ИмÑ" -#: gtk2_ardour/editor.cc:555 gtk2_ardour/editor.cc:622 +#: gtk2_ardour/editor.cc:555 gtk2_ardour/editor.cc:621 msgid "Regions" msgstr "ОблаÑти" -#: gtk2_ardour/editor.cc:595 gtk2_ardour/editor.cc:634 +#: gtk2_ardour/editor.cc:594 gtk2_ardour/editor.cc:633 msgid "Chunks" msgstr "Фрагменты" -#: gtk2_ardour/editor.cc:625 +#: gtk2_ardour/editor.cc:624 msgid "Tracks/Busses" msgstr "Дорожки/Шины" -#: gtk2_ardour/editor.cc:628 +#: gtk2_ardour/editor.cc:627 msgid "Snapshots" msgstr "Снимки" -#: gtk2_ardour/editor.cc:631 +#: gtk2_ardour/editor.cc:630 +#, fuzzy msgid "Edit Groups" -msgstr "" -"Ред.\n" -"группы" +msgstr "Ред. группы" -#: gtk2_ardour/editor.cc:680 +#: gtk2_ardour/editor.cc:681 msgid "Nudge Region/Selection Forwards" -msgstr "" +msgstr "Подвинуть облаÑÑ‚ÑŒ выделение вперёд" -#: gtk2_ardour/editor.cc:681 -#, fuzzy +#: gtk2_ardour/editor.cc:682 msgid "Nudge Region/Selection Backwards" -msgstr "Скрыть трек" +msgstr "Подвинуть облаÑÑ‚ÑŒ выделение назад" -#: gtk2_ardour/editor.cc:688 gtk2_ardour/editor_mixer.cc:296 +#: gtk2_ardour/editor.cc:710 gtk2_ardour/editor_mixer.cc:305 msgid "ardour: editor" msgstr "ardour: редактор" -#: gtk2_ardour/editor.cc:689 -msgid "ardour_editor" -msgstr "ardour_редактор" - -#: gtk2_ardour/editor.cc:1122 +#: gtk2_ardour/editor.cc:1116 msgid "ardour: editor: " msgstr "ardour: редактор: " -#: gtk2_ardour/editor.cc:1208 gtk2_ardour/editor.cc:1217 -#: gtk2_ardour/editor_markers.cc:874 +#: gtk2_ardour/editor.cc:1189 gtk2_ardour/editor.cc:1198 +#: gtk2_ardour/editor_markers.cc:901 msgid "Loop" msgstr "Кольцо" -#: gtk2_ardour/editor.cc:1222 gtk2_ardour/editor.cc:1231 -#: gtk2_ardour/editor_markers.cc:902 +#: gtk2_ardour/editor.cc:1203 gtk2_ardour/editor.cc:1212 +#: gtk2_ardour/editor_markers.cc:929 msgid "Punch" msgstr "Врезка" -#: gtk2_ardour/editor.cc:1387 gtk2_ardour/editor_mouse.cc:1748 +#: gtk2_ardour/editor.cc:1337 gtk2_ardour/editor_mouse.cc:1751 #, fuzzy msgid "programming error: fade in canvas item has no regionview data pointer!" msgstr "ошибка в программе: line canvas item has no line pointer!" -#: gtk2_ardour/editor.cc:1400 gtk2_ardour/editor.cc:1417 -#: gtk2_ardour/redirect_box.cc:1088 +#: gtk2_ardour/editor.cc:1349 gtk2_ardour/editor.cc:1366 +#: gtk2_ardour/redirect_box.cc:1157 msgid "Deactivate" msgstr "Деактивировать" -#: gtk2_ardour/editor.cc:1402 gtk2_ardour/editor.cc:1419 -#: gtk2_ardour/redirect_box.cc:1086 +#: gtk2_ardour/editor.cc:1351 gtk2_ardour/editor.cc:1368 +#: gtk2_ardour/redirect_box.cc:1155 msgid "Activate" msgstr "Ðктивировать" -#: gtk2_ardour/editor.cc:1407 gtk2_ardour/editor.cc:1424 -#, fuzzy -msgid "Linear" -msgstr "линейное" - -#: gtk2_ardour/editor.cc:1408 gtk2_ardour/editor.cc:1425 -#: gtk2_ardour/editor_actions.cc:380 -msgid "Slowest" -msgstr "Медленнее вÑего" - -#: gtk2_ardour/editor.cc:1409 gtk2_ardour/editor.cc:1426 -#: gtk2_ardour/editor_actions.cc:381 -msgid "Slow" -msgstr "Медленно" - -#: gtk2_ardour/editor.cc:1410 gtk2_ardour/editor.cc:1427 -#: gtk2_ardour/editor_actions.cc:383 -msgid "Fast" -msgstr "БыÑтро" - -#: gtk2_ardour/editor.cc:1411 gtk2_ardour/editor.cc:1428 -#: gtk2_ardour/editor_actions.cc:385 -msgid "Fastest" -msgstr "БыÑтрее вÑего" - -#: gtk2_ardour/editor.cc:1539 gtk2_ardour/editor.cc:1547 +#: gtk2_ardour/editor.cc:1489 gtk2_ardour/editor.cc:1497 msgid "Freeze" msgstr "Заморозить" -#: gtk2_ardour/editor.cc:1543 +#: gtk2_ardour/editor.cc:1493 msgid "Unfreeze" msgstr "Разморозить" -#: gtk2_ardour/editor.cc:1712 gtk2_ardour/editor.cc:1807 +#: gtk2_ardour/editor.cc:1662 msgid "Unmute" msgstr "СнÑÑ‚ÑŒ глушение" -#: gtk2_ardour/editor.cc:1716 gtk2_ardour/editor.cc:1996 -#: gtk2_ardour/editor_actions.cc:27 gtk2_ardour/editor_markers.cc:510 -#: gtk2_ardour/mixer_strip.cc:496 gtk2_ardour/mixer_strip.cc:559 -#: gtk2_ardour/redirect_box.cc:1094 +#: gtk2_ardour/editor.cc:1666 gtk2_ardour/editor.cc:1963 +#: gtk2_ardour/editor_actions.cc:28 gtk2_ardour/editor_markers.cc:511 +#: gtk2_ardour/mixer_strip.cc:515 gtk2_ardour/mixer_strip.cc:577 +#: gtk2_ardour/redirect_box.cc:1163 msgid "Edit" msgstr "Правка" -#: gtk2_ardour/editor.cc:1721 +#: gtk2_ardour/editor.cc:1671 msgid "Convert to short" msgstr "" -#: gtk2_ardour/editor.cc:1723 +#: gtk2_ardour/editor.cc:1673 msgid "Convert to full" msgstr "" -#: gtk2_ardour/editor.cc:1734 +#: gtk2_ardour/editor.cc:1684 msgid "Crossfade" msgstr "КроÑÑфейд" -#: gtk2_ardour/editor.cc:1777 +#: gtk2_ardour/editor.cc:1727 msgid "Popup region editor" msgstr "Открыть редактор облаÑти" -#: gtk2_ardour/editor.cc:1778 -#, fuzzy +#: gtk2_ardour/editor.cc:1728 msgid "Raise to top layer" -msgstr "ПоднÑÑ‚ÑŒ облаÑÑ‚ÑŒ в верхний Ñлой" +msgstr "ПоднÑÑ‚ÑŒ в верхний Ñлой" -#: gtk2_ardour/editor.cc:1779 -#, fuzzy +#: gtk2_ardour/editor.cc:1729 msgid "Lower to bottom layer" -msgstr "ОпуÑтить облаÑÑ‚ÑŒ в нижний Ñлой" +msgstr "ОпуÑтить в нижний Ñлой" -#: gtk2_ardour/editor.cc:1781 +#: gtk2_ardour/editor.cc:1731 msgid "Define sync point" -msgstr "" +msgstr "Определить точку Ñинхронизации" -#: gtk2_ardour/editor.cc:1782 +#: gtk2_ardour/editor.cc:1732 msgid "Remove sync point" -msgstr "" +msgstr "Удалить точку Ñинхронизации" -#: gtk2_ardour/editor.cc:1787 +#: gtk2_ardour/editor.cc:1737 #, fuzzy msgid "Bounce" msgstr "СвеÑти выделенное" -#: gtk2_ardour/editor.cc:1790 +#: gtk2_ardour/editor.cc:1740 #, fuzzy msgid "Analyze region" msgstr "ВоÑпроизвеÑти облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:1802 +#: gtk2_ardour/editor.cc:1745 msgid "Lock" msgstr "Запереть" -#: gtk2_ardour/editor.cc:1803 -msgid "Unlock" -msgstr "Отпереть" +#: gtk2_ardour/editor.cc:1755 +#, fuzzy +msgid "Opaque" +msgstr "затенить" -#: gtk2_ardour/editor.cc:1813 +#: gtk2_ardour/editor.cc:1761 msgid "Original position" msgstr "ИÑходное положение" -#: gtk2_ardour/editor.cc:1819 -msgid "Toggle envelope visibility" -msgstr "" +#: gtk2_ardour/editor.cc:1773 +msgid "Reset Envelope" +msgstr "СброÑить огибающую" -#: gtk2_ardour/editor.cc:1820 -msgid "Toggle envelope active" -msgstr "" +#: gtk2_ardour/editor.cc:1775 +msgid "Envelope Visible" +msgstr "ÐžÐ³Ð¸Ð±Ð°ÑŽÑ‰Ð°Ñ Ð²Ð¸Ð´Ð¸Ð¼Ð°" -#: gtk2_ardour/editor.cc:1824 +#: gtk2_ardour/editor.cc:1782 +msgid "Envelope Active" +msgstr "ÐžÐ³Ð¸Ð±Ð°ÑŽÑ‰Ð°Ñ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð°" + +#: gtk2_ardour/editor.cc:1792 msgid "DeNormalize" msgstr "Денормализовать" -#: gtk2_ardour/editor.cc:1826 +#: gtk2_ardour/editor.cc:1794 msgid "Normalize" msgstr "Ðормализовать" -#: gtk2_ardour/editor.cc:1829 +#: gtk2_ardour/editor.cc:1797 msgid "Reverse" -msgstr "" +msgstr "Развернуть" -#: gtk2_ardour/editor.cc:1835 +#: gtk2_ardour/editor.cc:1803 gtk2_ardour/editor.cc:1885 msgid "Add Range Markers" msgstr "Добавить маркеры облаÑтей" -#: gtk2_ardour/editor.cc:1836 +#: gtk2_ardour/editor.cc:1804 #, fuzzy -msgid "Set Range" -msgstr "Разделить облаÑÑ‚ÑŒ" +msgid "Set Range Selection" +msgstr "ВоÑпроизвеÑти выделенное" -#: gtk2_ardour/editor.cc:1845 +#: gtk2_ardour/editor.cc:1813 msgid "Nudge fwd" msgstr "Подвинуть вперёд" -#: gtk2_ardour/editor.cc:1846 +#: gtk2_ardour/editor.cc:1814 msgid "Nudge bwd" msgstr "Подвинуть назад" -#: gtk2_ardour/editor.cc:1847 +#: gtk2_ardour/editor.cc:1815 msgid "Nudge fwd by capture offset" msgstr "" -#: gtk2_ardour/editor.cc:1848 +#: gtk2_ardour/editor.cc:1816 msgid "Nudge bwd by capture offset" msgstr "" -#: gtk2_ardour/editor.cc:1850 gtk2_ardour/editor.cc:2016 -#: gtk2_ardour/editor.cc:2072 +#: gtk2_ardour/editor.cc:1818 gtk2_ardour/editor.cc:1983 +#: gtk2_ardour/editor.cc:2039 msgid "Nudge" msgstr "Подвинуть" -#: gtk2_ardour/editor.cc:1857 +#: gtk2_ardour/editor.cc:1825 msgid "Start to edit cursor" msgstr "От начала до курÑора" -#: gtk2_ardour/editor.cc:1858 +#: gtk2_ardour/editor.cc:1826 msgid "Edit cursor to end" msgstr "От курÑора до конца" -#: gtk2_ardour/editor.cc:1860 gtk2_ardour/gain_meter.cc:176 -#: gtk2_ardour/gain_meter.cc:808 gtk2_ardour/panner_ui.cc:96 -#: gtk2_ardour/panner_ui.cc:793 +#: gtk2_ardour/editor.cc:1828 gtk2_ardour/gain_meter.cc:168 +#: gtk2_ardour/gain_meter.cc:868 gtk2_ardour/panner_ui.cc:98 +#: gtk2_ardour/panner_ui.cc:806 msgid "Trim" -msgstr "" +msgstr "Обрезать" -#: gtk2_ardour/editor.cc:1863 +#: gtk2_ardour/editor.cc:1831 msgid "Split" -msgstr "Склеить" +msgstr "Разделить" -#: gtk2_ardour/editor.cc:1866 +#: gtk2_ardour/editor.cc:1834 msgid "Make mono regions" msgstr "Создать моно-облаÑти" -#: gtk2_ardour/editor.cc:1869 +#: gtk2_ardour/editor.cc:1837 msgid "Duplicate" msgstr "Размножить" -#: gtk2_ardour/editor.cc:1870 +#: gtk2_ardour/editor.cc:1838 msgid "Fill Track" msgstr "Заполнить трек" -#: gtk2_ardour/editor.cc:1874 -msgid "Destroy" -msgstr "" - -#: gtk2_ardour/editor.cc:1904 -#, fuzzy +#: gtk2_ardour/editor.cc:1870 msgid "Play range" -msgstr "ВоÑпроизвеÑти \"кольцо\"" +msgstr "ВоÑпроизвеÑти «кольцо»" -#: gtk2_ardour/editor.cc:1905 +#: gtk2_ardour/editor.cc:1871 msgid "Loop range" msgstr "" -#: gtk2_ardour/editor.cc:1909 -#, fuzzy +#: gtk2_ardour/editor.cc:1875 msgid "Analyze range" -msgstr "ВоÑпроизвеÑти \"кольцо\"" +msgstr "Проанализировать «кольцо»" -#: gtk2_ardour/editor.cc:1913 +#: gtk2_ardour/editor.cc:1879 #, fuzzy msgid "Separate range to track" msgstr "Разделить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:1914 +#: gtk2_ardour/editor.cc:1880 #, fuzzy msgid "Separate range to region list" msgstr "ВоÑпроизвеÑти выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:1917 -#, fuzzy +#: gtk2_ardour/editor.cc:1883 msgid "Select all in range" -msgstr "Выделить вÑÑ‘" +msgstr "Выделить вÑÑ‘ выделении" -#: gtk2_ardour/editor.cc:1919 gtk2_ardour/editor.cc:1964 +#: gtk2_ardour/editor.cc:1886 gtk2_ardour/editor.cc:1931 #, fuzzy msgid "Set range to loop range" msgstr "выбрать окно проÑмотра" -#: gtk2_ardour/editor.cc:1920 gtk2_ardour/editor.cc:1965 +#: gtk2_ardour/editor.cc:1887 gtk2_ardour/editor.cc:1932 #, fuzzy msgid "Set range to punch range" msgstr "Выбрать текущий интервал" -#: gtk2_ardour/editor.cc:1922 -#, fuzzy +#: gtk2_ardour/editor.cc:1889 msgid "Crop region to range" -msgstr "Обрезать облаÑÑ‚ÑŒ по выделенному" +msgstr "Обрезать облаÑÑ‚ÑŒ по выделению" -#: gtk2_ardour/editor.cc:1923 -#, fuzzy +#: gtk2_ardour/editor.cc:1890 msgid "Fill range with region" -msgstr "Создать облаÑÑ‚ÑŒ" +msgstr "Заполнить выделение облаÑтью" -#: gtk2_ardour/editor.cc:1924 -#, fuzzy +#: gtk2_ardour/editor.cc:1891 msgid "Duplicate range" -msgstr "Размножить" +msgstr "Продублировать выделение" -#: gtk2_ardour/editor.cc:1925 -#, fuzzy +#: gtk2_ardour/editor.cc:1892 msgid "Create chunk from range" -msgstr "Создать фрагмент из выделенного" +msgstr "Создать фрагмент из выделениÑ" -#: gtk2_ardour/editor.cc:1927 +#: gtk2_ardour/editor.cc:1894 msgid "Bounce range" -msgstr "" +msgstr "СвеÑти выделение" -#: gtk2_ardour/editor.cc:1928 -#, fuzzy +#: gtk2_ardour/editor.cc:1895 msgid "Export range" -msgstr "ÐкÑпорт облаÑти" +msgstr "ÐкÑпортировать выделение" -#: gtk2_ardour/editor.cc:1930 -#, fuzzy +#: gtk2_ardour/editor.cc:1897 msgid "Range" -msgstr "выделÑÑ‚ÑŒ" +msgstr "Выделение" -#: gtk2_ardour/editor.cc:1945 gtk2_ardour/editor.cc:2030 +#: gtk2_ardour/editor.cc:1912 gtk2_ardour/editor.cc:1997 msgid "Play from edit cursor" msgstr "ВоÑпроизвеÑти от курÑора" -#: gtk2_ardour/editor.cc:1946 gtk2_ardour/editor.cc:2031 +#: gtk2_ardour/editor.cc:1913 gtk2_ardour/editor.cc:1998 msgid "Play from start" msgstr "ВоÑпроизвеÑти Ñначала" -#: gtk2_ardour/editor.cc:1947 +#: gtk2_ardour/editor.cc:1914 msgid "Play region" msgstr "ВоÑпроизвеÑти облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:1949 +#: gtk2_ardour/editor.cc:1916 msgid "Loop Region" msgstr "«Закольцевать» облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:1959 gtk2_ardour/editor.cc:2040 +#: gtk2_ardour/editor.cc:1926 gtk2_ardour/editor.cc:2007 msgid "Select All in track" msgstr "Выделить вÑÑ‘ в дорожке" -#: gtk2_ardour/editor.cc:1960 gtk2_ardour/editor.cc:2041 -#: gtk2_ardour/redirect_box.cc:1082 +#: gtk2_ardour/editor.cc:1927 gtk2_ardour/editor.cc:2008 +#: gtk2_ardour/redirect_box.cc:1151 msgid "Select All" msgstr "Выделить вÑÑ‘" -#: gtk2_ardour/editor.cc:1961 gtk2_ardour/editor.cc:2042 +#: gtk2_ardour/editor.cc:1928 gtk2_ardour/editor.cc:2009 msgid "Invert selection in track" msgstr "Обратить выделение в дорожке" -#: gtk2_ardour/editor.cc:1962 gtk2_ardour/editor.cc:2043 +#: gtk2_ardour/editor.cc:1929 gtk2_ardour/editor.cc:2010 msgid "Invert selection" msgstr "Обратить выделение" -#: gtk2_ardour/editor.cc:1967 gtk2_ardour/editor.cc:2045 +#: gtk2_ardour/editor.cc:1934 gtk2_ardour/editor.cc:2012 msgid "Select all after edit cursor" msgstr "Выделить вÑÑ‘ поÑле курÑора" -#: gtk2_ardour/editor.cc:1968 gtk2_ardour/editor.cc:2046 +#: gtk2_ardour/editor.cc:1935 gtk2_ardour/editor.cc:2013 msgid "Select all before edit cursor" msgstr "Выделить вÑÑ‘ до курÑора" -#: gtk2_ardour/editor.cc:1969 gtk2_ardour/editor.cc:2047 +#: gtk2_ardour/editor.cc:1936 gtk2_ardour/editor.cc:2014 msgid "Select all after playhead" msgstr "Выделить вÑÑ‘ поÑле указателÑ" -#: gtk2_ardour/editor.cc:1970 gtk2_ardour/editor.cc:2048 +#: gtk2_ardour/editor.cc:1937 gtk2_ardour/editor.cc:2015 msgid "Select all before playhead" msgstr "Выделить вÑÑ‘ до указателÑ" -#: gtk2_ardour/editor.cc:1971 +#: gtk2_ardour/editor.cc:1938 msgid "Select all between cursors" msgstr "Выделить вÑÑ‘ между курÑорами" -#: gtk2_ardour/editor.cc:1982 gtk2_ardour/editor.cc:2058 -#: gtk2_ardour/editor.cc:3388 gtk2_ardour/editor_actions.cc:216 -#: gtk2_ardour/redirect_box.cc:1075 +#: gtk2_ardour/editor.cc:1941 gtk2_ardour/editor.cc:2017 +msgid "Select" +msgstr "Выделить" + +#: gtk2_ardour/editor.cc:1949 gtk2_ardour/editor.cc:2025 +#: gtk2_ardour/editor_actions.cc:215 gtk2_ardour/redirect_box.cc:1144 msgid "Cut" msgstr "Вырезать" -#: gtk2_ardour/editor.cc:1983 gtk2_ardour/editor.cc:2059 -#: gtk2_ardour/editor.cc:3390 gtk2_ardour/editor_actions.cc:221 -#: gtk2_ardour/redirect_box.cc:1077 +#: gtk2_ardour/editor.cc:1950 gtk2_ardour/editor.cc:2026 +#: gtk2_ardour/editor_actions.cc:220 gtk2_ardour/redirect_box.cc:1146 msgid "Copy" msgstr "Копировать" -#: gtk2_ardour/editor.cc:1984 +#: gtk2_ardour/editor.cc:1951 msgid "Paste at edit cursor" msgstr "Ð’Ñтавить под курÑор редактора" -#: gtk2_ardour/editor.cc:1985 +#: gtk2_ardour/editor.cc:1952 msgid "Paste at mouse" msgstr "Ð’Ñтавить под курÑор мыши" -#: gtk2_ardour/editor.cc:1989 gtk2_ardour/editor.cc:3395 +#: gtk2_ardour/editor.cc:1956 msgid "Align" msgstr "ВыровнÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:1990 gtk2_ardour/editor.cc:3397 +#: gtk2_ardour/editor.cc:1957 msgid "Align Relative" msgstr "ВыровнÑÑ‚ÑŒ отноÑительно" -#: gtk2_ardour/editor.cc:1994 +#: gtk2_ardour/editor.cc:1961 msgid "Insert chunk" msgstr "Ð’Ñтавить фрагмент" -#: gtk2_ardour/editor.cc:2001 -#, fuzzy +#: gtk2_ardour/editor.cc:1968 msgid "Insert Selected Region" -msgstr "ВоÑпроизвеÑти выделенную облаÑÑ‚ÑŒ" +msgstr "Ð’Ñтавить выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:2002 +#: gtk2_ardour/editor.cc:1969 msgid "Insert Existing Audio" -msgstr "" +msgstr "Ð’Ñтавить звуковой файл" -#: gtk2_ardour/editor.cc:2011 gtk2_ardour/editor.cc:2067 +#: gtk2_ardour/editor.cc:1978 gtk2_ardour/editor.cc:2034 msgid "Nudge entire track fwd" -msgstr "" +msgstr "Подвинуть вÑÑŽ дорожку вперёд" -#: gtk2_ardour/editor.cc:2012 gtk2_ardour/editor.cc:2068 +#: gtk2_ardour/editor.cc:1979 gtk2_ardour/editor.cc:2035 msgid "Nudge track after edit cursor fwd" -msgstr "" +msgstr "Подвинуть вÑÑŽ дорожку поÑле курÑора правки вперёд" -#: gtk2_ardour/editor.cc:2013 gtk2_ardour/editor.cc:2069 +#: gtk2_ardour/editor.cc:1980 gtk2_ardour/editor.cc:2036 msgid "Nudge entire track bwd" -msgstr "" +msgstr "Подвинуть вÑÑŽ дорожку назад" -#: gtk2_ardour/editor.cc:2014 gtk2_ardour/editor.cc:2070 +#: gtk2_ardour/editor.cc:1981 gtk2_ardour/editor.cc:2037 msgid "Nudge track after edit cursor bwd" -msgstr "" +msgstr "Подвинуть вÑÑŽ дорожку поÑле курÑора правки назад" -#: gtk2_ardour/editor.cc:2060 gtk2_ardour/editor.cc:3392 -#: gtk2_ardour/editor_actions.cc:223 gtk2_ardour/redirect_box.cc:1079 +#: gtk2_ardour/editor.cc:2027 gtk2_ardour/editor_actions.cc:222 +#: gtk2_ardour/redirect_box.cc:1148 msgid "Paste" msgstr "Ð’Ñтавить" -#: gtk2_ardour/editor.cc:2612 -#, fuzzy +#: gtk2_ardour/editor.cc:2585 msgid "Select/Move Objects" -msgstr "выбирать/двигать объекты" +msgstr "Выбирать/двигать объекты" -#: gtk2_ardour/editor.cc:2613 -#, fuzzy +#: gtk2_ardour/editor.cc:2586 msgid "Select/Move Ranges" -msgstr "выбирать/двигать диапазоны" +msgstr "Выбирать/двигать облаÑти" -#: gtk2_ardour/editor.cc:2614 -#, fuzzy +#: gtk2_ardour/editor.cc:2587 msgid "Draw Gain Automation" -msgstr "автомат" +msgstr "РиÑовать автоматизацию уÑилениÑ" -#: gtk2_ardour/editor.cc:2615 -#, fuzzy +#: gtk2_ardour/editor.cc:2588 msgid "Select Zoom Range" -msgstr "выбрать окно проÑмотра" +msgstr "ОтмаÑштабировать вид в выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:2616 -#, fuzzy +#: gtk2_ardour/editor.cc:2589 msgid "Stretch/Shrink Regions" -msgstr "раÑÑ‚Ñнуть/Ñжать облаÑти" +msgstr "РаÑÑ‚Ñнуть/Ñжать облаÑти" -#: gtk2_ardour/editor.cc:2617 -#, fuzzy +#: gtk2_ardour/editor.cc:2590 msgid "Listen to Specific Regions" msgstr "ВоÑпроизвеÑти выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:2646 gtk2_ardour/editor_actions.cc:144 +#: gtk2_ardour/editor.cc:2620 gtk2_ardour/editor_actions.cc:143 msgid "Zoom In" msgstr "Увеличить" -#: gtk2_ardour/editor.cc:2651 gtk2_ardour/editor_actions.cc:142 +#: gtk2_ardour/editor.cc:2626 gtk2_ardour/editor_actions.cc:141 msgid "Zoom Out" msgstr "Уменьшить" -#: gtk2_ardour/editor.cc:2656 gtk2_ardour/editor_actions.cc:146 +#: gtk2_ardour/editor.cc:2632 gtk2_ardour/editor_actions.cc:145 msgid "Zoom to Session" msgstr "Показать вÑÑ‘" -#: gtk2_ardour/editor.cc:2663 -msgid "" -"Current Zoom Range\n" -"(Width of visible area)" -msgstr "" +#: gtk2_ardour/editor.cc:2638 +#, fuzzy +msgid "Zoom focus" +msgstr "Ð¤Ð¾ÐºÑƒÑ Ð¿Ñ€Ð¸ маÑштабировании" -#: gtk2_ardour/editor.cc:2682 +#: gtk2_ardour/editor.cc:2654 msgid "Unit to snap cursors and ranges to" msgstr "" -#: gtk2_ardour/editor.cc:3267 gtk2_ardour/editor.cc:3307 +#: gtk2_ardour/editor.cc:3348 gtk2_ardour/editor.cc:3397 #, fuzzy msgid "set selected regions" msgstr "ВоÑпроизвеÑти выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor.cc:3363 gtk2_ardour/editor_actions.cc:206 +#: gtk2_ardour/editor.cc:3437 gtk2_ardour/editor_actions.cc:205 msgid "Undo" msgstr "Отменить" -#: gtk2_ardour/editor.cc:3365 +#: gtk2_ardour/editor.cc:3439 msgid "Undo (%1)" msgstr "Отменить (%1)" -#: gtk2_ardour/editor.cc:3375 gtk2_ardour/editor_actions.cc:208 +#: gtk2_ardour/editor.cc:3446 gtk2_ardour/editor_actions.cc:207 msgid "Redo" msgstr "Повторить" -#: gtk2_ardour/editor.cc:3377 +#: gtk2_ardour/editor.cc:3448 msgid "Redo (%1)" msgstr "Повторить (%1)" -#: gtk2_ardour/editor.cc:3411 -msgid "... as new track" -msgstr "... как новую дорожку" - -#: gtk2_ardour/editor.cc:3412 -msgid "... as new region" -msgstr "... как новую облаÑÑ‚ÑŒ" - -#: gtk2_ardour/editor.cc:3414 -msgid "Import audio (copy)" -msgstr "Импортировать аудио (копией)" - -#: gtk2_ardour/editor.cc:3417 -msgid "Remove last capture" -msgstr "Удалить поÑледнюю запиÑÑŒ" - -#: gtk2_ardour/editor.cc:3441 +#: gtk2_ardour/editor.cc:3469 msgid "Duplicate how many times?" msgstr "КоличеÑтво повторов?" -#: gtk2_ardour/editor.cc:3618 +#: gtk2_ardour/editor.cc:3547 #, fuzzy -msgid "Focus Playhead" -msgstr "МаÑштабировать к" +msgid "Splice Edit" +msgstr "Стыковка" -#: gtk2_ardour/editor.cc:3620 +#: gtk2_ardour/editor.cc:3549 #, fuzzy -msgid "Focus Edit Cursor" -msgstr "курÑору" +msgid "Slide Edit" +msgstr "Скольжение" -#: gtk2_ardour/editor.cc:3929 +#: gtk2_ardour/editor.cc:3959 msgid "" "Playlist %1 is currently unused.\n" "If left alone, no audio files used by it will be cleaned.\n" "If deleted, audio files used by it alone by will cleaned." msgstr "" -#: gtk2_ardour/editor.cc:3937 +#: gtk2_ardour/editor.cc:3969 msgid "Delete playlist" msgstr "Удалить ÑпиÑок воÑпроизведениÑ" -#: gtk2_ardour/editor.cc:3938 +#: gtk2_ardour/editor.cc:3970 msgid "Keep playlist" msgstr "Сохранить ÑпиÑок воÑпроизведениÑ" -#: gtk2_ardour/editor.cc:3939 gtk2_ardour/editor_audio_import.cc:239 -#: gtk2_ardour/editor_ops.cc:2061 gtk2_ardour/editor_timefx.cc:72 -#: gtk2_ardour/export_dialog.cc:971 gtk2_ardour/io_selector.cc:61 -#: gtk2_ardour/io_selector.cc:795 gtk2_ardour/redirect_box.cc:901 +#: gtk2_ardour/editor.cc:3971 gtk2_ardour/editor_audio_import.cc:315 +#: gtk2_ardour/editor_ops.cc:1979 gtk2_ardour/editor_timefx.cc:72 +#: gtk2_ardour/export_dialog.cc:969 gtk2_ardour/io_selector.cc:61 +#: gtk2_ardour/io_selector.cc:749 gtk2_ardour/redirect_box.cc:975 #: gtk2_ardour/tempo_dialog.cc:20 gtk2_ardour/tempo_dialog.cc:37 #: gtk2_ardour/tempo_dialog.cc:202 gtk2_ardour/tempo_dialog.cc:220 #: gtk2_ardour/connection_editor.cc:60 msgid "Cancel" msgstr "Отмена" -#: gtk2_ardour/editor.cc:4107 +#: gtk2_ardour/editor.cc:4174 msgid "new playlists" msgstr "Создать ÑпиÑки воÑпроизведениÑ" -#: gtk2_ardour/editor.cc:4115 +#: gtk2_ardour/editor.cc:4182 msgid "copy playlists" msgstr "Скопировать ÑпиÑки воÑпроизведениÑ" -#: gtk2_ardour/editor.cc:4123 +#: gtk2_ardour/editor.cc:4190 msgid "clear playlists" msgstr "ОчиÑтить ÑпиÑки воÑпроизведениÑ" -#: gtk2_ardour/editor_actions.cc:28 +#: gtk2_ardour/editor_actions.cc:29 msgid "Select regions" msgstr "Выделение облаÑтей" -#: gtk2_ardour/editor_actions.cc:29 +#: gtk2_ardour/editor_actions.cc:30 msgid "Select range operations" msgstr "ДейÑÑ‚Ð²Ð¸Ñ Ñ Ð²Ñ‹Ð´ÐµÐ»ÐµÐ½Ð½Ð¾Ð¹ облаÑтью" -#: gtk2_ardour/editor_actions.cc:30 +#: gtk2_ardour/editor_actions.cc:31 msgid "Move edit cursor" msgstr "ПеремеÑтить курÑор редактора" -#: gtk2_ardour/editor_actions.cc:31 +#: gtk2_ardour/editor_actions.cc:32 msgid "Region operations" msgstr "ДейÑÑ‚Ð²Ð¸Ñ Ñ Ð¾Ð±Ð»Ð°ÑÑ‚Ñми" -#: gtk2_ardour/editor_actions.cc:32 +#: gtk2_ardour/editor_actions.cc:33 msgid "Tools" msgstr "ИнÑтрументы" -#: gtk2_ardour/editor_actions.cc:33 +#: gtk2_ardour/editor_actions.cc:34 msgid "View" msgstr "Вид" -#: gtk2_ardour/editor_actions.cc:34 +#: gtk2_ardour/editor_actions.cc:35 msgid "ZoomFocus" msgstr "Ð¤Ð¾ÐºÑƒÑ Ð¿Ñ€Ð¸ маÑштабировании" -#: gtk2_ardour/editor_actions.cc:35 +#: gtk2_ardour/editor_actions.cc:36 msgid "Meter hold" msgstr "Задержка индикатора" -#: gtk2_ardour/editor_actions.cc:36 +#: gtk2_ardour/editor_actions.cc:37 msgid "Meter falloff" -msgstr "Спадание индикатора" +msgstr "Спад индикатора" -#: gtk2_ardour/editor_actions.cc:38 +#: gtk2_ardour/editor_actions.cc:39 msgid "Crossfades" msgstr "КроÑÑфейды" -#: gtk2_ardour/editor_actions.cc:39 +#: gtk2_ardour/editor_actions.cc:40 msgid "Monitoring" msgstr "Контроль" -#: gtk2_ardour/editor_actions.cc:40 +#: gtk2_ardour/editor_actions.cc:41 msgid "Autoconnect" msgstr "ÐвтоÑоединение" -#: gtk2_ardour/editor_actions.cc:41 +#: gtk2_ardour/editor_actions.cc:42 msgid "Layering" msgstr "Слои" -#: gtk2_ardour/editor_actions.cc:42 -msgid "SMPTE fps" -msgstr "Кадров в Ñекунду SMPTE" - #: gtk2_ardour/editor_actions.cc:43 -msgid "Pullup / Pulldown" -msgstr "" +msgid "Timecode fps" +msgstr "СкороÑÑ‚ÑŒ (FPS) тайм-кода" #: gtk2_ardour/editor_actions.cc:44 -msgid "Metering" -msgstr "Индикаторы" +msgid "Pullup / Pulldown" +msgstr "" #: gtk2_ardour/editor_actions.cc:45 -msgid "Fall off rate" -msgstr "ЧаÑтота Ñпада" +msgid "Subframes" +msgstr "Подвыборки" #: gtk2_ardour/editor_actions.cc:46 -msgid "Hold Time" -msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð·Ð°Ð´ÐµÑ€Ð¶ÐºÐ¸" - -#: gtk2_ardour/editor_actions.cc:47 msgid "Add Existing Audio" msgstr "Добавить ÑущеÑтвующий файл" -#: gtk2_ardour/editor_actions.cc:52 +#: gtk2_ardour/editor_actions.cc:51 msgid "Show Editor Mixer" msgstr "Показать микшер редактора" -#: gtk2_ardour/editor_actions.cc:57 +#: gtk2_ardour/editor_actions.cc:56 #, fuzzy msgid "Span Entire Overlap" msgstr "ПоднÑÑ‚ÑŒ облаÑÑ‚ÑŒ на один Ñлой" -#: gtk2_ardour/editor_actions.cc:59 gtk2_ardour/editor_actions.cc:388 -msgid "Short" -msgstr "КороткаÑ" - -#: gtk2_ardour/editor_actions.cc:66 +#: gtk2_ardour/editor_actions.cc:65 msgid "Created Automatically" msgstr "Создано автоматичеÑки" -#: gtk2_ardour/editor_actions.cc:69 +#: gtk2_ardour/editor_actions.cc:68 msgid "Playhead to Next Region Start" msgstr "Указатель к началу Ñледующей облаÑти" -#: gtk2_ardour/editor_actions.cc:71 +#: gtk2_ardour/editor_actions.cc:70 msgid "Playhead to Next Region End" msgstr "Указатель к концу Ñледующей облаÑти" -#: gtk2_ardour/editor_actions.cc:73 +#: gtk2_ardour/editor_actions.cc:72 msgid "Playhead to Next Region Sync" msgstr "" -#: gtk2_ardour/editor_actions.cc:76 +#: gtk2_ardour/editor_actions.cc:75 msgid "Playhead to Previous Region Start" msgstr "Указатель к началу предыдущей облаÑти" -#: gtk2_ardour/editor_actions.cc:78 +#: gtk2_ardour/editor_actions.cc:77 msgid "Playhead to Previous Region End" msgstr "Указатель к концу предыдущей облаÑти" -#: gtk2_ardour/editor_actions.cc:80 +#: gtk2_ardour/editor_actions.cc:79 msgid "Playhead to Previous Region Sync" msgstr "" -#: gtk2_ardour/editor_actions.cc:83 +#: gtk2_ardour/editor_actions.cc:82 msgid "Edit Cursor to Next Region Start" msgstr "КурÑор редактора к началу Ñледующей облаÑти" -#: gtk2_ardour/editor_actions.cc:85 +#: gtk2_ardour/editor_actions.cc:84 msgid "Edit Cursor to Next Region End" msgstr "КурÑор редактора к концу Ñледующей облаÑти" -#: gtk2_ardour/editor_actions.cc:87 +#: gtk2_ardour/editor_actions.cc:86 #, fuzzy msgid "Edit Cursor to Next Region Sync" msgstr "От курÑора до конца" -#: gtk2_ardour/editor_actions.cc:90 +#: gtk2_ardour/editor_actions.cc:89 msgid "Edit Cursor to Previous Region Start" msgstr "КурÑор редактора к началу предыдущей облаÑти" -#: gtk2_ardour/editor_actions.cc:92 +#: gtk2_ardour/editor_actions.cc:91 msgid "Edit Cursor to Previous Region End" msgstr "КурÑор редактора к концу предыдущей облаÑти" -#: gtk2_ardour/editor_actions.cc:94 +#: gtk2_ardour/editor_actions.cc:93 msgid "Edit Cursor to Previous Region Sync" msgstr "" -#: gtk2_ardour/editor_actions.cc:97 +#: gtk2_ardour/editor_actions.cc:96 msgid "Playhead to Range Start" msgstr "Указатель к началу облаÑти" -#: gtk2_ardour/editor_actions.cc:99 +#: gtk2_ardour/editor_actions.cc:98 msgid "Playhead to Range End" msgstr "Указатель к концу облаÑти" -#: gtk2_ardour/editor_actions.cc:102 +#: gtk2_ardour/editor_actions.cc:101 msgid "Edit Cursor to Range Start" msgstr "КурÑор редактора к началу облаÑти" -#: gtk2_ardour/editor_actions.cc:104 +#: gtk2_ardour/editor_actions.cc:103 msgid "Edit Cursor to Range End" msgstr "КурÑор редактора к концу облаÑти" -#: gtk2_ardour/editor_actions.cc:107 gtk2_ardour/editor_ops.cc:1373 +#: gtk2_ardour/editor_actions.cc:106 gtk2_ardour/editor_ops.cc:1292 msgid "select all" msgstr "Выделить вÑÑ‘" -#: gtk2_ardour/editor_actions.cc:109 +#: gtk2_ardour/editor_actions.cc:108 msgid "Select All After Edit Cursor" msgstr "Выделить вÑÑ‘ поÑле курÑора редактора" -#: gtk2_ardour/editor_actions.cc:111 +#: gtk2_ardour/editor_actions.cc:110 msgid "Select All Before Edit Cursor" msgstr "Выделить вÑÑ‘ перед курÑором редактора" -#: gtk2_ardour/editor_actions.cc:114 +#: gtk2_ardour/editor_actions.cc:113 msgid "Select All After Playhead" msgstr "Выделить вÑÑ‘ поÑле указателÑ" -#: gtk2_ardour/editor_actions.cc:116 +#: gtk2_ardour/editor_actions.cc:115 msgid "Select All Before Playhead" msgstr "Выделить вÑÑ‘ до указателÑ" -#: gtk2_ardour/editor_actions.cc:118 +#: gtk2_ardour/editor_actions.cc:117 #, fuzzy msgid "Select All Between Cursors" msgstr "ВоÑпроизвеÑти от курÑора" -#: gtk2_ardour/editor_actions.cc:121 +#: gtk2_ardour/editor_actions.cc:120 #, fuzzy msgid "Select All in Punch Range" msgstr "Выбрать текущий интервал" -#: gtk2_ardour/editor_actions.cc:123 +#: gtk2_ardour/editor_actions.cc:122 msgid "Select All in Loop Range" msgstr "Выделить вÑÑ‘ в закольцованной облаÑти" -#: gtk2_ardour/editor_actions.cc:126 +#: gtk2_ardour/editor_actions.cc:125 msgid "Jump Forward to Mark" msgstr "К Ñледующей метке" -#: gtk2_ardour/editor_actions.cc:128 +#: gtk2_ardour/editor_actions.cc:127 msgid "Jump Backward to Mark" msgstr "К предыдущей метке" -#: gtk2_ardour/editor_actions.cc:130 +#: gtk2_ardour/editor_actions.cc:129 #, fuzzy msgid "Add Location from Playhead" msgstr "ВоÑпроизвеÑти от указателÑ" -#: gtk2_ardour/editor_actions.cc:133 +#: gtk2_ardour/editor_actions.cc:132 msgid "Nudge Forward" msgstr "Подвинуть вперёд" -#: gtk2_ardour/editor_actions.cc:135 +#: gtk2_ardour/editor_actions.cc:134 msgid "Nudge Next Forward" -msgstr "" +msgstr "Подвинуть Ñледующую вперёд" -#: gtk2_ardour/editor_actions.cc:137 +#: gtk2_ardour/editor_actions.cc:136 msgid "Nudge Backward" msgstr "Подвинуть назад" -#: gtk2_ardour/editor_actions.cc:139 -#, fuzzy +#: gtk2_ardour/editor_actions.cc:138 msgid "Nudge Next Backward" -msgstr "Скрыть трек" +msgstr "Подвинуть Ñледующую назад" -#: gtk2_ardour/editor_actions.cc:149 +#: gtk2_ardour/editor_actions.cc:148 msgid "Scroll Tracks Up" msgstr "Прокрутить дорожки вверх" -#: gtk2_ardour/editor_actions.cc:151 +#: gtk2_ardour/editor_actions.cc:150 msgid "Scroll Tracks Down" msgstr "Прокрутить дорожки вниз" -#: gtk2_ardour/editor_actions.cc:153 +#: gtk2_ardour/editor_actions.cc:152 #, fuzzy msgid "Step Tracks Up" msgstr "Скрыть трек" -#: gtk2_ardour/editor_actions.cc:155 +#: gtk2_ardour/editor_actions.cc:154 msgid "Step Tracks Down" msgstr "" -#: gtk2_ardour/editor_actions.cc:158 +#: gtk2_ardour/editor_actions.cc:157 msgid "Scroll Backward" msgstr "Прокрутить назад" -#: gtk2_ardour/editor_actions.cc:160 +#: gtk2_ardour/editor_actions.cc:159 msgid "Scroll Forward" msgstr "Прокрутить вперёд" -#: gtk2_ardour/editor_actions.cc:162 +#: gtk2_ardour/editor_actions.cc:161 msgid "goto" msgstr "Перейти" -#: gtk2_ardour/editor_actions.cc:164 +#: gtk2_ardour/editor_actions.cc:163 msgid "Center Playhead" msgstr "Указатель по центру" -#: gtk2_ardour/editor_actions.cc:166 +#: gtk2_ardour/editor_actions.cc:165 msgid "Center Edit Cursor" msgstr "КурÑор редактора по центру" -#: gtk2_ardour/editor_actions.cc:168 +#: gtk2_ardour/editor_actions.cc:167 msgid "Playhead Forward" msgstr "Указатель вперёд" -#: gtk2_ardour/editor_actions.cc:170 +#: gtk2_ardour/editor_actions.cc:169 msgid "Playhead Backward" msgstr "Указатель назад" -#: gtk2_ardour/editor_actions.cc:172 +#: gtk2_ardour/editor_actions.cc:171 msgid "Playhead to Edit" msgstr "Указатель к курÑору редактора" -#: gtk2_ardour/editor_actions.cc:174 +#: gtk2_ardour/editor_actions.cc:173 msgid "Edit to Playhead" msgstr "КурÑор редактора к указателю" -#: gtk2_ardour/editor_actions.cc:177 +#: gtk2_ardour/editor_actions.cc:176 msgid "Align Regions Start" msgstr "ВыровнÑÑ‚ÑŒ начало облаÑтей" -#: gtk2_ardour/editor_actions.cc:179 +#: gtk2_ardour/editor_actions.cc:178 #, fuzzy msgid "Align Regions Start Relative" msgstr "ВыровнÑÑ‚ÑŒ отноÑительно" -#: gtk2_ardour/editor_actions.cc:181 +#: gtk2_ardour/editor_actions.cc:180 msgid "Align Regions End" msgstr "ВыровнÑÑ‚ÑŒ конец облаÑтей" -#: gtk2_ardour/editor_actions.cc:183 +#: gtk2_ardour/editor_actions.cc:182 #, fuzzy msgid "Align Regions End Relative" msgstr "ВыровнÑÑ‚ÑŒ отноÑительно" -#: gtk2_ardour/editor_actions.cc:186 +#: gtk2_ardour/editor_actions.cc:185 #, fuzzy msgid "Align Regions Sync" msgstr "проÑлушать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:188 +#: gtk2_ardour/editor_actions.cc:187 #, fuzzy msgid "Align Regions Sync Relative" msgstr "ВыровнÑÑ‚ÑŒ отноÑительно" -#: gtk2_ardour/editor_actions.cc:191 +#: gtk2_ardour/editor_actions.cc:190 msgid "Audition at Mouse" msgstr "Контроль по курÑору мыши" -#: gtk2_ardour/editor_actions.cc:193 +#: gtk2_ardour/editor_actions.cc:192 msgid "Brush at Mouse" msgstr "КиÑточка по курÑору" -#: gtk2_ardour/editor_actions.cc:195 +#: gtk2_ardour/editor_actions.cc:194 msgid "Set Edit Cursor" msgstr "УÑтановить курÑор редактора" -#: gtk2_ardour/editor_actions.cc:197 +#: gtk2_ardour/editor_actions.cc:196 msgid "Mute/Unmute Region" msgstr "Приглушить /вернуть звук облаÑти" -#: gtk2_ardour/editor_actions.cc:199 +#: gtk2_ardour/editor_actions.cc:198 msgid "Set Playhead" msgstr "УÑтановить указатель" -#: gtk2_ardour/editor_actions.cc:201 +#: gtk2_ardour/editor_actions.cc:200 msgid "Split Region" msgstr "Разделить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:203 +#: gtk2_ardour/editor_actions.cc:202 #, fuzzy msgid "Set Region Sync Position" msgstr "по раÑположению облаÑти" -#: gtk2_ardour/editor_actions.cc:211 +#: gtk2_ardour/editor_actions.cc:210 msgid "Export Session" msgstr "ÐкÑпортировать ÑеÑÑию" -#: gtk2_ardour/editor_actions.cc:213 +#: gtk2_ardour/editor_actions.cc:212 msgid "Export Range" msgstr "ÐкÑпортировать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:219 gtk2_ardour/connection_editor.cc:56 +#: gtk2_ardour/editor_actions.cc:218 gtk2_ardour/connection_editor.cc:56 msgid "Delete" msgstr "Удалить" -#: gtk2_ardour/editor_actions.cc:225 +#: gtk2_ardour/editor_actions.cc:224 msgid "Duplicate Region" msgstr "Продублировать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:227 +#: gtk2_ardour/editor_actions.cc:226 msgid "Duplicate Range" msgstr "Продублировать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:229 +#: gtk2_ardour/editor_actions.cc:228 msgid "Insert Region" msgstr "Ð’Ñтавить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:231 +#: gtk2_ardour/editor_actions.cc:230 msgid "Reverse Region" msgstr "Развернуть облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:233 +#: gtk2_ardour/editor_actions.cc:232 msgid "Normalize Region" msgstr "Ðормализовать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_actions.cc:235 +#: gtk2_ardour/editor_actions.cc:234 msgid "crop" msgstr "Обрезать" -#: gtk2_ardour/editor_actions.cc:237 +#: gtk2_ardour/editor_actions.cc:236 msgid "Insert Chunk" msgstr "Ð’Ñтавить фрагмент" -#: gtk2_ardour/editor_actions.cc:240 +#: gtk2_ardour/editor_actions.cc:239 msgid "Split at edit cursor" msgstr "Разделить по курÑору редактора" -#: gtk2_ardour/editor_actions.cc:243 +#: gtk2_ardour/editor_actions.cc:242 msgid "Start Range" -msgstr "" +msgstr "Ðачать выделение" -#: gtk2_ardour/editor_actions.cc:245 +#: gtk2_ardour/editor_actions.cc:244 msgid "Finish Range" -msgstr "" +msgstr "Закончить выделение" -#: gtk2_ardour/editor_actions.cc:247 +#: gtk2_ardour/editor_actions.cc:246 msgid "Finish add Range" -msgstr "" +msgstr "Закончить добавку выделениÑ" -#: gtk2_ardour/editor_actions.cc:250 +#: gtk2_ardour/editor_actions.cc:249 msgid "Extend Range to End of Region" -msgstr "" +msgstr "РаÑширить выделение до конца облаÑти" -#: gtk2_ardour/editor_actions.cc:252 -#, fuzzy +#: gtk2_ardour/editor_actions.cc:251 msgid "Extend Range to Start of Region" -msgstr "Ð’ начало ÑеÑÑии" +msgstr "РаÑширить выделение до начала облаÑти" -#: gtk2_ardour/editor_actions.cc:255 +#: gtk2_ardour/editor_actions.cc:254 msgid "Follow Playhead" msgstr "Следовать за указателем" -#: gtk2_ardour/editor_actions.cc:263 +#: gtk2_ardour/editor_actions.cc:262 msgid "Zoom Focus Left" msgstr "Ð¤Ð¾ÐºÑƒÑ Ð²Ð»ÐµÐ²Ð¾" -#: gtk2_ardour/editor_actions.cc:265 +#: gtk2_ardour/editor_actions.cc:264 msgid "Zoom Focus Right" msgstr "Ð¤Ð¾ÐºÑƒÑ Ð²Ð¿Ñ€Ð°Ð²Ð¾" -#: gtk2_ardour/editor_actions.cc:267 +#: gtk2_ardour/editor_actions.cc:266 msgid "Zoom Focus Center" msgstr "Ð¤Ð¾ÐºÑƒÑ Ð¿Ð¾ центру" -#: gtk2_ardour/editor_actions.cc:269 +#: gtk2_ardour/editor_actions.cc:268 msgid "Zoom Focus Playhead" msgstr "Ð¤Ð¾ÐºÑƒÑ Ð¿Ð¾ указателю" -#: gtk2_ardour/editor_actions.cc:271 +#: gtk2_ardour/editor_actions.cc:270 msgid "Zoom Focus Edit" msgstr "Ð¤Ð¾ÐºÑƒÑ Ð¿Ð¾ курÑору" -#: gtk2_ardour/editor_actions.cc:277 +#: gtk2_ardour/editor_actions.cc:276 msgid "Object Tool" msgstr "Объект" -#: gtk2_ardour/editor_actions.cc:278 +#: gtk2_ardour/editor_actions.cc:277 msgid "Range Tool" -msgstr "ОблаÑÑ‚ÑŒ" +msgstr "Выделение" -#: gtk2_ardour/editor_actions.cc:279 +#: gtk2_ardour/editor_actions.cc:278 msgid "Gain Tool" msgstr "УÑиление" -#: gtk2_ardour/editor_actions.cc:280 +#: gtk2_ardour/editor_actions.cc:279 msgid "Zoom Tool" msgstr "Лупа" -#: gtk2_ardour/editor_actions.cc:281 +#: gtk2_ardour/editor_actions.cc:280 msgid "Timefx Tool" msgstr "ВремÑ" -#: gtk2_ardour/editor_actions.cc:286 +#: gtk2_ardour/editor_actions.cc:282 msgid "Snap To" -msgstr "ПривÑзка" +msgstr "Прилипание" + +#: gtk2_ardour/editor_actions.cc:283 +msgid "Snap Mode" +msgstr "Режим привÑзки" -#: gtk2_ardour/editor_actions.cc:288 +#: gtk2_ardour/editor_actions.cc:292 msgid "Snap to frame" -msgstr "ПривÑзка к выборке" +msgstr "Прилипание к выборке" -#: gtk2_ardour/editor_actions.cc:289 +#: gtk2_ardour/editor_actions.cc:293 msgid "Snap to cd frame" -msgstr "ПривÑзка к выборке CD" +msgstr "Прилипание к выборке CD" -#: gtk2_ardour/editor_actions.cc:290 +#: gtk2_ardour/editor_actions.cc:294 msgid "Snap to SMPTE frame" -msgstr "ПривÑзка к кадру SMPTE" +msgstr "Прилипание к кадру SMPTE" -#: gtk2_ardour/editor_actions.cc:291 +#: gtk2_ardour/editor_actions.cc:295 msgid "Snap to SMPTE seconds" -msgstr "ПривÑзка к Ñекундам SMPTE" +msgstr "Прилипание к Ñекундам SMPTE" -#: gtk2_ardour/editor_actions.cc:292 +#: gtk2_ardour/editor_actions.cc:296 msgid "Snap to SMPTE minutes" -msgstr "ПривÑзка к минутам SMPTE" +msgstr "Прилипание к минутам SMPTE" -#: gtk2_ardour/editor_actions.cc:293 +#: gtk2_ardour/editor_actions.cc:297 msgid "Snap to seconds" -msgstr "ПривÑзка к Ñекундам" +msgstr "Прилипание к Ñекундам" -#: gtk2_ardour/editor_actions.cc:294 +#: gtk2_ardour/editor_actions.cc:298 msgid "Snap to minutes" -msgstr "ПривÑзка к минутам" +msgstr "Прилипание к минутам" -#: gtk2_ardour/editor_actions.cc:295 +#: gtk2_ardour/editor_actions.cc:299 msgid "Snap to thirtyseconds" -msgstr "ПривÑзка по 30 Ñекундам" +msgstr "Прилипание по 30 Ñекундам" -#: gtk2_ardour/editor_actions.cc:296 +#: gtk2_ardour/editor_actions.cc:300 msgid "Snap to asixteenthbeat" -msgstr "ПривÑзка к 1/16" +msgstr "Прилипание к 1/16" -#: gtk2_ardour/editor_actions.cc:297 +#: gtk2_ardour/editor_actions.cc:301 msgid "Snap to eighths" -msgstr "ПривÑзка к 1/8" +msgstr "Прилипание к 1/8" -#: gtk2_ardour/editor_actions.cc:298 +#: gtk2_ardour/editor_actions.cc:302 msgid "Snap to quarters" -msgstr "ПривÑзка к 1/4" +msgstr "Прилипание к 1/4" -#: gtk2_ardour/editor_actions.cc:299 +#: gtk2_ardour/editor_actions.cc:303 msgid "Snap to thirds" -msgstr "ПривÑзка к 1/3" +msgstr "Прилипание к 1/3" -#: gtk2_ardour/editor_actions.cc:300 +#: gtk2_ardour/editor_actions.cc:304 msgid "Snap to beat" -msgstr "ПривÑзка к доле" +msgstr "Прилипание к доле" -#: gtk2_ardour/editor_actions.cc:301 +#: gtk2_ardour/editor_actions.cc:305 msgid "Snap to bar" -msgstr "ПривÑзка к такту" +msgstr "Прилипание к такту" -#: gtk2_ardour/editor_actions.cc:302 +#: gtk2_ardour/editor_actions.cc:306 msgid "Snap to mark" -msgstr "ПривÑзка к маркеру" +msgstr "Прилипание к маркеру" -#: gtk2_ardour/editor_actions.cc:303 +#: gtk2_ardour/editor_actions.cc:307 msgid "Snap to edit cursor" -msgstr "ПривÑзка к курÑору редактора" +msgstr "Прилипание к курÑору редактора" -#: gtk2_ardour/editor_actions.cc:304 +#: gtk2_ardour/editor_actions.cc:308 msgid "Snap to region start" -msgstr "ПривÑзка к началу облаÑти" +msgstr "Прилипание к началу облаÑти" -#: gtk2_ardour/editor_actions.cc:305 +#: gtk2_ardour/editor_actions.cc:309 msgid "Snap to region end" -msgstr "ПривÑзка к концу облаÑти" +msgstr "Прилипание к концу облаÑти" -#: gtk2_ardour/editor_actions.cc:306 +#: gtk2_ardour/editor_actions.cc:310 msgid "Snap to region sync" msgstr "" -#: gtk2_ardour/editor_actions.cc:307 +#: gtk2_ardour/editor_actions.cc:311 msgid "Snap to region boundary" -msgstr "ПривÑзка к границам облаÑти" +msgstr "Прилипание к границам облаÑти" -#: gtk2_ardour/editor_actions.cc:316 +#: gtk2_ardour/editor_actions.cc:320 msgid "Sort" msgstr "" -#: gtk2_ardour/editor_actions.cc:324 +#: gtk2_ardour/editor_actions.cc:328 msgid "Show all" msgstr "Показать вÑÑ‘" -#: gtk2_ardour/editor_actions.cc:325 +#: gtk2_ardour/editor_actions.cc:329 msgid "Show automatic regions" msgstr "Показать автомат. облаÑти" -#: gtk2_ardour/editor_actions.cc:327 +#: gtk2_ardour/editor_actions.cc:331 msgid "Ascending" msgstr "По возраÑтанию" -#: gtk2_ardour/editor_actions.cc:329 +#: gtk2_ardour/editor_actions.cc:333 msgid "Descending" msgstr "По убыванию" -#: gtk2_ardour/editor_actions.cc:332 +#: gtk2_ardour/editor_actions.cc:336 msgid "By Region Name" msgstr "По имени облаÑти" -#: gtk2_ardour/editor_actions.cc:334 +#: gtk2_ardour/editor_actions.cc:338 msgid "By Region Length" msgstr "По длительноÑти облаÑти" -#: gtk2_ardour/editor_actions.cc:336 +#: gtk2_ardour/editor_actions.cc:340 msgid "By Region Position" msgstr "По раÑположению облаÑти" -#: gtk2_ardour/editor_actions.cc:338 +#: gtk2_ardour/editor_actions.cc:342 msgid "By Region Timestamp" msgstr "По времени ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¾Ð±Ð»Ð°Ñти" -#: gtk2_ardour/editor_actions.cc:340 +#: gtk2_ardour/editor_actions.cc:344 msgid "By Region Start in File" msgstr "По началу облаÑти в файле" -#: gtk2_ardour/editor_actions.cc:342 +#: gtk2_ardour/editor_actions.cc:346 msgid "By Region End in File" msgstr "По концу облаÑти в файле" -#: gtk2_ardour/editor_actions.cc:344 +#: gtk2_ardour/editor_actions.cc:348 msgid "By Source File Name" msgstr "По имени иÑходного файла" -#: gtk2_ardour/editor_actions.cc:346 +#: gtk2_ardour/editor_actions.cc:350 msgid "By Source File Length" msgstr "По длительноÑти иÑходного файла" -#: gtk2_ardour/editor_actions.cc:348 +#: gtk2_ardour/editor_actions.cc:352 msgid "By Source File Creation Date" msgstr "По дате ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ñходного файла" -#: gtk2_ardour/editor_actions.cc:350 +#: gtk2_ardour/editor_actions.cc:354 msgid "By Source Filesystem" msgstr "По иÑходной файловой ÑиÑтеме" -#: gtk2_ardour/editor_actions.cc:356 +#: gtk2_ardour/editor_actions.cc:360 msgid "Add External Audio" msgstr "Добавить внешний звуковой файл" -#: gtk2_ardour/editor_actions.cc:358 +#: gtk2_ardour/editor_actions.cc:362 msgid "as Region(s)" msgstr "как облаÑÑ‚ÑŒ(-и)" -#: gtk2_ardour/editor_actions.cc:360 +#: gtk2_ardour/editor_actions.cc:364 msgid "as Tracks" msgstr "как дорожки" -#: gtk2_ardour/editor_actions.cc:362 +#: gtk2_ardour/editor_actions.cc:366 msgid "as Tape Tracks" msgstr "" -#: gtk2_ardour/editor_actions.cc:364 +#: gtk2_ardour/editor_actions.cc:368 msgid "to Tracks" msgstr "в дорожки" -#: gtk2_ardour/editor_actions.cc:367 +#: gtk2_ardour/editor_actions.cc:371 msgid "Show Waveforms" msgstr "Показывать форму Ñигнала" -#: gtk2_ardour/editor_actions.cc:368 +#: gtk2_ardour/editor_actions.cc:372 msgid "Show Waveforms While Recording" msgstr "Показывать форму Ñигнала при запиÑи" -#: gtk2_ardour/editor_actions.cc:369 +#: gtk2_ardour/editor_actions.cc:373 msgid "Show Measures" msgstr "Показывать линии тактов" -#: gtk2_ardour/editor_actions.cc:382 gtk2_ardour/editor_actions.cc:389 -msgid "Medium" -msgstr "Средне" - -#: gtk2_ardour/editor_actions.cc:384 -msgid "Faster" -msgstr "БыÑтрее" - -#: gtk2_ardour/editor_actions.cc:390 -msgid "Long" -msgstr "ДолгаÑ" - -#: gtk2_ardour/editor_actions.cc:394 -#, fuzzy +#: gtk2_ardour/editor_actions.cc:377 msgid "Later is Higher" -msgstr "ОпуÑтить облаÑÑ‚ÑŒ на один Ñлой" +msgstr "Более поздние выше" -#: gtk2_ardour/editor_actions.cc:395 -#, fuzzy +#: gtk2_ardour/editor_actions.cc:378 msgid "Most Recently Moved/Added is Higher" -msgstr "ОпуÑтить облаÑÑ‚ÑŒ на один Ñлой" +msgstr "Ðедавно Ñмещённые/добавленные выше" -#: gtk2_ardour/editor_actions.cc:396 -#, fuzzy +#: gtk2_ardour/editor_actions.cc:379 msgid "Most Recently Added is Higher" -msgstr "ОпуÑтить облаÑÑ‚ÑŒ на один Ñлой" +msgstr "Ðедавно добавленные выше" -#: gtk2_ardour/editor_actions.cc:400 +#: gtk2_ardour/editor_actions.cc:383 msgid "23.976" -msgstr "" +msgstr "23.976" -#: gtk2_ardour/editor_actions.cc:401 +#: gtk2_ardour/editor_actions.cc:384 msgid "24" -msgstr "" +msgstr "24" -#: gtk2_ardour/editor_actions.cc:402 +#: gtk2_ardour/editor_actions.cc:385 msgid "24.976" -msgstr "" +msgstr "24.976" -#: gtk2_ardour/editor_actions.cc:403 +#: gtk2_ardour/editor_actions.cc:386 msgid "25" -msgstr "" +msgstr "25" -#: gtk2_ardour/editor_actions.cc:404 +#: gtk2_ardour/editor_actions.cc:387 msgid "29.97" -msgstr "" +msgstr "29.97" -#: gtk2_ardour/editor_actions.cc:405 +#: gtk2_ardour/editor_actions.cc:388 msgid "29.97 drop" msgstr "" -#: gtk2_ardour/editor_actions.cc:406 +#: gtk2_ardour/editor_actions.cc:389 msgid "30" -msgstr "" +msgstr "30" -#: gtk2_ardour/editor_actions.cc:407 +#: gtk2_ardour/editor_actions.cc:390 msgid "30 drop" msgstr "" -#: gtk2_ardour/editor_actions.cc:408 +#: gtk2_ardour/editor_actions.cc:391 msgid "59.94" -msgstr "" +msgstr "59.94" -#: gtk2_ardour/editor_actions.cc:409 +#: gtk2_ardour/editor_actions.cc:392 msgid "60" -msgstr "" +msgstr "60" -#: gtk2_ardour/editor_actions.cc:413 -#, c-format +#: gtk2_ardour/editor_actions.cc:396 msgid "+4.1667% + 0.1%" -msgstr "" +msgstr "+4.1667% + 0.1%" -#: gtk2_ardour/editor_actions.cc:414 +#: gtk2_ardour/editor_actions.cc:397 msgid "+4.1667%" -msgstr "" +msgstr "+4.1667%" -#: gtk2_ardour/editor_actions.cc:415 -#, c-format +#: gtk2_ardour/editor_actions.cc:398 msgid "+4.1667% - 0.1%" -msgstr "" +msgstr "+4.1667% - 0.1%" -#: gtk2_ardour/editor_actions.cc:416 +#: gtk2_ardour/editor_actions.cc:399 msgid "+ 0.1%" -msgstr "" +msgstr "+ 0.1%" -#: gtk2_ardour/editor_actions.cc:418 +#: gtk2_ardour/editor_actions.cc:401 msgid "- 0.1%" -msgstr "" +msgstr "- 0.1%" -#: gtk2_ardour/editor_actions.cc:419 -#, c-format +#: gtk2_ardour/editor_actions.cc:402 msgid "-4.1667% + 0.1%" -msgstr "" +msgstr "-4.1667% + 0.1%" -#: gtk2_ardour/editor_actions.cc:420 +#: gtk2_ardour/editor_actions.cc:403 msgid "-4.1667%" -msgstr "" +msgstr "-4.1667%" -#: gtk2_ardour/editor_actions.cc:421 -#, c-format +#: gtk2_ardour/editor_actions.cc:404 msgid "-4.1667% - 0.1%" +msgstr "-4.1667% - 0.1%" + +#: gtk2_ardour/editor_actions.cc:408 +msgid "80 per frame" +msgstr "800 на выборку" + +#: gtk2_ardour/editor_actions.cc:409 +msgid "100 per frame" +msgstr "100 на выборку" + +#: gtk2_ardour/editor_actions.cc:712 gtk2_ardour/editor_actions.cc:757 +#: gtk2_ardour/editor_actions.cc:768 gtk2_ardour/editor_actions.cc:812 +#: gtk2_ardour/editor_actions.cc:822 +#, fuzzy +msgid "programming error: %1: %2" +msgstr "ошибка в программе: " + +#: gtk2_ardour/editor_actions.cc:723 gtk2_ardour/editor_actions.cc:951 +#: gtk2_ardour/editor_actions.cc:964 gtk2_ardour/editor_actions.cc:1028 +#: gtk2_ardour/sfdb_ui.cc:395 +#, fuzzy +msgid "programming error: %1" +msgstr "ошибка в программе: " + +#: gtk2_ardour/editor_actions.cc:983 +msgid "Configuraton is using unhandled subframes per frame value: %1" msgstr "" -#: gtk2_ardour/editor_audio_import.cc:75 +#: gtk2_ardour/editor_audio_import.cc:76 #, fuzzy msgid "You can't import or embed an audiofile until you have a session loaded." msgstr "Ð’Ñ‹ не можете импортировать аудиофайл пока ÑеÑÑÐ¸Ñ Ð½Ðµ загружена." -#: gtk2_ardour/editor_audio_import.cc:80 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:81 msgid "Add existing audio to session" -msgstr "иÑпользовать имеющийÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½" +msgstr "Добавить ÑущеÑтвующий файл в ÑеÑÑию" + +#: gtk2_ardour/editor_audio_import.cc:166 +msgid "Import as a %1 region" +msgstr "Импортировать как %1 облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_audio_import.cc:145 +#: gtk2_ardour/editor_audio_import.cc:167 #, fuzzy +msgid "multichannel" +msgstr "отмена" + +#: gtk2_ardour/editor_audio_import.cc:167 gtk2_ardour/export_dialog.cc:84 +msgid "stereo" +msgstr "Ñтерео" + +#: gtk2_ardour/editor_audio_import.cc:168 +msgid "Import as multiple regions" +msgstr "Импортировать как неÑколько облаÑтей" + +#: gtk2_ardour/editor_audio_import.cc:170 +msgid "" +"Paired files detected (%1, %2 ...).\n" +"Do you want to:" +msgstr "" + +#: gtk2_ardour/editor_audio_import.cc:216 msgid "ardour: importing %1" -msgstr "ardour: ÑкÑпорт" +msgstr "ardour: ÑкÑпортируетÑÑ %1" -#: gtk2_ardour/editor_audio_import.cc:149 +#: gtk2_ardour/editor_audio_import.cc:220 msgid "Cancel Import" msgstr "Отменить импорт" -#: gtk2_ardour/editor_audio_import.cc:227 +#: gtk2_ardour/editor_audio_import.cc:303 #, fuzzy msgid "Editor: cannot open file \"%1\", (%2)" msgstr "Редактор: не удалоÑÑŒ открыть файл \"%1\" (%2)" -#: gtk2_ardour/editor_audio_import.cc:235 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:311 msgid "Cancel entire import" -msgstr "Отменить импорт" +msgstr "Отменить веÑÑŒ импорт" -#: gtk2_ardour/editor_audio_import.cc:236 -#, fuzzy +#: gtk2_ardour/editor_audio_import.cc:312 msgid "Don't embed it" -msgstr "Отмена" +msgstr "Ðе вÑтраивать" -#: gtk2_ardour/editor_audio_import.cc:237 +#: gtk2_ardour/editor_audio_import.cc:313 msgid "Embed all without questions" -msgstr "" +msgstr "Ð’Ñтроить без лишних вопроÑов" -#: gtk2_ardour/editor_audio_import.cc:242 +#: gtk2_ardour/editor_audio_import.cc:318 msgid "Embed it anyway" -msgstr "" +msgstr "Ð’ÑÑ‘ равно вÑтроить" -#: gtk2_ardour/editor_audio_import.cc:245 +#: gtk2_ardour/editor_audio_import.cc:321 #, fuzzy msgid "" "%1\n" @@ -3359,11 +3430,11 @@ msgstr "" "Выбранный аудиофайл имеет чаÑтоту диÑкретизации данных\n" "отличную от текущей ÑеÑÑии!" -#: gtk2_ardour/editor_audio_import.cc:278 +#: gtk2_ardour/editor_audio_import.cc:360 msgid "could not open %1" msgstr "не удалоÑÑŒ открыть %1" -#: gtk2_ardour/editor_audio_import.cc:323 +#: gtk2_ardour/editor_audio_import.cc:407 #, fuzzy msgid "insert sndfile" msgstr "Ð’Ñтавить внешний аудиофайл" @@ -3372,27 +3443,26 @@ msgstr "Ð’Ñтавить внешний аудиофайл" msgid "VerboseCanvasCursor" msgstr "" -#: gtk2_ardour/editor_edit_groups.cc:53 gtk2_ardour/mixer_ui.cc:754 +#: gtk2_ardour/editor_edit_groups.cc:53 gtk2_ardour/mixer_ui.cc:751 #, fuzzy msgid "Activate All" msgstr "Ðктивировать" -#: gtk2_ardour/editor_edit_groups.cc:54 gtk2_ardour/mixer_ui.cc:755 +#: gtk2_ardour/editor_edit_groups.cc:54 gtk2_ardour/mixer_ui.cc:752 #, fuzzy msgid "Disable All" msgstr "ОтÑоединить" -#: gtk2_ardour/editor_edit_groups.cc:56 gtk2_ardour/mixer_ui.cc:757 +#: gtk2_ardour/editor_edit_groups.cc:56 gtk2_ardour/mixer_ui.cc:754 #, fuzzy msgid "Add group" msgstr "Ðет группы" -#: gtk2_ardour/editor_edit_groups.cc:229 gtk2_ardour/mixer_ui.cc:988 -#, fuzzy +#: gtk2_ardour/editor_edit_groups.cc:229 gtk2_ardour/mixer_ui.cc:985 msgid "unnamed" -msgstr "Переименовать" +msgstr "безымÑнный" -#: gtk2_ardour/editor_edit_groups.cc:258 gtk2_ardour/mixer_ui.cc:852 +#: gtk2_ardour/editor_edit_groups.cc:258 gtk2_ardour/mixer_ui.cc:849 msgid "-all-" msgstr "-вÑе-" @@ -3410,11 +3480,11 @@ msgid "" "Create 1 or more ranges by dragging the mouse in the range bar" msgstr "" -#: gtk2_ardour/editor_imageframe.cc:625 gtk2_ardour/editor_imageframe.cc:655 +#: gtk2_ardour/editor_imageframe.cc:623 gtk2_ardour/editor_imageframe.cc:653 msgid "programming error: no ImageFrameView selected" msgstr "ошибка в программе: no ImageFrameView selected" -#: gtk2_ardour/editor_imageframe.cc:848 gtk2_ardour/editor_imageframe.cc:870 +#: gtk2_ardour/editor_imageframe.cc:846 gtk2_ardour/editor_imageframe.cc:868 msgid "programming error: no MarkerView selected" msgstr "ошибка в программе: no MarkerView selected" @@ -3428,20 +3498,20 @@ msgstr "отключить воÑпроизведение Ñтой облаÑÑ‚Ð msgid "keyboard selection" msgstr "Выделить по интервалу" -#: gtk2_ardour/editor_markers.cc:293 gtk2_ardour/editor_ops.cc:1297 -#: gtk2_ardour/editor_ops.cc:1311 gtk2_ardour/editor_ops.cc:1330 +#: gtk2_ardour/editor_markers.cc:293 gtk2_ardour/editor_ops.cc:1213 +#: gtk2_ardour/editor_ops.cc:1227 gtk2_ardour/editor_ops.cc:1246 #: gtk2_ardour/location_ui.cc:776 msgid "add marker" msgstr "добавить маркер" #: gtk2_ardour/editor_markers.cc:309 gtk2_ardour/editor_markers.cc:383 -#: gtk2_ardour/editor_markers.cc:555 gtk2_ardour/editor_markers.cc:573 -#: gtk2_ardour/editor_markers.cc:592 gtk2_ardour/editor_markers.cc:611 -#: gtk2_ardour/editor_markers.cc:641 gtk2_ardour/editor_markers.cc:669 -#: gtk2_ardour/editor_markers.cc:697 gtk2_ardour/editor_markers.cc:735 -#: gtk2_ardour/editor_markers.cc:762 gtk2_ardour/editor_markers.cc:785 -#: gtk2_ardour/editor_markers.cc:804 gtk2_ardour/editor_mouse.cc:2027 -#: gtk2_ardour/editor_mouse.cc:4322 +#: gtk2_ardour/editor_markers.cc:556 gtk2_ardour/editor_markers.cc:574 +#: gtk2_ardour/editor_markers.cc:593 gtk2_ardour/editor_markers.cc:612 +#: gtk2_ardour/editor_markers.cc:642 gtk2_ardour/editor_markers.cc:670 +#: gtk2_ardour/editor_markers.cc:698 gtk2_ardour/editor_markers.cc:737 +#: gtk2_ardour/editor_markers.cc:762 gtk2_ardour/editor_markers.cc:789 +#: gtk2_ardour/editor_markers.cc:812 gtk2_ardour/editor_markers.cc:831 +#: gtk2_ardour/editor_mouse.cc:2038 gtk2_ardour/editor_mouse.cc:4356 msgid "programming error: marker canvas item has no marker object pointer!" msgstr "ошибка в программе: marker canvas item has no marker object pointer!" @@ -3474,89 +3544,90 @@ msgstr "Скрыть маркер" msgid "Remove Mark" msgstr "Удалить маркер" -#: gtk2_ardour/editor_markers.cc:482 gtk2_ardour/editor_markers.cc:538 +#: gtk2_ardour/editor_markers.cc:482 gtk2_ardour/editor_markers.cc:539 #, fuzzy msgid "Locate to Range Mark" msgstr "Маркеры интервалов" -#: gtk2_ardour/editor_markers.cc:483 gtk2_ardour/editor_markers.cc:539 +#: gtk2_ardour/editor_markers.cc:483 gtk2_ardour/editor_markers.cc:540 #, fuzzy msgid "Play from Range Mark" msgstr "ВоÑпроизвеÑти \"кольцо\"" #: gtk2_ardour/editor_markers.cc:484 #, fuzzy +msgid "Play Range" +msgstr "ВоÑпроизвеÑти \"кольцо\"" + +#: gtk2_ardour/editor_markers.cc:485 +#, fuzzy msgid "Loop Range" msgstr "ВоÑпроизвеÑти \"кольцо\"" -#: gtk2_ardour/editor_markers.cc:485 gtk2_ardour/editor_markers.cc:540 +#: gtk2_ardour/editor_markers.cc:486 gtk2_ardour/editor_markers.cc:541 #, fuzzy msgid "Set Range Mark from Playhead" msgstr "ВоÑпроизвеÑти от указателÑ" -#: gtk2_ardour/editor_markers.cc:486 gtk2_ardour/editor_markers.cc:541 +#: gtk2_ardour/editor_markers.cc:487 gtk2_ardour/editor_markers.cc:542 #, fuzzy msgid "Set Range from Range Selection" msgstr "ВоÑпроизвеÑти выделенное" -#: gtk2_ardour/editor_markers.cc:490 -#, fuzzy +#: gtk2_ardour/editor_markers.cc:491 msgid "Rename Range" -msgstr "Переименовать" +msgstr "Переименовать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_markers.cc:491 gtk2_ardour/editor_markers.cc:543 +#: gtk2_ardour/editor_markers.cc:492 gtk2_ardour/editor_markers.cc:544 #, fuzzy msgid "Hide Range" msgstr "выделÑÑ‚ÑŒ" -#: gtk2_ardour/editor_markers.cc:492 +#: gtk2_ardour/editor_markers.cc:493 #, fuzzy msgid "Remove Range" msgstr "Удалить поле" -#: gtk2_ardour/editor_markers.cc:496 gtk2_ardour/editor_markers.cc:545 +#: gtk2_ardour/editor_markers.cc:497 gtk2_ardour/editor_markers.cc:546 #, fuzzy msgid "Separate Regions in Range" msgstr "Создать облаÑÑ‚ÑŒ из выделенного" -#: gtk2_ardour/editor_markers.cc:497 gtk2_ardour/editor_markers.cc:546 +#: gtk2_ardour/editor_markers.cc:498 gtk2_ardour/editor_markers.cc:547 #, fuzzy msgid "Select All in Range" msgstr "Выделить вÑÑ‘" -#: gtk2_ardour/editor_markers.cc:523 +#: gtk2_ardour/editor_markers.cc:524 msgid "Set Loop Range" msgstr "" -#: gtk2_ardour/editor_markers.cc:524 +#: gtk2_ardour/editor_markers.cc:525 msgid "Set Punch Range" msgstr "" -#: gtk2_ardour/editor_markers.cc:818 -#, fuzzy +#: gtk2_ardour/editor_markers.cc:845 msgid "New Name:" -msgstr "новое имÑ: " +msgstr "Ðовое имÑ: " -#: gtk2_ardour/editor_markers.cc:821 +#: gtk2_ardour/editor_markers.cc:848 msgid "ardour: rename mark" msgstr "ardour: переименовать маркер" -#: gtk2_ardour/editor_markers.cc:823 -#, fuzzy +#: gtk2_ardour/editor_markers.cc:850 msgid "ardour: rename range" msgstr "ardour: переименовать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_markers.cc:843 -#, fuzzy +#: gtk2_ardour/editor_markers.cc:870 msgid "rename marker" -msgstr "добавить маркер" +msgstr "переименовать маркер" -#: gtk2_ardour/editor_markers.cc:869 +#: gtk2_ardour/editor_markers.cc:896 #, fuzzy msgid "set loop range" msgstr "выбрать окно проÑмотра" -#: gtk2_ardour/editor_markers.cc:897 +#: gtk2_ardour/editor_markers.cc:924 #, fuzzy msgid "set punch range" msgstr "Выбрать текущий интервал" @@ -3570,72 +3641,72 @@ msgstr "Editor::event_frame() used on unhandled event type %1" msgid "select on click" msgstr "ИÑпользовать как щелчок метронома" -#: gtk2_ardour/editor_mouse.cc:1596 +#: gtk2_ardour/editor_mouse.cc:1599 msgid "programming error: start_grab called without drag item" msgstr "ошибка в программе: start_grab called without drag item" -#: gtk2_ardour/editor_mouse.cc:1820 +#: gtk2_ardour/editor_mouse.cc:1823 #, fuzzy msgid "change fade in length" msgstr "редактировать введение в уровень" -#: gtk2_ardour/editor_mouse.cc:1841 +#: gtk2_ardour/editor_mouse.cc:1845 #, fuzzy msgid "programming error: fade out canvas item has no regionview data pointer!" msgstr "ошибка в программе: cursor canvas item has no cursor data pointer!" -#: gtk2_ardour/editor_mouse.cc:1915 +#: gtk2_ardour/editor_mouse.cc:1919 #, fuzzy msgid "change fade out length" msgstr "редактировать Ñведение в ноль" -#: gtk2_ardour/editor_mouse.cc:1937 +#: gtk2_ardour/editor_mouse.cc:1942 msgid "programming error: cursor canvas item has no cursor data pointer!" msgstr "ошибка в программе: cursor canvas item has no cursor data pointer!" -#: gtk2_ardour/editor_mouse.cc:2162 +#: gtk2_ardour/editor_mouse.cc:2173 #, fuzzy msgid "move marker" msgstr "Удалить поле" -#: gtk2_ardour/editor_mouse.cc:2190 gtk2_ardour/editor_mouse.cc:2221 -#: gtk2_ardour/editor_tempodisplay.cc:490 +#: gtk2_ardour/editor_mouse.cc:2201 gtk2_ardour/editor_mouse.cc:2232 +#: gtk2_ardour/editor_tempodisplay.cc:492 msgid "programming error: meter marker canvas item has no marker object pointer!" msgstr "ошибка в программе: meter marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_mouse.cc:2289 +#: gtk2_ardour/editor_mouse.cc:2300 #, fuzzy msgid "copy meter mark" msgstr "добавить маркер" -#: gtk2_ardour/editor_mouse.cc:2300 +#: gtk2_ardour/editor_mouse.cc:2311 msgid "move meter mark" msgstr "" -#: gtk2_ardour/editor_mouse.cc:2316 gtk2_ardour/editor_mouse.cc:2349 -#: gtk2_ardour/editor_tempodisplay.cc:353 -#: gtk2_ardour/editor_tempodisplay.cc:437 -#: gtk2_ardour/editor_tempodisplay.cc:456 +#: gtk2_ardour/editor_mouse.cc:2327 gtk2_ardour/editor_mouse.cc:2360 +#: gtk2_ardour/editor_tempodisplay.cc:355 +#: gtk2_ardour/editor_tempodisplay.cc:439 +#: gtk2_ardour/editor_tempodisplay.cc:458 msgid "programming error: tempo marker canvas item has no marker object pointer!" msgstr "ошибка в программе: tempo marker canvas item has no marker object pointer!" -#: gtk2_ardour/editor_mouse.cc:2321 gtk2_ardour/editor_mouse.cc:2354 -#: gtk2_ardour/editor_tempodisplay.cc:358 -#: gtk2_ardour/editor_tempodisplay.cc:442 +#: gtk2_ardour/editor_mouse.cc:2332 gtk2_ardour/editor_mouse.cc:2365 +#: gtk2_ardour/editor_tempodisplay.cc:360 +#: gtk2_ardour/editor_tempodisplay.cc:444 msgid "programming error: marker for tempo is not a tempo marker!" msgstr "ошибка в программе: marker for tempo is not a tempo marker!" -#: gtk2_ardour/editor_mouse.cc:2421 +#: gtk2_ardour/editor_mouse.cc:2432 #, fuzzy msgid "copy tempo mark" msgstr "добавить маркер" -#: gtk2_ardour/editor_mouse.cc:2432 +#: gtk2_ardour/editor_mouse.cc:2443 msgid "move tempo mark" msgstr "" -#: gtk2_ardour/editor_mouse.cc:2447 gtk2_ardour/editor_mouse.cc:2466 -#: gtk2_ardour/editor_mouse.cc:2479 +#: gtk2_ardour/editor_mouse.cc:2458 gtk2_ardour/editor_mouse.cc:2477 +#: gtk2_ardour/editor_mouse.cc:2490 msgid "" "programming error: control point canvas item has no control point object " "pointer!" @@ -3643,344 +3714,344 @@ msgstr "" "ошибка в программе: control point canvas item has no control point object " "pointer!" -#: gtk2_ardour/editor_mouse.cc:2585 +#: gtk2_ardour/editor_mouse.cc:2596 msgid "programming error: line canvas item has no line pointer!" msgstr "ошибка в программе: line canvas item has no line pointer!" -#: gtk2_ardour/editor_mouse.cc:2694 +#: gtk2_ardour/editor_mouse.cc:2705 #, fuzzy msgid "move region(s)" msgstr "Создать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_mouse.cc:2757 +#: gtk2_ardour/editor_mouse.cc:2771 #, fuzzy msgid "Drag region brush" msgstr "проÑлушать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_mouse.cc:2781 +#: gtk2_ardour/editor_mouse.cc:2793 msgid "Drag region copy" msgstr "" -#: gtk2_ardour/editor_mouse.cc:3641 +#: gtk2_ardour/editor_mouse.cc:3673 #, fuzzy msgid "selection grab" msgstr "Выделенное" -#: gtk2_ardour/editor_mouse.cc:3683 +#: gtk2_ardour/editor_mouse.cc:3715 #, fuzzy msgid "cancel selection" msgstr "ВоÑпроизвеÑти выделенное" -#: gtk2_ardour/editor_mouse.cc:3793 +#: gtk2_ardour/editor_mouse.cc:3825 #, fuzzy msgid "range selection" msgstr "ВоÑпроизвеÑти выделенное" -#: gtk2_ardour/editor_mouse.cc:3809 +#: gtk2_ardour/editor_mouse.cc:3841 #, fuzzy msgid "trim selection start" msgstr "Выделить по интервалу" -#: gtk2_ardour/editor_mouse.cc:3825 +#: gtk2_ardour/editor_mouse.cc:3857 #, fuzzy msgid "trim selection end" msgstr "Выделить по интервалу" -#: gtk2_ardour/editor_mouse.cc:3842 +#: gtk2_ardour/editor_mouse.cc:3874 #, fuzzy msgid "move selection" msgstr "СвеÑти выделенное" -#: gtk2_ardour/editor_mouse.cc:4231 +#: gtk2_ardour/editor_mouse.cc:4265 #, fuzzy msgid "Start point trim" msgstr "От начала до курÑора" -#: gtk2_ardour/editor_mouse.cc:4263 +#: gtk2_ardour/editor_mouse.cc:4297 msgid "End point trim" msgstr "" -#: gtk2_ardour/editor_mouse.cc:4306 +#: gtk2_ardour/editor_mouse.cc:4340 msgid "trimmed region" msgstr "" -#: gtk2_ardour/editor_mouse.cc:4448 +#: gtk2_ardour/editor_mouse.cc:4482 msgid "new range marker" msgstr "Ðовый маркер облаÑти" -#: gtk2_ardour/editor_mouse.cc:4692 +#: gtk2_ardour/editor_mouse.cc:4726 #, fuzzy msgid "select regions" msgstr "ВоÑпроизвеÑти выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_mouse.cc:4721 +#: gtk2_ardour/editor_mouse.cc:4755 msgid "Name for region:" msgstr "Ð˜Ð¼Ñ Ð¾Ð±Ð»Ð°Ñти: " -#: gtk2_ardour/editor_mouse.cc:4785 +#: gtk2_ardour/editor_mouse.cc:4819 #, fuzzy msgid "timestretch" msgstr "ardour: Ñффект timestretch" -#: gtk2_ardour/editor_ops.cc:196 +#: gtk2_ardour/editor_ops.cc:115 #, fuzzy msgid "split" msgstr "Склеить" -#: gtk2_ardour/editor_ops.cc:235 +#: gtk2_ardour/editor_ops.cc:154 #, fuzzy msgid "remove region" msgstr "Создать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:255 +#: gtk2_ardour/editor_ops.cc:174 msgid "" " This is destructive, will possibly delete audio files\n" "It cannot be undone\n" "Do you really want to destroy %1 ?" msgstr "" -#: gtk2_ardour/editor_ops.cc:259 +#: gtk2_ardour/editor_ops.cc:178 #, fuzzy msgid "these regions" msgstr "ВоÑпроизвеÑти выделенную облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:259 +#: gtk2_ardour/editor_ops.cc:178 #, fuzzy msgid "this region" msgstr "отключить воÑпроизведение Ñтой облаÑти" -#: gtk2_ardour/editor_ops.cc:261 gtk2_ardour/editor_ops.cc:3364 -#: gtk2_ardour/route_ui.cc:715 gtk2_ardour/visual_time_axis.cc:278 +#: gtk2_ardour/editor_ops.cc:180 gtk2_ardour/editor_ops.cc:3300 +#: gtk2_ardour/route_ui.cc:736 gtk2_ardour/visual_time_axis.cc:283 msgid "No, do nothing." msgstr "Ðет" -#: gtk2_ardour/editor_ops.cc:264 +#: gtk2_ardour/editor_ops.cc:183 #, fuzzy msgid "Yes, destroy them." msgstr "Да" -#: gtk2_ardour/editor_ops.cc:266 gtk2_ardour/editor_ops.cc:3365 +#: gtk2_ardour/editor_ops.cc:185 gtk2_ardour/editor_ops.cc:3301 msgid "Yes, destroy it." msgstr "Да" -#: gtk2_ardour/editor_ops.cc:355 gtk2_ardour/editor_ops.cc:383 +#: gtk2_ardour/editor_ops.cc:271 gtk2_ardour/editor_ops.cc:299 #, fuzzy msgid "extend selection" msgstr "Выделить по интервалу" -#: gtk2_ardour/editor_ops.cc:399 gtk2_ardour/editor_ops.cc:434 -#: gtk2_ardour/editor_ops.cc:479 gtk2_ardour/editor_ops.cc:506 +#: gtk2_ardour/editor_ops.cc:315 gtk2_ardour/editor_ops.cc:350 +#: gtk2_ardour/editor_ops.cc:395 gtk2_ardour/editor_ops.cc:422 msgid "nudge forward" msgstr "" -#: gtk2_ardour/editor_ops.cc:571 +#: gtk2_ardour/editor_ops.cc:487 msgid "build_region_boundary_cache called with snap_type = %1" msgstr "build_region_boundary_cache called with snap_type = %1" -#: gtk2_ardour/editor_ops.cc:1430 +#: gtk2_ardour/editor_ops.cc:1350 #, fuzzy msgid "select all within" msgstr "Выделить вÑÑ‘" -#: gtk2_ardour/editor_ops.cc:1462 +#: gtk2_ardour/editor_ops.cc:1383 #, fuzzy msgid "set selection from region" msgstr "Создать облаÑÑ‚ÑŒ из выделенного" -#: gtk2_ardour/editor_ops.cc:1495 +#: gtk2_ardour/editor_ops.cc:1416 #, fuzzy msgid "set selection from range" msgstr "Создать облаÑÑ‚ÑŒ из выделенного" -#: gtk2_ardour/editor_ops.cc:1525 +#: gtk2_ardour/editor_ops.cc:1446 #, fuzzy msgid "select all from range" msgstr "выбрать окно проÑмотра" -#: gtk2_ardour/editor_ops.cc:1547 +#: gtk2_ardour/editor_ops.cc:1468 #, fuzzy msgid "select all from punch" msgstr "Выделить вÑÑ‘" -#: gtk2_ardour/editor_ops.cc:1569 +#: gtk2_ardour/editor_ops.cc:1490 #, fuzzy msgid "select all from loop" msgstr "Выделить вÑÑ‘" -#: gtk2_ardour/editor_ops.cc:1583 +#: gtk2_ardour/editor_ops.cc:1504 #, fuzzy msgid "select all after cursor" msgstr "От начала до курÑора" -#: gtk2_ardour/editor_ops.cc:1588 +#: gtk2_ardour/editor_ops.cc:1509 #, fuzzy msgid "select all before cursor" msgstr "ВоÑпроизвеÑти от курÑора" -#: gtk2_ardour/editor_ops.cc:1618 +#: gtk2_ardour/editor_ops.cc:1539 #, fuzzy msgid "select all between cursors" msgstr "ВоÑпроизвеÑти от курÑора" -#: gtk2_ardour/editor_ops.cc:1749 +#: gtk2_ardour/editor_ops.cc:1670 msgid "clear markers" msgstr "очиÑтить маркеры" -#: gtk2_ardour/editor_ops.cc:1762 +#: gtk2_ardour/editor_ops.cc:1683 msgid "clear ranges" msgstr "" -#: gtk2_ardour/editor_ops.cc:1782 +#: gtk2_ardour/editor_ops.cc:1703 msgid "clear locations" msgstr "очиÑтить интервалы" -#: gtk2_ardour/editor_ops.cc:1833 +#: gtk2_ardour/editor_ops.cc:1756 #, fuzzy msgid "insert dragged region" msgstr "Ð’Ñтавить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:1869 +#: gtk2_ardour/editor_ops.cc:1803 #, fuzzy msgid "insert region" msgstr "Ð’Ñтавить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:2060 gtk2_ardour/io_selector.cc:60 -#: gtk2_ardour/io_selector.cc:794 gtk2_ardour/connection_editor.cc:86 +#: gtk2_ardour/editor_ops.cc:1978 gtk2_ardour/io_selector.cc:60 +#: gtk2_ardour/io_selector.cc:748 gtk2_ardour/connection_editor.cc:86 msgid "OK" msgstr "ОК" -#: gtk2_ardour/editor_ops.cc:2067 +#: gtk2_ardour/editor_ops.cc:1985 msgid "ardour: rename region" msgstr "ardour: переименовать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:2292 gtk2_ardour/editor_ops.cc:2345 +#: gtk2_ardour/editor_ops.cc:2210 gtk2_ardour/editor_ops.cc:2263 #, fuzzy msgid "separate" msgstr "Разделить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:2410 +#: gtk2_ardour/editor_ops.cc:2328 #, fuzzy msgid "trim to selection" msgstr "Выделить по интервалу" -#: gtk2_ardour/editor_ops.cc:2451 +#: gtk2_ardour/editor_ops.cc:2369 msgid "region fill" msgstr "" -#: gtk2_ardour/editor_ops.cc:2515 +#: gtk2_ardour/editor_ops.cc:2433 #, fuzzy msgid "fill selection" msgstr "Закольцевать выделенное" -#: gtk2_ardour/editor_ops.cc:2536 +#: gtk2_ardour/editor_ops.cc:2454 #, fuzzy msgid "Programming error. that region doesn't cover that position" msgstr "ошибка в программе: location/marker map does not contain location!" -#: gtk2_ardour/editor_ops.cc:2539 +#: gtk2_ardour/editor_ops.cc:2457 #, fuzzy msgid "set region sync position" msgstr "ОблаÑти/положение" -#: gtk2_ardour/editor_ops.cc:2555 +#: gtk2_ardour/editor_ops.cc:2473 msgid "Place the edit cursor at the desired sync point" msgstr "ПомеÑтите курÑор на точку Ñинхронизации" -#: gtk2_ardour/editor_ops.cc:2560 +#: gtk2_ardour/editor_ops.cc:2478 #, fuzzy msgid "set sync from edit cursor" msgstr "ВоÑпроизвеÑти от курÑора" -#: gtk2_ardour/editor_ops.cc:2573 +#: gtk2_ardour/editor_ops.cc:2491 msgid "remove sync" msgstr "" -#: gtk2_ardour/editor_ops.cc:2588 +#: gtk2_ardour/editor_ops.cc:2506 msgid "naturalize" msgstr "" -#: gtk2_ardour/editor_ops.cc:2653 +#: gtk2_ardour/editor_ops.cc:2571 #, fuzzy msgid "align selection (relative)" msgstr "ВыровнÑÑ‚ÑŒ отноÑительно" -#: gtk2_ardour/editor_ops.cc:2682 +#: gtk2_ardour/editor_ops.cc:2600 #, fuzzy msgid "align selection" msgstr "СвеÑти выделенное" -#: gtk2_ardour/editor_ops.cc:2694 +#: gtk2_ardour/editor_ops.cc:2612 #, fuzzy msgid "align region" msgstr "проÑлушать облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:2742 gtk2_ardour/editor_ops.cc:2768 +#: gtk2_ardour/editor_ops.cc:2660 gtk2_ardour/editor_ops.cc:2686 #, fuzzy msgid "trim to edit" msgstr "От начала до курÑора" -#: gtk2_ardour/editor_ops.cc:2820 +#: gtk2_ardour/editor_ops.cc:2738 #, fuzzy msgid "ardour: freeze" msgstr "ardour: " -#: gtk2_ardour/editor_ops.cc:2825 +#: gtk2_ardour/editor_ops.cc:2743 #, fuzzy msgid "Cancel Freeze" msgstr "Отмена" -#: gtk2_ardour/editor_ops.cc:2862 +#: gtk2_ardour/editor_ops.cc:2780 #, fuzzy msgid "bounce range" msgstr "Выбрать текущий интервал" -#: gtk2_ardour/editor_ops.cc:2916 +#: gtk2_ardour/editor_ops.cc:2834 msgid "cut" msgstr "вырезать" -#: gtk2_ardour/editor_ops.cc:2919 +#: gtk2_ardour/editor_ops.cc:2837 msgid "copy" msgstr "копировать" -#: gtk2_ardour/editor_ops.cc:2932 +#: gtk2_ardour/editor_ops.cc:2850 msgid " objects" msgstr "объекты" -#: gtk2_ardour/editor_ops.cc:2958 +#: gtk2_ardour/editor_ops.cc:2876 msgid " range" msgstr "" -#: gtk2_ardour/editor_ops.cc:3121 +#: gtk2_ardour/editor_ops.cc:3057 #, fuzzy msgid "paste" msgstr "Ð’Ñтавить" -#: gtk2_ardour/editor_ops.cc:3159 +#: gtk2_ardour/editor_ops.cc:3095 #, fuzzy msgid "paste chunk" msgstr "Создать фрагмент" -#: gtk2_ardour/editor_ops.cc:3200 +#: gtk2_ardour/editor_ops.cc:3136 #, fuzzy msgid "duplicate region" msgstr "Разделить облаÑÑ‚ÑŒ" -#: gtk2_ardour/editor_ops.cc:3245 +#: gtk2_ardour/editor_ops.cc:3181 #, fuzzy msgid "duplicate selection" msgstr "СвеÑти выделенное" -#: gtk2_ardour/editor_ops.cc:3303 +#: gtk2_ardour/editor_ops.cc:3239 #, fuzzy msgid "clear playlist" msgstr "Ð˜Ð¼Ñ Ñнимка" -#: gtk2_ardour/editor_ops.cc:3333 +#: gtk2_ardour/editor_ops.cc:3269 #, fuzzy msgid "nudge track" msgstr "Скрыть трек" -#: gtk2_ardour/editor_ops.cc:3361 +#: gtk2_ardour/editor_ops.cc:3297 msgid "" "Do you really want to destroy the last capture?\n" "(This is destructive and cannot be undone)" @@ -3988,85 +4059,87 @@ msgstr "" "ПоÑледнюю запиÑÑŒ будет удалена. Ð’Ñ‹ уверены?\n" "(отмена операции невозможна)" -#: gtk2_ardour/editor_ops.cc:3389 -#, fuzzy +#: gtk2_ardour/editor_ops.cc:3325 msgid "normalize" -msgstr "Ðорм." +msgstr "нормализовать" -#: gtk2_ardour/editor_ops.cc:3442 +#: gtk2_ardour/editor_ops.cc:3378 msgid "reverse regions" msgstr "" -#: gtk2_ardour/editor_region_list.cc:98 gtk2_ardour/editor_region_list.cc:103 -#: gtk2_ardour/editor_region_list.cc:106 gtk2_ardour/location_ui.cc:57 +#: gtk2_ardour/editor_ops.cc:3491 +#, fuzzy +msgid "reset region gain" +msgstr "Создать облаÑÑ‚ÑŒ" + +#: gtk2_ardour/editor_region_list.cc:103 gtk2_ardour/editor_region_list.cc:109 +#: gtk2_ardour/editor_region_list.cc:112 gtk2_ardour/location_ui.cc:57 msgid "Hidden" msgstr "Скрытый" #: gtk2_ardour/editor_route_list.cc:100 gtk2_ardour/editor_route_list.cc:101 -#: gtk2_ardour/editor_route_list.cc:246 +#: gtk2_ardour/editor_route_list.cc:250 msgid "editor" msgstr "редактор" -#: gtk2_ardour/editor_route_list.cc:313 gtk2_ardour/mixer_ui.cc:717 +#: gtk2_ardour/editor_route_list.cc:317 gtk2_ardour/mixer_ui.cc:714 msgid "Show All" msgstr "Показать вÑÑ‘" -#: gtk2_ardour/editor_route_list.cc:314 gtk2_ardour/mixer_ui.cc:718 +#: gtk2_ardour/editor_route_list.cc:318 gtk2_ardour/mixer_ui.cc:715 msgid "Hide All" msgstr "Скрыть вÑÑ‘" -#: gtk2_ardour/editor_route_list.cc:315 gtk2_ardour/mixer_ui.cc:719 +#: gtk2_ardour/editor_route_list.cc:319 gtk2_ardour/mixer_ui.cc:716 #, fuzzy msgid "Show All Audio Tracks" msgstr "Показать вÑе аудиошины" -#: gtk2_ardour/editor_route_list.cc:316 gtk2_ardour/mixer_ui.cc:720 +#: gtk2_ardour/editor_route_list.cc:320 gtk2_ardour/mixer_ui.cc:717 #, fuzzy msgid "Hide All Audio Tracks" msgstr "Скрыть вÑе аудиошины" -#: gtk2_ardour/editor_route_list.cc:317 gtk2_ardour/mixer_ui.cc:721 -#, fuzzy +#: gtk2_ardour/editor_route_list.cc:321 gtk2_ardour/mixer_ui.cc:718 msgid "Show All Audio Busses" msgstr "Показать вÑе аудиошины" -#: gtk2_ardour/editor_route_list.cc:318 gtk2_ardour/mixer_ui.cc:722 -#, fuzzy +#: gtk2_ardour/editor_route_list.cc:322 gtk2_ardour/mixer_ui.cc:719 msgid "Hide All Audio Busses" msgstr "Скрыть вÑе аудиошины" -#: gtk2_ardour/editor_rulers.cc:311 +#: gtk2_ardour/editor_rulers.cc:338 #, fuzzy msgid "New location marker" msgstr "Маркеры интервалов" -#: gtk2_ardour/editor_rulers.cc:312 +#: gtk2_ardour/editor_rulers.cc:339 #, fuzzy msgid "Clear all locations" msgstr "очиÑтить интервалы" -#: gtk2_ardour/editor_rulers.cc:317 +#: gtk2_ardour/editor_rulers.cc:344 msgid "Clear all ranges" msgstr "ОчиÑтить вÑе облаÑти" -#: gtk2_ardour/editor_rulers.cc:326 +#: gtk2_ardour/editor_rulers.cc:353 #, fuzzy msgid "New Tempo" msgstr "Ðовый темп" -#: gtk2_ardour/editor_rulers.cc:327 +#: gtk2_ardour/editor_rulers.cc:354 msgid "Clear tempo" msgstr "ОчиÑтить темп" -#: gtk2_ardour/editor_rulers.cc:332 +#: gtk2_ardour/editor_rulers.cc:359 msgid "New Meter" -msgstr "" +msgstr "Ðовый Ñчётчик" -#: gtk2_ardour/editor_rulers.cc:333 +#: gtk2_ardour/editor_rulers.cc:360 msgid "Clear meter" -msgstr "" +msgstr "СброÑить Ñчётчик" -#: gtk2_ardour/editor_rulers.cc:341 +#: gtk2_ardour/editor_rulers.cc:368 msgid "Min:Secs" msgstr "Мин:С" @@ -4082,38 +4155,38 @@ msgstr "Создать фрагмент" msgid "Forget it" msgstr "Забыть" -#: gtk2_ardour/editor_tempodisplay.cc:270 -#: gtk2_ardour/editor_tempodisplay.cc:313 +#: gtk2_ardour/editor_tempodisplay.cc:272 +#: gtk2_ardour/editor_tempodisplay.cc:315 msgid "add" msgstr "добавить" -#: gtk2_ardour/editor_tempodisplay.cc:292 +#: gtk2_ardour/editor_tempodisplay.cc:294 #, fuzzy msgid "add tempo mark" msgstr "добавить маркер" -#: gtk2_ardour/editor_tempodisplay.cc:335 +#: gtk2_ardour/editor_tempodisplay.cc:337 #, fuzzy msgid "add meter mark" msgstr "добавить маркер" -#: gtk2_ardour/editor_tempodisplay.cc:370 -#: gtk2_ardour/editor_tempodisplay.cc:401 +#: gtk2_ardour/editor_tempodisplay.cc:372 +#: gtk2_ardour/editor_tempodisplay.cc:403 msgid "done" msgstr "готово" -#: gtk2_ardour/editor_tempodisplay.cc:388 -#: gtk2_ardour/editor_tempodisplay.cc:419 +#: gtk2_ardour/editor_tempodisplay.cc:390 +#: gtk2_ardour/editor_tempodisplay.cc:421 msgid "replace tempo mark" -msgstr "" +msgstr "Ñменить метку темпа" -#: gtk2_ardour/editor_tempodisplay.cc:461 -#: gtk2_ardour/editor_tempodisplay.cc:495 +#: gtk2_ardour/editor_tempodisplay.cc:463 +#: gtk2_ardour/editor_tempodisplay.cc:497 msgid "programming error: marker for meter is not a meter marker!" msgstr "ошибка в программе: marker for meter is not a meter marker!" -#: gtk2_ardour/editor_tempodisplay.cc:471 -#: gtk2_ardour/editor_tempodisplay.cc:507 +#: gtk2_ardour/editor_tempodisplay.cc:473 +#: gtk2_ardour/editor_tempodisplay.cc:509 #, fuzzy msgid "remove tempo mark" msgstr "Да, удалить вÑÑ‘" @@ -4150,198 +4223,175 @@ msgstr "TimeStretchProgress" msgid "timestretch cannot be started - thread creation error" msgstr "" -#: gtk2_ardour/export_dialog.cc:59 gtk2_ardour/export_dialog.cc:399 -#: gtk2_ardour/export_dialog.cc:1027 gtk2_ardour/export_dialog.cc:1195 +#: gtk2_ardour/export_dialog.cc:57 gtk2_ardour/export_dialog.cc:397 +#: gtk2_ardour/export_dialog.cc:1025 gtk2_ardour/export_dialog.cc:1193 msgid "22.05kHz" msgstr "22.05кГц" -#: gtk2_ardour/export_dialog.cc:60 gtk2_ardour/export_dialog.cc:402 -#: gtk2_ardour/export_dialog.cc:417 gtk2_ardour/export_dialog.cc:1029 -#: gtk2_ardour/export_dialog.cc:1197 +#: gtk2_ardour/export_dialog.cc:58 gtk2_ardour/export_dialog.cc:400 +#: gtk2_ardour/export_dialog.cc:415 gtk2_ardour/export_dialog.cc:1027 +#: gtk2_ardour/export_dialog.cc:1195 msgid "44.1kHz" msgstr "44.1кГц" -#: gtk2_ardour/export_dialog.cc:61 gtk2_ardour/export_dialog.cc:405 -#: gtk2_ardour/export_dialog.cc:1031 gtk2_ardour/export_dialog.cc:1199 +#: gtk2_ardour/export_dialog.cc:59 gtk2_ardour/export_dialog.cc:403 +#: gtk2_ardour/export_dialog.cc:1029 gtk2_ardour/export_dialog.cc:1197 msgid "48kHz" msgstr "48кГц" -#: gtk2_ardour/export_dialog.cc:62 gtk2_ardour/export_dialog.cc:408 -#: gtk2_ardour/export_dialog.cc:1033 gtk2_ardour/export_dialog.cc:1201 +#: gtk2_ardour/export_dialog.cc:60 gtk2_ardour/export_dialog.cc:406 +#: gtk2_ardour/export_dialog.cc:1031 gtk2_ardour/export_dialog.cc:1199 msgid "88.2kHz" msgstr "88.2кГц" -#: gtk2_ardour/export_dialog.cc:63 gtk2_ardour/export_dialog.cc:411 -#: gtk2_ardour/export_dialog.cc:1035 gtk2_ardour/export_dialog.cc:1203 +#: gtk2_ardour/export_dialog.cc:61 gtk2_ardour/export_dialog.cc:409 +#: gtk2_ardour/export_dialog.cc:1033 gtk2_ardour/export_dialog.cc:1201 msgid "96kHz" msgstr "96кГц" -#: gtk2_ardour/export_dialog.cc:64 gtk2_ardour/export_dialog.cc:414 -#: gtk2_ardour/export_dialog.cc:1037 gtk2_ardour/export_dialog.cc:1205 +#: gtk2_ardour/export_dialog.cc:62 gtk2_ardour/export_dialog.cc:412 +#: gtk2_ardour/export_dialog.cc:1035 gtk2_ardour/export_dialog.cc:1203 msgid "192kHz" msgstr "192кГц" -#: gtk2_ardour/export_dialog.cc:69 +#: gtk2_ardour/export_dialog.cc:67 msgid "best" msgstr "выÑокое" -#: gtk2_ardour/export_dialog.cc:70 gtk2_ardour/export_dialog.cc:1212 +#: gtk2_ardour/export_dialog.cc:68 gtk2_ardour/export_dialog.cc:1210 msgid "fastest" msgstr "быÑтрое" -#: gtk2_ardour/export_dialog.cc:71 gtk2_ardour/export_dialog.cc:1214 +#: gtk2_ardour/export_dialog.cc:69 gtk2_ardour/export_dialog.cc:1212 msgid "linear" msgstr "линейное" -#: gtk2_ardour/export_dialog.cc:72 gtk2_ardour/export_dialog.cc:1216 +#: gtk2_ardour/export_dialog.cc:70 gtk2_ardour/export_dialog.cc:1214 msgid "better" msgstr "нормальное" -#: gtk2_ardour/export_dialog.cc:73 gtk2_ardour/export_dialog.cc:1218 +#: gtk2_ardour/export_dialog.cc:71 gtk2_ardour/export_dialog.cc:1216 msgid "intermediate" msgstr "Ñреднее" -#: gtk2_ardour/export_dialog.cc:79 gtk2_ardour/export_dialog.cc:1227 +#: gtk2_ardour/export_dialog.cc:77 gtk2_ardour/export_dialog.cc:1225 msgid "Rectangular" -msgstr "Rectangular" +msgstr "ПрÑмоугольный" -#: gtk2_ardour/export_dialog.cc:80 +#: gtk2_ardour/export_dialog.cc:78 msgid "Shaped Noise" -msgstr "Shaped Noise" +msgstr "По очертаниÑм" -#: gtk2_ardour/export_dialog.cc:81 gtk2_ardour/export_dialog.cc:1229 +#: gtk2_ardour/export_dialog.cc:79 gtk2_ardour/export_dialog.cc:1227 msgid "Triangular" -msgstr "Triangular" +msgstr "Треугольный" -#: gtk2_ardour/export_dialog.cc:86 -msgid "stereo" -msgstr "Ñтерео" - -#: gtk2_ardour/export_dialog.cc:87 gtk2_ardour/export_dialog.cc:486 -#: gtk2_ardour/export_dialog.cc:1055 gtk2_ardour/export_dialog.cc:1177 +#: gtk2_ardour/export_dialog.cc:85 gtk2_ardour/export_dialog.cc:484 +#: gtk2_ardour/export_dialog.cc:1053 gtk2_ardour/export_dialog.cc:1175 msgid "mono" msgstr "моно" -#: gtk2_ardour/export_dialog.cc:93 +#: gtk2_ardour/export_dialog.cc:91 msgid "CUE" -msgstr "" +msgstr "CUE" -#: gtk2_ardour/export_dialog.cc:94 +#: gtk2_ardour/export_dialog.cc:92 msgid "TOC" -msgstr "" +msgstr "TOC" -#: gtk2_ardour/export_dialog.cc:102 -#, fuzzy +#: gtk2_ardour/export_dialog.cc:100 msgid "Format" -msgstr "Ðорм." +msgstr "Формат" -#: gtk2_ardour/export_dialog.cc:103 +#: gtk2_ardour/export_dialog.cc:101 msgid "CD Marker File Type" -msgstr "" +msgstr "Тип файла маркеров CD" -#: gtk2_ardour/export_dialog.cc:104 -#, fuzzy +#: gtk2_ardour/export_dialog.cc:102 msgid "Channels" -msgstr "отмена" +msgstr "Каналов" -#: gtk2_ardour/export_dialog.cc:105 -#, fuzzy +#: gtk2_ardour/export_dialog.cc:103 msgid "File Type" -msgstr "Тип" +msgstr "Тип файла" -#: gtk2_ardour/export_dialog.cc:106 -#, fuzzy +#: gtk2_ardour/export_dialog.cc:104 msgid "Sample Format" -msgstr "Разделить облаÑÑ‚ÑŒ" +msgstr "Формат ÑÑмпла" -#: gtk2_ardour/export_dialog.cc:107 +#: gtk2_ardour/export_dialog.cc:105 msgid "Sample Endianness" -msgstr "" +msgstr "Байтовый порÑдок ÑÑмпла" -#: gtk2_ardour/export_dialog.cc:108 -#, fuzzy +#: gtk2_ardour/export_dialog.cc:106 msgid "Sample Rate" -msgstr "Разделить облаÑÑ‚ÑŒ" +msgstr "ЧаÑтота ÑÑмплированиÑ" -#: gtk2_ardour/export_dialog.cc:109 +#: gtk2_ardour/export_dialog.cc:107 msgid "Conversion Quality" -msgstr "" +msgstr "КачеÑтво преобразованиÑ" -#: gtk2_ardour/export_dialog.cc:110 +#: gtk2_ardour/export_dialog.cc:108 msgid "Dither Type" -msgstr "" +msgstr "Тип дитеринга" -#: gtk2_ardour/export_dialog.cc:111 +#: gtk2_ardour/export_dialog.cc:109 msgid "Export CD Marker File Only" -msgstr "" +msgstr "ÐкÑпортировать только файл маркеров CD" -#: gtk2_ardour/export_dialog.cc:112 -#, fuzzy +#: gtk2_ardour/export_dialog.cc:110 msgid "Export to File" -msgstr "ÐкÑпорт на CD" +msgstr "ÐкÑпорт в файл" -#: gtk2_ardour/export_dialog.cc:113 gtk2_ardour/option_editor.cc:82 -#: gtk2_ardour/option_editor.cc:83 +#: gtk2_ardour/export_dialog.cc:111 gtk2_ardour/option_editor.cc:80 +#: gtk2_ardour/option_editor.cc:81 msgid "Browse" msgstr "Обзор" -#: gtk2_ardour/export_dialog.cc:114 +#: gtk2_ardour/export_dialog.cc:112 msgid "Specific tracks ..." -msgstr "" +msgstr "СпецифичеÑкие задачи" -#: gtk2_ardour/export_dialog.cc:125 +#: gtk2_ardour/export_dialog.cc:123 msgid "ardour: export" msgstr "ardour: ÑкÑпорт" -#: gtk2_ardour/export_dialog.cc:126 -msgid "ardour_export" -msgstr "ardour_ÑкÑпорт" - -#: gtk2_ardour/export_dialog.cc:139 gtk2_ardour/export_dialog.cc:155 -#: gtk2_ardour/mixer_strip.cc:121 gtk2_ardour/mixer_strip.cc:727 +#: gtk2_ardour/export_dialog.cc:137 gtk2_ardour/export_dialog.cc:153 +#: gtk2_ardour/mixer_strip.cc:123 gtk2_ardour/mixer_strip.cc:746 msgid "Output" msgstr "Выход" -#: gtk2_ardour/export_dialog.cc:140 gtk2_ardour/export_dialog.cc:156 -#: gtk2_ardour/export_dialog.cc:1068 gtk2_ardour/export_dialog.cc:1072 -msgid "Left" -msgstr "Левый" - -#: gtk2_ardour/export_dialog.cc:141 gtk2_ardour/export_dialog.cc:157 -msgid "Right" -msgstr "Правый" - -#: gtk2_ardour/export_dialog.cc:633 +#: gtk2_ardour/export_dialog.cc:631 #, fuzzy msgid "Editor: cannot open \"%1\" as export file for CD toc file" msgstr "Редакор: не могу открыть \"%1\" как файл ÑкÑпорта маркеров Ð´Ð»Ñ CD-треков" -#: gtk2_ardour/export_dialog.cc:759 +#: gtk2_ardour/export_dialog.cc:757 #, fuzzy msgid "Editor: cannot open \"%1\" as export file for CD cue file" msgstr "Редакор: не могу открыть \"%1\" как файл ÑкÑпорта маркеров Ð´Ð»Ñ CD-треков" -#: gtk2_ardour/export_dialog.cc:778 +#: gtk2_ardour/export_dialog.cc:776 msgid "WAV" msgstr "WAV" -#: gtk2_ardour/export_dialog.cc:912 +#: gtk2_ardour/export_dialog.cc:910 msgid "Stop Export" msgstr "ОÑтановить ÑкÑпорт" -#: gtk2_ardour/export_dialog.cc:1131 +#: gtk2_ardour/export_dialog.cc:1129 msgid "Please enter a valid filename." msgstr "Введите корректное Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°" -#: gtk2_ardour/export_dialog.cc:1141 +#: gtk2_ardour/export_dialog.cc:1139 msgid "Please specify a complete filename for the audio file." msgstr "Укажите полное Ð¸Ð¼Ñ Ð·Ð²ÑƒÐºÐ¾Ð²Ð¾Ð³Ð¾ файла" -#: gtk2_ardour/export_dialog.cc:1147 +#: gtk2_ardour/export_dialog.cc:1145 msgid "File already exists, do you want to overwrite it?" msgstr "Файл Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже еÑÑ‚ÑŒ. ПерезапиÑать его?" -#: gtk2_ardour/export_dialog.cc:1159 +#: gtk2_ardour/export_dialog.cc:1157 #: gtk2_ardour/export_range_markers_dialog.cc:153 msgid "Cannot write file in: " msgstr "Ðевозможно запиÑать файлв в:" @@ -4361,51 +4411,48 @@ msgstr "" msgid "add gain automation event" msgstr "автомат" -#: gtk2_ardour/gain_meter.cc:67 -msgid "cannot find images for fader slider" -msgstr "" - -#: gtk2_ardour/gain_meter.cc:74 -msgid "cannot find images for fader rail" -msgstr "" - -#: gtk2_ardour/gain_meter.cc:125 gtk2_ardour/gain_meter.cc:334 -#: gtk2_ardour/gain_meter.cc:489 gtk2_ardour/gain_meter.cc:534 +#: gtk2_ardour/gain_meter.cc:112 gtk2_ardour/gain_meter.cc:330 +#: gtk2_ardour/gain_meter.cc:511 gtk2_ardour/gain_meter.cc:578 #, fuzzy msgid "-inf" msgstr "в" -#: gtk2_ardour/gain_meter.cc:135 +#: gtk2_ardour/gain_meter.cc:123 msgid "Fader automation mode" msgstr "Режим автоматизации фейдера" -#: gtk2_ardour/gain_meter.cc:136 +#: gtk2_ardour/gain_meter.cc:124 msgid "Fader automation type" msgstr "Тип автоматизации фейдера" -#: gtk2_ardour/gain_meter.cc:177 gtk2_ardour/gain_meter.cc:812 -#: gtk2_ardour/panner_ui.cc:97 gtk2_ardour/panner_ui.cc:797 +#: gtk2_ardour/gain_meter.cc:169 gtk2_ardour/gain_meter.cc:872 +#: gtk2_ardour/panner_ui.cc:99 gtk2_ardour/panner_ui.cc:810 msgid "Abs" msgstr "ÐбÑ" -#: gtk2_ardour/gain_meter.cc:467 +#: gtk2_ardour/gain_meter.cc:489 msgid "-Inf" msgstr "-Inf" -#: gtk2_ardour/gain_meter.cc:776 gtk2_ardour/mixer_strip.cc:730 -#: gtk2_ardour/panner_ui.cc:761 +#: gtk2_ardour/gain_meter.cc:688 gtk2_ardour/gain_meter.cc:703 +#, fuzzy +msgid "meter point change" +msgstr "Выбрать текущий интервал" + +#: gtk2_ardour/gain_meter.cc:836 gtk2_ardour/mixer_strip.cc:749 +#: gtk2_ardour/panner_ui.cc:774 msgid "O" msgstr "O" -#: gtk2_ardour/gain_meter.cc:779 gtk2_ardour/panner_ui.cc:764 +#: gtk2_ardour/gain_meter.cc:839 gtk2_ardour/panner_ui.cc:777 msgid "P" msgstr "P" -#: gtk2_ardour/gain_meter.cc:782 gtk2_ardour/panner_ui.cc:767 +#: gtk2_ardour/gain_meter.cc:842 gtk2_ardour/panner_ui.cc:780 msgid "T" msgstr "T" -#: gtk2_ardour/gain_meter.cc:785 gtk2_ardour/panner_ui.cc:770 +#: gtk2_ardour/gain_meter.cc:845 gtk2_ardour/panner_ui.cc:783 msgid "W" msgstr "W" @@ -4496,10 +4543,10 @@ msgstr "Кадр" msgid "Rename Track" msgstr "Переименовать дорожку" -#: gtk2_ardour/io_selector.cc:62 gtk2_ardour/io_selector.cc:796 +#: gtk2_ardour/io_selector.cc:62 gtk2_ardour/io_selector.cc:750 #: gtk2_ardour/connection_editor.cc:61 gtk2_ardour/connection_editor.cc:110 msgid "Rescan" -msgstr "" +msgstr "ПроÑканировать заново" #: gtk2_ardour/io_selector.cc:70 msgid "%1 input" @@ -4511,11 +4558,11 @@ msgstr "%1 выход" #: gtk2_ardour/io_selector.cc:144 gtk2_ardour/route_params_ui.cc:103 msgid "Inputs" -msgstr "Входов" +msgstr "Входы" #: gtk2_ardour/io_selector.cc:144 gtk2_ardour/route_params_ui.cc:104 msgid "Outputs" -msgstr "Выходов" +msgstr "Выходы" #: gtk2_ardour/io_selector.cc:145 msgid "Add Input" @@ -4541,16 +4588,11 @@ msgstr "ОтÑоединить вÑе" msgid "Available connections" msgstr "ДоÑтупные ÑоединениÑ" -#: gtk2_ardour/io_selector.cc:557 gtk2_ardour/io_selector.cc:576 +#: gtk2_ardour/io_selector.cc:549 gtk2_ardour/io_selector.cc:560 msgid "There are no more JACK ports available." -msgstr "" +msgstr "ДоÑтупных портов JACK не оÑталоÑÑŒ." -#: gtk2_ardour/io_selector.cc:651 gtk2_ardour/io_selector.cc:678 -#: gtk2_ardour/io_selector.cc:731 -msgid "port" -msgstr "порт" - -#: gtk2_ardour/io_selector.cc:800 +#: gtk2_ardour/io_selector.cc:754 msgid "ardour: " msgstr "ardour: " @@ -4592,11 +4634,7 @@ msgstr "Ð”Ð»Ñ \"mod5\" назначено кнопок: %1" #: gtk2_ardour/ladspa_pluginui.cc:77 msgid "<span size=\"large\">Presets</span>" -msgstr "" - -#: gtk2_ardour/ladspa_pluginui.cc:168 -msgid "Controls" -msgstr "Управление" +msgstr "<span size=\"large\">ПредуÑтановки</span>" #: gtk2_ardour/ladspa_pluginui.cc:205 msgid "Plugin Editor: could not build control element for port %1" @@ -4604,7 +4642,7 @@ msgstr "Редактор модулей: невозможно Ñоздать ÑÑ #: gtk2_ardour/ladspa_pluginui.cc:296 msgid "Automation control" -msgstr "Контроль атовматизации" +msgstr "Контроль автоматизации" #: gtk2_ardour/location_ui.cc:49 gtk2_ardour/location_ui.cc:52 msgid "Set" @@ -4620,7 +4658,7 @@ msgstr "CD" #: gtk2_ardour/location_ui.cc:59 msgid "SCMS" -msgstr "" +msgstr "SCMS" #: gtk2_ardour/location_ui.cc:60 msgid "Pre-Emphasis" @@ -4632,16 +4670,12 @@ msgstr "Добавить новый интервал" #: gtk2_ardour/location_ui.cc:572 msgid "Add New Range" -msgstr "" +msgstr "Добавить новую облаÑÑ‚ÑŒ" #: gtk2_ardour/location_ui.cc:576 msgid "ardour: locations" msgstr "ardour: интервалы" -#: gtk2_ardour/location_ui.cc:577 -msgid "ardour_locations" -msgstr "ardour_интервалы" - #: gtk2_ardour/location_ui.cc:605 #, fuzzy msgid "Location (CD Index) Markers" @@ -4655,32 +4689,28 @@ msgstr "" msgid "add range marker" msgstr "Добавить маркер облаÑти" -#: gtk2_ardour/main.cc:72 +#: gtk2_ardour/main.cc:73 msgid "ardour is killing itself for a clean exit\n" msgstr "ardour: принудительное завершение работы\n" -#: gtk2_ardour/main.cc:81 -msgid "stopping user interface\n" -msgstr "завершение работы...\n" - -#: gtk2_ardour/main.cc:100 +#: gtk2_ardour/main.cc:99 #, c-format msgid "%d(%d): received signal %d\n" msgstr "%d(%d): принÑÑ‚ Ñигнал %d\n" -#: gtk2_ardour/main.cc:180 +#: gtk2_ardour/main.cc:179 msgid "cannot become new process group leader (%1)" msgstr "" -#: gtk2_ardour/main.cc:207 +#: gtk2_ardour/main.cc:206 msgid "cannot setup signal handling for %1" msgstr "cannot setup signal handling for %1" -#: gtk2_ardour/main.cc:218 +#: gtk2_ardour/main.cc:217 msgid "cannot set default signal mask (%1)" msgstr "cannot set default signal mask (%1)" -#: gtk2_ardour/main.cc:248 +#: gtk2_ardour/main.cc:247 msgid "" "Without a UI style file, ardour will look strange.\n" " Please set ARDOUR2_UI_RC to point to a valid UI style file" @@ -4689,11 +4719,11 @@ msgstr "" "без файла, определÑющего Ñтиль оформлениÑ.\n" "ПожалуйÑта, укажите его [файл] в переменной Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ ARDOUR_UI_RC" -#: gtk2_ardour/main.cc:270 +#: gtk2_ardour/main.cc:268 msgid "Ardour could not connect to JACK." msgstr "Ðе удалоÑÑŒ ÑоединитьÑÑ Ñ Ñервером JACK." -#: gtk2_ardour/main.cc:274 +#: gtk2_ardour/main.cc:272 #, fuzzy msgid "" "There are several possible reasons:\n" @@ -4713,11 +4743,11 @@ msgstr "" "\n" "ПожалуйÑта, проверьте вÑе варианты, возможно потребуетÑÑ (пере)запуÑк JACK." -#: gtk2_ardour/main.cc:316 +#: gtk2_ardour/main.cc:314 msgid "could not load command line session \"%1\"" msgstr "не удалоÑÑŒ загрузить ÑеÑÑию \"%1\", указанную в командной Ñтроке" -#: gtk2_ardour/main.cc:324 +#: gtk2_ardour/main.cc:322 msgid "" "\n" "\n" @@ -4725,52 +4755,52 @@ msgid "" "To create it from the command line, start ardour as \"ardour --new %1" msgstr "" -#: gtk2_ardour/main.cc:383 +#: gtk2_ardour/main.cc:386 msgid "Ardour/GTK " msgstr "Ardour/GTK " -#: gtk2_ardour/main.cc:385 +#: gtk2_ardour/main.cc:388 msgid "" "\n" " (built using " msgstr "" +"\n" +" (Ñобран Ñ Ð¸Ñпользованием " -#: gtk2_ardour/main.cc:389 -msgid " with libardour " -msgstr " Ñ libardour " - -#: gtk2_ardour/main.cc:394 +#: gtk2_ardour/main.cc:391 msgid " and GCC version " msgstr " и верÑией GCC " -#: gtk2_ardour/main.cc:404 +#: gtk2_ardour/main.cc:401 msgid "Copyright (C) 1999-2006 Paul Davis" msgstr "ÐвторÑкие права © 1999-2006 Paul Davis" -#: gtk2_ardour/main.cc:405 +#: gtk2_ardour/main.cc:402 msgid "" "Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel " "Baker" -msgstr "ЧаÑтичные авторÑкие права © Steve Harris, Ari Johnson, Brett Viren, Joel Baker" +msgstr "" +"ЧаÑтичные авторÑкие права © Steve Harris, Ari Johnson, Brett Viren, Joel " +"Baker" -#: gtk2_ardour/main.cc:407 +#: gtk2_ardour/main.cc:404 msgid "Ardour comes with ABSOLUTELY NO WARRANTY" msgstr "Ardour раÑпроÑтранÑетÑÑ Ð‘Ð•Ð—Ðž ВСЯКИХ ГÐÐ ÐÐТИЙ" -#: gtk2_ardour/main.cc:408 +#: gtk2_ardour/main.cc:405 msgid "not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." msgstr "" -#: gtk2_ardour/main.cc:409 +#: gtk2_ardour/main.cc:406 msgid "This is free software, and you are welcome to redistribute it " msgstr "Ðто Ñвободное программное обеÑпечение, Ð’Ñ‹ можете раÑпроÑтранÑÑ‚ÑŒ его" -#: gtk2_ardour/main.cc:410 +#: gtk2_ardour/main.cc:407 #, fuzzy msgid "under certain conditions; see the source for copying conditions." msgstr "на определённых уÑловиÑÑ…; подробнее об Ñтом читайте в файле COPYING." -#: gtk2_ardour/main.cc:420 +#: gtk2_ardour/main.cc:417 msgid "could not create ARDOUR GUI" msgstr "не удалоÑÑŒ Ñоздать графичеÑкий Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð´Ð»Ñ ARDOUR" @@ -4778,7 +4808,7 @@ msgstr "не удалоÑÑŒ Ñоздать графичеÑкий интерфе msgid "Could not connect to JACK server as \"%1\"" msgstr "Ðе удалоÑÑŒ ÑоединитьÑÑ Ñ Ñервером JACK как \"%1\"" -#: gtk2_ardour/main.cc:446 +#: gtk2_ardour/main.cc:447 msgid "could not initialize Ardour." msgstr "не удалоÑÑŒ запуÑтить Ardour." @@ -4795,118 +4825,110 @@ msgstr "Удалить поле" msgid "Marker" msgstr "Маркер" -#: gtk2_ardour/mixer_strip.cc:92 gtk2_ardour/mixer_strip.cc:137 -#: gtk2_ardour/mixer_strip.cc:1191 +#: gtk2_ardour/mixer_strip.cc:94 gtk2_ardour/mixer_strip.cc:139 +#: gtk2_ardour/mixer_strip.cc:1218 msgid "pre" msgstr "" -#: gtk2_ardour/mixer_strip.cc:93 gtk2_ardour/mixer_strip.cc:782 +#: gtk2_ardour/mixer_strip.cc:95 gtk2_ardour/mixer_strip.cc:796 msgid "Comments" msgstr "Комментарии" -#: gtk2_ardour/mixer_strip.cc:116 +#: gtk2_ardour/mixer_strip.cc:118 msgid "Input" msgstr "Вход" -#: gtk2_ardour/mixer_strip.cc:133 gtk2_ardour/mixer_strip.cc:1187 +#: gtk2_ardour/mixer_strip.cc:135 gtk2_ardour/mixer_strip.cc:1214 msgid "input" msgstr "вход" -#: gtk2_ardour/mixer_strip.cc:141 gtk2_ardour/mixer_strip.cc:1195 +#: gtk2_ardour/mixer_strip.cc:143 gtk2_ardour/mixer_strip.cc:1222 msgid "post" msgstr "" -#: gtk2_ardour/mixer_strip.cc:149 +#: gtk2_ardour/mixer_strip.cc:150 msgid "tupni" msgstr "" -#: gtk2_ardour/mixer_strip.cc:205 +#: gtk2_ardour/mixer_strip.cc:204 msgid "Varispeed" msgstr "" -#: gtk2_ardour/mixer_strip.cc:231 gtk2_ardour/mixer_strip.cc:796 +#: gtk2_ardour/mixer_strip.cc:230 gtk2_ardour/mixer_strip.cc:812 msgid "Click to Add/Edit Comments" msgstr "Ðажмите Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ/правки комментариев" -#: gtk2_ardour/mixer_strip.cc:371 +#: gtk2_ardour/mixer_strip.cc:386 msgid "unknown strip width \"%1\" in XML GUI information" msgstr "неизвеÑÑ‚Ð½Ð°Ñ ÑˆÐ¸Ñ€Ð¸Ð½Ð° трека \"%1\" в XML опиÑании" -#: gtk2_ardour/mixer_strip.cc:415 +#: gtk2_ardour/mixer_strip.cc:430 #, fuzzy msgid "record" msgstr "ЗапиÑÑŒ" -#: gtk2_ardour/mixer_strip.cc:417 gtk2_ardour/audio_region_editor.cc:46 -msgid "mute" -msgstr "тихо" - -#: gtk2_ardour/mixer_strip.cc:418 -msgid "solo" -msgstr "Ñоло" - -#: gtk2_ardour/mixer_strip.cc:421 +#: gtk2_ardour/mixer_strip.cc:437 msgid "comments" msgstr "комментарии" -#: gtk2_ardour/mixer_strip.cc:423 +#: gtk2_ardour/mixer_strip.cc:440 msgid "*comments*" msgstr "*комментарии*" -#: gtk2_ardour/mixer_strip.cc:438 +#: gtk2_ardour/mixer_strip.cc:455 msgid "Rec" msgstr "Зап" -#: gtk2_ardour/mixer_strip.cc:440 +#: gtk2_ardour/mixer_strip.cc:457 msgid "M" msgstr "M" -#: gtk2_ardour/mixer_strip.cc:441 +#: gtk2_ardour/mixer_strip.cc:458 msgid "S" msgstr "S" -#: gtk2_ardour/mixer_strip.cc:444 gtk2_ardour/mixer_strip.cc:790 +#: gtk2_ardour/mixer_strip.cc:462 gtk2_ardour/mixer_strip.cc:806 msgid "Cmt" msgstr "" -#: gtk2_ardour/mixer_strip.cc:446 gtk2_ardour/mixer_strip.cc:788 +#: gtk2_ardour/mixer_strip.cc:465 gtk2_ardour/mixer_strip.cc:803 msgid "*Cmt*" msgstr "" -#: gtk2_ardour/mixer_strip.cc:484 gtk2_ardour/mixer_strip.cc:550 -#: gtk2_ardour/redirect_box.cc:1021 +#: gtk2_ardour/mixer_strip.cc:503 gtk2_ardour/mixer_strip.cc:569 +#: gtk2_ardour/redirect_box.cc:1086 msgid "Not connected to JACK - no I/O changes are possible" msgstr "" -#: gtk2_ardour/mixer_strip.cc:584 gtk2_ardour/mixer_strip.cc:600 +#: gtk2_ardour/mixer_strip.cc:603 gtk2_ardour/mixer_strip.cc:619 msgid "could not register new ports required for that connection" msgstr "Ðе удалоÑÑŒ зарегиÑтрировать новые порты Ð´Ð»Ñ Ñтого ÑоединениÑ" -#: gtk2_ardour/mixer_strip.cc:707 +#: gtk2_ardour/mixer_strip.cc:726 msgid " Input" msgstr " Вход" -#: gtk2_ardour/mixer_strip.cc:710 +#: gtk2_ardour/mixer_strip.cc:729 msgid "I" msgstr "Ð’Ð¥" -#: gtk2_ardour/mixer_strip.cc:780 +#: gtk2_ardour/mixer_strip.cc:793 msgid "*Comments*" msgstr "*Комментарии*" -#: gtk2_ardour/mixer_strip.cc:819 +#: gtk2_ardour/mixer_strip.cc:848 msgid ": comment editor" msgstr ": редактор комментариев" -#: gtk2_ardour/mixer_strip.cc:913 +#: gtk2_ardour/mixer_strip.cc:943 msgid "Grp" -msgstr "" +msgstr "Грп" -#: gtk2_ardour/mixer_strip.cc:916 +#: gtk2_ardour/mixer_strip.cc:946 msgid "~G" msgstr "нГр" -#: gtk2_ardour/mixer_strip.cc:964 +#: gtk2_ardour/mixer_strip.cc:995 msgid "Invert Polarity" msgstr "Развернуть полÑрноÑÑ‚ÑŒ" @@ -4918,194 +4940,187 @@ msgstr "Каналы" msgid "Group" msgstr "Группа" -#: gtk2_ardour/mixer_ui.cc:209 gtk2_ardour/mixer_ui.cc:389 +#: gtk2_ardour/mixer_ui.cc:206 gtk2_ardour/mixer_ui.cc:386 msgid "ardour: mixer" msgstr "ardour: микшер" -#: gtk2_ardour/mixer_ui.cc:210 -msgid "ardour_mixer" -msgstr "ardour_микшер" - -#: gtk2_ardour/mixer_ui.cc:361 +#: gtk2_ardour/mixer_ui.cc:358 msgid "ardour: mixer: " msgstr "ardour: микшер: " -#: gtk2_ardour/mixer_ui.cc:592 +#: gtk2_ardour/mixer_ui.cc:589 msgid "signal" msgstr "Ñигнал" -#: gtk2_ardour/mixer_ui.cc:741 +#: gtk2_ardour/mixer_ui.cc:738 msgid "track display list item for renamed strip not found!" msgstr "" #: gtk2_ardour/new_session_dialog.cc:41 -msgid "New Session Name :" -msgstr "Ð˜Ð¼Ñ Ð½Ð¾Ð²Ð¾Ð¹ ÑеÑÑии:" +msgid "Name :" +msgstr "ИмÑ:" + +#: gtk2_ardour/new_session_dialog.cc:45 gtk2_ardour/new_session_dialog.cc:46 +#: gtk2_ardour/new_session_dialog.cc:47 gtk2_ardour/new_session_dialog.cc:48 +msgid "channels" +msgstr "канал(-ов)" -#: gtk2_ardour/new_session_dialog.cc:45 -msgid "Create Session Directory In :" -msgstr "Создать каталог ÑеÑÑии в:" +#: gtk2_ardour/new_session_dialog.cc:66 +msgid "<b>Busses</b>" +msgstr "<b>Шины</b>" + +#: gtk2_ardour/new_session_dialog.cc:67 +msgid "<b>Inputs</b>" +msgstr "<b>Входы</b>" + +#: gtk2_ardour/new_session_dialog.cc:68 +msgid "<b>Outputs</b>" +msgstr "<b>Выходы</b>" -#: gtk2_ardour/new_session_dialog.cc:47 -msgid "Use Session Template :" -msgstr "ИÑпользовать шаблон:" +#: gtk2_ardour/new_session_dialog.cc:70 +msgid "Create Folder In :" +msgstr "Создать папку ÑеÑÑии в:" -#: gtk2_ardour/new_session_dialog.cc:49 -msgid "Channel Count" -msgstr "ЧиÑло каналов" +#: gtk2_ardour/new_session_dialog.cc:72 +msgid "Template :" +msgstr "Шаблон:" -#: gtk2_ardour/new_session_dialog.cc:50 +#: gtk2_ardour/new_session_dialog.cc:74 msgid "Create Monitor Bus" msgstr "Создать контрольную шину" -#: gtk2_ardour/new_session_dialog.cc:57 +#: gtk2_ardour/new_session_dialog.cc:81 msgid "Create Master Bus" msgstr "Создать маÑтер-шину" -#: gtk2_ardour/new_session_dialog.cc:59 -msgid "Automatically Connect Inputs" -msgstr "ÐвтоматичеÑкое подключение ко входам" - -#: gtk2_ardour/new_session_dialog.cc:60 gtk2_ardour/new_session_dialog.cc:71 -msgid "Port Limit" -msgstr "Портов не более чем" +#: gtk2_ardour/new_session_dialog.cc:83 +msgid "Automatically Connect to Physical Inputs" +msgstr "ÐвтоматичеÑки подключитьÑÑ Ðº физичеÑким входам" -#: gtk2_ardour/new_session_dialog.cc:68 -msgid "<b>Track/Bus Inputs</b>" -msgstr "<b>Входы дорожек/шин</b>" +#: gtk2_ardour/new_session_dialog.cc:84 gtk2_ardour/new_session_dialog.cc:97 +msgid "Use only" +msgstr "ИÑпользовать только" -#: gtk2_ardour/new_session_dialog.cc:70 +#: gtk2_ardour/new_session_dialog.cc:96 msgid "Automatically Connect Outputs" -msgstr "ÐвтоматичеÑкое подключение к выходам" +msgstr "ÐвтоматичеÑки подключитьÑÑ Ðº выходам" -#: gtk2_ardour/new_session_dialog.cc:79 -msgid "Connect to Master Bus" -msgstr "СоединитьÑÑ Ñ Ð¼Ð°Ñтер-шиной" +#: gtk2_ardour/new_session_dialog.cc:105 +msgid "... to Master Bus" +msgstr "... к маÑтер-шине" -#: gtk2_ardour/new_session_dialog.cc:80 -msgid "Connect to Physical Outputs" -msgstr "СоединитьÑÑ Ñ Ñ„Ð¸Ð·Ð¸Ñ‡ÐµÑкими выходами" +#: gtk2_ardour/new_session_dialog.cc:106 +msgid "... to Physical Outputs" +msgstr "... к физичеÑким выходам" -#: gtk2_ardour/new_session_dialog.cc:84 -msgid "<b>Track/Bus Outputs</b>" -msgstr "<b>Выходы дорожек/шин</b>" - -#: gtk2_ardour/new_session_dialog.cc:87 +#: gtk2_ardour/new_session_dialog.cc:112 msgid "Advanced Options" msgstr "РаÑширенные параметры" -#: gtk2_ardour/new_session_dialog.cc:95 -msgid "Open Recent Session" -msgstr "Открыть недавнюю ÑеÑÑию" +#: gtk2_ardour/new_session_dialog.cc:120 +msgid "Recent:" +msgstr "Ðедавние:" -#: gtk2_ardour/new_session_dialog.cc:131 -msgid "Open Session File :" -msgstr "Открыть файл ÑеÑÑии:" +#: gtk2_ardour/new_session_dialog.cc:157 +msgid "Browse:" +msgstr "Обзор:" -#: gtk2_ardour/new_session_dialog.cc:281 +#: gtk2_ardour/new_session_dialog.cc:335 msgid "New Session" msgstr "Создать ÑеÑÑию" -#: gtk2_ardour/new_session_dialog.cc:283 +#: gtk2_ardour/new_session_dialog.cc:337 msgid "Open Session" msgstr "Открыть ÑеÑÑию" -#: gtk2_ardour/new_session_dialog.cc:288 +#: gtk2_ardour/new_session_dialog.cc:342 msgid "ardour: session control" msgstr "СеÑÑии Ardour" -#: gtk2_ardour/new_session_dialog.cc:317 +#: gtk2_ardour/new_session_dialog.cc:383 msgid "select template" msgstr "Выберите шаблон" -#: gtk2_ardour/new_session_dialog.cc:323 +#: gtk2_ardour/new_session_dialog.cc:389 msgid "select session file" msgstr "Выберите файл ÑеÑÑии" -#: gtk2_ardour/new_session_dialog.cc:332 +#: gtk2_ardour/new_session_dialog.cc:398 msgid "select directory" msgstr "Выберите каталог" -#: gtk2_ardour/option_editor.cc:75 +#: gtk2_ardour/option_editor.cc:73 msgid "SMPTE offset is negative" msgstr "Смещение SMPTE отрицательно" -#: gtk2_ardour/option_editor.cc:101 +#: gtk2_ardour/option_editor.cc:99 msgid "ardour: options editor" -msgstr "Редактор параметров" - -#: gtk2_ardour/option_editor.cc:102 -msgid "ardour_option_editor" -msgstr "ardour_редактор_параметров" +msgstr "ardour: параметры программы" -#: gtk2_ardour/option_editor.cc:126 +#: gtk2_ardour/option_editor.cc:124 msgid "Paths/Files" -msgstr "Пути/Файлы" +msgstr "Пути/файлы" -#: gtk2_ardour/option_editor.cc:127 +#: gtk2_ardour/option_editor.cc:125 msgid "Kbd/Mouse" -msgstr "Клавиатура/Мышь" +msgstr "Клавиатура/мышь" -#: gtk2_ardour/option_editor.cc:130 +#: gtk2_ardour/option_editor.cc:128 msgid "Layers & Fades" msgstr "Слои и фейды" -#: gtk2_ardour/option_editor.cc:134 +#: gtk2_ardour/option_editor.cc:132 msgid "MIDI" msgstr "MIDI" -#: gtk2_ardour/option_editor.cc:222 +#: gtk2_ardour/option_editor.cc:220 msgid "session RAID path" msgstr "Путь к файлам RAID-ÑеÑÑий" -#: gtk2_ardour/option_editor.cc:227 -msgid "Soundfile Search Paths" -msgstr "Путь к звуковым файлам" - -#: gtk2_ardour/option_editor.cc:252 gtk2_ardour/option_editor.cc:258 -#: gtk2_ardour/option_editor.cc:670 gtk2_ardour/option_editor.cc:697 +#: gtk2_ardour/option_editor.cc:236 gtk2_ardour/option_editor.cc:242 +#: gtk2_ardour/option_editor.cc:652 gtk2_ardour/option_editor.cc:672 msgid "internal" msgstr "внутренний" -#: gtk2_ardour/option_editor.cc:271 +#: gtk2_ardour/option_editor.cc:255 msgid "Short crossfade length (msecs)" -msgstr "" +msgstr "ДлительноÑÑ‚ÑŒ короткого кроÑÑфейда (мÑ)" -#: gtk2_ardour/option_editor.cc:283 +#: gtk2_ardour/option_editor.cc:267 msgid "Destructive crossfade length (msecs)" -msgstr "" +msgstr "ДлительноÑÑ‚ÑŒ деÑтруктивного кроÑÑфейда (мÑ)" -#: gtk2_ardour/option_editor.cc:342 +#: gtk2_ardour/option_editor.cc:327 msgid "SMPTE Offset" msgstr "Смещение SMPTE" -#: gtk2_ardour/option_editor.cc:409 gtk2_ardour/option_editor.cc:416 -#: gtk2_ardour/option_editor.cc:419 gtk2_ardour/option_editor.cc:565 +#: gtk2_ardour/option_editor.cc:394 gtk2_ardour/option_editor.cc:401 +#: gtk2_ardour/option_editor.cc:404 gtk2_ardour/option_editor.cc:552 msgid "online" msgstr "" -#: gtk2_ardour/option_editor.cc:416 gtk2_ardour/option_editor.cc:417 -#: gtk2_ardour/option_editor.cc:562 +#: gtk2_ardour/option_editor.cc:401 gtk2_ardour/option_editor.cc:402 +#: gtk2_ardour/option_editor.cc:549 msgid "offline" msgstr "" -#: gtk2_ardour/option_editor.cc:617 +#: gtk2_ardour/option_editor.cc:605 msgid "Choose Click" msgstr "Выберите щелчок метронома" -#: gtk2_ardour/option_editor.cc:636 +#: gtk2_ardour/option_editor.cc:624 msgid "Choose Click Emphasis" msgstr "Выберите акцентирующий щелчок метронома" -#: gtk2_ardour/option_editor.cc:750 +#: gtk2_ardour/option_editor.cc:724 msgid "Click audio file" msgstr "Файл щелчков метронома" -#: gtk2_ardour/option_editor.cc:756 +#: gtk2_ardour/option_editor.cc:730 msgid "Click emphasis audiofile" msgstr "Файл акцентирующих щелчков метронома" -#: gtk2_ardour/option_editor.cc:793 +#: gtk2_ardour/option_editor.cc:767 msgid "" "The auditioner is a dedicated mixer strip used\n" "for listening to specific regions outside the context\n" @@ -5116,35 +5131,35 @@ msgstr "" "Ð´Ð»Ñ Ð¿Ñ€Ð¾ÑÐ»ÑƒÑˆÐ¸Ð²Ð°Ð½Ð¸Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ‘Ð½Ð½Ñ‹Ñ… облаÑтей вне общего контекÑта микÑа. \n" "Его можно Ñоединить как любой другой канал микшера." -#: gtk2_ardour/option_editor.cc:866 +#: gtk2_ardour/option_editor.cc:840 msgid "Edit using" msgstr "Редактировать Ñ" -#: gtk2_ardour/option_editor.cc:873 gtk2_ardour/option_editor.cc:900 +#: gtk2_ardour/option_editor.cc:847 gtk2_ardour/option_editor.cc:874 msgid "+ button" msgstr "+ клавиша" -#: gtk2_ardour/option_editor.cc:893 +#: gtk2_ardour/option_editor.cc:867 msgid "Delete using" msgstr "УдалÑÑ‚ÑŒ Ñ" -#: gtk2_ardour/option_editor.cc:920 +#: gtk2_ardour/option_editor.cc:894 msgid "Ignore snap using" msgstr "Игнорировать привÑзку Ñ" -#: gtk2_ardour/opts.cc:46 +#: gtk2_ardour/opts.cc:47 msgid "Usage: " msgstr "ИÑпользование: " -#: gtk2_ardour/opts.cc:47 +#: gtk2_ardour/opts.cc:48 msgid " -v, --version Show version information\n" msgstr " -v, --version Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ верÑии программы\n" -#: gtk2_ardour/opts.cc:48 +#: gtk2_ardour/opts.cc:49 msgid " -h, --help Print this message\n" msgstr " -h, --help Показать Ñто Ñообщение\n" -#: gtk2_ardour/opts.cc:49 +#: gtk2_ardour/opts.cc:50 msgid "" " -b, --bindings Print all possible keyboard binding " "names\n" @@ -5152,45 +5167,46 @@ msgstr "" " -b, --bindings Показать вÑе доÑтупные \"горÑчие\" " "клавиши\n" -#: gtk2_ardour/opts.cc:50 +#: gtk2_ardour/opts.cc:51 msgid " -n, --show-splash Show splash screen\n" msgstr " -n, --no-splash Ðе показывать заÑтавку\n" -#: gtk2_ardour/opts.cc:51 +#: gtk2_ardour/opts.cc:52 msgid "" " -c, --name name Use a specific jack client name, default " "is ardour\n" msgstr "" -" -c, --jack-client-name Ð¸Ð¼Ñ Ð˜Ñпользовать другое Ð¸Ð¼Ñ ÐºÐ»Ð¸ÐµÐ½Ñ‚Ð° к JACK, " -"по умолчанию — Ardour\n" +" -c, --jack-client-name Ð¸Ð¼Ñ Ð˜Ñпользовать другое Ð¸Ð¼Ñ ÐºÐ»Ð¸ÐµÐ½Ñ‚Ð° к JACK, по " +"умолчанию — Ardour\n" -#: gtk2_ardour/opts.cc:52 +#: gtk2_ardour/opts.cc:53 msgid "" " -N, --new session-name Create a new session from the command " "line\n" msgstr " -N, --new имÑ-ÑеÑÑии Создать новую ÑеÑÑию из командной Ñтроки\n" -#: gtk2_ardour/opts.cc:53 -msgid " -o, --use-hw-optimizations Try to use h/w specific optimizations\n" +#: gtk2_ardour/opts.cc:54 +msgid " -O, --no-hw-optimizations Disable h/w specific optimizations\n" msgstr "" -#: gtk2_ardour/opts.cc:55 +#: gtk2_ardour/opts.cc:56 #, fuzzy msgid " -V, --novst Do not use VST support\n" msgstr " -n, --no-splash Ðе показывать заÑтавку\n" -#: gtk2_ardour/opts.cc:57 +#: gtk2_ardour/opts.cc:58 msgid " [session-name] Name of session to load\n" msgstr " [имÑ-ÑеÑÑии] Загрузить ÑеÑÑию Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼ именем\n" -#: gtk2_ardour/opts.cc:58 +#: gtk2_ardour/opts.cc:59 msgid " -C, --curvetest filename Curve algorithm debugger\n" msgstr "" -#: gtk2_ardour/opts.cc:59 -#, fuzzy -msgid " -g, --gtktheme Allow GTK to load a theme\n" -msgstr " -h, --help Показать Ñто Ñообщение\n" +#: gtk2_ardour/opts.cc:60 +msgid "" +" -k, --keybindings filename Name of key bindings to load (default is " +"~/.ardour2/ardour.bindings)\n" +msgstr "" #: gtk2_ardour/pan_automation_time_axis.cc:70 msgid "You need to select which line to edit" @@ -5200,42 +5216,42 @@ msgstr "" msgid "add pan automation event" msgstr "добавить автомат. Ñобытие панорамы" -#: gtk2_ardour/panner2d.cc:589 gtk2_ardour/panner_ui.cc:425 -#: gtk2_ardour/plugin_ui.cc:146 +#: gtk2_ardour/panner2d.cc:589 gtk2_ardour/panner_ui.cc:438 +#: gtk2_ardour/plugin_ui.cc:152 msgid "Bypass" msgstr "Обход" -#: gtk2_ardour/panner_ui.cc:56 gtk2_ardour/panner_ui.cc:223 +#: gtk2_ardour/panner_ui.cc:58 gtk2_ardour/panner_ui.cc:225 #, fuzzy msgid "link" msgstr "в" -#: gtk2_ardour/panner_ui.cc:67 +#: gtk2_ardour/panner_ui.cc:69 msgid "Pan automation mode" msgstr "Режим автоматизации панорамы" -#: gtk2_ardour/panner_ui.cc:68 +#: gtk2_ardour/panner_ui.cc:70 msgid "Pan automation type" msgstr "Тип автоматизации панорамы" -#: gtk2_ardour/panner_ui.cc:79 +#: gtk2_ardour/panner_ui.cc:81 msgid "panning link control" msgstr "" -#: gtk2_ardour/panner_ui.cc:81 +#: gtk2_ardour/panner_ui.cc:83 msgid "panning link direction" msgstr "" -#: gtk2_ardour/panner_ui.cc:233 +#: gtk2_ardour/panner_ui.cc:235 msgid "L" msgstr "L" -#: gtk2_ardour/panner_ui.cc:328 +#: gtk2_ardour/panner_ui.cc:341 #, c-format msgid "panner for channel %zu" msgstr "" -#: gtk2_ardour/panner_ui.cc:435 +#: gtk2_ardour/panner_ui.cc:448 msgid "Reset all" msgstr "СброÑить вÑе" @@ -5247,15 +5263,15 @@ msgstr "СпиÑки воÑпроизведениÑ" msgid "Playlists grouped by track" msgstr "СпиÑки, Ñгруппированные по дорожке" -#: gtk2_ardour/playlist_selector.cc:98 +#: gtk2_ardour/playlist_selector.cc:108 msgid "ardour: playlist for " msgstr "ardour: ÑпиÑок воÑÐ¿Ñ€Ð¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ð´Ð»Ñ " -#: gtk2_ardour/playlist_selector.cc:114 +#: gtk2_ardour/playlist_selector.cc:124 msgid "Other tracks" msgstr "Другие дорожки" -#: gtk2_ardour/playlist_selector.cc:130 +#: gtk2_ardour/playlist_selector.cc:141 msgid "unassigned" msgstr "" @@ -5283,7 +5299,7 @@ msgstr "# выходов" #: gtk2_ardour/plugin_selector.cc:68 msgid "Plugins to be Connected to Insert" -msgstr "" +msgstr "РаÑширениÑ, подключаемые к возврату" #: gtk2_ardour/plugin_selector.cc:80 gtk2_ardour/plugin_selector.cc:98 msgid "Available plugins" @@ -5319,11 +5335,11 @@ msgid "" "version of ardour)" msgstr "" -#: gtk2_ardour/plugin_ui.cc:166 +#: gtk2_ardour/plugin_ui.cc:172 msgid "Plugin preset %1 not found" msgstr "" -#: gtk2_ardour/plugin_ui.cc:176 +#: gtk2_ardour/plugin_ui.cc:182 msgid "Name of New Preset:" msgstr "Ð˜Ð¼Ñ Ð½Ð¾Ð²Ð¾Ð¹ предуÑтановки:" @@ -5335,15 +5351,15 @@ msgstr "" msgid "add automation event to " msgstr "" -#: gtk2_ardour/redirect_box.cc:226 +#: gtk2_ardour/redirect_box.cc:235 msgid "New send" msgstr "Ðовый поÑыл" -#: gtk2_ardour/redirect_box.cc:227 +#: gtk2_ardour/redirect_box.cc:236 msgid "Show send controls" msgstr "" -#: gtk2_ardour/redirect_box.cc:386 +#: gtk2_ardour/redirect_box.cc:417 msgid "" "You attempted to add a plugin (%1).\n" "The plugin has %2 inputs\n" @@ -5354,7 +5370,7 @@ msgid "" "part of the signal." msgstr "" -#: gtk2_ardour/redirect_box.cc:398 +#: gtk2_ardour/redirect_box.cc:429 msgid "" "You attempted to add a plugin (%1).\n" "The plugin has %2 inputs\n" @@ -5366,7 +5382,7 @@ msgid "" "support this type of configuration." msgstr "" -#: gtk2_ardour/redirect_box.cc:411 +#: gtk2_ardour/redirect_box.cc:442 msgid "" "You attempted to add a plugin (%1).\n" "\n" @@ -5379,34 +5395,34 @@ msgid "" "Ardour does not understand what to do in such situations.\n" msgstr "" -#: gtk2_ardour/redirect_box.cc:499 +#: gtk2_ardour/redirect_box.cc:539 msgid "Pre-fader inserts, sends & plugins:" msgstr "" -#: gtk2_ardour/redirect_box.cc:502 +#: gtk2_ardour/redirect_box.cc:542 msgid "Post-fader inserts, sends & plugins:" msgstr "" -#: gtk2_ardour/redirect_box.cc:650 +#: gtk2_ardour/redirect_box.cc:708 msgid "" "You cannot reorder this set of redirects\n" "in that way because the inputs and\n" "outputs do not work correctly." msgstr "" -#: gtk2_ardour/redirect_box.cc:750 +#: gtk2_ardour/redirect_box.cc:821 #, fuzzy msgid "rename redirect" msgstr "ardour: переименовать облаÑÑ‚ÑŒ" -#: gtk2_ardour/redirect_box.cc:824 gtk2_ardour/redirect_box.cc:872 +#: gtk2_ardour/redirect_box.cc:898 gtk2_ardour/redirect_box.cc:946 msgid "" "Copying the set of redirects on the clipboard failed,\n" "probably because the I/O configuration of the plugins\n" "could not match the configuration of this track." msgstr "" -#: gtk2_ardour/redirect_box.cc:894 +#: gtk2_ardour/redirect_box.cc:968 #, fuzzy msgid "" "Do you really want to remove all redirects from this track?\n" @@ -5415,7 +5431,7 @@ msgstr "" "Ð’Ñ‹ дейÑтвительно хотите удалить трек \"%1\" ?\n" "(отмена невозможна)" -#: gtk2_ardour/redirect_box.cc:897 +#: gtk2_ardour/redirect_box.cc:971 #, fuzzy msgid "" "Do you really want to remove all redirects from this bus?\n" @@ -5424,174 +5440,107 @@ msgstr "" "Ð’Ñ‹ дейÑтвительно хотите удалить трек \"%1\" ?\n" "(отмена невозможна)" -#: gtk2_ardour/redirect_box.cc:902 +#: gtk2_ardour/redirect_box.cc:976 msgid "Yes, remove them all" msgstr "Да, удалить их вÑе" -#: gtk2_ardour/redirect_box.cc:938 +#: gtk2_ardour/redirect_box.cc:1012 #, fuzzy msgid "ardour: %1" msgstr "ardour: " -#: gtk2_ardour/redirect_box.cc:983 -#, fuzzy -msgid "ardour: %1: %2 (by %3)" -msgstr "ardour: " - -#: gtk2_ardour/redirect_box.cc:1069 +#: gtk2_ardour/redirect_box.cc:1134 msgid "New Plugin ..." -msgstr "Ðовое раÑширение..." +msgstr "Добавить раÑширение..." -#: gtk2_ardour/redirect_box.cc:1070 +#: gtk2_ardour/redirect_box.cc:1136 msgid "New Insert" -msgstr "Ðовый возврат" +msgstr "Добавить возврат" -#: gtk2_ardour/redirect_box.cc:1071 +#: gtk2_ardour/redirect_box.cc:1138 msgid "New Send ..." -msgstr "Ðовый поÑыл..." +msgstr "Добавить поÑыл..." -#: gtk2_ardour/redirect_box.cc:1083 +#: gtk2_ardour/redirect_box.cc:1152 msgid "Deselect All" msgstr "СнÑÑ‚ÑŒ вÑе выделениÑ" -#: gtk2_ardour/redirect_box.cc:1090 +#: gtk2_ardour/redirect_box.cc:1159 msgid "Activate all" msgstr "Ðктивировать вÑе" -#: gtk2_ardour/redirect_box.cc:1091 +#: gtk2_ardour/redirect_box.cc:1160 msgid "Deactivate all" msgstr "Деактивировать вÑе" -#: gtk2_ardour/audio_region_editor.cc:44 -msgid "NAME:" -msgstr "ИМЯ:" - -#: gtk2_ardour/audio_region_editor.cc:45 -msgid "lock" -msgstr "запереть" +#: gtk2_ardour/redirect_box.cc:1339 +#, fuzzy +msgid "ardour: %1: %2 (by %3)" +msgstr "ardour: " #: gtk2_ardour/audio_region_editor.cc:47 -msgid "opaque" -msgstr "затенить" +msgid "NAME:" +msgstr "ИМЯ:" #: gtk2_ardour/audio_region_editor.cc:48 -#: gtk2_ardour/audio_region_editor.cc:191 -#: gtk2_ardour/audio_region_editor.cc:225 -msgid "active" -msgstr "активно" - -#: gtk2_ardour/audio_region_editor.cc:49 -msgid "visible" -msgstr "Видимы" - -#: gtk2_ardour/audio_region_editor.cc:52 -msgid "Layer" -msgstr "Слой" - -#: gtk2_ardour/audio_region_editor.cc:53 msgid "play" msgstr "воÑпроизвеÑти" -#: gtk2_ardour/audio_region_editor.cc:60 -msgid "ENVELOPE" -msgstr "ОГИБÐЮЩÐЯ" - -#: gtk2_ardour/audio_region_editor.cc:106 -msgid "mute this region" -msgstr "отключить воÑпроизведение Ñтой облаÑти" - -#: gtk2_ardour/audio_region_editor.cc:107 -msgid "regions underneath this one cannot be heard" -msgstr "облаÑти ниже Ñтой не могут быть проÑлушаны" - -#: gtk2_ardour/audio_region_editor.cc:108 -msgid "prevent any changes to this region" -msgstr "запретить любые Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтой облаÑти" - -#: gtk2_ardour/audio_region_editor.cc:109 -msgid "use the gain envelope during playback" -msgstr "иÑпользовать огибающую при воÑпроизведении" - -#: gtk2_ardour/audio_region_editor.cc:110 -msgid "show the gain envelope" -msgstr "отображать огибающую" - -#: gtk2_ardour/audio_region_editor.cc:111 -msgid "use fade in curve during playback" -msgstr "иÑпользовать вводную кривую при воÑпроизведении" - -#: gtk2_ardour/audio_region_editor.cc:112 -msgid "use fade out curve during playback" -msgstr "иÑпользовать выводную кривую при воÑпроизведении" - -#: gtk2_ardour/audio_region_editor.cc:113 +#: gtk2_ardour/audio_region_editor.cc:67 msgid "audition this region" msgstr "проÑлушать облаÑÑ‚ÑŒ" -#: gtk2_ardour/audio_region_editor.cc:146 +#: gtk2_ardour/audio_region_editor.cc:82 msgid "START:" msgstr "ÐÐЧÐЛО:" -#: gtk2_ardour/audio_region_editor.cc:148 +#: gtk2_ardour/audio_region_editor.cc:84 msgid "END:" msgstr "КОÐЕЦ:" -#: gtk2_ardour/audio_region_editor.cc:150 +#: gtk2_ardour/audio_region_editor.cc:86 msgid "LENGTH:" msgstr "ДЛИÐÐ:" -#: gtk2_ardour/audio_region_editor.cc:190 -msgid "FADE IN" -msgstr "ВВЕДЕÐИЕ Ð’ УРОВЕÐЬ" - -#: gtk2_ardour/audio_region_editor.cc:192 -#: gtk2_ardour/audio_region_editor.cc:226 -msgid "msecs" -msgstr "мÑ" - -#: gtk2_ardour/audio_region_editor.cc:224 -msgid "FADE OUT" -msgstr "СВЕДЕÐИЕ Ð’ ÐОЛЬ" - -#: gtk2_ardour/audio_region_editor.cc:264 +#: gtk2_ardour/audio_region_editor.cc:122 msgid "ardour: region " msgstr "ardour: облаÑÑ‚ÑŒ " -#: gtk2_ardour/audio_region_editor.cc:401 -msgid "fade in edit" -msgstr "редактировать введение в уровень" +#: gtk2_ardour/audio_region_editor.cc:202 +#, fuzzy +msgid "change region start position" +msgstr "ОблаÑти/положение" -#: gtk2_ardour/audio_region_editor.cc:413 -msgid "fade out edit" -msgstr "редактировать Ñведение в ноль" +#: gtk2_ardour/audio_region_editor.cc:219 +#, fuzzy +msgid "change region end position" +msgstr "ОблаÑти/положение" -#: gtk2_ardour/audio_region_view.cc:901 +#: gtk2_ardour/audio_region_editor.cc:240 +#, fuzzy +msgid "change region length" +msgstr "редактировать введение в уровень" + +#: gtk2_ardour/audio_region_view.cc:939 #, fuzzy msgid "add gain control point" msgstr "иÑпользовать контрольные выходы" #: gtk2_ardour/route_params_ui.cc:85 msgid "Tracks/Buses" -msgstr "Дорожи/Шины" +msgstr "Дорожи/шины" #: gtk2_ardour/route_params_ui.cc:105 -#, fuzzy msgid "Pre-fader Redirects" -msgstr "Предобработка" +msgstr "Предфейдерные перенаправлениÑ" #: gtk2_ardour/route_params_ui.cc:106 -#, fuzzy msgid "Post-fader Redirects" -msgstr "ПоÑтобработка" +msgstr "ПоÑлефейдерные перенаправлениÑ" #: gtk2_ardour/route_params_ui.cc:140 -#, fuzzy msgid "ardour: track/bus inspector" -msgstr "ardour: добавить трек/шину" - -#: gtk2_ardour/route_params_ui.cc:141 -msgid "ardour_route_parameters" -msgstr "ardour_параметры_маршрутов" +msgstr "ardour: добавить дорожку/шину" #: gtk2_ardour/route_params_ui.cc:202 msgid "route display list item for renamed route not found!" @@ -5599,12 +5548,11 @@ msgstr "" #: gtk2_ardour/route_params_ui.cc:449 msgid "NO TRACK" -msgstr "ÐЕТ ТРЕКОВ" +msgstr "ÐЕТ ДОРОЖЕК" #: gtk2_ardour/route_params_ui.cc:672 -#, fuzzy msgid "ardour: track/bus inspector: " -msgstr "ardour: добавить трек/шину" +msgstr "ardour: инÑпектор дорожек/шин" #: gtk2_ardour/route_params_ui.cc:676 msgid "No Route Selected" @@ -5615,56 +5563,60 @@ msgstr "Ðет выбранных маршрутов" msgid "ardour: track/bus/inspector: no route selected" msgstr "ardour: параметры маршрутов: нет выбранных маршрутов" -#: gtk2_ardour/route_ui.cc:131 +#: gtk2_ardour/route_ui.cc:144 msgid "mute change" msgstr "" -#: gtk2_ardour/route_ui.cc:207 gtk2_ardour/route_ui.cc:218 +#: gtk2_ardour/route_ui.cc:222 gtk2_ardour/route_ui.cc:233 msgid "solo change" msgstr "" -#: gtk2_ardour/route_ui.cc:282 +#: gtk2_ardour/route_ui.cc:291 +msgid "Not connected to JACK - cannot engage record" +msgstr "" + +#: gtk2_ardour/route_ui.cc:303 msgid "rec-enable change" msgstr "" -#: gtk2_ardour/route_ui.cc:480 +#: gtk2_ardour/route_ui.cc:501 #, fuzzy msgid "Solo-safe" msgstr "Соло" -#: gtk2_ardour/route_ui.cc:502 +#: gtk2_ardour/route_ui.cc:523 msgid "Pre Fader" -msgstr "Пред фейдер" +msgstr "Предфейдер" -#: gtk2_ardour/route_ui.cc:509 +#: gtk2_ardour/route_ui.cc:530 msgid "Post Fader" -msgstr "ПоÑÑ‚ фейдер" +msgstr "ПоÑлефейдер" -#: gtk2_ardour/route_ui.cc:516 +#: gtk2_ardour/route_ui.cc:537 msgid "Control Outs" msgstr "Контрольные выходы" -#: gtk2_ardour/route_ui.cc:523 +#: gtk2_ardour/route_ui.cc:544 msgid "Main Outs" msgstr "Главные выходы" -#: gtk2_ardour/route_ui.cc:560 +#: gtk2_ardour/route_ui.cc:581 msgid "mix group solo change" msgstr "" -#: gtk2_ardour/route_ui.cc:599 +#: gtk2_ardour/route_ui.cc:620 msgid "mix group mute change" msgstr "" -#: gtk2_ardour/route_ui.cc:616 +#: gtk2_ardour/route_ui.cc:637 msgid "mix group rec-enable change" msgstr "" -#: gtk2_ardour/route_ui.cc:634 gtk2_ardour/visual_time_axis.cc:237 +#: gtk2_ardour/route_ui.cc:655 gtk2_ardour/visual_time_axis.cc:242 msgid "ardour: color selection" msgstr "ardour: выбор цвета" -#: gtk2_ardour/route_ui.cc:710 +#: gtk2_ardour/route_ui.cc:731 #, fuzzy msgid "" "Do you really want to remove track \"%1\" ?\n" @@ -5675,7 +5627,7 @@ msgstr "" "Ð’Ñ‹ дейÑтвительно хотите удалить трек \"%1\" ?\n" "(отмена невозможна)" -#: gtk2_ardour/route_ui.cc:712 +#: gtk2_ardour/route_ui.cc:733 msgid "" "Do you really want to remove bus \"%1\" ?\n" "(cannot be undone)" @@ -5683,98 +5635,91 @@ msgstr "" "Ð’Ñ‹ дейÑтвительно хотите удалить шину \"%1\" ?\n" "(отмена невозможна)" -#: gtk2_ardour/route_ui.cc:716 gtk2_ardour/visual_time_axis.cc:279 +#: gtk2_ardour/route_ui.cc:737 gtk2_ardour/visual_time_axis.cc:284 msgid "Yes, remove it." msgstr "Да, удалить." -#: gtk2_ardour/route_ui.cc:744 +#: gtk2_ardour/route_ui.cc:758 #, fuzzy msgid "New Name: " msgstr "новое имÑ: " -#: gtk2_ardour/sfdb_ui.cc:61 -msgid "Add Field..." -msgstr "Добавить поле..." - -#: gtk2_ardour/sfdb_ui.cc:62 -msgid "Remove Field" -msgstr "Удалить поле" +#: gtk2_ardour/sfdb_ui.cc:60 +#, fuzzy +msgid "Apply" +msgstr "воÑпроизвеÑти" -#: gtk2_ardour/sfdb_ui.cc:65 +#: gtk2_ardour/sfdb_ui.cc:63 msgid "Soundfile Info" msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ файле" -#: gtk2_ardour/sfdb_ui.cc:83 -msgid "Field" -msgstr "Критерий" - -#: gtk2_ardour/sfdb_ui.cc:84 -msgid "Value" -msgstr "Значение" +#: gtk2_ardour/sfdb_ui.cc:120 +msgid "Length: %1" +msgstr "" -#: gtk2_ardour/sfdb_ui.cc:167 +#: gtk2_ardour/sfdb_ui.cc:126 #, fuzzy -msgid "channels" +msgid "Channels: %1" msgstr "отмена" -#: gtk2_ardour/sfdb_ui.cc:167 +#: gtk2_ardour/sfdb_ui.cc:129 #, fuzzy -msgid "samplerate" +msgid "Samplerate: %1" msgstr "Разделить облаÑÑ‚ÑŒ" -#: gtk2_ardour/sfdb_ui.cc:168 -#, fuzzy -msgid "resolution" -msgstr "ВоÑпроизвеÑти выделенное" - -#: gtk2_ardour/sfdb_ui.cc:168 -#, fuzzy -msgid "format" -msgstr "Ðорм." +#: gtk2_ardour/sfdb_ui.cc:132 +msgid "Timecode: %1" +msgstr "" -#: gtk2_ardour/sfdb_ui.cc:189 +#: gtk2_ardour/sfdb_ui.cc:166 #, fuzzy msgid "Could not read file: %1 (%2)." msgstr "Редактор: не удалоÑÑŒ открыть файл \"%1\" (%2)" -#: gtk2_ardour/sfdb_ui.cc:205 +#: gtk2_ardour/sfdb_ui.cc:184 msgid "Could not access soundfile: " msgstr "Файл недоÑтупен: " -#: gtk2_ardour/sfdb_ui.cc:244 +#: gtk2_ardour/sfdb_ui.cc:267 +msgid "Add to Region list" +msgstr "Добавить в ÑпиÑок облаÑтей" + +#: gtk2_ardour/sfdb_ui.cc:268 +msgid "Add to selected Track(s)" +msgstr "Добавить в выделенные дорожки" + +#: gtk2_ardour/sfdb_ui.cc:269 +msgid "Add as new Track(s)" +msgstr "Добавить как новую дорожку(-и)" + +#: gtk2_ardour/sfdb_ui.cc:270 #, fuzzy -msgid "Name for Field" -msgstr "Ð˜Ð¼Ñ Ð¾Ð±Ð»Ð°Ñти: " +msgid "Add as new Tape Track(s)" +msgstr "Добавить как новую tape дорожку(-и)" -#: gtk2_ardour/sfdb_ui.cc:356 +#: gtk2_ardour/sfdb_ui.cc:313 msgid "Split Channels" -msgstr "" +msgstr "Разделить каналы" -#: gtk2_ardour/sfdb_ui.cc:363 +#: gtk2_ardour/sfdb_ui.cc:320 msgid "Create a region for each channel" -msgstr "" +msgstr "Создать облаÑÑ‚ÑŒ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ канала" -#: gtk2_ardour/sfdb_ui.cc:365 +#: gtk2_ardour/sfdb_ui.cc:322 msgid "Embed" -msgstr "" +msgstr "Ð’Ñтроить" -#: gtk2_ardour/sfdb_ui.cc:367 -#, fuzzy +#: gtk2_ardour/sfdb_ui.cc:324 msgid "Link to an external file" -msgstr "Ð’Ñтавить внешний аудиофайл" +msgstr "СоÑлатьÑÑ Ð½Ð° внешний файл" -#: gtk2_ardour/sfdb_ui.cc:369 +#: gtk2_ardour/sfdb_ui.cc:328 msgid "Import" -msgstr "Импорт" +msgstr "Импортировать" -#: gtk2_ardour/sfdb_ui.cc:371 +#: gtk2_ardour/sfdb_ui.cc:330 msgid "Copy a file to the session folder" -msgstr "" - -#: gtk2_ardour/sfdb_ui.cc:438 -#, fuzzy -msgid "programming error: %1" -msgstr "ошибка в программе: " +msgstr "Скопировать файл в папку проекта" #: gtk2_ardour/tempo_dialog.cc:18 gtk2_ardour/tempo_dialog.cc:35 msgid "Beats per minute" @@ -5844,27 +5789,27 @@ msgstr "некорректное определение ноты (%1)" msgid "gTortnam" msgstr "" -#: gtk2_ardour/time_axis_view.cc:550 +#: gtk2_ardour/time_axis_view.cc:583 msgid "Largest" msgstr "ОгромнаÑ" -#: gtk2_ardour/time_axis_view.cc:551 +#: gtk2_ardour/time_axis_view.cc:584 msgid "Large" msgstr "БольшаÑ" -#: gtk2_ardour/time_axis_view.cc:552 +#: gtk2_ardour/time_axis_view.cc:585 msgid "Larger" msgstr "Больше" -#: gtk2_ardour/time_axis_view.cc:554 +#: gtk2_ardour/time_axis_view.cc:587 msgid "Smaller" msgstr "Меньше" -#: gtk2_ardour/time_axis_view.cc:555 +#: gtk2_ardour/time_axis_view.cc:588 msgid "Small" msgstr "МаленькаÑ" -#: gtk2_ardour/time_axis_view.cc:869 +#: gtk2_ardour/time_axis_view.cc:903 msgid "unknown track height name \"%1\" in XML GUI information" msgstr "неизвеÑтное Ð¸Ð¼Ñ ÑˆÐ¸Ñ€Ð¸Ð½Ñ‹ трека \"%1\" в XML опиÑании" @@ -5880,15 +5825,20 @@ msgstr "" msgid "programming error: request for non-existent audio range (%1)!" msgstr "ошибка в программе: request for non-existent audio range (%1)!" -#: gtk2_ardour/utils.cc:107 gtk2_ardour/utils.cc:150 +#: gtk2_ardour/utils.cc:118 gtk2_ardour/utils.cc:161 msgid "bad XPM header %1" msgstr "ошибка в XPM заголовке %1" -#: gtk2_ardour/utils.cc:332 +#: gtk2_ardour/utils.cc:285 msgid "missing RGBA style for \"%1\"" msgstr "" -#: gtk2_ardour/visual_time_axis.cc:276 +#: gtk2_ardour/utils.cc:467 +#, fuzzy +msgid "cannot find icon image for %1" +msgstr "cannot setup signal handling for %1" + +#: gtk2_ardour/visual_time_axis.cc:281 msgid "" "Do you really want to remove track \"%1\" ?\n" "(cannot be undone)" @@ -5896,14 +5846,10 @@ msgstr "" "Ð’Ñ‹ дейÑтвительно хотите удалить трек \"%1\" ?\n" "(отмена невозможна)" -#: gtk2_ardour/visual_time_axis.cc:325 +#: gtk2_ardour/visual_time_axis.cc:330 msgid "new name: " msgstr "новое имÑ: " -#: gtk2_ardour/visual_time_axis.cc:336 -msgid "A track already exists with that name" -msgstr "Трек Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует" - #: gtk2_ardour/connection_editor.cc:51 msgid "ardour: connections" msgstr "ardour: ÑоединениÑ" diff --git a/gtk2_ardour/po/sv_SE.po b/gtk2_ardour/po/sv_SE.po index 107e3d36ad..cc567f3fb9 100644 --- a/gtk2_ardour/po/sv_SE.po +++ b/gtk2_ardour/po/sv_SE.po @@ -728,6 +728,14 @@ msgstr "GÃ¥ till slutet av sessionen" msgid "Play loop range" msgstr "Spela loop-omfÃ¥ng" +#: gtk2_ardour/ardour_ui_ed.cc:243 +msgid "Transition To Roll" +msgstr "ÖvergÃ¥ng till Rullning" + +#: gtk2_ardour/ardour_ui_ed.cc:247 +msgid "Transition To Reverse" +msgstr "ÖvergÃ¥ng till Motsatt riktning" + #: ../ardour_ui2.cc:296 msgid "Return to last playback start when stopped" msgstr "Ã…tervänd till senaste startmarkörpunkten vid stopp" @@ -742,11 +750,11 @@ msgstr "Rimlig inljudsmedhörning" #: ../ardour_ui2.cc:299 msgid "Start recording at auto-punch start" -msgstr "Starta inspelning vid auto-punch-start" +msgstr "Starta inspelning vid autoinslagsstart" #: ../ardour_ui2.cc:300 msgid "Stop recording at auto-punch end" -msgstr "Stanna inspelning vid auto-punch-slut" +msgstr "Stanna inspelning vid autoinslagsslut" #: ../ardour_ui2.cc:301 msgid "Enable/Disable audio click" @@ -1025,7 +1033,7 @@ msgstr "Start/Stopp" #: ../ardour_ui_ed.cc:225 msgid "Stop + Forget Capture" -msgstr "Stanna + Glöm inspelning" +msgstr "Stanna + Ã¥ngra inspelning" #: ../ardour_ui_ed.cc:228 msgid "Play Loop Range" @@ -1053,15 +1061,15 @@ msgstr "BakÃ¥tspolning (snabb)" #: ../ardour_ui_ed.cc:247 msgid "Forward" -msgstr "Framspolning" +msgstr "FramÃ¥tspolning" #: ../ardour_ui_ed.cc:250 msgid "Forward (Slow)" -msgstr "Framspolning (lÃ¥ngsam)" +msgstr "FramÃ¥tspolning (lÃ¥ngsam)" #: ../ardour_ui_ed.cc:253 msgid "Forward (Fast)" -msgstr "Framspolning (snabb)" +msgstr "FramÃ¥tspolning (snabb)" #: ../ardour_ui_ed.cc:256 msgid "Goto Zero" @@ -1269,6 +1277,10 @@ msgstr "Skicka MIDI-gensvar" msgid "Use MIDI control" msgstr "Använd MIDI-kontroll" +#: gtk2_ardour/ardour_ui_ed.cc:399 +msgid "Use OSC" +msgstr "Använd OSC" + #: gtk2_ardour/ardour_ui_ed.cc:437 msgid "Auto-connect inputs to physical inputs" msgstr "Anslut automatiskt ingÃ¥ngar till fysiska ingÃ¥ngar" @@ -1289,6 +1301,18 @@ msgstr "Ansluta automatiskt utgÃ¥ngar till master-bussen" msgid "Manually connect outputs" msgstr "Anslut utgÃ¥ngar manuellt" +#: gtk2_ardour/ardour_ui_ed.cc:475 +msgid "Remote ID assigned by User" +msgstr "Fjärr-ID bestäms av användaren" + +#: gtk2_ardour/ardour_ui_ed.cc:477 +msgid "Remote ID follows order of Mixer" +msgstr "Fjärr-ID följer mixerordning" + +#: gtk2_ardour/ardour_ui_ed.cc:479 +msgid "Remote ID follows order of Editor" +msgstr "Fjärr-ID flöjer redigerareordning" + #: ../ardour_ui_ed.cc:376 msgid "Connect new track inputs to hardware" msgstr "Koppla nya ingÃ¥ngar till hÃ¥rdvara" @@ -1342,6 +1366,10 @@ msgstr "-12dB volymreduktion för snabbspolning" msgid "Rec-enable stays engaged at stop" msgstr "Inspelningsläge ändras ej vid stopp" +#: gtk2_ardour/ardour_ui_ed.cc:410 +msgid "Region equivalents overlap" +msgstr "Likvärda regioner överlappar" + #. session options #: ../ardour_ui_ed.cc:418 msgid "Do not run plugins while recording" @@ -1351,6 +1379,11 @@ msgstr "Kör ej insticksprogram vid inspelning" msgid "Latched solo" msgstr "LÃ¥st solo" +#: gtk2_ardour/ardour_ui_ed.cc:409 +msgid "Show solo muting" +msgstr "Visa solotystning" + + #: ../ardour_ui_ed.cc:426 msgid "Solo in-place" msgstr "In place-solo " @@ -1371,11 +1404,10 @@ msgstr "Nya fulla övertoningar är pÃ¥slagna" msgid "ST" msgstr "HT" -#: gtk2_ardour/audio_clock.cc:1796 gtk2_ardour/editor.cc:180 +#: gtk2_ardour/audio_clock.cc:1801 gtk2_ardour/editor.cc:180 msgid "Timecode" msgstr "Tidskod" - #: ../ardour_ui_options.cc:407 ../ardour_ui_options.cc:417 #: ../ardour_ui_options.cc:484 msgid "Internal" @@ -2052,7 +2084,7 @@ msgstr "OmfÃ¥ngsmarkörer" #: ../editor.cc:193 ../editor_rulers.cc:391 msgid "Loop/Punch Ranges" -msgstr "Loop-/punch-markörer" +msgstr "Loop-/inslagsmarkörer" #: ../editor.cc:215 msgid "range" @@ -2177,7 +2209,7 @@ msgstr "" #. force name #: ../editor.cc:1281 ../editor.cc:1290 ../editor_markers.cc:895 msgid "Punch" -msgstr "" +msgstr "Inslag" #: ../editor.cc:1438 ../editor_mouse.cc:1741 msgid "programming error: fade in canvas item has no regionview data pointer!" @@ -2360,7 +2392,7 @@ msgstr "Redigeringsmarkör till slutet" #: ../editor.cc:1909 ../gain_meter.cc:180 ../gain_meter.cc:808 #: ../panner_ui.cc:97 ../panner_ui.cc:802 msgid "Trim" -msgstr "Beskära" +msgstr "Beskär" #: ../editor.cc:1912 msgid "Split" @@ -2378,14 +2410,14 @@ msgstr "Duplicera" msgid "Fill Track" msgstr "Fyll spÃ¥ret" +#: gtk2_ardour/editor.cc:1776 +msgid "Play range" +msgstr "Spela omfÃ¥ng" + #: ../editor.cc:1923 msgid "Destroy" msgstr "Förstör" -#: ../editor.cc:1953 -msgid "Play range" -msgstr "Spela omfÃ¥ng" - #: ../editor.cc:1954 msgid "Loop range" msgstr "Loop-omfÃ¥ng" @@ -2406,13 +2438,17 @@ msgstr "Separera omfÃ¥ng till regionlista" msgid "Select all in range" msgstr "Välj allt i omfÃ¥ng" +#: gtk2_ardour/editor_markers.cc:515 +msgid "Select Range" +msgstr "Välj omfÃ¥ng" + #: ../editor.cc:1968 ../editor.cc:2013 msgid "Set range to loop range" msgstr "Ställ in omfÃ¥ng till loop-omfÃ¥nget" #: ../editor.cc:1969 ../editor.cc:2014 msgid "Set range to punch range" -msgstr "Ställ in omfÃ¥ng till punch-omfÃ¥nget" +msgstr "Ställ in omfÃ¥ng till inslagsomfÃ¥nget" #: ../editor.cc:1971 msgid "Crop region to range" @@ -2609,7 +2645,7 @@ msgstr "Gör om (%1)" #: ../editor.cc:3505 msgid "... as new track" -msgstr "... som ny region" +msgstr "... som nytt spÃ¥r" #: ../editor.cc:3506 msgid "... as new region" @@ -2759,7 +2795,7 @@ msgstr "Visa redigeringsmixer" #: ../editor_actions.cc:54 msgid "Span Entire Overlap" -msgstr "Sträck över hela överlappnngen" +msgstr "Sträck över hela överlappningen" #: ../editor_actions.cc:56 ../editor_actions.cc:383 msgid "Short" @@ -2779,7 +2815,7 @@ msgstr "Startmarkören till nästa regionslut" #: ../editor_actions.cc:70 msgid "Playhead to Next Region Sync" -msgstr "Startmarkören till nästa" +msgstr "Startmarkören till nästa regionsynk.-punkt" #: ../editor_actions.cc:73 msgid "Playhead to Previous Region Start" @@ -2819,19 +2855,19 @@ msgstr "Redigeringsmarkören till förra regionssynk.-punkten" #: ../editor_actions.cc:94 msgid "Playhead to Range Start" -msgstr "Startmarkören till regionstarten" +msgstr "Startmarkören till omfÃ¥ngstarten" #: ../editor_actions.cc:96 msgid "Playhead to Range End" -msgstr "Startmarkören till regionslutet" +msgstr "Startmarkören till omfÃ¥ngslutet" #: ../editor_actions.cc:99 msgid "Edit Cursor to Range Start" -msgstr "Redigeringsmarkören till regionstarten" +msgstr "Redigeringsmarkören till omfÃ¥ngstarten" #: ../editor_actions.cc:101 msgid "Edit Cursor to Range End" -msgstr "Redigeringsmarkören till regionslutet" +msgstr "Redigeringsmarkören till omfÃ¥ngslutet" #: ../editor_actions.cc:104 ../editor_ops.cc:1364 msgid "select all" @@ -2859,7 +2895,7 @@ msgstr "Välj allt mellan markörerna" #: ../editor_actions.cc:118 msgid "Select All in Punch Range" -msgstr "Välj allt i punch-omfÃ¥nget" +msgstr "Välj allt i inslagsomfÃ¥nget" #: ../editor_actions.cc:120 msgid "Select All in Loop Range" @@ -2881,6 +2917,10 @@ msgstr "Lägg till Plats frÃ¥n startmarkören" msgid "Nudge Forward" msgstr "Knuffa framÃ¥t" +#: gtk2_ardour/editor_actions.cc:129 +msgid "Add Mark from Playhead" +msgstr "Lägg till markör utifrÃ¥n startmarkören" + #: ../editor_actions.cc:132 msgid "Nudge Next Forward" msgstr "Knuffa nästa framÃ¥t" @@ -2945,6 +2985,10 @@ msgstr "Centrera redigeringsmarkören" msgid "Playhead Forward" msgstr "Startmarkören framÃ¥t" +#: gtk2_ardour/editor_actions.cc:168 +msgid "Playhead forward" +msgstr "Startmarkören framÃ¥t" + #: ../editor_actions.cc:167 msgid "Playhead Backward" msgstr "Startmarkören bakÃ¥t" @@ -3221,19 +3265,19 @@ msgstr "Fallande" #: ../editor_actions.cc:329 msgid "By Region Name" -msgstr "utifrÃ¥n Regionsnamn" +msgstr "utifrÃ¥n Regionens namn" #: ../editor_actions.cc:331 msgid "By Region Length" -msgstr "utifrÃ¥n Regionslängd" +msgstr "utifrÃ¥n Regionens längd" #: ../editor_actions.cc:333 msgid "By Region Position" -msgstr "utifrÃ¥n Regionsposition" +msgstr "utifrÃ¥n Regionens position" #: ../editor_actions.cc:335 msgid "By Region Timestamp" -msgstr "utifrÃ¥n Regionstiddstämpel" +msgstr "utifrÃ¥n Regionens tidstämpel" #: ../editor_actions.cc:337 msgid "By Region Start in File" @@ -3245,19 +3289,19 @@ msgstr "utifrÃ¥n Regionens slut i filen" #: ../editor_actions.cc:341 msgid "By Source File Name" -msgstr "utifrÃ¥n Källfilnamn" +msgstr "utifrÃ¥n Källfilens namn" #: ../editor_actions.cc:343 msgid "By Source File Length" -msgstr "utifrÃ¥n Källfillängd" +msgstr "utifrÃ¥n Källfilens längd" #: ../editor_actions.cc:345 msgid "By Source File Creation Date" -msgstr "" +msgstr "utifrÃ¥n Källfilens skapelsedatum" #: ../editor_actions.cc:347 msgid "By Source Filesystem" -msgstr "utifrÃ¥n Källfilsskapelsedatum" +msgstr "utifrÃ¥n Källfilsystemet" #. the next two are duplicate items with different names for use in two different contexts #: ../editor_actions.cc:353 @@ -3480,7 +3524,7 @@ msgstr "Ta bort markör" #: ../editor_markers.cc:478 ../editor_markers.cc:534 msgid "Locate to Range Mark" -msgstr "Flytta starmarköer till omfÃ¥ngsmarkör" +msgstr "Flytta startmarköer till omfÃ¥ngsmarkör" #: ../editor_markers.cc:479 ../editor_markers.cc:535 msgid "Play from Range Mark" @@ -3524,7 +3568,7 @@ msgstr "Sätt loop-omfÃ¥ng här" #: ../editor_markers.cc:520 msgid "Set Punch Range" -msgstr "Sätt punch-omfÃ¥ng här" +msgstr "Sätt inslagsomfÃ¥ng här" #: ../editor_markers.cc:814 msgid "New Name:" @@ -3548,7 +3592,7 @@ msgstr "ställ in loop-omfÃ¥ng" #: ../editor_markers.cc:890 msgid "set punch range" -msgstr "ställ in punch-omfÃ¥ng" +msgstr "ställ in inslagsomfÃ¥ng" #: ../editor_mouse.cc:102 msgid "Editor::event_frame() used on unhandled event type %1" @@ -3765,7 +3809,7 @@ msgstr "välj allt inom omfÃ¥ng" #: ../editor_ops.cc:1538 msgid "select all from punch" -msgstr "välj allt frÃ¥n punch" +msgstr "välj allt frÃ¥n inslag" #: ../editor_ops.cc:1560 msgid "select all from loop" @@ -3979,11 +4023,19 @@ msgstr "Ny platsmarkör" msgid "Clear all locations" msgstr "Rensa alla platsmarkörer" +#: gtk2_ardour/editor_rulers.cc:347 +msgid "Unhide locations" +msgstr "Visa platsmarkörer" + #. ruler_items.push_back (MenuElem (_("New Range"))); #: ../editor_rulers.cc:317 msgid "Clear all ranges" msgstr "Rensa alla omfÃ¥ng" +#: gtk2_ardour/editor_rulers.cc:353 +msgid "Unhide ranges" +msgstr "Visa omfång" + #: ../editor_rulers.cc:326 msgid "New Tempo" msgstr "Nytt tempo" @@ -4908,11 +4960,11 @@ msgstr "Använd endast" #: gtk2_ardour/new_session_dialog.cc:105 msgid "... to Master Bus" -msgstr "...till Master-bussen" +msgstr "... till Master-bussen" #: gtk2_ardour/new_session_dialog.cc:106 msgid "... to Physical Outputs" -msgstr "...till fysiska utgångar" +msgstr "... till fysiska utgångar" #: ../new_session_dialog.cc:56 ../new_session_dialog.cc:67 @@ -4925,7 +4977,7 @@ msgstr "<b>Spår/bussingångar</b>" #: ../new_session_dialog.cc:66 msgid "Automatically Connect Outputs" -msgstr "Anslut automatiskt utgångar" +msgstr "Anslut automatiskt utgångar..." #: ../new_session_dialog.cc:75 msgid "Connect to Master Bus" @@ -4976,6 +5028,10 @@ msgstr "Öppna session" msgid "ardour: session control" msgstr "ardour: session" +#: gtk2_ardour/new_session_dialog.cc:347 +msgid "Session Control" +msgstr "Session" + #: ../new_session_dialog.cc:305 msgid "select template" msgstr "välj mall" @@ -5924,3 +5980,105 @@ msgstr "nytt namn: " #: ../visual_time_axis.cc:335 msgid "A track already exists with that name" msgstr "Ett spår med det namnet existerar redan" + +#: gtk2_ardour/sfdb_ui.cc:273 +msgid "Add to Region list" +msgstr "Lägg till i regionlistan" + +#: gtk2_ardour/sfdb_ui.cc:274 +msgid "Add to selected Track(s)" +msgstr "Lägg till i valt spår" + +#: gtk2_ardour/sfdb_ui.cc:275 +msgid "Add as new Track(s)" +msgstr "Lägg till som nytt/nya spår" + +#: gtk2_ardour/sfdb_ui.cc:276 +msgid "Add as new Tape Track(s)" +msgstr "Lägg till som Band-spår" + +#: gtk2_ardour/sfdb_ui.cc:285 +msgid "Search" +msgstr "Sök" + +#: gtk2_ardour/sfdb_ui.cc:302 +msgid "Files" +msgstr "Filer" + +#: gtk2_ardour/sfdb_ui.cc:303 +msgid "Tags" +msgstr "Taggar" + +#: gtk2_ardour/sfdb_ui.cc:129 +msgid "Format: n/a" +msgstr "" + +#: gtk2_ardour/sfdb_ui.cc:130 +msgid "Channels: n/a" +msgstr "Kanaler: n/a" + +#: gtk2_ardour/sfdb_ui.cc:131 +msgid "Samplerate: n/a" +msgstr "Samplefrekvens: n/a" + +#: gtk2_ardour/sfdb_ui.cc:132 +msgid "Timecode: n/a" +msgstr "Tidskod: n/a" + +#: gtk2_ardour/sfdb_ui.cc:142 +msgid "Length: %1" +msgstr "Längd: %1" + +#: gtk2_ardour/sfdb_ui.cc:144 +msgid "Channels: %1" +msgstr "Kanaler: %1" + +#: gtk2_ardour/sfdb_ui.cc:145 +msgid "Samplerate: %1" +msgstr "Samplingsfrekvens: %1" + +#: gtk2_ardour/sfdb_ui.cc:146 +msgid "Timecode: %1" +msgstr "Tidskod: %1" + +#: gtk2_ardour/sfdb_ui.cc:61 +msgid "Apply" +msgstr "Verkställ" + +#: gtk2_ardour/sfdb_ui.cc:70 +msgid "comma seperated tags" +msgstr "komma-separerade taggar" + + +#: gtk2_ardour/editor.cc:127 gtk2_ardour/editor.cc:3529 +#: gtk2_ardour/editor_actions.cc:287 +msgid "Magnetic" +msgstr "Magnetisk" + +#: gtk2_ardour/editor.cc:132 gtk2_ardour/editor.cc:3546 +#: gtk2_ardour/export_dialog.cc:138 gtk2_ardour/export_dialog.cc:154 +#: gtk2_ardour/export_dialog.cc:1066 gtk2_ardour/export_dialog.cc:1070 +msgid "Left" +msgstr "Vänster" + +#: gtk2_ardour/editor.cc:133 gtk2_ardour/editor.cc:3548 +#: gtk2_ardour/export_dialog.cc:139 gtk2_ardour/export_dialog.cc:155 +msgid "Right" +msgstr "Höger" + +#: gtk2_ardour/editor.cc:134 gtk2_ardour/editor.cc:3550 +msgid "Center" +msgstr "Mitten" + +#: gtk2_ardour/editor.cc:135 gtk2_ardour/editor.cc:3552 +msgid "Playhead" +msgstr "Startmarkören" + +#: gtk2_ardour/ardour_ui2.cc:835 gtk2_ardour/ardour_ui2.cc:858 +msgid "stop" +msgstr "stopp" + +#: gtk2_ardour/audio_time_axis.cc:273 +msgid "Logarithmic" +msgstr "Logaritmisk" + diff --git a/gtk2_ardour/prompter.cc b/gtk2_ardour/prompter.cc index a10bd92f72..0e1732b237 100644 --- a/gtk2_ardour/prompter.cc +++ b/gtk2_ardour/prompter.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include "prompter.h" diff --git a/gtk2_ardour/prompter.h b/gtk2_ardour/prompter.h index 5e8e71f3c5..4e97e64e6f 100644 --- a/gtk2_ardour/prompter.h +++ b/gtk2_ardour/prompter.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_prompter_h__ diff --git a/gtk2_ardour/public_editor.h b/gtk2_ardour/public_editor.h index 2e00b632b7..4b282b2f14 100644 --- a/gtk2_ardour/public_editor.h +++ b/gtk2_ardour/public_editor.h @@ -14,7 +14,6 @@ #include <pbd/statefuldestructible.h> #include "editing.h" -#include "keyboard_target.h" #include "canvas.h" #include "selection.h" @@ -73,11 +72,11 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway virtual void set_mouse_mode (Editing::MouseMode, bool force = false) = 0; virtual void step_mouse_mode (bool next) = 0; virtual Editing::MouseMode current_mouse_mode () = 0; - virtual void add_imageframe_time_axis(const string & track_name, void*) = 0; - virtual void add_imageframe_marker_time_axis(const string & track_name, TimeAxisView* marked_track, void*) = 0; + virtual void add_imageframe_time_axis(const std::string & track_name, void*) = 0; + virtual void add_imageframe_marker_time_axis(const std::string & track_name, TimeAxisView* marked_track, void*) = 0; virtual void connect_to_image_compositor() = 0; virtual void scroll_timeaxis_to_imageframe_item(const TimeAxisViewItem* item) = 0; - virtual TimeAxisView* get_named_time_axis(const string & name) = 0; + virtual TimeAxisView* get_named_time_axis(const std::string & name) = 0; virtual void consider_auditioning (boost::shared_ptr<ARDOUR::Region>) = 0; virtual void set_show_waveforms (bool yn) = 0; virtual bool show_waveforms() const = 0; @@ -112,6 +111,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway virtual void new_playlists () = 0; virtual void copy_playlists () = 0; virtual void clear_playlists () = 0; + virtual void select_all_tracks () = 0; virtual bool set_selected_track (TimeAxisView&, Selection::Operation op = Selection::Set, bool no_remove = false) = 0; virtual void set_selected_mixer_strip (TimeAxisView&) = 0; virtual void hide_track_in_display (TimeAxisView& tv) = 0; @@ -134,8 +134,8 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway virtual void remove_last_capture () = 0; virtual void maximise_editing_space() = 0; virtual void restore_editing_space() = 0; + virtual nframes_t edit_cursor_position(bool sync) = 0; - sigc::signal<void,Editing::DisplayControl> DisplayControlChanged; sigc::signal<void> ZoomFocusChanged; sigc::signal<void> ZoomChanged; sigc::signal<void> Resized; diff --git a/gtk2_ardour/redirect_automation_line.cc b/gtk2_ardour/redirect_automation_line.cc index 1ea5013295..b1b19d530f 100644 --- a/gtk2_ardour/redirect_automation_line.cc +++ b/gtk2_ardour/redirect_automation_line.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include "public_editor.h" diff --git a/gtk2_ardour/redirect_automation_line.h b/gtk2_ardour/redirect_automation_line.h index ad39f6625c..71e4d23e64 100644 --- a/gtk2_ardour/redirect_automation_line.h +++ b/gtk2_ardour/redirect_automation_line.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_redirect_automation_line_h__ diff --git a/gtk2_ardour/redirect_automation_time_axis.cc b/gtk2_ardour/redirect_automation_time_axis.cc index 529c0b565d..acffda4ff1 100644 --- a/gtk2_ardour/redirect_automation_time_axis.cc +++ b/gtk2_ardour/redirect_automation_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <ardour/redirect.h> diff --git a/gtk2_ardour/redirect_box.cc b/gtk2_ardour/redirect_box.cc index d9a7eb1aec..d3e616eb0b 100644 --- a/gtk2_ardour/redirect_box.cc +++ b/gtk2_ardour/redirect_box.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> @@ -25,6 +24,8 @@ #include <pbd/convert.h> +#include <glibmm/miscutils.h> + #include <gtkmm/messagedialog.h> #include <gtkmm2ext/gtk_ui.h> @@ -33,6 +34,7 @@ #include <gtkmm2ext/utils.h> #include <gtkmm2ext/stop_signal.h> #include <gtkmm2ext/doi.h> +#include <gtkmm2ext/window_title.h> #include <ardour/ardour.h> #include <ardour/session.h> @@ -398,16 +400,16 @@ RedirectBox::insert_plugin_chosen (boost::shared_ptr<Plugin> plugin) uint32_t err_streams; if (_route->add_redirect (redirect, this, &err_streams)) { - wierd_plugin_dialog (*plugin, err_streams, _route); + weird_plugin_dialog (*plugin, err_streams, _route); // XXX SHAREDPTR delete plugin here .. do we even need to care? } } } void -RedirectBox::wierd_plugin_dialog (Plugin& p, uint32_t streams, boost::shared_ptr<IO> io) +RedirectBox::weird_plugin_dialog (Plugin& p, uint32_t streams, boost::shared_ptr<IO> io) { - ArdourDialog dialog ("wierd plugin dialog"); + ArdourDialog dialog (_("ardour: weird plugin dialog")); Label label; /* i hate this kind of code */ @@ -702,7 +704,7 @@ RedirectBox::compute_redirect_sort_keys () /* now tell them about the problem */ - ArdourDialog dialog ("wierd plugin dialog"); + ArdourDialog dialog (_("ardour: weird plugin dialog")); Label label; label.set_text (_("\ @@ -955,21 +957,31 @@ could not match the configuration of this track."); void RedirectBox::all_redirects_active (bool state) { - _route->all_redirects_active (state); + _route->all_redirects_active (_placement, state); } void -RedirectBox::clear_redirects() +RedirectBox::clear_redirects () { string prompt; vector<string> choices; if (boost::dynamic_pointer_cast<AudioTrack>(_route) != 0) { - prompt = _("Do you really want to remove all redirects from this track?\n" - "(this cannot be undone)"); + if (_placement == PreFader) { + prompt = _("Do you really want to remove all pre-fader redirects from this track?\n" + "(this cannot be undone)"); + } else { + prompt = _("Do you really want to remove all post-fader redirects from this track?\n" + "(this cannot be undone)"); + } } else { - prompt = _("Do you really want to remove all redirects from this bus?\n" - "(this cannot be undone)"); + if (_placement == PreFader) { + prompt = _("Do you really want to remove all pre-fader redirects from this bus?\n" + "(this cannot be undone)"); + } else { + prompt = _("Do you really want to remove all post-fader redirects from this bus?\n" + "(this cannot be undone)"); + } } choices.push_back (_("Cancel")); @@ -978,7 +990,7 @@ RedirectBox::clear_redirects() Gtkmm2ext::Choice prompter (prompt, choices); if (prompter.run () == 1) { - _route->clear_redirects (this); + _route->clear_redirects (_placement, this); } } @@ -1008,11 +1020,12 @@ RedirectBox::edit_redirect (boost::shared_ptr<Redirect> redirect) if (send->get_gui() == 0) { - string title; - title = string_compose(_("ardour: %1"), send->name()); - send_ui = new SendUIWindow (send, _session); - send_ui->set_title (title); + + WindowTitle title(Glib::get_application_name()); + title += send->name(); + send_ui->set_title (title.get_string()); + send->set_gui (send_ui); } else { @@ -1049,7 +1062,10 @@ RedirectBox::edit_redirect (boost::shared_ptr<Redirect> redirect) ARDOUR_UI::instance()->the_editor().ensure_float (*plugin_ui); } - plugin_ui->set_title (generate_redirect_title (plugin_insert)); + WindowTitle title(Glib::get_application_name()); + title += generate_redirect_title (plugin_insert); + plugin_ui->set_title (title.get_string()); + plugin_insert->set_gui (plugin_ui); // change window title when route name is changed @@ -1316,8 +1332,12 @@ RedirectBox::route_name_changed (void* src, PluginUIWindow* plugin_ui, boost::we { ENSURE_GUI_THREAD(bind (mem_fun (*this, &RedirectBox::route_name_changed), src, plugin_ui, wpi)); boost::shared_ptr<PluginInsert> pi (wpi.lock()); + + if (pi) { - plugin_ui->set_title (generate_redirect_title (pi)); + WindowTitle title(Glib::get_application_name()); + title += generate_redirect_title (pi); + plugin_ui->set_title (title.get_string()); } } @@ -1336,6 +1356,6 @@ RedirectBox::generate_redirect_title (boost::shared_ptr<PluginInsert> pi) maker += " ..."; } - return string_compose(_("ardour: %1: %2 (by %3)"), _route->name(), pi->name(), maker); + return string_compose(_("%1: %2 (by %3)"), _route->name(), pi->name(), maker); } diff --git a/gtk2_ardour/redirect_box.h b/gtk2_ardour/redirect_box.h index 7ab7d03cac..7e93efee1b 100644 --- a/gtk2_ardour/redirect_box.h +++ b/gtk2_ardour/redirect_box.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_redirect_box__ @@ -195,7 +194,7 @@ class RedirectBox : public Gtk::HBox gint idle_delete_redirect (boost::weak_ptr<ARDOUR::Redirect>); - void wierd_plugin_dialog (ARDOUR::Plugin& p, uint32_t streams, boost::shared_ptr<ARDOUR::IO> io); + void weird_plugin_dialog (ARDOUR::Plugin& p, uint32_t streams, boost::shared_ptr<ARDOUR::IO> io); static RedirectBox* _current_redirect_box; static bool enter_box (GdkEventCrossing*, RedirectBox*); diff --git a/gtk2_ardour/region_editor.h b/gtk2_ardour/region_editor.h index 70590b0db5..394ad6bcfb 100644 --- a/gtk2_ardour/region_editor.h +++ b/gtk2_ardour/region_editor.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: /local/undo/gtk2_ardour/region_editor.h 5 2006-05-31T02:48:48.738745Z paul $ */ #ifndef __gtk_ardour_region_edit_h__ diff --git a/gtk2_ardour/region_selection.cc b/gtk2_ardour/region_selection.cc index 34810691f5..8074383141 100644 --- a/gtk2_ardour/region_selection.cc +++ b/gtk2_ardour/region_selection.cc @@ -31,12 +31,16 @@ using namespace sigc; RegionSelection::RegionSelection () { + RegionView::RegionViewGoingAway.connect (mem_fun(*this, &RegionSelection::remove_it)); + _current_start = 0; _current_end = 0; } RegionSelection::RegionSelection (const RegionSelection& other) { + RegionView::RegionViewGoingAway.connect (mem_fun(*this, &RegionSelection::remove_it)); + for (RegionSelection::const_iterator i = other.begin(); i != other.end(); ++i) { add (*i); } @@ -44,8 +48,6 @@ RegionSelection::RegionSelection (const RegionSelection& other) _current_end = other._current_end; } - - RegionSelection& RegionSelection::operator= (const RegionSelection& other) { @@ -86,8 +88,6 @@ RegionSelection::add (RegionView* rv) return false; } - rv->RegionViewGoingAway.connect (mem_fun(*this, &RegionSelection::remove_it)); - if (rv->region()->first_frame() < _current_start || empty()) { _current_start = rv->region()->first_frame(); } @@ -114,31 +114,33 @@ RegionSelection::remove_it (RegionView *rv) bool RegionSelection::remove (RegionView* rv) { - RegionSelection::iterator i; + RegionSelection::iterator r; - if ((i = find (begin(), end(), rv)) != end()) { - - erase (i); + if ((r = find (begin(), end(), rv)) != end()) { // remove from layer sorted list _bylayer.remove (rv); - if (empty()) { + if (size() == 1) { + + /* this is the last one, so when we delete it + we will be empty. + */ _current_start = 0; _current_end = 0; } else { - boost::shared_ptr<Region> region ((*i)->region()); - + boost::shared_ptr<Region> region ((*r)->region()); + if (region->first_frame() == _current_start) { /* reset current start */ nframes_t ref = max_frames; - for (i = begin (); i != end(); ++i) { + for (RegionSelection::iterator i = begin (); i != end(); ++i) { if (region->first_frame() < ref) { ref = region->first_frame(); } @@ -154,7 +156,7 @@ RegionSelection::remove (RegionView* rv) nframes_t ref = 0; - for (i = begin (); i != end(); ++i) { + for (RegionSelection::iterator i = begin (); i != end(); ++i) { if (region->first_frame() > ref) { ref = region->first_frame(); } @@ -164,6 +166,8 @@ RegionSelection::remove (RegionView* rv) } } + erase (r); + return true; } diff --git a/gtk2_ardour/region_view.cc b/gtk2_ardour/region_view.cc index c615fdae0c..7a8f9b5d6a 100644 --- a/gtk2_ardour/region_view.cc +++ b/gtk2_ardour/region_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: regionview.cc 691 2006-07-23 12:03:19Z drobilla $ */ #include <cmath> @@ -25,6 +24,7 @@ #include <gtkmm.h> #include <gtkmm2ext/gtk_ui.h> +#include <pbd/stacktrace.h> #include <ardour/playlist.h> #include <ardour/audioregion.h> @@ -68,7 +68,6 @@ RegionView::RegionView (ArdourCanvas::Group* parent, TimeAxisViewItem::ShowFrame)) , _region (r) , sync_mark(0) - , no_wave_msg(0) , editor(0) , current_visible_sync_position(0.0) , valid(false) @@ -79,6 +78,19 @@ RegionView::RegionView (ArdourCanvas::Group* parent, { } +RegionView::RegionView (const RegionView& other) + : TimeAxisViewItem (other) +{ + /* derived concrete type will call init () */ + + _region = other._region; + editor = other.editor; + current_visible_sync_position = other.current_visible_sync_position; + valid = false; + _pixel_width = other._pixel_width; + _height = other._height; +} + RegionView::RegionView (ArdourCanvas::Group* parent, TimeAxisView& tv, boost::shared_ptr<ARDOUR::Region> r, @@ -88,7 +100,6 @@ RegionView::RegionView (ArdourCanvas::Group* parent, : TimeAxisViewItem (r->name(), *parent, tv, spu, basic_color, r->position(), r->length(), visibility) , _region (r) , sync_mark(0) - , no_wave_msg(0) , editor(0) , current_visible_sync_position(0.0) , valid(false) @@ -102,7 +113,6 @@ RegionView::RegionView (ArdourCanvas::Group* parent, void RegionView::init (Gdk::Color& basic_color, bool wfd) { - editor = 0; valid = true; in_destructor = false; _height = 0; @@ -368,6 +378,18 @@ RegionView::set_frame_color () } void +RegionView::fake_set_opaque (bool yn) +{ + if (yn) { + fill_opacity = 130; + } else { + fill_opacity = 60; + } + + TimeAxisViewItem::set_frame_color (); +} + +void RegionView::hide_region_editor() { if (editor) { diff --git a/gtk2_ardour/region_view.h b/gtk2_ardour/region_view.h index 9f1f967935..5f114bfcbf 100644 --- a/gtk2_ardour/region_view.h +++ b/gtk2_ardour/region_view.h @@ -47,6 +47,8 @@ class RegionView : public TimeAxisViewItem double samples_per_unit, Gdk::Color& basic_color); + RegionView (const RegionView& other); + ~RegionView (); virtual void init (Gdk::Color& base_color, bool wait_for_data); @@ -54,42 +56,45 @@ class RegionView : public TimeAxisViewItem boost::shared_ptr<ARDOUR::Region> region() const { return _region; } bool is_valid() const { return valid; } - void set_valid (bool yn) { valid = yn; } - - virtual void set_height (double) = 0; - virtual void set_samples_per_unit (double); - virtual bool set_duration (nframes_t, void*); - - void move (double xdelta, double ydelta); - - void raise (); - void raise_to_top (); - void lower (); - void lower_to_bottom (); - - bool set_position(nframes_t pos, void* src, double* delta = 0); - virtual void show_region_editor () = 0; - virtual void hide_region_editor(); - virtual void region_changed (ARDOUR::Change); - - virtual GhostRegion* add_ghost (AutomationTimeAxisView&) = 0; - void remove_ghost (GhostRegion*); + void set_valid (bool yn) { valid = yn; } + + virtual void set_height (double) = 0; + virtual void set_samples_per_unit (double); + virtual bool set_duration (nframes_t, void*); + + void move (double xdelta, double ydelta); + + void raise (); + void raise_to_top (); + void lower (); + void lower_to_bottom (); - uint32_t get_fill_color (); + bool set_position(nframes_t pos, void* src, double* delta = 0); + void fake_set_opaque (bool yn); + + virtual void show_region_editor () = 0; + virtual void hide_region_editor(); + + virtual void region_changed (ARDOUR::Change); + + virtual GhostRegion* add_ghost (AutomationTimeAxisView&) = 0; + void remove_ghost (GhostRegion*); + + uint32_t get_fill_color (); - virtual void entered () {} - virtual void exited () {} - + virtual void entered () {} + virtual void exited () {} + static sigc::signal<void,RegionView*> RegionViewGoingAway; - sigc::signal<void> GoingAway; - + sigc::signal<void> GoingAway; + protected: - - /** Allows derived types to specify their visibility requirements + + /** Allows derived types to specify their visibility requirements * to the TimeAxisViewItem parent class - */ + */ RegionView (ArdourCanvas::Group *, TimeAxisView&, boost::shared_ptr<ARDOUR::Region>, @@ -119,7 +124,6 @@ class RegionView : public TimeAxisViewItem boost::shared_ptr<ARDOUR::Region> _region; ArdourCanvas::Polygon* sync_mark; ///< polgyon for sync position - ArdourCanvas::Text* no_wave_msg; RegionEditor* editor; diff --git a/gtk2_ardour/rgb_macros.h b/gtk2_ardour/rgb_macros.h index 310e0a224d..5660e90ee6 100644 --- a/gtk2_ardour/rgb_macros.h +++ b/gtk2_ardour/rgb_macros.h @@ -18,7 +18,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_rgb_macros_h__ diff --git a/gtk2_ardour/route_params_ui.cc b/gtk2_ardour/route_params_ui.cc index 14d9fa02cb..8d125a566d 100644 --- a/gtk2_ardour/route_params_ui.cc +++ b/gtk2_ardour/route_params_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> @@ -23,6 +22,7 @@ #include <glibmm/thread.h> #include <gtkmm2ext/utils.h> #include <gtkmm2ext/stop_signal.h> +#include <gtkmm2ext/window_title.h> #include <ardour/session.h> #include <ardour/session_route.h> @@ -54,11 +54,11 @@ using namespace ARDOUR; using namespace PBD; using namespace Gtk; +using namespace Gtkmm2ext; using namespace sigc; -RouteParams_UI::RouteParams_UI (AudioEngine& eng) +RouteParams_UI::RouteParams_UI () : ArdourDialog ("track/bus inspector"), - engine (eng), track_menu(0) { pre_redirect_box = 0; @@ -137,9 +137,12 @@ RouteParams_UI::RouteParams_UI (AudioEngine& eng) set_name ("RouteParamsWindow"); set_default_size (620,370); - set_title (_("ardour: track/bus inspector")); set_wmclass (X_("ardour_route_parameters"), "Ardour"); + WindowTitle title(Glib::get_application_name()); + title += _("Track/Bus Inspector"); + set_title (title.get_string()); + // events route_display.get_selection()->signal_changed().connect(mem_fun(*this, &RouteParams_UI::route_selected)); route_display.get_column(0)->signal_clicked().connect(mem_fun(*this, &RouteParams_UI::show_track_menu)); @@ -508,7 +511,7 @@ RouteParams_UI::show_track_menu() track_menu->set_name ("ArdourContextMenu"); track_menu->items().push_back (MenuElem (_("Add Track/Bus"), - mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::add_route))); + bind (mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::add_route), (Gtk::Window*) 0))); } track_menu->popup (1, gtk_get_current_event_time()); } @@ -652,29 +655,33 @@ RouteParams_UI::redirect_going_away (boost::shared_ptr<ARDOUR::Redirect> redirec void RouteParams_UI::update_title () { - if (_route) { - string title; - title += _route->name(); -// title += ": "; - -// if (_redirect && (_current_view == PLUGIN_CONFIG_VIEW || _current_view == SEND_CONFIG_VIEW)) { -// title += _redirect->name(); -// } -// else if (_current_view == INPUT_CONFIG_VIEW) { -// title += _("INPUT"); -// } -// else if (_current_view == OUTPUT_CONFIG_VIEW) { -// title += _("OUTPUT"); -// } + WindowTitle title(Glib::get_application_name()); + title += _("Track/Bus Inspector"); + + if (_route) { + + // title += ": "; + + // if (_redirect && (_current_view == PLUGIN_CONFIG_VIEW || _current_view == SEND_CONFIG_VIEW)) { + // title += _redirect->name(); + // } + // else if (_current_view == INPUT_CONFIG_VIEW) { + // title += _("INPUT"); + // } + // else if (_current_view == OUTPUT_CONFIG_VIEW) { + // title += _("OUTPUT"); + // } + + title_label.set_text(_route->name()); - title_label.set_text(title); + title += _route->name(); - title = _("ardour: track/bus inspector: ") + title; - set_title(title); + set_title(title.get_string()); } else { title_label.set_text(_("No Route Selected")); - set_title(_("ardour: track/bus/inspector: no route selected")); + title += _("No Route Selected"); + set_title(title.get_string()); } } diff --git a/gtk2_ardour/route_params_ui.h b/gtk2_ardour/route_params_ui.h index 394383de6b..c0b70cbdb1 100644 --- a/gtk2_ardour/route_params_ui.h +++ b/gtk2_ardour/route_params_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_route_params_ui_h__ @@ -41,7 +40,6 @@ #include "io_selector.h" #include "ardour_dialog.h" -#include "keyboard_target.h" #include "redirect_box.h" #include "route_redirect_selection.h" @@ -60,7 +58,7 @@ class PluginSelector; class RouteParams_UI : public ArdourDialog { public: - RouteParams_UI (ARDOUR::AudioEngine&); + RouteParams_UI (); ~RouteParams_UI(); void set_session (ARDOUR::Session *); @@ -68,8 +66,6 @@ class RouteParams_UI : public ArdourDialog PluginSelector& plugin_selector() { return *_plugin_selector; } private: - ARDOUR::AudioEngine& engine; - Gtk::HBox global_hpacker; Gtk::VBox global_vpacker; Gtk::ScrolledWindow scroller; diff --git a/gtk2_ardour/route_redirect_selection.cc b/gtk2_ardour/route_redirect_selection.cc index 76f202dd92..5ad795c6f5 100644 --- a/gtk2_ardour/route_redirect_selection.cc +++ b/gtk2_ardour/route_redirect_selection.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/route_redirect_selection.h b/gtk2_ardour/route_redirect_selection.h index 60d301e762..8f0cfaf543 100644 --- a/gtk2_ardour/route_redirect_selection.h +++ b/gtk2_ardour/route_redirect_selection.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_route_redirect_selection_h__ diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc index 84f752dc8a..9769037461 100644 --- a/gtk2_ardour/route_time_axis.cc +++ b/gtk2_ardour/route_time_axis.cc @@ -105,8 +105,6 @@ RouteTimeAxisView::RouteTimeAxisView (PublicEditor& ed, Session& sess, boost::sh ignore_toggle = false; - mute_button->set_name ("TrackMuteButton"); - solo_button->set_name ("SoloButton"); edit_group_button.set_name ("TrackGroupButton"); playlist_button.set_name ("TrackPlaylistButton"); automation_button.set_name ("TrackAutomationButton"); @@ -124,9 +122,9 @@ RouteTimeAxisView::RouteTimeAxisView (PublicEditor& ed, Session& sess, boost::sh visual_button.signal_clicked().connect (mem_fun(*this, &RouteTimeAxisView::visual_click)); hide_button.signal_clicked().connect (mem_fun(*this, &RouteTimeAxisView::hide_click)); - solo_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::solo_press)); + solo_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::solo_press), false); solo_button->signal_button_release_event().connect (mem_fun(*this, &RouteUI::solo_release)); - mute_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::mute_press)); + mute_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::mute_press), false); mute_button->signal_button_release_event().connect (mem_fun(*this, &RouteUI::mute_release)); if (is_track()) { @@ -144,8 +142,8 @@ RouteTimeAxisView::RouteTimeAxisView (PublicEditor& ed, Session& sess, boost::sh } rec_enable_button->show_all (); - rec_enable_button->set_name ("TrackRecordEnableButton"); - rec_enable_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::rec_enable_press)); + rec_enable_button->signal_button_press_event().connect (mem_fun(*this, &RouteUI::rec_enable_press), false); + rec_enable_button->signal_button_release_event().connect (mem_fun(*this, &RouteUI::rec_enable_release)); controls_table.attach (*rec_enable_button, 5, 6, 0, 1, Gtk::FILL|Gtk::EXPAND, Gtk::FILL|Gtk::EXPAND, 0, 0); ARDOUR_UI::instance()->tooltips().set_tip(*rec_enable_button, _("Record")); } @@ -177,15 +175,6 @@ RouteTimeAxisView::RouteTimeAxisView (PublicEditor& ed, Session& sess, boost::sh /* remove focus from the buttons */ - automation_button.unset_flags (Gtk::CAN_FOCUS); - solo_button->unset_flags (Gtk::CAN_FOCUS); - mute_button->unset_flags (Gtk::CAN_FOCUS); - edit_group_button.unset_flags (Gtk::CAN_FOCUS); - size_button.unset_flags (Gtk::CAN_FOCUS); - playlist_button.unset_flags (Gtk::CAN_FOCUS); - hide_button.unset_flags (Gtk::CAN_FOCUS); - visual_button.unset_flags (Gtk::CAN_FOCUS); - y_position = -1; _route->redirects_changed.connect (mem_fun(*this, &RouteTimeAxisView::redirects_changed)); @@ -484,7 +473,6 @@ RouteTimeAxisView::build_display_menu () static bool __reset_item (RadioMenuItem* item) { - cerr << "reset item to true\n"; item->set_active (); return false; } @@ -999,6 +987,18 @@ RouteTimeAxisView::update_diskstream_display () void RouteTimeAxisView::selection_click (GdkEventButton* ev) { + if (Keyboard::modifier_state_equals (ev->state, (Keyboard::Shift|Keyboard::Control))) { + + /* special case: select/deselect all tracks */ + if (editor.get_selection().selected (this)) { + editor.get_selection().clear_tracks (); + } else { + editor.select_all_tracks (); + } + + return; + } + PublicEditor::TrackViewList* tracks = editor.get_valid_views (this, _route->edit_group()); switch (Keyboard::selection_type (ev->state)) { diff --git a/gtk2_ardour/route_time_axis.h b/gtk2_ardour/route_time_axis.h index c597f2893c..a72bc5a2cf 100644 --- a/gtk2_ardour/route_time_axis.h +++ b/gtk2_ardour/route_time_axis.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: audio_time_axis.h 664 2006-07-05 19:47:25Z drobilla $ */ #ifndef __ardour_route_time_axis_h__ diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc index 08b6c657a5..360ece25c9 100644 --- a/gtk2_ardour/route_ui.cc +++ b/gtk2_ardour/route_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <gtkmm2ext/gtk_ui.h> @@ -63,6 +62,7 @@ RouteUI::RouteUI (boost::shared_ptr<ARDOUR::Route> rt, ARDOUR::Session& sess, co ignore_toggle = false; wait_for_release = false; route_active_menu_item = 0; + was_solo_safe = false; if (set_color_from_route()) { set_color (unique_random_color()); @@ -73,14 +73,21 @@ RouteUI::RouteUI (boost::shared_ptr<ARDOUR::Route> rt, ARDOUR::Session& sess, co _route->active_changed.connect (mem_fun (*this, &RouteUI::route_active_changed)); mute_button = manage (new BindableToggleButton (_route->mute_control(), m_name )); + mute_button->set_self_managed (true); + solo_button = manage (new BindableToggleButton (_route->solo_control(), s_name )); + solo_button->set_self_managed (true); - // mute_button->unset_flags (Gtk::CAN_FOCUS); - // solo_button->unset_flags (Gtk::CAN_FOCUS); + mute_button->set_name ("MuteButton"); + solo_button->set_name ("SoloButton"); _route->mute_changed.connect (mem_fun(*this, &RouteUI::mute_changed)); _route->solo_changed.connect (mem_fun(*this, &RouteUI::solo_changed)); _route->solo_safe_changed.connect (mem_fun(*this, &RouteUI::solo_changed)); + + /* when solo changes, update mute state too, in case the user wants us to display it */ + + _session.SoloChanged.connect (mem_fun(*this, &RouteUI::solo_changed_so_update_mute)); update_solo_display (); update_mute_display (); @@ -93,11 +100,14 @@ RouteUI::RouteUI (boost::shared_ptr<ARDOUR::Route> rt, ARDOUR::Session& sess, co _session.RecordStateChanged.connect (mem_fun (*this, &RouteUI::session_rec_enable_changed)); rec_enable_button = manage (new BindableToggleButton (t->rec_enable_control(), r_name )); - rec_enable_button->unset_flags (Gtk::CAN_FOCUS); - + rec_enable_button->set_name ("RecordEnableButton"); + rec_enable_button->set_self_managed (true); + update_rec_display (); } + _route->RemoteControlIDChanged.connect (mem_fun(*this, &RouteUI::refresh_remote_control_menu)); + /* map the current state */ map_frozen (); @@ -296,9 +306,10 @@ RouteUI::rec_enable_press(GdkEventButton* ev) if (!ignore_toggle && is_track() && rec_enable_button) { if (ev->button == 2 && Keyboard::modifier_state_equals (ev->state, Keyboard::Control)) { + // do nothing on midi bind event - } - else if (Keyboard::modifier_state_equals (ev->state, Keyboard::ModifierMask (Keyboard::Control|Keyboard::Shift))) { + + } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::ModifierMask (Keyboard::Control|Keyboard::Shift))) { _session.begin_reversible_command (_("rec-enable change")); Session::GlobalRecordEnableStateCommand *cmd = new Session::GlobalRecordEnableStateCommand(_session, this); @@ -320,16 +331,16 @@ RouteUI::rec_enable_press(GdkEventButton* ev) } else { reversibly_apply_audio_track_boolean ("rec-enable change", &AudioTrack::set_record_enable, !audio_track()->record_enabled(), this); - - ignore_toggle = true; - rec_enable_button->set_active(audio_track()->record_enabled()); - ignore_toggle = false; } - - stop_signal (*rec_enable_button, "button-press-event"); } - return TRUE; + return true; +} + +bool +RouteUI::rec_enable_release (GdkEventButton* ev) +{ + return true; } void @@ -342,23 +353,31 @@ void RouteUI::update_solo_display () { bool x; - + vector<Gdk::Color> fg_colors; + Gdk::Color c; + if (solo_button->get_active() != (x = _route->soloed())){ ignore_toggle = true; solo_button->set_active(x); ignore_toggle = false; } - /* show solo safe */ - - if (_route->solo_safe()){ - solo_button->set_name(safe_solo_button_name()); + if (_route->solo_safe()) { + solo_button->set_visual_state (2); + } else if (_route->soloed()) { + solo_button->set_visual_state (1); } else { - solo_button->set_name(solo_button_name()); + solo_button->set_visual_state (0); } } void +RouteUI::solo_changed_so_update_mute () +{ + Gtkmm2ext::UI::instance()->call_slot (mem_fun (*this, &RouteUI::update_mute_display)); +} + +void RouteUI::mute_changed(void* src) { Gtkmm2ext::UI::instance()->call_slot (mem_fun (*this, &RouteUI::update_mute_display)); @@ -367,13 +386,38 @@ RouteUI::mute_changed(void* src) void RouteUI::update_mute_display () { - bool x; + bool model = _route->muted(); + bool view = mute_button->get_active(); - if (mute_button->get_active() != (x = _route->muted())){ + /* first make sure the button's "depressed" visual + is correct. + */ + + if (model != view) { ignore_toggle = true; - mute_button->set_active(x); + mute_button->set_active (model); ignore_toggle = false; } + + /* now attend to visual state */ + + if (Config->get_show_solo_mutes()) { + if (_route->muted()) { + mute_button->set_visual_state (2); + } else if (!_route->soloed() && _route->solo_muted()) { + + mute_button->set_visual_state (1); + } else { + mute_button->set_visual_state (0); + } + } else { + if (_route->muted()) { + mute_button->set_visual_state (2); + } else { + mute_button->set_visual_state (0); + } + } + } void @@ -397,7 +441,7 @@ RouteUI::update_rec_display () /* first make sure the button's "depressed" visual is correct. */ - + if (model != view) { ignore_toggle = true; rec_enable_button->set_active (model); @@ -409,24 +453,19 @@ RouteUI::update_rec_display () if (model) { switch (_session.record_status ()) { + case Session::Recording: + rec_enable_button->set_visual_state (1); + break; + case Session::Disabled: case Session::Enabled: - if (rec_enable_button->get_state() != Gtk::STATE_ACTIVE) { - rec_enable_button->set_state (Gtk::STATE_ACTIVE); - } + rec_enable_button->set_visual_state (2); break; - case Session::Recording: - if (rec_enable_button->get_state() != Gtk::STATE_SELECTED) { - rec_enable_button->set_state (Gtk::STATE_SELECTED); - } - break; } } else { - if (rec_enable_button->get_state() != Gtk::STATE_NORMAL) { - rec_enable_button->set_state (Gtk::STATE_NORMAL); - } + rec_enable_button->set_visual_state (0); } } @@ -440,6 +479,14 @@ RouteUI::build_remote_control_menu () void RouteUI::refresh_remote_control_menu () { + ENSURE_GUI_THREAD (mem_fun (*this, &RouteUI::refresh_remote_control_menu)); + + // only refresh the menu if it has been instantiated + + if (remote_control_menu == 0) { + return; + } + using namespace Menu_Helpers; RadioMenuItem::Group rc_group; diff --git a/gtk2_ardour/route_ui.h b/gtk2_ardour/route_ui.h index ea86041986..465daf8ff3 100644 --- a/gtk2_ardour/route_ui.h +++ b/gtk2_ardour/route_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_route_ui__ @@ -92,8 +91,10 @@ class RouteUI : public virtual AxisView bool solo_press(GdkEventButton*); bool solo_release(GdkEventButton*); bool rec_enable_press(GdkEventButton*); + bool rec_enable_release(GdkEventButton*); void solo_changed(void*); + void solo_changed_so_update_mute (); void mute_changed(void*); virtual void redirects_changed (void *) {} void route_rec_enable_changed(); @@ -146,7 +147,10 @@ class RouteUI : public virtual AxisView void update_rec_display (); void update_mute_display (); + + bool was_solo_safe; void update_solo_display (); + virtual void map_frozen (); void set_remote_control_id (uint32_t id, Gtk::CheckMenuItem* item); diff --git a/gtk2_ardour/selectable.h b/gtk2_ardour/selectable.h index b52214c9c9..51fc5da027 100644 --- a/gtk2_ardour/selectable.h +++ b/gtk2_ardour/selectable.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_selectable_h__ diff --git a/gtk2_ardour/selection.cc b/gtk2_ardour/selection.cc index 8a34752cdd..1e8874444c 100644 --- a/gtk2_ardour/selection.cc +++ b/gtk2_ardour/selection.cc @@ -15,12 +15,12 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> #include <sigc++/bind.h> #include <pbd/error.h> +#include <pbd/stacktrace.h> #include <ardour/playlist.h> @@ -132,6 +132,8 @@ Selection::clear_playlists () /* Selections own their playlists */ for (PlaylistSelection::iterator i = playlists.begin(); i != playlists.end(); ++i) { + /* selections own their own regions, which are copies of the "originals". make them go away */ + (*i)->drop_regions (); (*i)->release (); } diff --git a/gtk2_ardour/selection.h b/gtk2_ardour/selection.h index 5422888536..00bc6eeaaa 100644 --- a/gtk2_ardour/selection.h +++ b/gtk2_ardour/selection.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_selection_h__ diff --git a/gtk2_ardour/selection_templates.h b/gtk2_ardour/selection_templates.h index 5440112ad6..4e02ab9061 100644 --- a/gtk2_ardour/selection_templates.h +++ b/gtk2_ardour/selection_templates.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_selection_templates_h__ diff --git a/gtk2_ardour/send_ui.cc b/gtk2_ardour/send_ui.cc index c4656834a6..8faa315848 100644 --- a/gtk2_ardour/send_ui.cc +++ b/gtk2_ardour/send_ui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <ardour/send.h> diff --git a/gtk2_ardour/send_ui.h b/gtk2_ardour/send_ui.h index b64e3c8e58..2d041bb4fe 100644 --- a/gtk2_ardour/send_ui.h +++ b/gtk2_ardour/send_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_send_ui_h__ diff --git a/gtk2_ardour/simpleline.cc b/gtk2_ardour/simpleline.cc index 4a50ccb4aa..b1fecba840 100644 --- a/gtk2_ardour/simpleline.cc +++ b/gtk2_ardour/simpleline.cc @@ -3,7 +3,6 @@ #include "simpleline.h" #include "simpleline_p.h" -/* $Id$ */ /* line.ccg * diff --git a/gtk2_ardour/simpleline.h b/gtk2_ardour/simpleline.h index 92afa49975..3e23ace83b 100644 --- a/gtk2_ardour/simpleline.h +++ b/gtk2_ardour/simpleline.h @@ -4,7 +4,6 @@ #include <glibmm.h> -/* $Id$ */ /* line.h * diff --git a/gtk2_ardour/simplerect.cc b/gtk2_ardour/simplerect.cc index b9bedbefd9..bb69fc34ca 100644 --- a/gtk2_ardour/simplerect.cc +++ b/gtk2_ardour/simplerect.cc @@ -4,7 +4,6 @@ #include "simplerect_p.h" #include <libgnomecanvasmm/private/shape_p.h> -/* $Id$ */ /* rect.c * diff --git a/gtk2_ardour/simplerect.h b/gtk2_ardour/simplerect.h index 329823ab2f..299b27a868 100644 --- a/gtk2_ardour/simplerect.h +++ b/gtk2_ardour/simplerect.h @@ -4,7 +4,6 @@ #include <glibmm.h> -/* $Id$ */ /* rect.h * diff --git a/gtk2_ardour/tape_region_view.cc b/gtk2_ardour/tape_region_view.cc index 0cf50b87e6..08d8450036 100644 --- a/gtk2_ardour/tape_region_view.cc +++ b/gtk2_ardour/tape_region_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cmath> diff --git a/gtk2_ardour/tape_region_view.h b/gtk2_ardour/tape_region_view.h index fbedf19ebc..048c9bcc5b 100644 --- a/gtk2_ardour/tape_region_view.h +++ b/gtk2_ardour/tape_region_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_tape_audio_region_view_h__ diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc index ce135706d7..25be634ec1 100644 --- a/gtk2_ardour/time_axis_view.cc +++ b/gtk2_ardour/time_axis_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -148,7 +147,7 @@ TimeAxisView::TimeAxisView (ARDOUR::Session& sess, PublicEditor& ed, TimeAxisVie controls_frame.add (controls_hbox); controls_frame.set_name ("TimeAxisViewControlsBaseUnselected"); - controls_frame.set_shadow_type (Gtk::SHADOW_OUT); + controls_frame.set_shadow_type (Gtk::SHADOW_ETCHED_OUT); ColorChanged.connect (mem_fun (*this, &TimeAxisView::color_handler)); } @@ -234,7 +233,7 @@ TimeAxisView::show_at (double y, int& nth, VBox *parent) if (canvas_item_visible ((*i)->canvas_display)) { ++nth; - effective_height += (*i)->show_at (y + 1 + effective_height, nth, parent); + effective_height += (*i)->show_at (y + effective_height, nth, parent); } } @@ -362,7 +361,7 @@ void TimeAxisView::set_height_pixels (uint32_t h) { height = h; - controls_frame.set_size_request (-1, height); + controls_frame.set_size_request (-1, height + ((order == 0) ? 1 : 0)); if (canvas_item_visible (selection_group)) { /* resize the selection rect */ @@ -516,7 +515,11 @@ TimeAxisView::popup_display_menu (guint32 when) if (display_menu == 0) { build_display_menu (); } - editor.set_selected_track (*this, Selection::Add); + + if (!get_selected()) { + editor.set_selected_track (*this, Selection::Set); + } + display_menu->popup (1, when); } @@ -847,7 +850,7 @@ TimeAxisView::touched (double top, double bot) y_position is the "origin" or "top" of the track. */ - double mybot = y_position + height; // XXX need to include Editor::track_spacing; + double mybot = y_position + height; return ((y_position <= bot && y_position >= top) || ((mybot <= bot) && (top < mybot)) || diff --git a/gtk2_ardour/time_axis_view.h b/gtk2_ardour/time_axis_view.h index 31a6e07a80..9299562324 100644 --- a/gtk2_ardour/time_axis_view.h +++ b/gtk2_ardour/time_axis_view.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_time_axis_h__ diff --git a/gtk2_ardour/time_axis_view_item.cc b/gtk2_ardour/time_axis_view_item.cc index a008e2af1a..37daaf9ecc 100644 --- a/gtk2_ardour/time_axis_view_item.cc +++ b/gtk2_ardour/time_axis_view_item.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <pbd/error.h> @@ -89,32 +88,62 @@ TimeAxisViewItem::TimeAxisViewItem(const string & it_name, ArdourCanvas::Group& layout->set_font_description (NAME_FONT); Gtkmm2ext::get_ink_pixel_size (layout, width, height); - NAME_Y_OFFSET = height + 4; + NAME_Y_OFFSET = height + 6; NAME_HIGHLIGHT_SIZE = height + 6; NAME_HIGHLIGHT_THRESH = NAME_HIGHLIGHT_SIZE * 2; have_name_font = true; } + group = new ArdourCanvas::Group (parent); + + init (it_name, spu, base_color, start, duration, vis); + +} + +TimeAxisViewItem::TimeAxisViewItem (const TimeAxisViewItem& other) + : trackview (other.trackview) +{ + + Gdk::Color c; + int r,g,b,a; + + UINT_TO_RGBA (other.fill_color, &r, &g, &b, &a); + c.set_rgb_p (r/255.0, g/255.0, b/255.0); + + /* share the other's parent, but still create a new group */ + + Gnome::Canvas::Group* parent = other.group->property_parent(); + + group = new ArdourCanvas::Group (*parent); + + init (other.item_name, other.samples_per_unit, c, other.frame_position, other.item_duration, other.visibility); +} + + +void +TimeAxisViewItem::init (const string& it_name, double spu, Gdk::Color& base_color, nframes_t start, nframes_t duration, Visibility vis) +{ item_name = it_name ; + name_text_width = ::pixel_width (it_name, NAME_FONT); + last_name_text_width = 0; samples_per_unit = spu ; should_show_selection = true; frame_position = start ; item_duration = duration ; name_connected = false; - fill_opacity = 130; + fill_opacity = 60; position_locked = false ; max_item_duration = ARDOUR::max_frames; min_item_duration = 0 ; show_vestigial = true; visibility = vis; + _sensitive = true; if (duration == 0) { warning << "Time Axis Item Duration == 0" << endl ; } - group = new ArdourCanvas::Group (parent); - vestigial_frame = new ArdourCanvas::SimpleRect (*group); vestigial_frame->property_x1() = (double) 0.0; vestigial_frame->property_y1() = (double) 1.0; @@ -221,7 +250,6 @@ TimeAxisViewItem::TimeAxisViewItem(const string & it_name, ArdourCanvas::Group& set_position (start, this) ; } - /** * Destructor */ @@ -462,6 +490,7 @@ TimeAxisViewItem::set_item_name(std::string new_name, void* src) if (new_name != item_name) { std::string temp_name = item_name ; item_name = new_name ; + name_text_width = ::pixel_width (new_name, NAME_FONT); NameChanged (item_name, temp_name, src) ; /* EMIT_SIGNAL */ } } @@ -527,10 +556,12 @@ TimeAxisViewItem::get_time_axis_view() * @param new_name the new name text to display */ void -TimeAxisViewItem::set_name_text(std::string new_name) +TimeAxisViewItem::set_name_text(const ustring& new_name) { if (name_text) { - name_text->property_text() = new_name.c_str(); + name_text->property_text() = new_name; + name_text_width = pixel_width (new_name, NAME_FONT); + name_text_size_cache.clear (); } } @@ -887,34 +918,88 @@ TimeAxisViewItem::reset_name_width (double pixel_width) if (name_text == 0) { return; } - - int width; - - ustring ustr = fit_to_pixels (item_name, (int) floor (pixel_width - NAME_X_OFFSET), NAME_FONT, width); - if (ustr.empty()) { - - name_text->hide (); - - } else { - - /* don't use name for event handling if it leaves no room - for trimming to work. - */ + int limit = (int) floor (pixel_width - NAME_X_OFFSET); + bool shrinking = (last_name_text_width > pixel_width); + int actual_width; + ustring ustr; + ustring::size_type n; + + if ((last_name_text_width && // we did this once + shrinking && // we're getting smaller + (name_text_width <= limit) && // fits the new size + (name_text_width <= last_name_text_width - NAME_X_OFFSET))) { // fit into the old size too + last_name_text_width = pixel_width; + return; + } + + /* now check the cache of existing truncations */ + + Gtk::Label foo; + Glib::RefPtr<Pango::Layout> layout = foo.create_pango_layout (""); + + for (n = item_name.length(); n > 0; --n) { - if (pixel_width - width < (NAME_X_OFFSET * 2.0)) { - if (name_connected) { - name_connected = false; + map<ustring::size_type,int>::iterator i; + + if ((i = name_text_size_cache.find (n)) != name_text_size_cache.end()) { + + /* we know the length of this substring already */ + + if ((actual_width = (*i).second) < limit) { + + /* it fits, use it */ + + ustr = item_name.substr (0, n); + break; } + } else { - if (!name_connected) { - name_connected = true; + + /* we don't know the length of this substring already, so compute + it and put it into the cache. + */ + + layout->set_text (item_name.substr (0, n)); + + int width, height; + Gtkmm2ext::get_ink_pixel_size (layout, width, height); + + name_text_size_cache[n] = width; + + if ((actual_width = width) < limit) { + ustr = item_name.substr (0, n); + break; } } - - name_text->property_text() = ustr; - name_text->show(); } + + if (n == 0) { + /* nothing will fit */ + name_text->hide (); + last_name_text_width = pixel_width; + return; + } + + /* don't use name for event handling if it leaves no room + for trimming to work. + */ + + if (pixel_width - actual_width < (NAME_X_OFFSET * 2.0)) { + if (name_connected) { + name_connected = false; + } + } else { + if (!name_connected) { + name_connected = true; + } + } + + name_text->property_text() = ustr; + name_text_width = actual_width; + name_text->show(); + last_name_text_width = pixel_width; + } diff --git a/gtk2_ardour/time_axis_view_item.h b/gtk2_ardour/time_axis_view_item.h index 80d9177041..aeeebe1c79 100644 --- a/gtk2_ardour/time_axis_view_item.h +++ b/gtk2_ardour/time_axis_view_item.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __gtk_ardour_time_axis_view_item_h__ @@ -177,6 +176,9 @@ class TimeAxisViewItem : public Selectable * @param yn true if this item should show its selected status */ virtual void set_should_show_selection (bool yn) ; + + void set_sensitive (bool yn) { _sensitive = yn; } + bool sensitive () const { return _sensitive; } //---------------------------------------------------------------------------------------// // Parent Component Methods @@ -197,7 +199,7 @@ class TimeAxisViewItem : public Selectable * * @param new_name the new name text to display */ - void set_name_text(std::string new_name) ; + void set_name_text(const Glib::ustring& new_name) ; /** * Set the height of this item @@ -340,6 +342,10 @@ class TimeAxisViewItem : public Selectable */ TimeAxisViewItem(const std::string & it_name, ArdourCanvas::Group& parent, TimeAxisView& tv, double spu, Gdk::Color& base_color, nframes_t start, nframes_t duration, Visibility v = Visibility (0)); + + TimeAxisViewItem (const TimeAxisViewItem& other); + + void init (const std::string& it_name, double spu, Gdk::Color& base_color, nframes_t start, nframes_t duration, Visibility vis); /** * Calculates some contrasting color for displaying various parts of this item, based upon the base color @@ -409,6 +415,9 @@ class TimeAxisViewItem : public Selectable /** should the item show its selected status */ bool should_show_selection; + + /** should the item respond to events */ + bool _sensitive; /** * The unique item name of this Item @@ -452,6 +461,11 @@ class TimeAxisViewItem : public Selectable ArdourCanvas::SimpleRect* frame_handle_start; ArdourCanvas::SimpleRect* frame_handle_end; + int name_text_width; + double last_name_text_width; + + std::map<Glib::ustring::size_type,int> name_text_size_cache; + Visibility visibility; }; /* class TimeAxisViewItem */ diff --git a/gtk2_ardour/time_selection.cc b/gtk2_ardour/time_selection.cc index c0a05abc45..eac7bd70f5 100644 --- a/gtk2_ardour/time_selection.cc +++ b/gtk2_ardour/time_selection.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <algorithm> diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index f978324ab2..b4d02591e9 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> @@ -45,6 +44,20 @@ using namespace sigc; using namespace Glib; using namespace PBD; +int +pixel_width (const ustring& str, Pango::FontDescription& font) +{ + Label foo; + Glib::RefPtr<Pango::Layout> layout = foo.create_pango_layout (""); + + layout->set_font_description (font); + layout->set_text (str); + + int width, height; + Gtkmm2ext::get_ink_pixel_size (layout, width, height); + return width; +} + ustring fit_to_pixels (const ustring& str, int pixel_width, Pango::FontDescription& font, int& actual_width, bool with_ellipses) { @@ -120,7 +133,7 @@ xpm2rgb (const char** xpm, uint32_t& w, uint32_t& h) return 0; } - savergb = rgb = (unsigned char*)art_alloc (h * w * 3); + savergb = rgb = (unsigned char*) malloc (h * w * 3); // LOAD XPM COLORMAP LONG ENOUGH TO DO CONVERSION for (t = 0; t < colors; ++t) { @@ -163,7 +176,7 @@ xpm2rgba (const char** xpm, uint32_t& w, uint32_t& h) return 0; } - savergb = rgb = (unsigned char*)art_alloc (h * w * 4); + savergb = rgb = (unsigned char*) malloc (h * w * 4); // LOAD XPM COLORMAP LONG ENOUGH TO DO CONVERSION @@ -233,7 +246,21 @@ get_font_for_style (string widgetname) foobar.ensure_style(); style = foobar.get_style (); - return style->get_font(); + + Glib::RefPtr<const Pango::Layout> layout = foobar.get_layout(); + + PangoFontDescription *pfd = (PangoFontDescription *)pango_layout_get_font_description((PangoLayout *)layout->gobj()); + + if (!pfd) { + + /* layout inherited its font description from a PangoContext */ + + PangoContext* ctxt = (PangoContext*) pango_layout_get_context ((PangoLayout*) layout->gobj()); + pfd = pango_context_get_font_description (ctxt); + return Pango::FontDescription (pfd, true); /* make a copy */ + } + + return Pango::FontDescription (pfd, true); /* make a copy */ } uint32_t @@ -263,6 +290,7 @@ rgba_from_style (string style, uint32_t r, uint32_t g, uint32_t b, uint32_t a, s r = waverc->fg[state].red / 257; g = waverc->fg[state].green / 257; b = waverc->fg[state].blue / 257; + /* what a hack ... "a" is for "active" */ if (state == Gtk::STATE_NORMAL && rgba) { a = waverc->fg[GTK_STATE_ACTIVE].red / 257; @@ -548,54 +576,4 @@ key_is_legal_for_numeric_entry (guint keyval) } -ustring -short_path (ustring path, uint32_t target_characters) -{ - ustring::size_type last_sep; - ustring::size_type len = path.length(); - const char separator = '/'; - - if (len <= target_characters) { - return path; - } - - if ((last_sep = path.find_last_of (separator)) == ustring::npos) { - - /* just a filename, but its too long anyway */ - - if (target_characters > 3) { - return path.substr (0, target_characters - 3) + ustring ("..."); - } else { - /* stupid caller, just hand back the whole thing */ - return path; - } - } - - if (len - last_sep >= target_characters) { - - /* even the filename itself is too long */ - if (target_characters > 3) { - return path.substr (last_sep+1, target_characters - 3) + ustring ("..."); - } else { - /* stupid caller, just hand back the whole thing */ - return path; - } - } - - uint32_t so_far = (len - last_sep); - uint32_t space_for = target_characters - so_far; - - if (space_for >= 3) { - ustring res = "..."; - res += path.substr (last_sep - space_for); - return res; - } else { - /* remove part of the end */ - ustring res = "..."; - res += path.substr (last_sep - space_for, len - last_sep + space_for - 3); - res += "..."; - return res; - - } -} diff --git a/gtk2_ardour/utils.h b/gtk2_ardour/utils.h index d24024ffab..7e26ba066c 100644 --- a/gtk2_ardour/utils.h +++ b/gtk2_ardour/utils.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_utils_h__ @@ -54,6 +53,7 @@ slider_position_to_gain (double pos) } Glib::ustring fit_to_pixels (const Glib::ustring&, int pixel_width, Pango::FontDescription& font, int& actual_width, bool with_ellipses = false); +int pixel_width (const Glib::ustring& str, Pango::FontDescription& font); gint just_hide_it (GdkEventAny*, Gtk::Window*); void allow_keyboard_focus (bool); @@ -81,6 +81,5 @@ static std::map<std::string, Glib::RefPtr<Gdk::Pixbuf> > xpm_map; const char* const *get_xpm_data (std::string path); std::string longest (std::vector<std::string>&); bool key_is_legal_for_numeric_entry (guint keyval); -Glib::ustring short_path (Glib::ustring, uint32_t target_characters); #endif /* __ardour_gtk_utils_h__ */ diff --git a/gtk2_ardour/visual_time_axis.cc b/gtk2_ardour/visual_time_axis.cc index 20fe13603e..b685971144 100644 --- a/gtk2_ardour/visual_time_axis.cc +++ b/gtk2_ardour/visual_time_axis.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <cstdlib> diff --git a/gtk2_ardour/visual_time_axis.h b/gtk2_ardour/visual_time_axis.h index d569ca3733..6d1396bc54 100644 --- a/gtk2_ardour/visual_time_axis.h +++ b/gtk2_ardour/visual_time_axis.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_visual_time_axis_h__ diff --git a/gtk2_ardour/vst_pluginui.cc b/gtk2_ardour/vst_pluginui.cc index 5e65475c46..1320ccdc7a 100644 --- a/gtk2_ardour/vst_pluginui.cc +++ b/gtk2_ardour/vst_pluginui.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include <fst.h> diff --git a/gtk2_ardour/waveview.cc b/gtk2_ardour/waveview.cc index 92e4fdd24a..fef90cde22 100644 --- a/gtk2_ardour/waveview.cc +++ b/gtk2_ardour/waveview.cc @@ -1,7 +1,6 @@ #include "waveview.h" #include "waveview_p.h" -/* $Id$ */ /* waveview.cc * @@ -252,6 +251,22 @@ Glib::PropertyProxy_ReadOnly<guint> WaveView::property_wave_color() const { return Glib::PropertyProxy_ReadOnly<guint> (this, "wave_color"); } +Glib::PropertyProxy<guint> WaveView::property_clip_color() +{ + return Glib::PropertyProxy<guint> (this, "clip_color"); +} +Glib::PropertyProxy_ReadOnly<guint> WaveView::property_clip_color() const +{ + return Glib::PropertyProxy_ReadOnly<guint> (this, "clip_color"); +} +Glib::PropertyProxy<guint> WaveView::property_zero_color() +{ + return Glib::PropertyProxy<guint> (this, "zero_color"); +} +Glib::PropertyProxy_ReadOnly<guint> WaveView::property_zero_color() const +{ + return Glib::PropertyProxy_ReadOnly<guint> (this, "zero_color"); +} Glib::PropertyProxy<gint> WaveView::property_rectified() { return Glib::PropertyProxy<gint> (this, "rectified"); diff --git a/gtk2_ardour/waveview.h b/gtk2_ardour/waveview.h index 56d0ed7675..99028f2519 100644 --- a/gtk2_ardour/waveview.h +++ b/gtk2_ardour/waveview.h @@ -4,7 +4,6 @@ #include <glibmm.h> -/* $Id$ */ /* waveview.h * @@ -143,7 +142,11 @@ public: Glib::PropertyProxy_ReadOnly<double> property_height() const; Glib::PropertyProxy<guint> property_wave_color(); Glib::PropertyProxy_ReadOnly<guint> property_wave_color() const; + Glib::PropertyProxy<guint> property_clip_color(); + Glib::PropertyProxy_ReadOnly<guint> property_clip_color() const; Glib::PropertyProxy<gint> property_rectified(); + Glib::PropertyProxy<guint> property_zero_color(); + Glib::PropertyProxy_ReadOnly<guint> property_zero_color() const; Glib::PropertyProxy_ReadOnly<gint> property_rectified() const; Glib::PropertyProxy<guint> property_region_start(); Glib::PropertyProxy_ReadOnly<guint> property_region_start() const; |