Opened 12 years ago

Closed 12 years ago

#3765 closed defect (fixed)

InlineEditBox broken when created after is loaded, like in a ContentPane

Reported by: mumme Owned by: mumme
Priority: high Milestone: 0.9
Component: Dijit Version: 0.9
Keywords: dijit, InlineEditBox Cc: bill
Blocked By: Blocking:

Description

InlineEditBox? calls dojo.addOnLoad within postCreate, it should be moved to startup() instead.

That also makes it possible to create a InlineEditBox? from code

 var inlineEdit = new dijit.form.InlineEditBox({});
 var editWidget = new dijit.form.DateTextbox({name:'date'});

 inlineEdit.addChild(editWidget);
 dojo.byId('insertionPlace').appendChild(inlineEdit.domNode);

 inlineEdit.startup(); // scan for editWidget here, not on widget creation

Currently it isn't possible to load a InlineEditBox? within a ContentPane? because of this.

CC'ing bill to get his opinion

Change History (2)

comment:1 Changed 12 years ago by bill

Owner: changed from bill to mumme

We definitely need to have an InlineEditBox? inside a file specified as an href to a ContentPane?.

Yeah, startup() is better. Actually I changed it to startup() in [8906] but Doug removed it in [8908]. The problem is that the current test for programatic creation (in test_InlineEditBox.html is non-standard):

var editorWidget = new dijit.form.Textbox({ value: "Click here to edit a programmatically created<BR>inline edit region" }, document.createElement('span'));
var inlineWidget = new dijit.form.InlineEditBox({ editWidget: editorWidget, renderHTML: true }, 'programmatic');

The test should work like your code above. (I know the current code is shorter, but it breaks down in this case.)

comment:2 Changed 12 years ago by mumme

Resolution: fixed
Status: newclosed

(In [9743]) Defer search for editwidget until startup is called, makes it possible to load a InlineEditBox? in a ContentPane? Modify ContentPane? test file to include a InlineEditBox? Fixes #3765

Note: See TracTickets for help on using tickets.