GWT version: 2.5.0.
SmartGWT version: 3.1-p20130226
I would like to have a TabSet for which I can arbitrarily remove and add tabs.
Here is what I do in the code:
If I do this any content in the tab that I removed appears to be lost/destroyed. I can no longer access that content without getting exceptions.
(I have a sample program that demonstrates this but even though it’s a sample program it’s a little long. I will be happy to provide that code if needed.)
Additionally I get this warning message on the developer console when I remove the tab.
Some questions:
SmartGWT version: 3.1-p20130226
I would like to have a TabSet for which I can arbitrarily remove and add tabs.
Here is what I do in the code:
- add a tab with some content
- remove the tab
- add the tab back in
If I do this any content in the tab that I removed appears to be lost/destroyed. I can no longer access that content without getting exceptions.
(I have a sample program that demonstrates this but even though it’s a sample program it’s a little long. I will be happy to provide that code if needed.)
Additionally I get this warning message on the developer console when I remove the tab.
Code:
15:26:05.546:MUP4:WARN:DynamicForm:isc_DynamicForm_0:Attempt to access destroyed widget in the DOM - destroy() called at invalid time (eg: mid-draw) or invalid method called on destroy()d widget. Stack Trace: [a]MathFunction.getStackTrace(_1=>undef, _2=>undef, _3=>undef, _4=>undef, _5=>undef) Canvas.getHandle() Canvas.$p9() Canvas.draw(_1=>undef, undef, undef, undef, undef, undef, undef, undef) [a]MathFunction.invokeSuper(_1=>[Class DynamicForm], _2=>"draw", _3=>undef, _4=>undef, _5=>undef, _6=>undef, _7=>undef, _8=>undef, _9=>undef, _10=>undef) DynamicForm.draw(_1=>undef, _2=>undef, _3=>undef, _4=>undef) Layout.addMembers(_1=>[DynamicForm ID:isc_DynamicForm_0], _2=>undef, _3=>undef) Layout.addMember(_1=>[DynamicForm ID:isc_DynamicForm_0], _2=>undef, _3=>undef) TabSet.createPane(_1=>[DynamicForm ID:isc_DynamicForm_0], _2=>Obj{ID:isc_Tab_1}) TabSet.addTabs(_1=>Array[1], _2=>1) TabSet.addTab(_1=>Obj{ID:isc_Tab_1}, _2=>undef) anonymous(tabJS=>Obj{ID:isc_Tab_1}) anonymous(thisObj=>IButton{ID: "isc_IButton_3", title: "add tab", position: "absolute", left: 345, redrawOnResize: false, styleName: null, parentElement: [HLayout ID:isc_HLayout_0], topElement: [VLayout ID:isc_VLayout_0], tabIndex: 1358, cacheOffsetCoords: true, zIndex: 200108, state: "Over", hasFocus: true, }, . . . (Much more similar stuff in the log)
- Is this the expected behavior?
- Is there a recommended way to make tabs disappear and reappear without having to rebuild the tab and the content of the tab every time the tab is added back in?
Comment