Button class

Public support forum for peer to peer support with related to the Visual Objects and Vulcan.NET products
User avatar
Chris
Posts: 4906
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Re: Button class

Post 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#.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post 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
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post 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
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post 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
User avatar
Chris
Posts: 4906
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Re: Button class

Post 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.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post 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
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post by radimpl »

The maximum number of rows is close 30k.

correction. Radim
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post by radimpl »

If i am talking about basic project with no adds modules.
It's about 10-20k.
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post 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
User avatar
Chris
Posts: 4906
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Re: Button class

Post 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.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
Post Reply