From 2aa23056d44c96db88d7cab700243886f6c00304 Mon Sep 17 00:00:00 2001
From: Kenneth Russel <kbrussel@alum.mit.edu>
Date: Mon, 17 Apr 2006 21:26:26 +0000
Subject: Fixed Issue 212: Incorporate patch to add URL links to GL javadoc

Incorporated patch from user cylab on javagaming.org forums to
generate @native tags in GL javadoc which are postprocessed using a
taglet:
  http://www.javagaming.org/forums/index.php?topic=12629.0
Modified supplied patch to restrict the @native designation to only
the function name, and to understand OpenGL data type-related suffixes
(i.e., glVertex -> glVertex3f).


git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@29 a78bb65f-1512-4460-ba86-f6dc96a7bf27
---
 src/java/com/sun/gluegen/JavaConfiguration.java | 10 ++++++++++
 1 file changed, 10 insertions(+)

(limited to 'src/java/com/sun/gluegen/JavaConfiguration.java')

diff --git a/src/java/com/sun/gluegen/JavaConfiguration.java b/src/java/com/sun/gluegen/JavaConfiguration.java
index 18001aa..39c1bf3 100644
--- a/src/java/com/sun/gluegen/JavaConfiguration.java
+++ b/src/java/com/sun/gluegen/JavaConfiguration.java
@@ -70,6 +70,12 @@ public class JavaConfiguration {
    * directory nativeOutputDir/packageAsPath(packageName). Default is false.
    */
   private boolean nativeOutputUsesJavaHierarchy;
+  /**
+   * If true, then the comment of a native method binding will include a @native tag
+   * to allow taglets to augment the javadoc with additional information regarding
+   * the mapped C function. Defaults to false.
+   */
+  private boolean tagNativeBinding;
   /**
    * Style of code emission. Can emit everything into one class
    * (AllStatic), separate interface and implementing classes
@@ -227,6 +233,8 @@ public class JavaConfiguration {
   public String      nativeOutputDir()               { return nativeOutputDir; }
   /** Returns whether the native code directory structure mirrors the Java hierarchy. */
   public boolean     nativeOutputUsesJavaHierarchy() { return nativeOutputUsesJavaHierarchy; }
+  /** Returns whether the comment of a native method binding should include a @native tag. */
+  public boolean     tagNativeBinding()              { return tagNativeBinding; }
   /** Returns the code emission style (constants in JavaEmitter) parsed from the configuration file. */
   public int         emissionStyle()                 { return emissionStyle; }
   /** Returns the access control for the emitted Java method. Returns one of JavaEmitter.ACC_PUBLIC, JavaEmitter.ACC_PROTECTED, JavaEmitter.ACC_PRIVATE, or JavaEmitter.ACC_PACKAGE_PRIVATE. */
@@ -607,6 +615,8 @@ public class JavaConfiguration {
     } else if (cmd.equalsIgnoreCase("HierarchicalNativeOutput")) {
       String tmp = readString("HierarchicalNativeOutput", tok, filename, lineNo);
       nativeOutputUsesJavaHierarchy = Boolean.valueOf(tmp).booleanValue();
+    } else if (cmd.equalsIgnoreCase("TagNativeBinding")) {
+      tagNativeBinding = readBoolean("TagNativeBinding", tok, filename, lineNo).booleanValue();
     } else if (cmd.equalsIgnoreCase("Style")) {
       String style = readString("Style", tok, filename, lineNo);
       if (style.equalsIgnoreCase("AllStatic")) {
-- 
cgit v1.2.3