begin process at 2010 03 14 08:45:32
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Application

 > EDITEUR DE FICHIERS C++ (LINUX, WINDOWS, MAC...)

EDITEUR DE FICHIERS C++ (LINUX, WINDOWS, MAC...)


 Information sur la source

Note :
8,33 / 10 - par 3 personnes
8,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Application Classé sous :qt, editeur, onglets, colorisateur Niveau :Initié Date de création :13/12/2003 Date de mise à jour :15/04/2006 18:40:57 Vu / téléchargé :10 400 / 860

Auteur : bouba

Ecrire un message privé
Site perso
Commentaire sur cette source (28)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Un éditeur de fichier C++ programmé sous Linux avec QT (aussi utilisable sous windows et mac)
Les fonctionnalités implémentées pour le moment sont les suivantes:
-Ouverture de plusieurs fichiers simultanément grâce à un système d'onglets
-Gestion des couper/copier/coller
-Recherche dans le texte (pas encore complet, j'ai prévu de le remplacer avec une barre de recherche 'à la Firefox')
-Fonction remplacer (pas encore complet)
-Ouverture de fichiers récemments ouverts
-Ouverture multiple
-Colorisateur syntaxique pour le code C++ (grandement amélioré par rapport à la version précedente), l'ajout d'autres langages est maintenant aisé.
-Affichage des numéros de ligne
-Réorganisation des fenêtre (cascade/partagée)

Les prochaines fonctionnalités seront:
-Amélioration de la recherche dans le texte
-Fenêtre de configuration de l'éditeur
-Possibilité de modifier la police du texte et la colorisation
-Possibilité de créer ses propres modèles de colorisation si l'on souhaite coloriser un code dans un langage quelconque
-Amélioration de la fonction remplacer
-Ajout de fonctionnalités pour la gestion des onglets
-Intégration d'une console pour la compilation
etc.... si j'ai le temps ;-)

Voilà, je pense que ce code pourra largement servir aux personnes qui souhaitent se mettre à QT, il comporte un certains nombre de notions importantes et vous sera utiles notamment pour la compréhension de la gestion des SLOTS/SIGNAUX, la création de fenêtres, la gestion d'onglets, de barre des tache, de zones de textes et bien d'autres encore.
Si vous avez des quetions sur QT n'hésitez pas, j'essairai de répondre mieux que je peux si j'ai un petit peu de temps.
J'apprécierai aussi vos remarques, critiques et suggestions, ça me permettra d'améliorer le code.
Merci.


 Conclusion

Pour compiler le code, c'est simple, il faut évidemment installer QT dans un premier temps. Puis, dans une console, se placer dans le répertoire du projet et tapper
Pour compiler
$ qmake GBedit.pro
$ make
Puis lancer le programme (LINUX/Mac)
$ bin/Gbedit
Pour les utilisateurs de Windows
$ bin/Gbedit.exe
J'ai aussi générer une documentation avec Doxygen, elle n'est pas encore complète mais c'est déjà pas mal, elle se trouve dans le répertoire doc.
Sous windows il semble qu'il y ai des problèmes si le répertoire des images ne se trouve pas dans le même répertoire que l'exécutable, j'essairai de résoudre ce problèem un pe plus tard, peut-être que pour la prochaine fois je créerai un installateur windows aussi.
Si vous avez compilé le code et que vous trouvez que le programme est lent est que la taille de l'exécutable est énorme c'est que vous avez sans doute compilé en mode Debug, ajoutez une ligne
CONFIG = release
dans le fichier GBedit.pro et recompilez.
Si vous avez des blems pour l'installation de QT ou la compilation j'essairai de vous aider.
Bonne chance et j'espère que vous aimerai ce prog et qu'il vous sera util à l'apprentissage de QT4.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

15 avril 2006 18:40:57 :
Grosse mise à jours, il était temps, j'ai passé le code de QT3 à QT4. Le code a été complètement réorganisé et est maintenant beaucoup plus logique. La colorisation est aussi beaucoup plus propres et ne doit presque plus comporter de bugs (aucun je l'espère). Ajout de différentes fonctionnalités. -Ouverture de fichiers récemment ouverts -Ouverture multiple de fichiers -Affichage des numéros de lignes -Barre d'état -Barres d'outils -le rendu graphique est meilleur grâce à QT4 -Ajout d'icônes dans les menus -Meilleure gestion des raccourcis -Réécriture de la gestion des onglets Amélioration de la documentation, commentaires Doxygen, meilleur organisation des répertoires.

 Sources du même auteur

