|
|
|
@ -48,9 +48,20 @@ namespace ICSharpCode.WpfDesign.Designer.Xaml
@@ -48,9 +48,20 @@ namespace ICSharpCode.WpfDesign.Designer.Xaml
|
|
|
|
|
get { return _xamlObject.ElementType; } |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void SetNameInternal(string newName) |
|
|
|
|
{ |
|
|
|
|
_xamlObject.Name = newName; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public override string Name { |
|
|
|
|
get { return _xamlObject.Name; } |
|
|
|
|
set { _xamlObject.Name = value; } |
|
|
|
|
set { |
|
|
|
|
UndoService undoService = this.Services.GetService<UndoService>(); |
|
|
|
|
if (undoService != null) |
|
|
|
|
undoService.Execute(new SetNameAction(this, value)); |
|
|
|
|
else |
|
|
|
|
SetNameInternal(value); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public override string Key { |
|
|
|
@ -174,5 +185,52 @@ namespace ICSharpCode.WpfDesign.Designer.Xaml
@@ -174,5 +185,52 @@ namespace ICSharpCode.WpfDesign.Designer.Xaml
|
|
|
|
|
} |
|
|
|
|
return item; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
sealed class SetNameAction : ITransactionItem |
|
|
|
|
{ |
|
|
|
|
XamlDesignItem designItem; |
|
|
|
|
string oldName; |
|
|
|
|
string newName; |
|
|
|
|
|
|
|
|
|
public SetNameAction(XamlDesignItem designItem, string newName) |
|
|
|
|
{ |
|
|
|
|
this.designItem = designItem; |
|
|
|
|
this.newName = newName; |
|
|
|
|
|
|
|
|
|
oldName = designItem.Name; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public string Title { |
|
|
|
|
get { |
|
|
|
|
return "Set name"; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void Do() |
|
|
|
|
{ |
|
|
|
|
designItem.SetNameInternal(newName); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void Undo() |
|
|
|
|
{ |
|
|
|
|
designItem.SetNameInternal(oldName); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public System.Collections.Generic.ICollection<DesignItem> AffectedElements { |
|
|
|
|
get { |
|
|
|
|
return new DesignItem[] { designItem }; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public bool MergeWith(ITransactionItem other) |
|
|
|
|
{ |
|
|
|
|
SetNameAction o = other as SetNameAction; |
|
|
|
|
if (o != null && designItem == o.designItem) { |
|
|
|
|
newName = o.newName; |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|