DarwinNE / FidoCadJ

FidoCadJ is a free user-friendly vector graphic editor for MacOSX, Linux, Windows and Android with a library of electronic symbols.
http://darwinne.github.io/FidoCadJ/
GNU General Public License v3.0
113 stars 40 forks source link

My fork is diverging too much from the original project #238

Closed manufino closed 4 weeks ago

manufino commented 1 month ago

@DarwinNE, I'm opening this issue to discuss how to proceed. I've made substantial changes both to the directory structure and many source files. Merging my branch for the pull request is becoming quite challenging. The most impactful changes are those related to resource management, such as icons, having changed the directory structure, I had to move all the resource files as well to achieve a cleaner project organization.

Could we consider a complete revision of the directory structure, removing parts that are no longer necessary, such as "busy being born" or "OSes"?

DarwinNE commented 1 month ago

You can propose a refactoring of the directory structure and discuss it here. Just take some time to take a broader view with respect to the conventions of a single IDE or development strategy. For instance, I do not agree that OSes is not useful. I used the "mac" subdirectory relatively recently and I spent a year and a half of my free time developing the (unfortunately aborted) android/fidocadj version.

manufino commented 1 month ago

One thing I don't like is having resources inside the "bin" folder, such as translation files, icons, and libraries. What do you think about creating a folder in the root directory called "resources," where we can place all the resources to be incorporated into the JAR?

DarwinNE commented 1 month ago

I like this very much!!! (edit: in the sense that I fully agree with you) But then the resources must be copied in the bin directory by the build scripts?

manufino commented 1 month ago

Using scripts could be a solution. I'm trying to gather more information about it since I'm not an expert in the Java ecosystem (my background is mainly in C++ programming).

EDIT: We could probably use relative paths in the code to specify where the resources are located during compilation. As you know, they are then incorporated into the JAR.

manufino commented 4 weeks ago

For now, I've gathered all the resources in the first level of the bin directory. Check out the latest commits I've made.

DarwinNE commented 4 weeks ago

I think we can close this issue, with the pull request #240