Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2005-12

New Pascal cross platform GUI library with IDE

28 messages · 8 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Martin Schreiber

My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to release the IDE under GPL and the library under LGPL or similar.

- Compiles on FPC 2.0.2 or FPC 2.0.3.
- Tested on i386-linux SuSE 9.0,9.2,10.0 and i386-win32 98 and 2000.
- Links to xlib and gdi32, no external widget library needed.
- Internal character encoding is UCS2.
- Uses anti aliased fonts on Linux (XFT).
- All screen drawing is double buffered.
- Has docking forms.
- Has embedded forms (similar to TFrame).

IDE:
- Integrated debugging.
- Source code highlighting.
- Source code navigation with support for include files.
- Integrated visual form designer with source code update for components and events.
- Flexible and practical build system with switchable macros.

You can download source and binaries from
http://mypage.bluewin.ch/msegui/

Have a lot of fun!
Martin

Felipe Monteiro de Carvalho
to Martin Schreiber
Martin Schreiber wrote
My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to release the IDE under GPL and the library under LGPL or similar.

Souds great!

I´d like to make three feature requests:

* Use the Modifyed LGPL used by Lazarus LCL to allow static linking to projects on other licenses for the Library.

* Can you create a Widgetset interface for it on Lazarus?

* Create a Source Forge project (or similar) for it. This is vital if you wish to allow others to improve the project.

I bet these features would give lot´s of users (and developers) to the project.

Felipe Monteiro de Carvalho
Mattias Gaertner
to Martin Schreiber: My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to…
Show quoted text 23 lines
My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to release the IDE under GPL and the library under LGPL or similar. - Compiles on FPC 2.0.2 or FPC 2.0.3. - Tested on i386-linux SuSE 9.0,9.2,10.0 and i386-win32 98 and 2000. - Links to xlib and gdi32, no external widget library needed. - Internal character encoding is UCS2. - Uses anti aliased fonts on Linux (XFT). - All screen drawing is double buffered. - Has docking forms. - Has embedded forms (similar to TFrame). IDE: - Integrated debugging. - Source code highlighting. - Source code navigation with support for include files. - Integrated visual form designer with source code update for components and events. - Flexible and practical build system with switchable macros. You can download source and binaries from http://mypage.bluewin.ch/msegui/

Is there any Readme, Makefile or Install text?

Mattias

Den Jean
to Mattias Gaertner
Mattias Gaertner wrote 8 lines
> - Compiles on FPC 2.0.2 or FPC 2.0.3. > - Tested on i386-linux SuSE 9.0,9.2,10.0 and i386-win32 98 and 2000. > - Links to xlib and gdi32, no external widget library needed. > - Internal character encoding is UCS2. > - Uses anti aliased fonts on Linux (XFT). > - All screen drawing is double buffered. > - Has docking forms. > - Has embedded forms (similar to TFrame).

impressive

Den Jean

Martin Schreiber
to Mattias Gaertner: On Thu, 8 Dec 2005 09:52:50 +0100 Is there any Readme, Makefile or Install text? Mattias
Mattias Gaertner wrote
Is there any Readme, Makefile or Install text?

Not yet.

If you wish to test:

1. Download src and bin zip's.
2. Extract them to a directory of your choice ('yourdirectory') .
3. Run 'yourdirectory/bin/i386-linux/mseide' on linux or 'yourdirectory\bin\i386-win32\mseide.exe' on windows.
4. In 'Settings'-'Configure MSEide'-'${MSEDIR}' select 'yourdirectory/msegui'. 4a. On windows you have to setup ${COMPILER} and ${DEBUGGER}
5. In 'Project'-'Open' select 'yourdirectory/msegui/apps/demo/demo.prj'.
6. 'Target'-'Continue'.

If you wish to to compile the IDE:

1. In 'Project'-'Open' select 'yourdirectory/msegui/apps/ide/mseide.prj'.
2. 'Target'-Continue'.

Martin

