I have a quick-fix for this and the scrolling while editing issue which
seems to resolve it for now for me. It's not the cleanest code and I'm sure
there's a better solution which doesn't involve dynamic functions. Also, it
doesn't address the potential issue of scrolling off-screen:

Added just after instantiation here:

https://github.com/apache/flex-sdk/blob/develop/frameworks/projects/spark/src/spark/components/gridClasses/DataGridEditor.as#L623

if (dataGrid.scroller) {
var cellOriginLessScroll:Point = localCellOrigin.clone();
 var positionChangeHandler:Function = function(e:PropertyChangeEvent =
null):void {
if ((e.property == "horizontalScrollPosition")
 ||(e.property == "verticalScrollPosition")) {
itemEditorInstance.setLayoutBoundsPosition(
 cellOriginLessScroll.x - grid.horizontalScrollPosition,
cellOriginLessScroll.y - grid.verticalScrollPosition)
 }
};
var removeFromStage:Function = function(e:Event):void {
 grid.removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE,
positionChangeHandler);
itemEditorInstance.removeEventListener(Event.REMOVED_FROM_STAGE,
removeFromStage);
 };
grid.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE,
positionChangeHandler);
 itemEditorInstance.addEventListener(Event.REMOVED_FROM_STAGE,
removeFromStage);
 localCellOrigin.x -= grid.horizontalScrollPosition;
localCellOrigin.y -= grid.verticalScrollPosition;
 }


Marcus


On 13 August 2013 09:33, João Saleiro <joao.saleiro.webf...@gmail.com>wrote:

> While looking for a quick fix, I got stuck with replacing the
> DataGridEditor used by the DataGrid because of this:
>
> /**
> *  Create the data grid editor. Overriding this function will
> *  allow the complete replacement of the data grid editor.
> */
>         mx_internal function createEditor():DataGridEditor
>
> Shouldn't this method return an IDataGridEditor?
>
> JS
>

Reply via email to