private void InsertGlyph(Glyph glyph){
		ICommand cmd = null;
		int physicalIndex = Integer.MIN_VALUE;
		if (this.selectionRange == null){
			/* Add at the end of document*/
			physicalIndex = this.document.getChildren().size();
		}
		else if (this.selectionRange != null && this.selectionRange.isSingleGlyphSelection()){
			physicalIndex = this.logicalDocument.getRows().get(this.selectionRange.getStartRow()).getUiGlyphs()
					.get(this.selectionRange.getStartCol()).getPhysicalIndex() + 1 ;			
		}
		
		if (physicalIndex != Integer.MIN_VALUE){			
			cmd = new InsertCommand(this.document, glyph, physicalIndex);				
			CommandManager.getInstance().execute(cmd);
			this.selectionRange = null;
		}
	}