• Welcome to Jose's Read Only Forum 2023.
 

PowerBASIC 10

Started by Patrice Terrier, December 24, 2010, 07:30:10 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

José Roca

Quote
Maybe Jose can give you a hint how you can get it.

The new headers will be available when the new compilers will be released. There is nothing you can do with them without having the compilers.

Quote
José, wrote that he will have a new set of include files for PB10, that will take care of that transparently.

They work the same way that with C++.


DECLARE FUNCTION RegisterClassExA IMPORT "USER32.DLL" ALIAS "RegisterClassExA" ( _
   BYREF lpwcx AS WNDCLASSEXA _                         ' __in CONST WNDCLASSEXA *lpwcx
) AS WORD                                              ' ATOM

DECLARE FUNCTION RegisterClassExW IMPORT "USER32.DLL" ALIAS "RegisterClassExW" ( _
   BYREF lpwcx AS WNDCLASSEXW _                         ' __in CONST WNDCLASSEXW *lpwcx
) AS WORD                                              ' ATOM

#IF %DEF(%UNICODE)
   MACRO RegisterClassEx = RegisterClassExW
#ELSE
   MACRO RegisterClassEx = RegisterClassExA
#ENDIF


You can call RegisterClassExA or RegisterClassExW individually, or you can call RegisterClassEx. When calling RegisterClassEx, if %UNICODE is defined, RegisterClassExW will be called, else RegisterClassExA will be called.

Same with structures:


' // Size = 48 bytes
TYPE WNDCLASSEXA BYTE
   cbSize        AS DWORD        ' UINT
   ' /* Win 3.x */
   style         AS DWORD        ' UINT
   lpfnWndProc   AS DWORD        ' WNDPROC
   cbClsExtra    AS LONG         ' int
   cbWndExtra    AS LONG         ' int
   hInstance     AS DWORD        ' HINSTANCE
   hIcon         AS DWORD        ' HICON
   hCursor       AS DWORD        ' HCURSOR
   hbrBackground AS DWORD        ' HBRUSH
   lpszMenuName  AS ASCIIZ PTR   ' LPCSTR
   lpszClassName AS ASCIIZ PTR   ' LPCSTR
   ' /* Win 4.0 */
   hIconSm       AS DWORD        ' HICON
END TYPE

' // Size = 48 bytes
' // Predefined as of PBWIN 10
TYPE WNDCLASSEXW BYTE
   cbSize        AS DWORD        ' UINT
   ' /* Win 3.x */
   style         AS DWORD        ' UINT
   lpfnWndProc   AS DWORD        ' WNDPROC
   cbClsExtra    AS LONG         ' int
   cbWndExtra    AS LONG         ' int
   hInstance     AS DWORD        ' HINSTANCE
   hIcon         AS DWORD        ' HICON
   hCursor       AS DWORD        ' HCURSOR
   hbrBackground AS DWORD        ' HBRUSH
   lpszMenuName  AS WSTRINGZ PTR ' LPCWSTR
   lpszClassName AS WSTRINGZ PTR ' LPCWSTR
   ' /* Win 4.0 */
   hIconSm       AS DWORD        ' HICON
END TYPE

#IF %DEF(%UNICODE)
MACRO WNDCLASSEX = WNDCLASSEXW
#ELSE
MACRO WNDCLASSEX = WNDCLASSEXA
#ENDIF ' UNICODE


Theo Gottwald

#46
Just take a look on this attached screenshot.
With PB 10 and Jose's Add On's it will be easy doing - even if you have to make things for Aserbaidshan or Peking.

Please note that this is a "Work in Progress". I just show it as an example.

PS: Again trouble to reach the PowerBasic WEB-Site. Possibly they can not stand the rush on people want to get infos on PB 10 ?
Maybe they should look for a new provider. There are good providers in USA which virtually unlimited bandwith.
If not choose our provider (1&1). We'll NEVER have that problem with Jose's Forum, as my provider can handle any rush.

QuoteFehler: Netzwerk-Zeitüberschreitung
       
         Der Server unter www.powerbasic.com braucht zu lange, um eine Antwort zu senden.

Patrice Terrier

About José include files:
QuoteThey work the same way that with C++.

From a SDK coder like myself, always moving from one language to another, i would say that without the José's set of API, i probably had no other choice than to move my low level tools to another platform.

The tremendous work he does, allows me to still use my PB's stuff, because his include files embrass the whole SDK including SDK 7 like with Visual Studio 10.

José, your are the only reason why i can still use my favorite programming language, THANK YOU!

In case you do not get a free PB10 upgrade, please let me know, and i shall have one free for you.

...

Patrice Terrier
GDImage (advanced graphic addon)
http://www.zapsolution.com

Theo Gottwald

#48
QuoteJosé, your are the only reason why i can still use my favorite programming language, THANK YOU!

You are not alone, Patrice. I have heared more voices like you, saying they can only stay with PB because of Jose.

Still thats not the reason why i support him. The reason for me is that he is just genial in what he's doing.
Or let me say an artist.

What ever he starts in this area - he brings it to an good end.

Thats the first thing that is different to others who may also be Top-Talented programmers.

There is a saying in germany which states that only "Talent paired with dilligence" makes a Genius.
Thats a short description of Jose, who doesn't believe take a look at the results.

A normal programmer from flesh and blood can not compete with his work and knowledge.

James C. Fuller

#49
Is this the email address to send PayPal donations to José?
~~~~~~~~~*
James


*[Theo: Adress removed by me to prevent publication to Spambots. The adress to use, see below.)

Paul Squires

Yes, please verify Jose's paypal donation address. I want to also send Jose a token of my appreciation.
Paul Squires
FireFly Visual Designer SQLitening Database System JellyFish Pro Editor
http://www.planetsquires.com

José Roca

#51
The address, as I use it, is JRoca@com.it-berater.org
~~~~~~~* is an alias used by the server.

*[Theo: removed by me to protect from spamming.]

Paul Squires

Thanks José, money sent.

Treat yourself to something nice and relaxing. Get away from the computer screen for a while.   ;D

Paul Squires
FireFly Visual Designer SQLitening Database System JellyFish Pro Editor
http://www.planetsquires.com

Aslan Babakhanov

Hi José,

I've sent money...and i agree with Paul.

Aslan Babakhanov

Theo,
I can open PB forum and main web page without any problems and delays for a long time since PB10 teaser.
May be something wrong with your internet provider?

I remember old days when PB7 teaser started on main web page.At that time a thread about new compiler exceeded 100 pages and forum worked very slow.

José Roca

Paul and Aslan: Thanks very much for your donations.

Patrice: Thanks very much for your generous offer. Guess I won't need to accept it because I have $250 of credit from a contest I did win a few years ago, and I only can spend that money buying PB products.

José Roca

 
For new applications, the way to go is to use unicode. With the new headers, it's a matter of using WSTRINGs and WSTRINGZs instead of STRINGs and ASCIIZs.

As we are in a period of transition, support for both ansi and unicode is offered. Ideally, in a few years, the ansi stuff will no be longer needed. Currently, with the new compilers, is only needed for existing applications.

Unicode applications run also slightly faster because all the API functions are written in unicode and the ansi functions are mere wrappers that convert the ansi strings to unicode and call the unicode version.

We no longer need to use workarounds to work with low-level COM interfaces. No more UCODE$/ACODE$ and BYVAL STRPTR.

The headers can be used by everybody, not just SDK programmers. You can even use them to do GUI programming with the console compiler!

Thanks to dead code removal, I'm offering thousands of wrappers to make easier the use of the Windows API.

I'm attaching a draft help file with documentation for the ones that will be more often needed.