CRÉER UNE FENÊTRE AVEC LA XLIB (TOUT OS À BASE D'UNIX (LINUX...
FONCTIONS KBHIT() ET GETCH() SOUS LINUX (DOIT MARCHER AVEC T...
Source avec Zip Source avec une capture EDITEUR DE TEXTE (COMME LE NOTEPAD!!!) [COMPILATEUR BCC55](M...
Source avec une capture EXEMPLE D'UN CUBE PLEIN QUI TOURNE EN OPENGL (UTILISE GLUT)
Source avec Zip Source avec une capture DE LA MISE EN PAGE DANS VOS LABELS QT! C'EST BEAU, ET C'EST ...

 Sources de la même categorie

COMPILATEUR BF VERS BF-BYTECODE par Davy974
GESTIONNAIRE DE BIBLIOTHEQUE par eishtein
FICHIER ALBUM MUSICAL par imenouuuuuuuuuche
LOUISDU81 HTTP EDITOR par louisdu81
Source avec Zip Source avec une capture Source .NET (Dotnet) CLIENT IRC BASIQUE par king67

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture QCSSCOMPRESSOR par alphaone
Source avec Zip Source avec une capture CRYPTEUR-DÉCRYPTEUR-IP par antho974
Source avec Zip Source avec une capture PLUS OU MOINS par antho974
Source avec Zip Source avec une capture DEBUG DEVEL SERVER par alphaone
Source avec Zip Source avec une capture DEBUG DEVEL par alphaone

Commentaires et avis

Commentaire de Thaeron le 14/12/2003 00:51:17

Yop, arrete de rabaisser ton source il est énorme (de mon point de vue), j'aurai préféré qu'il soit en GTK+ mais bon.
Tu devrai faire un menu personalisable pour faire des apels a GCC avec différentes options par exemple.
En tout cas bravo, continu tu gére =)

Commentaire de bouba le 14/12/2003 01:06:41

Je te remerci, ca me fais plaisir, j'ai prévue de de réaliser une console intégré à l'éditeur (un peu dans le style kate mais moins lourd) , y'auras sans doute aussi des appels à gcc et make pour faciliter la compilation bien sûr, mais bon, j'en suis pas encore là, ca avance doucement mais sûrement. Merci encore

Commentaire de D1m3x le 14/12/2003 14:59:23

Il y a un problème je crois, parce que je n'arrive pas à poster un commentaire pour ton code, alors qu'il est bien long :d :)

Commentaire de Anacr0x le 14/12/2003 20:58:03

Bravo ! cette source est franchement sympa et bien réaliser : la coloration syntaxique est parfaite, je n'ai remarquer absolument aucun pb.

Je ne peut que t'inciter a l'améliorer

Par contre, il y a un ptit truc qui m'a étonné, une fois compiler, ton prog atteind + d'1 mo... Ca fait beaucoup pour du QT pur je trouve (je fait un prog QT également et j'attein 120ko alors que j'ai maintenant autant de code que toi, voir plus)

Commentaire de bouba le 14/12/2003 22:11:09

Oui, c'est vrai que c'est peut-être un peut gros comme executable, par contre je ne vois pas trop comment améliorer ceci, si quelqu'un a un chti conseil à me donner pour diminuer la taille ce serais cool!
Sinon, merci AnacrOx.
Encore une fois, les critiques et les conseils sont les bienvenus, ca m'aide a améliorer mon code !!

Commentaire de Anacr0x le 14/12/2003 22:19:35

ah, g reussi a diminuer la taille

en fait, j'ai refait le makefile avec qmake (au début, j'avais utilisé le tien), et maintenant j'ai 110ko...

Je pense que ton makefile devait linker en static et non en dynamique

enfin, si ca t'interesse, jpeu te passer le mien

Commentaire de Anacr0x le 15/12/2003 00:38:44

