aboutsummaryrefslogtreecommitdiffstats
path: root/templates/projects
Commit message (Collapse)AuthorAgeFilesLines
* Project template tweaksTor Norbye2012-07-023-0/+0
| | | | | | | | | | | | | | | | | | | | Fix code which derives a project name from an application name such that it skips invalid project name characters. For example, the application name can be "I/O", but the project name should default to just "IO". Second, fix the validator code such that when it is validating a template parameter constraint of "class", it validates it as a class name, not a package name (so you cannot enter dots for example). Third, replace the default project template icons with the standard app icons (for when you disable Create Custom Launcher Icons). Fourth, tweak the templates such that you don't have unused imports when you create an activity without navigation, and remove unused padding dimension resources. Change-Id: I524608bb6347b4275338ec935e8de56bf3184c23
* Miscellaneous wizard fixesTor Norbye2012-06-202-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add minSdk requirements on templates, and attempting to pick a template with a higher minimum SDK than the one used by the current project will result in a validation error message (and the Next button is disabled). Similarly, add a minSdk requirement on options, such as the BlankActivity's navigation type. This is used to block all navigation types except for "none", unless minSdkVersion >= 14. * Add a buildApi property, which the templates use to only conditionally write contents which requires a higher compilation target. For example, the values-v11 and values-v14 folders specifying Theme.Holo.Light and Theme.Holo.Light.DarkActionBar are only written if the build target is at least 11 and 14 respectively. * Fix some other minor issues which prevented the projects from compiling with low minSdkVersions and low build targets. * Replace the default simple activity's layout (which was just a <TextView> with a center gravity, with a <RelativeLayout> containing the <TextView> with center constraints * Make the code which combines the list of templates from extras/ and tools/ smarter; instead of just concatenating the two lists, it now compares them, and when they have the same names (same templates, different versions), it now chooses which one to use based on the template revision number in the metadata file. Moved some code out of TemplateHandler and into a new TemplateManager class, such that I could add metadata caching (since the code to merge templates in multiple files would repeatedly read and parse the metadata for each pair comparison.) Change-Id: I94fc4f754dd7125b5be5c78e61efcfc268f73af5
* Wizard tweaksTor Norbye2012-06-196-13/+9
| | | | | | | | | | | | | | | | | | | | Validate target location such that if the target directory exists, the wizard complains. Fix the icons for custom views and unit test projects such that they have the "+" icon badge indicating that something will be created. Update labels. Replace the single theme defintion which references DarkActionBar such that we have 3 styles, one for pre-11, one for 11-13 and one for 14+ which define the relevant light themes. Remove the unused dimensions in blank projects. Remove the (unused) "Include compatibility code" toggle. Change-Id: I3d42c9544170c7a33754b0e410e9f1421d5c323b
* Dependency support for the templatesTor Norbye2012-06-141-0/+1
| | | | Change-Id: Id6b0e5f65fc3a50b352423623332c47f7ab5085d
* Add format handling to the template wizardsTor Norbye2012-06-141-0/+2
| | | | | | | | | | | | | | | | This changeset adds a format attribute to the templates. When the ADT plugin reads a template file, and the format version is a higher number than one it knows about, it rejects the templates and informs the user to upgrade the plugin. This allows us to change the format of the templates incompatibly in the future without worrying about users with older versions of the plugin running into problems (because they upgraded the tools but not ADT). It also adds a revision number to each template which is used for the opposite purpose: we can tell if a template is a slightly older revision and then do some conditional handling. Change-Id: If6c49012a1beca44c3a05b3e880ffde70294a57e
* Allow project templates to be bundled separatelyTor Norbye2012-06-0415-0/+109
This changeset moves the various FreeMarker templates out of the ADT plugin and over into the tools install area. The code to instantiate templates is simplified a bit now that it no longer needs to both handle files on disk and files read out of the .jar. There's a new first page to the various template wizards which is shown if the tools are not up to date (specifically, if the $SDK/tools/templates/ directory does not exist). This page explains that the tools have to be updated, and the Next button is disabled until they are up to date. This CL also contains some other tweaks suggested by Roman to the activity-to-layout name mapping and misc code changes. Change-Id: I3bc65f54a6b79bbeedfb917a9d34ec0d312f3526