JD2022-TU1/main/tools/apps/Traviata/Addins/Traviata.addin.cs

164 lines
7.5 KiB
C#

using System;
using System.Xml.Linq;
using JD.TeaBoxAddinSystem.Addins;
public class Traviata_Addin : IXmlAddin
{
public string FileName => "Traviata.addin";
public XElement RootElement { get; } =
new XElement("TeaBox",
new XElement("Addin",
new XAttribute("id", "Traviata"),
new XAttribute("author", "Ubisoft"),
new XAttribute("category", "General"),
new XAttribute("name", "Traviata"),
new XAttribute("description", "Allows to edit karaoke tapes."),
new XElement("Files",
new XElement("Import",
new XAttribute("assembly", "Traviata.exe"),
new XElement("Import",
new XAttribute("resource", $"{typeof(Traviata.Properties.Resources).FullName}")
)
)
),
new XElement("Dependencies",
new XElement("Addin",
new XAttribute("id", "JD.Application")
),
new XElement("Addin",
new XAttribute("id", "TeaBox.Application")
),
new XElement("Addin",
new XAttribute("id", "Timeline")
)
),
// ToolBars
new XElement("Extension",
new XAttribute("path", "Application/ToolBars"),
new XElement("Actions",
new XAttribute("id", "Traviata"),
new XAttribute("guid", "412E2170-F628-42D5-A2DB-424C6CBC6D3E"),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.TogglePlay")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.PreviousFrame")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.NextFrame")
),
new XElement("Actions",
new XAttribute("id", "MarkCheckpoint"),
new XAttribute("default_action", "EditorActions.MarkCheckpoint"),
new XAttribute("showIconAndText", "False"),
new XAttribute("icon", "Icons_30x30_Checkpoint"),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.MarkCheckpoint")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.GoToCheckpoint")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.ClearCheckpoint")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.Rewind")
)
),
new XElement("Separator"),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.SnapUnitDropdown")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.ScrollingModeDropdown")
),
new XElement("ActionReference",
new XAttribute("id", "EditorActions.ToggleLoop")
),
new XElement("Separator"),
new XElement("ActionReference",
new XAttribute("id", "TimelineActions.ChangeVolume")
)
)
),
// DocumentBindings
new XElement("Extension",
new XAttribute("path", "Application/DocumentBindings"),
new XElement("DocumentBinding",
new XAttribute("id", "Tape"),
new XAttribute("name", "Tape"),
new XAttribute("icon", "Icon_16x16_TRec"),
new XAttribute("class", "JD.Timeline.KaraokeDocumentBinding"),
new XElement("FileFilter",
new XAttribute("name", "Karaoke tape files"),
new XAttribute("extensions", "*.ktape")
)
)
),
// ContextMenu
new XElement("ExtensionPoint",
new XAttribute("path", "Application/ClipView/ContextMenu"),
new XElement("ExtensionNodeSet",
new XAttribute("name", "Actions")
)
),
// ContextMenu
new XElement("Extension",
new XAttribute("path", "Application/ClipView/ContextMenu"),
new XElement("Action",
new XAttribute("id", "TraviataActions.AddClip"),
new XAttribute("type", "Array"),
new XAttribute("description", "Adds all the available clips as a separate action"),
new XAttribute("defaultHandler", $"{typeof(Traviata.Source.Actions.AddNewClipActionHandler).FullName}")
),
new XElement("ActionReference",
new XAttribute("id", "ActivateClips")
)
),
// TreeViewToolbar
new XElement("ExtensionPoint",
new XAttribute("path", "Application/TreeViewToolbar"),
new XElement("ExtensionNodeSet",
new XAttribute("name", "ActionBaseSet")
)
),
// Pads
new XElement("Extension",
new XAttribute("path", "Application/Pads"),
new XElement("Pad",
new XAttribute("id", "Pleo"),
new XAttribute("category", "Main"),
new XAttribute("title", "Video player"),
new XAttribute("shortcut", "Ctrl+W, V"),
new XAttribute("icon", "Icon_16x16_video"),
new XAttribute("guid", "51D1D7DD-FB18-4B10-9F1F-8C31BA012186"),
new XAttribute("type", $"{typeof(JD.Timeline.View.VideoView.TapeVideoPad).FullName}")
)
),
// Pads
new XElement("Extension",
new XAttribute("path", "Application/Pads"),
new XElement("Pad",
new XAttribute("id", "Lyrics"),
new XAttribute("category", "Main"),
new XAttribute("title", "Lyrics"),
new XAttribute("shortcut", "Ctrl+W, L"),
new XAttribute("icon", "Icon_16x16_Lyrics"),
new XAttribute("guid", "4AF956EF-EF48-4CFD-A4E7-73097B12FB6E"),
new XAttribute("type", $"{typeof(JD.Timeline.View.Pads.LyricsPad).FullName}")
)
)
)
)
;
}