Hallo,
Pardon, es sollte heißen TimesTable (eine Anwendung zum Erlernen des kleinen Einmaleins).
Hintergrundfarbe: ptm := PluggableTextMorph new. ptm textMorph backgroundColor: Color yellow.
Nach links verschwindender Text: hier habe ich mich geirrt: auch bei meiner Anwendung wird der Text in neu hinzugenommenen Zeilen erweitert. Du hast Recht.
Zum Anordnen: benutze ich für das RectangleMorph in das das PluggableTextMorph eingebettet ist setLayout.
zum acceptOnCR: hier die Klassenmethode, mit der die Methode bekannt gemacht wird, die bei Beendigung der Eingabe mit CR ausgeführt werden soll (hier: checkAnswer): ptm := PluggableTextMorph on: self text: #answer accept: #checkAnswer:.
Wenn ich es recht sehe, werden CR und Alt-s als Eingabebeendigung gleich behandelt.
Gruß Pascal
----- Original Nachricht ---- Von: Klaus Füller Klaus.Fueller@T-Online.de An: Squeak in Germany / Squeak in Deutschland squeak-ev@lists.squeakfoundation.org Datum: 17.01.2009 21:50 Betreff: Re: Aw: [Squeak-ev] String-Eingabe
Am 17.01.2009 um 19:14 schrieb pascal.vollmer@nexgo.de:
zumindest mit der Anforderung dass getippte Zeichen links aus dem Textfeld verschwinden, wird Dir PluggableTextMorph gute Dienste leisten. Ich verwende es in squeaksource/TimeTable.
Ich finde squeaksource/TimeTable nicht.
Wenn ich PluggableTextMorph benutze, weiß ich nicht -
- wie ich die Texthintergrundfarbe ändern kann,
- Ich kann die Größe setzen, beispielsweise auf 100@20. Dann bekomme
ich fast das, was ich brauche. Allerdings scrollt der Inhalt nach wie vor senkrecht.
- Wie kann ich den Text horizontal scrollen lassen?
- Außerdem sollte die Höhe natürlich von der Schriftgröße abhängen.
- Wenn ich die Morphs nebeneinander anordne, überlappen die sich bei
knappem Platz. Es scheint so zu sein, dass PluggableTextMorph dem Layout-Manager falsche Informationen über seine Größe gibt.
- Ich kann #acceptOnCr machen. OK. Ruft der einen Block auf, wenn ich
Accept mache?? Kann ich von außen den roten Rand (den für "Inhalt geändert" wieder abschalten?
Danke für die schnelle Antwort.
Klaus
Pascal Vollmer Email: pascal.vollmer@ieee.org
Jetzt komfortabel bei Arcor-Digital TV einsteigen: Mehr Happy Ends, mehr Herzschmerz, mehr Fernsehen! Erleben Sie 50 digitale TV Programme und optional 60 Pay TV Sender, einen elektronischen Programmführer mit Movie Star Bewertungen von TV Movie. Außerdem, aktuelle Filmhits und spannende Dokus in der Arcor-Videothek. Infos unter www.arcor.de/tv
Am 18.01.2009 um 02:39 schrieb pascal.vollmer@nexgo.de: ...
Hintergrundfarbe: ptm := PluggableTextMorph new. ptm textMorph backgroundColor: Color yellow.
Nach links verschwindender Text: hier habe ich mich geirrt: auch bei meiner Anwendung wird der Text in neu hinzugenommenen Zeilen erweitert. Du hast Recht.
...
Vielen Dank für die große Hilfe. Ich melde mich wieder, wenn ich das umsetze.
Wie geht man vor, wenn man an bestehenden Klassen Änderungen vorschlagen will? Ich weiß, dass ich Messages einfach einfügen und in eigene Kategorien #*KFGui zusammenfassen kann dann installiert Monticello die richtig. Aber dann entsteht dieses Durcheinander, dass meiner Meinung nach die Squeak-Klassen kennzeichnet.
Einfaches Beispiel: Ich will gerne, dass man den String in PluggableTextMorph mit #contents: setzen kann. Es ist unverständlich, warum das #editString: heißt. Genauso sollte man den String mit #contents abfragen können. Überhaupt sollte man einheitlich den (Haupt-)Inhalt von einDings mit einDings content bekommen können. Wo diskutiert man solche Konzeptfragen?
Komplizierteres Beispiel: Vielleicht schaffe ich es, dem PluggableTextMorph horizontales Scrollen beizubringen. Das könnte dann entweder eine abgeleitete Klasse sein oder --- wahrscheinlich besser --- eine Einstellung in PluggableTextMorph selbst. Wie kann man das strukturiert in der Standardklasse ergänzen?
Klaus
Hallo Klaus,
unter bugs.squeak.org findest Du das Bugtracking zu Squeak. Ich habe dort ein wenig gestöbert und finde z.B. einen Eintrag wie
0006596: [Fix] [Enh] [Test] Five modest methods to repair and extend Point
Die mittlere der drei Kennungen in eckigen Klammern dürfte "Enhancement", also Verbesserung/Erweiterung bedeuten. Das scheint mir ein Hinweis dafür, wie man eine Verbesserung in Squeak einbringen kann. Den Bugfix-Prozess habe ich als Squeak-newbie erst einmal durchlaufen. Dauerte für einen Bugfix mit der Priorität "minor" etwa vier Monate und folgte in nachvollziehbarer Weise dem Prozess.
Gruß Pascal
----- Original Nachricht ---- Von: Klaus Füller Klaus.Fueller@T-Online.de An: Squeak in Germany / Squeak in Deutschland squeak-ev@lists.squeakfoundation.org Datum: 18.01.2009 10:45 Betreff: Re: Aw: Re: Aw: [Squeak-ev] String-Eingabe - Änderungen an bestehenden Klassen
Am 18.01.2009 um 02:39 schrieb pascal.vollmer@nexgo.de: ...
Hintergrundfarbe: ptm := PluggableTextMorph new. ptm textMorph backgroundColor: Color yellow.
Nach links verschwindender Text: hier habe ich mich geirrt: auch bei meiner Anwendung wird der Text in neu hinzugenommenen Zeilen erweitert. Du hast Recht.
...
Vielen Dank für die große Hilfe. Ich melde mich wieder, wenn ich das umsetze.
Wie geht man vor, wenn man an bestehenden Klassen Änderungen vorschlagen will? Ich weiß, dass ich Messages einfach einfügen und in eigene Kategorien #*KFGui zusammenfassen kann dann installiert Monticello die richtig. Aber dann entsteht dieses Durcheinander, dass meiner Meinung nach die Squeak-Klassen kennzeichnet.
Einfaches Beispiel: Ich will gerne, dass man den String in PluggableTextMorph mit #contents: setzen kann. Es ist unverständlich, warum das #editString: heißt. Genauso sollte man den String mit #contents abfragen können. Überhaupt sollte man einheitlich den (Haupt-)Inhalt von einDings mit einDings content bekommen können. Wo diskutiert man solche Konzeptfragen?
Komplizierteres Beispiel: Vielleicht schaffe ich es, dem PluggableTextMorph horizontales Scrollen beizubringen. Das könnte dann entweder eine abgeleitete Klasse sein oder --- wahrscheinlich besser --- eine Einstellung in PluggableTextMorph selbst. Wie kann man das strukturiert in der Standardklasse ergänzen?
Klaus
Pascal Vollmer Email: pascal.vollmer@ieee.org
Jetzt komfortabel bei Arcor-Digital TV einsteigen: Mehr Happy Ends, mehr Herzschmerz, mehr Fernsehen! Erleben Sie 50 digitale TV Programme und optional 60 Pay TV Sender, einen elektronischen Programmführer mit Movie Star Bewertungen von TV Movie. Außerdem, aktuelle Filmhits und spannende Dokus in der Arcor-Videothek. Infos unter www.arcor.de/tv
squeak-ev@lists.squeakfoundation.org