Code : Tout sélectionner
#TOOLTIP_NO_ICON = 0
#TOOLTIP_INFO_ICON = 1
#TOOLTIP_WARNING_ICON = 2
#TOOLTIP_ERROR_ICON = 3
Enumeration
#GADGET_Play
#GADGET_Pause
#GADGET_Reprise
#GADGET_Stop
#GADGET_Eject
#GADGET_Close
#GADGET_Select
#GADGET_Status
#GADGET_Time
#GADGET_CDAudioDrive
#GADGET_SelectDrive
#GADGET_CD
#BoutonID_About
#GADGET_Version
#BoutonID_Quitter
#BoutonID_play
#BoutonID_stop
#BoutonID_Eject
#BoutonID_Close
#BoutonID_Aide
#BoutonID_open
#SysTrayIcon_CDLAYER
#window_princ
#BoutonID_princ
#Window_0
#Gadget_2
#Image_1
#Gadget_3
#Gadget_4
#Image_Version
#StatusBar_0
#GADGET_License
EndEnumeration
OpenWindow(#Window_0, 0, 0, 400, 130, #PB_Window_ScreenCentered | #PB_Window_BorderLess, "SplashScreen")
CreateStatusBar(#StatusBar_0, WindowID())
AddStatusBarField(400)
StatusBarText(#StatusBar_0, 0, "Chargement")
CreateGadgetList(WindowID())
ImageGadget(#Gadget_2, 0, 0, 400, 95, LoadImage(#Image_1, "bmp\CDPLAYERssfr.bmp"))
ProgressBarGadget(#Gadget_3, 0, 95, 375, 15, 0, 100, #PB_ProgressBar_Smooth)
TextGadget(#Gadget_4, 375, 95, 25, 15, "0%", #PB_Text_Center)
Delay(10)
SetGadgetText(#Gadget_4, "01%")
SetGadgetState(#Gadget_3, 1)
StatusBarText(#StatusBar_0, 0, "Initialisation")
Delay(10)
OS = OSVersion()
If OS = #PB_OS_Windows_NT_4
MessageRequester("Erreur", "Ce programme n'est pas comptatible Windows NT4", #MB_ICONERROR)
End
EndIf
Date$ = FormatDate("%dd/%mm/%yyyy", Date())
Time$ = FormatDate("%hh:%ii:%ss", Date())
NbCDDrives = InitCDAudio()
If NbCDDrives = 0
MessageRequester("Erreur", "Aucun lecteur CD trouvé.", #MB_ICONERROR)
End
EndIf
Sound = InitSound()
If Sound = 0
MessageRequester("Erreur", "Impossible d'initialiser DirectX 7 ou plus. Ou votre carte son n'est pas correct.", #MB_ICONERROR)
End
EndIf
IModule = InitModule()
If IModule = 0
MessageRequester("Erreur", "Impossible d'ouvrir midas11.dll. Veuillez ré-insatller le lecteur CD", #MB_ICONERROR)
End
EndIf
UseOGGSoundDecoder()
Global Null$
Procedure.s GetHourFormat(LengthInSeconds)
Minutes = LengthInSeconds / 60
Seconds = LengthInSeconds - Minutes * 60
If Seconds < 10 : Null$ = "0" : Else : Null$ = "" : EndIf
ProcedureReturn Str(Minutes) + ":" + Null$ + Str(Seconds)
EndProcedure
Procedure BalloonTip(WindowID, Gadget, Text$ , Title$, Icon)
ToolTip=CreateWindowEx_(0,"ToolTips_Class32","",#WS_POPUP | #TTS_NOPREFIX | #TTS_BALLOON,0,0,0,0,WindowID(WindowID),0,GetModuleHandle_(0),0)
SendMessage_(ToolTip,#TTM_SETTIPTEXTCOLOR,GetSysColor_(#COLOR_INFOTEXT),0)
SendMessage_(ToolTip,#TTM_SETTIPBKCOLOR,GetSysColor_(#COLOR_INFOBK),0)
SendMessage_(ToolTip,#TTM_SETMAXTIPWIDTH,0,180)
Balloon.TOOLINFO\cbSize=SizeOf(TOOLINFO)
Balloon\uFlags=#TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hWnd=GadgetID(Gadget)
Balloon\uId=GadgetID(Gadget)
Balloon\lpszText=@Text$
SendMessage_(ToolTip, #TTM_ADDTOOL, 0, Balloon)
If Title$ > ""
SendMessage_(ToolTip, #TTM_SETTITLE, Icon, @Title$)
EndIf
EndProcedure
Procedure Verification(fichier$)
; Créée le 04/11/03 : Vérifie la présence de l'image : fichier$
; Tente de charger l'image
If LoadImage(fichier, fichier$) = 0
;Si 0 est renvoyé (Image inexistante, format non désiré,...), affichage du message
MessageRequester("Erreur", "Impossible de charger " + fichier$ +" !", #MB_ICONERROR)
; Fermeture du programme
End
EndIf
EndProcedure
Procedure Jouer()
; Créée le 06/11/03 : Définit le type de fenetre à ouvrir en fonction de l'extension
; Ouvre une fenetre de demande de selection du fichier son SoundFileName$
SoundFileName$ = OpenFileRequester("Choisissez un fichier multimédia", "", "Tous les fichiers supportés|*.mod;*.xm;*.wav;*.ogg|Fichiers Wave ou OGG|*.wav;*.ogg|Fichiers Wave|*.wav|Fichiers OGG|*.ogg|Fichiers modules|*.mod;*.xm|Fichiers *.mod|*.mod|Fichiers *.xm|*.xm", 0)
; si SoundFileName$ est ouvert correctement...
If SoundFileName$
; extraction de l'extension (Extension$)
Extension$ = GetExtensionPart(SoundFileName$)
; Si Extension$ vaut une extension de fichier son
If Extension$ = "wav" Or "ogg"
; On charge le son SoundFileName$
If LoadSound(0, SoundFileName$)
; et on le lit, en boucle
PlaySound(0, 1)
; on affiche que le son est lu en boucle, avec une option de sortie
MessageRequester("Son", "Lit le son (boucle)..." + Chr(10) + "Cliquer pour quitter..", 0)
Else
; Sinon message d'erreur si le son est corrompu,...
MessageRequester("Erreur", "Impossible de charger le son.", #MB_ICONERROR)
EndIf
StopSound(0)
ElseIf Extension$ = "xm" Or "mod"
; sinon on charge le module
If LoadModule(0, SoundFileName$)
; on le joue
PlayModule(0)
; on annonce qu'on joue le module
MessageRequester("Module", "Lit le module...", 0)
Else
; Sinon message d'erreur si le module est corrompu,...
MessageRequester("Erreur", "Impossible de charger le module.", #MB_ICONERROR)
EndIf
StopModule()
EndIf
EndIf
EndProcedure
Procedure.s Enregistrement(FichierINI$, Programme$)
; Tente d'ouvrir le fichier *.ini ; s'il exite tout sera sauté
If ReadFile(0, FichierINI$) = 0
; affiche un message d'avertissment
MessageRequester("Attention", "Ceci est votre première utilisation de " + Programme$ + " ou le fichier " + FichierINI$ +" a été supprimé ou remplacé ! Il vous sera demandé des informations qui ne seront communiquées à personne (puisque'elle resteront sur votre PC)", #MB_ICONWARNING)
; demande le nom
Nom :
Nom$ = InputRequester("Saisie des informations 1/2", "Entrez votre nom", "ici")
; Vérifie que le nom n'est pas "ici"
If Nom$ = "ici"
; s'il est "ici", il faut recommencer
MessageRequester("Erreur", "Votre nom ne peut être ici !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurN = ErreurN + 1
; Si il y a eu 4 erreurs pour le nom
If ErreurN = 4
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto Nom
EndIf
; Vérifie que le nom n'est pas trop long
If Len(Nom$) >= 200
; s'il est trop long
MessageRequester("Erreur", "Votre nom est trop long !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurN = ErreurN + 1
; Si il y a eu 4 erreurs pour le nom
If ErreurN = 4
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto Nom
EndIf
; Vérifie que le nom n'est pas trop court
If Len(Nom$) <= 4
; s'il est trop court
MessageRequester("Erreur", "Votre nom est trop court !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurN = ErreurN + 1
; Si il y a eu 4 erreurs pour le nom
If ErreurN = 4
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto Nom
EndIf
; demande l'adresse e-mail
AdresseMail :
Adresse$ = InputRequester("Saisie des informations 2/2", "Entrez une adresse e-mail", "ici")
; Vérifie que l'adresse e-mail n'est pas "ici"
If Adresse$ = "ici"
; si elle est "ici",
MessageRequester("Erreur", "Votre adresse e-mail ne peut être ici !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
; Vérifie que l'adresse e-mail n'est pas trop longue
If Len(Adresse$) >= 250
; si elle est trop longue
MessageRequester("Erreur", "Votre adresse e-mail est trop longue !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
; Vérifie que l'adresse e-mail n'est pas trop courte
If Len(Adresse$) <= 4
; si elle est trop courte
MessageRequester("Erreur", "Votre adresse e-mail est trop courte !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
;Vérifie la présence de @
Arobas = FindString(Adresse$, "@", 1)
If Arobas = 0
;S'il n'y en a pas
MessageRequester("Erreur", "Ceci n'est pas une adresse e-mail valide !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
CloseFile(0)
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
; Créé le fichier et stoke les infos
CreateFile(0, FichierINI$)
WriteStringN(Nom$)
WriteString(Adresse$)
; Annonce que tout est fini
MessageRequester("Succés !", "Vous venez d'acquerir une license ! Elle est decernée à : " + Nom$ + " " + Adresse$ + ".", #MB_ICONINFORMATION)
; ferme le fichier
CloseFile(0)
EndIf
;Ouvre le fichier
If ReadFile(0, FichierINI$)
;Lit la première ligne
License$ = ReadString()
;Si elle ne vaut rien
If License$ = ""
;Affcihe du message d'erreur
MessageRequester("Erreur", "Vous n'avez pas obtenu de license", #MB_ICONERROR)
;Fermeture du fichier
CloseFile(0)
;Quitte le programme
End
; Ou si elle est égale à "No"
ElseIf License$ = "No"
;Affcihe du message d'erreur
MessageRequester("Erreur", "Vous n'avez pas obtenu de license", #MB_ICONERROR)
;Fermeture du fichier
CloseFile(0)
;Quitte le programme
End
EndIf
; fermeture du fichier
CloseFile(0)
EndIf
;Ouvre le fichier
If ReadFile(0,FichierINI$)
;Lit la première ligne
License.s = ReadString()
; fermeture du fichier
CloseFile(0)
EndIf
;La procedure retourne maintenant le nom d'utilisateur
ProcedureReturn License.s
EndProcedure
Procedure about()
Nomb$ = Enregistrement("infos.ini", "Lecteur multimédia")
MessageRequester("A propos de...", "Lecteur multimédia version 1.00RC1. Créé par Heis Spiter. http://www.heisspiter.tk. License à : " + nomb$ + ".", #MB_ICONINFORMATION)
CloseFile(0)
EndProcedure
;- --- Tailles d'écritures -----
; Taille du texte de l'image 54
; Taille du texte version 49
; Taille du texte des boutons 9
;- -----------------------------
StatusBarText(#StatusBar_0, 0, "Chargement des images")
SetGadgetText(#Gadget_4, "02%")
SetGadgetState(#Gadget_3, 2)
Delay(10)
SetGadgetText(#Gadget_4, "03%")
SetGadgetState(#Gadget_3, 3)
Delay(10)
SetGadgetText(#Gadget_4, "04%")
SetGadgetState(#Gadget_3, 4)
Delay(10)
SetGadgetText(#Gadget_4, "05%")
SetGadgetState(#Gadget_3, 5)
Delay(10)
SetGadgetText(#Gadget_4, "06%")
SetGadgetState(#Gadget_3, 6)
Delay(10)
SetGadgetText(#Gadget_4, "07%")
SetGadgetState(#Gadget_3, 7)
Verification("bmp\CDPLAYERssfr.bmp")
Delay(10)
SetGadgetText(#Gadget_4, "08%")
SetGadgetState(#Gadget_3, 8)
Delay(10)
SetGadgetText(#Gadget_4, "09%")
SetGadgetState(#Gadget_3, 9)
Delay(10)
SetGadgetText(#Gadget_4, "10%")
SetGadgetState(#Gadget_3, 10)
Delay(10)
SetGadgetText(#Gadget_4, "11%")
SetGadgetState(#Gadget_3, 11)
Delay(10)
SetGadgetText(#Gadget_4, "12%")
SetGadgetState(#Gadget_3, 12)
Delay(10)
SetGadgetText(#Gadget_4, "13%")
SetGadgetState(#Gadget_3, 13)
Delay(10)
SetGadgetText(#Gadget_4, "14%")
SetGadgetState(#Gadget_3, 14)
Verification("bmp\Version.bmp")
Delay(10)
SetGadgetText(#Gadget_4, "15%")
SetGadgetState(#Gadget_3, 15)
Delay(10)
SetGadgetText(#Gadget_4, "16%")
SetGadgetState(#Gadget_3, 16)
Delay(10)
SetGadgetText(#Gadget_4, "17%")
SetGadgetState(#Gadget_3, 17)
Delay(10)
SetGadgetText(#Gadget_4, "18%")
SetGadgetState(#Gadget_3, 18)
Delay(10)
SetGadgetText(#Gadget_4, "19%")
SetGadgetState(#Gadget_3, 19)
Delay(10)
SetGadgetText(#Gadget_4, "20%")
SetGadgetState(#Gadget_3, 20)
Delay(10)
SetGadgetText(#Gadget_4, "21%")
SetGadgetState(#Gadget_3, 21)
Verification("bmp\CDPlayer16.ico")
Delay(10)
SetGadgetText(#Gadget_4, "22%")
SetGadgetState(#Gadget_3, 22)
Delay(10)
SetGadgetText(#Gadget_4, "23%")
SetGadgetState(#Gadget_3, 23)
Delay(10)
SetGadgetText(#Gadget_4, "24%")
SetGadgetState(#Gadget_3, 24)
Delay(10)
SetGadgetText(#Gadget_4, "25%")
SetGadgetState(#Gadget_3, 25)
Delay(10)
SetGadgetText(#Gadget_4, "26%")
SetGadgetState(#Gadget_3, 26)
Delay(10)
SetGadgetText(#Gadget_4, "27%")
SetGadgetState(#Gadget_3, 27)
Delay(10)
SetGadgetText(#Gadget_4, "28%")
SetGadgetState(#Gadget_3, 28)
Verification("bmp\CloseT.ico")
Delay(10)
SetGadgetText(#Gadget_4, "29%")
SetGadgetState(#Gadget_3, 29)
Delay(10)
SetGadgetText(#Gadget_4, "30%")
SetGadgetState(#Gadget_3, 30)
Delay(10)
SetGadgetText(#Gadget_4, "31%")
SetGadgetState(#Gadget_3, 31)
Delay(10)
SetGadgetText(#Gadget_4, "32%")
SetGadgetState(#Gadget_3, 32)
Delay(10)
SetGadgetText(#Gadget_4, "33%")
SetGadgetState(#Gadget_3, 33)
Delay(10)
SetGadgetText(#Gadget_4, "34%")
SetGadgetState(#Gadget_3, 34)
Delay(10)
SetGadgetText(#Gadget_4, "35%")
SetGadgetState(#Gadget_3, 35)
Verification("bmp\EjectT.ico")
Delay(10)
SetGadgetText(#Gadget_4, "36%")
SetGadgetState(#Gadget_3, 36)
Delay(10)
SetGadgetText(#Gadget_4, "37%")
SetGadgetState(#Gadget_3, 37)
Delay(10)
SetGadgetText(#Gadget_4, "38%")
SetGadgetState(#Gadget_3, 38)
Delay(10)
SetGadgetText(#Gadget_4, "39%")
SetGadgetState(#Gadget_3, 39)
Delay(10)
SetGadgetText(#Gadget_4, "40%")
SetGadgetState(#Gadget_3, 40)
Delay(10)
SetGadgetText(#Gadget_4, "41%")
SetGadgetState(#Gadget_3, 41)
Delay(10)
SetGadgetText(#Gadget_4, "42%")
SetGadgetState(#Gadget_3, 42)
Verification("bmp\PlayT.ico")
Delay(10)
SetGadgetText(#Gadget_4, "43%")
SetGadgetState(#Gadget_3, 43)
Delay(10)
SetGadgetText(#Gadget_4, "44%")
SetGadgetState(#Gadget_3, 44)
Delay(10)
SetGadgetText(#Gadget_4, "45%")
SetGadgetState(#Gadget_3, 45)
Delay(10)
SetGadgetText(#Gadget_4, "46%")
SetGadgetState(#Gadget_3, 46)
Delay(10)
SetGadgetText(#Gadget_4, "47%")
SetGadgetState(#Gadget_3, 47)
Delay(10)
SetGadgetText(#Gadget_4, "48%")
SetGadgetState(#Gadget_3, 48)
Delay(10)
SetGadgetText(#Gadget_4, "49%")
SetGadgetState(#Gadget_3, 49)
Verification("bmp\StopT.ico")
Delay(10)
ImageGadget(#Gadget_2, 0, 0, 400, 95, LoadImage(#Image_Version, "bmp\Version.bmp"))
SetGadgetText(#Gadget_4, "50%")
SetGadgetState(#Gadget_3, 50)
StatusBarText(#StatusBar_0, 0, "Chargement de la DLL")
Delay(10)
SetGadgetText(#Gadget_4, "51%")
SetGadgetState(#Gadget_3, 51)
Delay(10)
SetGadgetText(#Gadget_4, "52%")
SetGadgetState(#Gadget_3, 52)
Delay(10)
SetGadgetText(#Gadget_4, "53%")
SetGadgetState(#Gadget_3, 53)
Delay(10)
SetGadgetText(#Gadget_4, "54%")
SetGadgetState(#Gadget_3, 54)
Delay(10)
SetGadgetText(#Gadget_4, "55%")
SetGadgetState(#Gadget_3, 55)
Delay(10)
SetGadgetText(#Gadget_4, "56%")
SetGadgetState(#Gadget_3, 56)
Delay(10)
SetGadgetText(#Gadget_4, "57%")
SetGadgetState(#Gadget_3, 57)
Delay(10)
SetGadgetText(#Gadget_4, "58%")
SetGadgetState(#Gadget_3, 58)
Delay(10)
SetGadgetText(#Gadget_4, "59%")
SetGadgetState(#Gadget_3, 59)
Delay(10)
SetGadgetText(#Gadget_4, "60%")
SetGadgetState(#Gadget_3, 60)
Delay(10)
SetGadgetText(#Gadget_4, "61%")
SetGadgetState(#Gadget_3, 61)
Delay(10)
SetGadgetText(#Gadget_4, "62%")
SetGadgetState(#Gadget_3, 62)
Delay(10)
SetGadgetText(#Gadget_4, "63%")
SetGadgetState(#Gadget_3, 63)
Delay(10)
SetGadgetText(#Gadget_4, "64%")
SetGadgetState(#Gadget_3, 64)
Delay(10)
SetGadgetText(#Gadget_4, "65%")
SetGadgetState(#Gadget_3, 65)
If ReadFile(About_dll, "About.dll") = 0
MessageRequester("Erreur", "Impossible d'ouvrir About.dll !", #MB_ICONERROR)
End
EndIf
Delay(10)
SetGadgetText(#Gadget_4, "66%")
SetGadgetState(#Gadget_3, 66)
StatusBarText(#StatusBar_0, 0, "Chargement de l'aide")
Delay(10)
SetGadgetText(#Gadget_4, "67%")
SetGadgetState(#Gadget_3, 67)
Delay(10)
SetGadgetText(#Gadget_4, "68%")
SetGadgetState(#Gadget_3, 68)
Delay(10)
SetGadgetText(#Gadget_4, "69%")
SetGadgetState(#Gadget_3, 69)
Delay(10)
SetGadgetText(#Gadget_4, "70%")
SetGadgetState(#Gadget_3, 70)
Delay(10)
SetGadgetText(#Gadget_4, "71%")
SetGadgetState(#Gadget_3, 71)
Delay(10)
SetGadgetText(#Gadget_4, "72%")
SetGadgetState(#Gadget_3, 72)
Delay(10)
SetGadgetText(#Gadget_4, "73%")
SetGadgetState(#Gadget_3, 73)
Delay(10)
SetGadgetText(#Gadget_4, "74%")
SetGadgetState(#Gadget_3, 74)
Delay(10)
SetGadgetText(#Gadget_4, "75%")
SetGadgetState(#Gadget_3, 75)
Delay(10)
SetGadgetText(#Gadget_4, "76%")
SetGadgetState(#Gadget_3, 76)
Delay(10)
SetGadgetText(#Gadget_4, "77%")
SetGadgetState(#Gadget_3, 77)
Delay(10)
SetGadgetText(#Gadget_4, "78%")
SetGadgetState(#Gadget_3, 78)
Delay(10)
SetGadgetText(#Gadget_4, "79%")
SetGadgetState(#Gadget_3, 79)
Delay(10)
SetGadgetText(#Gadget_4, "80%")
SetGadgetState(#Gadget_3, 80)
If ReadFile(aide, "Help\CDPLAYER.chm") = 0
MessageRequester("Attention", "Vous n'avez pas installé l'aide !", #MB_ICONWARNING)
EndIf
Delay(10)
SetGadgetText(#Gadget_4, "81%")
SetGadgetState(#Gadget_3, 81)
StatusBarText(#StatusBar_0, 0, "Chargement des informations")
Delay(10)
SetGadgetText(#Gadget_4, "82%")
SetGadgetState(#Gadget_3, 82)
Delay(10)
SetGadgetText(#Gadget_4, "83%")
SetGadgetState(#Gadget_3, 83)
Delay(10)
SetGadgetText(#Gadget_4, "84%")
SetGadgetState(#Gadget_3, 84)
Delay(10)
SetGadgetText(#Gadget_4, "85%")
SetGadgetState(#Gadget_3, 85)
Delay(10)
SetGadgetText(#Gadget_4, "86%")
SetGadgetState(#Gadget_3, 86)
Delay(10)
SetGadgetText(#Gadget_4, "87%")
SetGadgetState(#Gadget_3, 87)
Delay(10)
SetGadgetText(#Gadget_4, "88%")
SetGadgetState(#Gadget_3, 88)
Delay(10)
SetGadgetText(#Gadget_4, "89%")
SetGadgetState(#Gadget_3, 89)
Delay(10)
SetGadgetText(#Gadget_4, "90%")
SetGadgetState(#Gadget_3, 90)
Enregistrement("infos.ini", "Lecteur multimédia")
Delay(10)
SetGadgetText(#Gadget_4, "91%")
SetGadgetState(#Gadget_3, 91)
Delay(10)
SetGadgetText(#Gadget_4, "92%")
SetGadgetState(#Gadget_3, 92)
Delay(10)
SetGadgetText(#Gadget_4, "93%")
SetGadgetState(#Gadget_3, 93)
Delay(10)
SetGadgetText(#Gadget_4, "94%")
SetGadgetState(#Gadget_3, 94)
Delay(10)
SetGadgetText(#Gadget_4, "95%")
SetGadgetState(#Gadget_3, 95)
Delay(10)
SetGadgetText(#Gadget_4, "96%")
SetGadgetState(#Gadget_3, 96)
Delay(10)
SetGadgetText(#Gadget_4, "97%")
SetGadgetState(#Gadget_3, 97)
Delay(10)
SetGadgetText(#Gadget_4, "98%")
SetGadgetState(#Gadget_3, 98)
Delay(10)
SetGadgetText(#Gadget_4, "99%")
SetGadgetState(#Gadget_3, 99)
Delay(500)
SetGadgetText(#Gadget_4, "100%")
SetGadgetState(#Gadget_3, 100)
Delay(1000)
CloseWindow(#Window_0)
If OpenWindow(#window_princ, 100, 100, 380, 223, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered, "Lecteur multimédia version 1.00RC1")
AddSysTrayIcon(#SysTrayIcon_CDLAYER, WindowID(#window_princ), LoadImage(CDPLAYER, "Bmp\CDPLAYER.ico"))
SysTrayIconToolTip(#SysTrayIcon_CDLAYER, "Bienvenue")
CreateToolBar(0, WindowID(#window_princ))
ToolBarStandardButton(#BoutonID_open, #PB_ToolBarIcon_Open)
ToolBarSeparator()
ToolBarImageButton(#BoutonID_play, LoadImage(Playt, "Bmp\Playt.ico"))
ToolBarImageButton(#BoutonID_stop, LoadImage(stopt, "Bmp\stopt.ico"))
ToolBarImageButton(#BoutonID_Eject, LoadImage(eject, "Bmp\ejectt.ico"))
ToolBarImageButton(#BoutonID_Close, LoadImage(closet, "Bmp\closet.ico"))
ToolBarSeparator()
ToolBarStandardButton(#BoutonID_Aide, #PB_ToolBarIcon_Help)
ToolBarStandardButton(#BoutonID_About, #PB_ToolBarIcon_Properties)
ToolBarToolTip(#BoutonID_play, "Jouer ce morceau")
ToolBarToolTip(#BoutonID_Aide, "Ouvrir l'aide")
ToolBarToolTip(#BoutonID_stop, "Arreter la lecture")
ToolBarToolTip(#BoutonID_Eject, "Ouvrir le lecteur CD (S'il est fermé)")
ToolBarToolTip(#BoutonID_Close, "Fermer le lecteur CD (S'il est ouvert)")
ToolBarToolTip(#BoutonID_About, "A propos : Informations sur le produit")
ToolBarToolTip(#BoutonID_open, "Ouvrir un fichier Wave, OGG ou un module")
CreateMenu(1, WindowID(#window_princ))
MenuTitle("&Fichier")
MenuItem(#BoutonID_open, "Ouvrir" + Chr(9) + "Ctrl+O")
MenuBar()
MenuItem(#BoutonID_Quitter, "Quitter")
MenuTitle("&Contrôles")
MenuItem(2, "Lecture Ctrl+P")
MenuItem(3, "Stop Ctrl+S")
MenuTitle("&?")
MenuItem(#BoutonID_Aide, "Aide F1")
MenuItem(#BoutonID_About, "A propos de...")
CreatePopupMenu(2)
MenuItem(#BoutonID_princ, "Revenir à la fenetre principale")
MenuBar()
MenuItem(#BoutonID_Quitter, "Quitter")
AddKeyboardShortcut(#window_princ, #PB_Shortcut_F1, #BoutonID_Aide)
AddKeyboardShortcut(#window_princ, #PB_Shortcut_Control | #PB_Shortcut_P, #BoutonID_play)
AddKeyboardShortcut(#window_princ, #PB_Shortcut_Control | #PB_Shortcut_O, #BoutonID_open)
AddKeyboardShortcut(#window_princ, #PB_Shortcut_Control | #PB_Shortcut_S, #BoutonID_stop)
If CreateStatusBar(0, WindowID(#window_princ))
AddStatusBarField(380)
StatusBarIcon(0, 0, LoadImage(CDPLAYER16ico, "bmp\CDPLAYER16.ico"))
StatusBarText(0, 0, "Bienvenue ! ", 0)
EndIf
Nomb$ = Enregistrement("infos.ini", "Lecteur multimédia")
If CreateGadgetList(WindowID(#window_princ))
Frame3DGadget(#GADGET_Play | #GADGET_Pause | #GADGET_Reprise | #GADGET_Stop | #GADGET_Eject | #GADGET_Close, 7, 22, 367, 43, "Commandes")
ButtonGadget(#GADGET_Play, 10, 37, 60, 24, "Lecture")
ButtonGadget (#GADGET_Pause, 70, 37, 60, 24, "Pause")
ButtonGadget (#GADGET_Reprise, 130, 37, 60, 24, "Reprise")
ButtonGadget (#GADGET_Stop, 190, 37, 60, 24, "Stop")
ButtonGadget (#GADGET_Eject, 250, 37, 60, 24, "Ouvrir")
ButtonGadget (#GADGET_Close, 310, 37, 60, 24, "Fermer")
ComboBoxGadget(#GADGET_Select, 10, 70, 240, 400)
TextGadget (#GADGET_Status, 10, 95, 180, 16, "Status : Arreté")
TextGadget (#GADGET_Time, 200, 95, 240, 16, "")
TextGadget (#GADGET_CDAudioDrive, 10, 139, 140, 24, "Selectionnez le lecteur :")
TextGadget (#GADGET_CD, 10, 115, 185, 16, "")
;TextGadget (#GADGET_Version, 1, 167, 60, 20, "Version 2.58")
TextGadget (#GADGET_License, 1, 167, 319, 20, "License à : " + Nomb$)
ComboBoxGadget(#GADGET_SelectDrive, 150, 135, 40, 200)
BalloonTip(WindowID(), #GADGET_Play, "Jouer ce morceau", "Lecture", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_Pause, "Mettre le lecteur en pause", "Pause", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_Reprise, "Reprendre la lecture (Après une pause)", "Reprise", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_Stop, "Arreter la lecture", "Stop", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_Eject, "Ouvrir le lecteur CD (S'il est fermé)", "Ouvrir", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_Close, "Fermer le lecteur CD (S'il est ouvert)", "Fermer", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_Select, "Choisir une piste audio du CD", "Choix de la piste", #TOOLTIP_INFO_ICON)
BalloonTip(WindowID(), #GADGET_SelectDrive, "Choisir le lecteur du CD Audio", "Choix du lecteur", #TOOLTIP_INFO_ICON)
For k = 1 To NbCDDrives
AddGadgetItem(#GADGET_SelectDrive, -1, Left(CDAudioName(k - 1), 2))
Next
SetGadgetState(#GADGET_SelectDrive, 0)
UseCDAudio(0)
If NbCDDrives = 1
DisableGadget(#GADGET_SelectDrive, 1)
EndIf
CloseFile(0)
EndIf
Gosub RefreshCD
Repeat
ScreenX = GetSystemMetrics_(#SM_CXSCREEN)
ScreenY = GetSystemMetrics_(#SM_CYSCREEN)
WinX = WindowX()
WinY = WindowY()
If WinX < 0
MoveWindow(0,WinY)
EndIf
If WinX < 20
MoveWindow(0,WinY)
EndIf
If WinY < 0
MoveWindow(WinX,0)
EndIf
If WinY < 20
MoveWindow(WinX,0)
EndIf
If WinX + 385 > ScreenX
MoveWindow(ScreenX - 385,WinY)
EndIf
If WinX + 385 > ScreenX - 20
MoveWindow(ScreenX - 385,WinY)
EndIf
If WinY + 248 > ScreenY
MoveWindow(WinX,ScreenY - 248)
EndIf
If WinY + 248 > ScreenY - 20
MoveWindow(WinX,ScreenY - 248)
EndIf
Repeat
EventID = WindowEvent()
If EventID = #PB_Event_SysTray
If EventType() = #PB_EventType_LeftDoubleClick
MessageRequester("Informations", "Lit la piste " + Str(CurrentTrack) + ". " + "Temps écoulé : " + GetHourFormat(CDAudioTrackSeconds()) + ". " + "Durée du CD : " + GetHourFormat(CDAudioLength()) + ". " + "Date : " + Date$ + Chr(10) + ", " + "heure : " + Time$, #PB_MessageRequester_Ok | #MB_ICONQUESTION)
EndIf
EndIf
If EventID = #PB_Event_Menu
Select EventMenuID()
Case #BoutonID_play
CurrentTrack = GetGadgetState(#GADGET_Select) + 1
NextTrack = NbAudioTracks
PlayCDAudio(CurrentTrack, NextTrack)
;Gosub RefreshCD
Case #BoutonID_stop
StopCDAudio()
Case #BoutonID_open
Jouer()
Case #BoutonID_Eject
EjectCDAudio(1)
Case #BoutonID_Close
EjectCDAudio(0)
Case #BoutonID_Aide
If ReadFile(aide, "Help\CDPLAYER.chm") = 0
MessageRequester("Attention", "Vous n'avez pas installé l'aide !", #MB_ICONWARNING)
Else
OpenHelp("Help\CDPLAYER.chm", "")
EndIf
Case #BoutonID_About
About()
Case #BoutonID_Quitter
Quit = 1
Case 2
CurrentTrack = GetGadgetState(#GADGET_Select) + 1
NextTrack = NbAudioTracks
PlayCDAudio(CurrentTrack, NextTrack)
;Gosub RefreshCD
Case 3
StopCDAudio()
EndSelect
EndIf
If EventID = #PB_EventGadget
Select EventGadgetID()
Case #GADGET_Play
CurrentTrack = GetGadgetState(#GADGET_Select) + 1
NextTrack = NbAudioTracks
PlayCDAudio(CurrentTrack, NextTrack)
;Gosub RefreshCD
Case #GADGET_Pause
PauseCDAudio()
Case #GADGET_Reprise
ResumeCDAudio()
Case #GADGET_Stop
StopCDAudio()
Case #GADGET_Eject
EjectCDAudio(1)
Case #GADGET_Close
EjectCDAudio(0)
Case #GADGET_SelectDrive
UseCDAudio(GetGadgetState(#GADGET_SelectDrive))
Gosub RefreshCD
EndSelect
Else
If EventID = #PB_EventCloseWindow
Quit = 1
If CurrentTrack > 0
StopCDAudio()
EndIf
EndIf
EndIf
Until EventID = 0
Delay(200)
CurrentTrack = CDAudioStatus()
If CurrentTrack > 0
SetGadgetText(#GADGET_Status, "Lit la piste " + Str(CurrentTrack) + " (Longeur : " + GetHourFormat(CDAudioTrackLength(CurrentTrack)) + ")")
SetGadgetText(#GADGET_Time, "Temps écoulé : " + GetHourFormat(CDAudioTrackSeconds()))
DisableGadget(#GADGET_Play, 1)
DisableGadget(#GADGET_Stop, 0)
DisableGadget(#GADGET_Pause, 0)
DisableGadget(#GADGET_Select, 0)
DisableGadget(#GADGET_Reprise, 1)
SetGadgetText(#GADGET_CD, "Durée du CD : " + GetHourFormat(CDAudioLength()))
StatusBarText(0, 0, "Lit la piste " + Str(CurrentTrack), 0)
SysTrayIconToolTip(#SysTrayIcon_CDLAYER, "Lit la piste " + Str(CurrentTrack))
Else
SetGadgetText(#GADGET_Status, "Status : Arreté")
SetGadgetText(#GADGET_Time, "")
DisableGadget(#GADGET_Play, 0)
DisableGadget(#GADGET_Pause, 1)
DisableGadget(#GADGET_Stop, 1)
DisableGadget(#GADGET_Reprise, 0)
If CurrentTrack = -1
DisableGadget(#GADGET_CD, 1)
DisableGadget(#GADGET_Play, 1)
DisableGadget(#GADGET_Stop, 1)
DisableGadget(#GADGET_Pause, 1)
DisableGadget(#GADGET_Select, 1)
DisableGadget(#GADGET_Reprise, 1)
SetGadgetText(#GADGET_CD, "Durée du CD : Aucun CD")
Else
DisableGadget(#GADGET_CD, 0)
DisableGadget(#GADGET_Play, 0)
DisableGadget(#GADGET_Stop, 1)
DisableGadget(#GADGET_Pause, 1)
DisableGadget(#GADGET_Select, 0)
DisableGadget(#GADGET_Reprise, 0)
SetGadgetText(#GADGET_CD, "Durée du CD : " + GetHourFormat(CDAudioLength()))
EndIf
StatusBarText(0, 0, "Arreté", 0)
SysTrayIconToolTip(#SysTrayIcon_CDLAYER, "Arreté")
If CurrentTrack = -1
DisableGadget(#GADGET_Select, 1)
Else
DisableGadget(#GADGET_Select, 0)
EndIf
EndIf
Until Quit = 1
EndIf
For k=0 To NbCDDrives-1
UseCDAudio(k)
StopCDAudio()
Next
End
;- ----------------------------------------------------------------
; SubRoutines
;
RefreshCD :
ClearGadgetItemList(#GADGET_Select)
NbAudioTracks = CDAudioTracks()
For k = 1 To NbAudioTracks
AddGadgetItem(#GADGET_Select, -1, "Piste " + Str(k))
Next
SetGadgetState(#GADGET_Select, 0)
Return