Giter Club home page Giter Club logo

mse-org / mseide-msegui Goto Github PK

View Code? Open in Web Editor NEW
111.0 14.0 15.0 50.66 MB

MSEide is a Rapid Application Development IDE for platform independent rich GUI applications in the Pascal language. It comes with its own GUI toolkit called MSEgui. Binaries: https://github.com/mse-org/mseide-msegui/releases

License: GNU General Public License v2.0

Pascal 99.92% Shell 0.03% Batchfile 0.01% NASL 0.01% C++ 0.01% SourcePawn 0.03% C 0.01%
fpc pascal ide widgetset bgrabitmap developer-tools freebsd freepascal linux macos

mseide-msegui's People

Contributors

alexey-t avatar fredvs avatar graemeg avatar lainz avatar marsupilami79 avatar mse2 avatar rchastain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mseide-msegui's Issues

Commit ee10850a of fpc 3.3.1 breaks msegui compatibility.

Hello.
Commit ee10850a of 17 Oct, 2021 breaks msegui compatibility.

It introduces in 64 bit OS for TAnsiRec and TUnicodeRec new size of the reference counter ( was a SizeInt now it is LongInt ) and removed the Dummy var.
https://gitlab.com/freepascal.org/fpc/source/-/commit/ee10850a5793b69b19dc82b9c28342bdd0018f2e

After that commit msegui is not able to connect correctly to ansistrings or widestrings or msestrings.
I did spent some time to fix it but without luck.

Did try to have some light from Lazarus forum but did not help too much:
https://forum.lazarus.freepascal.org/index.php/topic,56909.msg422970.html#msg422970

Does somebody have a idea what could affect in msestring or other string that difference in the reference counter ?
What method will have impact on that change and what must be changed?

Thanks.

Fre;D

New optionswindow: wo_transparentbackground

Hello.

There is a new shape in optionswindow: wo_transparentbackground.
Setting this option allows to only see the child-components of the form, the background will be transparent.
It works for Linux and Windows.

You will need to recompile MSEide (or ideU) with the last commits of MSEgui to see that new option in the project inspector.

To enable it, just add in form.oncreate this:

procedure tmainfo.oncreate(const sender: TObject);
begin
 optionswindow := [wo_groupleader,wo_taskbar,wo_alwaysontop,wo_transparentbackground]; // this as example
 SetChildBounds(sender); // this will create a list of child-bounds needed for creation of the shape of form.
end;

There is a demo in MSEuniverse:
https://github.com/mse-org/mseuniverse/tree/main/samples/forms/transparentbackground

Here the form on the project:
transpback_project

And here compiled:
transpback_compiled

Fre;D

2 questions

  1. Is it possible to build apps using msegui without using the IDE? I prefer just using vim. I guess that means I'd need some kind of make file?
  2. Is it possible to stop the text caret (cursor) from blinking in text fields? I can't work with blinking. (Microsoft offered the option to stop blinking across all apps with Windows 2000, but for Linux it is trickier. See https://jurta.org/en/prog/noblink .)

To create custom frames, you may use the property frame/frameimage and select a image-list of 8 bitmaps.

To create custom frames, you may use the property frame/frameimage and select a image-list of 8 bitmaps.

msegui_roundcourner

The first is the top left corner, then the left side-line, then the bottom left corner, then bottom line, then right bottom corner, right side-line, right top corner and finally top side line.

Ok, it works but could it be possible to create each bitmap "live", with drawline-ellipse, etc and then assign it to each bitmap of the image list?
That would be great to not need to import images in the image list but create at runtime each part of the frame (corners and side-lines)

Originally posted by @fredvs in #74 (comment)

Releases organization

Hello gentlemen of the MSE team!

I think it would be good that we have a discussion about organization and presentation of releases.

Here are my ideas. Please let me know what you think of it.

The main idea is that we need a template for releases. I speak of the text which is displayed for each release. It should be clear, simple, in good english, and used for all releases, so that we have an uniform presentation.

Is it necessary to reproduce for each release the general description of MSEide+MSEgui? Isn't it the function of the README? For the text of the release, we could keep only the description of what is new in this version.

Fred suggested in a private discussion to create a README.md from the README.txt. I think it's a good idea.

A last thing. It would be good to have somewhere a clear summary of all modifications that we made, since the last version released by Martin. In principle, it's the function of commits, but commits are not always readable. Often there are many unessential modifications that hide the important things.

