Author Topic: Graphical IDE. Should we all pitch in and make one?  (Read 30033 times)

0 Members and 1 Guest are viewing this topic.

Offline keybone

  • Forum Regular
  • Posts: 116
  • My name a Nursultan Tulyakbay.
    • View Profile
Graphical IDE. Should we all pitch in and make one?
« on: June 30, 2018, 11:28:44 pm »
I know of at least 5 different GUI projects including my own.

I work on windowing, fellippe did a framework (inform), ashish did a framework with a simple window too, _vince made a windowing system, terryritchie made one on [abandoned, outdated and now likely malicious qb64 dot net website - don’t go there] (inaccessible right now), stxaxtic made one at one point for mathblab. unseenmachine did a framework/windowing system...

The point is a lot of work has already been done and if we put it all together and used it to build an IDE it would be pretty dope.

Maybe we could all pitch in and make a graphical IDE for qb64... just a thought.

Let me know if anyone else thinks this is a good idea or has any input.
I am from a Kazakhstan, we follow the hawk.

Offline keybone

  • Forum Regular
  • Posts: 116
  • My name a Nursultan Tulyakbay.
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #1 on: June 30, 2018, 11:36:26 pm »
My thoughts on the subject are:

We need a few things to make it work:

1) Pull down menus (main menu across top of screen
2) Pop-up menus (context menus)
3) Desktop manager (Initialize and place background, and screen/display)
4) Window manager (Resize, move, iconize, zoom, restore to window (from maximized or minimized)
5) Icons (so you can minimize a document and restore a different one)

6) a widget framework to build interface inside windows and dialog boxes, etc. (he have inform which is great :) _)
7) mouse handling functions (gotta find the best way to do it, maybe an external library?)
8) keyboard handling functions (gotta make it robust :) )

Im probably missing stuff but this was a list off the top of my head.

I have a lot of code already written but have been working on version 2.0 of my gui and havent finished yet.
version 1.0 is still available but is a royal pain in the ass to actually program for. :D


I am from a Kazakhstan, we follow the hawk.

Offline keybone

  • Forum Regular
  • Posts: 116
  • My name a Nursultan Tulyakbay.
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #2 on: June 30, 2018, 11:39:03 pm »
The window manager can be left out if you want a single document interface application.
I personally think it would be cool to have a setup with a multiple document interface though.
Plus if it was able to be done, it would be a good demo of qb64's capabilities.
I am from a Kazakhstan, we follow the hawk.

Offline keybone

  • Forum Regular
  • Posts: 116
  • My name a Nursultan Tulyakbay.
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #3 on: June 30, 2018, 11:41:22 pm »
My thoughts on the subject are:

We need a few things to make it work:

1) Pull down menus (main menu across top of screen
2) Pop-up menus (context menus)
3) Desktop manager (Initialize and place background, and screen/display)
4) Window manager (Resize, move, iconize, zoom, restore to window (from maximized or minimized)
5) Icons (so you can minimize a document and restore a different one)

6) a widget framework to build interface inside windows and dialog boxes, etc. (we have inform which is great :) _)
7) mouse handling functions (gotta find the best way to do it, maybe an external library?)
8) keyboard handling functions (gotta make it robust :) )

Im probably missing stuff but this was a list off the top of my head.

I have a lot of code already written but have been working on version 2.0 of my gui and havent finished yet.
version 1.0 is still available but is a royal pain in the ass to actually program for. :D
I am from a Kazakhstan, we follow the hawk.

Offline Ashish

  • Forum Resident
  • Posts: 630
  • Never Give Up!
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #4 on: July 01, 2018, 03:44:32 am »
......
terryritchie made one on [abandoned, outdated and now likely malicious qb64 dot net website - don’t go there] (inaccessible right now)
......
I've a bundle of all Terry Ritchie library. I don't know which one you want.
Download it from the attachment.
if (Me.success) {Me.improve()} else {Me.tryAgain()}


My Projects - https://github.com/AshishKingdom?tab=repositories
OpenGL tutorials - https://ashishkingdom.github.io/OpenGL-Tutorials

Offline keybone

  • Forum Regular
  • Posts: 116
  • My name a Nursultan Tulyakbay.
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #5 on: July 01, 2018, 03:47:14 am »
......
terryritchie made one on [abandoned, outdated and now likely malicious qb64 dot net website - don’t go there] (inaccessible right now)
......
I've a bundle of all Terry Ritchie library. I don't know which one you want.
Download it from the attachment.

I'll take all of them... It sucks .net being down for as long as it's been.
So much good stuff up there. :-/ Thanks for the link.
I am from a Kazakhstan, we follow the hawk.

Offline cr0sh

  • Newbie
  • Posts: 10
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #6 on: September 16, 2018, 07:41:51 pm »
My suggestion - and I'm surprised it hasn't been done yet:

We should strip the compiler down to it's core, and make it command line only.

Then build an extension for either Visual Studio Code or Atom (VSC would probably be the way to go).

That, or build the IDE using Electron.

Basically - every other language out there has some kind of plugin support or whatnot for both of these Electron-based IDEs. Those IDEs support a ton of other features, etc.

Sure, we could make a new GUI IDE - or re-vamp the existing text IDE - but doing so will continue to relegate QB64 to being a "toy language" (it already has enough baggage with the BASIC moniker, like all such BASIC variants do).

So - a decision by the community might need to be made: Do we want to stay a niche hobbyist language, or do we want to expand toward something more serious?

Just a thought - I'm not wedded to anything right now (there's so many choices in languages out there - it's crazy).

Also - when is QB64 going to get a wrapper for TensorFlow? /s

