B4J Question Community b4x project?

JakeBullet70

Well-Known Member
Licensed User
Longtime User
Just thinking here... (AAAAAAAAAAAhhhhhhhhhhhhhh)

A community project for b4x to scan / modify b4x source code. Stay with me as it has been a long day.
What I am seeing is a b4j application... Open source... Community driven... And a Erel smile. :)

Brain DUMP!

--- Frame work
1. GUI that reads all files in a b4x project and displays them with a check box. A button to select all or select none or click and select what you want. Maybe even drilling down per sub. Contents stored in a list. (or map or what ever)
2. A class to save the GUI checked items. (Lets call it a 'insert name' project)
3. A class that parses a single file and returns a list of subs.
4. A class that does backup of original b4x files. (pass in a file name or list of file names and get a backup written)
5. A class that writes back out the new code or even just a sub.
6. Anything else I have missed.
--- End frame work

--- functionality (the fun part.)
1. A class that takes the object of subs and adds TRY CATCH blocks.
2. A class counts lines of code, comments, metrics or what ever.
3. A class that inserts debug logging information. (IE: #if DEBUG log("SUB name") #end if)
4. A class that inserts logs to show all values of parameters passed.
5. A class that inserts code to calculates the speed of a sub.
6. More ideas... ????
--- End functionality

Generic classes.
1. Compress a list of files.
2. A class to remove our added code.
3. ????

You get the idea.
I do not know but I think if we divide this up it... it could come together pretty quick. I will volunteer as project manager, build master, code tweaker and GIT manager as well as writing some classes myself. Thoughts? Ideas? Tell me to get bent? Too busy?

In the end blame Erel, it is all his fault!!!!
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
--- Frame work
1. GUI that reads all files in a b4x project and displays them with a check box. A button to select all or select none or click and select what you want. Maybe even drilling down per sub. Contents stored in a list. (or map or what ever)
2. A class to save the GUI checked items. (Lets call it a 'insert name' project)
3. A class that parses a single file and returns a list of subs.
4. A class that does backup of original b4x files. (pass in a file name or list of file names and get a backup written)
5. A class that writes back out the new code or even just a sub.
6. Anything else I have missed.
--- End frame work
3. A class that inserts debug logging information. (IE: #if DEBUG log("SUB name") #end if)
4. A class that inserts logs to show all values of parameters passed.



Do you know the best tool ever published :p AddLogs (see my signature)?

It was developed using VB.net, because:

1) I did not know well B4J
2) I don't know how to protect B4J programs.


Note that there is not an Erel's Like there (AddLogs) ;)
 
Last edited:
Upvote 0

LucaMs

Expert
Licensed User
Longtime User
I agree. But unless we clone Erel (hhhmmm) I do not see it happening any time soon. :(
I think that Erel prefers to add "big" changes to the new versions.
Many of these small changes can be added more easily by Erel and are more comfortable if they are available directly from the IDE, as @b4auser1 has written.

The ideal would be the ability to add your own Plug In, but this is certainly very complex to realize (instead, I believe that adding the management of "Code Snippets" is not too difficult).
 
Last edited:
Upvote 0

b4auser1

Well-Known Member
Licensed User
Longtime User
The ideal would be the ability to add your own Plug In
+1000

but this is certainly very complex to realize
Why do you think so ? I offer to create design of interface for Plug-In and offer it to Erel.
Then community will be able to develop different Plug-ins using this interface.

A class counts lines of code, comments, metrics or what ever.
- when compiler processes source it can collect this info easily.
 
Upvote 0

b4auser1

Well-Known Member
Licensed User
Longtime User
I offer to create design of interface for Plug-In and offer it to Erel.

F.e.
B4X Plug In interface provides Plugin with:
- List of sources files, that user selected in the list of files within IDE (Modules panel)
- Map of Subs. [Key: SubName Value: Map of info about Sub]
- Map of info about Sub. [Key: "Header" Value:List of parameters] [Key: "Body" Value:List of rows within Sub body]
- List of parameters. [Map of info about Parameter]
- Map of info about Parameter [Key: ParameterName Value:Type of parameter]
Plugin-in can modify the structures described above and B4X Plug In interface modifies source code
 
Upvote 0

b4auser1

Well-Known Member
Licensed User
Longtime User
Well, if Erel does not agree... you can write how to implement this "stuff" somewhere on this site
We will have to repeat part of work, that was already done by Erel, when he developed parser of source code for B4X ;)
 
Upvote 0
Top