1. OpenEuphoria All-in-One archives fro beginners

I built 2 archives for beginners on Windows: Just unzip then in c:\WinApps to get rid of Administrator Rights and you can build 32 bit or 64 bit applications on Windows 7 or 8.

They are available here:

http://jean-marc.duro.pagesperso-orange.fr/euphoria32_for_win64_with_win32lib_and_wxeuphoria.zip

http://jean-marc.duro.pagesperso-orange.fr/euphoria64_for_win64_with_wxeuphoria.zip

As their name suggest, win32lib and wxEuphoria are included in euphoria32, and only wxEuphoria for euphoria64.

They are build with latest OpenEuphoria 4.1 with memstruct.

Regards

Jean-Marc

new topic     » topic index » view message » categorize

2. Re: OpenEuphoria All-in-One archives fro beginners

Hi

Now this is exciting. Not just for beginners either!

Chris

new topic     » goto parent     » topic index » view message » categorize

3. Re: OpenEuphoria All-in-One archives fro beginners

Page not found.

new topic     » goto parent     » topic index » view message » categorize

4. Re: OpenEuphoria All-in-One archives fro beginners

Not only, you are right.

I think I will write a library over wxEuphoria to have it as simple to use as can be, with for example only one setText covering set_text, set_label, set_string, set_combo_value, set_statusbar_text, etc.

As you may see, there is no need to install the whole GTK2 package on Windows as it uses GTK2 only on Linux. The only thing I dislike in wx_widgets is the way to use sizers. I can't get then to work, same in EuGTK: if I use many, most of the forms do not look the way they were supposed to be. I only use one sizer because it is needed with toolbars, menus and statusbars.

Regards

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

5. Re: OpenEuphoria All-in-One archives fro beginners

Sh... Orange always finds viruses in Euphoria executables. I suppose they removed the files once again.

As it takes about 26 megs per file, I can't send them by mail.

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

6. Re: OpenEuphoria All-in-One archives fro beginners

Jean-Marc, I use wxFormBuilder for most of my wxEuphoria programs. Works great! I think it's similar to EuGTK's Glade workflow. Anyway, it's a drag 'n' drop UI designer. Easy to use, but there are some controls not yet implemented (both in wxFormsBuilder and wxEuphoria).

new topic     » goto parent     » topic index » view message » categorize

7. Re: OpenEuphoria All-in-One archives fro beginners

I don't understand. Files are still there. I was able to get then immediatly after I uploaded them, but not now anymore.

new topic     » goto parent     » topic index » view message » categorize

8. Re: OpenEuphoria All-in-One archives fro beginners

I can even get them by FTP. Curious!

new topic     » goto parent     » topic index » view message » categorize

9. Re: OpenEuphoria All-in-One archives fro beginners

euphoric said...

Easy to use, but there are some controls not yet implemented (both in wxFormsBuilder and wxEuphoria).

I tried to use wxFormBuilder, but the result was not as expected. Windows were resized and some parts were even not shown. It does not seem as obvious as it appears at the first glance.

Do you know some components not available? I can use the ones I need up to now.

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

10. Re: OpenEuphoria All-in-One archives fro beginners

I shortened the names and now I can download them:

http://jean-marc.duro.pagesperso-orange.fr/euphoria32.zip

http://jean-marc.duro.pagesperso-orange.fr/euphoria64.zip

new topic     » goto parent     » topic index » view message » categorize

11. Re: OpenEuphoria All-in-One archives fro beginners

euphoric said...

Jean-Marc, I use wxFormBuilder for most of my wxEuphoria programs. Works great! I think it's similar to EuGTK's Glade workflow. Anyway, it's a drag 'n' drop UI designer. Easy to use, but there are some controls not yet implemented (both in wxFormsBuilder and wxEuphoria).

Same thing applies to Glade. Unless the entire toolchain is managed by one group, that's always going to be the case.

I do want to point out, however, that EuGTK is written in Euphoria, so it's relatively easy to keep up to date, and in fact stays a step ahead of the released versions of GTK.

