NSTextView, Links und andere Sachen...

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • NSTextView, Links und andere Sachen...

    So.
    Ich bastel gerade weiter an meinem AmigaGuide Parser. Nachdem ich (sehr umständlich) den Text nach einzelnen Attributen durchkämme, wollte ich das Attribut "Link" implementieren.

    Ein Link ist wie bei HTML ein Link auf eine Seite oder Textstelle. So erzeuge ich meinen Link:

    Quellcode

    1. NSMutableDictionary *linkAttribs = [[[NSMutableDictionary alloc] initWithCapacity:6] autorelease];
    2. [linkAttribs setObject:[NSColor redColor] forKey:NSForegroundColorAttributeName];
    3. [linkAttribs setObject:target forKey:NSLinkAttributeName];
    4. NSAttributedString *link = [[[NSAttributedString alloc]initWithString:prevPart attributes: linkAttribs] autorelease];
    5. [dummyContent appendAttributedString:link];


    Wenn ich nun dummyContent an bei NSTextView übergebe, werden alle Links unterstrichen und blau dargestelle (default?), obwohl ich einen roten Link haben wollte.
    Warum ist das so? Kannn ich das Aussehen der Links nur über NSTextView selbst steuern?
    Und warum verändert sich mein Mauszeiger über einem Link nicht?
    Und noch eine Frage. Wie kann ich einen TextView dazu bringen an eine bestimmte Stelle zu scrollen?


    Herzlichen Dank,
    Alex
    --
    Wer ist dieser Root und warum gehören ihm alle meine Dateien??

    SIDplay5 for macOS on GitHub
  • So. Scrollen kann ich jetzt.

    Und zwar mittels

    Quellcode

    1. [contentView scrollPoint:NSMakePoint(0.0,0.0)];


    Allerdings werde ich, um an eine bestimmte Zeile scrollen zu können, wohl die Höhe meines im Textview verwendeten Fonts ermitteln müssen, um daraus einen NSPoint generieren zu können.

    Was ist aber, wenn unterschiedliche Fonts verwendet werden?

    Fragen über Fragen....
    --
    Wer ist dieser Root und warum gehören ihm alle meine Dateien??

    SIDplay5 for macOS on GitHub
  • So, die Attribute für den Link funktionieren jetzt, auch den passenden Cursor kann ich nun setzen.

    Stellt sich mir die Frage, wie kann ich die Farbe eines Link aufhellen, wenn ich mit der Maus über den Link gehe, so wie bei einem HTML Dokumentes?

    Gruß,
    Alex
    --
    Wer ist dieser Root und warum gehören ihm alle meine Dateien??

    SIDplay5 for macOS on GitHub
  • Original von Alexco
    Allerdings werde ich, um an eine bestimmte Zeile scrollen zu können, wohl die Höhe meines im Textview verwendeten Fonts ermitteln müssen, um daraus einen NSPoint generieren zu können.

    Versuche mal die Methoden boundingRectForGlyphRange:inTextContainer:

    Damit solltest Du das bounding rectangle (in container coordinates) erhalten und damit an die entsprechende Stelle scrollen können.