Editeur texte multi-tabs

Description

J'avais besoin d'un éditeur qui puisse lire des fichiers UNIX et/ou exporter vers le format UNIX.
Tant qu'à faire j'ai ajouté des TABs pour ouvrir simultanément plusieurs fichiers.

Le coeur du programme consiste à charger/décharger dynamiquement des contrôles RTF tout en créant ou en supprimant parallèlement des TABs.

Il est apparu très vite que si on ferme un fichier, tous les indexs des tabs seront décalés. Or, les index des RTF ne changeront pas. La relation de l' index entre le TAB et le RTF est donc coupée.

C'est la raison pour laquelle j'ai créé une classe FichierOuvert et une collection FichiersOuverts afin de conserver la relation entre le Tab et l'index du RTF qui lui est associé. La classe ne contient que quelques membres publics.

Ainsi lorsqu'on sélectionne un tab, on retrouve rapidement l'index du contrôle RTF qui lui est associé pour passer ce contrôle au premier plan (c'est l' astuce pour les performances puisque tous les RTF sont superposés) ainsi que toutes les infos disponibles: le nom, le chemin complet, la taille, la date de dernière modif du fichier, un flag qui sait si le contenu du RTF a été modifié ... Pour afficher ces infos dans le StatusBar.

Source / Exemple :


Fonctions:

' Ouvrir/Enregistrer/Enregistrer sous
' Rechercher/Remplacer/Remplacer tout
' Changer couleur du fond, du texte, la police de caractères
' imprimer avec l' imprimante par défaut

'Contrôles utilisés:
' TabStrip
' RichTextBox
' StatusBar
' ImageList
' ToolBar
' CommonDialog

While not weekend
 youpi("ihihihi")
Wend

Conclusion :


A modifier à votre guise.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.