au fait, au lieu de mettre :
getSaveFileName( QString("/home/").append(getlogin()), ...

a ta place, je mettrai getSaveFileName("", ...

normalement, ca t'ouvre directement dans le meme dossier (enfin chez moi ca fait ca) et ca ne posera plus de pb pour ceux qui veulent compiler sous win

Commentaire de bouba le 15/12/2003 00:46:59

Tu as raison, je modifie ca tout de suite, merci.

Commentaire de bouba le 15/12/2003 01:53:25

J'ai mis à jours la source, les modifications effectuées sont:
- Modification du Makefile.pro afin d'optimiser le code et de réduire la taille de l'exécutable
- Suite au conseil d'AnacrOx: modification des argument dans setSaveFileName afin que la fenêtre d'ouverture de fichiers se place dans le répertoire courant

Commentaire de bouba le 28/12/2003 18:11:18

Nouvelle MAJ, voici les fonctionnalités qui ont étés ajoutés.
Possibilité de faire des Couper, Coller, Copier, Selectionner Tout
Possibilité de faire des recherches dans le code.
Possibilité de faire des Annuler et Refaire.
Voilà, pour toute questions, suggestion ou critique n'hésitez pas!
Bouba

Commentaire de D1m3x le 28/12/2003 21:23:08

Pas mal , la MAJ a vraiment vallu le coup ! c'est déjà nettement mieux, maintenant tu peux attaquer le changement manuel des couleurs syntaxiques, etc.:)

Commentaire de bouba le 29/12/2003 14:59:35

Oui, c'est prévu pour bientôt les changements de couleurs syntaxiques, mais avant je vais réaliser les fonctions de remplacement et aussi faire que l'on puisse afficher les lignes.
Merci D1m3x !

Commentaire de bouba le 07/01/2004 11:00:49

Encore une nouvelle MAJ, la gestion de la coloration syntaxique n'est pas encore gérée mais l'éditeur dispose à présent d'une interface MDI, des fonctions de recherche aussi. (Attention, peut-être des bugs au niveau de la recherche, prévenez-moi!!). La fonction remplacer n'est pas encore réalisé.
Bouba

Commentaire de Anacr0x le 07/01/2004 13:20:27

De mieux en mieux (j'adore les onglets), bravo !! G seulement une erreur pendant la compilation de la nouvelle version, la fonction setWindowState n'est pas reconnu (Qt 3.1.2), je suppose que ma version n'est pas assez récente mais bon, suffit de la virer puis tt marche...

Commentaire de bouba le 07/01/2004 19:28:37

Oui, cette fonction est appararue avec la version 3.3 de QT, mais en fait il y en a même pas besoins c'est vrai.
Merci AnacrOx.

Commentaire de Thaeron le 08/01/2004 17:20:17

yop yop, j'ai fais qmake et make comme t'as dis et gcc est pas content  (j'ai QT3.1.2)

In file included from main.cpp:1:
FenetrePrincipale.h:94: 'map' is used as a type, but is not defined as a type.
make: *** [main.o] Error 1

Commentaire de bouba le 08/01/2004 17:36:43

Oui, soit tu dois faire std::map au lieu de map soit faire un
using namespace std;
au début du programme, sinon c'est que tu n'as pas la STL installé sur ton PC (ce qui est le cas sur de vieilles version de Linux), si c'est le cas, il faut que tu remplaces les map par des QMap qui sont similaires aux map de la STL mais en QT. Si tu as encore des problèmes envoi-moi un msg sur ma boite.

Commentaire de Anacr0x le 13/01/2004 01:42:16

Au fait, jviens de remarquer que la gestion de plusieurs fichier ouvert en même tps n'est pas parfaite. De temps en temps, quand on clic sur un autre onglet, ca ne change pas la page...

Commentaire de bouba le 13/01/2004 09:42:12

Es-tu sûr de celà ? Je viens te tester le trucs plusieurs fois et je n'ai remarqué aucun problème à ce niveau, j'ai de plus regardé le code source pour m'assurer qu'il n'y avait pas d'erreur et tout me semble correcte. Pouurais-tu me dire plus précisément dans quel cas ceci arrive ?
Sinon, des fois on ne distingue pas très bien la profondeur de certains onglet des fois, t'as peut-être mal vu, il faut que je mette des couleurs sur les onglets selectionné, je le feré dans la prochaine MAJ.
Merci.

Commentaire de Anacr0x le 13/01/2004 11:23:01

g refait plusieur autre test, et je croi avoir trouver quand cela se produit :

en fait, tu ouvre plusieur page, et tu ferme avec la ptite croix un des fichiers (mais pas le dernier a avoir été ouvert), et la ca commence a merder

Je ne peut pas t'en dire plus, je ne maitrise pas assez ton code (faut dire aussi que j'ai pas trop le tps de m'y pencher très sérieusement)

Commentaire de bouba le 13/01/2004 14:43:25

En effet, y'a vraiment un bug, je viens de le corriger c'était tou bête mais j'ai mis du temps à la trouver.
En tout cas merci beaucoup de l'avoir signalé Anacr0x !!!

Commentaire de Anacr0x le 13/01/2004 23:09:48

de rien

mais maintenant : /usr/lib/qt3/include/qworkspace.h:114: error: `void QWorkspace::closeActiveWindow()' is private
FenetrePrincipale.cpp:167: error: within this context

enfin, faut pas trop en demander, ma version de QT est trop ancienne (et g pa le courage de mettre a jour)

Commentaire de bouba le 13/01/2004 23:18:33

Je pense que tu peux résoudre facilement ce problème en créant une classe
class MonWorkspace : public QWorkSpace
{
....
}
dans laquelle tu mets une fonction publique qui appelle la fonction closeActiveWindow(), ensuite, dans les codes des différentes fenêtres tu remplaces tous les QWorkspace par MonWorkspace et l'appel de la fonctioncloseActiveWindow() par celle que tu viens de créer. Ceci doit marcher, enfin je pense car apparement closeActiveWindow() existe dans ta version de QT mais est privée.
Voila, alé, a+.
Bouba

Commentaire de Anacr0x le 13/01/2004 23:23:01

effectivement, j'y avait pas pensé, mais ca devrait marché

enfin, jverrai ca un autre jour, g malheureusement une dissertation a faire la :(

Commentaire de bouba le 07/03/2004 22:50:30

J'ai remis à jours la source, y'a presque rien de changé à part la correction d'un bug au niveau des onglets.
La principale nouveauté est la mise en place de la documentation. Elle n'est pas du tout achevée non plus bien sûr (et oui j'ai pas trop de temps en ce moment !!!) . La documentation est générée avec doxygen, vous trouverez plus d'information à ce sujet dans le zip.
Merci

Commentaire de o0Leo0o le 22/09/2004 17:48:37

Une petite question, qtextedit.h et qstring.h on peut les trovuer où?
(Suis sous XP avec VC6).

Commentaire de D1m3x le 22/09/2004 19:25:33

C'est la librairie Qt qui les fournis ces fichiers, tu dois installer qt pour pouvoir les utiliser :)

(les vieilles version de qt, comme celle gratuit pour windows ne contiennent pas les textedit !)
ciao ;)

Commentaire de bouba le 15/04/2006 19:37:17

Mise à jours du code, passage à QT4.
Merci pour vos commentaires.
Bouba

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Creation et utilisation des onglets [ par LallThis ] un petit probleme d'util des onglets.je voudrais savoir comment utiliser les onglets.Merci d'avanceécrire ici : mailto:rdubus@addonmail.com comment faire inscrire un texte dans un editeur en cliquant sur le menu [ par Astrogeo ] j'ai fais un editeur de textej'aimerai que lorsque l'on clique sur le menu il affiche un texte là ou l'on ecrit.Comment fait-on Merci de bien vouloir QT Designer [ par BisonFute ] Bon sa serais juste pour savoir si qqu'un s'y connais en QT Designer car j'arrive pas a faire plusieurs truc donc si qqu'un a le courage de m'aider et bases de l'utilisation de VC++ (suis nul et je pige pas) [ par lmondeil ] Light. Je suis nul mais je me soigne!salut tout le monde. J'ai un souci avec la manipulation de Visual C++ 6 :Je dois bosser sout VC++ en utilisant QT Onglets (Tab stop) avec MFC [ par Ostrogoth22 ] Je suis en train de coder une application nécessitant l'emploi d'onglets...Comment les manipuler : comment en ajouter ou en enlever ou associer des bo editeur texte [ par Algeroth ] slt!je cherche les sources en langage cd'un editeur de texte sous dos..merci!+ editeur de code [ par hobbes ] Bonjourje recherche les sources d'un editeur de code style visual fait en C++ editeur de code [ par hobbes ] Bonjour,je cherche des sources d'un editeur de code style visual fait en C++. editeur de code [ par hobbes ] je recherche les source d'un editeur de code style visual en C++ programmation qt [ par vedder ] Bonjour jje develope actuellement une application linux sous kdevelop et j'aimerais faire fonctionner deux fonctionnalites :1/ j'aimerais afficher une


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,201 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales