Opened 8 years ago

Closed 8 years ago

Last modified 7 years ago

#13494 closed task (fixed)

change dijit to use module return values

Reported by: bill Owned by: bill
Priority: high Milestone: 1.7
Component: Dijit Version: 1.7.0b1
Keywords: Cc:
Blocked By: Blocking:

Description

Convert dijit to baseless, accessing module return values rather than dojo and dijit globals.

Change History (30)

comment:1 Changed 8 years ago by bill

(In [25874]) Convert dijit/_base to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13490 !strict.

comment:2 Changed 8 years ago by bill

(In [25875]) fix IE issue, refs #13494 !strict

comment:3 Changed 8 years ago by bill

(In [25879]) Split marginBox2ContentBox() and layoutChildren() to a separate file, refs #13494 !strict.

comment:4 Changed 8 years ago by bill

(In [25882]) Convert dijit/layout to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13494 !strict.

comment:5 Changed 8 years ago by bill

(In [25883]) fix typo in hint to API doc parser, refs #13494 !strict.

comment:6 Changed 8 years ago by bill

(In [25887]) use dojo/_base/config to get pointer to config options, refs #13494 !strict.

comment:7 Changed 8 years ago by bill

(In [25914]) Convert widget base classes/mixins to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13494 !strict.

(In [25961]) Convert remaining dijit top level files, excluding Tree and Editor, to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13490 !strict.

comment:8 Changed 8 years ago by bill

(In [25962]) Convert Tree to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13494 !strict.

comment:9 Changed 8 years ago by bill

(In [25993]) Convert Form base classes to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13494 !strict.

comment:10 Changed 8 years ago by bill

(In [25980]) Convert Editor to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Also making fromRgb() (nee colorFromRgb()) available in the module return value of dojo/colors.js. Refs #13494 !strict.

comment:11 Changed 8 years ago by bill

In [26017]:

Convert remaining Form classes to use module return values rather than dojo and dijit globals Refs #13494 !strict.

comment:12 Changed 8 years ago by bill

(In [25993]) Convert Form base classes to use module return values rather than dojo and dijit globals. Gets rid of references to dojo global, and some references to dijit global. Refs #13494 !strict.

comment:13 Changed 8 years ago by bill

In [26050]:

Access dijit functions through dijit/_base/manager etc., rather than through dijit "global" variable. Remaining uses of dijit global are: (1) dijit._scopeName, (2) exporting functions to dijit namespace, (3) templates

Also splits out tabindex related functions from dijit/_base/manager.js to separate dijit/a11y.js).

Refs #13494 !strict.

Note: I moved tracking of the dijit/_base/manager changes to #13603.

Last edited 8 years ago by bill (previous) (diff)

comment:14 Changed 8 years ago by bill

In [26051]:

Make dojo.dnd.manager() available from dojo/dnd/Manager.js module return value (i.e., as Manager.manager()), and update dijit to use it. Refs #13494 !strict.

comment:15 Changed 8 years ago by bill

In [26052]:

Refactor dijit/_base/manager.js, putting common registry related methods into dijit/registry.js, and WidgetSet stuff in WidgetSet.js. WidgetSet is essentially deprecated, and dijit/_base/manager in general is unneeded; most widgets can just require dijit/registry to get the functions they need (byId(), byNode(), etc.) WidgetSet.js is still automatically loaded in legacy mode, when async:false, just in case some old app was depending on features like dijit.registry.forEach().

Refs #13494 !strict.

Version 0, edited 8 years ago by bill (next)

comment:16 Changed 8 years ago by liucougar

In [26061]:

Refs #13494: dojo.registry.filter(...) -> dojo.forEach(dojo.registry.toArray(),...)

!strict

Note: I moved tracking of the dijit/_base/manager changes to #13603.

Last edited 8 years ago by bill (previous) (diff)

comment:17 Changed 8 years ago by bill

Resolution: fixed
Status: newclosed

In [26066]:

Convert a few missed dojo and dijit references. I think this gets rid of all remaining dojo and dijit references from the dijit/ tree, except for code that exports symbols to the dijit namespace (ex: dijit.focus), which I guess needs to stay around until 2.0.

Fixes #13494 !strict.

comment:18 Changed 8 years ago by bill

In [26071]:

Make dijit.byId() etc. available in legacy (non AMD) mode even when dojo/_base/manager not explicitly loaded. Refs #13494 !strict.

Note: I moved tracking of the dijit/_base/manager changes to #13603.

Last edited 8 years ago by bill (previous) (diff)

comment:19 Changed 8 years ago by bill

In [26072]:

Missed a dijit reference, refs #13494 !strict.

comment:20 Changed 8 years ago by bill

In [26073]:

Fix dijit references in dojox/mobile, except for strange reimplementation of dijit.getEnclosingWidget(), refs #13494 !strict.

comment:21 Changed 8 years ago by bill

In [26076]:

Need to export ImgLinkDialog, especially since it's accessed from a dojox.editor plugin, refs #13494 !strict.

comment:22 Changed 8 years ago by bill

In [26357]:

Hack so API doc parser can parse this page, refs #13494 !strict.

comment:23 Changed 8 years ago by bill

In [27312]:

missed a spot in the baseless conversion, refs #13494 !strict.

comment:24 Changed 8 years ago by bill

In [27551]:

Remove unused dependency, refs #13494 !strict.

comment:25 Changed 8 years ago by bill

In [27974]:

Fix lingering reference to dijit global, refs #13494 !strict Also missing semicolon in focus.js.

comment:26 Changed 8 years ago by bill

In [28263]:

Fix error from [25961] preventing specifying datePackage as a string (back-compat support), refs #13494, fixes #15111 !strict, thanks cjolif.

comment:27 Changed 7 years ago by bill

In [28684]:

Although dojo.date.locale is accessible via the dojo.date global (until 2.0), it can't be accessed from the dojo/date module export, at least after [28655].

Thus the "datePackage" widget parameter is architecturally flawed, because it's overloaded to specify both the dojo/date and dojo/date/locale modules. Leaving it in place until 2.0, but at that point it should be replaced by dateModule and dateLocalModule parameters specifying MID's (or directly specifying Objects). Alternately we should just get rid of it since the AMD loader supports remapping of module ids, so that dojo/date could be remapped to dojox/date/hebrew (etc.) by the application.

Refs #5074, #13494 !strict.

comment:17 Changed 7 years ago by bill

In [30406]:

remove unused dependency on dojo/config, refs #13494 !strict.

comment:18 Changed 7 years ago by bill

In [30407]:

defaultDuration is (currently) defined in dijit/_base/manager, not dijit/registry, refs #13494 (specifically [26052]), !strict

comment:19 Changed 7 years ago by bill

In [30564]:

make dijit/editor/range more AMD-ish, and remove some other references to the dijit global-ish variable, refs #13494 !strict

Note: See TracTickets for help on using tickets.