23
using System.Collections.Generic;
29
using Do.Universe.Common;
28
public class AppendTextAction : IAction {
30
public string Name { get { return Catalog.GetString ("Append to..."); } }
31
public string Description { get { return Catalog.GetString ("Appends text to a selected file."); } }
32
public string Icon { get { return "text-editor"; } }
34
public Type[] SupportedItemTypes {
36
return new Type[] { typeof (ITextItem) };
40
public Type[] SupportedModifierItemTypes {
42
return new Type[] { typeof (FileItem), typeof(ITextItem) };
46
public bool ModifierItemsOptional {
51
public bool SupportsItem (IItem item)
56
public bool SupportsModifierItemForItems (IItem[] items, IItem modItem)
58
if (modItem is FileItem) {
59
string mime = (modItem as FileItem).MimeType;
32
public class AppendTextAction : Act {
34
public override string Name { get { return Catalog.GetString ("Append to..."); } }
35
public override string Description { get { return Catalog.GetString ("Appends text to a selected file."); } }
36
public override string Icon { get { return "text-editor"; } }
38
public override IEnumerable<Type> SupportedItemTypes {
40
yield return typeof (ITextItem);
44
public override IEnumerable<Type> SupportedModifierItemTypes {
46
//yield return typeof (IFileItem);
47
yield return typeof (ITextItem);
51
public override bool SupportsModifierItemForItems (IEnumerable<Item> items, Item modItem)
54
if (modItem is IFileItem) {
55
string mime = (modItem as IFileItem).MimeType;
60
56
return mime == "x-directory/normal" || mime.StartsWith ("text/");
62
59
return modItem is ITextItem;
65
public IItem[] DynamicModifierItemsForItem (IItem item)
70
public IItem[] Perform (IItem[] items, IItem[] modItems)
62
public override IEnumerable<Item> Perform (IEnumerable<Item> items, IEnumerable<Item> modItems)
72
if (modItems [0] is FileItem) {
73
string text = (items [0] as ITextItem).Text;
74
string mime = (modItems [0] as FileItem).MimeType;
75
string file = (modItems [0] as FileItem).Path;
65
if (modItems.First () is IFileItem) {
66
string text = (items.First () as ITextItem).Text;
67
string mime = (modItems.First () as IFileItem).MimeType;
68
string file = (modItems.First () as IFileItem).Path;
77
70
if (mime == "x-directory/normal") return null;
87
string text = (items [0] as ITextItem).Text;
88
string text2 = (modItems [0] as ITextItem).Text;
89
return new IItem[] { new TextItem (text + text2) };
80
string text = (items.First () as ITextItem).Text;
81
string text2 = (modItems.First () as ITextItem).Text;
82
yield return new TextItem (text + text2);