Author Topic: [Announcement] InForm: The ultimate GUI toolkit for QB64  (Read 1339 times)

TempodiBasic

  • Sr. Member
  • ****
  • Posts: 407
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #60 on: January 08, 2017, 08:31:52 am »
Hi Fellippe

you're the angel of observation....


it's only a issue of space....yes space... Arghh I must transmute me in DuckDodgers in the 24 1/2th century!  http://looneytunes.wikia.com/wiki/Duck_Dodgers_(character)
 ;D ;D ;D

Seeing number on label with yellow background I have thought that it was the effect of centered option of Align....but this thinking was wrong!  :-[

with a space I get those errors... a space each number created at random.... :o
A simple test2.bas in which I have used a Label at the place of textbox to hold  value to guess has said me that the problem is not
Control(Label).Align = centered
so a quick look at code and I find that STR$  convert a number to a string with an initial space  >:( Here I need of Duck Dodgers ;D ;D ;D more your smart look Fellippe!

FOR eachProblem% = 1 TO Max%
    IF NOT solution%(EachProblem%) THEN
         goto Solved
    ELSE
       PRINT "Solution in coming"
   END IF
NEXT
Solved:
PRINT "Smile!"

danielvest128@gmail.com

  • Newbie
  • *
  • Posts: 3
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #61 on: January 08, 2017, 01:01:18 pm »
Putting together a keyboard for touchscreen devices using Inform - found another small bug.  When creating my keyboard the " character is written to the code literally, producing an error in the .frm include file. Sanitizing the input by changing all quotes entered as button captions in the developer to chr$(34) fixed it. Here's a copy of my code in case anyone else has a use for an on-screen keyboard.

Note that it needs the Inform include files to run.

Really love inform - It has saved so much time! Only wish i could use more than one form in a program. Using the SHELL command and passing info in temp files is kinda messy for such a large project. Please keep working on it, it has doubled my productivity.

FellippeHeitor

  • QB64 Partner Site Owner
  • Hero Member
  • *
  • Posts: 1080
  • LET IT = BE
    • QB64.org
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #62 on: January 08, 2017, 02:48:58 pm »
so a quick look at code and I find that STR$  convert a number to a string with an initial space
That space is reserved for the negative sign, so that STR$(1) results in " 1" and STR$(-1) results in "-1".

I'm glad you'll be able to progress with your new InForm-based program, TempodiBasic!

Putting together a keyboard for touchscreen devices using Inform - found another small bug.  When creating my keyboard the " character is written to the code literally, producing an error in the .frm include file.
A very nice idea, Daniel! As many laptops running Windows are now touch enabled, it's a really nice addition.

And thanks for the bug report. It was a very simple fix and it'll be available in the next beta release.

Really love inform - It has saved so much time!
I love to hear that!

Only wish i could use more than one form in a program. Using the SHELL command and passing info in temp files is kinda messy for such a large project.
About that, it's a QB64 limitation, unfortunately. If that ever changes in a future QB64 release, I'll be certain to make InForm work with it.

Please keep working on it, it has doubled my productivity.
Be sure I will! Thanks for using InForm!
« Last Edit: January 08, 2017, 03:00:33 pm by FellippeHeitor »

TempodiBasic

  • Sr. Member
  • ****
  • Posts: 407
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #63 on: January 09, 2017, 12:35:05 pm »
Hi Fellippe

Jump to point 3 if you have little time...


1.
I Agree with your knowledge of STR$ with a space for positive integer number...and - for negative integer number. So it is in QB/QBASIC, and therefore in QB64 sorry I have forgotten....just for a bolt but enough for first posting  :-[....
It seems that other languages also have this line of behaviour about positive integer numbers, nobody use + for positive integer and - for negative integer , peharps many thinkers with the same idea nearer to human thought  and far from machine thought!
For us  8 = +8, +8=+8  and -8 = -8,  while for machine  8 =  8 , +8 = +8  and -8 = -8     8)

2.

I find this more interesting....
Quote
Quote from: danielvest128@gmail.com on January 08, 2017, 01:01:18 pm
Only wish i could use more than one form in a program. Using the SHELL command and passing info in temp files is kinda messy for such a large project.
About that, it's a QB64 limitation, unfortunately. If that ever changes in a future QB64 release, I'll be certain to make InForm work with it.
but I have not figured that  this limit is coming from QB64 structure, but as a choice of InForm developer!

3.
I have had this experience, surely because I have made a mistake.....please can you say me the right sequence?
I want to re-edit a form....so
 A.  I have loaded the form in InForm
 B.  and then I have added new control/item....
 C.  and I have saved it....
but at save time InForm asks to me  -->Some files will be overwritten. Proceed?  Yes/No   with No I does nothing, with Yes I get  Exporting successful. Files output: XXX.bas, XXX.frm, XXX.frmbin   Exit to QB64 ? Yes/No  No does nothing, with Yes it loads QB64 ide with XXX.bas loaded into QB64 ide.
Fantastic...  :(  ???
where is my previous code managing previous items that were already on the form?
How I can preserve that code?

Thank's for read and answer
FOR eachProblem% = 1 TO Max%
    IF NOT solution%(EachProblem%) THEN
         goto Solved
    ELSE
       PRINT "Solution in coming"
   END IF
NEXT
Solved:
PRINT "Smile!"

FellippeHeitor

  • QB64 Partner Site Owner
  • Hero Member
  • *
  • Posts: 1080
  • LET IT = BE
    • QB64.org
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #64 on: January 09, 2017, 01:34:06 pm »
Hi TempodiBasic

The latest beta build available on www.qb64.org/inform/download was compiled from the repository state e94cda2 (Jan 08 2017). If your version is older than that I recommend downloading the latest version from the link above (you can check the latest changelog here: https://github.com/FellippeHeitor/InForm/commits/master).

The more recent versions (this change was pushed ~18 days ago) gives you the same warning before overwriting old files but it'll also copy these old files and append "-backup" to their names, so that you can recover your work on previous files.

Richard Notley

  • Sr. Member
  • ****
  • Posts: 283
  • QwerKey
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #65 on: January 11, 2017, 08:41:56 am »
Fellippe, it is churlish of me to make any criticism of your excellent work, but the UIEditor does not recognise a  left-handed mouse, I think.  If you mentioned that you know this, I have missed that.    (Although I am not left-handed I use a mouse with my left hand, buttons swapped).  I was looking for something under Options.  It's OK, I have just to use the buttons the other way round.

What you have achieved is a marvel.  I have worked with Visual Basic which was really difficult and poor on graphics, and then Visual Studio which was worse on both counts.  Your nomenclature is very VB-like (deliberate, I assume), yet this is QB64-based.  How many person-hours (person-decades!) went into the unfathomable Visual Studio compared to your single-handed 4-month stint!

Richard
« Last Edit: January 13, 2017, 03:16:05 am by Richard Notley »

FellippeHeitor

  • QB64 Partner Site Owner
  • Hero Member
  • *
  • Posts: 1080
  • LET IT = BE
    • QB64.org
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #66 on: January 12, 2017, 03:16:14 pm »
Hi, Richard!

Not churlish at all: with no criticism there's no growth in this kind of project.

I indeed ignored that mouse buttons may be switched and that that's not automatically picked from the OS. That'll be an easy addition though, as there's only a SUB for processing input and the mouse check only happens there, so please make sure to keep an eye on the development and I'll let you know when the fix comes.

I thank you so much for your kind words!

Fellippe.

TempodiBasic

  • Sr. Member
  • ****
  • Posts: 407
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #67 on: January 14, 2017, 09:48:49 am »
Hi Fellippe
here is a little observation that maybe a feedback for the future

If we draw some items on the form, on the right we see the simulated form. Changing features of items we see the preview adjourning itself.
Well if I put an item like Hidden it disappears from form, but if i click on its position I can select it... and this is all ok....
but can be an option to draw with a pre-defined  color an hidden item? So we mustn't  fish in the dark to select item again.
I agree that you can select it from the left window, the UIeditor selecting item from pulldown selector. But sometimes it is hard to figure the look of window seeing only the white squares ...

Thank's to read
FOR eachProblem% = 1 TO Max%
    IF NOT solution%(EachProblem%) THEN
         goto Solved
    ELSE
       PRINT "Solution in coming"
   END IF
NEXT
Solved:
PRINT "Smile!"

FellippeHeitor

  • QB64 Partner Site Owner
  • Hero Member
  • *
  • Posts: 1080
  • LET IT = BE
    • QB64.org
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #68 on: January 14, 2017, 02:25:56 pm »
Suggestion noted.  ;)

Of course you can always leave the "Hidden" property to be set only after you've designed the form, that's certain to make it easier.

Anyway, if you have issues finding your hidden control, you can do one of the two:
1- focus on the preview form and hit TAB until you select the desired control OR
2- In the editor window, click Edit->Z-ordering. You will be presented with a list of all controls in your form and here you can change their z-ordering (which determines what controls show on top of each other - and this also changes the TAB order). This list will also select controls in the preview when you click their names.

I hope that helps!

Fellippe.

TempodiBasic

  • Sr. Member
  • ****
  • Posts: 407
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #69 on: January 14, 2017, 03:51:35 pm »
All Ok Fellippe
now it has arrived the MasterMind Game: InForm version...

Let's try  logic power of our mind!

PS I have learned how to add items manually in my InForm project if I have missed something at design time! ;)
FOR eachProblem% = 1 TO Max%
    IF NOT solution%(EachProblem%) THEN
         goto Solved
    ELSE
       PRINT "Solution in coming"
   END IF
NEXT
Solved:
PRINT "Smile!"

TempodiBasic

  • Sr. Member
  • ****
  • Posts: 407
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #70 on: January 18, 2017, 06:07:52 am »
Hi Fellippe

sorry for my massive/obsessive posting on this your tool, BUT IT IS FANTASTIC!!!!!
Well suited the tooltips that say me x,y widht, height of item selected, the line to align to the other items on the form

And using it we test it in many settings, more use more changes to find an issue, and more productivity!   :D

In Design time, I have found this strange behaviour

If you want duplicate my experience....
If we put a Frame on the form, then selected the frame we can put into it other items.... but after putting a label, by mouse I have changed its dimensions and then drag it....but it is disappeared!!!
Also using Z order or TAB key I cannot see again the label on the form and in the frame!  I think "Ok there is a little bug in the preview maker...." BUT compiling the files made by UIeditor I get an EXE in which the label is invisible, also if I set in code control(label).disabled = false.
What's happened? See attachment for screenshot and to get code.

The problem is also in my new Inform demogame.

Good Coding
FOR eachProblem% = 1 TO Max%
    IF NOT solution%(EachProblem%) THEN
         goto Solved
    ELSE
       PRINT "Solution in coming"
   END IF
NEXT
Solved:
PRINT "Smile!"

FellippeHeitor

  • QB64 Partner Site Owner
  • Hero Member
  • *
  • Posts: 1080
  • LET IT = BE
    • QB64.org
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #71 on: January 18, 2017, 11:02:25 am »
Hi Fellippe

sorry for my massive/obsessive posting on this your tool, BUT IT IS FANTASTIC!!!!!
Well suited the tooltips that say me x,y widht, height of item selected, the line to align to the other items on the form

And using it we test it in many settings, more use more changes to find an issue, and more productivity!   :D

Nothing to be sorry for! I really appreciate that InForm is useful to you, especially cause with all the testing you're providing I have a chance to fix more bugs!

In Design time, I have found this strange behaviour

I recently had to rewrite the portion of the code that controls the dragging of controls when I was implementing the "Snap to edges" feature. I see now that I didn't test it enough with controls in frames... Thanks for spotting that! I'll get to work on fixing it.
« Last Edit: January 18, 2017, 11:07:47 am by FellippeHeitor »

Richard Notley

  • Sr. Member
  • ****
  • Posts: 283
  • QwerKey
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #72 on: January 18, 2017, 01:52:49 pm »
In Design time, I have found this strange behaviour

I recently had to rewrite the portion of the code that controls the dragging of controls when I was implementing the "Snap to edges" feature. I see now that I didn't test it enough with controls in frames... Thanks for spotting that! I'll get to work on fixing it.

Fellippe, I have also been having problems with controls inside frames (difficult to move and group).  Good to know that you'll be working on that.  About those Two jobs which you are holding down - do you have more than 24hours per day there in S America?!

Richard

FellippeHeitor

  • QB64 Partner Site Owner
  • Hero Member
  • *
  • Posts: 1080
  • LET IT = BE
    • QB64.org
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #73 on: January 18, 2017, 02:05:36 pm »
The issue with controls in a frame is only happening with a single control being manipulated. If you try to move more than one at once they will obey you ('snap to edges' only works for single controls being dragged anyway). You can also temporarily use the arrow keys for fine tuning (as well as entering the coordinates manually for top/left in the editor) and even shift+arrow keys to resize (or enter manually the width/height values in the editor). These are temporary workarounds, of course.

About the two jobs, the good thing is that one of them is in teaching and we're in the middle of summer vacation right now, so that means more coding time on my end :).

Dav

  • Hero Member
  • *****
  • Posts: 643
Re: [Announcement] InForm: The ultimate GUI toolkit for QB64
« Reply #74 on: January 19, 2017, 03:43:32 pm »
Wow, InForm sounds cool.  I'm going make some time to play around with it.  Haven't  had much coding time in months.  Thanks for sharing your work!

- Dav
(Visit Dav's Qbasic Site) (Grab my IDE)