So much want this to work

Mac OSX specific forum
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

So much want this to work

Post by Desert Polar Bear »

Hello,

Long time listener, first time caller...

For a very long time, I've been looking for a version of BASIC that is not OOP but relatively modern enough to handle GUI application design, regularly maintained, well-documented, and run on a Mac. PureBasic appeared to be a solid fit and I was just about ready to lay down the cash, but after downloading the free version and trying to work with it over the past week, I've run into some real challenges I'm hoping you fine folk will be able to help me with.

I don't wish to sound insulting or unappreciative of all the obvious hard work put into PureBasic. And I've taken the time to try to search and read through the forum to solve these issues, but have had no luck. If I missed something, please forgive. And please accept the following comments as nothing more than concerns I'd like to correct in order to fully appreciate the product.

Most of the problems I've encountered are minor, but really annoying.

The shortcuts get corrupted whenever I set ANY preferences. The CMD part of the shortcuts is mysteriously removed from every shortcut.

The toolbar icons won’t stay large, won’t stay as configured, and have no text labels. No matter how I configure them, when I exit and return, the toolbar includes the icons I configured, but they return to the small size, have no text labels and all spaces between icons are removed.

The Error Log refuses to remember to stay closed. And then when I close it, it makes the current tab un-editable. I have to open a second tab and then close the first tab so I can write code again.

While I'm dealing with tabs, the mouse inexplicably grabs the tab to move it as if I was holding the left mouse button down when I'm not. That's just weird.

And finally, I tried using the form generator and writing code to accompany the form code. It compiles and runs but I could not get a simple button click application to work. That's on me, surely. I'm hoping someone can direct me to a detailed tutorial or book on the subject. I even copied the code from a forum post on the subject, but I suspect it was written for an older version and I was unable to get it to work.

I would dearly love to purchase PureBasic. As it is, I have to use Xojo for my programming projects and the OOP stuff just makes my teeth itch. I have no interest in being a professional programmer. I just want to write code in BASIC.

Any help or heartfelt condolences would be greatly appreciated.

Thanks :D

Desert Polar Bear
Nowhere Special - Dateland, Arizona

P.S.: Running Catalina on a mid-2015 MacBook Pro
User avatar
Tenaja
Addict
Addict
Posts: 1949
Joined: Tue Nov 09, 2010 10:15 pm

Re: So much want this to work

Post by Tenaja »

I've never used the Mac version, but it sounds like you have a corrupted installation. I've never experienced any of those issues in Windows. I guess you could peruse the bug reports and see if it's typical.

All of your issues are ide related, which is open source... But you could just use your favorite editor. That would be kinda lame, but at least the code output is solid.
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

Thanks Tenaja. Sadly, I've completely uninstalled and reinstalled the app and still have the same problems. It's obvious the Mac version has some differences from the PC - probably by necessity. I suppose I could try to recompile the IDE. I was just hoping I was missing some obvious issues. These appear to be genuine bugs.

Out of desperation, I could try to use Sublime as my editor, but I'd lose a lot of functionality. Besides, I tried that and could not figure out how the get PureBasic to build from Sublime. :?
User avatar
TI-994A
Addict
Addict
Posts: 2512
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: So much want this to work

Post by TI-994A »

Desert Polar Bear wrote:...tried using the form generator ... direct me to a detailed tutorial or book on the subject.
Running the same rig as yours (2015 MacBook, Catalina), the IDE has not really demonstrated the anomalies you've indicated. Nevertheless, with regard to the Form Designer, perhaps this might help:

> The Basic Anatomy of a PureBasic Program

Here's the form-generated code from that tutorial, which is generally saved as a separate PBF form file, to be included in a separate PB code file. However, here, the generated code has simply been copied, and appended with the required code for the button event, to provide an integrated working example. It illustrates the structure and mechanics of the form code generated by the PureBasic Form Designer:

Code: Select all

;code generated by the PureBasic Form Designer

Global Window_0

Global Button_0, Text_0, String_0

Declare buttonEvent(EventType)

