Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
InForm-PE
#31
I am having a problem compiling InForm programs with Linux.  Seems when I load the program in QB64pe the program cannot find the InForm.bi.  Even if I set the location manually it still will not see it.  What is weird is the example programs work, but not anything I created. Even if I put them into the example folder of the home folder of InForm. The old version of Inform works with QB64pe version 3.4. That one uses the Falcon.h.
Reply
#32
Okay I resolved the problem.  There is a folder inside InForm called InForm.  By coping that folder into QB64pe folder all of my projects now run. I created a folder call Projects and everything in that folder worked. It's basically the same thing as the original layout but without the Faclon.h.
Reply
#33
(12-24-2023, 07:36 PM)cage Wrote: Okay I resolved the problem.  There is a folder inside InForm called InForm.  By coping that folder into QB64pe folder all of my projects now run. I created a folder call Projects and everything in that folder worked. It's basically the same thing as the original layout but without the Faclon.h.
Yes. That is correct. I did try to explain this somewhat here: InForm-PE/README.md at master · a740g/InForm-PE (github.com), but I think I need to make it clearer.

@FellippeHeitor also wrote about it here: Distributing your InForm-based programs (alephc.xyz)

I am planning to implement a way where the form editor automatically copies the required InFrom dependencies to the form project directory.
Reply
#34
Folks looking for the InForm wiki can find it here: https://github.com/a740g/InForm-PE/wiki
I found and updated the wiki with all the original images that went missing when qb64.org went down.

Also, added @FellippeHeitor's excellent INI-Manager as an InForm extension. InForm was using this internally. It made sense to allow other InForm apps to use it as well.
I cleaned-up the API a bit. You can find the library documentation here: https://github.com/a740g/InForm-PE/blob/...Manager.md
Reply
#35
(11-22-2023, 06:14 PM)a740g Wrote: Sorry about that. You did nothing wrong.

Download the and use this link for now. I'll have everything sorted out by the end of this week.

https://github.com/a740g/InForm-PE/archi...489812.zip

I am currently in the process of refactoring a few things and re-writing the GIFPlayer extension from scratch (because the older one had a lot of issues). I guess I should create a use a dev branch.  Smile
Regarding the ZIP file, it doesn't contain the latest files, right? "Ini.bi" is from October 2023, and "ini.bas" is completely missing.
Could you put the entire folder at InForm-PE into a 7z or zip file? Would be helpful. Otherwise one have to download around 30 individual files, or is there a trick to do everything in one download? Thanks!

Another question: Does the entire file structure as it appears on GitHub have to be installed in the InForm_PE folder, or just all files without the folder structure?
Reply
#36
(02-12-2024, 04:36 PM)Kernelpanic Wrote:
(11-22-2023, 06:14 PM)a740g Wrote: Sorry about that. You did nothing wrong.

Download the and use this link for now. I'll have everything sorted out by the end of this week.

https://github.com/a740g/InForm-PE/archi...489812.zip

I am currently in the process of refactoring a few things and re-writing the GIFPlayer extension from scratch (because the older one had a lot of issues). I guess I should create a use a dev branch.  Smile
Regarding the ZIP file, it doesn't contain the latest files, right? "Ini.bi" is from October 2023, and "ini.bas" is completely missing.
Could you put the entire folder at InForm-PE into a 7z or zip file? Would be helpful. Otherwise one have to download around 30 individual files, or is there a trick to do everything in one download? Thanks!

Another question: Does the entire file structure as it appears on GitHub have to be installed in the InForm_PE folder, or just all files without the folder structure?
You can use the master.zip in the first post (also below). It always pull the latest commits from GitHub.
https://github.com/a740g/InForm-PE/archi...master.zip

You will need the maintain the directory structure (at a minimum for stuff inside the InForm directory). The InForm runtime code pulls libraries and resources from InForm/extensions and InForm/resources.
Reply
#37
@a740g - It really has to be exactly like the instructions; see photo.

[Image: Ordneraufbau-2024-02-14-211403.jpg]

Trying to integrate it into my normal folder structure failed and I couldn't find an ini file to adapt this. Ok, I then copied the QB64 folder and renamed it as it should be in the instructions. After that it worked. There were two "not found" messages.

[Image: In-Form-Kompilierung2024-02.jpg]

Now for the performance. I tried to recreate a program from VB 5.0, but I'm having trouble setting the color of the heading. The setting is black but I don't see it.

[Image: Fore-Color2024-02-14-204234.jpg]
Reply
#38
(02-14-2024, 08:48 PM)Kernelpanic Wrote: @a740g - It really has to be exactly like the instructions; see photo.

[Image: Ordneraufbau-2024-02-14-211403.jpg]

Trying to integrate it into my normal folder structure failed and I couldn't find an ini file to adapt this. Ok, I then copied the QB64 folder and renamed it as it should be in the instructions. After that it worked. There were two "not found" messages.

[Image: In-Form-Kompilierung2024-02.jpg]

Now for the performance. I tried to recreate a program from VB 5.0, but I'm having trouble setting the color of the heading. The setting is black but I don't see it.

[Image: Fore-Color2024-02-14-204234.jpg]

Yes. You are right about the directory setup for compiling InForm itself. I was suggesting more from the point of integrating InForm dependencies in your own project and then bundling the whole thing. See this post: InForm-PE (qb64phoenix.com)

You can ignore the two not found messages. Those are from the Makefile trying to clean a previous build of UiEditor and UiEditorPreview which would be missing when you build InForm for the first time.

