/// <summary>
        /// Updates the specified status bar info
        /// </summary>
        /// <remarks>
        /// Overriden to populate the secondary info with the zoom rect bounds if it is valid
        /// and the secondary info is not yet populated.
        /// </remarks>
        /// <param name="info">status bar info</param>
        public override void UpdateStatusBarInfo(NStatusBarInfo info)
        {
            base.UpdateStatusBarInfo(info);

            // update secondary info with zoom rect
            if (info.Secondary == "" && m_ZoomRect != null)
            {
                StringBuilder sb = new StringBuilder(100);
                sb.Append("Zoom factor: ");
                sb.Append(ComputeZoomFactor());
                sb.Append(". ");

                NMeasurementUnit mu     = Document.MeasurementUnit;
                string           format = mu.DefaultValueFormat;
                NRectangleF      bounds = m_ZoomRect.Bounds;

                sb.Append("Zoom rect: {");
                sb.Append(bounds.X.ToString(format));
                sb.Append(", ");
                sb.Append(bounds.Y.ToString(format));
                sb.Append(", ");
                sb.Append(bounds.Width.ToString(format));
                sb.Append(", ");
                sb.Append(bounds.Height.ToString(format));
                sb.Append("}");

                info.Secondary = sb.ToString();
            }
        }
 /// <summary>
 /// Initializer constructor
 /// </summary>
 /// <param name="name"></param>
 /// <param name="worldMeasurementUnit"></param>
 /// <param name="measurementUnit"></param>
 /// <param name="factor"></param>
 /// <param name="isDefault"></param>
 public NDrawingScale(string name, NMeasurementUnit worldMeasurementUnit, NMeasurementUnit measurementUnit, float factor, bool isDefault)
 {
     Name                 = name;
     MeasurementUnit      = measurementUnit;
     WorldMeasurementUnit = worldMeasurementUnit;
     ScaleFactor          = factor;
     IsDefault            = isDefault;
 }
        private void UpdateDocumentBoundsTextBoxes()
        {
            NMeasurementUnit logicalUnit = document.MeasurementUnit;
            NMeasurementUnit displayUnit = document.CustomWorldMeasurementUnit;

            documentWidthTextBox.Text           = document.Width.ToString() + " " + logicalUnit.Abbreviation;
            documentHeightTextBox.Text          = document.Height.ToString() + " " + logicalUnit.Abbreviation;
            documentMeasurementUnitTextBox.Text = logicalUnit.Name;

            worldMeasurmentUnitTextBox.Text = displayUnit.Name;
            drawingScaleTextBox.Text        = document.CustomScale.ToString();
        }
Exemple #4
0
        /// <summary>
        /// Called when the measurement unit of the measurements stored in this template
        /// have changed and all measurements must be converted to the new unit
        /// </summary>
        /// <remarks>
        /// Overriden to convert the X and Y radiuses
        /// </remarks>
        /// <param name="converter">measurement unit converter to use</param>
        /// <param name="from">from measurement unit</param>
        /// <param name="to">to measurement unit</param>
        public override void ConvertMeasurementUnit(NMeasurementUnitConverter converter, NMeasurementUnit from, NMeasurementUnit to)
        {
            base.ConvertMeasurementUnit(converter, from, to);

            m_fRadiusX = converter.ConvertX(from, to, m_fRadiusX);
            m_fRadiusY = converter.ConvertY(from, to, m_fRadiusY);
        }