Permalink
Browse files

Initial commit

  • Loading branch information...
emmanue1 committed Mar 25, 2015
0 parents commit 44b26e98882edb0ad3f00e8da6adde472e345c25
Showing with 13,300 additions and 0 deletions.
  1. +29 −0 .gitignore
  2. +676 −0 LICENSE
  3. +12 −0 NOTICE
  4. +52 −0 README.md
  5. +1 −0 api/build.gradle
  6. +48 −0 api/src/main/java/jd/gui/api/API.java
  7. +12 −0 api/src/main/java/jd/gui/api/feature/ContainerEntryGettable.java
  8. +10 −0 api/src/main/java/jd/gui/api/feature/ContentCopyable.java
  9. +13 −0 api/src/main/java/jd/gui/api/feature/ContentIndexable.java
  10. +16 −0 api/src/main/java/jd/gui/api/feature/ContentSavable.java
  11. +14 −0 api/src/main/java/jd/gui/api/feature/ContentSearchable.java
  12. +10 −0 api/src/main/java/jd/gui/api/feature/ContentSelectable.java
  13. +10 −0 api/src/main/java/jd/gui/api/feature/FocusedTypeGettable.java
  14. +14 −0 api/src/main/java/jd/gui/api/feature/IndexesChangeListener.java
  15. +14 −0 api/src/main/java/jd/gui/api/feature/LineNumberNavigable.java
  16. +12 −0 api/src/main/java/jd/gui/api/feature/PageChangeListener.java
  17. +10 −0 api/src/main/java/jd/gui/api/feature/PageChangeable.java
  18. +10 −0 api/src/main/java/jd/gui/api/feature/PageClosable.java
  19. +14 −0 api/src/main/java/jd/gui/api/feature/PageCreator.java
  20. +12 −0 api/src/main/java/jd/gui/api/feature/PreferencesChangeListener.java
  21. +25 −0 api/src/main/java/jd/gui/api/feature/SourcesSavable.java
  22. +12 −0 api/src/main/java/jd/gui/api/feature/TreeNodeExpandable.java
  23. +12 −0 api/src/main/java/jd/gui/api/feature/UriGettable.java
  24. +42 −0 api/src/main/java/jd/gui/api/feature/UriOpenable.java
  25. +37 −0 api/src/main/java/jd/gui/api/model/Container.java
  26. +68 −0 api/src/main/java/jd/gui/api/model/Indexes.java
  27. +18 −0 api/src/main/java/jd/gui/api/model/TreeNodeData.java
  28. +66 −0 api/src/main/java/jd/gui/api/model/Type.java
  29. +20 −0 api/src/main/java/jd/gui/spi/ContainerFactory.java
  30. +20 −0 api/src/main/java/jd/gui/spi/FileLoader.java
  31. +20 −0 api/src/main/java/jd/gui/spi/Indexer.java
  32. +18 −0 api/src/main/java/jd/gui/spi/PanelFactory.java
  33. +14 −0 api/src/main/java/jd/gui/spi/PasteHandler.java
  34. +29 −0 api/src/main/java/jd/gui/spi/PreferencesPanel.java
  35. +32 −0 api/src/main/java/jd/gui/spi/SourceSaver.java
  36. +22 −0 api/src/main/java/jd/gui/spi/TreeNodeFactory.java
  37. +20 −0 api/src/main/java/jd/gui/spi/TypeFactory.java
  38. +18 −0 api/src/main/java/jd/gui/spi/UriLoader.java
  39. +9 −0 app/build.gradle
  40. +40 −0 app/src/main/groovy/jd/gui/App.groovy
  41. +21 −0 app/src/main/groovy/jd/gui/Constants.groovy
  42. +25 −0 app/src/main/groovy/jd/gui/controller/GoToController.groovy
  43. +530 −0 app/src/main/groovy/jd/gui/controller/MainController.groovy
  44. +238 −0 app/src/main/groovy/jd/gui/controller/OpenTypeController.groovy
  45. +84 −0 app/src/main/groovy/jd/gui/controller/OpenTypeHierarchyController.groovy
  46. +26 −0 app/src/main/groovy/jd/gui/controller/PreferencesController.groovy
  47. +83 −0 app/src/main/groovy/jd/gui/controller/SaveAllSourcesController.groovy
  48. +408 −0 app/src/main/groovy/jd/gui/controller/SearchInConstantPoolsController.groovy
  49. +164 −0 app/src/main/groovy/jd/gui/controller/SelectLocationController.groovy
  50. +31 −0 app/src/main/groovy/jd/gui/model/configuration/Configuration.groovy
  51. +72 −0 app/src/main/groovy/jd/gui/model/container/FilteredContainerWrapper.groovy
  52. +73 −0 app/src/main/groovy/jd/gui/model/history/History.groovy
  53. +14 −0 app/src/main/groovy/jd/gui/service/configuration/ConfigurationPersister.groovy
  54. +15 −0 app/src/main/groovy/jd/gui/service/configuration/ConfigurationPersisterService.groovy
  55. +118 −0 app/src/main/groovy/jd/gui/service/configuration/ConfigurationXmlPersisterProvider.groovy
  56. +20 −0 app/src/main/groovy/jd/gui/service/container/ContainerFactoryService.groovy
  57. +31 −0 app/src/main/groovy/jd/gui/service/fileloader/FileLoaderService.groovy
  58. +86 −0 app/src/main/groovy/jd/gui/service/indexer/IndexerService.groovy
  59. +110 −0 app/src/main/groovy/jd/gui/service/mainpanel/ContainerPanelFactoryProvider.groovy
  60. +32 −0 app/src/main/groovy/jd/gui/service/mainpanel/PanelFactoryService.groovy
  61. +22 −0 app/src/main/groovy/jd/gui/service/pastehandler/PasteHandlerService.groovy
  62. +29 −0 app/src/main/groovy/jd/gui/service/platform/PlatformService.groovy
  63. +13 −0 app/src/main/groovy/jd/gui/service/preferencespanel/PreferencesPanelService.groovy
  64. +86 −0 app/src/main/groovy/jd/gui/service/sourcesaver/SourceSaverService.groovy
  65. +87 −0 app/src/main/groovy/jd/gui/service/treenode/TreeNodeFactoryService.groovy
  66. +93 −0 app/src/main/groovy/jd/gui/service/type/TypeFactoryService.groovy
  67. +28 −0 app/src/main/groovy/jd/gui/service/uriloader/UriLoaderService.groovy
  68. +45 −0 app/src/main/groovy/jd/gui/util/UriUtil.groovy
  69. +39 −0 app/src/main/groovy/jd/gui/view/GoToDescription.groovy
  70. +121 −0 app/src/main/groovy/jd/gui/view/GoToView.groovy
  71. +291 −0 app/src/main/groovy/jd/gui/view/MainDescription.groovy
  72. +321 −0 app/src/main/groovy/jd/gui/view/MainView.groovy
  73. +53 −0 app/src/main/groovy/jd/gui/view/OpenTypeDescription.groovy
  74. +40 −0 app/src/main/groovy/jd/gui/view/OpenTypeHierarchyDescription.groovy
  75. +313 −0 app/src/main/groovy/jd/gui/view/OpenTypeHierarchyView.groovy
  76. +200 −0 app/src/main/groovy/jd/gui/view/OpenTypeView.groovy
  77. +39 −0 app/src/main/groovy/jd/gui/view/PreferencesDescription.groovy
  78. +138 −0 app/src/main/groovy/jd/gui/view/PreferencesView.groovy
  79. +29 −0 app/src/main/groovy/jd/gui/view/SaveAllSourcesDescription.groovy
  80. +76 −0 app/src/main/groovy/jd/gui/view/SaveAllSourcesView.groovy
  81. +87 −0 app/src/main/groovy/jd/gui/view/SearchInConstantPoolsDescription.groovy
  82. +300 −0 app/src/main/groovy/jd/gui/view/SearchInConstantPoolsView.groovy
  83. +224 −0 app/src/main/groovy/jd/gui/view/SelectLocationView.groovy
  84. +18 −0 app/src/main/groovy/jd/gui/view/bean/OpenTypeListCellBean.groovy
  85. +18 −0 app/src/main/groovy/jd/gui/view/component/IconButton.groovy
  86. +95 −0 app/src/main/groovy/jd/gui/view/component/List.groovy
  87. +23 −0 app/src/main/groovy/jd/gui/view/component/Tree.groovy
  88. +144 −0 app/src/main/groovy/jd/gui/view/component/panel/MainTabbedPanel.groovy
  89. +183 −0 app/src/main/groovy/jd/gui/view/component/panel/TabbedPanel.groovy
  90. +216 −0 app/src/main/groovy/jd/gui/view/component/panel/TreeTabbedPanel.groovy
  91. +96 −0 app/src/main/groovy/jd/gui/view/renderer/OpenTypeListCellRenderer.groovy
  92. +79 −0 app/src/main/groovy/jd/gui/view/renderer/TreeNodeRenderer.groovy
  93. +1 −0 app/src/main/resources/META-INF/services/jd.gui.spi.PanelFactory
  94. BIN app/src/main/resources/images/Icon_java_128.png
  95. BIN app/src/main/resources/images/Icon_java_64.png
  96. BIN app/src/main/resources/images/backward_nav.png
  97. BIN app/src/main/resources/images/close.gif
  98. BIN app/src/main/resources/images/close_active.gif
  99. BIN app/src/main/resources/images/forward_nav.png
  100. BIN app/src/main/resources/images/next_nav.png
  101. BIN app/src/main/resources/images/open.png
  102. BIN app/src/main/resources/images/open_type.png
  103. BIN app/src/main/resources/images/prev_nav.png
  104. BIN app/src/main/resources/images/search_src.png
  105. BIN app/src/main/resources/images/splash.gif
  106. +60 −0 build.gradle
  107. +11 −0 services/build.gradle
  108. BIN services/lib/jd-core-0.7.1.jar
  109. +144 −0 services/src/main/groovy/jd/gui/model/container/GenericContainer.groovy
  110. +22 −0 services/src/main/groovy/jd/gui/model/container/JarContainer.groovy
  111. +25 −0 services/src/main/groovy/jd/gui/service/container/GenericContainerFactoryProvider.groovy
  112. +47 −0 services/src/main/groovy/jd/gui/service/container/JarContainerFactoryProvider.groovy
  113. +51 −0 services/src/main/groovy/jd/gui/service/fileloader/AbstractFileLoaderProvider.groovy
  114. +68 −0 services/src/main/groovy/jd/gui/service/fileloader/ClassFileLoaderProvider.groovy
  115. +18 −0 services/src/main/groovy/jd/gui/service/fileloader/JarFileLoaderProvider.groovy
  116. +24 −0 services/src/main/groovy/jd/gui/service/fileloader/LogFileLoaderProvider.groovy
  117. +42 −0 services/src/main/groovy/jd/gui/service/fileloader/ZipFileLoaderProvider.groovy
  118. +45 −0 services/src/main/groovy/jd/gui/service/indexer/DirectoryIndexerProvider.groovy
  119. +31 −0 services/src/main/groovy/jd/gui/service/indexer/MetainfServiceFileIndexerProvider.groovy
  120. +25 −0 services/src/main/groovy/jd/gui/service/indexer/TextFileIndexerProvider.groovy
  121. +93 −0 services/src/main/groovy/jd/gui/service/indexer/XmlFileIndexerProvider.groovy
  122. +31 −0 services/src/main/groovy/jd/gui/service/indexer/ZipFileIndexerProvider.groovy
  123. +23 −0 services/src/main/groovy/jd/gui/service/pastehandler/LogPasteHandler.groovy
  124. +76 −0 services/src/main/groovy/jd/gui/service/preferencespanel/ClassFileSaverPreferencesProvider.groovy
  125. +70 −0 services/src/main/groovy/jd/gui/service/preferencespanel/ClassFileViewerPreferencesProvider.groovy
  126. +78 −0 services/src/main/groovy/jd/gui/service/preferencespanel/DirectoryIndexerPreferencesProvider.groovy
  127. +59 −0 services/src/main/groovy/jd/gui/service/sourcesaver/DirectorySourceSaverProvider.groovy
  128. +34 −0 services/src/main/groovy/jd/gui/service/sourcesaver/FileSourceSaverProvider.groovy
  129. +21 −0 services/src/main/groovy/jd/gui/service/sourcesaver/PackageSourceSaverProvider.groovy
  130. +50 −0 services/src/main/groovy/jd/gui/service/sourcesaver/ZipFileSourceSaverProvider.groovy
  131. +424 −0 services/src/main/groovy/jd/gui/service/treenode/ClassFileTreeNodeFactoryProvider.groovy
  132. +92 −0 services/src/main/groovy/jd/gui/service/treenode/DirectoryTreeNodeFactoryProvider.groovy
  133. +41 −0 services/src/main/groovy/jd/gui/service/treenode/DtdFileTreeNodeFactoryProvider.groovy
  134. +42 −0 services/src/main/groovy/jd/gui/service/treenode/FileTreeNodeFactoryProvider.groovy
  135. +41 −0 services/src/main/groovy/jd/gui/service/treenode/HtmlFileTreeNodeFactoryProvider.groovy
  136. +38 −0 services/src/main/groovy/jd/gui/service/treenode/JarFileTreeNodeFactoryProvider.groovy
  137. +41 −0 services/src/main/groovy/jd/gui/service/treenode/JavascriptFileTreeNodeFactoryProvider.groovy
  138. +37 −0 services/src/main/groovy/jd/gui/service/treenode/ManifestFileTreeNodeFactoryProvider.groovy
  139. +16 −0 services/src/main/groovy/jd/gui/service/treenode/MetainfDirectoryTreeNodeFactoryProvider.groovy
  140. +16 −0 services/src/main/groovy/jd/gui/service/treenode/MetainfServiceFileTreeNodeFactoryProvider.groovy
  141. +61 −0 services/src/main/groovy/jd/gui/service/treenode/PackageTreeNodeFactoryProvider.groovy
  142. +41 −0 services/src/main/groovy/jd/gui/service/treenode/PropertiesFileTreeNodeFactoryProvider.groovy
  143. +71 −0 services/src/main/groovy/jd/gui/service/treenode/TextFileTreeNodeFactoryProvider.groovy
  144. +41 −0 services/src/main/groovy/jd/gui/service/treenode/XmlFileTreeNodeFactoryProvider.groovy
  145. +57 −0 services/src/main/groovy/jd/gui/service/treenode/ZipFileTreeNodeFactoryProvider.groovy
  146. +21 −0 services/src/main/groovy/jd/gui/service/uriloader/FileUriLoaderProvider.groovy
  147. +93 −0 services/src/main/groovy/jd/gui/util/JarContainerEntryUtil.groovy
  148. +657 −0 services/src/main/groovy/jd/gui/view/component/ClassFilePage.groovy
  149. +112 −0 services/src/main/groovy/jd/gui/view/component/HyperlinkPage.groovy
  150. +133 −0 services/src/main/groovy/jd/gui/view/component/LogPage.groovy
  151. +197 −0 services/src/main/groovy/jd/gui/view/component/ManifestFilePage.groovy
  152. +294 −0 services/src/main/groovy/jd/gui/view/component/SourcePage.groovy
  153. +276 −0 services/src/main/groovy/jd/gui/view/component/TextPage.groovy
  154. +17 −0 services/src/main/groovy/jd/gui/view/data/TreeNodeBean.groovy
  155. +328 −0 services/src/main/java/jd/gui/service/indexer/ClassFileIndexerProvider.java
  156. +136 −0 services/src/main/java/jd/gui/service/sourcesaver/ClassFileSourceSaverProvider.java
  157. +428 −0 services/src/main/java/jd/gui/service/type/ClassFileTypeFactoryProvider.java
  158. +232 −0 services/src/main/java/jd/gui/util/decompiler/ClassFileSourcePrinter.java
  159. +41 −0 services/src/main/java/jd/gui/util/decompiler/ContainerLoader.java
  160. +42 −0 services/src/main/java/jd/gui/util/decompiler/GuiPreferences.java
  161. +307 −0 services/src/main/java/jd/gui/util/decompiler/PlainTextPrinter.java
  162. +2 −0 services/src/main/resources/META-INF/services/jd.gui.spi.ContainerFactory
  163. +4 −0 services/src/main/resources/META-INF/services/jd.gui.spi.FileLoader
  164. +5 −0 services/src/main/resources/META-INF/services/jd.gui.spi.Indexer
  165. +1 −0 services/src/main/resources/META-INF/services/jd.gui.spi.PasteHandler
  166. +3 −0 services/src/main/resources/META-INF/services/jd.gui.spi.PreferencesPanel
  167. +5 −0 services/src/main/resources/META-INF/services/jd.gui.spi.SourceSaver
  168. +17 −0 services/src/main/resources/META-INF/services/jd.gui.spi.TreeNodeFactory
  169. +1 −0 services/src/main/resources/META-INF/services/jd.gui.spi.TypeFactory
  170. +1 −0 services/src/main/resources/META-INF/services/jd.gui.spi.UriLoader
  171. BIN services/src/main/resources/images/abstract_ovr.png
  172. BIN services/src/main/resources/images/annotation_obj.png
  173. BIN services/src/main/resources/images/ascii_obj.png
  174. BIN services/src/main/resources/images/class_default_obj.png
  175. BIN services/src/main/resources/images/class_obj.png
  176. BIN services/src/main/resources/images/class_private_obj.png
  177. BIN services/src/main/resources/images/class_protected_obj.png
  178. BIN services/src/main/resources/images/classf_obj.png
  179. BIN services/src/main/resources/images/constr_ovr.png
  180. BIN services/src/main/resources/images/dtd_obj.gif
  181. BIN services/src/main/resources/images/enum_obj.png
  182. BIN services/src/main/resources/images/field_default_obj.png
  183. BIN services/src/main/resources/images/field_private_obj.png
  184. BIN services/src/main/resources/images/field_protected_obj.png
  185. BIN services/src/main/resources/images/field_public_obj.png
  186. BIN services/src/main/resources/images/file_plain_obj.png
  187. BIN services/src/main/resources/images/final_ovr.png
  188. BIN services/src/main/resources/images/folder.gif
  189. BIN services/src/main/resources/images/folder_open.png
  190. BIN services/src/main/resources/images/generate_class.png
  191. BIN services/src/main/resources/images/generate_int.png
  192. BIN services/src/main/resources/images/html_obj.gif
  193. BIN services/src/main/resources/images/int_default_obj.png
  194. BIN services/src/main/resources/images/int_obj.png
  195. BIN services/src/main/resources/images/int_private_obj.png
  196. BIN services/src/main/resources/images/int_protected_obj.png
  197. BIN services/src/main/resources/images/jar_obj.png
  198. BIN services/src/main/resources/images/java_obj.png
  199. BIN services/src/main/resources/images/js_obj.png
  200. BIN services/src/main/resources/images/manifest_obj.png
  201. BIN services/src/main/resources/images/methdef_obj.png
  202. BIN services/src/main/resources/images/methpri_obj.png
  203. BIN services/src/main/resources/images/methpro_obj.png
  204. BIN services/src/main/resources/images/methpub_obj.png
  205. BIN services/src/main/resources/images/minus.png
  206. BIN services/src/main/resources/images/package_obj.png
  207. BIN services/src/main/resources/images/plus.png
  208. BIN services/src/main/resources/images/static_ovr.png
  209. BIN services/src/main/resources/images/war_obj.gif
  210. BIN services/src/main/resources/images/xml_obj.gif
  211. BIN services/src/main/resources/images/zip_obj.png
  212. +24 −0 services/src/main/resources/rsyntaxtextarea/RSyntaxTextArea_License.txt
  213. +79 −0 services/src/main/resources/rsyntaxtextarea/themes/eclipse.xml
  214. +3 −0 settings.gradle
  215. +76 −0 src/osx/dist/JD-GUI.app/Contents/Info.plist
  216. +299 −0 src/osx/dist/JD-GUI.app/Contents/MacOS/universalJavaApplicationStub.sh
  217. BIN src/osx/dist/JD-GUI.app/Contents/Resources/jd-gui.icns
