2009-08-12 4 views
1

Est-ce que quelqu'un sait comment ajouter des fonctionnalités de "changement de marqueurs" à SynEdit? Je veux dire ces lignes, vert pour modifier & enregistré, jaune pour modifiées & parties non enregistrées de documents ... voici un exemple d'un autre éditeur: http://img222.imageshack.us/img222/6474/editori.jpgMarqueurs de changement SynEdit (ligne jaune ou verte sur la gouttière)

+0

Voulez-vous dire ajouter du code au contrôle SynEdit pour ce faire, ou ajouter la fonctionnalité à votre application au moyen d'événements SynEdit? – mghie

+0

Je suppose que pour le peindre entre la gouttière et le contenu, il est nécessaire de modifier SynEdit. Mais si c'est possible, il est préférable de le faire moi-même en utilisant des événements de synedit. Je n'aime pas modifier les composants tiers, car cela nécessite un travail supplémentaire quand il est mis à jour par le développeur (s). – migajek

Répondre

1

Oui, je l'ai ajouté à ma copie de SynEdit. J'ai initialement récupéré le code d'un autre projet.

Il est cassé en travers (au moins) deux unités différentes IIRC.

Vous devez modifier SynEditTextBuffer.pas ainsi que SynEdit.pas.

Le code est assez complexe car vous devez modifier plusieurs points dans SynEditTextBuffer.pas ainsi que 1 ou 2 points dans SynEdit.pas.

Le projet original dont j'ai récupéré le code était très ambitieux car il essayait de développer le pliage de code et le blocage de ligne (comme le montre votre image).

Je n'ai pas réussi à faire fonctionner le code de manière fiable, j'ai donc supprimé ce mod et j'ai juste utilisé le code de changement de ligne. Je crois que l'abandon du code de repli a également fait chuter le blocage de la ligne.

Le nom de ce projet est SynEditSudio, il provient d'un site Web chinois, mais je crois que les plugins de traduction Firefox fonctionnent très bien dans la conversion.

EDIT: contactez-moi directement si vous souhaitez obtenir une copie de mes modifications.

HTH Ryan.

+0

Est-ce que ce code fait aussi la bonne chose face à annuler/refaire? C'est à dire. enlève-t-il les lignes lorsque les changements sont annulés? – mghie

+0

J'ai eu une très mauvaise expérience avec la modification du code de Synedit, mais j'ai utilisé la version "Mystix" (voir sur SourceForge) ... malheureusement les deux versions semblent être mortes maintenant. Je suppose que je vais vous contacter au cas où je ne parviendrais pas à modifier SynEditStudio moi-même ... J'aimerais cependant voir un plugin qui ne nécessite pas de modifier SynEdit source * que * profondément:/ – migajek

+0

@mghie - Oui l'annulation/refaire fonctionne. Je l'utilise actuellement dans un petit produit commercial à moi. Ma version de SynEdit est fortement modifiée mais toujours à jour avec la dernière version officielle du projet SynEdit. J'ai des choses comme habillage à la marge de droite, surligner toutes les instances de jetons actuelles, les indicateurs de ligne modifiée, la correspondance de jetons, les numéros de ligne séquentielle (a-la Delphi IDE), la surbrillance de ligne actuelle et une boîte de dialogue d'options hautement personnalisées. –

Questions connexes