/// <summary> /// Traite les évènements de modifications de propriétés qui ont été lancés à partir /// du modèle. /// </summary> /// <param name="sender">L'émetteur de l'évènement (le modèle)</param> /// <param name="e">Les paramètres de l'évènement. PropertyName est celui qui nous intéresse. /// Il indique quelle propriété a été modifiée dans le modèle.</param> private void EditeurProprieteModifiee(object sender, PropertyChangedEventArgs e) { if (e.PropertyName == "CouleurSelectionnee") { ProprieteModifiee(e.PropertyName); } else if (e.PropertyName == "Thumbnail") { UpdateThumbnail(); } else if (e.PropertyName == "CanvasSize") { this.Canvas.Height = editeur.CanvasHeight; this.Canvas.Width = editeur.CanvasWidth; } else if (e.PropertyName == "RemplissageSelectionne") { ProprieteModifiee(e.PropertyName); } else if (e.PropertyName == "OutilSelectionne") { OutilSelectionne = editeur.OutilSelectionne; editeur.HandleChangeSelection(new StrokeCollection()); //ProprieteModifiee(e.PropertyName); switch (OutilSelectionne) { case "lasso": this.Canvas.EditingMode = InkCanvasEditingMode.Select; break; case "efface_trait": this.Canvas.EditingMode = InkCanvasEditingMode.EraseByStroke; break; default: this.Canvas.EditingMode = InkCanvasEditingMode.None; break; } //InkCanvasEditingMode current = this.Canvas.EditingMode; // this.Canvas.EditingMode = current; //StrokeCollection S = this.Canvas.GetSelectedStrokes(); // editeur.HandleChangeSelection(this.Canvas.GetSelectedStrokes()); // this.HandleSelection(this.Canvas.GetSelectedStrokes()); } else if (e.PropertyName == "Selection") { this.Canvas.AllowSelection = true; this.Canvas.Select(editeur.selectedStrokes); this.Canvas.AllowSelection = false; this.Canvas.ResizeEnabled = true; this.Canvas.MoveEnabled = true; switch (OutilSelectionne) { case "lasso": this.Canvas.EditingMode = InkCanvasEditingMode.Select; break; case "efface_trait": this.Canvas.EditingMode = InkCanvasEditingMode.EraseByStroke; break; default: this.Canvas.EditingMode = InkCanvasEditingMode.None; break; } //this.Canvas.EditingMode = InkCanvasEditingMode.None; foreach (Stroke s in this.SelectedStrokes) { if ((s as Form).Type == "Text") { this.Canvas.ResizeEnabled = false; } else if ((s as Form).Type == "Arrow") { this.Canvas.ResizeEnabled = false; this.Canvas.MoveEnabled = false; } } } }