Skip to content

Commit

Permalink
Improved HTML template generation
Browse files Browse the repository at this point in the history
- Improved the different templates with the standard appledoc header (merged from rasterize/appledoc).
- Added the projectCompany and projectName template variable to all template document
  • Loading branch information
Mathieu Monney authored and Mathieu Monney committed Jul 13, 2011
1 parent 2c14b62 commit 5086370
Show file tree
Hide file tree
Showing 5 changed files with 43 additions and 8 deletions.
25 changes: 24 additions & 1 deletion Generating/GBHTMLTemplateVariablesProvider.m
Expand Up @@ -102,6 +102,8 @@ - (NSDictionary *)variablesForClass:(GBClassData *)object withStore:(id)store {
NSMutableDictionary *result = [NSMutableDictionary dictionary];
[result setObject:page forKey:@"page"];
[result setObject:object forKey:@"object"];
[result setObject:self.settings.projectCompany forKey:@"projectCompany"];
[result setObject:self.settings.projectName forKey:@"projectName"];
[result setObject:self.settings.stringTemplates forKey:@"strings"];
return result;
}
Expand All @@ -115,6 +117,9 @@ - (NSDictionary *)variablesForCategory:(GBCategoryData *)object withStore:(id)st
NSMutableDictionary *result = [NSMutableDictionary dictionary];
[result setObject:page forKey:@"page"];
[result setObject:object forKey:@"object"];
[result setObject:self.settings.projectCompany forKey:@"projectCompany"];
[result setObject:self.settings.projectName forKey:@"projectName"];

[result setObject:self.settings.stringTemplates forKey:@"strings"];
return result;
}
Expand All @@ -128,6 +133,8 @@ - (NSDictionary *)variablesForProtocol:(GBProtocolData *)object withStore:(id)st
NSMutableDictionary *result = [NSMutableDictionary dictionary];
[result setObject:page forKey:@"page"];
[result setObject:object forKey:@"object"];
[result setObject:self.settings.projectCompany forKey:@"projectCompany"];
[result setObject:self.settings.projectName forKey:@"projectName"];
[result setObject:self.settings.stringTemplates forKey:@"strings"];
return result;
}
Expand All @@ -142,7 +149,10 @@ - (NSDictionary *)variablesForDocument:(GBDocumentData *)object withStore:(id)st
NSMutableDictionary *result = [NSMutableDictionary dictionary];
[result setObject:page forKey:@"page"];
[result setObject:object forKey:@"object"];
[result setObject:self.settings.projectCompany forKey:@"projectCompany"];
[result setObject:self.settings.projectName forKey:@"projectName"];
[result setObject:self.settings.stringTemplates forKey:@"strings"];
[self addFooterVarsToDictionary:result];
return result;
}

Expand All @@ -159,6 +169,9 @@ - (NSDictionary *)variablesForIndexWithStore:(id)store {
[result setObject:[self protocolsForIndex] forKey:@"protocols"];
[result setObject:[self categoriesForIndex] forKey:@"categories"];
[result setObject:self.settings.stringTemplates forKey:@"strings"];
[result setObject:self.settings.projectCompany forKey:@"projectCompany"];
[result setObject:self.settings.projectName forKey:@"projectName"];

[self addCustomDocumentWithKey:kGBCustomDocumentIndexDescKey toDictionary:result key:@"indexDescription"];
[self registerObjectsUsageForIndexInDictionary:result];
return result;
Expand All @@ -175,6 +188,9 @@ - (NSDictionary *)variablesForHierarchyWithStore:(id)store {
[result setObject:[self protocolsForIndex] forKey:@"protocols"];
[result setObject:[self categoriesForIndex] forKey:@"categories"];
[result setObject:self.settings.stringTemplates forKey:@"strings"];
[result setObject:self.settings.projectCompany forKey:@"projectCompany"];
[result setObject:self.settings.projectName forKey:@"projectName"];

[self registerObjectsUsageForIndexInDictionary:result];
return result;
}
Expand Down Expand Up @@ -245,7 +261,14 @@ - (NSString *)pageTitleForProtocol:(GBProtocolData *)object {

- (NSString *)pageTitleForDocument:(GBDocumentData *)object {
NSString *template = [self.settings.stringTemplates valueForKeyPath:@"documentPage.titleTemplate"];
return [NSString stringWithFormat:template, [[object.nameOfDocument lastPathComponent] stringByDeletingPathExtension]];

//Remove the -template if any
NSString *lastComp=[[object.nameOfDocument lastPathComponent] stringByDeletingPathExtension];
NSString *suffix=@"-template";
if([lastComp hasSuffix:suffix])
lastComp=[lastComp substringToIndex:[lastComp length] - [suffix length]];

return [NSString stringWithFormat:template, lastComp];
}

- (NSDictionary *)specificationsForClass:(GBClassData *)object {
Expand Down
20 changes: 16 additions & 4 deletions Templates/html/document-template.html
Expand Up @@ -12,18 +12,30 @@
<header id="top_header">
<div id="library" class="hideInXcode">
{{#page}}<h1><a id="libraryTitle" href="../index.html">{{projectName}} {{strings/objectPage/libraryTitlePostfix}}</a></h1>
{{#projectCompanyURL}}<a id="developerHome" href="{{projectCompanyURL}}">{{/projectCompanyURL}}{{projectCompany}}{{#projectCompanyURL}}</a>{{/projectCompanyURL}}{{/page}}
<a id="developerHome" href="../index.html">{{projectCompany}}</a>{{/page}}
</div>

<div id="title" role="banner">
<h1 class="hideInXcode">{{page/title}}</h1>
<h1 class="hideInXcode" id="pageTitleHeader">{{page/title}}</h1>
</div>
<ul id="headerButtons" role="toolbar"></ul>
</header>
<article>
<a title="{{page/title}}" name="top"></a>
<div id="container">
{{#object/comment}}{{#longDescription}}{{>GBCommentComponentsList}}{{/longDescription}}{{/object/comment}}
<div id="overview_contents" role="main">
<div id="container">
{{#object/comment}}{{#longDescription}}{{>GBCommentComponentsList}}{{/longDescription}}{{/object/comment}}
</div>
<div id="footer">
<hr />
<div class="footer-copyright">
{{#page}}<p><span class="copyright">&copy; {{copyrightDate}} {{copyrightHolder}}. All rights reserved. (Last updated: {{lastUpdatedDate}})</span>{{/page}}<br />
{{#strings/appledocData}}
<span class="generator">Generated by <a href="{{homepage}}">{{tool}} {{version}} (build {{build}})</a>.</span></p>
{{/strings/appledocData}}

</div>
</div>
</div>
</article>
</body>
Expand Down
2 changes: 1 addition & 1 deletion Templates/html/hierarchy-template.html
Expand Up @@ -10,7 +10,7 @@
<header id="top_header">
<div id="library" class="hideInXcode">
{{#page}}<h1><a id="libraryTitle" href="index.html">{{projectName}} {{strings/objectPage/libraryTitlePostfix}}</a></h1>
<span id="developerHome">{{projectCompany}}</span>{{/page}}
<a id="developerHome" href="index.html">{{projectCompany}}</a>{{/page}}
</div>

<div id="title" role="banner">
Expand Down
2 changes: 1 addition & 1 deletion Templates/html/index-template.html
Expand Up @@ -10,7 +10,7 @@
<header id="top_header">
<div id="library" class="hideInXcode">
{{#page}}<h1><a id="libraryTitle" href="index.html">{{projectName}} {{strings/objectPage/libraryTitlePostfix}}</a></h1>
<span id="developerHome">{{projectCompany}}</span>{{/page}}
<a id="developerHome" href="index.html">{{projectCompany}}</a>{{/page}}
</div>

<div id="title" role="banner">
Expand Down
2 changes: 1 addition & 1 deletion Templates/html/object-template.html
Expand Up @@ -12,7 +12,7 @@
<header id="top_header">
<div id="library" class="hideInXcode">
{{#page}}<h1><a id="libraryTitle" href="../index.html">{{projectName}} {{strings/objectPage/libraryTitlePostfix}}</a></h1>
<span id="developerHome">{{projectCompany}}</span>{{/page}}
<a id="developerHome" href="../index.html">{{projectCompany}}</a>{{/page}}
</div>

<div id="title" role="banner">
Expand Down

0 comments on commit 5086370

Please sign in to comment.