To set the foreground / background colors of any control, use the Color Mixer in the UiEditor window. Use the dropdown to switch between the background and foreground color.

[Image: Screenshot-2024-02-15-030357.png]

More info in the wiki: Color properties · a740g/InForm-PE Wiki (github.com)
Reply
#39
I recompiled everything again and then set it up the way I do with all programs. But that doesn't really work. As far as I have found, one cannot run programs in a different folder than specified. I have tried adjusting the paths, but I get one error after another because a file is not found.

This doesn't work properly

[Image: In-Lab2024-02-15-174829.jpg]

Code: (Select All)

'-----------------------------------------------------------------------------------------------------------------------
' Common InForm header. This is included by the main InForm header file
' Copyright (c) 2024 Samuel Gomes
' Copyright (c) 2022 Fellippe Heitor
'-----------------------------------------------------------------------------------------------------------------------

$IF INFORMCOMMON_BI = UNDEFINED THEN
    $LET INFORMCOMMON_BI = TRUE

    ' Do a complier check to ensure we have the minimum version needed
    $IF VERSION < 3.11.0 THEN
            $ERROR 'This requires the latest version of QB64-PE from https://github.com/QB64-Phoenix-Edition/QB64pe/releases'
    $END IF

    '$INCLUDE:'InFormVersion.bi'
    '$INCLUDE:'D:\QuickBasic64\QB64\QB64pe\InForm\InForm\extensions\HashTable.bi'

    CONST FALSE%% = 0%%, TRUE%% = NOT FALSE
. . .

The problem with the color setting has been resolved - I accidentally used a text field. Now I have another problem.
If I click on "Calculate" (Berechnen) under VB, then I can program it, but how does it work in InForm?

[Image: Programm2024-02-15-180655.jpg]

Code from VB:
Code: (Select All)

Option Explicit

Private Sub cmdBeenden_Click()
  End
End Sub

Private Sub cmdBerechnen_Click()
  Dim Einkaufspreis, Verkaufspreis, Rabattaufschlag As Double
 
  Einkaufspreis = Val(txtEinkaufspreis.Text)
  Verkaufspreis = Val(txtVerkaufspreis.Text)
  Rabattaufschlag = (((Verkaufspreis * 100) / Einkaufspreis) - 100)
 
  'Mit dem Prozentzeichen bei Format -> ##.00 % Formatierungsfehler
  txtProzenthoehe.Text = Format$(Rabattaufschlag, "##.00")
End Sub

Private Sub cmdLoeschen_Click()
  txtEinkaufspreis = ""
  txtVerkaufspreis = ""
  txtProzenthoehe = ""
End Sub

In addition, everything is LONG by default.
Code: (Select All)

': This program uses
': InForm GUI engine for QB64-PE - v1.5.3
': Fellippe Heitor, (2016 - 2022) - @FellippeHeitor
': Samuel Gomes, (2023 - 2024) - @a740g
': https://github.com/a740g/InForm-PE
'-----------------------------------------------------------

': Controls' IDs: ------------------------------------------------------------------
Dim Shared Label4 As Long
Dim Shared ProzentaufschlagLB As Long
Dim Shared TextBox3 As Long
Dim Shared cmdBerechnen As Long
Dim Shared Ueberschrift As Long
Dim Shared EinkaufspreisLB As Long
Dim Shared VerkaufspreisLB As Long
Dim Shared txtEinkaufspreis As Long
Dim Shared txtVerkaufspreis As Long
Dim Shared Prozentberechnung As Long
Dim Shared Prozentrechnung As Long '<-- "Prozentrechnung" deleted from Form on 02-15-2024 '<-- "Prozentrechnung" deleted from Form on 02-15-2024

': External modules: ---------------------------------------------------------------
'$INCLUDE:'InForm.bi' -> Mistake
'$INCLUDE:'xp.uitheme'
'$INCLUDE:'Prozenthoehe.frm'
Reply
#40
@Kernelpanic They say a picture is worth a thousand words. So, I cooked up a fresh InForm-PE setup in a fresh environment from scratch. This explains, how I would setup everything step by step. Hope this will help.


[Image: 01.png]
Download the latest QB64-PE and InForm-PE and save those in a directory (in this case C:\Lab).


[Image: 02.png]
Extract both archives.


[Image: 03.png]
Notice the directory structure on the left. This is important.


[Image: 04.png]
Enable "Output EXE to Source Folder". Notice the dot. This is off by default (which is pure evil IMO). Big Grin


[Image: 05.png]
Run "setup_inform_win.cmd" to compile InForm-PE.


[Image: 06.png]
Wait for everything to compile.


[Image: 07.png]
Done.


[Image: 08.png]
Then I create C:\Lab\Projects\Four Up.


[Image: 09.png]
Create the form using UiEditor and save it in C:\Lab\Projects\Four Up.


[Image: 10.png]
Note that we cannot compile it yet, because the InForm dependencies are missing.


[Image: 11.png]
To resolve the dependency issue, copy the InForm directory in the InForm-PE directory, and...



[Image: 12.png]
...paste it in our project directory (Four Up).


[Image: 13.png]
In the end we should have something like this. The following screenshots show compiling and running the project.


[Image: 14.png]



[Image: 15.png]



[Image: 16.png]


[Image: 17.png]


[Image: 18.png]


Note that I am working on solution in a future update of the InForm UiEditor where it will automatically copy all required dependencies to the project directory.
Reply




Users browsing this thread: 3 Guest(s)