Have a nice day.

Roland

Adding an event handler

I tried double-clicking on OnPaint to create a handler but that does not react. So I browsed the code to find the event definition.

In tmseformwidget, Ctrl-Click on the published property did not work. That would be handy here.

  published
   property onpaint;

Anyway I found the definition and typed it in the form and it appeared in the combobox of the event in the object inspector.

So I suppose all is fine, though maybe is it supposed to be easier?

Can't build documentation

Windows 11 64bit, MSEide v5.10.0.

In folder C:\mseide\mseide-msegui-5.10.0\help\fpdoc I tried: C:\mseide\mseide-msegui-5.10.0\help\fpdoc>fpdoc --project=msegui-docs-project.xml

FPDoc - Free Pascal Documentation Tool
Version 3.2.2 [2021/05/15]
(c) 2000 - 2003 Areca Systems GmbH / Sebastian Guenther, [email protected]
(c) 2005 - 2012 various FPC contributors

Parsing used unit "mseclasses" with commandLine "../../lib/common/kernel/mseclasses.pas -Fu../lib/common/* -Fu../lib/common/kernel/linux -Fi../lib/common/kernel"
Parsing used unit "mseglob" with commandLine "../../lib/common/kernel/mseglob.pas -Fu../lib/common/* -Fu../lib/common/kernel/linux -Fi../lib/common/kernel"
Parsing used unit "mseerr" with commandLine "../.

Parsing used unit "msestockobjects" with commandLine "../../lib/common/kernel/msestockobjects.pas -Fu../lib/common/* -Fu../lib/common/kernel/linux -Fi../lib/common/kernel"
Exception at 00488D25: EFileNotFoundError:
../../lib/common/kernel/msestockobjects.pas.

The process stops with ERROR:
Exception at 00488D25: EFileNotFoundError:
../../lib/common/kernel/msestockobjects.pas.

CTRL-Click does not find generic types

TGenericUniversalBitmap is a generic type and TBGRACustomBitmap is a specialization of that generic type. I suppose that's why they are not found by CTRL-Click whereas other classes around are found.

generic TGenericUniversalBitmap<TPixel, TColorspace> = class(TCustomUniversalBitmap)

TBGRACustomBitmap = class(specialize TGenericUniversalBitmap<TBGRAPixel, TBGRAPixelColorspace>, IBGRAScanner)

MFM-Doktor

Hello friends!

I had two hours to kill this morning, and I wanted to wake up my Lua knowledge, so I made this.

This is a tool made to repair MFM files that do not load correctly in MSEide, due to invalid values for properties.

Example:

[roland@localhost mfmdoktor]$ lua mfmdok.lua sample.mfm result.txt
MFM-Doktor 0.0.1 (Lua 5.2)
DEBUG Valid value: wo_noframe
DEBUG Valid value: wo_groupleader
DEBUG Valid value: wo_notaskbar
DEBUG Invalid value: wo_alwaysontop
DEBUG Delete: [wo_alwaysontop, ]
DEBUG Invalid value: wo_rounded
DEBUG Delete: [, wo_rounded]
DEBUG Valid value: ow_mousefocus
DEBUG Valid value: ow_tabfocus
DEBUG Valid value: ow_arrowfocus
DEBUG Valid value: ow_mousewheel
DEBUG Valid value: ow_destroywidgets
DEBUG Valid value: ow1_fontglyphheight
DEBUG Valid value: ow1_autoscale
DEBUG Valid value: ow1_autoheight
[roland@localhost mfmdoktor]$ 

I see in another discussion that wo_rounded seems to be a valid value. I don't know why I didn't find it in my documentation.

Too tired to change this now. Suggestions, improvements, ideas are welcome.

Best regards.

Roland

mfmdoktor-001.zip

Windows Installer

Hi, it will be nice to have some Inno Setup script, to install and configure FPC with mseide-msegui.
Say FPC 3.2.0 and the latest IDE ready to use, already configured for the folder the user selects.

How to have more readable commits

Hello Fred (and other)!

For your information, I started to work on a new branch derived from (unfinished) version 4.6.3. I called the branch 'maint', for maintenance (idea borrowed to Graeme).

https://gitlab.com/rchastain/mseide-msegui/-/commits/maint

The purpose is 1° to change only what is strictly needed to make MSEide+MSEgui compile and work with the current FPC and 2° try to keep a clean commit history.

I already made an attempt last year. This was the branch 'compat_fpc_320':

https://gitlab.com/rchastain/mseide-msegui/-/commits/compat_fpc_320

But I prefer to restart from zero.

Best regards.

Roland

Adding a readme.md?

Hello everybody.

What do you think to add a readme.md file that will be loaded by the GitHub site as main page instead of the readme.txt?

Imho, the readme.txt should be mentioned in the readme.md file as a "must read" but readme.md could be more attractive, with a beautiful layout, with images, ... for main page of the web site.

Sadly I am not a pro in md files, maybe somebody that knows md and how to nicely present mse-ide/gui could give some tips.

(or even better (help to) do it...)

Fre;D

Ugly buttons when I compile the IDE (Linux)

Hello Fred and other!

I downloaded the latest state of the repository and compiled the IDE, under Linux with FPC 3.2.2.

The buttons of the main IDE window are not displayed correctly.

mseide-dev

Here is the script I used to compile:

fpc -omseide \
-Fu../../lib/common/* \
-Fu../../lib/common/kernel \
-Fi../../lib/common/kernel \
-Fu../../lib/common/kernel/linux \
-Fu../../lib/addon/* \
-Fi../../lib/addon/* \
-Xg -l -Mobjfpc -Sh -Fcutf8 -gl -O- mseide.pas \
&>> mseide5-build.log

Install instructions are wrong

On this page https://github.com/mse-org/mseide-msegui it says:

  1. Download and install FPC, you can get it from http://www.freepascal.org/download.var
  2. Download mseide_msegui from https://github.com/mse-org/mseide-msegui/archive/master.zip
  3. Extract them to a directory of your choice ('yourdirectory') .
  4. Run 'yourdirectory/bin/mseide' on Linux and FreeBSD or 'yourdirectory\bin\mseide.exe' on windows.

But when I did step 2. there was no bin dir. This is what ls says:

$ ls mseide-msegui-master/
apps         COPYING.GPL   COPYING.MSE  help   lib            msegui_32.png  msegui_64.png  readme.md   tools
contributed  COPYING.LGPL  DEBUG.TXT    icons  msegui_24.png  msegui_48.png  msegui.svg     README.TXT  VERSION.TXT

FPC compatibility for BGRABitmap

Here are a list of changes for FPC compatibility (in msegui\lib\common\fpccompatibility)

Insert mclasses after Classes in uses clause of:

  • fpreadxwd, fpwritepcx, fpwritetga, fpwritexpm, fpwritepnm, fpreadpcx, fpreadgif, fpreadpsd

I suggest to check as well (even if it may not be necessary for BGRABitmap):

  • fpread*, fpwrite*

Following is a list of unit to add. All of them need to be tweaked with mclasses.

Add zipper unit to fpccompatibility folder. It is found in paszlib package of FPC.

Add some units for XML support. They are found in fcl-xml package of FPC:

  • xmlread, xmlreader, xmltextreader, xmlwrite

Add units from package fcl-base:

  • base64 , bufstream

Exception 'Unable to open file ...' when opening a project

As last versions have no precompiled binaries, I try to compile the new source (mseide-msegui-5.10.4) with old mseide_win64/mseide.exe. But when open (as in documentation) the C:\mseide\mseide-msegui-5.10.4\apps\ide\mseide.prj, this error appears:

image

After "Continue" (as in the "documentation") it compiles and produces mseide.exe and its seems that works, only when open it in its About is shown the old version (must be 5.10.4):

image

Maybe, this all is normal, but I'm beginner and I feel it is not all ok.

Visual Studio Code plugin

I think the IDE works for it's purpouse, but will be nice as well to have say a Visual Studio Code plugin, so I can edit the apps in a better code editor (text highlighted, where I can autocomplete, etc) and then compile these apps.

Of course I have no idea on how to do that, but there are some pascal stuff for Visual Studio Code in the vscode plugin downloads. Instead of having an IDE, maybe is time to have a plugin for a code editor?

Is just an idea, is just because at work I use Visual Studio Code.

MSE and OpenGL...

I just discover a new hidden gem: mseopenglwidget:

The hidden demo is in https://github.com/mse-org/mseuniverse:

/mseuniverse/attic/msedocumenting/mse/trunk/help/tutorials/widgets/opengl/openglwidget/openglwidget.prj

The anim is incredibly fast, even in full screen:

Capture d’écran_2020-09-19_23-22-03

New warning message since refactory of mclasses.

Hello.

When compiling with last release of msegui there is a new warning message:

mclasses.pas(94,15) Warning: (3057) An inherited method is hidden by "GetOwner:tpersistentbridge;"

Could it give problems?

Is it possible to make a webbrowser with MSEgui ?

Are there any msegui bindings for any browser that supports dynamic pages?
I searched everywhere because I already started my project with msegui and I don't want to go back to the less fast Lazarus....
ps: sorry, English, it's not my mother tongue...

Add mseide.prj or all *.prj to .gitignore

Hello Fred!

The modifications of mseide.prj are visible in each commit and hide the interesting parts of the commit.

We could create a .gitignore in apps/ide with this line: *.prj

or even add that line in the main .gitignore, in the root directory.

What would you think about that?

Best regards.

Roland

MSEide multi-language?

Hello.

In last commit of ideU was added automatic-switch to the language used by the OS.
It uses gettext to get the locale used.

At the moment Russian, French, German, Spanish, Portuguese and indeed English are translated.

ideu_lang

ideu_lang_ru_fr_de_fr

Maybe it could be added too for MSEide ?
What do you think?

Fre;D

Some projects fail to build with "mseide" 5.6.6 on linux 64

tools/POtools/POdemo/podemo.prj

Note: DWARF debug information cannot be used with smart linking on this target, switching to static linking
Free Pascal Compiler version 3.2.2 [2021/07/09] for x86_64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling podemo.pas
Compiling form_conflang.pas
Compiling po2arrays.pas
po2arrays.pas(75,76) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(94,33) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(94,14) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(98,33) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(98,14) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(120,16) Error: Identifier not found "extendedty"
po2arrays.pas(120,26) Error: Error in type definition
po2arrays.pas(131,70) Warning: Implicit string type conversion from "RawByteString" to "UnicodeString"
po2arrays.pas(135,15) Error: Identifier not found "lang_modalresult"
po2arrays.pas(135,40) Error: Identifier not found "en_modalresulttext"
po2arrays.pas(137,7) Error: Identifier not found "lang_modalresult"
po2arrays.pas(137,48) Error: Identifier not found "en_modalresulttext"
po2arrays.pas(139,15) Error: Identifier not found "lang_modalresultnoshortcut"
po2arrays.pas(139,50) Error: Identifier not found "en_modalresulttextnoshortcut"
po2arrays.pas(141,7) Error: Identifier not found "lang_modalresultnoshortcut"
po2arrays.pas(142,9) Error: Identifier not found "en_modalresulttextnoshortcut"
po2arrays.pas(144,15) Error: Identifier not found "lang_stockcaption"
po2arrays.pas(144,41) Error: Identifier not found "en_stockcaption"
po2arrays.pas(146,7) Error: Identifier not found "lang_stockcaption"
po2arrays.pas(147,9) Error: Identifier not found "en_stockcaption"
po2arrays.pas(149,15) Error: Identifier not found "lang_extended"
po2arrays.pas(149,37) Error: Identifier not found "en_extendedtext"
po2arrays.pas(150,9) Error: Ordinal expression expected
po2arrays.pas(150,28) Error: Identifier not found "extendedty"
po2arrays.pas(150,48) Error: Identifier not found "extendedty"
po2arrays.pas(151,7) Error: Identifier not found "lang_extended"
po2arrays.pas(151,21) Error: Ordinal expression expected
po2arrays.pas(152,9) Error: Identifier not found "en_extendedtext"
po2arrays.pas(161,43) Error: Identifier not found "en_langnamestext"
po2arrays.pas(162,17) Error: Identifier not found "lang_langnames"
po2arrays.pas(164,17) Error: Identifier not found "lang_langnames"
po2arrays.pas(164,40) Error: Identifier not found "en_langnamestext"
po2arrays.pas(166,26) Error: Identifier not found "en_langnamestext"
po2arrays.pas(167,7) Error: Identifier not found "lang_langnames"
po2arrays.pas(167,28) Error: Identifier not found "en_langnamestext"
po2arrays.pas(169,15) Error: Identifier not found "lang_langnames"
po2arrays.pas(169,40) Error: Identifier not found "en_langnamestext"
po2arrays.pas(171,26) Error: Identifier not found "lang_langnames"
po2arrays.pas(173,29) Error: Identifier not found "lang_langnames"
po2arrays.pas(173,64) Error: Identifier not found "lang_langnames"
po2arrays.pas(179,23) Error: Identifier not found "en_langnamestext"
po2arrays.pas(183,11) Error: Identifier not found "lang_langnames"
po2arrays.pas(215,42) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(215,24) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(216,42) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(216,24) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(231,39) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(231,21) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(232,39) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(232,21) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(245,42) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(245,24) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(255,45) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(255,24) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(266,45) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(266,24) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(277,45) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(277,24) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(286,31) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(286,13) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(287,31) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
po2arrays.pas(287,13) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
po2arrays.pas(292,47) Error: Identifier not found "en_modalresulttext"
po2arrays.pas(294,55) Error: Identifier not found "en_modalresulttext"
po2arrays.pas(296,57) Error: Identifier not found "en_modalresulttextnoshortcut"
po2arrays.pas(299,9) Error: Identifier not found "en_modalresulttextnoshortcut"
po2arrays.pas(301,44) Error: Identifier not found "en_stockcaption"
po2arrays.pas(304,9) Error: Identifier not found "en_stockcaption"
po2arrays.pas(306,44) Error: Identifier not found "en_extendedtext"
po2arrays.pas(307,9) Error: Ordinal expression expected
po2arrays.pas(307,28) Error: Identifier not found "extendedty"
po2arrays.pas(307,48) Error: Identifier not found "extendedty"
po2arrays.pas(308,28) Error: Ordinal expression expected
po2arrays.pas(309,9) Error: Identifier not found "en_extendedtext"
po2arrays.pas(316,45) Error: Identifier not found "en_langnamestext"
po2arrays.pas(317,26) Error: Identifier not found "en_langnamestext"
po2arrays.pas(317,26) Fatal: There were 50 errors compiling module, stopping
Fatal: Compilation aborted

tools/POtools/MOdemo/modemo.prj

Note: DWARF debug information cannot be used with smart linking on this target, switching to static linking
Free Pascal Compiler version 3.2.2 [2021/07/09] for x86_64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling modemo.pas
Compiling form_conflang.pas
Compiling mo2arrays.pas
Compiling captionmodemo.pas
mo2arrays.pas(77,76) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
mo2arrays.pas(92,54) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
mo2arrays.pas(92,21) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
mo2arrays.pas(93,35) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
mo2arrays.pas(93,15) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
mo2arrays.pas(94,35) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
mo2arrays.pas(94,15) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
mo2arrays.pas(111,53) Error: Identifier not found "en_modalresulttext"
mo2arrays.pas(112,63) Error: Identifier not found "en_modalresulttextnoshortcut"
mo2arrays.pas(113,54) Error: Identifier not found "en_stockcaption"
mo2arrays.pas(114,50) Error: Identifier not found "en_extendedtext"
mo2arrays.pas(134,70) Warning: Implicit string type conversion from "RawByteString" to "UnicodeString"
mo2arrays.pas(138,20) Error: Identifier not found "lang_modalresult"
mo2arrays.pas(138,38) Error: Identifier not found "lang_modalresultnoshortcut"
mo2arrays.pas(138,66) Error: Identifier not found "lang_stockcaption"
mo2arrays.pas(139,20) Error: Identifier not found "lang_extended"
mo2arrays.pas(143,43) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(144,17) Error: Identifier not found "lang_langnames"
mo2arrays.pas(146,17) Error: Identifier not found "lang_langnames"
mo2arrays.pas(146,40) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(151,26) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(152,7) Error: Identifier not found "lang_langnames"
mo2arrays.pas(152,28) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(154,15) Error: Identifier not found "lang_langnames"
mo2arrays.pas(154,40) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(156,26) Error: Identifier not found "lang_langnames"
mo2arrays.pas(158,26) Error: Identifier not found "lang_langnames"
mo2arrays.pas(158,61) Error: Identifier not found "lang_langnames"
mo2arrays.pas(164,23) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(168,11) Error: Identifier not found "lang_langnames"
mo2arrays.pas(177,34) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
mo2arrays.pas(182,45) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(185,29) Error: Identifier not found "en_langnamestext"
mo2arrays.pas(187,22) Error: Identifier not found "lang_modalresult"
mo2arrays.pas(188,22) Error: Identifier not found "lang_modalresultnoshortcut"
mo2arrays.pas(189,22) Error: Identifier not found "lang_stockcaption"
mo2arrays.pas(190,22) Error: Identifier not found "lang_extended"
mo2arrays.pas(192,22) Error: Identifier not found "lang_langnames"
mo2arrays.pas(198,43) Error: Identifier not found "lang_langnames"
mo2arrays.pas(200,24) Error: Identifier not found "lang_langnames"
mo2arrays.pas(201,17) Error: Identifier not found "lang_langnames"
mo2arrays.pas(202,27) Error: Identifier not found "lang_langnames"
mo2arrays.pas(204,27) Error: Identifier not found "lang_langnames"
mo2arrays.pas(204,62) Error: Identifier not found "lang_langnames"
mo2arrays.pas(213,11) Error: Identifier not found "lang_langnames"
mo2arrays.pas(222) Fatal: There were 36 errors compiling module, stopping
Fatal: Compilation aborted

tools/i18n/msei18n.prj

Free Pascal Compiler version 3.2.2 [2021/07/09] for x86_64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling msei18n.pas
msei18n.pas(27,53) Fatal: Can't find unit msegui used by msei18n
Fatal: Compilation aborted

apps/i18ndemo/i18ndemo.prj build but fail at runtime with:

Can not load lang unit "liblangi18ndemo_[fr,de].so
...
No such file or directory

fpccompatibilty error

error encountered compiling app, latest version 5.4.0
myprintsample.pas
uses
mseformatpngwrite
mseformatpngwrite.pas
uses
msefpwritepng

gives the error:
mseformatpngwrite.pas(19,41) Fatal: Can't find unit msefpwritepng used by mseformatpngwrite

earlier version 3.8 works fine:

Application icon corrupted

Apparently due to ASCII conversion. Here are the original files:
msegui_24.png
msegui_24
msegui_32.png
msegui_32
msegui_48.png
msegui_48
msegui_64.png
msegui_64

Rules for package names

Hello Fred!

I am thinking of writing a tutorial about MSEide installation, and maybe a script (at least for Linux).

There is a little thing that I noticed while installing v5.6.10.

For example, in mseide_5_6_10_linux_amd64.zip, there is a folder named mseide_lin64. Shouldn't it be bin? This is how Martin used to do, and it's simpler. (Of course, you are the master, and maybe you have a good reason to do it that way, but I wanted to say my opinion.)

I also notice that you changed the way to name the ZIP file itself. For example, mseide_5_6_10_linux_amd64.zip instead of mseide_linux_amd64_5_6_10.zip. This isn't very important, but why not keep the same order?

A last thing. To get MSEgui, we have to click on "Source code (zip)", isn't it? And the file is named mseide-msegui-5.6.10.zip instead of mseide_msegui_src_5_6_10.zip. So I would suggest to add a ZIP named like that in future releases.

My two cents.

Best regards dear Fred.

Roland

Cannot change interface font and spacing

For now the only way to make the font bigger is though the command line. On Windows:
start mseide --FONTALIAS=stf_default,,24

It would be better to have a setting in the application so that it would not be necessary to have console.

While this changes the font size, the spacing around the text stays the same. It would be great to make this space proportional the the font size or to provide a setting for it as well.

FPC compatibility in general

Having a folder with copies of FPC packages that are tweaked with mclasses unit leads to incompatibilities when using packages that are not included in the folder.

Two solutions to avoid this problem are :

  • prefixing unit names with mse
  • adding bridge classes to plug together Classes and mclasses

As Fred suggests we can compare Classes and mclasses to see what are the difference and see what really needs to be tweaked.

If no tweaking is needing it would simplify to remove the files from the compatibility folder.

Browsing MSE code

In the source editor, when doing CTRL-click on mseform or tmseform, the corresponding source file does not open. And I could not find it by a search on the whole msegui folder.

I could not find either msebitmap.

TParamFlags and msedesignparser with fpc 3.2.0

There are some incompatibilities with TParamFlags used in msedesignparser.pas with fpc 3.2.0.

It produces that kind of code:

procedure onexec($self: Pointer; const sender: Tobject);

The first parameter: $self: Pointer should be omitted.

Extension of EXE file not consistent with ideU

When I open a project in MSEide, if I compile I get a filename without extension, unless I add it in the "target file" field of the Make tab. But if I do that, then when I compile in ideU I get double extensions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.