Dispositif Prévisionnel de Secours
Dispositif Prévisionnel de Secours
Voici une nouvelle petite application Eval-DPS qui pourra aider ceux concernés par l'organisation et la sécurisation d'évènements.
Elle permet de calculer le RIS (Ratio d'Intervenants Secouristes) et de déterminer le dispositif à mettre en place.
Logiciel très ciblé mais on ne sait jamais il y en a peut-être parmi vous qui sont concernés.
La page pour découvrir et télécharger le programme : Présentation de Eval-DPS
Have fun! les geek
Elle permet de calculer le RIS (Ratio d'Intervenants Secouristes) et de déterminer le dispositif à mettre en place.
Logiciel très ciblé mais on ne sait jamais il y en a peut-être parmi vous qui sont concernés.
La page pour découvrir et télécharger le programme : Présentation de Eval-DPS
Have fun! les geek
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
- Kwai chang caine
- Messages : 6962
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Dispositif Prévisionnel de Secours
C'est dingue de voir ou les applications vont se nicher ça donne de l'espoir pour une éventuelle nouvelle idée de programme il suffit d'être AWARE dixit JCV
Ca étaie bien la théorie que dans la vie tout est basé sur "la" mathématique comme aurait dit notre cher ancien ministre
Merci du lien, on sait jamais
Ca étaie bien la théorie que dans la vie tout est basé sur "la" mathématique comme aurait dit notre cher ancien ministre
Merci du lien, on sait jamais
- Philippe_GEORGES
- Messages : 119
- Inscription : mer. 28/janv./2009 13:28
Re: Dispositif Prévisionnel de Secours
Bonjour Jacobus,
Le code source est il disponible ? Très bien ce calcul RIS, mais sans le code source, je ne peux le porter sur Mac. Maintenant, si vous ne voulez pas le rendre public, je le comprends. Toutefois, ce serait aussi un bon exemple de code.
Encore merci de mettre ce logiciel à disposition.
Phil
Le code source est il disponible ? Très bien ce calcul RIS, mais sans le code source, je ne peux le porter sur Mac. Maintenant, si vous ne voulez pas le rendre public, je le comprends. Toutefois, ce serait aussi un bon exemple de code.
Encore merci de mettre ce logiciel à disposition.
Phil
Philippe GEORGES
"La simplicité est la sophistication suprême" (De Vinci)
assistance informatique, création de logiciels
georges.informatique@gmail.com
"La simplicité est la sophistication suprême" (De Vinci)
assistance informatique, création de logiciels
georges.informatique@gmail.com
Re: Dispositif Prévisionnel de Secours
Salut Jacobus, le site est fonctionnel sur OperaMini, et chaque volet horizontal (pages propres à chaque logiciel) est accessible. Chose lourdement rare sur de nombreux sites. Testé à 14H30. (Il y a 15 minutes). Pas téléchargé (pas d'ordi "propre" sous la main). Mais sûrement fonctionnel aussi...
Bise (pleine de CoVid-19 !!)
Bise (pleine de CoVid-19 !!)
Re: Dispositif Prévisionnel de Secours
Hello à vous tous, merci de vos retours.
mise à jour v1.10 incluant la création de captures d'écran des évaluations
Il s'agit d'une application des plus simples, il n'y a rien de transcendant dans le code, même si je me remet à coder des applis après un long moment, c'est juste pour le plaisir et apporter des solutions à ceux qui en ont besoin, d'où ce petit programme qui s'avère fort utile dans les milieux concernés. De plus, vu mon grand âge, je code à l'ancienne et d'ici 3 ou 4 ans je devrais avoir plus de temps pour moi et coder quelques bricoles, malgré la réforme des retraites qui ne devrait pas m'impacter (mais dur dur pour les jeunes...)
Cher Ollivier, merci pour ta visite et la bise, El corona (je ne l'ai pas encore) va bien trouver son maître... il n'y a pas de raison. Il faut garder espoir.
@Philippe_GEORGES, Voici le code source, mais attention de modifier les accès aux images et aux fichiers, non fournis.
1ère partie:
mise à jour v1.10 incluant la création de captures d'écran des évaluations
Il s'agit d'une application des plus simples, il n'y a rien de transcendant dans le code, même si je me remet à coder des applis après un long moment, c'est juste pour le plaisir et apporter des solutions à ceux qui en ont besoin, d'où ce petit programme qui s'avère fort utile dans les milieux concernés. De plus, vu mon grand âge, je code à l'ancienne et d'ici 3 ou 4 ans je devrais avoir plus de temps pour moi et coder quelques bricoles, malgré la réforme des retraites qui ne devrait pas m'impacter (mais dur dur pour les jeunes...)
Cher Ollivier, merci pour ta visite et la bise, El corona (je ne l'ai pas encore) va bien trouver son maître... il n'y a pas de raison. Il faut garder espoir.
@Philippe_GEORGES, Voici le code source, mais attention de modifier les accès aux images et aux fichiers, non fournis.
1ère partie:
Code : Tout sélectionner
UseJPEGImageDecoder()
UseJPEGImageEncoder()
UsePNGImageDecoder()
;---------------------------------
;-CONSTANTES
;---------------------------------
;-Enumeration ID programme
#PROGRAMNAME = "Eval-D.P.S."
#NUMVERSION = "V1.10"
#COPYRIGHT = " WolfoRan LogEditor"+ Chr(169) + "2006-2020 Tous droits réservés."
;-Enumeration Fenêtres
Enumeration ;{
#WinMain
;}
EndEnumeration
;-Enumeration gadgets
Enumeration ;{
#PANEL
#Txt_GrilleEval
#Txt_GrilleEvalOpen
#Strg_GrilleEvalOpen
#BTN_SaveGrilleEval
#BTN_screenshot
#Frame_P2
#Txt_P2
#Txt_OptP2_1
#Txt_OptP2_2
#Txt_OptP2_3
#Txt_OptP2_4
#OptP2_1
#OptP2_2
#OptP2_3
#OptP2_4
#Frame_E1
#Txt_E1
#Txt_OptE1_1
#Txt_OptE1_2
#Txt_OptE1_3
#Txt_OptE1_4
#OptE1_1
#OptE1_2
#OptE1_3
#OptE1_4
#Frame_E2
#Txt_E2
#OptE2_1
#OptE2_2
#OptE2_3
#OptE2_4
#Frame_RIS
#Txt_RIS_P2
#Strg_RIS_P2
#Txt_RIS_E1
#Strg_RIS_E1
#Txt_RIS_E2
#Strg_RIS_E2
#Txt_RIS_P1
#Strg_RIS_P1
#Txt_RIS_P
#Strg_RIS_P
#Txt_RIS_Vali
#Strg_RIS_Vali
#Txt_RIS_Auto
#Strg_RIS_Auto
#Txt_TypeDPS
#Strg_TypeDPS
#Txt_ResultRIS
#DPS_Result
#Frame_Ref
#BTN_Img10
#BTN_Img11
#BTN_Img12
#BTN_Img13
#BTN_ImgActiv
#BTN_ImgEnvir
#BTN_ImgDelai
#Img_info
#BTN_Referentiel
#BTN_Declar_Moins5000
#BTN_Declar_Plus5000
#BTN_Fiche_Eval
#BTN_Logigramme
;-Explorateur Evaluations
#explorerlist
#BtnDisplay
#Text_Currentfolder
#Text_namefolder
#String_pathfolder
#Text_countitems
#PopUp_Explorateur
#Menu_Explorateur_WolfExplorer
#Menu_Explorateur_Open
#Menu_Explorateur_Explorer
#Menu_Explorateur_Property
#Menu_Explorateur_Delete
#Menu_Explorateur_RecycleBin
#PopUp_DisplayMode
#Menu_DisplayMode_Large
#Menu_DisplayMode_Small
#Menu_DisplayMode_Liste
#Menu_DisplayMode_Detail
;-Explorateur images
#BtnDisplayImg
#Text_CurrentfolderImg
#Text_namefolderImg
#explorerlistImg
#String_pathfolderImg
#Text_countitemsImg
#PopUp_ExplorateurImg
#Menu_Explorateur_OpenImg
#Menu_Explorateur_PropertyImg
#Menu_Explorateur_DeleteImg
#Menu_Explorateur_RecycleBinImg
#PopUp_DisplayModeImg
#Menu_DisplayMode_LargeImg
#Menu_DisplayMode_SmallImg
#Menu_DisplayMode_ListeImg
#Menu_DisplayMode_DetailImg
#StatusDPS
;-Constantes info auteur
#Win_InfoAuteur
#CONTAINER_LOGO
#TextInfoInternet
#ConnectSite
#LinkID1
#ConnectMail
#LinkID2
#ReadLicense
#LinkID3
#CloseLicense
#EditeurLicence
#TextInfoAuteur
#CloseInfoAuteur
#StatusInfo
#LogoWolfoRan
;}
EndEnumeration
;---------------------------------
;-VARIABLES
;---------------------------------
Global DirUp.s = ""
Global filename$ = ""
;-Creation des répertoires
If FileSize(GetUserDirectory(#PB_Directory_Documents)+"Mes Evaluations") = -1
CreateDirectory(GetUserDirectory(#PB_Directory_Documents)+"Mes Evaluations")
EndIf
Global RepDPS$ = GetUserDirectory(#PB_Directory_Documents)+"Mes Evaluations\"
If FileSize(GetUserDirectory(#PB_Directory_Documents)+"Mes Evaluations Images") = -1
CreateDirectory(GetUserDirectory(#PB_Directory_Documents)+"Mes Evaluations Images")
EndIf
Global RepDPSimg$ = GetUserDirectory(#PB_Directory_Documents)+"Mes Evaluations Images\"
;-Les PDF
Global Referentiel$ = GetCurrentDirectory()+"RNMSC-DPS_octobre_2006.pdf"
Global Declar_moins5000$ = GetCurrentDirectory()+"Formulaire moins de 5000.pdf"
Global Declar_plus5000$ = GetCurrentDirectory()+"Formulaire simplifié + de 5000 personnes.pdf"
Global Grille_Eval$ = GetCurrentDirectory()+"Grille_évaluation.pdf"
Global Logigramme$ = GetCurrentDirectory()+"logigramme_GR.pdf"
;- Les images
Global Image0, Image1, Image2, Image3, Image4, Image5, Image6, Image7, Image8
Image0 = CatchImage(0, ?Image0)
Image1 = CatchImage(1, ?Image1)
Image2 = CatchImage(2, ?Image2)
Image3 = CatchImage(3, ?Image3)
Image4 = CatchImage(4, ?Image4)
Image5 = CatchImage(5, ?Image5)
Image6 = CatchImage(6, ?Image6)
Image7 = CatchImage(7, ?Image7)
Image8 = CatchImage(8, ?Image8)
Global Image10, Image11, Image12, Image13, Image14, Image15, Image16, Image17, Image18, Image19
Global Image20, Image21, Image22, Image23, Image24, Image25, Image26, Image27, Image28, Image29
Global Image30, Image31, Image32, Image33, Image34, Image35
Image10 = CatchImage(10, ?Image10)
Image11 = CatchImage(11, ?Image11)
Image12 = CatchImage(12, ?Image12)
Image13 = CatchImage(13, ?Image13)
Image14 = CatchImage(14, ?Image14)
Image15 = CatchImage(15, ?Image15)
Image16 = CatchImage(16, ?Image16)
Image17 = CatchImage(17, ?Image17)
Image18 = CatchImage(18, ? Image18)
Image19 = CatchImage(19, ? Image19)
Image20 = CatchImage(20, ? Image20)
Image21 = CatchImage(21, ? Image21)
Image22 = CatchImage(22, ? Image22)
Image23 = CatchImage(23, ? Image23)
Image24 = CatchImage(24, ? Image24)
Image25 = CatchImage(25, ? Image25)
Image26 = CatchImage(26, ? Image26)
Image27 = CatchImage(27, ? Image27)
Image28 = CatchImage(28, ? Image28)
Image29 = CatchImage(29, ? Image29)
Image30 = CatchImage(30, ? Image30)
Image31 = CatchImage(31, ? Image31)
Image32 = CatchImage(32, ? Image32)
Image33 = CatchImage(33, ? Image33)
Image34 = CatchImage(34, ? Image34)
Image35 = CatchImage(35, ? Image35)
Global Image100,Image101,Image102
Image100 = CatchImage(100, ?Image100)
Image101 = CatchImage(101, ?Image101)
Image102 = CatchImage(102, ?Image102)
DataSection ;{
Image0:
IncludeBinary "Images\WolfoRanSoftware.ico"
Image1:
IncludeBinary "Images\shutdown.ico"
Image2:
IncludeBinary "Images\pdf_file.ico"
Image3:
IncludeBinary "Images\Select_List.ico"
Image4:
IncludeBinary "Images\HelpBook.ico"
Image5:
IncludeBinary "Images\Nouveau_01.ico"
Image6:
IncludeBinary "Images\Internet_update.ico"
Image7:
IncludeBinary "Images\Save_file.ico"
Image8:
IncludeBinary "Images\View_folder.ico"
Image10:
IncludeBinary "Images\Indice_TR.JPG"
Image11:
IncludeBinary "Images\Calcul_RIS.JPG"
Image12:
IncludeBinary "Images\Règles.JPG"
Image13:
IncludeBinary "Images\Tab_RIS.JPG"
Image14:
IncludeBinary "Images\PAPS.JPG"
Image15:
IncludeBinary "Images\PE.JPG"
Image16:
IncludeBinary "Images\ME.JPG"
Image17:
IncludeBinary "Images\GE.JPG"
Image18:
IncludeBinary "Images\Activité_rassemblement.JPG"
Image19:
IncludeBinary "Images\Caractéristiques_environnement.JPG"
Image20:
IncludeBinary "Images\Délais_intervention.JPG"
Image21:
IncludeBinary "Images\PAPS sur demande.JPG"
Image22:
IncludeBinary "Images\OpenDir.ico"
Image23:
IncludeBinary "Images\Corbeille.ico"
Image24:
IncludeBinary "Images\Delete02.ico"
Image25:
IncludeBinary "Images\Affichage.ico"
Image26:
IncludeBinary "Images\FileOK.ico"
Image27:
IncludeBinary "Images\Left.ico"
Image28:
IncludeBinary "Images\Home.ico"
Image29:
IncludeBinary "Images\NewFolder.ico"
Image30:
IncludeBinary "Images\Lister.ico"
Image31:
IncludeBinary "Images\Help_2.ico"
Image32:
IncludeBinary "Images\ImagesGallery.ico"
Image33:
IncludeBinary "Images\IMG_marque.ico"
Image34:
IncludeBinary "Images\ImageProperty.ico"
Image35:
IncludeBinary "Images\OpenImage.ico"
;---Images auteur
Image100:
IncludeBinary "Images\IE7.ico"
Image101:
IncludeBinary "Images\Logo_card_3d.jpg"
Image102:
IncludeBinary "Images\MailSend.ico"
;}
EndDataSection
;---Fonts
Global Font0,Font1,Font2
Font0 = LoadFont(0, "Arial", 8,#PB_Font_Bold|#PB_Font_HighQuality)
Font1 = LoadFont(1, "Arial", 8, #PB_Font_Italic)
Font2 = LoadFont(2, "Arial", 9, #PB_Font_Bold|#PB_Font_Italic)
;---------------------------------
;-PROCEDURES
;---------------------------------
Procedure.i CaptureScreenToImage(x.i, y.i, width.i, height.i)
Protected TmpImage.i, srcDC.i, trgDC.i
Protected BMPHandle.i, dm.Devmode
srcDC = CreateDC_("DISPLAY", "", "", dm)
trgDC = CreateCompatibleDC_(srcDC)
BMPHandle = CreateCompatibleBitmap_(srcDC, width, height)
RedrawWindow_(#Null,#Null,#Null,#RDW_INVALIDATE)
SelectObject_( trgDC, BMPHandle)
BitBlt_( trgDC, 0, 0, width, height, srcDC, x, y, #SRCCOPY)
DeleteDC_( trgDC)
ReleaseDC_( BMPHandle, srcDC)
TmpImage.i = CreateImage(#PB_Any, width, height)
StartDrawing(ImageOutput(TmpImage))
DrawImage(BMPHandle, 0, 0) ; ------> (BMPHandle, 0, -22) retire l'entête mais laisse une bande noire, sinon laisser à 0
StopDrawing()
DeleteDC_(trgDC)
ReleaseDC_(BMPHandle, srcDC)
ProcedureReturn TmpImage
EndProcedure
Procedure CaptureJPEG(PhotoFile$)
Protected MyPhoto.i = CaptureScreenToImage(WindowX(#WinMain,#PB_Window_InnerCoordinate), WindowY(#WinMain,#PB_Window_InnerCoordinate), WindowWidth(#WinMain), WindowHeight(#WinMain)-200)
If SaveImage(MyPhoto,PhotoFile$,#PB_ImagePlugin_JPEG,10,24) ; photo jpeg de qualité
ProcedureReturn 1
Else
ProcedureReturn 0
EndIf
EndProcedure
Procedure FileProperty(File$)
verb$ = "properties"
SEI.SHELLEXECUTEINFO
SEI\cbSize = SizeOf(SHELLEXECUTEINFO)
SEI\fMask = #SEE_MASK_NOCLOSEPROCESS | #SEE_MASK_INVOKEIDLIST | #SEE_MASK_FLAG_NO_UI
SEI\lpVerb = @verb$
;File$ = SelFile$
SEI\lpFile = @File$
ShellExecuteEx_(@SEI)
EndProcedure
ProcedureDLL.s GetSpecialFolderLocation(fid.l) ; obtenir le nom des dossiers spéciaux de Windows
If SHGetSpecialFolderLocation_(0, fid, @Dossier_ID) = 0
SpecialFolderLocation.s = Space(#MAX_PATH)
SHGetPathFromIDList_(Dossier_ID, @SpecialFolderLocation)
If SpecialFolderLocation
If Right(SpecialFolderLocation, 1) <> "\"
SpecialFolderLocation + "\"
EndIf
EndIf
EndIf
ProcedureReturn SpecialFolderLocation.s
EndProcedure
Procedure.s Time_Date(Ndate.s) ; afficher une date au format texte
Jour$ = "Lundi,Mardi,Mercredi,Jeudi,Vendredi,Samedi"
Mois$ = "Janvier,Février,Mars,Avril,Mai,Juin,Juillet,Août,Septembre,Octobre,Novembre,Décembre"
If DayOfWeek( ParseDate("%dd/%mm/%yyyy", Ndate)) = 0
Jour$ = "Dimanche"
Else
Jour$ = StringField(Jour$, DayOfWeek( ParseDate("%dd/%mm/%yyyy", Ndate)),",")
EndIf
Mois$ = StringField(Mois$,Month(ParseDate("%dd/%mm/%yyyy", Ndate)),",")
Date.s = Jour$ +" " + FormatDate("%dd ", ParseDate("%dd/%mm/%yyyy", Ndate)) + Mois$ + FormatDate(" %yyyy", ParseDate("%dd/%mm/%yyyy", Ndate))
ProcedureReturn Date
EndProcedure
Structure Characters
c.c[0]
EndStructure
Procedure.s GetDirectoryPart(FileName.s) ; extraire le nom d'un répertoire du chemin complet
Protected Directory.s, i.l
Protected *Directory.Characters
Directory = GetPathPart(FileName)
If Directory
i = Len(Directory) - 2
*Directory = @Directory
While i >= 0 And *Directory\c[i] <> '/' And *Directory\c[i] <> '\'
i - 1
Wend
i + 2
Directory = Mid(Directory, i, Len(Directory) - i)
EndIf
ProcedureReturn Directory
EndProcedure
ProcedureDLL.l DeleteFileToRecycleBin(File.s) ; envoyer un fichier à la corbeille
SHFileOp.SHFILEOPSTRUCT
SHFileOp\pFrom=@File
SHFileOp\wFunc=#FO_DELETE
SHFileOp\fFlags=#FOF_ALLOWUNDO |#FOF_NOCONFIRMATION | #FOF_SILENT
retour=SHFileOperation_(SHFileOp)
If retour=0 : retour=1 : Else : retour =0 : EndIf
ProcedureReturn retour
EndProcedure
Procedure.s x_chop(string.s,left.i,right.i) ; chop a bit of the left and right side of a string
Protected l.i
l = Len(string)
If left+right >= l
string = ""
Else
If right > 0
string = Left(string,l-right)
EndIf
If left > 0
string = Mid(string,left+1,l)
EndIf
EndIf
ProcedureReturn string
EndProcedure
Procedure.s x_getparentpathpart(s.s) ; returns parent folder part of a given path
Protected q.s, p.i
;
; *** get the 'parent' folder from the given string, ie. c:\windows\system32\ would return c:\windows\
;
; notes:
;
; - assume that given string is a path, regardless if it ended on a backslash or not
; - if it cannot find a parent path it returns an empty string
; - might :-) hancle unc paths
;
If Mid(s,2,1) = ":" ; local root
q = Left(s,2)
s = Mid(s,3,#MAX_PATH)
ElseIf Left(s,2) = "\\" ; unc path
p = FindString(s,"\",3)
If p > 0 ; valid unc path
q = Left(s,p)
s = Mid(s,p+1,#MAX_PATH)
Else ; invalid unc path
q = ""
s = ""
EndIf
EndIf
;
If s > "" ; if there is something to find the parent of...
If Right(s,1) = "\" ; strip the trailing backslash to getpathpart() returns one level higher
s = x_chop(s,0,1)
EndIf
If s > "" ; there must be something left, in which case we'll put the leading drive / unc path in front of it
s = q+GetPathPart(s)
EndIf
EndIf
ProcedureReturn s
;
EndProcedure
Procedure NombreElements(Explorateur,TextGadget) ; calcul du nombrede fichiers dans un explorerlist et ajuster singulier ou pluriel
nb = CountGadgetItems(Explorateur)
If nb <= 1
SetGadgetText(TextGadget,Str(CountGadgetItems(Explorateur))+" Fichier")
ElseIf nb > 1
SetGadgetText(TextGadget,Str(CountGadgetItems(Explorateur))+" Fichiers")
EndIf
EndProcedure
Procedure InfoAuteur() ;à propos
If OpenWindow(#Win_InfoAuteur,0,0, 500, 225,"A propos de "+#PROGRAMNAME+" "+#NUMVERSION, #PB_Window_ScreenCentered |#PB_Window_TitleBar)
DisableWindow(#WinMain,#True)
ContainerGadget(#CONTAINER_LOGO, 0,0,500,205,#PB_Container_Flat) ;{
SetGadgetColor(#CONTAINER_LOGO, #PB_Gadget_BackColor, RGB(255, 255, 255))
ImageGadget(#LogoWolfoRan,0,0,247,197,Image101)
ImageGadget(#ConnectSite,300,20,20,20,Image0)
HyperLinkGadget(#LinkID1,325,20,80,20,"WolfoRan.com",RGB(238, 25, 30),#PB_HyperLink_Underline)
GadgetToolTip(#LinkID1,"Se connecter au site web https://wolforan.com")
SetGadgetColor(#LinkID1, #PB_Gadget_BackColor, RGB(255, 255, 255))
ImageGadget(#ConnectMail,300,45,20,20,Image102)
HyperLinkGadget(#LinkID2,325,45,100,20,"Contacter le support",RGB(238, 25, 30),#PB_HyperLink_Underline)
GadgetToolTip(#LinkID2,"Envoyer un e-mail au support")
SetGadgetColor(#LinkID2, #PB_Gadget_BackColor, RGB(255, 255, 255))
TextGadget(#TextInfoAuteur, 260,75,230,90,#PROGRAMNAME+" "+#NUMVERSION+#CR$+"Ce programme est fourni gratuitement et sans garantie, pour un usage personnel ou professionnel."+#CR$+"Pour toute question vous pouvez contacter l'auteur en utilisant l'adresse e-mail ci-dessus."+#CR$+Chr(169)+"WolfoRan LogEditor",#PB_Text_Center)
SetGadgetColor(#TextInfoAuteur, #PB_Gadget_BackColor, RGB(255, 255, 255))
SetGadgetColor(#TextInfoAuteur, #PB_Gadget_FrontColor, RGB(40, 56, 86))
ButtonGadget(#CloseInfoAuteur,260,170,230,25,"Fermer cette fenêtre")
;}
CloseGadgetList()
If CreateStatusBar(#StatusInfo, WindowID(#Win_InfoAuteur))
AddStatusBarField(20)
AddStatusBarField(#PB_Ignore)
StatusBarImage(#StatusInfo,0,Image0,#PB_StatusBar_Raised)
StatusBarText(#StatusInfo,1,#COPYRIGHT,#PB_StatusBar_Raised)
EndIf
EndIf
EndProcedure
Procedure.s Calcul_i() ; calcul de l'indice total
P2$ = GetGadgetText(#Strg_RIS_P2) : P2.f = ValF(P2$) ; récupère une chaîne de nombre flottant et le transforme en nombre flottant
E1$ = GetGadgetText(#Strg_RIS_E1) : E1.f = ValF(E1$)
E2$ = GetGadgetText(#Strg_RIS_E2) : E2.f = ValF(E2$)
i$ = StrF(P2.f + E1.f + E2.f)
If ValF(i$) > 0
Result$ = StrF(ValF(i$),2)
Else
Result$ = ""
EndIf
ProcedureReturn Result$
EndProcedure
Procedure.s Calcul_P() ; calcul de l'indicateur P en fonction de l'indicateur P1 (+ ou - 100000 personnes)
P1$ = GetGadgetText(#Strg_RIS_P1) : P1.q = Val(P1$)
If P1$ <> ""
If P1 <= 100000
P.q = P1.q
ElseIf P1 > 100000
P.q = 100000 + (P1 - 100000)/2
EndIf
Else
P.q = P1.q
EndIf
ProcedureReturn Str(P)
EndProcedure
Procedure Calcul_RIS() ; calcul du ration d'intervenants secouristes ou RIS, déterminant le nombre réel nécessaire.
P$ = Calcul_P() : P.f = ValF(P$)
i$ = GetGadgetText(#Strg_RIS_Vali) : i.f = ValF(i$)
RIS.f = i * (P/1000)
SetGadgetText(#Strg_RIS_Auto,StrF(RIS,3)) ; 3 chiffres après la virgule
If RIS.f = 0
SetGadgetText(#Strg_TypeDPS,"")
SetGadgetState(#DPS_Result, 0)
ElseIf RIS.f <= 0.25 And RIS.f <> 0
SetGadgetText(#Strg_TypeDPS,"Diligence de l'autorité de police compétente")
SetGadgetState(#DPS_Result, Image21) ; image changée/affichée en fonction du résultat mais cela peut être un texte gadget qui change
ElseIf RIS.f > 0.25 And RIS.f <= 1.125
SetGadgetText(#Strg_TypeDPS,"Point d'alerte et de premier secours")
SetGadgetState(#DPS_Result, Image14)
ElseIf RIS.f > 1.125 And RIS.f <= 12
SetGadgetText(#Strg_TypeDPS,"DPS de petite envergure (DPS-PE)")
SetGadgetState(#DPS_Result, Image15)
ElseIf RIS.f > 12 And RIS.f <= 36
SetGadgetText(#Strg_TypeDPS,"DPS de moyenne envergure (DPS-ME)")
SetGadgetState(#DPS_Result, Image16)
ElseIf RIS.f > 36
SetGadgetText(#Strg_TypeDPS,"DPS de grande envergure (DPS-GE)")
SetGadgetState(#DPS_Result, Image17)
EndIf
EndProcedure
Procedure Save_Evaluation(Evalname$) ; enregistrement des résultats de l'évaluation dans un fichier ini (un fichier texte peut faire l'affaire)
If GetGadgetState(#OptP2_1) = 1 ;{
p2$ = "OptP2_1"
ElseIf GetGadgetState(#OptP2_2) = 1
p2$ = "OptP2_2"
ElseIf GetGadgetState(#OptP2_3) = 1
p2$ = "OptP2_3"
ElseIf GetGadgetState(#OptP2_4) = 1
p2$ = "OptP2_4"
EndIf ;}
If GetGadgetState(#OptE1_1) = 1 ;{
e1$ = "OptE1_1"
ElseIf GetGadgetState(#OptE1_2) = 1
e1$ = "OptE1_2"
ElseIf GetGadgetState(#OptE1_3) = 1
e1$ = "OptE1_3"
ElseIf GetGadgetState(#OptE1_4) = 1
e1$ = "OptE1_4"
EndIf ;}
If GetGadgetState(#OptE2_1) = 1 ;{
e2$ = "OptE2_1"
ElseIf GetGadgetState(#OptE2_2) = 1
e2$ = "OptE2_2"
ElseIf GetGadgetState(#OptE2_3) = 1
e2$ = "OptE2_3"
ElseIf GetGadgetState(#OptE2_4) = 1
e2$ = "OptE2_4"
EndIf ;}
p1$ = GetGadgetText(#Strg_RIS_P1)
p$ = GetGadgetText(#Strg_RIS_P)
i$ = GetGadgetText(#Strg_RIS_Vali)
ris$ = GetGadgetText(#Strg_RIS_Auto)
type$ = GetGadgetText(#Strg_TypeDPS)
date$ = Time_Date(FormatDate("%dd/%mm/%yyyy", Date())) +" à "+FormatDate("%hh:%ii:%ss", Date())
If CreatePreferences(RepDPS$ + Evalname$ +".ini") ; création du fichier dans le répertoire créé précédemment
PreferenceGroup("Global")
WritePreferenceString("P2", p2$)
WritePreferenceString("E1", e1$)
WritePreferenceString("E2", e2$)
WritePreferenceString("P1", p1$)
WritePreferenceString("P", p$)
WritePreferenceString("I", i$)
WritePreferenceString("RIS", ris$)
WritePreferenceString("Type", type$)
WritePreferenceString("Date", date$)
ClosePreferences()
ProcedureReturn 1
Else
Erreur = MessageRequester("Erreur!"," Une erreur est survenue, impossible de créer le fichier."+#CRLF$+"Essayez à nouveau.", #MB_ICONERROR|#PB_MessageRequester_YesNo)
If Erreur = 6 ; le bouton Oui
ProcedureReturn 2
Else ; le bouton Non
ProcedureReturn 0
EndIf
EndIf
EndProcedure
Procedure Open_Evaluation(Evalname$) ; ouverture d'un fichier créé précédemment pour affichage dans la grille d'évaluation
If OpenPreferences(Evalname$)<>0
PreferenceGroup("Global")
p2$ = ReadPreferenceString("P2", "")
e1$ = ReadPreferenceString("E1", "")
e2$ = ReadPreferenceString("E2", "")
p1$ = ReadPreferenceString("P1", "")
p$ = ReadPreferenceString("P", "")
i$ = ReadPreferenceString("I", "")
ris$ = ReadPreferenceString("RIS", "")
type$ = ReadPreferenceString("Type", "")
date$ = ReadPreferenceString("Date", "")
If p2$ = "OptP2_1" ;{
SetGadgetState(#OptP2_1, 1)
SetGadgetText(#Strg_RIS_P2, "0.25")
ElseIf p2$ = "OptP2_2"
SetGadgetState(#OptP2_2, 1)
SetGadgetText(#Strg_RIS_P2, "0.30")
ElseIf p2$ = "OptP2_3"
SetGadgetState(#OptP2_3, 1)
SetGadgetText(#Strg_RIS_P2, "0.35")
ElseIf p2$ = "OptP2_4"
SetGadgetState(#OptP2_4, 1)
SetGadgetText(#Strg_RIS_P2, "0.40")
EndIf ;}
If e1$ = "OptE1_1" ;{
SetGadgetState(#OptE1_1, 1)
SetGadgetText(#Strg_RIS_E1, "0.25")
ElseIf e1$ = "OptE1_2"
SetGadgetState(#OptE1_2, 1)
SetGadgetText(#Strg_RIS_E1, "0.30")
ElseIf e1$ = "OptE1_3"
SetGadgetState(#OptE1_3, 1)
SetGadgetText(#Strg_RIS_E1, "0.35")
ElseIf e1$ = "OptE1_4"
SetGadgetState(#OptE1_4, 1)
SetGadgetText(#Strg_RIS_E1, "0.40")
EndIf ;}
If e2$ = "OptE2_1" ;{
SetGadgetState(#OptE2_1, 1)
SetGadgetText(#Strg_RIS_E2, "0.25")
ElseIf e2$ = "OptE2_2"
SetGadgetState(#OptE2_2, 1)
SetGadgetText(#Strg_RIS_E2, "0.30")
ElseIf e2$ = "OptE2_3"
SetGadgetState(#OptE2_3, 1)
SetGadgetText(#Strg_RIS_E2, "0.35")
ElseIf e2$ = "OptE2_4"
SetGadgetState(#OptE2_4, 1)
SetGadgetText(#Strg_RIS_E2, "0.40")
EndIf ;}
SetGadgetText(#Strg_RIS_P1,p1$)
SetGadgetText(#Strg_RIS_P,p$)
SetGadgetText(#Strg_RIS_Vali,i$)
SetGadgetText(#Strg_RIS_Auto,ris$)
SetGadgetText(#Strg_TypeDPS,type$)
If type$ = "Diligence de l'autorité de police compétente" ; en fonction du type de DPS
SetGadgetState(#DPS_Result, Image21) ; on affiche l'image correspondante
ElseIf type$ = "Point d'alerte et de premier secours"
SetGadgetState(#DPS_Result, Image14)
ElseIf type$ = "DPS de petite envergure (DPS-PE)"
SetGadgetState(#DPS_Result, Image15)
ElseIf type$ = "DPS de moyenne envergure (DPS-ME)"
SetGadgetState(#DPS_Result, Image16)
ElseIf type$ = "DPS de grande envergure (DPS-GE)"
SetGadgetState(#DPS_Result, Image17)
EndIf
SetGadgetText(#Txt_GrilleEval, "Cette évaluation a été enregistrée le "+ date$)
ClosePreferences()
ProcedureReturn 1
Else
Erreur = MessageRequester("Erreur!","Impossible d'ouvrir le fichier."+#CRLF$+"Voulez-vous essayer à nouveau ?", #MB_ICONERROR|#PB_MessageRequester_YesNo)
If Erreur = 6 ; le bouton Oui
ProcedureReturn 2
Else ; le bouton Non
ProcedureReturn 0
EndIf
EndIf
EndProcedure
Procedure New_Eval() ; réinitialisation des champs et options
SetGadgetState(#OptP2_1, 1) : SetGadgetText(#Strg_RIS_P2, "0.25")
SetGadgetState(#OptE1_1, 1) : SetGadgetText(#Strg_RIS_E1, "0.25")
SetGadgetState(#OptE2_1, 1) : SetGadgetText(#Strg_RIS_E2, "0.25")
SetGadgetText(#Strg_RIS_P1,"")
SetGadgetText(#Strg_RIS_P,"")
SetGadgetText(#Strg_RIS_Vali,"")
SetGadgetText(#Strg_RIS_Auto,"")
SetGadgetText(#Strg_TypeDPS,"")
SetGadgetState(#DPS_Result, 0)
SetGadgetText(#Txt_GrilleEval,"")
SetGadgetText(#Strg_GrilleEvalOpen,"")
Calcul_i()
EndProcedure
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
Re: Dispositif Prévisionnel de Secours
2ème partie:
@+
Code : Tout sélectionner
;---------------------------------
;-FENETRE PRINCIPALE
;---------------------------------
If OpenWindow(#WinMain,0,0,1014, 718, #PROGRAMNAME, #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_ScreenCentered|#PB_Window_MinimizeGadget)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_O, 1)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_N, 2)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_S, 3)
;AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_I, 4)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_P, 5)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_Q, 7)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_G, 8)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_L, 11)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_R, 12)
AddKeyboardShortcut(#WinMain, #PB_Shortcut_Control | #PB_Shortcut_H, 15)
If CreateImageMenu(0, WindowID(#WinMain)) ;{
MenuTitle("Fichier")
MenuItem( 1, "Ouvrir une évaluation"+Chr(9)+"Ctrl+O", Image8)
MenuItem( 2, "Nouvelle évaluation"+Chr(9)+"Ctrl+N", Image5)
MenuBar()
MenuItem( 3, "Enregistrer l'évaluation courante"+Chr(9)+"Ctrl+S", Image7)
MenuBar()
MenuItem( 5, "Ouvrir une image"+Chr(9)+"Ctrl+P",Image32)
MenuBar()
MenuItem( 7, "Quitter"+Chr(9)+"Ctrl+Q", Image1)
MenuTitle("Edition")
MenuItem(8, "Grille d'évaluation"+Chr(9)+"Ctrl+G",Image2)
MenuItem(9, "Déclaration moins de 5000 personnes",Image2)
MenuItem(10, "Déclaration plus de 5000 personnes",Image2)
MenuTitle("?")
MenuItem(11, "Logigramme procédure de déclaration"+Chr(9)+"Ctrl+L",Image2)
MenuItem(12, "Référentiel National des M.S.C."+Chr(9)+"Ctrl+R",Image2)
MenuBar()
MenuItem(13, "A propos",Image0)
MenuBar()
MenuItem(14, "Vérifier mise à jour",Image6)
MenuBar()
MenuItem(15, "Ouvrir l'aide"+Chr(9)+"Ctrl+H",Image31)
;}
EndIf
;-PANEL
PanelGadget(#PANEL, 2, 2, WindowWidth(#WinMain)-4, WindowHeight(#WinMain)-45) ;{
AddGadgetItem(#PANEL, -1, "Grille d'évaluation du RIS",Image3) ;{
TextGadget(#Txt_GrilleEvalOpen, 10, 7, 60, 15, "Evaluation :")
StringGadget(#Strg_GrilleEvalOpen, 70, 5, 400, 20,"",#PB_String_UpperCase)
GadgetToolTip(#Strg_GrilleEvalOpen,"Nommez cette évaluation si vous souhaitez l'enregistrer")
ButtonGadget(#BTN_SaveGrilleEval,475, 5, 65, 20,"Enregistrer")
GadgetToolTip(#BTN_SaveGrilleEval,"Enregistrer cette évaluation")
ButtonGadget(#BTN_screenshot,545, 5, 50, 20,"Image")
GadgetToolTip(#BTN_screenshot,"Enregistrer une image jpeg de cette évaluation")
TextGadget(#Txt_GrilleEval, 600, 7, 365, 15, "")
FrameGadget(#Frame_P2, 10, 30, 980, 145, "Indicateur P2") ;{
TextGadget(#Txt_P2, 30, 45, 300, 15, "Activité du rassemblement, choisir le niveau")
SetGadgetFont(#Txt_P2,Font0)
TextGadget(#Txt_OptP2_1, 30, 65, 700, 15, "Option 1 = Public assis: spectacle, cérémonie culturelle, réunion publique, restauration, rendez-vous sportif ,,,")
SetGadgetColor(#Txt_OptP2_1, #PB_Gadget_FrontColor, RGB(62, 193, 69))
TextGadget(#Txt_OptP2_2, 30, 85, 700, 15, "Option 2 = Public debout: cérémonie culturelle, réunion publique, restauration, exposition, foire, salon, comice agricole ,,,")
SetGadgetColor(#Txt_OptP2_2, #PB_Gadget_FrontColor, RGB(85, 155, 213))
TextGadget(#Txt_OptP2_3, 30, 105, 700, 15, "Option 3 = Public debout: spectacle avec public statique, fête foraine, rendez-vous sportif avec protection du public par rapport à l'évenement ,,,")
SetGadgetColor(#Txt_OptP2_3, #PB_Gadget_FrontColor, RGB(228, 151, 69))
TextGadget(#Txt_OptP2_4, 30, 125, 700, 45, "Option 4 = Public debout: spectacle avec public dynamique,danse, feria, fête votive, carnaval, spectacle de rue, grande parade, rendez-vous sportif sans protection du public par rapport à l'évenement ,,, Evenement se deroulant sur plusieurs jours avec présence permanente du public: hébergement sur site ou à proximité")
SetGadgetColor(#Txt_OptP2_4, #PB_Gadget_FrontColor, RGB(233, 63, 69))
OptionGadget(#OptP2_1, 780, 65, 150, 20, "Option 1 - Risque Faible")
OptionGadget(#OptP2_2, 780, 85, 150, 20, "Option 2 - Risque Modéré")
OptionGadget(#OptP2_3, 780, 105, 150, 20, "Option 3 - Risque Moyen")
OptionGadget(#OptP2_4, 780, 125, 150, 20, "Option 4 - Risque Elevé")
SetGadgetState(#OptP2_1, 1) ;}
FrameGadget(#Frame_E1, 10, 175, 980, 160, "Indicateur E1") ;{
TextGadget(#Txt_E1, 30, 190, 500, 15, "Caractéristiques de l'environnement ou de l'accessibilité du site, choisir le niveau")
SetGadgetFont(#Txt_E1,Font0)
TextGadget(#Txt_OptE1_1, 30, 210, 700, 15, "Option 1 = Structures permanentes: bâtiment, salle en dur,.. Voies publiques, rues, avec accès dégagés. Conditions d'accès aisés")
SetGadgetColor(#Txt_OptE1_1, #PB_Gadget_FrontColor, RGB(62, 193, 69))
TextGadget(#Txt_OptE1_2, 30, 230, 700, 30, "Option 2 = Structures non permanentes: gradins, tribunes, chapiteaux, ,,,Espaces naturels: surface <= 2 hectares."+ #CRLF$+"Brancardage: 150m < longueur <= 300m. Terrain en pente sur plus de 100m")
SetGadgetColor(#Txt_OptE1_2, #PB_Gadget_FrontColor, RGB(85, 155, 213))
TextGadget(#Txt_OptE1_3, 30, 265, 700, 30, "Option 3 = Espaces naturels: 2 ha < surface <= 5 ha. Brancardage: 300m < longueur <= 600m. Terrain en pente sur plus de 150m."+ #CRLF$+"Autres conditions d'accès difficiles")
SetGadgetColor(#Txt_OptE1_3, #PB_Gadget_FrontColor, RGB(228, 151, 69))
TextGadget(#Txt_OptE1_4, 30, 300, 700, 30, "Option 4 = Espaces naturels: surface > 5 ha. Brancardage: longueur > 600m. Terrain en pente sur plus de 300m. Autres conditions d'accès difficiles: Talus, escaliers, voies d'accès non carrossables, ,,,Progression des secours rendue difficile par la présence du public.")
SetGadgetColor(#Txt_OptE1_4, #PB_Gadget_FrontColor, RGB(233, 63, 69))
OptionGadget(#OptE1_1, 780, 210, 150, 20, "Option 1 - Risque Faible")
OptionGadget(#OptE1_2, 780, 235, 150, 20, "Option 2 - Risque Modéré")
OptionGadget(#OptE1_3, 780, 265, 150, 20, "Option 3 - Risque Moyen")
OptionGadget(#OptE1_4, 780, 295, 150, 20, "Option 4 - Risque Elevé")
SetGadgetState(#OptE1_1, 1) ;}
FrameGadget(#Frame_E2, 10, 335, 490, 150, "Indicateur E2") ;{
TextGadget(#Txt_E2, 30, 355, 400, 15, "Délais d'intervention des secours publics, choisir le délai")
SetGadgetFont(#Txt_E2,Font0)
OptionGadget(#OptE2_1, 30, 380, 300, 20, "Temps inférieur ou égal à 10 minutes")
OptionGadget(#OptE2_2, 30, 405, 300, 20, "Temps supérieur à 10 mn et inférieur ou égal à 20 mn")
OptionGadget(#OptE2_3, 30, 430, 300, 20, "Temps supérieur à 20 mn et inférieur ou égal à 30 mn")
OptionGadget(#OptE2_4, 30, 455, 300, 20, "Temps supérieur à 30 mn")
SetGadgetState(#OptE2_1, 1) ;}
FrameGadget(#Frame_RIS, 505, 335, 485, 150, "Calcul du RIS");{
TextGadget(#Txt_RIS_P2, 530, 357, 85, 15, "Indicateur P2:")
StringGadget(#Strg_RIS_P2, 620, 355, 70, 20, "0.25",#PB_String_ReadOnly)
SetGadgetFont(#Strg_RIS_P2,Font0)
TextGadget(#Txt_RIS_E1, 530, 382, 85, 15, "Indicateur E1:")
StringGadget(#Strg_RIS_E1, 620, 380, 70, 20, "0.25",#PB_String_ReadOnly)
SetGadgetFont(#Strg_RIS_E1,Font0)
TextGadget(#Txt_RIS_E2, 530, 407, 85, 15, "Indicateur E2:")
StringGadget(#Strg_RIS_E2, 620, 405, 70, 20, "0.25",#PB_String_ReadOnly)
SetGadgetFont(#Strg_RIS_E2,Font0)
TextGadget(#Txt_RIS_P1, 530, 432, 85, 15, "Effectif prévu P1:")
StringGadget(#Strg_RIS_P1, 620, 430, 70, 20, "",#PB_String_Numeric)
SetGadgetFont(#Strg_RIS_P1,Font0)
GadgetToolTip(#Strg_RIS_P1,"Saisir l'effectif prévisible déclaré du public, P1 ")
TextGadget(#Txt_RIS_P, 530, 457, 85, 15, "Valeur de P:")
StringGadget(#Strg_RIS_P, 620, 455, 70, 20, "",#PB_String_ReadOnly)
SetGadgetFont(#Strg_RIS_P,Font0)
TextGadget(#Txt_RIS_Vali, 730, 357, 200, 15, "Indice total de risque:")
SetGadgetFont(#Txt_RIS_Vali,Font0)
StringGadget(#Strg_RIS_Vali, 920, 355, 60, 20, "",#PB_String_ReadOnly)
SetGadgetFont(#Strg_RIS_Vali,Font0)
SetGadgetColor(#Strg_RIS_Vali, #PB_Gadget_FrontColor, RGB(221, 49, 69))
TextGadget(#Txt_RIS_Auto, 730, 382, 200, 15, "Ratio d'Intervenants Secouristes:")
SetGadgetFont(#Txt_RIS_Auto,Font0)
StringGadget(#Strg_RIS_Auto, 920, 380, 60, 20, "",#PB_String_ReadOnly)
SetGadgetFont(#Strg_RIS_Auto,Font0)
SetGadgetColor(#Strg_RIS_Auto, #PB_Gadget_FrontColor, RGB(221, 49, 69))
TextGadget(#Txt_TypeDPS, 730, 435, 200, 15, "Type de DPS correspondant:")
SetGadgetFont(#Txt_TypeDPS,Font0)
StringGadget(#Strg_TypeDPS, 730, 455, 250, 20, "",#PB_String_ReadOnly)
SetGadgetColor(#Strg_TypeDPS, #PB_Gadget_FrontColor, RGB(177, 55, 69))
SetGadgetFont(#Strg_TypeDPS,Font0)
;}
TextGadget(#Txt_ResultRIS, 10, 495, 800, 15, "Dispositif prévisionnel de secours à mettre en place en fonction du RIS (déterminé par les données que vous avez saisies)")
SetGadgetFont(#Txt_ResultRIS,Font0)
SetGadgetColor(#Txt_ResultRIS, #PB_Gadget_FrontColor, RGB(90, 120, 213))
ImageGadget(#DPS_Result, 10, 525, 800, 120, 0)
FrameGadget(#Frame_Ref, 820, 490, 170, 150, "Documents PDF") ;{
ButtonGadget(#BTN_Referentiel,825, 505, 160, 25,"Consulter le référentiel national");,#PB_Button_MultiLine)
ButtonGadget(#BTN_Declar_Moins5000,825, 530, 160, 25,"Remplir déclaration - de 5000")
ButtonGadget(#BTN_Declar_Plus5000,825, 555, 160, 25,"Remplir déclaration + de 5000")
ButtonGadget(#BTN_Fiche_Eval,825, 580, 160, 25,"Remplir grille d'évaluation")
ButtonGadget(#BTN_Logigramme,825, 605, 160, 25,"Consulter le logigramme")
;}
;}
AddGadgetItem(#PANEL, -1,"Comment est calculé le RIS", Image4) ;{
ButtonGadget(#BTN_Img10, 10, 10, 140, 20,"Indice total de risque",#PB_Button_Toggle)
ButtonGadget(#BTN_Img11, 150, 10, 140, 20,"Ratio des intervenants",#PB_Button_Toggle)
ButtonGadget(#BTN_Img12, 290, 10, 120, 20,"Règles applicables",#PB_Button_Toggle)
ButtonGadget(#BTN_Img13, 410, 10, 140, 20,"R I S -> Type de DPS",#PB_Button_Toggle)
ButtonGadget(#BTN_ImgActiv, 550, 10, 140, 20,"Activités du rassemblement",#PB_Button_Toggle)
ButtonGadget(#BTN_ImgEnvir, 690, 10, 100, 20,"Environnement",#PB_Button_Toggle)
ButtonGadget(#BTN_ImgDelai, 790, 10, 120, 20,"Délais d'intervention",#PB_Button_Toggle)
ImageGadget(#Img_info, 10, 40, 100, 80, Image10)
;}
AddGadgetItem(#PANEL, -1,"Mes Evaluations", Image8) ;{
ButtonImageGadget(#BtnDisplay, 5, 2, 25, 25, Image25)
GadgetToolTip(#BtnDisplay,"Mode d'affichage")
TextGadget(#Text_Currentfolder,40,5,100,20,"Répertoire courant:")
TextGadget(#Text_namefolder,140,5,600,22,"Mes Evaluations")
SetGadgetFont(#Text_namefolder,Font0)
;-Explorateur
PanelWidth = GetGadgetAttribute(#PANEL, #PB_Panel_ItemWidth)
PanelHeight = GetGadgetAttribute(#PANEL, #PB_Panel_ItemHeight)
ExplorerListGadget(#explorerlist,5, 30, PanelWidth - 10, PanelHeight - 55, RepDPS$ +"*ini",#PB_Explorer_NoDriveRequester | #PB_Explorer_AutoSort|#PB_Explorer_MultiSelect|#PB_Explorer_NoDirectoryChange|#PB_Explorer_NoParentFolder|#PB_Explorer_AlwaysShowSelection|#PB_Explorer_GridLines|#PB_Explorer_FullRowSelect )
SetGadgetItemAttribute(#explorerlist, 0, #PB_Explorer_ColumnWidth, 600, 0) ; nom
SetGadgetItemAttribute(#explorerlist, 0, #PB_Explorer_ColumnWidth, 100, 1) ; taille
SetGadgetItemAttribute(#explorerlist, 0, #PB_Explorer_ColumnWidth, 150, 2) ; type
SetGadgetItemAttribute(#explorerlist, 0, #PB_Explorer_ColumnWidth, 120, 3) ; date
StringGadget(#String_pathfolder,5,PanelHeight - 20,900,20,GetGadgetText(#explorerlist),#PB_String_ReadOnly)
TextGadget(#Text_countitems,905,PanelHeight - 20,95,20,"",#PB_Text_Border|#PB_Text_Center)
;}
AddGadgetItem(#PANEL, -1,"Mes Evaluations Images", Image32) ;{
PanelWidth = GetGadgetAttribute(#PANEL, #PB_Panel_ItemWidth)
PanelHeight = GetGadgetAttribute(#PANEL, #PB_Panel_ItemHeight)
ButtonImageGadget(#BtnDisplayImg, 5, 2, 25, 25, Image25)
GadgetToolTip(#BtnDisplayImg,"Mode d'affichage")
TextGadget(#Text_CurrentfolderImg,40,5,100,20,"Répertoire courant:")
TextGadget(#Text_namefolderImg,140,5,600,22,"Mes Evaluations Images")
SetGadgetFont(#Text_namefolderImg,Font0)
;-Explorateur images
ExplorerListGadget(#explorerlistImg,5, 30, PanelWidth - 10, PanelHeight - 55, RepDPSimg$ +"*jpeg",#PB_Explorer_NoDriveRequester | #PB_Explorer_AutoSort|#PB_Explorer_MultiSelect|#PB_Explorer_NoDirectoryChange|#PB_Explorer_NoParentFolder|#PB_Explorer_AlwaysShowSelection|#PB_Explorer_GridLines|#PB_Explorer_FullRowSelect )
SetGadgetItemAttribute(#explorerlistImg, 0, #PB_Explorer_ColumnWidth, 600, 0) ; nom
SetGadgetItemAttribute(#explorerlistImg, 0, #PB_Explorer_ColumnWidth, 100, 1) ; taille
SetGadgetItemAttribute(#explorerlistImg, 0, #PB_Explorer_ColumnWidth, 100, 2) ; type
SetGadgetItemAttribute(#explorerlistImg, 0, #PB_Explorer_ColumnWidth, 120, 3) ; date
StringGadget(#String_pathfolderImg,5,PanelHeight - 20,900,20,GetGadgetText(#explorerlistImg),#PB_String_ReadOnly)
TextGadget(#Text_countitemsImg,905,PanelHeight - 20,95,20,"",#PB_Text_Border|#PB_Text_Center)
;}
;}
CloseGadgetList()
;-Menus Popup explorer
HPopUpExplorateur = CreatePopupImageMenu(#PopUp_Explorateur) ;{
If HPopUpExplorateur
MenuItem(#Menu_Explorateur_Open,"Ouvrir le fichier",Image26)
MenuBar()
MenuItem(#Menu_Explorateur_Property, "Propriétés",Image30)
MenuBar()
MenuItem(#Menu_Explorateur_Delete,"Supprimer définitivement",Image24)
MenuItem(#Menu_Explorateur_RecycleBin,"Envoyer à la corbeille",Image23)
EndIf
;}
;-Menu affichage
HPopUpDisplayMode = CreatePopupMenu(#PopUp_DisplayMode) ;{
If HPopUpDisplayMode
MenuItem(#Menu_DisplayMode_Large,"Grandes icônes")
MenuItem(#Menu_DisplayMode_Small,"Petites icônes")
MenuItem(#Menu_DisplayMode_Liste,"Mode liste")
MenuItem(#Menu_DisplayMode_Detail,"Détails")
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Detail,1) ; mode détails par défaut
EndIf
;}
;-Menus Popup explorer Img
HPopUpExplorateurImg = CreatePopupImageMenu(#PopUp_ExplorateurImg) ;{
If HPopUpExplorateurImg
MenuItem(#Menu_Explorateur_OpenImg,"Ouvrir l'image",Image35)
MenuBar()
MenuItem(#Menu_Explorateur_PropertyImg, "Propriétés de l'image",Image34)
MenuBar()
MenuItem(#Menu_Explorateur_DeleteImg,"Supprimer définitivement",Image24)
MenuItem(#Menu_Explorateur_RecycleBinImg,"Envoyer à la corbeille",Image23)
EndIf
;}
;-Menu affichage Images
HPopUpDisplayModeImg = CreatePopupMenu(#PopUp_DisplayModeImg) ;{
If HPopUpDisplayModeImg
MenuItem(#Menu_DisplayMode_LargeImg,"Grandes icônes")
MenuItem(#Menu_DisplayMode_SmallImg,"Petites icônes")
MenuItem(#Menu_DisplayMode_ListeImg,"Mode liste")
MenuItem(#Menu_DisplayMode_DetailImg,"Détails")
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_DetailImg,1) ; mode détails par défaut
EndIf
;}
;-Statusbar
If CreateStatusBar(#StatusDPS, WindowID(#WinMain)) ;{
AddStatusBarField(#PB_Ignore)
AddStatusBarField(#PB_Ignore)
AddStatusBarField(25)
EndIf
StatusBarText(#StatusDPS, 0, "Date : "+Time_Date(FormatDate("%dd/%mm/%yyyy", Date())), #PB_StatusBar_Raised)
StatusBarText(#StatusDPS, 1, #PROGRAMNAME +" "+ #COPYRIGHT, #PB_StatusBar_Right | #PB_StatusBar_Raised)
StatusBarImage(#StatusDPS, 2, Image0)
;}
;- mise à jour des infos de base
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetActiveGadget(#Strg_GrilleEvalOpen)
SetGadgetState(#BTN_Img10,1)
NombreElements(#explorerlist,#Text_countitems)
NombreElements(#explorerlistImg,#Text_countitemsImg)
;---------------------------------
;-Boucle d'évènements
;---------------------------------
Repeat
MainEvent = WaitWindowEvent()
Select MainEvent
;---Event Menus
Case #PB_Event_Menu
Select EventMenu()
Case 1 ;{
Evalname$ = OpenFileRequester("Ouvrir une évaluation", RepDPS$, "Fichiers de paramètres|*.ini", 0)
If Evalname$
Open_Evaluation(Evalname$)
SetGadgetText(#Strg_GrilleEvalOpen, GetFilePart(Evalname$,#PB_FileSystem_NoExtension))
SetGadgetState(#PANEL,0)
EndIf ;}
Case 2 ;{
If GetGadgetText(#Strg_GrilleEvalOpen) <> ""
SaveAs = MessageRequester("Enregistrer","Voulez-vous d'abord sauvegarder les données actuelles ? Si oui utilisez la commande { Enregistrer l'évaluation courante }", #MB_ICONQUESTION|#PB_MessageRequester_YesNo)
If SaveAs = 6
ElseIf SaveAs = 7
New_Eval()
EndIf
EndIf ;}
Case 3 ;{
Evalname$ = GetGadgetText(#Strg_GrilleEvalOpen)
If Evalname$
If FileSize(RepDPS$ + Evalname$ +".ini") <> -1
Save = MessageRequester("Enregistrer","Le fichier existe déjà."+#CRLF$+"Voulez-vous le remplacer ?", #MB_ICONQUESTION|#PB_MessageRequester_YesNoCancel)
If Save = 6
If Save_Evaluation(Evalname$) = 1
MessageRequester("Enregistrement","L'évaluation "+Evalname$+" a bien été enregistrée",#MB_ICONINFORMATION|#PB_MessageRequester_Ok)
New_Eval()
EndIf
ElseIf Save = 7
Else
EndIf
ElseIf FileSize(RepDPS$ + Evalname$ +".ini") = -1
If Save_Evaluation(Evalname$) = 1
MessageRequester("Enregistrement","L'évaluation "+Evalname$+" a bien été enregistrée",#MB_ICONINFORMATION|#PB_MessageRequester_Ok)
New_Eval()
EndIf
EndIf
Else
MessageRequester("Enregistrement","Vous devez donner un nom à l'évaluation",#MB_ICONINFORMATION|#PB_MessageRequester_Ok)
SetActiveGadget(#Strg_GrilleEvalOpen)
EndIf ;}
; Case 4
Case 5 ;{
ImgOpen$ = OpenFileRequester("Ouvrir une image d'évaluation",RepDPSimg$,"Fichiers images|*.jpeg", 0)
If ImgOpen$
If ShellExecute_(0,"open",ImgOpen$,0,0,1) = 0
MessageRequester("Image évaluation", "Impossible d'ouvrir l'image sélectionnée!", #MB_ICONEXCLAMATION)
EndIf
EndIf
;}
; Case 6
Case 7 : CloseWindow(#WinMain) : End
Case 8 ;{
If FileSize(Grille_Eval$) <> -1
RunProgram(Grille_Eval$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case 9 ;{
If FileSize(Declar_moins5000$) <> -1
RunProgram(Declar_moins5000$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case 10 ;{
If FileSize(Declar_plus5000$) <> -1
RunProgram(Declar_plus5000$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case 11 ;{
If FileSize(Logigramme$) <> -1
RunProgram(Logigramme$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case 12 ;{
If FileSize(Referentiel$) <> -1
RunProgram(Referentiel$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case 13 : InfoAuteur()
Case 14 ;{
If RunProgram("https://wolforan.com/logiciels-wolforan-logeditor.html") = 0
MessageRequester("Connexion...", "Impossible de se connecter au site. Vérifiez l'état de votre econnexion.", #MB_ICONEXCLAMATION)
EndIf ;}
Case 15 : ShellExecute_(0,"open",GetCurrentDirectory()+"Eval-DPS Help.chm",0,0,1)
Case #Menu_DisplayMode_Large ;{
SetGadgetAttribute(#explorerlist, #PB_Explorer_DisplayMode,#PB_Explorer_LargeIcon)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Large,1)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Small,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Liste,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Detail,0)
;}
Case #Menu_DisplayMode_Small ;{
SetGadgetAttribute(#explorerlist, #PB_Explorer_DisplayMode,#PB_Explorer_SmallIcon)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Large,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Small,1)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Liste,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Detail,0)
;}
Case #Menu_DisplayMode_Liste ;{
SetGadgetAttribute(#explorerlist, #PB_Explorer_DisplayMode,#PB_Explorer_List)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Large,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Small,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Liste,1)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Detail,0)
;}
Case #Menu_DisplayMode_Detail ;{
SetGadgetAttribute(#explorerlist, #PB_Explorer_DisplayMode,#PB_Explorer_Report)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Large,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Small,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Liste,0)
SetMenuItemState(#PopUp_DisplayMode,#Menu_DisplayMode_Detail,1)
;}
Case #Menu_DisplayMode_LargeImg ;{
SetGadgetAttribute(#explorerlistImg, #PB_Explorer_DisplayMode,#PB_Explorer_LargeIcon)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_LargeImg,1)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_SmallImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_ListeImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_DetailImg,0)
;}
Case #Menu_DisplayMode_SmallImg ;{
SetGadgetAttribute(#explorerlistImg, #PB_Explorer_DisplayMode,#PB_Explorer_SmallIcon)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_LargeImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_SmallImg,1)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_ListeImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_DetailImg,0)
;}
Case #Menu_DisplayMode_ListeImg ;{
SetGadgetAttribute(#explorerlistImg, #PB_Explorer_DisplayMode,#PB_Explorer_List)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_LargeImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_SmallImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_ListeImg,1)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_DetailImg,0)
;}
Case #Menu_DisplayMode_DetailImg ;{
SetGadgetAttribute(#explorerlistImg, #PB_Explorer_DisplayMode,#PB_Explorer_Report)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_LargeImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_SmallImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_ListeImg,0)
SetMenuItemState(#PopUp_DisplayModeImg,#Menu_DisplayMode_DetailImg,1)
;}
Case #Menu_Explorateur_Open ;{
If CountGadgetItems(#explorerlist) <> 0
For i = 0 To CountGadgetItems(#explorerlist)-1
If GetGadgetItemState(#explorerlist, i) & #PB_Explorer_Selected
NomFichier$ = GetGadgetText(#explorerlist)+GetGadgetItemText(#explorerlist, i )
Open_Evaluation(NomFichier$)
SetGadgetText(#Strg_GrilleEvalOpen, GetFilePart(NomFichier$,#PB_FileSystem_NoExtension))
SetGadgetState(#PANEL,0)
EndIf
Next i
EndIf ;}
Case #Menu_Explorateur_Delete ;{
If CountGadgetItems(#explorerlist) <>0
Suppr = MessageRequester("SUPPRESSION DEFINITIVE","Êtes vous sûr(e) de vouloir continuer ?"+Chr(13)+"Si oui, vous ne pourrez revenir en arrière !",#MB_ICONEXCLAMATION | #PB_MessageRequester_YesNo)
If Suppr = 6
For i = 0 To CountGadgetItems(#explorerlist)-1
If GetGadgetItemState(#explorerlist, i) & #PB_Explorer_Selected
NomFichier$ = GetGadgetText(#explorerlist)+GetGadgetItemText(#explorerlist, i )
Resultat = FileSize(NomFichier$)
If Resultat <> -1
DeleteFile(NomFichier$ ,#PB_FileSystem_Force)
NombreElements(#explorerlist,#Text_countitems)
EndIf
EndIf
Next i
ElseIf Suppr = 7
EndIf
EndIf
;}
Case #Menu_Explorateur_RecycleBin ;{
For i = 0 To CountGadgetItems(#explorerlist)-1
If GetGadgetItemState(#explorerlist, i) & #PB_Explorer_Selected
NomFichier$ = GetGadgetText(#explorerlist)+GetGadgetItemText(#explorerlist, i )
If FileSize(NomFichier$) <> -1
DeleteFileToRecycleBin(NomFichier$)
EndIf
EndIf
Next i
NombreElements(#explorerlist,#Text_countitems)
;}
Case #Menu_Explorateur_Property ;{
For i = 0 To CountGadgetItems(#explorerlist)-1
If GetGadgetItemState(#explorerlist, i) & #PB_Explorer_Selected
NomFichierSource$ = GetGadgetText(#explorerlist)+GetGadgetItemText(#explorerlist, i )
FileProperty(NomFichierSource$)
EndIf
Next i
;}
Case #Menu_Explorateur_OpenImg ;{
If CountGadgetItems(#explorerlistImg) <>0
For i = 0 To CountGadgetItems(#explorerlistImg)-1
If GetGadgetItemState(#explorerlistImg, i) & #PB_Explorer_Selected
NomFichier$ = GetGadgetText(#explorerlistImg)+GetGadgetItemText(#explorerlistImg, i )
ShellExecute_(0,"open",NomFichier$,0,0,1)
EndIf
Next i
EndIf ;}
Case #Menu_Explorateur_DeleteImg ;{
If CountGadgetItems(#explorerlistImg) <>0
Suppr = MessageRequester("SUPPRESSION DEFINITIVE","Êtes vous sûr(e) de vouloir continuer ?"+Chr(13)+"Si oui, vous ne pourrez revenir en arrière !",#MB_ICONEXCLAMATION | #PB_MessageRequester_YesNo)
If Suppr = 6
For i = 0 To CountGadgetItems(#explorerlistImg)-1
If GetGadgetItemState(#explorerlistImg, i) & #PB_Explorer_Selected
NomFichier$ = GetGadgetText(#explorerlistImg)+GetGadgetItemText(#explorerlistImg, i )
Resultat = FileSize(NomFichier$)
If Resultat <> -1 ;And Resultat <> -2
DeleteFile(NomFichier$ ,#PB_FileSystem_Force)
NombreElements(#explorerlistImg,#Text_countitemsImg)
EndIf
EndIf
Next i
ElseIf Suppr = 7
EndIf
EndIf
;}
Case #Menu_Explorateur_RecycleBinImg ;{
For i = 0 To CountGadgetItems(#explorerlistImg)-1
If GetGadgetItemState(#explorerlistImg, i) & #PB_Explorer_Selected
NomFichier$ = GetGadgetText(#explorerlistImg)+GetGadgetItemText(#explorerlistImg, i )
If FileSize(NomFichier$) <> -1
DeleteFileToRecycleBin(NomFichier$)
EndIf
EndIf
Next i
NombreElements(#explorerlistImg,#Text_countitemsImg)
;}
Case #Menu_Explorateur_PropertyImg ;{
For i = 0 To CountGadgetItems(#explorerlistImg)-1
If GetGadgetItemState(#explorerlistImg, i) & #PB_Explorer_Selected
NomFichierSource$ = GetGadgetText(#explorerlistImg)+GetGadgetItemText(#explorerlistImg, i )
FileProperty(NomFichierSource$)
EndIf
Next i
;}
EndSelect
Case #PB_Event_Gadget
Select EventGadget()
Case #LinkID1 ;{
If RunProgram("https://wolforan.com") = 0
MessageRequester("Connexion...", "Impossible de se connecter au site", #MB_ICONEXCLAMATION)
EndIf
;}
Case #LinkID2 ;{
If RunProgram("mailto:support@wolforan.fr ?subject=Besoin d'aide avec "+#PROGRAMNAME) = 0
MessageRequester("Messagerie...", "Impossible d'utiliser votre messagerie!", #MB_ICONEXCLAMATION)
EndIf
;}
Case #CloseInfoAuteur ;{
CloseWindow(#Win_InfoAuteur)
DisableWindow(#WinMain,#False)
;}
Case #OptP2_1 ;{
SetGadgetText(#Strg_RIS_P2,"0.25")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptP2_2
SetGadgetText(#Strg_RIS_P2,"0.30")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptP2_3
SetGadgetText(#Strg_RIS_P2,"0.35")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptP2_4
SetGadgetText(#Strg_RIS_P2,"0.40")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
;}
Case #OptE1_1 ;{
SetGadgetText(#Strg_RIS_E1,"0.25")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptE1_2
SetGadgetText(#Strg_RIS_E1,"0.30")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptE1_3
SetGadgetText(#Strg_RIS_E1,"0.35")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptE1_4
SetGadgetText(#Strg_RIS_E1,"0.40")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
;}
Case #OptE2_1 ;{
SetGadgetText(#Strg_RIS_E2,"0.25")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptE2_2
SetGadgetText(#Strg_RIS_E2,"0.30")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptE2_3
SetGadgetText(#Strg_RIS_E2,"0.35")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
Case #OptE2_4
SetGadgetText(#Strg_RIS_E2,"0.40")
SetGadgetText(#Strg_RIS_Vali,Calcul_i())
SetGadgetText(#Strg_RIS_P,Calcul_P())
Calcul_RIS()
;}
Case #Strg_RIS_P1
Select EventType()
Case #PB_EventType_Change
Calcul_RIS()
NewP$ = Calcul_P() : SetGadgetText(#Strg_RIS_P,NewP$)
EndSelect
Case #BTN_SaveGrilleEval ;{
Evalname$ = GetGadgetText(#Strg_GrilleEvalOpen)
If Evalname$
If FileSize(RepDPS$ + Evalname$ +".ini") <> -1
Save = MessageRequester("Enregistrer","Le fichier existe déjà."+#CRLF$+"Voulez-vous le remplacer ?", #MB_ICONQUESTION|#PB_MessageRequester_YesNoCancel)
If Save = 6
If Save_Evaluation(Evalname$) = 1
MessageRequester("Enregistrement","L'évaluation "+Evalname$+" a bien été enregistrée",#MB_ICONINFORMATION|#PB_MessageRequester_Ok)
New_Eval()
EndIf
ElseIf Save = 7
Else
EndIf
ElseIf FileSize(RepDPS$ + Evalname$ +".ini") = -1
If Save_Evaluation(Evalname$) = 1
MessageRequester("Enregistrement","L'évaluation "+Evalname$+" a bien été enregistrée",#MB_ICONINFORMATION|#PB_MessageRequester_Ok)
New_Eval()
EndIf
EndIf
Else
MessageRequester("Enregistrement","Vous devez donner un nom à l'évaluation",#MB_ICONINFORMATION|#PB_MessageRequester_Ok)
SetActiveGadget(#Strg_GrilleEvalOpen)
EndIf ;}
Case #Strg_GrilleEvalOpen
Select EventType()
Case #PB_EventType_Change
SetGadgetText(#Txt_GrilleEval,"")
EndSelect
Case #Btn_screenshot ;{
ImgName$ = GetGadgetText(#Strg_GrilleEvalOpen)
If ImgName$ > ""
PhotoFile$ = RepDPSimg$+ImgName$+"_"+FormatDate("%yyyy%mm%dd_%hh%ii%ss",Date())+".jpeg"
If CaptureJPEG(PhotoFile$) <> 0
OpenImg = MessageRequester("Afficher l'image","Souhaitez vous ouvrir l'image créée ?",#PB_MessageRequester_YesNo|#MB_ICONQUESTION)
If OpenImg = 6
ShellExecute_(0,"open",PhotoFile$,0,0,1)
ElseIf OpenImg = 7
EndIf
Else
MessageRequester("Capture d'écran","Une erreur est survenue lors de la création de l'image.",#MB_ICONERROR)
EndIf
ElseIf ImgName$ = ""
SImgName$ = InputRequester("Image","Donnez un nom à l'image","")
If SImgName$ > ""
PhotoFile$ = RepDPSimg$+SImgName$+"_"+FormatDate("%yyyy%mm%dd_%hh%ii%ss",Date())+".jpeg"
If CaptureJPEG(PhotoFile$) <> 0
OpenImg = MessageRequester("Afficher l'image","Souhaitez vous ouvrir l'image créée ?",#PB_MessageRequester_YesNo|#MB_ICONQUESTION)
If OpenImg = 6
ShellExecute_(0,"open",PhotoFile$,0,0,1)
ElseIf OpenImg = 7
EndIf
Else
MessageRequester("Capture d'écran","Une erreur est survenue lors de la création de l'image.",#MB_ICONERROR)
EndIf
EndIf
EndIf
;}
;---Boutons Documents
Case #BTN_Referentiel ;{
If FileSize(Referentiel$) <> -1
RunProgram(Referentiel$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case #BTN_Declar_Moins5000 ;{
If FileSize(Declar_moins5000$) <> -1
RunProgram(Declar_moins5000$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case #BTN_Declar_Plus5000 ;{
If FileSize(Declar_plus5000$) <> -1
RunProgram(Declar_plus5000$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case #BTN_Fiche_Eval ;{
If FileSize(Grille_Eval$) <> -1
RunProgram(Grille_Eval$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
Case #BTN_Logigramme ;{
If FileSize(Logigramme$) <> -1
RunProgram(Logigramme$)
Else
MessageRequester("Erreur", "Le fichier est introuvable.", #MB_ICONEXCLAMATION)
EndIf ;}
;---Boutons Calcul du RIS
Case #BTN_Img10 : SetGadgetState(#Img_info, Image10) ;{
SetGadgetState(#BTN_Img11,0)
SetGadgetState(#BTN_Img12,0)
SetGadgetState(#BTN_Img13,0)
SetGadgetState(#BTN_ImgActiv,0)
SetGadgetState(#BTN_ImgEnvir,0)
SetGadgetState(#BTN_ImgDelai,0) ;}
Case #BTN_Img11 : SetGadgetState(#Img_info, Image11) ;{
SetGadgetState(#BTN_Img10,0)
SetGadgetState(#BTN_Img12,0)
SetGadgetState(#BTN_Img13,0)
SetGadgetState(#BTN_ImgActiv,0)
SetGadgetState(#BTN_ImgEnvir,0)
SetGadgetState(#BTN_ImgDelai,0) ;}
Case #BTN_Img12 : SetGadgetState(#Img_info, Image12) ;{
SetGadgetState(#BTN_Img10,0)
SetGadgetState(#BTN_Img11,0)
SetGadgetState(#BTN_Img13,0)
SetGadgetState(#BTN_ImgActiv,0)
SetGadgetState(#BTN_ImgEnvir,0)
SetGadgetState(#BTN_ImgDelai,0) ;}
Case #BTN_Img13 : SetGadgetState(#Img_info, Image13) ;{
SetGadgetState(#BTN_Img10,0)
SetGadgetState(#BTN_Img11,0)
SetGadgetState(#BTN_Img12,0)
SetGadgetState(#BTN_ImgActiv,0)
SetGadgetState(#BTN_ImgEnvir,0)
SetGadgetState(#BTN_ImgDelai,0) ;}
Case #BTN_ImgActiv : SetGadgetState(#Img_info, Image18) ;{
SetGadgetState(#BTN_Img10,0)
SetGadgetState(#BTN_Img11,0)
SetGadgetState(#BTN_Img12,0)
SetGadgetState(#BTN_Img13,0)
SetGadgetState(#BTN_ImgEnvir,0)
SetGadgetState(#BTN_ImgDelai,0) ;}
Case #BTN_ImgEnvir : SetGadgetState(#Img_info, Image19) ;{
SetGadgetState(#BTN_Img10,0)
SetGadgetState(#BTN_Img11,0)
SetGadgetState(#BTN_Img12,0)
SetGadgetState(#BTN_Img13,0)
SetGadgetState(#BTN_ImgActiv,0)
SetGadgetState(#BTN_ImgDelai,0) ;}
Case #BTN_ImgDelai : SetGadgetState(#Img_info, Image20) ;{
SetGadgetState(#BTN_Img10,0)
SetGadgetState(#BTN_Img11,0)
SetGadgetState(#BTN_Img12,0)
SetGadgetState(#BTN_Img13,0)
SetGadgetState(#BTN_ImgActiv,0)
SetGadgetState(#BTN_ImgEnvir,0) ;}
Case #BtnDisplay
DisplayPopupMenu(#PopUp_DisplayMode,WindowID(#WinMain))
Case #BtnDisplayImg
DisplayPopupMenu(#PopUp_DisplayModeImg,WindowID(#WinMain))
Case #explorerlist ;{
Select EventType()
Case #PB_EventType_RightClick
PosEx = GetGadgetState(#explorerlist)
If PosEX >= 0
Resultat = GetGadgetItemState(#explorerlist, PosEX)
If Resultat & #PB_Explorer_File
filename$ = GetGadgetItemText(#explorerlist,PosEX ,0)
EndIf
EndIf
DisplayPopupMenu(#PopUp_Explorateur,WindowID(#WinMain))
Case #PB_EventType_LeftDoubleClick
PosEx = GetGadgetState(#explorerlist)
If PosEX >= 0
Resultat = GetGadgetItemState(#explorerlist, PosEX)
If Resultat & #PB_Explorer_File
Evalname$ = GetGadgetItemText(#explorerlist,PosEX ,0)
Open_Evaluation(RepDPS$ + Evalname$)
SetGadgetText(#Strg_GrilleEvalOpen, GetFilePart(Evalname$,#PB_FileSystem_NoExtension))
SetGadgetState(#PANEL, 0)
EndIf
EndIf
Case #PB_EventType_Change
Path$ = GetGadgetText(#explorerlist)
SetGadgetText(#String_pathfolder,Path$)
DirUp.s = x_getparentpathpart(Path$)
NombreElements(#explorerlist,#Text_countitems)
PosEx = GetGadgetState(#explorerlist)
If PosEX >= 0
Resultat = GetGadgetItemState(#explorerlist, PosEX)
If Resultat & #PB_Explorer_Directory
name$ = GetGadgetItemText(#explorerlist,PosEX ,0)
SetGadgetText(#Text_namefolder, name$)
EndIf
EndIf
EndSelect ;}
Case #explorerlistImg ;{
Select EventType()
Case #PB_EventType_RightClick ;{
PosEx = GetGadgetState(#explorerlistImg)
If PosEX >= 0
Resultat = GetGadgetItemState(#explorerlistImg, PosEX)
If Resultat & #PB_Explorer_File
filename$ = GetGadgetItemText(#explorerlistImg,PosEX ,0)
EndIf
EndIf
DisplayPopupMenu(#PopUp_ExplorateurImg,WindowID(#WinMain)) ;}
Case #PB_EventType_LeftDoubleClick ;{
PosEx = GetGadgetState(#explorerlistImg)
If PosEX >= 0
Resultat = GetGadgetItemState(#explorerlistImg, PosEX)
If Resultat & #PB_Explorer_File
Imagename$ = GetGadgetItemText(#explorerlistImg,PosEX ,0)
ShellExecute_(0,"open",RepDPSimg$ + Imagename$,0,0,1)
EndIf
EndIf ;}
Case #PB_EventType_Change ;{
Path$ = GetGadgetText(#explorerlistImg)
SetGadgetText(#String_pathfolderImg,Path$)
DirUp.s = x_getparentpathpart(Path$)
NombreElements(#explorerlistImg,#Text_countitemsImg)
PosEx = GetGadgetState(#explorerlistImg)
If PosEX >= 0
Resultat = GetGadgetItemState(#explorerlistImg, PosEX)
If Resultat & #PB_Explorer_Directory
name$ = GetGadgetItemText(#explorerlistImg,PosEX ,0)
SetGadgetText(#Text_namefolderImg, name$)
EndIf
EndIf ;}
EndSelect ;}
EndSelect
;---Fermeture
Case #PB_Event_CloseWindow
Select EventWindow()
Case #WinMain
End
EndSelect
EndSelect
ForEver
EndIf
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
- Kwai chang caine
- Messages : 6962
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Dispositif Prévisionnel de Secours
Merci du partage
Re: Dispositif Prévisionnel de Secours
Salut kCC,
C'est avec plaisir, un petit log très... basic
C'est avec plaisir, un petit log très... basic
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
- Philippe_GEORGES
- Messages : 119
- Inscription : mer. 28/janv./2009 13:28
Re: Dispositif Prévisionnel de Secours
Merci pour le code source. Je vais voir la compilation sur Mac. Ca devrait marcher !!
Merci pour le partage.
Merci pour le partage.
Philippe GEORGES
"La simplicité est la sophistication suprême" (De Vinci)
assistance informatique, création de logiciels
georges.informatique@gmail.com
"La simplicité est la sophistication suprême" (De Vinci)
assistance informatique, création de logiciels
georges.informatique@gmail.com