private void imageProperties_ImagePropertyChanged(object source, ImagePropertyEvent evt) { if (ImgElement != null) { switch (evt.PropertyType) { case ImagePropertyType.Source: case ImagePropertyType.InlineSize: case ImagePropertyType.Decorators: UpdateImageSource(evt.ImageProperties, evt.InvocationSource); break; default: Debug.Fail("Unsupported image property type update: " + evt.PropertyType); break; } } }
private void tabPage_ImagePropertyChanged(object source, ImagePropertyEvent evt) { OnImagePropertyChanged(evt); }
protected virtual void OnImagePropertyChanged(ImagePropertyEvent evt) { using (IUndoUnit undo = _editorContext.CreateUndoUnit()) { if (ImagePropertyChanged != null) ImagePropertyChanged(this, evt); undo.Commit(); } switch (evt.PropertyType) { case ImagePropertyType.Decorators: { RefreshSizeChunkCommands(); RefreshStylesChunkCommands(); RefreshPropertiesChunkCommands(); break; } case ImagePropertyType.InlineSize: RefreshSizeChunkCommands(); break; case ImagePropertyType.Source: RefreshPropertiesChunkCommands(); break; default: RefreshCommands(); break; } // If this is a reset, then handle alignment/margins if (evt.InvocationSource == ImageDecoratorInvocationSource.Reset) { // Reset margins and alignments bool isImageSelected = ImagePropertiesInfo != null; bool isEditableEmbeddedImage = isImageSelected && ImagePropertiesInfo.IsEditableEmbeddedImage(); ResetAlignmentChunkCommands(isImageSelected, isEditableEmbeddedImage); ResetMarginsChunkCommands(isImageSelected, isEditableEmbeddedImage); } }
protected virtual void OnImagePropertyChanged(ImagePropertyEvent evt) { if(ImagePropertyChanged != null) { ImagePropertyChanged(this, evt); } //notify the tabs that the image properties have changed so that they can update themselves. foreach(ImageEditingTabPageControl tabPage in TabPages) { tabPage.HandleImagePropertyChangedEvent(evt); } }