xsharp.eu • Button class - Page 3
Page 3 of 5

Re: Button class

Posted: Thu Sep 05, 2024 3:44 pm
by Chris
Hi Radim,

I am sorry, this time I am not sure I have understood exactly what you mean. You say "conversion of the application", so you mean a specific XBase++ application? Or do you mean various XBase++ applications by different XBase++ developers/companies?

Would it be also possible to send me a very small test app as I described earlier? That would help a lot to get a better idea on how much work it would require to make your GUI work in .Net/X#.

Re: Button class

Posted: Thu Sep 05, 2024 4:20 pm
by radimpl
Hi Chris,

We have one basic application which is very complex.
It contains invoicing, accounting, stock records, wages, cash register and the launch of other modules.
And we want to convert this application (and only this one) to X# for DBF mode and also SQL.

As for sending an example, it's a bit of a problem.
Now I have a basic project set up, where there are a lot of dependencies and connections between individual resources that contain objects and their methods, including functions. The basic project contains all GUI, data communication and all tools for further programming of the data module of our application.
So, when you tell me that you want a code example of this specific element of the program, I will have to create a new project and extract the necessary elements from the main project, including all dependencies.
By the way, our project has several thousands of lines of source code.

Radim

Re: Button class

Posted: Thu Sep 05, 2024 4:39 pm
by radimpl
And what about the source code.
I've been using Clipper since the early 1990s with the XClass library, which clearly defined the OOP way.
XBase++ then improved it for GUI and event driven programming.
And then all the way around.
Initialization of the object, execution of messages and finally destroy.
No joke and no min.
For more complex objects, there are always 3 basic methods: Init(), Show(), Destroy().

Radim

Re: Button class

Posted: Thu Sep 05, 2024 4:47 pm
by radimpl
In my opinion, I could be wrong, XBase++ preserves the properties of C++, so OOP and functions can live together without the problem that C# causes.
And that's why I need your help.

And that's all I wanted to say today.

Thanks to all, Radim

Re: Button class

Posted: Thu Sep 05, 2024 5:00 pm
by Chris
Hi Radim,

Oh, thanks for explaining, apparently I had completely misunderstood you before. I had gotten the impression that you had written the GUI that all (or most) XBase++ applications use. Unfortunately I am not familiar with XBase++ tools, so that lead to my misunderstanding. Of course we can collaborate, and we will switch to private email since it will be a private project, but just to fully understand the situation, can you please answer also the following questions?

- What other (not yours) XBase++ apps use for GUI? Console GUI with @ SAY GET? Standard XBase++ functions for windows-based GUI? 3rd party options, and if yes, which ones?

- Do you think that working on your specific application and successfully making it work in X#/Windows Forms will also help with porting other XBase++ applications as well? Obviously any XBase++ specific compiler improvements we make will apply to all, but will implementing your GUI make it easier to implement the GUI that other apps are using as well?

- You said the app consists of several thousands of lines of code, can you give a more specific estimate? Close to 10k, 100k, 1 million? From VO, we and others have ported a lot of apps ranging from 100k to 1M and even more lines of code, but of course porting from XBase++ will be a new thing..


About the test app, it does not need to use your specific GUI elements. Just a small app that uses standard XBase++ GUI functions (which I assume you also use some of them) and creates a couple windows with a few controls. Just to get a rough idea.


Btw, just saw your latest post. In X#, you can also mix OOP and functions/globals, they are both supported equally, without needing to do anything special at all. So this should be no issue at all.

Re: Button class

Posted: Thu Sep 05, 2024 5:32 pm
by radimpl
Hi Chris,

I never used @say and @get.
The knowledge will certainly help you to transition from xbase++ to x#.
Basically I use the xbase++ philosophy.
The maximum number of rows is 100k.
All my GUI is based on XBase++ only.
An example of the submission using the source will be sent tomorrow, I just have to create it somehow.

Radim

Re: Button class

Posted: Thu Sep 05, 2024 5:36 pm
by radimpl
The maximum number of rows is close 30k.

correction. Radim

Re: Button class

Posted: Thu Sep 05, 2024 5:42 pm
by radimpl
If i am talking about basic project with no adds modules.
It's about 10-20k.

Re: Button class

Posted: Thu Sep 05, 2024 6:10 pm
by radimpl
correction.
Now I quickly calculated it and I am completely surprised.
My basic project is about 90k.
I never counting it.
Sorry.

Radim

Re: Button class

Posted: Thu Sep 05, 2024 6:14 pm
by Chris
Hi Radim,

OK, thanks! So the total count of lines of code including your GUI and other things is about 30,000 lines. This is a good size for a first attempt to port an XBase++ application.

Yes, please send the test app (also with source code) when you can. Does not need to be anything fancy, just a very simple test app with a couple windows and controls.

Edit. Just read your last post, no worries, so it's around 100k in total with your GUI? Certainly it will need much more effort than 30k, but should be still doable.