Scott,
You're incredible! Thank you for this.
Tim
On Aug 8, 2009, at 4:55 AM, Scott Wallace wrote:
Hi, Tim, and all,
Attached is a fileout providing changes to the project-info dialog as requested for the benefit of the "showcase" on Squeakland.org.
Basically, the "project info" dialog now contains three "enumerated" items, "Subject", "Age", and "Region". These three are all governed by pop-ups (in local language) rather than by type-ins. The results are included in the project manifest.
Important notes:
(1) It is essential that this be filed in to an image updated at least through update 2246PolygonFix-kfr. If filed in to an earlier image, subsequently loading updates will clobber some of the changes provided here.
(2) Yoshiki is also modifying code in the EToyProjectDetailsMorph area in this same time-frame, so integration is likely to be necessary before our two fileouts are published.
(3) There are a few obvious rough edges which someone may wish to tweak, though I don't know of any show-stoppers. For example, this has always been an English-only dialog, but now that the field names are localized, there may be layout issues in some languages (once translations are available.) Also, for the pop-up fields, if they've never been set they show as blank, whereas once they've been set to "(none)" (equivalent to blank) they show the text "(none)". Probably we should always show "(none)" when values for these three popups have not been supplied. Also, since some of the fields are now type-in and some are pop-ups, perhaps some UI convention (slight color difference?) should be used to hint at whether a field functions as a type-in or a pop-up.
(4) This turned out to involve quite a bit of code, most of it written with a fever and at very late hours. So there's the distinct possibility of errors. I did test it briefly and it seemed to work as I expected. HOWEVER: it really needs verification by someone else.
(5) The Preamble (please read if planning to test or use):
-=------
Change Set: projectInfoPopUps-sw Date: 8 August 2009 Author: Scott Wallace
Changes to the project-info dialog, in support of new data desired for the 'showcase' on squeakland.org:
- 'Sub-Category' removed.
- Subject, Age, and Region are added as pop-ups.
- Choices for Subject, Age, Region popups, and corresponding codes,
obtainable from web-site.
- Project manifest now includes Age, Subject (category,) and Region
info. The codes are strings of numbers, e.g. '554' as a Subject code means 'Language Arts' (look in #defaultAgeTriplets, #defaultSubjectTriplets, #defaultRegionTriplets on class-side of EToyProjectDetailsMorph.)
- Names of fields are presented to the user in localized form.
- Choices for values of pop-up fields are presented to the user in
localized form.
Notes:
- There is support provided for obtaining up-to-date lists of the
subject, age, and region alternatives from the web site (see EToyProjectDetailsMorph class updateTripletsFromWebSite) but it is not actually called at this point, out of concern for potential for long delay if connection to web site is slow.
- The *region* codes are at present *not* obtained from the web-site
(even when the user explicitly calls #updateTripletsFromWebSite,) but rather a 'fake' set of regions, basically the continents, is provided. This is probably temporary. We have no reasonable way to confront the user with a pop-up showing 250 choices.
However, as per Tim's request, I have made it a point to include Antarctica in the region list. (Tim: look at method #defaultRegionTriplets for the current point of departure, if you want to adopt that, temporarily at least, on the web site. And/or of course change any defaults as needed.
Cheers,
-- Scott
<projectInfoPopUps-sw.7.cs.gz>