Skip to content

Javadocs Feature#118

Open
Reaper-1709 wants to merge 14 commits into
OfficialDonut:masterfrom
Reaper-1709:master
Open

Javadocs Feature#118
Reaper-1709 wants to merge 14 commits into
OfficialDonut:masterfrom
Reaper-1709:master

Conversation

@Reaper-1709
Copy link
Copy Markdown

  1. Added see javadocs button in StatementBlock, ExpressionBlock, and PluginComponentBlock
  2. Added Javadocs tab in Plugin Settings
  3. Javadocs functionality for all components, and all methods is added and no other blocks supported as of now

1. Added see javadocs button in StatementBlock, ExpressionBlock, and PluginComponentBlock
2. Added Javadocs tab in Plugin Settings
3. Javadocs functionality for all components, and all methods is added and no other blocks supported as of now
@Sal4iDev
Copy link
Copy Markdown
Contributor

there is a lot of code that repeats itself. wouldn't it be better to replace various pieces of code with one field and other pieces of code with a method?

@Reaper-1709
Copy link
Copy Markdown
Author

there is a lot of code that repeats itself. wouldn't it be better to replace various pieces of code with one field and other pieces of code with a method?

I'd work on optimisation once the project is finished maybe, I still have some ToDos: add javadocs reference for other statements, expressions and add a config file for explicitly redirecting any method and class.

If you could point out the references where code can be summed up into a method, I'd really appreciate that.

@Reaper-1709
Copy link
Copy Markdown
Author

Please do not merge the PR yet, I mistakenly forgot to commit JavadocsManager.java

Comment thread VB-Application/src/main/java/com/gmail/visualbukkit/project/Project.java Outdated
1. roll-backed VisualBukkitApp.java due to presence of unnecessary changes
2. Commited JavadocsManager.java
@Reaper-1709
Copy link
Copy Markdown
Author

@OfficialDonut looks good to me now, you can test it.

@OfficialDonut
Copy link
Copy Markdown
Owner

the JavadocsWindow class is also missing

@Reaper-1709
Copy link
Copy Markdown
Author

the JavadocsWindow class is also missing

That is an unnecessary one as well, please remove any code that mentions that class.

- Added javadocs url for all statements and expressions
- Added remap system to explicitly redirect to a different javadocs page for a given method
- some optimizations in Project.java
@Reaper-1709
Copy link
Copy Markdown
Author

I think it is fully completed now.

@Reaper-1709 Reaper-1709 changed the title Javadocs initial commit Javadocs Feature Mar 25, 2025
Comment thread VB-Application/src/main/java/com/gmail/visualbukkit/blocks/ExpressionBlock.java Outdated
Comment thread VB-Application/src/main/java/com/gmail/visualbukkit/blocks/ExpressionBlock.java Outdated
- Added an overridable method as suggested
- removed switches from StatementBlock.java and ExpressionBlock.java
- changed java 8 urls to java 17 ones
@Reaper-1709
Copy link
Copy Markdown
Author

It is now optimized as instructed.

- commit revised JavadocsManager.java
Comment thread VB-Application/src/main/java/com/gmail/visualbukkit/project/JavadocsManager.java Outdated
@OfficialDonut
Copy link
Copy Markdown
Owner

this doesnt compile

Comment thread VB-Application/src/main/resources/lang/gui.properties Outdated
Comment thread VB-Application/src/main/resources/lang/gui_en_US.properties Outdated
Comment thread VB-Application/src/main/java/com/gmail/visualbukkit/project/JavadocsManager.java Outdated
Comment thread VB-Application/src/main/java/com/gmail/visualbukkit/project/JavadocsManager.java Outdated
Reaper-1709 and others added 2 commits May 31, 2026 18:19
Update StatBungeeCordConnect.java
Update gui.properties

Co-Authored-By: OfficialDonut <donut42915@gmail.com>
@OfficialDonut
Copy link
Copy Markdown
Owner

If you click "see javadocs" on a method block where the class/method hasnt been selected it throws an npe

java.lang.NullPointerException: Cannot invoke "com.gmail.visualbukkit.reflection.ClassInfo.getName()" because the return value of "com.gmail.visualbukkit.blocks.parameters.ClassParameter.getValue()" is null
	at com.gmail.visualbukkit.project.JavadocsManager.getStatJavadocs(JavadocsManager.java:17)
	at com.gmail.visualbukkit.blocks.definitions.core.StatMethod.openJavadocs(StatMethod.java:29)
	at com.gmail.visualbukkit.blocks.StatementBlock.lambda$new$12(StatementBlock.java:37)
	at javafx.base/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
	at javafx.base/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:232)
	at javafx.base/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:189)
	at javafx.base/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
	at javafx.base/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at javafx.base/com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
	at javafx.base/com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49)
	at javafx.base/javafx.event.Event.fireEvent(Event.java:198)
	at javafx.controls/javafx.scene.control.MenuItem.fire(MenuItem.java:459)
	at javafx.controls/com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer.doSelect(ContextMenuContent.java:1415)
	at javafx.controls/com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer.lambda$createChildren$12(ContextMenuContent.java:1368)
	at javafx.base/com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:247)
	at javafx.base/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80)
	at javafx.base/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:232)
	at javafx.base/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:189)
	at javafx.base/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
	at javafx.base/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
	at javafx.base/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at javafx.base/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at javafx.base/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at javafx.base/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at javafx.base/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at javafx.base/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at javafx.base/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at javafx.base/com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
	at javafx.base/com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
	at javafx.base/javafx.event.Event.fireEvent(Event.java:198)
	at javafx.graphics/javafx.scene.Scene$MouseHandler.process(Scene.java:3984)
	at javafx.graphics/javafx.scene.Scene.processMouseEvent(Scene.java:1890)
	at javafx.graphics/javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2708)
	at javafx.graphics/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:411)
	at javafx.graphics/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:301)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at javafx.graphics/com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$2(GlassViewEventHandler.java:450)
	at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:424)
	at javafx.graphics/com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:449)
	at javafx.graphics/com.sun.glass.ui.View.handleMouseEvent(View.java:551)
	at javafx.graphics/com.sun.glass.ui.View.notifyMouse(View.java:937)
	at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
	at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:185)
	at java.base/java.lang.Thread.run(Thread.java:1583)

@Reaper-1709
Copy link
Copy Markdown
Author

Should be fixed now, along with similar errors which could have occoured with ExprMethod and ExprField. Thanks a lot for pointing out these things and sorry for my lack of testing skills.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants