Difference between revisions of "MSEide+MSEgui"

From Free Pascal wiki
m (But what about Lazarus ?)
m (But what about Lazarus ?)
(No difference)

Revision as of 00:46, 23 March 2006


The MSE IDE is a Cross Platform GUI Development System completely written in Pascal for Pascal programmers. Despite being a single person (Martin Schreiber) effort for the moment, the IDE has already an amazing feature list. More info and downloads are available on the Home Page

But what about Lazarus ?

Lazarus is an IDE that aims to provide a high degree of compatibility with VCL code while providing a native look on many platforms. The native look is very important for many developers, but combined with the VCL compatibility necessitates many comlex interfaces to the different native widget sets (Gtk,Win32,Carbon,Qt). The continuous evolution of these native widget sets (gtk1->gtk2, win32->?, qt) provoques endlessly catching up. The MSE GUI does not feature (or does not suffer :-) of VCL compatibility. The graphics library provides an interface to win32 and X11. The advantage of the X11 layer is the immediate availability of a large and stable (in time) target platform. The different goals of both projects make that both projects fulfill different needs.

Why this wiki

The design of the MSE GUI is a fresh approach to GUI design patterns. It features many innovative solutions for typical GUI tasks. Being innovative, the MSE GUI library differs substantially from VCL/LCL/CLX. Switching from VCL to MSE may be more challenging than switching from VCL to LCL. These wiki pages aim to ease the first steps with this promising IDE and GUI library.


See home page.

Quick start

Open Project

Launch the IDE and use Project->Open to open the provide demo msegui/apps/demo/demo.prj. The title of the IDE reflects the opened project. Hit F9 and (if you followed the installation instructions :-), be amazed by the speed of FPC+MSE.

First RAD steps

Close the running project. Use Project->Source to open the project source demo.pas. Ctrl-click on the parameter mainfo in the line


to navigate to main.pas. Click on F12 to toggle between unit and form. Not everything will feel that familiar, because of that, these pages are written. Click on the button, this will auto raise the property editor (unusual but usefull). Let us add a button. Make the component palette visible if necessary (View->Toolbar->Component Palette). Select the tbutton on the widget page. Click on the form to create the button. Give it a caption in the usual way. Creating an event handler does not work with the usual double clicking on the onexecute property. Instead, you must select the onexecute property in the property editor, type the name of an event handler and press enter. The MSE RAD will create the handler and position the pointer on the definition. Use ctrl-shift-down arrow (or up) to navigate between implementation and definition. Just add some code like writeln('Hello world'); Hit F9. The writeln will end up in the target console window of MSE (not the console in which you started MSE).