engine: sequence parameters dialog migrates to the facade
- new facade API: video params ex (dimensions/rate/par/interlacing/ preview format/divider), audio params, preview divider, and undoable-flagged setters mirroring the dialog's dual undo/no-undo modes; label setting gains node_set_label_ex - the dialog's own SequenceParamCommand is gone; accept now issues facade calls (per-field commands, unchanged fields skipped) - preset system stays UI-side by design: its flat XML schema never touches engine objects - the auto-cache checkbox maps to the engine's existing stub (no undo noise)
This commit is contained in:
@@ -487,15 +487,26 @@ int oakengine_node_get_label(const OakEngineNode *self, char *buf,
|
||||
}
|
||||
|
||||
int oakengine_node_set_label(OakEngineNode *self, const char *label)
|
||||
{
|
||||
return oakengine_node_set_label_ex(self, label, 1);
|
||||
}
|
||||
|
||||
int oakengine_node_set_label_ex(OakEngineNode *self, const char *label,
|
||||
int undoable)
|
||||
{
|
||||
set_error(QString());
|
||||
if (!self) {
|
||||
set_error(QStringLiteral("invalid node"));
|
||||
return OAKENGINE_E_INVALID;
|
||||
}
|
||||
push_or_run(new olive::NodeRenameCommand(
|
||||
impl(self), QString::fromUtf8(label ? label : "")),
|
||||
QStringLiteral("Rename Node"));
|
||||
olive::UndoCommand *command = new olive::NodeRenameCommand(
|
||||
impl(self), QString::fromUtf8(label ? label : ""));
|
||||
if (undoable) {
|
||||
push_or_run(command, QStringLiteral("Rename Node"));
|
||||
} else {
|
||||
command->redo_now();
|
||||
delete command;
|
||||
}
|
||||
return OAKENGINE_OK;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user