/// <summary> /// A LineDash defines a non-continuous line. /// </summary> /// <param name="dashstyle">This sets the style of this LineDash</param> /// <param name="dots">This is the number of dots in this LineDash</param> /// <param name="dotLen">This is the length of a dot</param> /// <param name="dashes">This is the number of dashes</param> /// <param name="dashLen">This is the length of a single dash</param> /// <param name="distance">This is the distance between the dots</param> virtual public void SetLineDash(tud.mci.tangram.util.DashStyle dashstyle, short dots, int dotLen, short dashes, int dashLen, int distance) { try { LineDash dash = new LineDash((unoidl.com.sun.star.drawing.DashStyle)((int)dashstyle), dots, dotLen, dashes, dashLen, distance); int count = this.ChildCount; if (count > 0) // group object { var children = GetChilderen(); for (int i = 0; i < children.Count; i++) { OoShapeObserver child = children.ElementAt(i); if (child != null) { child.SetProperty("LineDash", dash); child.SetLineDash(dashstyle, dots, dotLen, dashes, dashLen, distance); } } } SetProperty("LineDash", dash); } catch (System.Exception ex) { Logger.Instance.Log(LogPriority.DEBUG, this, "[ERROR] Can't set line dash: " + ex); } }
/// <summary> /// Gets a LineDash defines a non-continuous line. /// </summary> /// <param name="dashstyle">This sets the style of this LineDash</param> /// <param name="dots">This is the number of dots in this LineDash</param> /// <param name="dotLen">This is the length of a dot</param> /// <param name="dashes">This is the number of dashes</param> /// <param name="dashLen">This is the length of a single dash</param> /// <param name="distance">This is the distance between the dots</param> /// <returns>true and false</returns> virtual public bool GetLineDash(out tud.mci.tangram.util.DashStyle dashstyle, out short dots, out int dotLen, out short dashes, out int dashLen, out int distance) { dashstyle = tud.mci.tangram.util.DashStyle.RECT; dots = dashes = 0; dotLen = dashLen = distance = 0; var ld = GetProperty("LineDash"); if (ld != null && ld is LineDash) { LineDash linedash = ((LineDash)ld); dashstyle = (tud.mci.tangram.util.DashStyle)((int)linedash.Style); dots = linedash.Dots; dotLen = linedash.DotLen; dashes = linedash.Dashes; dashLen = linedash.DashLen; distance = linedash.Distance; return(true); } return(false); }