Offline PMACKAY

  • Forum Regular
  • Posts: 188
  • LIFE is Temporary
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #7 on: September 18, 2018, 09:25:45 am »
I hope we keep the one that is already qb64.. i have kind of grown to love it and works fine...
« Last Edit: September 18, 2018, 10:00:15 am by PMACKAY »
MackyWhite

FellippeHeitor

  • Guest
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #8 on: September 18, 2018, 09:47:50 am »
We're keeping it, rest assured.

FellippeHeitor

  • Guest
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #9 on: September 18, 2018, 09:51:19 am »
My suggestion - and I'm surprised it hasn't been done yet:

We should strip the compiler down to it's core, and make it command line only.

Then build an extension for either Visual Studio Code or Atom (VSC would probably be the way to go).

That, or build the IDE using Electron.

Basically - every other language out there has some kind of plugin support or whatnot for both of these Electron-based IDEs. Those IDEs support a ton of other features, etc.

Sure, we could make a new GUI IDE - or re-vamp the existing text IDE - but doing so will continue to relegate QB64 to being a "toy language" (it already has enough baggage with the BASIC moniker, like all such BASIC variants do).

So - a decision by the community might need to be made: Do we want to stay a niche hobbyist language, or do we want to expand toward something more serious?

Just a thought - I'm not wedded to anything right now (there's so many choices in languages out there - it's crazy).

Also - when is QB64 going to get a wrapper for TensorFlow? /s

Turns out the compiler and the IDE are indeed two separate modules. The IDE is made up of two include files found in qb64.bas, which can safely be removed.

Command line compilation switches are a thing and I'd love to see extensions to existing IDEs targeting QB64. It's a matter of one sitting down and doing it, like RhoSigma has done for Notepad++ already: https://www.qb64.org/forum/index.php?topic=306.0

Offline codeguy

  • Forum Regular
  • Posts: 174
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #10 on: September 18, 2018, 06:37:40 pm »
Can we have a facility to view included source files in the IDE? THIS would be quite useful, especially if you're trying to debug source with multiple $include or want to make a monolithic inclusive source AND make saving changes to $include files optional if they're changed in the IDE? And a smart replace that allows me to EASILY change types in subs so I don't have to rewrite subs to accommodate different non-udt data types? This would be a great addition to the functionality of the IDE, which BTW, in screen 0 is JUST fine. I'd like the view included files under the View menu. Yes, you have my permission to use OpenInclude() as you've modified it or my original. This will probably be the easiest approach.
« Last Edit: September 18, 2018, 09:07:46 pm by codeguy »

Offline Omerta7486

  • Newbie
  • Posts: 33
  • √𝜋²
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #11 on: September 19, 2018, 12:12:07 pm »
I personally think the IDE is fine for what this language does. It's mainly about the capabilities of the language that make it easier or harder to use. Would you rather have that flashy, new button on the IDE, or the ability to drop images into the pipeline BETWEEN refreshes? Would you rather have that sweet include manager, or better keyboard/mouse/controller/joystick support?

My personal wish list includes:
Stronger UDT support
Better function for bit level control
Better multi-assignment(it exists, but it's weak) e.g. a=b=4 where a=4 and b=4
Gyotdang += and -= operators, and ++/--(Which would give rise to the need for the == operator... I know, right?)

I feel like, personally for me, with those things and QB64's ability to pull in DLLs, this language could be a lot stronger but keep it's BASIC syntax.
The knowledge that's seeking the favor of another means the murder of self.

Latest version of my game, here  Omertris: Invasion

Offline TerryRitchie

  • Seasoned Forum Regular
  • Posts: 495
  • Semper Fidelis
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #12 on: September 19, 2018, 12:24:06 pm »
My two cents: I really love the IDE in its current form. My own preference is to see the code and not be distracted by anything else, something that the QB45 editor offered and the QB64 IDE mimics perfectly. The color coding of the source code in QB64 is a huge plus too. I really like that.

If there were one major wish I had with the current IDE it would be separating the subs/functions from the main code like the QB45 editor did. My current project is hitting the 2000 line mark and while I can hop from sub to sub easily (F2) I still like the clean look of having the subs/functions hidden until I want to edit them.

If we must go to a more modern IDE format, for things such as event processing, then I would suggest looking at the VBDOS editor as inspiration.
In order to understand recursion, one must first understand recursion.

FellippeHeitor

  • Guest
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #13 on: September 19, 2018, 12:26:56 pm »
My personal wish list includes:
(...)
Better multi-assignment(it exists, but it's weak) e.g. a=b=4 where a=4 and b=4
Gyotdang += and -= operators, and ++/--(Which would give rise to the need for the == operator... I know, right?)

Just to clear it up: a = b = 4 isn't a multiassignment in BASIC. If b = 4 then a = -1 in this case.

It's like you're making a conditional check:

a = (is b equal to 4? if true, the result is -1; if false, the result is 0)

And about ++ and -- as operators, I wouldn't hold my breath. Not because it'd be unfeasible to add, but because it's been agreed it'd escape the BASIC syntax realm.
« Last Edit: September 19, 2018, 12:29:54 pm by FellippeHeitor »

Offline TerryRitchie

  • Seasoned Forum Regular
  • Posts: 495
  • Semper Fidelis
    • View Profile
Re: Graphical IDE. Should we all pitch in and make one?
« Reply #14 on: September 19, 2018, 12:32:56 pm »
I agree, +=, ++, --, -=, == have never been a thing in any BASIC dialect that I know of. Yes, they're handy ( a += 1  instead of  a = a + 1) but in my opinion that's not the spirit of BASIC and can be confusing to coders not used to it or beginners in BASIC. Remember, the heart of basic is beginners (Beginner's All-purpose Symbolic Instruction Code).
In order to understand recursion, one must first understand recursion.