Comment Déclarer un Fichier Settings :
Dans un module, par exemple qui est tout à fait approprié pour ça :Dans MSettings, module pour les Settings, par exemple.
1
2
3
4
5
6
7
8
| PUBLIC AppSettings AS Settings '<--------------------------' déclaration du fichier en question
PUBLIC SUB InitDefaultPath() '<---------------------------' initialise les settings
' AppSettings = New Settings '<--------------------------' création d'un dossier settings, par défaut AppSettings = NEW Settings(User.Home &/ ".config/gambas3" &/ Application.name & Application.Version & ".conf")
END
|
La ligne commentée déclare un dossier settings par défaut, ici : User.Home &/ ".config/gambas3" &/ Application.name & ".conf" '<----' Nom et endroit.
Si vous désirez le personnaliser, vous le pouvez, comme, ici : User.Home &/ ".config/gambas3" &/ Application.name & Application.Version & ".conf" '<----' Nom, endroit et numéro de rôle.
La seule différence c'est dans l'appel aux settings, dans la déclaration par défaut vous pouvez utiliser le mot Settings directement, Gambas fera le tri sinon il vous faut mentionner le nom que vous avez donnez aux settings, dans votre déclaration, pour tout travail sur ceux-ci, de la sorte (MSettings étant, dans l'exemple, le Module des settings) :
1
2
3
| IF MSettings.AppSettings.Exist(...'<-------------------------' Utilisation du nom de la déclaration, ici AppSettings ' Et, non pas : IF Settings.Exist(...'<---------------------------------' Utilisation du terme générique Settings
|
Exemple de Définition, d'enregistrement de certains critères, dans le Module.1
2
3
4
5
6
7
8
9
10
| PUBLIC SUB StorePolice() '<------------------------------' store la police choisie
DIM Headline AS STRING
HeadLine = "Police" AppSettings[HeadLine &/ "pFont"] = MGlobal.sFCValue
AppSettings.Save '<--------------------------------' action sur les settings, ici, sauvegarde
END
|
Exemple de Définition, de rappel de certains critères préalablement enregistrés, dans le Module.1
2
3
4
5
6
7
8
| PUBLIC SUB RestorePolice() '<-----------------------------' Restore la police choisie
DIM HeadLine AS STRING
HeadLine = "Police" MGlobal.sFCValue = AppSettings[HeadLine &/ "pFont", 1]
END
|
Idem enregistrement.1
2
3
4
5
6
7
8
9
10
11
12
13
14
| PUBLIC SUB StoreClockSettings() '<------------------------' Parametres
DIM Headline AS STRING
HeadLine = "Clock" '<---------------------------------' Sets the Headline AppSettings[HeadLine & "/Design"] = MGlobal.iDesign AppSettings[HeadLine & "/Drap"] = MGlobal.iDrap AppSettings[HeadLine & "/Trotteuse"] = MGlobal.bTrotteuse AppSettings[HeadLine & "/bAuto"] = MGlobal.bAuto AppSettings[HeadLine & "/bDoux"] = MGlobal.bDoux AppSettings.Save
END
|
Idem Rappel1
2
3
4
5
6
7
8
9
10
11
12
| PUBLIC SUB RestoreClockSettings() '<---------------------' Parameters are i.e. stored at home/.config/Gambas3/CHorloge.conf
DIM HeadLine AS STRING
HeadLine = "Clock" '<----------------------------------' Sets the headline MGlobal.iDesign = AppSettings[HeadLine & "/Design", 1] '<--' Load design MGlobal.iDrap = AppSettings[HeadLine & "/Drap", 1] '<-----' choix option affichage date ou logo MGlobal.bTrotteuse = AppSettings[HeadLine & "/Trotteuse", 1] '<----' choix trotteuse ou pas MGlobal.bAuto = AppSettings[HeadLine & "/bAuto", 1] '<-' choix Auto ou pas MGlobal.bDoux = AppSettings[HeadLine & "/bDoux", 1] '<-' chronomètre
END
|
Idem Enregistrement.1
2
3
4
5
6
7
8
9
10
11
12
| PUBLIC SUB StoreFormPosition(Formulaire AS Window) '<----' Stores the last postition of the window
WITH Formulaire AppSettings[.name & "/left"] = .left AppSettings[.name & "/top"] = .top AppSettings[.name & "/width"] = .width AppSettings[.name & "/height"] = .Height END WITH
AppSettings.Save
END
|
Idem Rappel.1
2
3
4
5
6
7
8
9
10
| PUBLIC SUB RestoreFormPosition(Formulaire AS Window) '<----' Restores the last postition of the window
WITH Formulaire .left = AppSettings[.name & "/left", .left] .top = AppSettings[.name & "/top", .top] .width = AppSettings[.name & "/width", .width] .Height = AppSettings[.name & "/height", .height] END WITH
END
|
Dans une procédure,(ailleurs que dans le Module) pour initialiser le dossier settings :1
| MSettings.InitDefaultPath '<---------------------------' Initializing the default path for storing settings
|
Dans une procédure (ailleurs que dans le Module) pour rappeler les settings :1
2
3
| MSettings.RestoreFormPosition(ME) '<------------------' Restore Form positions MSettings.RestoreClockSettings() '<---------------------' Restore clock design MSettings.RestorePolice()
|
Dans une procédure (ailleurs que dans le Module) pour enregistrer les settings :1
2
| MSettings.StoreClockSettings() MSettings.StorePolice()
|
====================
Navigation :
<-- Liens du Wiki : <--<-- Accueil du WIKI : <-- ====================
Documentation :
====================