summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/droiddoc/src/DroidDoc.java9
-rw-r--r--tools/droiddoc/src/SampleCode.java34
-rw-r--r--tools/droiddoc/templates/sampleindex.cs50
3 files changed, 66 insertions, 27 deletions
diff --git a/tools/droiddoc/src/DroidDoc.java b/tools/droiddoc/src/DroidDoc.java
index f48b56c..a1c49f0 100644
--- a/tools/droiddoc/src/DroidDoc.java
+++ b/tools/droiddoc/src/DroidDoc.java
@@ -96,6 +96,7 @@ public class DroidDoc
//Create the dependency graph for the stubs directory
boolean apiXML = false;
boolean noDocs = false;
+ boolean offlineMode = false;
String apiFile = null;
String debugStubsFile = "";
HashSet<String> stubPackages = null;
@@ -194,6 +195,9 @@ public class DroidDoc
else if (a[0].equals("-since")) {
sinceTagger.addVersion(a[1], a[2]);
}
+ else if (a[0].equals("-offlinemode")) {
+ offlineMode = true;
+ }
}
// read some prefs from the template
@@ -246,7 +250,7 @@ public class DroidDoc
// Sample Code
for (SampleCode sc: sampleCodes) {
- sc.write();
+ sc.write(offlineMode);
}
// Index page
@@ -419,6 +423,9 @@ public class DroidDoc
if (option.equals("-since")) {
return 3;
}
+ if (option.equals("-offlinemode")) {
+ return 1;
+ }
return 0;
}
diff --git a/tools/droiddoc/src/SampleCode.java b/tools/droiddoc/src/SampleCode.java
index e2283bd..1f00be2 100644
--- a/tools/droiddoc/src/SampleCode.java
+++ b/tools/droiddoc/src/SampleCode.java
@@ -38,13 +38,14 @@ public class SampleCode {
}
}
- public void write() {
+ public void write(boolean offlineMode) {
File f = new File(mSource);
if (!f.isDirectory()) {
System.out.println("-samplecode not a directory: " + mSource);
return;
}
- writeDirectory(f, mDest);
+ if (offlineMode) writeIndexOnly(f, mDest);
+ else writeDirectory(f, mDest);
}
public static String convertExtension(String s, String ext) {
@@ -99,10 +100,8 @@ public class SampleCode {
// write the index page
int i;
- HDF hdf = DroidDoc.makeHDF();
- hdf.setValue("page.title", dir.getName() + " - " + mTitle);
- hdf.setValue("projectTitle", mTitle);
+ HDF hdf = writeIndex(dir);
hdf.setValue("subdir", subdir);
i=0;
for (String d: dirs) {
@@ -115,15 +114,32 @@ public class SampleCode {
hdf.setValue("files." + i + ".href", convertExtension(f, ".html"));
i++;
}
+
+ ClearPage.write(hdf, "sampleindex.cs", relative + "/index" + DroidDoc.htmlExtension);
+ }
+
+ public void writeIndexOnly(File dir, String relative) {
+ HDF hdf = writeIndex(dir);
+ ClearPage.write(hdf, "sampleindex.cs", relative + "/index" +
+ DroidDoc.htmlExtension);
+ }
+
+ public HDF writeIndex(File dir) {
+ HDF hdf = DroidDoc.makeHDF();
+
+ hdf.setValue("page.title", dir.getName() + " - " + mTitle);
+ hdf.setValue("projectTitle", mTitle);
+
String filename = dir.getPath() + "/_index.html";
- String summary = SampleTagInfo.readFile(new SourcePositionInfo(filename, -1,-1), filename,
- "sample code", true, false, true);
+ String summary = SampleTagInfo.readFile(new SourcePositionInfo(filename,
+ -1,-1), filename, "sample code", true, false, true);
+
if (summary == null) {
summary = "";
}
hdf.setValue("summary", summary);
-
- ClearPage.write(hdf, "sampleindex.cs", relative + "/index" + DroidDoc.htmlExtension);
+
+ return hdf;
}
public void writePage(File f, String out, String subdir) {
diff --git a/tools/droiddoc/templates/sampleindex.cs b/tools/droiddoc/templates/sampleindex.cs
index 6e57cfd..9842384 100644
--- a/tools/droiddoc/templates/sampleindex.cs
+++ b/tools/droiddoc/templates/sampleindex.cs
@@ -20,23 +20,39 @@
<?cs var:summary ?>
-<?cs if:subcount(subdirs) ?>
- <h2>Subdirectories</h2>
- <ul class="nolist">
- <?cs each:dir=subdirs ?>
- <li><a href="<?cs var:dir.name ?>/index.html"><?cs var:dir.name ?>/</a></li>
- <?cs /each ?>
- </ul>
-<?cs /if ?>
-
-<?cs if:subcount(files) ?>
- <h2>Files</h2>
- <ul class="nolist">
- <?cs each:file=files ?>
- <li><a href="<?cs var:file.href ?>"><?cs var:file.name ?></a></li>
- <?cs /each ?>
- </ul>
-<?cs /if ?>
+<?cs if:android.whichdoc == "online" ?><?cs
+ # If this is the online docs, build the src code navigation links ?>
+
+ <?cs if:subcount(subdirs) ?>
+ <h2>Subdirectories</h2>
+ <ul class="nolist">
+ <?cs each:dir=subdirs ?>
+ <li><a href="<?cs var:dir.name ?>/index.html"><?cs
+ var:dir.name ?>/</a></li>
+ <?cs /each ?>
+ </ul>
+ <?cs /if ?>
+
+ <?cs if:subcount(files) ?>
+ <h2>Files</h2>
+ <ul class="nolist">
+ <?cs each:file=files ?>
+ <li><a href="<?cs var:file.href ?>"><?cs
+ var:file.name ?></a></li>
+ <?cs /each ?>
+ </ul>
+ <?cs /if ?>
+
+<?cs else ?><?cs
+ # else, this means it's offline docs,
+ so don't show src links (we don't have the pages!) ?>
+
+<p>You can find the source code for this sample in your SDK at:</p>
+<p style="margin-left:2em">
+<code><em>&lt;sdk&gt;</em>/platforms/android-<em>&lt;version&gt;</em>/samples/</code>
+</p>
+
+<?cs /if ?><?cs # end if/else online docs ?>
<?cs include:"footer.cs" ?>
</div><!-- end jd-content -->