public void Modify(TrackEditorDialog dialog) { for (int i = 0; i < dialog.Notebook.NPages; i++) { Widget page = dialog.Notebook.GetNthPage (i); ExtraTrackDetailsPage extra_page = page as ExtraTrackDetailsPage; if (extra_page != null) { foreach (FieldPage.FieldSlot slot in extra_page.FieldSlots) { // TODO this ia hacky - what if another Modifier added a 2nd SpinButton? if (slot.Field is Gtk.SpinButton) { // Remove it (slot.Parent as Container).Remove (slot.Container); extra_page.RemoveField (slot); // Add our new and improved version back extra_page.AddField (slot.Parent as Gtk.Box, new BpmEntry (), null, slot.LabelClosure, delegate (EditorTrackInfo track, Widget widget) { ((BpmEntry)widget).Bpm = track.Bpm; }, delegate (EditorTrackInfo track, Widget widget) { track.Bpm = ((BpmEntry)widget).Bpm; }, FieldOptions.Shrink | FieldOptions.NoSync ); break; } } break; } } }
public PageNavigationEntry (TrackEditorDialog dialog, string completionTable, string completionColumn) { this.dialog = dialog; entry = new TextEntry (completionTable, completionColumn); entry.Changed += OnChanged; entry.Activated += EditNextTitle; entry.KeyPressEvent += delegate (object o, KeyPressEventArgs args) { if ((args.Event.Key == Gdk.Key.Return || args.Event.Key == Gdk.Key.KP_Enter) && (args.Event.State & Gdk.ModifierType.ControlMask) != 0 && dialog.CanGoBackward) { dialog.NavigateBackward (); entry.GrabFocus (); } }; entry.Show (); Spacing = 1; PackStart (entry, true, true, 0); if (dialog.TrackCount > 1) { dialog.Navigated += delegate { forward_button.Sensitive = dialog.CanGoForward; }; forward_button = EditorUtilities.CreateSmallStockButton (Stock.GoForward); object tooltip_host = Hyena.Gui.TooltipSetter.CreateHost (); Hyena.Gui.TooltipSetter.Set (tooltip_host, forward_button, Catalog.GetString ("Advance to the next track and edit its title")); forward_button.Sensitive = dialog.CanGoForward; forward_button.Show (); forward_button.Clicked += EditNextTitle; PackStart (forward_button, false, false, 0); } }
public void Modify(TrackEditorDialog dialog) { for (int i = 0; i < dialog.Notebook.NPages; i++) { Widget page = dialog.Notebook.GetNthPage (i); ExtraTrackDetailsPage extra_page = page as ExtraTrackDetailsPage; if (extra_page != null) { foreach (FieldPage.FieldSlot slot in extra_page.FieldSlots) { if (slot.Field is Banshee.Gui.TrackEditor.TextViewEntry) { extra_page.AddField (slot.Parent as Box, new MoodbarTrackEditorField (), "x4", delegate(EditorTrackInfo track, Widget widget) { return "Moodbar"; }, delegate(EditorTrackInfo track, Widget widget) { ((MoodbarTrackEditorField)widget).Uri = track.Uri; }, delegate(EditorTrackInfo track, Widget widget) { }, FieldOptions.NoSync); break; } } break; } } }
public void Modify(TrackEditorDialog dialog) { for (int i = 0; i < dialog.Notebook.NPages; i++) { Widget page = dialog.Notebook.GetNthPage(i); ExtraTrackDetailsPage extra_page = page as ExtraTrackDetailsPage; if (extra_page != null) { foreach (FieldPage.FieldSlot slot in extra_page.FieldSlots) { // TODO this ia hacky - what if another Modifier added a 2nd SpinButton? if (slot.Field is Gtk.SpinButton) { // Remove it (slot.Parent as Container).Remove(slot.Container); extra_page.RemoveField(slot); // Add our new and improved version back extra_page.AddField(slot.Parent as Gtk.Box, new BpmEntry(), null, slot.LabelClosure, delegate(EditorTrackInfo track, Widget widget) { ((BpmEntry)widget).Bpm = track.Bpm; }, delegate(EditorTrackInfo track, Widget widget) { track.Bpm = ((BpmEntry)widget).Bpm; }, FieldOptions.Shrink | FieldOptions.NoSync ); break; } } break; } } }
public void Initialize(TrackEditorDialog dialog) { }
public PageNavigationEntry (TrackEditorDialog dialog) : this (dialog, null, null) { }
public void Initialize (TrackEditorDialog dialog) { this.dialog = dialog; AddFields (); }
public void Initialize(TrackEditorDialog dialog) { this.dialog = dialog; }