Button class

Public support forum for peer to peer support with related to the Visual Objects and Vulcan.NET products
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post by radimpl »

Hi Chris,

I use VS IDE.

I understand everything.

I just don't know what you mean by that:

If you want to port existing XBase++ applications into X#, it might make more sense to look into creating/using a GUI similar to what your apps are already using in XBase++.

Yes, I want to port existing XBase++ applications into X#. But, what it is a GUI similar to what your apps are already using in XBase++?

Radim
User avatar
Chris
Posts: 4906
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Re: Button class

Post by Chris »

Hi Radim,

I mean that it may make sense to create in X# a GUI that is similar (same methods, properties, functionality etc) to that you use in XBase++. similar to what we have done for Visual Objects, as the VO GUI is available for use also in X# (as you have already found out). This way VO developers do not need to make any changes to their existing VO code, they can simply reuse it in X# using the same GUI, and later enhance their apps if they want by using Windows Forms windows in the same app, or new windows using the old GUI if they want. The same can be done also for XBase++ probably.

Now the question is who creates this GUI in X#! It could be us (X# dev team), it could be yourself, or it could be a joined effort by you and other XBase++ developers, if also other XBase++ developers are interested on something like this, too. Are you using one of several GUI options for XBase++? Can you please post a link with some information about it, how it works, what controls it contains etc?
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 »

I haven't thought that far into it yet.
Now I'm just trying to see if this is the right way into the future.

In XBase++ we use only one GUI, which is based only on XBase++ libraries.
So there is no 3rd party libraries.
I am the author of this GUI only. Other programmers use the tools created by me (including the GUI) to create concrete applications for end users.

For now, I am thinking that I would make the eventual transition to X# myself. But these are only assumptions.

I might want to use already built commercial 3rd party libraries for Windows Forms to save work and time.
But I don't know if I can use X# with xbase++ dialect when communicating with this library?

So many questions for the future...

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, you are the author of the XBase++ GUI! That's great that we have you here! And you having the source code of the GUI helps a lot!

Is the GUI written in XBase++ itself, or is it written in some other language like c++? If it's in XBase++ it would help a lot, as for the GUI library to be used by an X# app, it needs to be written (recompiled) in X# (any dialect, it does not matter), or any other .Net language like c# if you prefer (and if you have written the GUI in c++, this might make more sense).

I am absolutely sure this can be done (as I said, it has already been done for VO), and since you are the author, with help by us and other members of the X# community, it should not take too long to implement it.

Would you like to have a quick proof of concept? If you want, please create a very small test app in XBase++ with one or two windows and 3-4 controls in them and some simple code, like for example showing a message when a button is clicked. Then send the app (exe and every required dlls or other needed support files so we can run it on our machines), together with the small source code of the application. Then we will send you back the same code in an X# project, showing the same windows and controls, probably looking exactly the same in X#, as it does in XBase++, by using a quick and dirty first version of a GUI library that works similar to yours. Obviously you can do this by yourself, but since you are not yet very familiar with X# and Windows Forms, maybe we can save you some time by giving you a starting point and convince you faster that it is doable! Or of course you may want to just do a first basic version yourself, learning Windows Forms on the way.

To give you some more information, the VO GUI in X# is not using Windows Forms. It is using a lot of WinAPI calls for direct manipulation of windows and it is very complicated in the way it was written, so it made more sense to simply (well, not that simply, but anyway!) recompile this GUI library (fortunately written itself in VO) in X# and keep using the same underlying WinAPI windows system. But now we are also creating a new version of the same GUI, using Windows Forms under the hood, while still having the same control names, properties and behavior, as the VO GUI has. I am not sure what the best option for your GUI is, it depends on the feature details and how it is written internally.

Also note that we have a custom visual designer for the VO GUI in X# and most probably this can be modified for creating a visual designer for your GUI as well. I assume you also have a visual designer for your GUI in XBase++, is that correct?

Finally a side question, are there any (old) applications in XBase++ left still using console mode (@ SAY GET)? I ask to decide if it makes any sense for us pursuing this direction as well.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
User avatar
Chris
Posts: 4906
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Re: Button class

Post by Chris »

Hi Radim,

Another reason for sending us a test XBase++ app (with code), is for us to see potential problems compiling real XBase++ code in X# (XBase++ dialect) and fix them in the compiler (and in the XBase++ version of the X# runtime possibly). We have fixed many problems after a few other XBase++ developers have sent us their bug reports, but I'm sure there's still plenty to be fixed/adjusted. So if you could send something like that, it would be very helpful..
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,

Well, you're going too fast for me.

Otherwise, I don't have any application in XBase++ that uses console mode.
The transition to GUI was uncompromising.

We will continue tomorrow.
And maybe I'll switch it to a private discussion

Radim
User avatar
Chris
Posts: 4906
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Re: Button class

Post by Chris »

Hi Radim,

Yes, private email is fine! Please cc' also Robert, robert @ xsharp dot eu.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
User avatar
lumberjack
Posts: 727
Joined: Fri Sep 25, 2015 3:11 pm
Location: South Africa

Re: Button class

Post by lumberjack »

Radim,

Please don't make it a private discussion. I am sure others would also like to follow this discussion.

Also, look under User Contributions, I have an article series which miight also help you to understand X# better. It starts out a Hello World application.

https://xsharp.eu/articles/user-contrib ... rogramming
______________________
Johan Nel
Boshof, South Africa
User avatar
robert
Posts: 4520
Joined: Fri Aug 21, 2015 10:57 am
Location: Netherlands

Re: Button class

Post by robert »

Radim,

I agree with Johan.
And also: private email support is for subscribers only.

Robert
XSharp Development Team
The Netherlands
robert@xsharp.eu
radimpl
Posts: 27
Joined: Sat Nov 28, 2020 6:28 pm

Re: Button class

Post by radimpl »

Hi Chris and Robert,

Since I don't know Windows Forms, I suggest cooperation with you and other programmers who are switching from XBase++ to X#.
As I mentioned earlier, I am the author of the entire GUI in XBase++.
I will be happy to help you with the conversion of the application to X#, including their testing.
And you will help me with Windows Forms.
Do I understand correctly that it will be full support for both parties, including private communication?

Radim
Post Reply