[beast: 4/12] BST: adjust to use Item.get_project() and Item.[un]group_undo()
- From: Tim Janik <timj src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [beast: 4/12] BST: adjust to use Item.get_project() and Item.[un]group_undo()
- Date: Sat, 30 Sep 2017 11:48:41 +0000 (UTC)
commit ccf38801708838ec9c7520e0b94d364e5db3a0fe
Author: Tim Janik <timj gnu org>
Date: Thu Sep 7 03:53:07 2017 +0200
BST: adjust to use Item.get_project() and Item.[un]group_undo()
Signed-off-by: Tim Janik <timj gnu org>
beast-gtk/bstapp.cc | 4 ++--
beast-gtk/bstbusmixer.cc | 4 ++--
beast-gtk/bstcanvassource.cc | 6 +++---
beast-gtk/bsteventrollctrl.cc | 24 ++++++++++++------------
beast-gtk/bstparam.cc | 10 +++++-----
beast-gtk/bstparamview.cc | 8 ++++----
beast-gtk/bstpartdialog.cc | 11 +++++------
beast-gtk/bstpatterncolumns.cc | 12 ++++++------
beast-gtk/bstpianorollctrl.cc | 24 ++++++++++++------------
beast-gtk/bstsnetrouter.cc | 4 ++--
beast-gtk/bsttrackrollctrl.cc | 12 ++++++------
beast-gtk/bsttrackview.cc | 19 ++++++++++---------
12 files changed, 69 insertions(+), 69 deletions(-)
---
diff --git a/beast-gtk/bstapp.cc b/beast-gtk/bstapp.cc
index b3bf070..3495966 100644
--- a/beast-gtk/bstapp.cc
+++ b/beast-gtk/bstapp.cc
@@ -888,12 +888,12 @@ app_action_exec (gpointer data,
bst_file_dialog_popup_save_instrument (self, self->project, bst_app_get_current_super (self));
break;
case BST_ACTION_NEW_SONG:
- bse_item_group_undo (self->project.proxy_id(), "Create Song");
+ self->project.group_undo ("Create Song");
{
Bse::SongH song = self->project.create_song ("");
song.ensure_master_bus();
}
- bse_item_ungroup_undo (self->project.proxy_id());
+ self->project.ungroup_undo();
self->select_unseen_super = TRUE;
break;
case BST_ACTION_NEW_CSYNTH:
diff --git a/beast-gtk/bstbusmixer.cc b/beast-gtk/bstbusmixer.cc
index 7d46d98..4253f7c 100644
--- a/beast-gtk/bstbusmixer.cc
+++ b/beast-gtk/bstbusmixer.cc
@@ -176,14 +176,14 @@ bus_mixer_action_exec (gpointer data,
{
case ACTION_ADD_BUS:
{
- bse_item_group_undo (song.proxy_id(), "Create Bus");
+ song.group_undo ("Create Bus");
Bse::BusH bus = song.create_bus();
if (bus)
{
bus.ensure_output();
bst_item_view_select (iview, bus.proxy_id());
}
- bse_item_ungroup_undo (song.proxy_id());
+ song.ungroup_undo();
}
break;
case ACTION_DELETE_BUS:
diff --git a/beast-gtk/bstcanvassource.cc b/beast-gtk/bstcanvassource.cc
index 3868c7b..0c0dade 100644
--- a/beast-gtk/bstcanvassource.cc
+++ b/beast-gtk/bstcanvassource.cc
@@ -194,7 +194,7 @@ bst_canvas_source_destroy (GtkObject *object)
if (csource->in_move)
{
csource->in_move = FALSE;
- bse_item_ungroup_undo (csource->source.proxy_id());
+ csource->source.ungroup_undo();
}
while (csource->channel_hints)
@@ -928,7 +928,7 @@ bst_canvas_source_event (GnomeCanvasItem *item,
csource->move_dx = x;
csource->move_dy = y;
csource->in_move = TRUE;
- bse_item_group_undo (csource->source.proxy_id(), "Move");
+ csource->source.group_undo ("Move");
}
gdk_cursor_destroy (fleur);
handled = TRUE;
@@ -977,7 +977,7 @@ bst_canvas_source_event (GnomeCanvasItem *item,
case GDK_BUTTON_RELEASE:
if (bst_mouse_button_move (event) && csource->in_move)
{
- bse_item_ungroup_undo (csource->source.proxy_id());
+ csource->source.ungroup_undo();
csource->in_move = FALSE;
gnome_canvas_item_ungrab (item, event->button.time);
handled = TRUE;
diff --git a/beast-gtk/bsteventrollctrl.cc b/beast-gtk/bsteventrollctrl.cc
index e8b6636..448fc39 100644
--- a/beast-gtk/bsteventrollctrl.cc
+++ b/beast-gtk/bsteventrollctrl.cc
@@ -264,13 +264,13 @@ bst_event_roll_controller_clear (BstEventRollController *self)
Bse::PartH part = self->eroll->part;
const Bse::PartControlSeq &cseq = part.list_selected_controls (CONTROL_TYPE (self));
- bse_item_group_undo (part.proxy_id(), "Clear Selection");
+ part.group_undo ("Clear Selection");
for (size_t i = 0; i < cseq.size(); i++)
{
const Bse::PartControl &pctrl = cseq[i];
part.delete_event (pctrl.id);
}
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
void
@@ -280,14 +280,14 @@ bst_event_roll_controller_cut (BstEventRollController *self)
Bse::PartH part = self->eroll->part;
const Bse::PartControlSeq &cseq = part.list_selected_controls (CONTROL_TYPE (self));
- bse_item_group_undo (part.proxy_id(), "Cut Selection");
+ part.group_undo ("Cut Selection");
for (size_t i = 0; i < cseq.size(); i++)
{
const Bse::PartControl &pctrl = cseq[i];
part.delete_event (pctrl.id);
}
bst_event_roll_controller_set_clipboard (cseq);
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
gboolean
@@ -318,7 +318,7 @@ bst_event_roll_controller_paste (BstEventRollController *self)
const Bse::PartControl &pctrl = (*cseq)[i];
ctick = MIN (ctick, uint (pctrl.tick));
}
- bse_item_group_undo (part.proxy_id(), "Paste Clipboard");
+ part.group_undo ("Paste Clipboard");
part.deselect_controls (0, self->eroll->max_ticks, CONTROL_TYPE (self));
for (size_t i = 0; i < cseq->size(); i++)
{
@@ -327,7 +327,7 @@ bst_event_roll_controller_paste (BstEventRollController *self)
if (id)
part.select_event (id);
}
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
gboolean
@@ -435,7 +435,7 @@ move_group_motion (BstEventRollController *self,
new_tick = bst_event_roll_controller_quantize (self, drag->current_tick);
delta_tick = self->obj_tick;
delta_tick -= new_tick;
- bse_item_group_undo (part.proxy_id(), "Move Selection");
+ part.group_undo ("Move Selection");
for (size_t i = 0; i < self->sel_cseq.size(); i++)
{
const Bse::PartControl &pctrl = self->sel_cseq[i];
@@ -444,7 +444,7 @@ move_group_motion (BstEventRollController *self,
}
if (drag->type == GXK_DRAG_DONE)
self->sel_cseq.clear();
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
static void
@@ -501,7 +501,7 @@ align_motion (BstEventRollController *self,
Bse::PartH part = self->eroll->part;
guint tick, duration, i;
- bse_item_group_undo (part.proxy_id(), "Align Control Events");
+ part.group_undo ("Align Control Events");
bst_event_roll_segment_tick_range (self->eroll, &tick, &duration);
const Bse::PartControlSeq &cseq = part.list_controls (tick, duration, CONTROL_TYPE (self));
for (i = 0; i < cseq.size(); i++)
@@ -511,7 +511,7 @@ align_motion (BstEventRollController *self,
part.change_control (pctrl.id, pctrl.tick, CONTROL_TYPE (self), v);
}
bst_event_roll_clear_segment (self->eroll);
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
}
@@ -584,11 +584,11 @@ resize_motion (BstEventRollController *self,
/* apply new control event size */
if (drag->current_value != self->obj_value)
{
- bse_item_group_undo (part.proxy_id(), "Resize Control Event");
+ part.group_undo ("Resize Control Event");
self->obj_value = drag->current_value;
if (part.change_control (self->obj_id, self->obj_tick, CONTROL_TYPE (self), self->obj_value) !=
Bse::Error::NONE)
drag->state = GXK_DRAG_ERROR;
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
}
diff --git a/beast-gtk/bstparam.cc b/beast-gtk/bstparam.cc
index 26e98e9..b73ba40 100644
--- a/beast-gtk/bstparam.cc
+++ b/beast-gtk/bstparam.cc
@@ -256,18 +256,18 @@ static void
proxy_binding_start_grouping (GxkParam *param)
{
SfiProxy proxy = param->bdata[0].v_long;
- gchar *ustr = g_strconcat ("Modify ", g_param_spec_get_nick (param->pspec), NULL);
- if (proxy)
- bse_item_group_undo (proxy, ustr);
- g_free (ustr);
+ Bse::ItemH item = Bse::ItemH::down_cast (bse_server.from_proxy (proxy));
+ if (item)
+ item.group_undo (string_format ("Modify %s", g_param_spec_get_nick (param->pspec)));
}
static void
proxy_binding_stop_grouping (GxkParam *param)
{
SfiProxy proxy = param->bdata[0].v_long;
+ Bse::ItemH item = Bse::ItemH::down_cast (bse_server.from_proxy (proxy));
if (proxy)
- bse_item_ungroup_undo (proxy);
+ item.ungroup_undo();
}
static gboolean
diff --git a/beast-gtk/bstparamview.cc b/beast-gtk/bstparamview.cc
index 90c4536..5952768 100644
--- a/beast-gtk/bstparamview.cc
+++ b/beast-gtk/bstparamview.cc
@@ -171,11 +171,11 @@ bst_param_view_apply_defaults (BstParamView *self)
if (self->item)
{
- GSList *slist;
- bse_item_group_undo (self->item, "Reset to defaults");
- for (slist = self->params; slist; slist = slist->next)
+ Bse::ItemH item = Bse::ItemH::down_cast (bse_server.from_proxy (self->item));
+ item.group_undo ("Reset to defaults");
+ for (GSList *slist = self->params; slist; slist = slist->next)
gxk_param_apply_default ((GxkParam*) slist->data);
- bse_item_ungroup_undo (self->item);
+ item.ungroup_undo();
}
}
diff --git a/beast-gtk/bstpartdialog.cc b/beast-gtk/bstpartdialog.cc
index aa68dd2..2c0eedc 100644
--- a/beast-gtk/bstpartdialog.cc
+++ b/beast-gtk/bstpartdialog.cc
@@ -271,8 +271,7 @@ bst_part_dialog_set_part (BstPartDialog *self, Bse::PartH part)
self->project = Bse::ProjectH();
}
- SfiProxy projectid = part ? bse_item_get_project (part.proxy_id()) : 0;
- Bse::ProjectH project = Bse::ProjectH::down_cast (bse_server.from_proxy (projectid));
+ Bse::ProjectH project = part ? part.get_project() : Bse::ProjectH();
if (project)
{
bst_window_sync_title_to_proxy (GXK_DIALOG (self), part.proxy_id(), "%s");
@@ -327,7 +326,7 @@ part_dialog_run_script_proc (gpointer data, size_t action_id)
Bse::PartH part = self->proll->part;
bst_procedure_exec_auto (cat.otype.c_str(),
- "project", SFI_TYPE_PROXY, bse_item_get_project (part.proxy_id()),
+ "project", SFI_TYPE_PROXY, part.get_project().proxy_id(),
"part", SFI_TYPE_PROXY, part.proxy_id(),
NULL);
}
@@ -399,13 +398,13 @@ part_dialog_action_exec (gpointer data,
bst_event_roll_controller_paste (self->ectrl);
break;
case ACTION_UNDO:
- bse_item_undo (self->proll->part.proxy_id());
+ self->proll->part.get_project().undo();
break;
case ACTION_REDO:
- bse_item_redo (self->proll->part.proxy_id());
+ self->proll->part.get_project().redo();
break;
case ACTION_CLEAR_UNDO:
- bse_item_clear_undo (self->proll->part.proxy_id());
+ self->proll->part.get_project().clear_undo();
break;
default:
break;
diff --git a/beast-gtk/bstpatterncolumns.cc b/beast-gtk/bstpatterncolumns.cc
index 977ca03..5caa3dd 100644
--- a/beast-gtk/bstpatterncolumns.cc
+++ b/beast-gtk/bstpatterncolumns.cc
@@ -187,13 +187,13 @@ pattern_column_note_key_event (BstPatternColumn *column,
switch (action)
{
case BST_PATTERN_REMOVE_EVENTS:
- bse_item_group_undo (part.proxy_id(), "Remove Events");
+ part.group_undo ("Remove Events");
for (i = 0; i < pseq.size(); i++)
part.delete_event (pseq[i].id);
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
return TRUE;
case BST_PATTERN_SET_NOTE:
- bse_item_group_undo (part.proxy_id(), "Set Note");
+ part.group_undo ("Set Note");
if (pseq.size() == 1)
{
const Bse::PartNote *pnote = &pseq[0];
@@ -203,7 +203,7 @@ pattern_column_note_key_event (BstPatternColumn *column,
part.insert_note (column->num, tick, duration, SFI_NOTE_CLAMP (iparam), 0, +1);
else
bst_gui_error_bell (pview);
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
return TRUE;
default: ;
}
@@ -498,10 +498,10 @@ pattern_column_event_key_event (BstPatternColumn *column,
pattern_column_event_to_string (column, buffer, pctrl, placeholder, &ivalue);
if (action == BST_PATTERN_REMOVE_EVENTS)
{
- bse_item_group_undo (part.proxy_id(), "Remove Events");
+ part.group_undo ("Remove Events");
for (size_t i = 0; i < cseq.size(); i++)
part.delete_event (cseq[i].id);
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
handled = TRUE;
}
else if (action == BST_PATTERN_SET_DIGIT && /* insertions */
diff --git a/beast-gtk/bstpianorollctrl.cc b/beast-gtk/bstpianorollctrl.cc
index addf475..db2aa61 100644
--- a/beast-gtk/bstpianorollctrl.cc
+++ b/beast-gtk/bstpianorollctrl.cc
@@ -345,13 +345,13 @@ bst_piano_roll_controller_clear (BstPianoRollController *self)
assert_return (self != NULL);
Bse::PartH part = self->proll->part;
Bse::PartNoteSeq pseq = part.list_selected_notes();
- bse_item_group_undo (part.proxy_id(), "Clear Selection");
+ part.group_undo ("Clear Selection");
for (size_t i = 0; i < pseq.size(); i++)
{
const Bse::PartNote *pnote = &pseq[i];
part.delete_event (pnote->id);
}
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
void
@@ -361,14 +361,14 @@ bst_piano_roll_controller_cut (BstPianoRollController *self)
Bse::PartH part = self->proll->part;
Bse::PartNoteSeq pseq = part.list_selected_notes();
- bse_item_group_undo (part.proxy_id(), "Cut Selection");
+ part.group_undo ("Cut Selection");
for (size_t i = 0; i < pseq.size(); i++)
{
const Bse::PartNote *pnote = &pseq[i];
part.delete_event (pnote->id);
}
bst_piano_roll_controller_set_clipboard (&pseq);
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
gboolean
@@ -394,7 +394,7 @@ bst_piano_roll_controller_paste (BstPianoRollController *self)
guint i, paste_tick, ctick = self->proll->max_ticks;
gint cnote = 0;
gint paste_note;
- bse_item_group_undo (part.proxy_id(), "Paste Clipboard");
+ part.group_undo ("Paste Clipboard");
part.deselect_notes (0, self->proll->max_ticks, self->proll->min_note, self->proll->max_note);
bst_piano_roll_get_paste_pos (self->proll, &paste_tick, &paste_note);
paste_tick = bst_piano_roll_controller_quantize (self, paste_tick);
@@ -417,7 +417,7 @@ bst_piano_roll_controller_paste (BstPianoRollController *self)
part.select_event (id);
}
}
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
}
@@ -556,7 +556,7 @@ move_group_motion (BstPianoRollController *self, BstPianoRollDrag *drag)
delta_note = old_note;
delta_tick -= new_tick;
delta_note -= new_note;
- bse_item_group_undo (part.proxy_id(), "Move Selection");
+ part.group_undo ("Move Selection");
for (size_t i = 0; i < self->sel_pseq.size(); i++)
{
const Bse::PartNote *pnote = &self->sel_pseq[i];
@@ -568,7 +568,7 @@ move_group_motion (BstPianoRollController *self, BstPianoRollDrag *drag)
}
if (drag->type == GXK_DRAG_DONE)
self->sel_pseq.clear();
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
static void
@@ -591,7 +591,7 @@ move_motion (BstPianoRollController *self,
!check_hoverlap (part, new_tick, self->obj_duration, drag->current_note,
self->obj_tick, note_changed ? 0 : self->obj_duration))
{
- bse_item_group_undo (part.proxy_id(), "Move Note");
+ part.group_undo ("Move Note");
if (part.delete_event (self->obj_id) != Bse::Error::NONE)
drag->state = GXK_DRAG_ERROR;
else
@@ -603,7 +603,7 @@ move_motion (BstPianoRollController *self,
if (!self->obj_id)
drag->state = GXK_DRAG_ERROR;
}
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
}
@@ -658,7 +658,7 @@ resize_motion (BstPianoRollController *self,
!check_hoverlap (part, new_tick, new_duration, self->obj_note,
self->obj_tick, self->obj_duration))
{
- bse_item_group_undo (part.proxy_id(), "Resize Note");
+ part.group_undo ("Resize Note");
if (self->obj_id)
{
Bse::Error error = part.delete_event (self->obj_id);
@@ -675,7 +675,7 @@ resize_motion (BstPianoRollController *self,
if (!self->obj_id)
drag->state = GXK_DRAG_ERROR;
}
- bse_item_ungroup_undo (part.proxy_id());
+ part.ungroup_undo();
}
}
diff --git a/beast-gtk/bstsnetrouter.cc b/beast-gtk/bstsnetrouter.cc
index 09fbc90..eac5320 100644
--- a/beast-gtk/bstsnetrouter.cc
+++ b/beast-gtk/bstsnetrouter.cc
@@ -766,11 +766,11 @@ bst_snet_router_event (GtkWidget *widget,
Bse::Error error = self->snet.can_create_source (ad.entity);
if (error == 0)
{
- bse_item_group_undo (self->snet.proxy_id(), "Create Module");
+ self->snet.group_undo ("Create Module");
SfiProxy module = self->snet.create_source (ad.entity).proxy_id();
Bse::SourceH sourceh = Bse::SourceH::down_cast (bse_server.from_proxy (module));
sourceh.set_pos (self->world_x / BST_CANVAS_SOURCE_PIXEL_SCALE, self->world_y /
-BST_CANVAS_SOURCE_PIXEL_SCALE);
- bse_item_ungroup_undo (self->snet.proxy_id());
+ self->snet.ungroup_undo();
}
if (BST_SNET_EDIT_FALLBACK)
gxk_action_group_select (self->canvas_tool, ROUTER_TOOL_EDIT);
diff --git a/beast-gtk/bsttrackrollctrl.cc b/beast-gtk/bsttrackrollctrl.cc
index 37ed490..9bc6172 100644
--- a/beast-gtk/bsttrackrollctrl.cc
+++ b/beast-gtk/bsttrackrollctrl.cc
@@ -425,13 +425,13 @@ insert_start (BstTrackRollController *self,
{
SfiProxy songid = bse_item_get_parent (drag->current_track.proxy_id());
Bse::SongH song = Bse::SongH::down_cast (bse_server.from_proxy (songid));
- bse_item_group_undo (song.proxy_id(), "Insert part");
+ song.group_undo ("Insert part");
Bse::PartH part = song.create_part();
if (part && track.insert_part (tick, part) > 0)
gxk_status_set (GXK_STATUS_DONE, _("Insert Part"), NULL);
else
gxk_status_set (GXK_STATUS_ERROR, _("Insert Part"), _("Lost Part"));
- bse_item_ungroup_undo (song.proxy_id());
+ song.ungroup_undo ();
drag->state = GXK_DRAG_HANDLED;
}
else
@@ -454,12 +454,12 @@ delete_start (BstTrackRollController *self,
if (self->obj_part) /* got part to delete */
{
Bse::SongH song = Bse::SongH::down_cast (bse_server.from_proxy (self->song));
- bse_item_group_undo (song.proxy_id(), "Delete Part");
+ song.group_undo ("Delete Part");
Bse::TrackH track = self->obj_track;
track.remove_tick (self->obj_tick);
if (!song.find_any_track_for_part (self->obj_part))
song.remove_part (self->obj_part);
- bse_item_ungroup_undo (song.proxy_id());
+ song.ungroup_undo();
gxk_status_set (GXK_STATUS_DONE, _("Delete Part"), NULL);
}
else
@@ -514,7 +514,7 @@ move_motion (BstTrackRollController *self, BstTrackRollDrag *drag)
if (new_tick != self->obj_tick || self->obj_track != drag->current_track)
{
Bse::TrackH track = drag->current_track;
- bse_item_group_undo (track.proxy_id(), "Move part");
+ track.group_undo ("Move part");
if (track.insert_part (new_tick, self->obj_part) > 0)
{
if (!self->skip_deletion)
@@ -529,7 +529,7 @@ move_motion (BstTrackRollController *self, BstTrackRollDrag *drag)
gxk_status_set (GXK_STATUS_PROGRESS, action, NULL);
}
/* else gxk_status_set (GXK_STATUS_ERROR, "Move Part", Bse::error_blurb (error)); */
- bse_item_ungroup_undo (track.proxy_id());
+ track.ungroup_undo();
}
}
diff --git a/beast-gtk/bsttrackview.cc b/beast-gtk/bsttrackview.cc
index 8ead85e..578a3c2 100644
--- a/beast-gtk/bsttrackview.cc
+++ b/beast-gtk/bsttrackview.cc
@@ -286,13 +286,14 @@ track_view_synth_popup (BstTrackView *self,
if (strpath)
{
gint row = gxk_tree_spath_index0 (strpath);
- SfiProxy item = bst_item_view_get_proxy (BST_ITEM_VIEW (self), row);
- if (bse_item_editable_property (item, "snet"))
+ SfiProxy itemid = bst_item_view_get_proxy (BST_ITEM_VIEW (self), row);
+ if (bse_item_editable_property (itemid, "snet"))
{
- BsePropertyCandidates *pc = bse_item_get_property_candidates (item, "snet");
+ BsePropertyCandidates *pc = bse_item_get_property_candidates (itemid, "snet");
SynthPopup sdata = { self, pcell, };
- Bse::ProjectH project = Bse::ProjectH::down_cast (bse_server.from_proxy (bse_item_get_project
(item)));
- GtkWidget *dialog = bst_track_synth_dialog_popup (self, item,
+ Bse::ItemH item = Bse::ItemH::down_cast (bse_server.from_proxy (itemid));
+ Bse::ProjectH project = item.get_project();
+ GtkWidget *dialog = bst_track_synth_dialog_popup (self, itemid,
pc->label, pc->tooltip, pc->items,
_("Available Waves"),
_("List of available waves to choose a track
instrument from"),
@@ -732,7 +733,7 @@ track_view_action_exec (gpointer data,
{
SfiProxy item;
case ACTION_ADD_TRACK:
- bse_item_group_undo (song.proxy_id(), "Add Track");
+ song.group_undo ("Add Track");
track = song.create_track();
if (track)
{
@@ -742,12 +743,12 @@ track_view_action_exec (gpointer data,
bst_item_view_select (item_view, track.proxy_id());
track.ensure_output();
}
- bse_item_ungroup_undo (song.proxy_id());
+ song.ungroup_undo();
break;
case ACTION_DELETE_TRACK:
item = bst_item_view_get_current (item_view);
track = Bse::TrackH::down_cast (bse_server.from_proxy (item));
- bse_item_group_undo (song.proxy_id(), "Delete Track");
+ song.group_undo ("Delete Track");
Bse::PartSeq pseq = track.list_parts_uniq();
song.remove_track (track);
for (const auto &part : pseq)
@@ -756,7 +757,7 @@ track_view_action_exec (gpointer data,
if (!song.find_any_track_for_part (p))
song.remove_part (p);
}
- bse_item_ungroup_undo (song.proxy_id());
+ song.ungroup_undo();
break;
}
gxk_widget_update_actions_downwards (self);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]