L505
to Martin Schreiber: My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to…
Show quoted text 19 lines
My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to release the IDE under GPL and the library under LGPL or similar. - Compiles on FPC 2.0.2 or FPC 2.0.3. - Tested on i386-linux SuSE 9.0,9.2,10.0 and i386-win32 98 and 2000. - Links to xlib and gdi32, no external widget library needed. - Internal character encoding is UCS2. - Uses anti aliased fonts on Linux (XFT). - All screen drawing is double buffered. - Has docking forms. - Has embedded forms (similar to TFrame). IDE: - Integrated debugging. - Source code highlighting. - Source code navigation with support for include files. - Integrated visual form designer with source code update for components and events. - Flexible and practical build system with switchable macros.

Neat.. saves a lot of screen space with the fonts and menus you use. I'll write a page about it when I get a chance after playing with it.

L505
to Martin Schreiber: My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to…

I hate to bring this up since it isn't the most important issue in our lives these days, but just for fun..

Demo.exe I got a 604KB exe
After UPX 187KB

That was with the -CX and -XX options in the command line, along with

strip demo.exe

Anyone get similar results?

Pretty good size for a cross platform app, and I wonder if Martin has already worked on tweaking the libraries for smartlinking, or whether there has been no work done there (i.e. room for optimization or is this already been optimized? )

p.s.
Martin I may use this IDE in the PSP project - we are looking for an IDE to build Pascal web projects, and currently lazarus is i candidate, and Syn too.. maybe this IDE is another option!

L505
Show quoted text 13 lines
I hate to bring this up since it isn't the most important issue in our lives these days, but just for fun.. Demo.exe I got a 604KB exe After UPX 187KB That was with the -CX and -XX options in the command line, along with strip demo.exe Anyone get similar results? Pretty good size for a cross platform app, and I wonder if Martin has already

worked

on tweaking the libraries for smartlinking, or whether there has been no work done there (i.e. room for optimization or is this already been optimized? )

In addition to my above comments, measuring size is actually different in this case, because we have to consider that the program above is a special program in that it does not use native windows controls AFAIK? i.e. not using ComDlg32.dll and similar (whereas notepad and delphi apps do, so this hides some of the exe size in the dll with delphi programs and it isn't a fair comparison).

So a 600kb exe may actually mean that there is 600kb of true native controls in the exe, whereas notepad/delphi applications store a lot of their native controls in other dlls on the windows machine.

Martin, are components mostly custom windows API graphic screen calls? My tools tell me your programs do not rely on ComDlg32.dll and ComCtl32.dll (which is obvious considering there are no windows-ish looking dialogs and controls in the program). Hey I'll look into the source too, to try find out, but it's also interesting to discuss these issues in english too :)

i.e. in a delphi hello world Exe you immediately pull in comctl32.dll whereas in this IDE you do NOT pull in comctl32.dll, so considerations need to be made.

One other thing I noticed is mpr.dll gets pulled in with demo.exe but in a delphi hello world it does not. What code in demo.exe does rely on mpr.exe, is I wonder?

Again, none of these issues are *really* important at this point in time. I'm really just over-analyzing - but interesting none the less.

Martin Schreiber
to L505: worked In addition to my above comments, measuring size is actually different in this…
L505 wrote 9 lines
So a 600kb exe may actually mean that there is 600kb of true native controls in the exe, whereas notepad/delphi applications store a lot of their native controls in other dlls on the windows machine. Martin, are components mostly custom windows API graphic screen calls? My tools tell me your programs do not rely on ComDlg32.dll and ComCtl32.dll (which is obvious considering there are no windows-ish looking dialogs and controls in the program). Hey I'll look into the source too, to try find out, but it's also interesting to discuss these issues in english too :)

Correct.

i.e. in a delphi hello world Exe you immediately pull in comctl32.dll whereas in this IDE you do NOT pull in comctl32.dll, so considerations need to be made.

Correct.

One other thing I noticed is mpr.dll gets pulled in with demo.exe but in a delphi hello world it does not. What code in demo.exe does rely on mpr.exe, is I wonder?

Me too. What does mpr.dll?

Martin

Felipe Monteiro de Carvalho
to Martin Schreiber: My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to…
Martin Schreiber wrote
My Pascal cross platform GUI library and IDE has reached 'near beta' state. I plan to release the IDE under GPL and the library under LGPL or similar.

Souds great!

Can I make some feature requests?

* Use the Modifyed LGPL used by Lazarus LCL to allow static linking to projects on other licenses for the Library.

* Can you create a Widgetset interface for it on Lazarus?

* Create a Source Forge project (or similar) for it. This is vital if you wish to allow others to improve the project.

I bet these features would give lot´s of users (and developers) to the project.

Felipe Monteiro de Carvalho
Martin Schreiber
to Felipe Monteiro de Carvalho
Felipe Monteiro de Carvalho wrote
* Use the Modifyed LGPL used by Lazarus LCL to allow static linking to projects on other licenses for the Library.

What about the FPC library licence (COPYING.FPC)?

* Can you create a Widgetset interface for it on Lazarus?

That is difficult, msegui has a very different architecture.

* Create a Source Forge project (or similar) for it. This is vital if you wish to allow others to improve the project.

This is planned, but I will need assistance from people who now how to do (mailinglists, bug repository svn ...).

Martin

Martin Schreiber
to L505: worked In addition to my above comments, measuring size is actually different in this…

(Second post)

L505 wrote 9 lines
So a 600kb exe may actually mean that there is 600kb of true native controls in the exe, whereas notepad/delphi applications store a lot of their native controls in other dlls on the windows machine. Martin, are components mostly custom windows API graphic screen calls? My tools tell me your programs do not rely on ComDlg32.dll and ComCtl32.dll (which is obvious considering there are no windows-ish looking dialogs and controls in the program). Hey I'll look into the source too, to try find out, but it's also interesting to discuss these issues in english too :)

Correct.

i.e. in a delphi hello world Exe you immediately pull in comctl32.dll whereas in this IDE you do NOT pull in comctl32.dll, so considerations need to be made.

Correct.

One other thing I noticed is mpr.dll gets pulled in with demo.exe but in a delphi hello world it does not. What code in demo.exe does rely on mpr.exe, is I wonder?

Me too. What does mpr.dll?

Martin

Martin Schreiber
to Mattias Gaertner: On Thu, 8 Dec 2005 09:52:50 +0100 Is there any Readme, Makefile or Install text? Mattias

(Second post)

Mattias Gaertner wrote
Is there any Readme, Makefile or Install text?

Not yet.

If you wish to test:

1. Download src and bin zip's.
2. Extract them to a directory of your choice ('yourdirectory') .
3. Run 'yourdirectory/bin/i386-linux/mseide' on linux or 'yourdirectory\bin\i386-win32\mseide.exe' on windows.
4. In 'Settings'-'Configure MSEide'-'${MSEDIR}' select 'yourdirectory/msegui'. 4a. On windows you have to setup ${COMPILER} and ${DEBUGGER}
5. In 'Project'-'Open' select 'yourdirectory/msegui/apps/demo/demo.prj'.
6. 'Target'-'Continue'.

If you wish to to compile the IDE:

1. In 'Project'-'Open' select 'yourdirectory/msegui/apps/ide/mseide.prj'.
2. 'Target'-Continue'.

Martin

Martin Schreiber
to Mattias Gaertner: On Thu, 8 Dec 2005 09:52:50 +0100 Is there any Readme, Makefile or Install text? Mattias

(Third post)

Mattias Gaertner wrote
Is there any Readme, Makefile or Install text?

Not yet.

If you wish to test:

1. Download src and bin zip's.
2. Extract them to a directory of your choice ('yourdirectory') .
3. Run 'yourdirectory/bin/i386-linux/mseide' on linux or 'yourdirectory\bin\i386-win32\mseide.exe' on windows.
4. In 'Settings'-'Configure MSEide'-'${MSEDIR}' select 'yourdirectory/msegui'. 4a. On windows you have to setup ${COMPILER} and ${DEBUGGER}
5. In 'Project'-'Open' select 'yourdirectory/msegui/apps/demo/demo.prj'.
6. 'Target'-'Continue'.

If you wish to to compile the IDE:

1. In 'Project'-'Open' select 'yourdirectory/msegui/apps/ide/mseide.prj'.
2. 'Target'-Continue'.

Martin

Martin Schreiber
to Felipe Monteiro de Carvalho: Souds great! Can I make some feature requests? * Use the Modifyed LGPL used by Lazarus…

(Second post)

Felipe Monteiro de Carvalho wrote
* Use the Modifyed LGPL used by Lazarus LCL to allow static linking to projects on other licenses for the Library.

What about the FPC library licence (COPYING.FPC)?

* Can you create a Widgetset interface for it on Lazarus?

That is difficult, msegui has a very different architecture.

* Create a Source Forge project (or similar) for it. This is vital if you wish to allow others to improve the project.

This is planned, but I will need assistance from people who now how to do (mailinglists, bug repository svn ...).

Martin

Martin Schreiber
to Mattias Gaertner: On Thu, 8 Dec 2005 09:52:50 +0100 Is there any Readme, Makefile or Install text? Mattias

(Fourth post)

Mattias Gaertner wrote
Is there any Readme, Makefile or Install text?

Not yet.

If you wish to test:

1. Download src and bin zip's.
2. Extract them to a directory of your choice ('yourdirectory') .
3. Run 'yourdirectory/bin/i386-linux/mseide' on linux or 'yourdirectory\bin\i386-win32\mseide.exe' on windows.
4. In 'Settings'-'Configure MSEide'-'${MSEDIR}' select 'yourdirectory/msegui'. 4a. On windows you have to setup ${COMPILER} and ${DEBUGGER}
5. In 'Project'-'Open' select 'yourdirectory/msegui/apps/demo/demo.prj'.
6. 'Target'-'Continue'.

If you wish to to compile the IDE:

1. In 'Project'-'Open' select 'yourdirectory/msegui/apps/ide/mseide.prj'.
2. 'Target'-Continue'.

Martin

Martin Schreiber
to Felipe Monteiro de Carvalho: Souds great! Can I make some feature requests? * Use the Modifyed LGPL used by Lazarus…

(Third post)

Felipe Monteiro de Carvalho wrote
* Use the Modifyed LGPL used by Lazarus LCL to allow static linking to projects on other licenses for the Library.

What about the FPC library licence (COPYING.FPC)?

* Can you create a Widgetset interface for it on Lazarus?

That is difficult, msegui has a very different architecture.

* Create a Source Forge project (or similar) for it. This is vital if you wish to allow others to improve the project.

This is planned, but I will need assistance from people who now how to do (mailinglists, bug repository svn ...).

Martin

Martin Schreiber
to Michael Van Canneyt
Michael Van Canneyt wrote
This is the same license.

COPYING.LCL:

- object files and libraries linked into an application may be distributed without source code.

COPYING.FPC:

As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice,
provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module
which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are
not obligated to do so. If you do not wish to do so, delete this exception statement from your version.

Martin

Martin Schreiber
to Marco van de Voort
Marco van de Voort wrote
(same license, different versions. The LCL form was the original one, but some repeating questions and discussion convinced the fpc team to reword it more in Legalese. Content not significantly altered, just worded more precise version 1.00001)

Could I use the mentioned text out of COPYING.FPC for COPYING.MSE ?

Marco van de Voort
to Martin Schreiber
Show quoted text 8 lines
On Monday 12 December 2005 20.58, Marco van de Voort wrote: > (same license, different versions. The LCL form was the original one, but > some repeating questions and discussion convinced the fpc team to reword it > more in Legalese. Content not significantly altered, just worded more > precise version 1.00001) Could I use the mentioned text out of COPYING.FPC for COPYING.MSE ?

The license text is BSD licensed :-)

Michael Van Canneyt
to Martin Schreiber: Could I use the mentioned text out of COPYING.FPC for COPYING.MSE ?
Martin Schreiber wrote 8 lines
On Monday 12 December 2005 20.58, Marco van de Voort wrote: > (same license, different versions. The LCL form was the original one, but > some repeating questions and discussion convinced the fpc team to reword it > more in Legalese. Content not significantly altered, just worded more > precise version 1.00001) Could I use the mentioned text out of COPYING.FPC for COPYING.MSE ?

Yes, of course. The copyiright notice isn't copyrighted :-)

Michael.