Example #1
0
        private Label AddLabelForArea(object area, string text, Func <PlacementData> placementDataGetter)
        {
            if (string.IsNullOrEmpty(text))
            {
                return(null);
            }

            _labelHolder.RemoveLabelForArea(area);

            var label = new Label
            {
                LabelMesh          = _meshHandler.GetMeshFor(text),
                LabelPlacementData = placementDataGetter(),
                AssociatedArea     = area
            };

            if (!label.IsValid())
            {
                return(null);
            }

            _labelHolder.Add(label);
            return(label);
        }