Procedure OpenWindow_0(x = 0, y = 0, width = 300, height = 200)
  Window_0 = OpenWindow(#PB_Any, x, y, width, height, "My Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_ScreenCentered)
  Button_0 = ButtonGadget(#PB_Any, 50, 120, 200, 30, "Click Me")
  Text_0 = TextGadget(#PB_Any, 50, 30, 200, 30, "This is a label...")
  String_0 = StringGadget(#PB_Any, 50, 70, 200, 30, "")
EndProcedure

Procedure Window_0_Events(event)
  Select event
    Case #PB_Event_CloseWindow
      ProcedureReturn #False

    Case #PB_Event_Menu
      Select EventMenu()
      EndSelect

    Case #PB_Event_Gadget
      Select EventGadget()
        Case Button_0
          buttonEvent(EventType())         
      EndSelect
  EndSelect
  ProcedureReturn #True
EndProcedure

OpenWindow_0()

Repeat
  event = WaitWindowEvent()
Until Window_0_Events(event) = #False

End

;code for the button event, added
Procedure buttonEvent(eventType.i)
  ;get the text from the text box (identifier = String_0)
  text$ = GetGadgetText(String_0)
 
  ;and place it in the label (identifier = Text_0)
  SetGadgetText(Text_0, text$) 
EndProcedure
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
BarryG
Addict
Addict
Posts: 3322
Joined: Thu Apr 18, 2019 8:17 am

Re: So much want this to work

Post by BarryG »

Desert Polar Bear wrote:These appear to be genuine bugs.
One of the forum rules for posting "bugs" is to tell us the exact steps to reproduce them. If you can't do that, at least please record a screen video of what happens, to show us. Thanks.
User avatar
mk-soft
Always Here
Always Here
Posts: 5401
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: So much want this to work

Post by mk-soft »

I have been using Purebasic on macOS for a long time. Before that Windows and Linux.

The settings via the context of the ToolBar (right mouse button) is a feature of macOS and is not implemented in the PB IDE. Therefore the changes of the ToolBar are not saved. This would perhaps have to be reprogrammed in the Open Source of the IDE.

The fact that the tabs sometimes get stuck on the mouse when moving them has improved. This only occurs under macOS and I had completely forgotten about it. I wanted to have a look at it.

I also use the FormDesigner, although it could be better. But there are also alternatives.
From the FormDesigner I never use the Event Generator, under Settings switch off Form. I also always switch off the option #PB_Any to work with constants.

I always write the event management and the event procedures myself and include the 'Form.pbf' with IncludeFile.
(Or use my EventDesigner)

P.S.
For small applications, I create the GUI by hand without the FormDesigner.

The PB-IDE is a Purebasic page that is constantly being worked on. And now also the community that is constantly improving the editor.

More importantly, like you, the syntax and the ability to program for Windows, Linux and macOS applications.
Here I am very satisfied with PureBasic and already have various applications and services running productively.
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

TI-994A wrote:Running the same rig as yours (2015 MacBook, Catalina), the IDE has not really demonstrated the anomalies you've indicated
Encouraging news indeed! I've recorded a couple of videos of the issues as BarryG rightly pointed out and will post momentarily. I feel optimistic that a solution can be found.

Thank you very much for the Tutorial info. I was able to get that to work and will compare to my earlier failed efforts to try to figure out what I missed earlier. Many thanks!

PureBasic is very impressive by its own merits, but when considered among the other options out there, it's beyond compare in my book. I really hope I can overcome these minor issues and greatly appreciate everyone's help.
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

mk-soft wrote:The settings via the context of the ToolBar (right mouse button) is a feature of macOS and is not implemented in the PB IDE. Therefore the changes of the ToolBar are not saved. This would perhaps have to be reprogrammed in the Open Source of the IDE.
Helpful. Thank you. I was able to add the separators and have them stay, but it still refuses to remember to use the larger icons, and there is no text displayed. (Video to be posted soon).
mk-soft wrote:The fact that the tabs sometimes get stuck on the mouse when moving them has improved. This only occurs under macOS and I had completely forgotten about it. I wanted to have a look at it.
Glad to hear this is a known issue. It's not a game-stopper, but it sure can be annoying.
"You should never judge a book by its cover."
"A picture is worth a thousand words."

Well, which...? Shuddup!
Image
- Desert Polar Bear • Nowhere Special • Arizona, USA
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

BarryG wrote:
Desert Polar Bear wrote:These appear to be genuine bugs.
One of the forum rules for posting "bugs" is to tell us the exact steps to reproduce them. If you can't do that, at least please record a screen video of what happens, to show us. Thanks.
My apologies. I was trying to limit the length of my message while maintaining a balance of detail. I tend to be a bit long-winded. I had also avoided uploading a video so as not to take up too much space on the server. Although, I was also unable to determine HOW to upload a video, or even IF it's permitted, so I opted for the following YouTube link:

This video shows the toolbar originally with small icons and no spaces added. I add the spaces and set the icons to large and show text. No text is show. Then when I exit and restart PureBasic, the icons are back to small with no spaces.
https://youtu.be/PMDHzJNQSAk

Following advice from @mk-soft, I was able to add the separator spaces using the built in IDE preferences, but the text and size issues remain.
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

BarryG wrote:[...at least please record a screen video of what happens, to show us. Thanks.
This is the second video showing the Tab and Error log issues. It shows that turning off the error log causes the current tab to become un-editable. Actually, I try entering text and it does accept the key entries. It just doesn't display them until after creating a new tab and returning to it. Then there's the mouse grabbing the tab issue, which is kind of difficult to show. The tab is moving back and forth, but I'm not holding down the mouse button at the time. Thankfully, @mk-soft indicated this is a known issue.
https://youtu.be/MqttWZSAMa4
"You should never judge a book by its cover."
"A picture is worth a thousand words."

Well, which...? Shuddup!
Image
- Desert Polar Bear • Nowhere Special • Arizona, USA
User avatar
mk-soft
Always Here
Always Here
Posts: 5401
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: So much want this to work

Post by mk-soft »

Its private YouTube video. :mrgreen: No account, no video ...
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

Regarding the shortcuts issue, the problem occurs when using the Import/Export feature. When importing previously saved settings that include shortcuts, the shortcuts are corrupted by removing the "CMD+" part from every shortcut setting. Consequently, whereas typing CMD+G opens the Goto... dialog originally. After importing saved settings, typing just the letter "g" opens the dialog because the "CMD+" part has been stripped.
"You should never judge a book by its cover."
"A picture is worth a thousand words."

Well, which...? Shuddup!
Image
- Desert Polar Bear • Nowhere Special • Arizona, USA
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

mk-soft wrote:Its private YouTube video. :mrgreen: No account, no video ...
Oops. Sorry. New at this. Should work now.

Toolbar issues:
https://youtu.be/PMDHzJNQSAk

Tab and Error Log issue:
https://youtu.be/MqttWZSAMa4
User avatar
deseven
Enthusiast
Enthusiast
Posts: 362
Joined: Wed Jan 12, 2011 3:48 pm
Location: Serbia
Contact:

Re: So much want this to work

Post by deseven »

I can confirm all those small bugs :)

Well, you know, the main platform for PB is still Windows, macOS port severely lacks love and attention, you can consider it to be beta at best. There are numerous bugs not only in the IDE itself, but also in the compiler, even in very basic libs (for example here are a couple of bugs in the process library i found - 1, 2). Some of them are here for years and you have to use hacks or direct cocoa programming to deal with that. It's all doable, to a point, but if you're looking for a maintenance-free experience then PB for macOS might not be a good option. We still have a pretty good and helpful community, though.
Desert Polar Bear
User
User
Posts: 25
Joined: Thu Feb 04, 2021 9:27 pm
Location: Nowhere Special, Arizona, USA

Re: So much want this to work

Post by Desert Polar Bear »

Thanks for the confirmation @deseven!

Frankly, I consider myself very lucky to have any decent option for a proper BASIC programming language in 2021 for the Mac at all. After all, Mac holds a fractional market share compared to Windows and BASIC is considered by many to be a dead language after all these years. What little remains of it are various versions maintained by single individuals with a passion. For example, Liberty Basic by Carl Gundel, QB64 by Rob Galleon, and BBC BASIC by Richard Russell. That's a bout it. Even the original creators of BASIC back in 1965 haven't kept up with their latest version TrueBasic.

Then there are the versions of BASIC that are trying to stay relevant in the market by including object-oriented protocols - a choice I detest that leads to languages like Gambas or Xojo. Don't get me wrong, they're both fine languages and very useful. But they're NOT BASIC.

So...I want (1) a proper BASIC language syntax, (2) running on a Mac, (3) that's affordable, (4) well-supported, (5) well-documented, and (6) regularly updated that can (7) compile standalone GUI applications (8) in the year 2021...Phew! That's not asking for much, eh? And yet, PureBasic manages to do all of that and more. Incredible!! Okay, so there are a few bugs...And yet, there's the open source code to fix it yourself if you're so inclined. Amazing.

Nobody else can make that claim. Seriously! Liberty BASIC *might* support Mac in version 5 if it ever sees the light of day. QB64 has an awkward GUI designer that crashes a lot and looks dated. BBC BASIC is run through an emulation layer for the Mac and is very slow. And it can't compile GUI apps at all. And those are the major players. Everyone else (Chipmunk, Power, True, Future, etc.) are just also-rans, or worse, sell-outs to the OOPs.

Again, don't get me wrong, OOP has it's place. And it can be fun to OOP with BASIC, if you're into that sort of thing. (I've written a handful of useful apps with Xojo). It just seems to me though that OOPing with BASIC is like trying to build skyscrapers with Lincoln Logs. Besides, I fully believe OOP is destined to become a side note in programming history. But that's a discussion for a different time.

:)
"You should never judge a book by its cover."
"A picture is worth a thousand words."

Well, which...? Shuddup!
Image
- Desert Polar Bear • Nowhere Special • Arizona, USA
Post Reply