FF3 with PB10 ... it works !

Started by Jean-pierre Leroy, March 30, 2011, 12:39:23 PM

Previous topic - Next topic

Paul Squires

Jose - I am always in awe of the code that you produce. You are a true ambassador for the PB language.


Paul Squires
PlanetSquires Software

Rolf Brandt

QuoteDo you think you can organize FireFly updates in 2 steps:

First update - To upgrade FF3.10 with the current functionalities but make the necessary modifications to be fully compatible with PB10
That would sound like a good scenario to me - if it is not to excessive and time consuming for Paul.
Rolf Brandt
http://www.rbsoft.eu
http://www.taxifreeware.com
I cook with wine, sometimes I even add it to the food.
(W. C. Fields)

Paul Squires

Hi Jean-Pierre, I haven't decided what approach to take at this point. At this point, I might just start a read-only thread in this forum that shows users what needs to be done to get PB10 working. Maybe provide some syntax files and new Includes for the custom controls. Nothing too fancy, but at least users will be able to use PB10.

BTW, you should be able to use the %UNICODE=1 equate at the start of the FF_APPSTART code?

Paul Squires
PlanetSquires Software

Jean-pierre Leroy

Paul, when I use the %UNICODE=1 equate at the start of the FF_APPSTART code; I get an error message; as mentionned by Jose in this message ...

http://www.planetsquires.com/protect/forum/index.php?topic=2823.msg21123#msg21123

QuoteThis is because szClassName must be declared as WSTRINGZ instead of ASCIIZ

We can do nothing, because this code is generated automatically by FireFly 3.10; see the print screen below.

Jean-Pierre

David Maruca

Quote from: Jose Roca on March 31, 2011, 02:58:31 AM
Now, nothing can stop me to extend the language. The new headers already have a CVarUtils class with about 120 methods that adds all the missing functionality to deal with variants still not implemented in PB, an ODBC class with hundreds of methods, a class to host the .NET runtime in a PB application, a class with 1,720 methods for OpenGL extensions, etc., etc., etc.

We are going to have fun!

Jose, I'm sitting here trying to think of a way to express myself. All I can say is...wow. I don't know how you do it, lol. Seriously, every single time I read what you post I become a better coder. You must have the Encyclopedia-Jose of Coding on your bookshelf.

Paul Squires

Quote from: Jean-Pierre Leroy on March 31, 2011, 09:28:42 AM
Paul, when I use the %UNICODE=1 equate at the start of the FF_APPSTART code; I get an error message; as mentionned by Jose in this message ...

http://www.planetsquires.com/protect/forum/index.php?topic=2823.msg21123#msg21123

QuoteThis is because szClassName must be declared as WSTRINGZ instead of ASCIIZ

We can do nothing, because this code is generated automatically by FireFly 3.10; see the print screen below.

Jean-Pierre


hmmm, yeah, you're right. There are probably many places in the generated code that will cause the UNICODE equate to throw errors. This why it is not a simple fix to enable unicode in the current FF3.
Paul Squires
PlanetSquires Software

José Roca

The headers know which version of the function to call, "A" or "W", but can't change the type of the variable.

José Roca

I have made an small change to the CWindow class to check if the application is DPI aware and scale the windows using the DPI setting,  by default. This way, we only need to use an appropriate manifest, that is the recommended way to avoid race conditions with external DLLs that cache this setting.

José Roca

1. Go to my forum: http://www.jose.it-berater.org/smfforum/index.php

2. Scroll down until the forum, labeled "Webmaster: Jose Roca (PBWIN 10.0+/PBCC 6.0+)"

3. Click the 2nd subforum, labeled "CSED Editor"

Below this subforum, there is another labeled "Windows API Headers".

Jean-pierre Leroy

Quote from: TechSupport on March 31, 2011, 02:34:35 PM
Quote from: Jean-Pierre Leroy on March 31, 2011, 09:28:42 AM
Paul, when I use the %UNICODE=1 equate at the start of the FF_APPSTART code; I get an error message; as mentionned by Jose in this message ...

http://www.planetsquires.com/protect/forum/index.php?topic=2823.msg21123#msg21123

QuoteThis is because szClassName must be declared as WSTRINGZ instead of ASCIIZ

We can do nothing, because this code is generated automatically by FireFly 3.10; see the print screen below.

Jean-Pierre


hmmm, yeah, you're right. There are probably many places in the generated code that will cause the UNICODE equate to throw errors. This why it is not a simple fix to enable unicode in the current FF3.


In fact in the CODEGEN_PROJECT1_MAIN.BAS 3 modifications need to be done :

Jean-pierre Leroy

 ... then for each FORM (here for the CODEGEN_PROJECT1_FORM1_FORM.inc) 2 modifications need to be done :


Jim Dunn

Quote from: Jose Roca on March 31, 2011, 04:51:26 PM
1. Go to my forum: http://www.jose.it-berater.org/smfforum/index.php
2. Scroll down until the forum, labeled "Webmaster: Jose Roca (PBWIN 10.0+/PBCC 6.0+)"
3. Click the 2nd subforum, labeled "CSED Editor"
Below this subforum, there is another labeled "Windows API Headers".

Ah, ok, been there, is still 1.0b... already had that, thought there was an update I had missed... thx!
3.14159265358979323846264338327950
"Ok, yes... I like pie... um, I meant, pi."

José Roca

#27
Good news. I have successfully modified my CSED editor to be high DPI aware. No more artifacts and drag and drop works fine. As it uses my CWindow class, most of it already worked fine. I have slightly modified a few of the methods for small adjustments and added an optional parameter, bNoScale, that, if TRUE, will not scale the control or window being created (this can be needed sometimes if you already have scaled coordinates).

As 16x16 icons become too small with High DPI, I have used two sets of image lists, one with 16x16 when the DPI is less than 150% and another with 24x24 icons for DPIs higher than 150%.

I wonder if someone else is using Windows 7 with a high resolution monitor and High DPI? I'm using a resolution of 1680x1050 and I'm having serious problems with many programs that are not High DPI aware.


Haakon Birkeland

For somewhat lazy people like me, here are mine altered as specified.
Feel free to include them in your first post Jean-Pierre, for easy access.
Haakon 8o)

Robert Eaton

Quote from: Jean-Pierre Leroy on March 30, 2011, 12:39:23 PM

Don't forget to download as well the very complete and informative help file, made by Jose.


I haven't been able to find the help file. Did it get moved?
Thanks,
Bob