@@ -0,0 +1,29 @@
# Java
*.class
# JD-GUI
jd-gui.cfg
# Idea
.idea/
out/
*.ipr
*.iml
*.iws
# Eclipse
.settings/
classes/
.classpath
.project
# Mac
.DS_Store
# Maven
log/
target/
# Gradle
.gradle/
build/
676 LICENSE

Large diffs are not rendered by default.

Oops, something went wrong.
12 NOTICE
@@ -0,0 +1,12 @@
JD-GUI license - GPLv3
Libraries used:
Groovy - Apache License 2.0
Gradle - Apache License 2.0
JD-Core Java Release - GPLv3
RSyntaxTextArea - Modified BSD license
JD-GUI OSX distribution:
universalJavaApplicationStub - MIT License
@@ -0,0 +1,52 @@
#JD-GUI
JD-GUI, a standalone graphical utility that displays Java sources from CLASS files.
![](http://jd.benow.ca/img/screenshot17.png)
- Java Decompiler projects home page: [http://jd.benow.ca](http://jd.benow.ca)
- Java Decompiler Wikipedia page: [http://en.wikipedia.org/wiki/Java_Decompiler](http://en.wikipedia.org/wiki/Java_Decompiler)
- JD-GUI source code: [https://github.com/java-decompiler/jd-gui](https://github.com/java-decompiler/jd-gui)
##Description
JD-GUI is a standalone graphical utility that displays Java source codes of
".class" files. You can browse the reconstructed source code with the JD-GUI
for instant access to methods and fields.
##How to build JD-GUI ?
```
> gradle build
```
generate _"build/libs/jd-gui-x.y.z.jar"_
```
> gradle build installOsxDist
```
generate _"build/install/jd-gui-osx/JD-GUI.app"_
##How to launch JD-GUI ?
- Double-click on _"jd-gui-x.y.z.jar"_
- Double-click on _"JD-GUI"_ application under OSX
- Execute _"java -jar jd-gui-x.y.z.jar"_ or _"java -classpath jd-gui-x.y.z.jar jd.gui.App"_
##How to use JD-GUI ?
- Open a file with menu "File > Open File..."
- Open recent files with menu "File > Recent Files"
- Drag and drop files from your file explorer
##How to extend JD-GUI ?
```
> gradle idea
```
generate Idea Intellij project
```
> gradle eclipse
```
generate Eclipse project
```
> java -classpath jd-gui-x.y.z.jar;myextension1.jar;myextension2.jar jd.gui.App
```
launch JD-GUI with your extensions
##Uninstallation
- Delete "jd-gui-x.y.z.jar" and "jd-gui.cfg".
- Drag and drop "JD-GUI" application into the trash.
@@ -0,0 +1 @@
apply plugin: 'java'
@@ -0,0 +1,48 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api;
import jd.gui.api.feature.UriGettable;
import jd.gui.api.model.Container;
import jd.gui.api.model.Indexes;
import jd.gui.spi.*;
import javax.swing.*;
import java.io.File;
import java.net.URI;
import java.nio.file.FileSystem;
import java.util.Collection;
import java.util.Map;
public interface API {
public boolean openURI(URI uri);
public boolean openURI(int x, int y, Collection<Container.Entry> entries, String query, String fragment);
public void addURI(URI uri);
public <T extends JComponent & UriGettable> void addPanel(String title, Icon icon, String tip, T component);
public UriLoader getUriLoader(URI uri);
public FileLoader getFileLoader(File file);
public ContainerFactory getContainerFactory(FileSystem fileSystem);
public PanelFactory getMainPanelFactory(Container container);
public TreeNodeFactory getTreeNodeFactory(Container.Entry entry);
public TypeFactory getTypeFactory(Container.Entry entry);
public Indexer getIndexer(Container.Entry entry);
public SourceSaver getSourceSaver(Container.Entry entry);
public Map<String, String> getPreferences();
public Collection<Indexes> getCollectionOfIndexes();
}
@@ -0,0 +1,12 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.model.Container;
public interface ContainerEntryGettable {
public Container.Entry getEntry();
}
@@ -0,0 +1,10 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface ContentCopyable {
public void copy();
}
@@ -0,0 +1,13 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.API;
import jd.gui.api.model.Indexes;
public interface ContentIndexable {
public Indexes index(API api);
}
@@ -0,0 +1,16 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.API;
import java.io.OutputStream;
public interface ContentSavable {
public String getFileName();
public void save(API api, OutputStream os);
}
@@ -0,0 +1,14 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface ContentSearchable {
public boolean highlightText(String text, boolean caseSensitive);
public void findNext(String text, boolean caseSensitive);
public void findPrevious(String text, boolean caseSensitive);
}
@@ -0,0 +1,10 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface ContentSelectable {
public void selectAll();
}
@@ -0,0 +1,10 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface FocusedTypeGettable extends ContainerEntryGettable {
public String getFocusedTypeName();
}
@@ -0,0 +1,14 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.model.Indexes;
import java.util.Collection;
public interface IndexesChangeListener {
void indexesChanged(Collection<Indexes> collectionOfIndexes);
}
@@ -0,0 +1,14 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface LineNumberNavigable {
public int getMaximumLineNumber();
public void goToLineNumber(int lineNumber);
public boolean checkLineNumber(int lineNumber);
}
@@ -0,0 +1,12 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import javax.swing.*;
public interface PageChangeListener {
public <T extends JComponent & UriGettable> void pageChanged(T page);
}
@@ -0,0 +1,10 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface PageChangeable {
public void addPageChangeListener(PageChangeListener listener);
}
@@ -0,0 +1,10 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
public interface PageClosable {
public boolean closePage();
}
@@ -0,0 +1,14 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.API;
import javax.swing.*;
public interface PageCreator {
public <T extends JComponent & UriGettable> T createPage(API api);
}
@@ -0,0 +1,12 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import java.util.Map;
public interface PreferencesChangeListener {
public void preferencesChanged(Map<String, String> preferences);
}
@@ -0,0 +1,25 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.API;
import java.nio.file.Path;
public interface SourcesSavable {
public String getSourceFileName();
public int getFileCount();
public void save(API api, Controller controller, Listener listener, Path path);
public interface Controller {
public boolean isCancelled();
};
public interface Listener {
public void pathSaved(Path path);
};
}
@@ -0,0 +1,12 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import jd.gui.api.API;
public interface TreeNodeExpandable {
public void populateTreeNode(API api);
}
@@ -0,0 +1,12 @@
/*
* Copyright (c) 2008-2015 Emmanuel Dupuy
* This program is made available under the terms of the GPLv3 License.
*/
package jd.gui.api.feature;
import java.net.URI;
public interface UriGettable {
public URI getUri();
}
Oops, something went wrong.

0 comments on commit 44b26e9

Please sign in to comment.