#NoTrayIcon
#Include include/encoding.ahk
#Include include/Fonctions.ahk
#Include include/ImageButton.ahk
#Include include/xpath.ahk
Version = 0.2 beta
;Menus
Menu, MenuFichier, Add, Prévisualiser, Previsualiser
Menu, MenuFichier, Add, Actualiser, Actualiser
Menu, MenuFichier, Add, Options, Options
Menu, MenuFichier, Add, Quitter, GuiClose
Menu, MenuAide, Add, A Propos, APropos
;Menu, MenuAide, Add, Aide, Aide
Menu, MenuAuto, Add, Dossier Apps, ImportAppsDir
;Menu, MenuAuto, Add, FramaLauncher, ImportFL
;Menu, MenuAuto, Add, ASuite, ImportASuite
Menu, BarreMenu, Add, Fichier, :MenuFichier
Menu, BarreMenu, Add, Importation, :MenuAuto
Menu, BarreMenu, Add, ?, :MenuAide
Gui, Menu, BarreMenu
;Onglets
Gui, Add, GroupBox, x6 y10 w670 h150 , Onglets
Gui, Add, ListBox, x16 y30 w180 h130 vListeOnglets gListeOnglets,
Gui, Add, Button, x204 y30 w24 h24 hwndAjouterOnglet gAjouterOnglet
Gui, Add, Button, x204 y60 w24 h24 hwndSupprimerOnglet gSupprimerOnglet
Gui, Add, Button, x204 y90 w24 h24 hwndMonterOnglet gMonterOnglet
Gui, Add, Button, x204 y120 w24 h24 hwndDescendreOnglet gDescendreOnglet
Gui, Add, Text, x236 y35 w30 h20 , Nom:
Gui, Add, Edit, x296 y30 w340 h20 vNomOnglet,
Gui, Add, Text, x236 y65 w40 h20 , Fichier:
Gui, Add, Edit, x296 y60 w340 h20 vFichierOnglet,
Gui, Add, Button, x646 y60 w20 h20 gParcourirFichierOnglet, ...
Gui, Add, Text, x236 y95 w30 h20 , Icône:
Gui, Add, Button, x646 y95 w20 h20 gParcourirIcoOnglet, ...
Gui, Add, Edit, x296 y90 w340 h20 vIcoOnglet,
Gui, Add, Button, x306 y120 w130 h30 gEnregistrerOnglet, Enregistrer
Gui, Add, Button, x466 y120 w130 h30 gReinitialiserOnglet, Réinitialiser
;Applications
Gui, Add, GroupBox, x6 y170 w670 h300 , Applications
Gui, Add, ListBox, x16 y190 w180 h238 vListeApps gListeApps,
Gui, Add, Button, x204 y190 w24 h24 hwndAjouterApp gAjouterApp
Gui, Add, Button, x204 y220 w24 h24 hwndSupprimerApp gSupprimerApp
Gui, Add, Button, x204 y250 w24 h24 hwndMonterApp gMonterApp
Gui, Add, Button, x204 y280 w24 h24 hwndDescendreApp gDescendreApp
Gui, Add, Button, x204 y310 w24 h24 hwndChangerOngletApp gChangerOngletApp
Gui, Add, Button, x204 y340 w24 h24 hwndAjouterSep gAjouterSep, ------
Gui, Add, Text, x236 y195 w30 h20 vTextNomApp, Nom:
Gui, Add, Edit, x296 y190 w340 h20 vNomApp,
Gui, Add, Text, x236 y225 w70 h20 vTextLchApp, Lanceur:
Gui, Add, Edit, x296 y220 w340 h20 vLchApp,
Gui, Add, Button, x646 y220 w20 h20 vParcourirLchApp gParcourirLchApp, ...
Gui, Add, Text, x236 y255 w70 h20 vTextExeApp, Exécutable:
Gui, Add, Edit, x296 y250 w340 h20 vExeApp,
Gui, Add, Button, x646 y250 w20 h20 vParcourirExeApp gParcourirExeApp, ...
Gui, Add, Text, x236 y285 w70 h20 vTextDossierApp, Dossier:
Gui, Add, Edit, x296 y280 w340 h20 vDossierApp,
Gui, Add, Button, x646 y280 w20 h20 vParcourirDossierApp gParcourirDossierApp, ...
Gui, Add, Text, x236 y315 w70 h20 vTextParametresApp, Paramètres:
Gui, Add, Edit, x296 y310 w340 h20 vParametresApp,
Gui, Add, Text, x236 y345 w60 h20 vTextIcoApp, Icône:
Gui, Add, Edit, x296 y340 w340 h20 vIcoApp,
Gui, Add, Button, x646 y340 w20 h20 vParcourirIcoApp gParcourirIcoApp, ...
Gui, Add, Text, x236 y375 w100 h20 vTextApp, Application:
Gui, Add, Edit, x296 y370 w340 h20 vApp,
Gui, Add, Text, x236 y405 w110 h20 vTextDescApp, Description:
Gui, Add, Edit, x296 y400 w340 h20 vDescApp,
Gui, Add, Button, x306 y430 w130 h30 gEnregistrerApp, Enregistrer
Gui, Add, Button, x466 y430 w130 h30 gReinitialiserApp, Réinitialiser
ILButton(AjouterOnglet, "img/ajouter.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(SupprimerOnglet, "img/supprimer.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(MonterOnglet, "img/monter.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(DescendreOnglet, "img/descendre.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(AjouterApp, "img/ajouter.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(SupprimerApp, "img/supprimer.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(MonterApp, "img/monter.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(DescendreApp, "img/descendre.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
ILButton(ChangerOngletApp, "img/changeronglet.ico:0|:1|:2|:3|:4|:5", 16, 16, 4)
Gui, Show, Center h485 w690, FramaKioskBuilder %Version%
IniRead, Framakiosk, FramaKioskBuilder.ini, FramaKioskBuilder, FramaKioskPath
IniRead, AppsDirectory, FramaKioskBuilder.ini, FramaKioskBuilder, AppsPath
IniRead, MajXml, FramaKioskBuilder.ini, FramaKioskBuilder, MajXml
IfEqual, Framakiosk, ERROR, GoSub, Options
Else IfEqual, Framakiosk,, GoSub, Options
Else IfEqual, AppsDirectory, ERROR, GoSub, Options
Else IfEqual, AppsDirectory,, GoSub, Options
Else IfEqual, MajXml, ERROR, GoSub, Options
Else IfExist, %Framakiosk%/index.html
{}
Else
{
MsgBox, Erreur: Le fichier %Framakiosk%/index.html n'existe pas.
GoSub, Options
}
FileCopy, defaut/defaut.png, %Framakiosk%/img/defaut.png, 0
FileCopy, defaut/defaut.exe, %Framakiosk%/defaut.exe, 0
FileCopy, defaut/defaut.lch, %Framakiosk%/lch/defaut.lch, 0
FileCopy, defaut/defaut.html, %Framakiosk%/defaut.html, 0
FileRead, index, %Framakiosk%/index.html
ImportOnglets(index)
Return
;*************************************************************************************;
;**************************************** Menus **************************************;
;*************************************************************************************;
Previsualiser:
IfWinExist, Framakey : des logiciels libres sur votre support amovible ! - Mozilla Firefox
{
ControlSend,, ^r, Framakey : des logiciels libres sur votre support amovible ! - Mozilla Firefox
IfWinNotActive, Framakey : des logiciels libres sur votre support amovible ! - Mozilla Firefox
{
WinActivate, Framakey : des logiciels libres sur votre support amovible ! - Mozilla Firefox
}
Run, %Framakiosk%/../FramaKiosk.exe, %Framakiosk%/../
}
Else
Return
Actualiser:
IfExist, %Framakiosk%/index.html
{
FileRead, index, %Framakiosk%/index.html
}
Else
{
MsgBox, Erreur: Le fichier %Framakiosk%/index.html n'existe pas.
ExitApp
}
GuiControl,, ListeOnglets, |
ImportOnglets(index)
Return
ImportAppsDir:
IfExist, %Framakiosk%/index.html
{
FileRead, index, %Framakiosk%/index.html
SupprimerOnglets(Framakiosk, index)
ImportAppsDirectory(Framakiosk, AppsDirectory)
}
Else
{
MsgBox, Erreur: Le fichier %Framakiosk%/index.html n'existe pas.
ExitApp
}
Return
;*************************************************************************************;
;*************************************** Onglets *************************************;
;*************************************************************************************;
ListeOnglets:
IfExist, %Framakiosk%/index.html
{
FileRead, index, %Framakiosk%/index.html
}
Else
{
MsgBox, Erreur: Le fichier %Framakiosk%/index.html n'existe pas.
ExitApp
}
GuiControlGet, ListeOnglets
InfosOnglet(Framakiosk, index, ListeOnglets)
return
SupprimerOnglet:
GuiControlGet, ListeOnglets
IfEqual, ListeOnglets,, Return
SupprimerOnglet(Framakiosk, ListeOnglets)
return
MonterOnglet:
GuiControlGet, ListeOnglets
IfEqual, ListeOnglets,, Return
MonterOnglet(Framakiosk, ListeOnglets)
return
DescendreOnglet:
GuiControlGet, ListeOnglets
IfEqual, ListeOnglets,, Return
DescendreOnglet(Framakiosk, ListeOnglets)
return
EnregistrerOnglet:
GuiControlGet, ListeOnglets
IfEqual, ListeOnglets,
{
MsgBox, stop
Return
}
Else
{
nomansi := Ansi2UTF8(ListeOnglets)
pattern =
%nomansi%
found := RegExMatch(index, pattern, result)
if (found > 0)
{
fichier := UTF82Ansi(result2)
ico := UTF82Ansi(result3)
}
}
GuiControlGet, NomOnglet
IfEqual, NomOnglet,
{
NomOnglet = %ListeOnglet%
}
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,
{
FichierOnglet = %fichier%
}
GuiControlGet, IcoOnglet
IfEqual, IcoOnglet,
{
IcoOnglet = %ico%
}
ModifierOnglet(Framakiosk, ListeOnglets, fichier, FichierOnglet, NomOnglet, IcoOnglet)
Return
ReinitialiserOnglet:
GuiControlGet, ListeOnglets
IfEqual, ListeOnglets,
{
Return
}
FileRead, index, %Framakiosk%/index.html
InfosOnglet(Framakiosk, index, ListeOnglets)
return
;*************************************************************************************;
;************************************ Applications ***********************************;
;*************************************************************************************;
ListeApps:
GuiControlGet, FichierOnglet
GuiControlGet, ListeApps
IfEqual, FichierOnglet,
{
Return
}
IfExist, %Framakiosk%/%FichierOnglet%
{
FileRead, page, %Framakiosk%/%FichierOnglet%
InfosApp(Framakiosk, page, ListeApps)
}
Else
{
MsgBox, Erreur: Le fichier %Framakiosk%/%FichierOnglet% n'existe pas.
}
return
SupprimerApp:
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,, Return
GuiControlGet, ListeApps
SupprimerApplication(Framakiosk, FichierOnglet, ListeApps)
return
MonterApp:
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,, Return
GuiControlGet, ListeApps
IfEqual, ListeApps,, Return
MonterApplication(Framakiosk, FichierOnglet, ListeApps)
return
DescendreApp:
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,, Return
GuiControlGet, ListeApps
IfEqual, ListeApps,, Return
DescendreApplication(Framakiosk, FichierOnglet, ListeApps)
return
AjouterSep:
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,, Return
GuiControlGet, ListeApps
AjouterSeparateur(Framakiosk, FichierOnglet, ListeApps)
Return
EnregistrerApp:
ModifierApplication(Framakiosk)
IfEqual, MajXml, 1
{
GuiControlGet, App
IfEqual, App,, Return
GuiControlGet, ListeOnglets
IfEqual, ListeOnglets,, Return
GuiControlGet, NomApp
IfEqual, NomApp,
{
NomApp = %App%
}
GuiControlGet, DescApp
GuiControlGet, IcoApp
IfEqual, IcoApp,
{
}
Else
{
path = %AppsDirectory%/Portable%App%/Portable%App%Kiosk/
xmlico := CopyIcoTo(Framakiosk, IcoApp, path)
}
PApp = Portable%App%
MsgBox, ModifierInfosXmlApp(%AppsDirectory%, %PApp%, %ListeOnglets%, %xmlico%, %NomApp%, %DescApp%)
ModifierInfosXmlApp(AppsDirectory, PApp, ListeOnglets, xmlico, NomApp, Desc)
}
return
ReinitialiserApp:
GuiControlGet, FichierOnglet
GuiControlGet, ListeApps
IfEqual, FichierOnglet,
{
Return
}
IfExist, %Framakiosk%/%FichierOnglet%
{
FileRead, page, %Framakiosk%/%FichierOnglet%
InfosApp(Framakiosk, page, ListeApps)
}
Else
{
MsgBox, Erreur: Le fichier %Framakiosk%/%FichierOnglet% n'existe pas.
}
return
;*************************************************************************************;
;********************************** Boutons Parcourir ********************************;
;*************************************************************************************;
ParcourirFichierOnglet:
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,
{
path = %A_ScriptDir%/%Framakiosk%
}
Else
{
path = %Framakiosk%/%FichierOnglet%
}
StringReplace, path, path, /, \, 1
FileSelectFile, FichierOnglet, 0, %path%, Sectionnez le fichier de l'onglet, Document html (*.html; *.htm)
result := RegExReplace(FichierOnglet, ".*\\FramaKiosk\\FramaKioskPages\\(.*)", "$1")
StringReplace, result, result, \, /, 1
IfEqual, result,
{
}
Else
{
GuiControl,, FichierOnglet, %result%
}
Return
ParcourirIcoOnglet:
GuiControlGet, IcoOnglet
IfEqual, IcoOnglet,
{
path = %A_ScriptDir%/%Framakiosk%/img
}
Else
{
path = %Framakiosk%/%IcoOnglet%
}
StringReplace, path, path, /, \, 1
FileSelectFile, ico, 0, %path%, Sectionnez l'icone, Image (*.png; *.jpg; *.jpeg; *.jpe; *.gif; *.bmp)
result := RegExReplace(ico, ".*\\FramaKiosk\\FramaKioskPages\\(.*)", "$1")
StringReplace, result, result, \, /, 1
IfEqual, result,
{
}
Else
{
GuiControl,, IcoOnglet, %result%
}
Return
ParcourirLchApp:
GuiControlGet, LchApp
IfEqual, LchApp,
{
path = %A_ScriptDir%/%Framakiosk%
}
Else
{
path = %Framakiosk%/%LchApp%
}
StringReplace, path, path, /, \, 1
FileSelectFile, LchApp, 0, %path%, Sectionnez le lanceur, Lanceur (*.lch)
result := RegExReplace(FichierOnglet, ".*\\FramaKiosk\\FramaKioskPages\\(.*)", "$1")
StringReplace, result, result, \, /, 1
IfEqual, result,
{
}
Else
{
GuiControl,, LchApp, %result%
}
Return
ParcourirExeApp:
path = %A_ScriptDir%/..
StringReplace, path, path, /, \, 1
FileSelectFile, exe, 0, %path%, Sectionnez l'exécutable, Exécutable (*.exe)
pattern = .*(\\Framakey\\|\\Apps\\|\\Data\\)(.*)
replace = $${cwd}\..\..\..$1$2
exe := RegexReplace(exe, pattern, replace)
IfEqual, exe,, Return
GuiControl,, ExeApp, %exe%
GuiControlGet, DossierApp
IfEqual, DossierApp,
{
found := RegExMatch(exe, "(.*)(/|\\)[^/\\]*exe", result)
if (found > 0)
{
GuiControl,, DossierApp, %result1%
}
}
Return
ParcourirDossierApp:
path = %A_ScriptDir%/..
StringReplace, path, path, /, \, 1
FileSelectFolder, dossier, *%path%, 1, Sectionnez le dossier
pattern = .*(\\Framakey\\|\\Apps\\|\\Data\\)(.*)
replace = $${cwd}\..\..\..$1$2
dossier := RegexReplace(dossier, pattern, replace)
IfEqual, dossier,, Return
GuiControl,, DossierApp, %dossier%
Return
ParcourirIcoApp:
GuiControlGet, IcoApp
IfEqual, IcoApp,
{
path = %A_ScriptDir%/%Framakiosk%/img
}
Else
{
path = %Framakiosk%/%IcoApp%
}
StringReplace, path, path, /, \, 1
FileSelectFile, ico, 0, %path%, Sectionnez l'icone, Image (*.png; *.jpg; *.jpeg; *.jpe; *.gif; *.bmp)
result := RegExReplace(ico, ".*\\FramaKiosk\\FramaKioskPages\\(.*)", "$1")
StringReplace, result, result, \, /, 1
IfEqual, result,
{
}
Else
{
GuiControl,, IcoApp, %result%
}
Return
GuiClose:
ExitApp
;*************************************************************************************;
;************************** Changer l'onglet de l'application ************************;
;*************************************************************************************;
ChangerOngletApp:
GuiControlGet, ListeApps
IfEqual, ListeApps,, Return
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,, Return
liste =
found = 0
Loop
{
pattern =
([^<]*)
found := RegExMatch(index, pattern, result, found + 1)
if (found > 0)
{
nom := UTF82Ansi(result4)
liste = %liste%%nom%|
}
Else
{
Break
}
}
Gui, 6:+owner
Gui +Disabled
Gui, 6:Add, Text, x20 y10 w100 h20, Nouvel onglet:
Gui, 6:Add, ListBox, x10 y30 w280 h140 vNewOngletApp, %liste%
Gui, 6:Add, Button, x10 y180 w130 h30 gNewChangerOnglet, Changer
Gui, 6:Add, Button, x160 y180 w130 h30 gNewAnnulerChangerOnglet, Annuler
; Generated using SmartGUI Creator 4.0
Gui, 6:Show, Center h220 w300, FramaBuilder: Changer d'onglet
Return
NewChangerOnglet:
GuiControlGet, NewOngletApp
IfEqual, NewOngletApp,, Return
nomansi := Ansi2UTF8(NewOngletApp)
pattern =
%nomansi%
found := RegExMatch(index, pattern, result)
if (found > 0)
{
ico := UTF82Ansi(result3)
fichier := UTF82Ansi(result2)
IfEqual, fichier, %FichierOnglet%, Return
IfExist, %Framakiosk%/%FichierOnglet%
{
IfExist, %Framakiosk%/%fichier%
{
FileRead, page, %Framakiosk%/%FichierOnglet%
page := UTF82Ansi(page)
found := RegExMatch(ListeApps, "-------- (.*) --------", resultnom)
if (found > 0)
{
nom2 := resultnom1
}
Else
{
nom2 := ListeApps
}
pattern = ((\s*%ListeApps%
)|(%nom2%
))
found := RegExMatch(page, pattern, result)
if (found > 0)
{
ifEqual, result2,
{
StringReplace, newpage, page, %result1%
pattern =
replace =
`n`t%result1%
}
Else
{
pattern =
\s*%result1%\s*
newpage := RegExReplace(page, pattern)
pattern =
replace =
`n`t
`n`t`t%result1%`n`t
}
newpage := Ansi2UTF8(newpage)
FileDelete, %Framakiosk%/%FichierOnglet%
FileAppend, %newpage%, %Framakiosk%/%FichierOnglet%
FileRead, page2, %Framakiosk%/%fichier%
page2 := UTF82Ansi(page2)
result := RegExReplace(page2, pattern, replace)
result := Ansi2UTF8(result)
FileDelete, %Framakiosk%/%fichier%
FileAppend, %result%, %Framakiosk%/%fichier%
}
}
Else
{
MsgBox, L'onglet "%NewOngletApp%" n'existe pas.
}
}
Else
{
MsgBox, L'onglet "%FichierOnglet%" n'existe pas.
}
}
Else
{
MsgBox, L'onglet "%NewOngletApp%" n'existe pas.
}
GuiControl,, ListeApps, |
ImportApps(page)
NewAnnulerChangerOnglet:
6GuiClose:
Gui, 1:-Disabled
Gui Destroy
Return
;*************************************************************************************;
;********************************** Ajouter un onglet ********************************;
;*************************************************************************************;
AjouterOnglet:
GuiControlGet, ListeOnglets
Gui, 5:+owner
Gui +Disabled
Gui, 5:Add, Text, x10 y15 w70 h20 vTextNomNewOnglet, Nom:
Gui, 5:Add, Edit, x70 y10 w340 h20 vNomNewOnglet, Onglet
Gui, 5:Add, Button, x160 y40 w130 h30 gEnregistrerNewOnglet, Ajouter
; Generated using SmartGUI Creator 4.0
Gui, 5:Show, Center h80 w450, FramaBuilder: Ajouter un onglet
Return
EnregistrerNewOnglet:
GuiControlGet, NomNewOnglet
IfEqual, NomNewOnglet,, Return
fichier := StringMin(NomNewOnglet)
fichier = %fichier%.html
IfExist %Framakiosk%/%fichier%
{
MsgBox, 4, FramaKioskBuilder, Le fichier %Framakiosk%/%fichier% existe déjà; voulez vous utiliser un autre fichier?
IfMsgBox, No
{
fichier = %Framakiosk%/%fichier%
}
Else
{
path = %A_ScriptDir%/%Framakiosk%/%fichier%
StringReplace, path, path, /, \, 1
FileSelectFile, result, 8, %path%, Nouveau fichier .html, Document html (*.html)
result := RegExReplace(result, ".*\\FramaKiosk\\FramaKioskPages\\(.*)", "$1")
StringReplace, result, result, \, /, 1
IfEqual, result,
{
}
Else
{
fichier = %result%
}
}
}
FileCopy, defaut/defaut.html, %Framakiosk%/%fichier%
AjouterOnglet(Framakiosk, ListeOnglets, NomNewOnglet, fichier)
GuiControl,, ListeOnglets, |
ImportOnglets(page)
5GuiClose:
Gui, 1:-Disabled
Gui Destroy
Return
;*************************************************************************************;
;******************************* Ajouter une application *****************************;
;*************************************************************************************;
AjouterApp:
GuiControlGet, FichierOnglet
IfEqual, FichierOnglet,, Return
GuiControlGet, ListeApps
Gui, 4:+owner
Gui +Disabled
Gui, 4:Add, Text, x10 y15 w70 h20 vTextExeNewApp, Exécutable:
Gui, 4:Add, Edit, x70 y10 w340 h20 vExeNewApp,
Gui, 4:Add, Button, x420 y10 w20 h20 vParcourirExeNewApp gParcourirExeNewApp, ...
Gui, 4:Add, Button, x160 y40 w130 h30 gEnregistrerNewApp, Ajouter
; Generated using SmartGUI Creator 4.0
Gui, 4:Show, Center h80 w450, FramaBuilder: Ajouter une application
Return
ParcourirExeNewApp:
path = %A_ScriptDir%/%AppsDirectory%
StringReplace, path, path, /, \, 1
FileSelectFile, exe, 0, %path%, Selectionnez l'exécutable, Exécutable (*.exe)
pattern = .*(\\Framakey\\|\\Apps\\|\\Data\\)(.*)
replace = $${cwd}\..\..\..$1$2
exe := RegexReplace(exe, pattern, replace)
IfEqual, exe,, Return
GuiControl,, ExeNewApp, %exe%
Return
EnregistrerNewApp:
GuiControlGet, ExeNewApp
IfEqual, ExeNewApp,
{
MsgBox, Le chemin de l'exécutable n'est pas défini.
Return
}
found := RegExMatch(ExeNewApp, ".*\\([^\\]*)\.exe", result)
if (found > 0)
{
PApp = %result1%
chemin = %AppsDirectory%/%PApp%/%PApp%Kiosk/%PApp%.xml
IfExist, %chemin%
{
xpath_load(xml, chemin)
ico := xpath(xml, "/portablesoft/logo/small/text()")
ico = %AppsDirectory%/%PApp%/%PApp%Kiosk/%ico%
ico := CopyIco(Framakiosk, ico)
nom := xpath(xml, "/portablesoft/desc/subtitle/text()")
desc := xpath(xml, "/portablesoft/desc/content/text()")
}
}
IfEqual, ico,
{
ico = img/defaut.png
}
IfEqual, nom,
{
nom = Nouveau Lanceur
}
IfEqual, desc,
{
desc = Description
}
IfExist lch/apps/%PApp%.lch
{
MsgBox, 4, Le fichier lch/apps/%PApp%.lch existe déjà, voulez vous utiliser un autre fichier?
IfMsgBox, No
{
lch = lch/apps/%PApp%.lch
}
Else
{
path = %A_ScriptDir%/%Framakiosk%/lch/apps/%PApp%.lch
StringReplace, path, path, /, \, 1
FileSelectFile, lch, 8, %path%, Nouveau fichier .lch, Lanceur (*.lch)
}
}
Else
{
lch = lch/apps/%PApp%.lch
}
found := RegExMatch(ExeNewApp, "(.*)(/|\\)[^/\\]*exe", result)
if (found > 0)
{
dossier = %result1%
}
StringReplace, App, PApp, Portable
parametres =
AjouterApplication(Framakiosk, FichierOnglet, ListeApps, lch, App, desc, ico, nom, ExeNewApp, dossier, parametres)
lch =
nom =
desc =
ico =
App =
ExeNewApp =
dossier =
parametres =
PApp =
GuiControl,, ListeApps, |
ImportApps(page)
4GuiClose:
Gui, 1:-Disabled
Gui Destroy
Return
;*************************************************************************************;
;************************************* Préférences ***********************************;
;*************************************************************************************;
Options:
IfEqual Framakiosk,
{
FKc = ../../Framakey/FramaKiosk/FramaKioskPages
}
Else IfEqual Framakiosk, ERROR
{
FKc = ../../Framakey/FramaKiosk/FramaKioskPages
}
Else
{
FKc = %Framakiosk%
}
IfEqual AppsDirectory,
{
Ac = ../
}
Else IfEqual AppsDirectory, ERROR
{
Ac = ../
}
Else
{
Ac = %AppsDirectory%
}
IfEqual AppsDirectory,
{
Mx = 1
}
Else IfEqual AppsDirectory, ERROR
{
Mx = 1
}
Else
{
Mx = %MajXml%
}
Gui, 2:+owner
Gui +Disabled
Gui, 2:Add, Text, x16 y10 w230 h20, Chemin relatif vers le dossier FramaKioskPages:
Gui, 2:Add, Edit, x6 y30 w430 h20 vPrefFramakiosk, %FKc%
Gui, 2:Add, Button, x446 y30 w20 h20 vPrefParcourirFramakiosk gPrefParcourirFramakiosk, ...
Gui, 2:Add, Text, x16 y60 w250 h20, Chemin relatif vers le dossier Apps:
Gui, 2:Add, Edit, x6 y80 w430 h20 vPrefApps, %Ac%
Gui, 2:Add, Button, x446 y80 w20 h20 vPrefParcourirApps gPrefParcourirApps, ...
Gui, 2:Add, CheckBox, x16 y120 w450 h20 vPrefMajXml Checked%Mc%, Mettre à jour automatiquement les fichiers Portable...Kiosk/Portable....xml
Gui, 2:Add, Button, x116 y150 w100 h30 vPrefEnregistrer gPrefEnregistrer, Enregistrer
Gui, 2:Add, Button, x256 y150 w100 h30 vPrefAnnuler gPrefAnnuler, Annuler
; Generated using SmartGUI Creator 4.0
Gui, 2:Show, Center h192 w477, FramaKioskBuilder: Préférences
return
PrefParcourirFramakiosk:
return
PrefParcourirApps:
return
PrefEnregistrer:
GuiControlGet, PrefFramakiosk
IfEqual, PrefFramakiosk,
{
PrefFramakiosk = %Framakiosk%
}
IfExist, %PrefFramakiosk%/index.html
{
IniWrite, %PrefFramakiosk%, FramaKioskBuilder.ini, FramaKioskBuilder, FramaKioskPath
Framakiosk =¨%PrefFramakiosk%
GuiControlGet, PrefApps
IfEqual, PrefApps,
{}
Else
{
IniWrite, %PrefApps%, FramaKioskBuilder.ini, FramaKioskBuilder, AppsPath
AppsDirectory = %PrefApps%
}
GuiControlGet, PrefMajXml
IniWrite, %PrefMajXml%, FramaKioskBuilder.ini, FramaKioskBuilder, MajXml
MajXml = %PrefMajXml%
FileCopy, defaut/defaut.png, %Framakiosk%/img/defaut.png, 0
FileCopy, defaut/defaut.exe, %Framakiosk%/defaut.exe, 0
FileCopy, defaut/defaut.lch, %Framakiosk%/lch/defaut.lch, 0
FileCopy, defaut/defaut.html, %Framakiosk%/defaut.html, 0
}
Else
{
MsgBox, Erreur: Le fichier %PrefFramakiosk%/index.html n'existe pas.
Return
}
PrefAnnuler:
2GuiClose:
Gui, 1:-Disabled
Gui Destroy
Return
;*************************************************************************************;
;************************************** À Propos *************************************;
;*************************************************************************************;
APropos:
Gui, 3:+owner
Gui +Disabled
Gui, 3:Add, Picture, x67 y20 w366 h73 , D:\FramaKioskBuilderdev\img\FramaKioskBuilder.png
Gui, 3:Add, Text, x0 y95 w500 Center vAuteur, Fait par Roromis pour la Framakey
Gui, 3:Add, Text, x0 y110 w500 Center vCopy, Copyright ©2005-2009 Framakey
Gui, 3:Add, Text, x0 y125 w500 Center cBlue vFramakey gFramakey, http://www.framakey.org
Gui, 3:Add, Text, x25 y150 w450 Center vNote, Ce programme est un logiciel libre, vous pouvez le redistribuer et/ou le modifier au titre des clauses de la Licence Publique Générale GNU, telle que publiée par la Free Software Foundation, soit la version 3 de la Licence.
Gui, 3:Add, Text, x25 y200 w450 Center vDisclaimer, Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE, sans même une garantie implicite de COMMERCIABILITE ou DE CONFORMITE A UNE UTILISATION PARTICULIERE. Voir la Licence Publique Générale GNU pour plus de détails. Vous devriez avoir reçu un exemplaire de la Licence Publique Générale GNU avec ce programme.
Gui, 3:Add, Text, x25 y265 w450 Center cBlue vLicence gLicence, licence.txt
Gui, 3:Add, Text, x25 y280 w450 Center, L'auteur décline toutes responsabilités quant à l'utilisation qui pourrait en être faite.
Gui, 3:Add, Text, x25 y315 w450 Center vForum, En cas de problèmes, posez vos questions sur le forum:
Gui, 3:Add, Text, x25 y330 w450 Center cBlue vLienForum gLienForum, http://forum.framasoft.org/viewtopic.php?f=73&t=32280
Gui, 3:Add, Text, x25 y365 w450 Center vLogo, Logo réalisé par Roromis, à partir de la "Framanouille" créée par Ayo et du logo Framakey.
; Generated using SmartGUI Creator 4.0
Gui, 3:Show, Center w500 h400, FramaKioskBuilder: À Propos
Return
Licence:
Run, notepad.exe licence.txt
Return
Framakey:
Run, http://www.framakey.org
Return
LienForum:
Run, http://forum.framasoft.org/viewtopic.php?f=73&t=32280
Return
3GuiClose:
Gui, 1:-Disabled
Gui Destroy
Return