Basic Text Editor V 0.1
Publié : ven. 31/oct./2008 13:25
Bonjour à tous,
Je viens aujourd'hui vous présenter mon premier "vrai" Programme. Il s'agît d'un éditeur de texte tout simple appelé "Basic Text Editor".
Ne vous attendez pas à un éditeur qui arrive à concurrencer Word Office ou autre...
C'est mon tout premier Programme, et je compte bien continuer à le développer, je suis fier de ce programme car j'utilise un format spécial au lieu de .RTF qui est .BTF (Basic Text File). Les données (Police d'écriture, couleur, Taille) sont sauvegardés dans un fichier de Préférences appelé nomdufichieractuel.btp (Basic Text Preferences).
Je vous préviens que c'est tout petit! Sa concurrence le bloc notes de Windows ^^, ne soyez pas trop indulgents s'il vous plaît, mon tout premier programme! :s
Voici le lien de téléchargement : http://www.penguinbyte.com/apps/pbwebst ... r_V0.1.rar * Mis à jour le 03/11/08 *
PS : Je tiens à préciser que je ne me suis aidé d'aucun TUTORIEL du Forum, j'ai tout codé moi-même, je me suis beaucoup aidé de l'aide (F1 F1 F1 F1 F1 XD).
EDIT : Je fais partager les sources puisque je m'attaque à un autre projet ^^
Fichier BTE_Mainfile.pb
Fichier BTE_Includefile.pb
Cordialement,
Necro.
Je viens aujourd'hui vous présenter mon premier "vrai" Programme. Il s'agît d'un éditeur de texte tout simple appelé "Basic Text Editor".
Ne vous attendez pas à un éditeur qui arrive à concurrencer Word Office ou autre...
C'est mon tout premier Programme, et je compte bien continuer à le développer, je suis fier de ce programme car j'utilise un format spécial au lieu de .RTF qui est .BTF (Basic Text File). Les données (Police d'écriture, couleur, Taille) sont sauvegardés dans un fichier de Préférences appelé nomdufichieractuel.btp (Basic Text Preferences).
Je vous préviens que c'est tout petit! Sa concurrence le bloc notes de Windows ^^, ne soyez pas trop indulgents s'il vous plaît, mon tout premier programme! :s
Voici le lien de téléchargement : http://www.penguinbyte.com/apps/pbwebst ... r_V0.1.rar * Mis à jour le 03/11/08 *
Si vous voulez les sources, demandez-moi! ^^Le 31/10/08 à 16:52 -
Nouveau lien de téléchargement : http://rapidshare.de/files/40803915/Bas ... 1.rar.html
Problèmes résolus : - Pas nécessaire d'ajouter l'extension .btf lors de la sauvegarde de son fichier.
PS : Je tiens à préciser que je ne me suis aidé d'aucun TUTORIEL du Forum, j'ai tout codé moi-même, je me suis beaucoup aidé de l'aide (F1 F1 F1 F1 F1 XD).
EDIT : Je fais partager les sources puisque je m'attaque à un autre projet ^^
Fichier BTE_Mainfile.pb
Code : Tout sélectionner
; PureBasic Visual Designer v3.95 build 1485 (PB4Code)
; Inclusion du Fichier généré.
IncludeFile "BTE_Includefile.pb"
; On ouvre la fenêtre principale
Open_Main_Window()
; Gestion des évènements
Repeat
Event = WaitWindowEvent()
; Si il s'agît du Menu...
If Event = #PB_Event_Menu
Select EventMenu()
; Si on souhaite Ferme l'application...
Case #MAIN_Exit
End
; Si on souhaite ouvrir un fichier texte...
Case #MAIN_Open
; On défini les variables générales...
Filter$ = "Basic Text File (*.btf)|*.btf"
Other = 0
Get_file$ = OpenFileRequester("Sélectionnez le Fichier .BTF à Ouvrir", "", Filter$, Other)
; Si le fichier à été chargé...
If Get_file$
; On va chercher le nom du fichier...
File_name_GET$ = GetFilePart(Get_file$)
; On informe que le fichier à bien été chargé...
file_ready = 1
;;;;;;;;;;;;;;;;;;; ON VA CHERCHER LES PREFERENCES DU FICHIER ;;;;;;;;;;;;;;;;
; Définition des variables générales
Check_directory_pref$ = GetCurrentDirectory()
Check_filename_pref$ = File_name_GET$
File_extension_pref$ = ".btp"
path_pref_file$ = Check_directory_pref$ + "/pref_files/" + Check_filename_pref$ + File_extension_pref$
; On ouvre le fichier préférences...
OpenPreferences(path_pref_file$)
; On stock le contenu dans des variables...
Font_PREF$ = ReadPreferenceString("Font", "")
Size_PREF = ReadPreferenceFloat("Size", 0)
Color_PREF = ReadPreferenceFloat("Color", 0)
; Si le font n'a pas été défini... (par défaut)
If Font_PREF$ = "" And Size_PREF = 0 And Color_PREF = 0
Font_value$ = "Arial"
Size_value = 10
Color_value = 0
Else
Font_value$ = Font_PREF$
Size_value = Size_PREF
Color_value = Color_PREF
EndIf
; On transforme le fichier texte...
Font_bin_loaded = LoadFont(0, Font_value$, Size_value)
SetGadgetFont(#Editor_text, Font_bin_loaded)
SetGadgetColor(#Editor_text, #PB_Gadget_FrontColor, Color_value)
; On informe l'utilisateur que le fichier a été chargé avec succès...
MessageRequester("Basic Text Editor", "Fichier "+File_name_GET$+" à été Ouvert avec Succès !", 4*16)
; On ouvre le fichier...
Open_totally_file = OpenFile(3, Get_file$)
; On lis le fichier ouvert....
Readed_file$ = ReadString(3)
; Maintenant on met à jour l'EditorGadget...
Get_Update_Values = SetGadgetText(#Editor_text, Readed_file$)
; Et on ferme le fichier...
CloseFile(3)
; Sinon...
Else
; On informe que rien ne s'est produit...
file_ready = 0
EndIf
; Si on souhaite enregistrer notre Fichier...
Case #MAIN_Save
; Définition des variables générales...
S_filter$ = "Basic Text File (*.btf)|*.btf"
S_other = 0
; Si le fichier concerné est un fichier chargé...
If file_ready = 1
Save_file_SEND$ = SaveFileRequester("Sauvegarde d'un Fichier .BTF ", File_name_GET$, S_filter$, S_other)
; On informe que le fichier va être sauvegardé...
go_save_file = 1
; Sinon...
Else
Save_file_SEND$ = SaveFileRequester("Sauvegarde d'un Fichier .BTF ", "MonFichier", S_filter$, S_other)
; On informe que le fichier va être sauvegardé...
go_save_file = 1
EndIf
; Si le fichier à besoin d'être enregistré...
If go_save_file = 1
; On récupère le chemin complet du Fichier pour ensuite l'enregistrer...
Path_save_file_requester$ = Save_file_SEND$
; On ouvre le fichier en question...
Result_save_file = OpenFile(0, Path_save_file_requester$ + ".btf")
; Si le fichier existe...
If Result_save_file And Save_file_SEND$
; On informe qu'on sauvegarde le fichier...
File_saved = 1
; On récupère le contenu de l'EditorGadget...
Send_values_text$ = GetGadgetText(#Editor_text)
; On écrit dans le fichier concerné...
Write_Text = WriteString(0, Send_values_text$, #PB_UTF8)
; On va chercher le nom du fichier...
File_totally_name$ = GetFilePart(Path_save_file_requester$)
; On affiche un message de confirmation...
MessageRequester("Basic Text Editor", "Fichier " + File_totally_name$ + ".btf Sauvegardé avec Succès !", 4*16)
; Fermeture du Fichier...
CloseFile(0)
EndIf
EndIf
; Si on souhaite changer la Police d'écriture...
Case #MAIN_Font
; On défini les variables générales...
Font$ = "Arial"
Size = 11
; On envoi la requête...
Request_change_FONT = FontRequester(Font$, Size, #PB_FontRequester_Effects)
; On stocke les données envoyées dans de nouvelles variables...
Font_SEND$ = SelectedFontName()
Size_SEND = SelectedFontSize()
Color_SEND = SelectedFontColor()
; On charge la Police...
Query_LF = LoadFont(#Editor_text, Font_SEND$, Size_SEND)
; On modifie Maintenant le style d'écriture du Gadget...
SetGadgetFont(#Editor_text,Query_LF)
; Et on modifie la couleur...
SetGadgetColor(#Editor_text, #PB_Gadget_FrontColor, Color_SEND)
; Si on souhaite afficher le menu "A Propos..."
Case #MAIN_About
MessageRequester("A Propos...", "Basic Text Editor" + Chr(10) + "------------------------------------------------" + Chr(10) + "Programmé par Necro" + Chr(10) + "Tous droits réservés", 4*16)
EndSelect
; Si on a demandé de sauvegarder le fichier...
If File_saved = 1
; Définition des variables générales...
Check_directory$ = GetCurrentDirectory()
Check_filename$ = GetFilePart(Path_save_file_requester$)
File_extension$ = ".btp" ; Basic Text Preferences
; On crée le fichier de préférences...
CreatePreferences(Check_directory$ + "/pref_files/" + Check_filename$ + File_extension$)
; On Ouvre le fichier préférences concerné...
OpenPreferences(Check_directory$ + "/pref_files/" + Check_filename$ + File_extension$)
; On écrit dans ce fichier...
; Pour la police...
WritePreferenceString("Font", Font_SEND$)
; Pour la taille...
WritePreferenceString("Size", Str(Size_SEND))
; Pour la couleur...
WritePreferenceString("Color", Str(Color_SEND))
; On femre le fichier des préférences...
ClosePreferences()
EndIf
EndIf
Until Event = #PB_Event_CloseWindow
; IDE Options = PureBasic 4.20 (Windows - x86)
; CursorPosition = 112
; FirstLine = 97
Fichier BTE_Includefile.pb
Code : Tout sélectionner
; PureBasic Visual Designer v3.95 build 1485 (PB4Code)
;- Window Constants
;
Enumeration
#Window_BTE_Editor
EndEnumeration
;- MenuBar Constants
;
Enumeration
#MenuBar_0
EndEnumeration
Enumeration
#MAIN_Open
#MAIN_Save
#MAIN_Exit
#MAIN_Font
#MAIN_About
EndEnumeration
;- Gadget Constants
;
Enumeration
#Editor_text
EndEnumeration
Procedure Open_Main_Window()
If OpenWindow(#Window_BTE_Editor, 305, 121, 673, 383, "BTE - Basic Text Editor 0.1", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar )
If CreateMenu(#MenuBar_0, WindowID(#Window_BTE_Editor))
MenuTitle("Fichier")
MenuItem(#MAIN_Open, "Ouvrir...")
MenuItem(#MAIN_Save, "Enregistrer")
MenuBar()
MenuItem(#MAIN_Exit, "Quitter")
MenuTitle("Edition")
MenuItem(#MAIN_Font, "Police...")
MenuTitle("?")
MenuItem(#MAIN_About, "A Propos")
EndIf
If CreateGadgetList(WindowID(#Window_BTE_Editor))
EditorGadget(#Editor_text, 0, 0, 675, 365)
EndIf
EndIf
EndProcedure
; IDE Options = PureBasic 4.20 (Windows - x86)
; CursorPosition = 39
; FirstLine = 28
Cordialement,
Necro.