COM und MSEgui/ide?

Forum für alles rund um die MSEide und MSEgui
mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

hotzenplotz hat geschrieben:Es war nie die rede davon MSEGui über LCL drüberzustülpen. In diesem Punkt hast mich nicht verstanden. Ich habe lediglich gemeint Lazarus als IDE für MSEGui zu benutzen :!: :P

Dann möchtest du Lazarus beibringen, ohne LCL direkt mit MSEgui zu arbeiten?

_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Re: COM und MSEgui/ide?

Beitrag von _X_ »

mse hat geschrieben:Dann möchtest du Lazarus beibringen, ohne LCL direkt mit MSEgui zu arbeiten?
Ist, finde ich, ein ganz interessanter Gedanke, aber wozu gäbe es dann die MSEide?
Würde mich aber trotzdem interessieren, ob das geht. Am Ende wird meiner Meinung nach wohl die MSEide besser sein, weil sie für die MSEgui geschaffen wurde.

mfg _X_

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: COM und MSEgui/ide?

Beitrag von mschnell »

mse hat geschrieben:Die Funktion der grip button:
Kreuz = Fenster schliessen.
Pfeil auf = Bleibt bei Fenster Focuswechsel zuoberst.
Pfeil ab = Bleibt bei Fenster Focuswechsel zuunterst.
Quadrat = Feste Grösse.
Kreis = Verberge innenliegende grips.

Panels können geschachtelt werden, der Bereich unterhalb des main menu ist ebenfalls ein Dockbereich.
Zum Lösen eines Fensters das Fenster am grip aus dem panel herausziehen.

Hübsch und praktisch, wenn man es einmal drauf hat.

Ist das kompatibel zu irgendetwas anderem auf dieser Welt ? Ich habe mir gerade ein anderes Programm angeschaut, das ein komplexes MDE-Docking System integriert hat (basierend auf Python und vermutlich irgendeinem Tool. Bin ich auch nicht mit klar gekommen.

Wenn man aber 10 unterschiedliche Programme verwendet, die alle ein unterschiedliches MDI-Docking System ver4wenden, kommt man schnell in die Klapse.

-Michael

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

mschnell hat geschrieben:Ist das kompatibel zu irgendetwas anderem auf dieser Welt ?

Qt hat nun auch die schmalen grip Bereiche, arbeitet aber mit impliziten panels.

hotzenplotz
Beiträge: 33
Registriert: So 13. Dez 2009, 16:17

Re: COM und MSEgui/ide?

Beitrag von hotzenplotz »

mse hat geschrieben:Fortsetzung:
....
Panels können geschachtelt werden, der Bereich unterhalb des main menu ist ebenfalls ein Dockbereich.
Zum Lösen eines Fensters das Fenster am grip aus dem panel herausziehen.


Vielen Dank für die Anleitung! Gefällt mir sehr gut.

Könntest du ein Packet mit allem drum und dran herausbringen? FPC + IDE + MSEGui + Doku + 1 Kasten Bier ? :)
Is warscheindlich ne menge Arbeit so auf die schnelle...
Mischen Sie Sich ein! Machen Sie mit! ödp www.ödp.de - Die Öko-Demokraten

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

hotzenplotz hat geschrieben:Könntest du ein Packet mit allem drum und dran herausbringen? FPC + IDE + MSEGui + Doku + 1 Kasten Bier ? :)

Doku existiert nicht, oder nur fragmentarisch. Bis jetzt konnte noch niemand dazu bewogen werden, Ordnung in das Chaos zu bringen. Was meinst du mit einem Paket? Ein Download statt drei? Den Kasten Bier verstehe ich, der gebührt eher mir, findest du nicht?
Is warscheindlich ne menge Arbeit so auf die schnelle...

MSEide+MSEgui? Investierter Aufwand ca. 16'000 Std.

hotzenplotz
Beiträge: 33
Registriert: So 13. Dez 2009, 16:17

Re: COM und MSEgui/ide?

Beitrag von hotzenplotz »

mse hat geschrieben:
hotzenplotz hat geschrieben:Könntest du ein Packet mit allem drum und dran herausbringen? FPC + IDE + MSEGui + Doku + 1 Kasten Bier ? :)

Doku existiert nicht, oder nur fragmentarisch. Bis jetzt konnte noch niemand dazu bewogen werden, Ordnung in das Chaos zu bringen. Was meinst du mit einem Paket? Ein Download statt drei? Den Kasten Bier verstehe ich, der gebührt eher mir, findest du nicht?
Is warscheindlich ne menge Arbeit so auf die schnelle...

MSEide+MSEgui? Investierter Aufwand ca. 16'000 Std.


Ja. Ich meinte einen kompletten Download.

Das mit der Dokumentation ist so ne Sache... Ich habe in deinem Code keinerlei Doku gefunden (bis auf ein paar persönliche Kommentare). Es würde sehr mühsam sein, Doku für deine Klassen im nachhinein zu erstellen. Ich habe das zu meiner Verwunderung schon ziemlich oft gesehen im FPC Umfeld. Klassen werden hier anscheinend nicht gerne Dokumentiert. Sind sie selbst klärend? ;)

Ja das Bier gehört dir. Nach soviel Einsatz hast dir das verdient.

Dazu muss ich noch anmerken, dass komplett kleingeschriebene Methoden mich irritieren. Ich weiss du bist der Meinung das dies besser leserlich sei, ich sehe das anders. Zumindest ich muss mir die Methoden genau ansehen um einen Sinn im Namen zu sehen. Vielleicht ist es auch nur Gewöhnungssache.
Mischen Sie Sich ein! Machen Sie mit! ödp www.ödp.de - Die Öko-Demokraten

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

hotzenplotz hat geschrieben:Vielleicht ist es auch nur Gewöhnungssache.

So ist es. Sobald man sich daran gewöhnt hat, ist das Arbeiten ohne CamelCase angenehmer und schneller.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: COM und MSEgui/ide?

Beitrag von mschnell »

mse hat geschrieben:Dann möchtest du Lazarus beibringen, ohne LCL direkt mit MSEgui zu arbeiten?
Es sollte - solange man keine grafisch platzierten, sondern im Code instanziierte Controls verwendet, möglich sein, MSEGUI - Applikationen mit Lazarus zu bauen, zu übersetzen und zu debuggen und umgekehrt LCL-Applikationen mit MSEIDE. Wenn man Controls grafisch platzieren will, muss man natürlich die entsprechenden Pakete zusammenbauen.

-Michael

Patito
Beiträge: 203
Registriert: Di 22. Sep 2009, 13:08
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: COM und MSEgui/ide?

Beitrag von Patito »

mse hat geschrieben:
hotzenplotz hat geschrieben:Vielleicht ist es auch nur Gewöhnungssache.

So ist es. Sobald man sich daran gewöhnt hat, ist das Arbeiten ohne CamelCase angenehmer und schneller.


Das klingt aber jetzt nach Unfug. :?:

Wenn man nur wenige Prozeduren mit einem kurzen Namen hat kann sowas gut sein, aber die Mustererkennung für das Auge funktioniert doch einfach deutlich schlechter wenn man es nur mit lauter kleingeschriebenen Würmern zu tun hat. :?: :!: :?: ( -> schwer lesbarer Code)

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

Patito hat geschrieben:Das klingt aber jetzt nach Unfug. :?:

Für mich nicht. :-)
http://www.lazarusforum.de/viewtopic.php?f=53&t=2118&start=13
.

Patito
Beiträge: 203
Registriert: Di 22. Sep 2009, 13:08
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: COM und MSEgui/ide?

Beitrag von Patito »

mse hat geschrieben:
Patito hat geschrieben:Das klingt aber jetzt nach Unfug. :?:

Für mich nicht. :-)
http://www.lazarusforum.de/viewtopic.php?f=53&t=2118&start=13
.

Warum ich den grössten Teil des Codes in Kleinschreibung halte:
Versuche haben ergeben, dass das Gehirn zur Begriffsbildung Wörter nicht von links nach rechts Zeichen für Zeichen liest, sondern als ganzes. Interessanterweise kommt es dabei nicht sehr auf die Reihenfolge der Buchstaben an, sofern nur das erste und das letzte Zeichen ihre Position behalten. Mach mal ein paar Versuche, die Resultate sind verblüffend.
Durch die Höckerschreibweise zerfällt nun ein Bezeichner in mehrere Begriffe, wodurch das Gehirn in der Modellbildung des gesehene Codes behindert wird, auf jeden Fall meines. ;-)


Sorry, ist leider (zum Teil) Quark.
Die Erkennung als gesamtes Wort bezieht sich auf Wörter, die man bereits kennt, und die das Gehirn daher schon als Muster abgespeichert hat. Z.B. hat mir mal jemand für Arabisch den Tip gegeben die Wörter immer gleich als ganzes zu lernen, da man sich dort sonst beim lesen richtig schwer tut.

Für neue Wörter, Wortzusammensetzungen u.ä., wie sie im Code dauernd vorkommen, passt das aber überhaupt nicht. (bzw es passt nur wenn man alle Wörter selbst erfunden und bereits 1000 mal verwendet hat :wink: ... - und selbst da bleibt noch die erhöhte Verwechslungsgefahr bei recht ähnlichen Wortzusammenstellungen)

Falls Du dich damit beschäftigt hast wird Dir auch bekannt sein, dass die obere Kante des Wortes bei der Mustererkennung eine außergewöhnlich große Rolle spielt. Daher sind Großbuchstaben für die Lesbarkeit eine große Hilfe. (-> geringere Verwechslungsgefahr; schnellere Erkennung von Wortgrenzen; ...)

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

Patito hat geschrieben:Sorry, ist leider (zum Teil) Quark.

Ich habe CamelCase 15 Jahre benutzt und benutze Kleinschreibung seit weiteren 10 Jahren, allein MSEide+MSEgui hat mehr als 300'000 Zeilen. Meine Produktivität ist mit dem jetzigen Stil wesentlich grösser.
Falls Du dich damit beschäftigt hast wird Dir auch bekannt sein, dass die obere Kante des Wortes bei der Mustererkennung eine außergewöhnlich große Rolle spielt. Daher sind Großbuchstaben für die Lesbarkeit eine große Hilfe. (-> geringere Verwechslungsgefahr; schnellere Erkennung von Wortgrenzen; ...)

Genau, und darum stören die Grossbuchstaben, da dann die Trennung eines Ausdruckes durch ' -', '.', ',' und '_' in weitere Wörter zerfällt. Bei 'texp.sourcedirs' ist 'soucedirs' in meinem Gehirn ein Symbol, keine Zusammensetzung von zwei Symbolen wie in 'TExp.SourceDirs'. Es ist auch nicht notwendig, die textlichen Entsprechungen immer vollständig zu decodieren, die Verbindung mit dem Symbol reicht.

Hitman
Beiträge: 512
Registriert: Mo 25. Aug 2008, 18:17
OS, Lazarus, FPC: ArchLinux x86, WinVista x86-64, Lazarus 0.9.29, FPC 2.4.1
CPU-Target: x86
Wohnort: Chemnitz

Re: COM und MSEgui/ide?

Beitrag von Hitman »

mse hat geschrieben:Bei 'texp.sourcedirs' [...]

Also ich musste hier sofort anfangen zu überlegen "ist das jetzt eine lokale Variable texP ... oder ein Typ TExp ... oder vlt. TExP [könnte ja TExtendedParameters oder Gott weiß was sein]". Es gibt viele Wortzusammensetzungen, die irgendwie (besonders wenn abgekürzt) Sinn ergeben. Wie Patito schon sagte, klappt das wohl nur, wenn man selbst den Code schreibt. Für die Augen Dritter ist es so aber in den meisten Fällen schwerer. Das mag i.O. sein, wenn du allein an MSEgui/ide arbeitest, aber dezimiert meines Erachtens enorm die Qualität als OpenSource Projekt. (NICHT die Qualität als Ganzes ... ich will auf keinen Fall deine Arbeit herabsetzen - du hast wirklich mit MSEgui/ide etwas beeindruckendes geschaffen ... aber als OpenSource Projekt versagt es oder geht zumindest unnötig unter, finde ich).

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: COM und MSEgui/ide?

Beitrag von mse »

Hitman hat geschrieben:Also ich musste hier sofort anfangen zu überlegen...

Der zitierte Text war der, der gerade zufällig unter dem Cursor stand und ist nicht allzu wichtig zu nehmen. ;-)
Er stammt aus

Code: Alles auswählen

projectoptionsty = record
  modified: boolean;
  savechecked: boolean;
  ignoreexceptionclasses: stringarty;
  t: projecttextty;
  texp: projecttextty;
...
 with projectoptions do begin
...
  texp.sourcedirs:= ...

wobei texp t mit expandierten Macros ist. projecttextty hat sehr viele Felder und muss häufig geschrieben werden, daher die möglichst kurze Bezeichnung 't'.
Zuletzt geändert von mse am Do 21. Jan 2010, 08:38, insgesamt 1-mal geändert.

Antworten