Page 1 sur 1
Mar 06/08/2013 - Fonctions
Posté : mar. 6 août 2013 12:55
par Xavier
Mar 06/08/2013 - Fonctions
La fonction
Occupation du processeur fonctionne enfin correctement dans tous les modes configurables :
CPUPanel.png
Les résultats incohérents qui étaient obtenus jusqu'à présent étaient dus au fait que le module utilisé (
AdCpuUsage) renvoie 0% s'il est appelé trop rapidement après un appel précédent.
Désormais XT4 ne fait qu'un seul appel par demi-seconde et utilise les données récupérées pour calculer le taux de chaque processeur présent, selon l'option choisie.
Il a fallu trouver quelque chose pour stimuler le processeur, et après avoir lancé quelques scans d'antivirus, c'est un
simulateur de charge CPU qui a été utilisé.
Mar 06/08/2013 - Fonctions
Posté : mar. 6 août 2013 15:19
par Xavier
Date et heure
Les panneaux de la date et de l'heure sont de retour, leur largeur est désormais calculée dynamiquement à partir de la taille de la chaîne maximale qu'ils peuvent afficher dans la police en cours, ce qui devrait éviter les problèmes de panneaux trop petits sur les ordinateurs n'ayant pas la police standard (
Tahoma) que XT4 utilise.
DateTimePanels.png
Re: Mar 06/08/2013 - Fonctions
Posté : mar. 6 août 2013 15:47
par Frederik
Cool, ça continue de bien avancer.
Pour l'occupation processeur, ça signifie qu'on pourra choisir entre afficher une seule icône globale et/ou afficher une icône par core ?
Re: Mar 06/08/2013 - Fonctions
Posté : mar. 6 août 2013 16:59
par Xavier
FBu a écrit :Cool, ça continue de bien avancer.
Pour l'occupation processeur, ça signifie qu'on pourra choisir entre afficher une seule icône globale et/ou afficher une icône par core ?
Yes !
CPUOptions.png
Mar 06/08/2013 - Fonctions
Posté : mar. 6 août 2013 17:02
par Xavier
Traduction dynamique
La traduction dynamique fonctionne à nouveau.
Contrairement à XT3 où il fallait ajouter un appel à la méthode de traduction de chaque fenêtre, il y a désormais une boucle sur les XDs (les objets de paramétrage qui correspondent à chaque outil), puis un appel à distance via cette nouvelle procédure magique (c'est une sorte de polymorphisme forcé) :
Code : Tout sélectionner
//------------------------------------------------------------------------------
// XT400 / Call_Procedure
//------------------------------------------------------------------------------
procedure Call_Procedure(Form_Pointer: Pointer; Procedure_Name: String);
type
Method_Call = procedure of Object;
var
Method_Record: TMethod;
begin
// Log
XSK_Log('Code', 'XKernel', 'Call_Procedure');
// Préparations
Method_Record.Data := Form_Pointer;
Method_Record.Code := TForm(Form_Pointer).MethodAddress(Procedure_Name);
// Appel
if Method_Record.Code <> Nil
then Method_Call(Method_Record);
end;