new topic     » goto parent     » topic index » view message » categorize

12. Re: OpenEuphoria All-in-One archives fro beginners

jmduro said...
euphoric said...

Easy to use, but there are some controls not yet implemented (both in wxFormsBuilder and wxEuphoria).

I tried to use wxFormBuilder, but the result was not as expected. Windows were resized and some parts were even not shown. It does not seem as obvious as it appears at the first glance.

Do you know some components not available? I can use the ones I need up to now.

The ones I'd really like to use are wxRichTextCtrl and wxStyledTextCtrl. Greg says wxRichTextCtrl is implemented in wxEuphoria, but I don't think it's implemented yet in wxFormsBuilder. You can place the control, but the XML says it is an "unknown" control! WTF?! I tried changing that in the XML itself, but wxEuphoria doesn't seem to pick it up. Maybe a wxEuphoria guru can chime in here with working code.

I've never had problems with window sizing, so if you have questions, post here. Should be an easy fix. (Famous last words?) grin

You can always use set_size( wxControlID, width, height ) before anything gets displayed.

new topic     » goto parent     » topic index » view message » categorize

13. Re: OpenEuphoria All-in-One archives fro beginners

irv said...
euphoric said...

...wxFormBuilder... Easy to use, but there are some controls not yet implemented (both in wxFormsBuilder and wxEuphoria).

Same thing applies to Glade. Unless the entire toolchain is managed by one group, that's always going to be the case.

I do want to point out, however, that EuGTK is written in Euphoria, so it's relatively easy to keep up to date, and in fact stays a step ahead of the released versions of GTK.

Irv, with wxEuphoria, I just have to include some wx*.dll files with my executable, and the end-user is ready to go. It doesn't seem to be that way with GTK. That's the only thing holding me back from exploring the EuGTK option. Can you disabuse me of that notion?

new topic     » goto parent     » topic index » view message » categorize

14. Re: OpenEuphoria All-in-One archives fro beginners

I uploaded both files on RDS site.

new topic     » goto parent     » topic index » view message » categorize

15. Re: OpenEuphoria All-in-One archives fro beginners

euphoric said...
irv said...
euphoric said...

...wxFormBuilder... Easy to use, but there are some controls not yet implemented (both in wxFormsBuilder and wxEuphoria).

Same thing applies to Glade. Unless the entire toolchain is managed by one group, that's always going to be the case.

I do want to point out, however, that EuGTK is written in Euphoria, so it's relatively easy to keep up to date, and in fact stays a step ahead of the released versions of GTK.

Irv, with wxEuphoria, I just have to include some wx*.dll files with my executable, and the end-user is ready to go. It doesn't seem to be that way with GTK. That's the only thing holding me back from exploring the EuGTK option. Can you disabuse me of that notion?

Depends. The major Linux distributions already come with all the .dll's (actually, .so) files needed as part of the standard os. Small linux versions like Puppy don't, but the needed libraries can often be added easily. The very smallest generally don't do graphics at all, or use primitive graphics libraries like tk, but people who use these generally know what they're getting and don't expect very much.

By major distros, I mean Mint, Ubuntu, Parsix, Mageia, etc. all the biggies. ... distrowatch.com has a search feature to confirm what libraries come with what distro.

Windows, of course, is different. You have to download some libraries and run 4 'scripts' - actually exe's, that search for fonts, icons, etc. and set up the GTK dll's. Other than the download time, it takes just a few seconds, and could be made into an install package, no doubt. Unfortunately, the Windows dll's lag a few versions behind GTK. I still would like to be able to use native Windows dll's, but there seems to be too much difference between the Windows design and the GTK design to make that practical.

Edit: EuGTK comes with a bunch of files, but only 3 or 4 are actually critical to EuGTK, the rest, 225 or more, are demo programs. The actual needed 'runtime' files zip up to only 82k.

new topic     » goto parent     » topic index » view message » categorize

16. Re: OpenEuphoria All-in-One archives fro beginners

euphoric said...

I've never had problems with window sizing, so if you have questions, post here. Should be an easy fix. (Famous last words?) grin

I have just uploaded a graphical file comparison tool which is fixed size because I was not able to put buttons in an horizontal sizer and then this sizer in a vertical sizer with the grid.

How to get the tool resizable?

Regards

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

17. Re: OpenEuphoria All-in-One archives fro beginners

jmduro said...

I think I will write a library over wxEuphoria to have it as simple to use as can be, with for example only one setText covering set_text, set_label, set_string, set_combo_value, set_statusbar_text, etc.

I have started writing something but it can't be done as long as libwxeu*.dll does not wrap the wxClassInfo class which provides the function GetClassName().

Matt, Greg, could this function be included in libwxeu? It would help simplifying wxEuphoria usage for beginners as in this example.

public include wxeu.e 
 
public procedure setText(object id, sequence text) 
  integer wxId, param 
  if sequence(id) then 
    wxId = id[1] 
    param = id[2] 
  else 
    wxId = id 
  end if 
  sequence wxClass = get_class_name(wxId) 
  if equal(wxClass, "wxListCtrl") or equal(wxClass, "wxListBox") then 
    set_string( wxId, param, text ) 
  if equal(wxClass, "wxFrame") or equal(wxClass, "wxButton") or equal(wxClass, "wxStaticText") then 
    set_label ( wxId,  text ) 
  elsif equal(wxClass, "wxComboBox") then 
    set_combo_value ( wxId,  text ) 
  elsif equal(wxClass, "wxStatusBar") then 
    if sequence(id) then 
      set_status_text( wxId, text, param) 
    else 
      set_status_text( wxId, text ) 
    end if 
  elsif equal(wxClass, "wxTextCtrl") then 
    set_text( wxId, text ) 
  end if 
end procedure 

Regards

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

18. Re: OpenEuphoria All-in-One archives fro beginners

jmduro said...

I have started writing something but it can't be done as long as libwxeu*.dll does not wrap the wxClassInfo class which provides the function GetClassName().

I had to implement a registry in EuGTK to associate object handles with class names (ID's, actually). It works fine, and doesn't take much space or delay things so that you'd notice. You might try something like that.

new topic     » goto parent     » topic index » view message » categorize

19. Re: OpenEuphoria All-in-One archives fro beginners

jmduro said...

I have started writing something but it can't be done as long as libwxeu*.dll does not wrap the wxClassInfo class which provides the function GetClassName().

These types of multi-class functions are implemented within the library itself, where wxClassInfo is used to do such things.

jmduro said...

Matt, Greg, could this function be included in libwxeu? It would help simplifying wxEuphoria usage for beginners as in this example.

I'm not sure what Matt's response will be, but I'm going to say no. The names used in wxEuphoria come from wxWidgets and we try to follow suit as closely as possible.

Plus I don't even like the idea of lumping all labels and values as "text" like Win32Lib does. Not everything is "text" anyways.

If there's any question as to the purpose of a function, or as to which function does which thing, one should consult the documentation.

-Greg

new topic     » goto parent     » topic index » view message » categorize

20. Re: OpenEuphoria All-in-One archives fro beginners

irv said...
jmduro said...

I have started writing something but it can't be done as long as libwxeu*.dll does not wrap the wxClassInfo class which provides the function GetClassName().

I had to implement a registry in EuGTK to associate object handles with class names (ID's, actually). It works fine, and doesn't take much space or delay things so that you'd notice. You might try something like that.

Thank you Irv. I'll give it a look.

Regards

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

21. Re: OpenEuphoria All-in-One archives fro beginners

Distribute OpenEuphoria like a BBQ:

raw grill-your own source-code only
small quick takeout window windows: WEE, tinEWG
unix: WEE, euGTK
medium sit-down add wxEuphoria, win32Lib
large buffet add lots of stuff

I can not find an argument for leaving WEE out of any o[ distribution.

I can not find an argument for leaving some kind of GUI toolkit out of any o[ distribution. Leaving out a GUI toolkit is like leaving your spare car tire behind because you couldn't decide on a full size tire or a compact emergency tire.

For windows using tinEWG is excellent for casual programmers. Its not a large include and gets the job done. I have started to look at upgrading tinEWG documentation to make it look like it belongs in o[.

For unix euGTK is a small include and is a natural fit.

For medium-large distributions add wxEuphoria and win32lib. Jean-Marc has shown with All-in-One that this just makes sense.

In a large distribution we can start including choices like REDY and euIUP.

What we want: pick from the menu; one download; one click and it installs; load WEE and you are programming.

Lots of room to argue about the details, but we need a target to aim for.

_tom

new topic     » goto parent     » topic index » view message » categorize

22. Re: OpenEuphoria All-in-One archives fro beginners

I really like the way tinEWG is built. It is pure Euphoria style.

I was expecting a grid with it, but as Andreas wrote it would need more lines of code than tinEWG itself.


Forked into: tingrid a Gridcontrol for tinEWG

new topic     » goto parent     » topic index » view message » categorize

23. Re: OpenEuphoria All-in-One archives fro beginners

It would even be better, in my point of view, if it did not use so many globals. I find it difficult to set global variables before you call some functions because there is no visible link with the related function. I can't imagine I must learn all globals before I can start programming, even if they have a default value.

new topic     » goto parent     » topic index » view message » categorize

24. Re: OpenEuphoria All-in-One archives fro beginners

_tom said...

Distribute OpenEuphoria like a BBQ:

raw grill-your own source-code only
small quick takeout window windows: WEE, tinEWG
unix: WEE, euGTK
medium sit-down add wxEuphoria, win32Lib
large buffet add lots of stuff

I can not find an argument for leaving WEE out of any o[ distribution.

I can not find an argument for leaving some kind of GUI toolkit out of any o[ distribution. Leaving out a GUI toolkit is like leaving your spare car tire behind because you couldn't decide on a full size tire or a compact emergency tire.

For windows using tinEWG is excellent for casual programmers. Its not a large include and gets the job done. I have started to look at upgrading tinEWG documentation to make it look like it belongs in o[.

For unix euGTK is a small include and is a natural fit.

For medium-large distributions add wxEuphoria and win32lib. Jean-Marc has shown with All-in-One that this just makes sense.

In a large distribution we can start including choices like REDY and euIUP.

What we want: pick from the menu; one download; one click and it installs; load WEE and you are programming.

Lots of room to argue about the details, but we need a target to aim for.

_tom

I second this idea. Also updates should be made to the tree, not as individual bits and bobs that you need to hunt for and download and install. Broadband's quick enough nowadays for this to be a major issue.

Chris

new topic     » goto parent     » topic index » view message » categorize

25. Re: OpenEuphoria All-in-One archives fro beginners

I'm starting a work on this basis. The aim is to ease the step of porting Euphoria code from windows to multiplatform to linux and reverse. It is based on the following principle:

           \ OS        Windows        Multiplatform       Linux 
Skill level \      
             \ 
 
Beginner               winSimple  <-->  wxSimple    <-->  linSimple 
                          ^                ^                 ^ 
                          |                |                 | 
                          v                v                 v 
Advanced user          win32lib        wxEuphoria          euGtk 
                        arwen                              euQt 
                        tinEwg 
                        ... 

winSimple would be as simple as:

ifdef WIN32LIB then 
  include winlibSimple.e 
elsifdef ARWEN then 
  include arwenSimple.e 
elsifdef TIN_EWG then 
  include tinEwgSimple.e 
end ifdef 

All *Simple.e libraries share the same philosophy to ease porting: same function names, same or close parameters, same return values.

I will start a new thread when the first library begins to work. It is wxSimple, with a syntax close to win32lib, thanks to Irv's advice on registering classes.

Regards

Jean-Marc

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu