Oglr.Canvas.startCreatingEntity C# (CSharp) Method

startCreatingEntity() private method

private startCreatingEntity ( IEntityCreationProperties properties, bool addToCanvasNow ) : void
properties IEntityCreationProperties
addToCanvasNow bool
return void
        void startCreatingEntity( IEntityCreationProperties properties, bool addToCanvasNow )
        {
            if( _model.Level.ActiveLayer == null )
            {
                MessageBox.Show( Resources.No_Layer ) ;

                return ;
            }

            _userActionInEditor = UserActionInEditor.AddingAnItem ;

            _mainForm.SetCursorForCanvas( Cursors.Cross ) ;

            _entityCreation.StartedCreating = addToCanvasNow ;
            _entityCreation.CreationProperties = properties ;

            var extensibility = ObjectFactory.GetInstance<IExtensibility>( ) ;

            var plugin = extensibility.FindPluginInstanceForType( properties.PluginType ) ;

            var newEditor = (ItemEditor) Activator.CreateInstance( plugin.EditorType ) ;

            newEditor.WhenChosenFromToolbox( ) ;

            if (addToCanvasNow)
            {
                newEditor.CreateInDesignMode( _model.Level.ActiveLayer, _entityCreation.CreationProperties ) ;
                _entityCreation.CurrentEditor = newEditor;
            }
        }