Opened 7 years ago

Closed 7 years ago

Last modified 6 years ago

#16770 closed feature (fixed)

BorderContainer: extend LayoutContainer

Reported by: Wouter Hager Owned by: bill
Priority: undecided Milestone: 1.9
Component: Dijit Version: 1.9.0a1
Keywords: Cc:
Blocked By: Blocking:

Description (last modified by bill)

Since AMD it would be proper to extend BorderContainer from a basic LayoutContainer that has the same features and API, but doesn't need the modules for gutters and splitters.

Change History (12)

comment:1 Changed 7 years ago by bill

Description: modified (diff)
Summary: Create base layout container like BorderContainerBorderContainer: extend LayoutContainer

Although BorderContainer isn't a subclass of LayoutContainer, they do share the layout code, which is in dijit/layout/utils::layoutChildren(). That's why LayoutContainer.js is a trivially small file.

Probably BorderContainer extending LayoutContainer makes sense. Is there some specific reason you wanted this? IIRC it wouldn't actually change the API or have any practical effect on applications.

comment:2 Changed 7 years ago by bill

Resolution: fixed
Status: newclosed

In [30765]:

Undeprecate (precate?) the LayoutContainer code, and make BorderContainer extend LayoutContainer. Fixes #16770 !strict. Will add reference doc too.

comment:3 Changed 7 years ago by bill

In [30766]:

Handle "leading" and "trailing" regions in LayoutContainer rather than BorderContainer. Also handle setting of classes on children widgets there. Refs #16770 !strict.

comment:4 Changed 7 years ago by bill

Milestone: tbd1.9

comment:5 Changed 7 years ago by bill

In [30767]:

avoid spurious error about region being undefined, refs #16770

comment:6 Changed 7 years ago by ben hockey

comment:7 in reply to:  6 Changed 7 years ago by Wouter Hager

Replying to neonstalwart:

http://bugs.dojotoolkit.org/browser/dojo/dijit/trunk/layout/LayoutContainer.js?rev=30767#L22 mentions splitters - is that a doc typo?

Probably, it's not in any dependencies.

comment:8 in reply to:  6 Changed 7 years ago by bill

Replying to neonstalwart:

http://bugs.dojotoolkit.org/browser/dojo/dijit/trunk/layout/LayoutContainer.js?rev=30767#L22 mentions splitters - is that a doc typo?

Ah right, cut-and-paste error, thanks.

comment:9 Changed 7 years ago by bill

In [30777]:

fix cut-and-paste error in doc, refs #16770 !strict

comment:10 Changed 7 years ago by bill

BTW (regarding the ticket description), this actually has nothing to do with AMD.

comment:11 Changed 6 years ago by bill

In [31173]:

Add tests for LayoutContainer's new API: LayoutContainer.design and children using region and layoutPriority. Note that for backwards compatibility, "design" shouldn't affect children that set layoutAlign instead of region. This is basically "accidentally" working due to the way _getOrderedChildren() happens to be written. Refs #16770 !strict.

Also convert uses of deprecated layoutAlign in calls to utils.layoutChildren() to region, refs #16585 !strict.

comment:39 Changed 6 years ago by bill

In [31174]:

revert unintended change from [31173], refs #16770 !strict.

Note: See TracTickets for help on using tickets.