Accueil > > > ALIASES POUR FASCILITER L'USAGE DE MDX (FRAMEWORK)
ALIASES POUR FASCILITER L'USAGE DE MDX (FRAMEWORK)
Information sur la source
Description
il s'agit de petites aliases mdx pour fasciliter son implentation dans certains dialogs la premiere: mdx.set.linebar elle requier comme controle hote une "list" usage: mdx.set.linebar DIALOG_NAME id:min-max-default:mode explication: - DIALOG_NAME = nom du dialog ($dname) - id = id du controle à cibler - min = nombre minimum de l'amplitude numerique selectionable - max = nombre maximum de cette amplitude - default = nombre pré-selectioné lors de la creation de l'id - mode = par defaut l'aliase créé une bare horizontale, il est possible de spécifier que l'on veut une bare verticale avec le mode "v" (ce paramètre est optionel) exemple: mdx.set.linebar $dname 1:0-100,2:20-30,45:7-12,8:0-100-50,40,1-5:v transo formera les id: 1 2 45 8 40 et 1 le 1 seras vertical pour recuperer les resultat: $gettok($did(id).seltext,1,32) la seconde aliase: wbs.mdx.table elle sers a créé une sorte de tableau en grille syntaxe: wbs.mdx.table $dname ID section:taille exemple: wbs.mdx.table $dname 5 nom:40 prenom:80 age:30 va créer un tableau a 3 colones de 40, 80 et 30 pixels de large dans la list portant l'id 5 lors de la recuperation via $did(id).seltext les colones sont séparée par des chr(9) (a vous d'utiliser $gettok pour filtrer) l'aliase wdll retourne le chemin de la dll à son format court et relatif, l'aliase wbs.relat retourne le chemin relatif d'un fichier (depuis mirc) mgettok permet les imbrication de $gettok (toujours utile lors de l'usage de mdx) les fonctions utilisant mdx DOIVENT toutes etre précédées de 'mdxinit' a l'appel du dialog (une seule fois) installation: le code requiers: mdx.dll , views.mdx et bars.mdx dans un dossier enfant de $mircdir
Source
- alias mdx.set.linebar {
- ;syntaxe: $dname id:min-max,id:min-max-defaut (optionel) :mode (optionel)
- ;exemple:$dname 1:0-100,2:20-30,45:7-12,8:0-100-50,40,1-5:v
- ;modes disponibles: [v] : bare verticalle (par defaut horizontal)
- ;retours: 1 si $dname manque, 2 si dialog es introuvable, 0 en cas de réusite
- var %param = $2- , %i 1 , %n = $numtok(%param,44) , %dname = $1
- if (!%dname) return 1
- if (!$dialog(%dname).title) return 2
- while (%i <= %n) {
- var %curent = $gettok(%param,%i,44) , %id = $gettok(%curent,1,58) , %min = $mgettok(%curent,2,58,1,45) , %max = $mgettok(%curent,2,58,2,45) , %defaut = $mgettok(%curent,2,58,3,45)
- if (!%defaut) var %defaut = 0
- mdx SetControlMDX %dname %id TrackBar autoticks $iif($gettok(%curent,3,58) == v, vertical) > $wdll(bars.mdx)
- mdx SetBorderStyle %dname %id windowedge
- did -i %dname %id 1 params %defaut %min %max * * * * 14
- did -i %dname %id 1 tickfreq 1
- inc %i
- }
- return 0
- }
- alias wbs.mdx.table {
- ;syntaxe: wbs.mdx.table $dname ID section:taille
- var %dname = $iif($1 == x,$dname,$1)
- if (!$isid) && ($dialog(%dname)) && ($3) {
- mdx SetControlMDX %dname $2 ListView report single grid > $wdll(views.mdx)
- var %i 1
- while ($gettok($3-,%i,32)) {
- var %tmp = $ifmatch , %size = %size $gettok(%tmp,2,58) , %text = %text $chr(9) $gettok(%tmp,1,58)
- inc %i
- }
- did -i %dname $2 1 headerdims %size
- did -i %dname $2 1 headertext $mid($strip($gettok(%text,1-,9)) $chr(9),2-)
- }
- }
- alias mdx {
- var %mdx = $wdll(mdx.dll)
- if (%mdx) dll $shortfn(%mdx) $1-
- else echo -s mdx.dll introuvable
- }
- alias mdxinit {
- if ($1) var %dname = $1-
- else var %dname = $dname
- if (!%dname) { echo -a erreur: Mdxinit: nom du dialog manquant ! | halt }
- else {
- mdx SetMircVersion $version
- mdx MarkDialog %dname
- return OK
- }
- }
- alias wdll {
- ;pour interdir l'usage d'une dll la stipuler dans un fichier Exepts.ini (se touvant dans le dossier du script) dans la section [DLLS] nom_de_la_dll=1
- if ($1) {
- if ($readini($scriptdirExepts.ini,DLLS,$1) == 1) { return }
- else {
- if ($hget(wbs.dlls,$1)) { return $wbs.relat($shortfn($ifmatch)) }
- var %wdll = $wbsdir $+ dlls\ $+ $1
- if (!$exists(%wdll)) {
- var %wdll = $findfile($mircdir,$ifmatch,1)
- if (%wdll) { hadd -m wbs.dlls $nopath(%wdll) %wdll }
- }
- if (%wdll) { return $wbs.relat($shortfn($ifmatch)) }
- }
- }
- }
- alias -l wbs.relat {
- if ($gettok($$1,1- $+ $numtok($mircdir,92),92) $+ \ == $mircdir) {
- if ($gettok($$1,$calc($numtok($mircdir,92) +1),92)) { return $gettok($$1,$calc($numtok($mircdir,92) +1) $+ -,92) }
- }
- else return $$1
- }
- alias mgettok {
- ;permet l'imbrication de plusieurs gettok: $gettok($1-,a,c,b,d) == $mgettok($1-,a,b,c,d)
- if ($0) && ($isid) {
- var %n = $calc(($0 -1) / 2)
- if ($chr(46) !isin %n) {
- var %i 1 , %tok = 3 , %id = 2
- while (%i <= %n) {
- var %tmp = $eval($+($,%tok),2)
- if (%tmp !isnum) var %tmp = $asc(%tmp)
- if (!%data) var %data = $gettok($1,$eval($+($,%id),2),%tmp)
- else var %data = $gettok(%data,$eval($+($,%id),2),%tmp)
- inc %id 2
- inc %tok 2
- inc %i
- }
- return %data
- }
- else echo -s Error: mgettok syntaxe/parametres invalides
- }
- }
alias mdx.set.linebar {
;syntaxe: $dname id:min-max,id:min-max-defaut (optionel) :mode (optionel)
;exemple:$dname 1:0-100,2:20-30,45:7-12,8:0-100-50,40,1-5:v
;modes disponibles: [v] : bare verticalle (par defaut horizontal)
;retours: 1 si $dname manque, 2 si dialog es introuvable, 0 en cas de réusite
var %param = $2- , %i 1 , %n = $numtok(%param,44) , %dname = $1
if (!%dname) return 1
if (!$dialog(%dname).title) return 2
while (%i <= %n) {
var %curent = $gettok(%param,%i,44) , %id = $gettok(%curent,1,58) , %min = $mgettok(%curent,2,58,1,45) , %max = $mgettok(%curent,2,58,2,45) , %defaut = $mgettok(%curent,2,58,3,45)
if (!%defaut) var %defaut = 0
mdx SetControlMDX %dname %id TrackBar autoticks $iif($gettok(%curent,3,58) == v, vertical) > $wdll(bars.mdx)
mdx SetBorderStyle %dname %id windowedge
did -i %dname %id 1 params %defaut %min %max * * * * 14
did -i %dname %id 1 tickfreq 1
inc %i
}
return 0
}
alias wbs.mdx.table {
;syntaxe: wbs.mdx.table $dname ID section:taille
var %dname = $iif($1 == x,$dname,$1)
if (!$isid) && ($dialog(%dname)) && ($3) {
mdx SetControlMDX %dname $2 ListView report single grid > $wdll(views.mdx)
var %i 1
while ($gettok($3-,%i,32)) {
var %tmp = $ifmatch , %size = %size $gettok(%tmp,2,58) , %text = %text $chr(9) $gettok(%tmp,1,58)
inc %i
}
did -i %dname $2 1 headerdims %size
did -i %dname $2 1 headertext $mid($strip($gettok(%text,1-,9)) $chr(9),2-)
}
}
alias mdx {
var %mdx = $wdll(mdx.dll)
if (%mdx) dll $shortfn(%mdx) $1-
else echo -s mdx.dll introuvable
}
alias mdxinit {
if ($1) var %dname = $1-
else var %dname = $dname
if (!%dname) { echo -a erreur: Mdxinit: nom du dialog manquant ! | halt }
else {
mdx SetMircVersion $version
mdx MarkDialog %dname
return OK
}
}
alias wdll {
;pour interdir l'usage d'une dll la stipuler dans un fichier Exepts.ini (se touvant dans le dossier du script) dans la section [DLLS] nom_de_la_dll=1
if ($1) {
if ($readini($scriptdirExepts.ini,DLLS,$1) == 1) { return }
else {
if ($hget(wbs.dlls,$1)) { return $wbs.relat($shortfn($ifmatch)) }
var %wdll = $wbsdir $+ dlls\ $+ $1
if (!$exists(%wdll)) {
var %wdll = $findfile($mircdir,$ifmatch,1)
if (%wdll) { hadd -m wbs.dlls $nopath(%wdll) %wdll }
}
if (%wdll) { return $wbs.relat($shortfn($ifmatch)) }
}
}
}
alias -l wbs.relat {
if ($gettok($$1,1- $+ $numtok($mircdir,92),92) $+ \ == $mircdir) {
if ($gettok($$1,$calc($numtok($mircdir,92) +1),92)) { return $gettok($$1,$calc($numtok($mircdir,92) +1) $+ -,92) }
}
else return $$1
}
alias mgettok {
;permet l'imbrication de plusieurs gettok: $gettok($1-,a,c,b,d) == $mgettok($1-,a,b,c,d)
if ($0) && ($isid) {
var %n = $calc(($0 -1) / 2)
if ($chr(46) !isin %n) {
var %i 1 , %tok = 3 , %id = 2
while (%i <= %n) {
var %tmp = $eval($+($,%tok),2)
if (%tmp !isnum) var %tmp = $asc(%tmp)
if (!%data) var %data = $gettok($1,$eval($+($,%id),2),%tmp)
else var %data = $gettok(%data,$eval($+($,%id),2),%tmp)
inc %id 2
inc %tok 2
inc %i
}
return %data
}
else echo -s Error: mgettok syntaxe/parametres invalides
}
}
Conclusion
voila j'espere avoir été assé clair et que ces aliases vous seront utiles
Historique
- 12 juin 2008 19:17:39 :
- petit oubli
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
La dll mdx [ par koko ]
Quelqu'un pourrait m'expliquer comment l'utiliser car la je comprend rien... j'ai un fichier d'aide en francais mais quand je mets quelques choses ca
trackbar avec mdx [ par Calak ]
J'ai beau essayer, analyser l'exemple donné avec la dll, je n'arrive pas à faire une trackbar...Est ce quelqu'un pourait m'expliquer comment faire svp
MDX.dll [ par jfk69 ]
quelqu'un aurait il un tutorial bien fait pour utiliser mdx.dll ?et plus particulierement la fonction qui permet d'ajouter des icones (comme dans l'ex
mdx.dll [ par MecModeKiller ]
on *:dialog:dname:init:*:{ dll mdx.dll SetMircVersion $version dll mdx.dll MarkDialog $dname }Vous pouvez changer l'icone du dialogue, en rempl
fichier .mdx (explication!!) [ par DarkFox ]
The ShaDowtt d'abors merci de repondre si vous connaissez la réponse et salut (ken mm)il me semble que les fichier en .Mdx sont censé modifier l'appar
avec/sans mdx ?? [ par DrAzZiK69 ]
voyez vous jve améliorer mon media player et pi pr le boutton pausejve ke kan kkin clic dessus et bah il reste cliqué et kan il reclic ca fait resume,
Besoin d'aide pour BARS.MDX c urgent ;) merci. [ par hackoustik ]
jespere que sa va apparaitre sur le forum de script, car dur de trouver comment poster un message.bon alorsjai creer une liste dans le dialog et dans
recherche commande pr mdx [ par hermes93 ]
Voila je cherche une commande avec mdx.dllqui me permet de metre en couleur dans un dialog les "tab" (bouton edit text) je c modifier toutsa mais quan
mdx toolbar [ par Fayen$ ]
Yopkelkun pourrais plz me montrer un example de toolbar avec les dll suivant ktools.dll mdx.dll packe g rien piger a ce truc :/si possible comment con
Connection mdx [ par Fayen$ ]
lubon voila chuis oqp sur une toolbar, 'quelqu'un sait m'expliquer' comment on donne la commande connect,disconnet en cliquant sur le meme icone crée
|
Derniers Blogs
TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : SYSTEM CENTER SERVICE MANAGER 2012 VUE D'ENSEMBLETECHDAYS PARIS 2012 : SYSTEM CENTER SERVICE MANAGER 2012 VUE D'ENSEMBLE par ROMELARD Fabrice
Speakers: Julien Marechal, Gautier Confiant, Sébastien MEYER La session débute par le positionnement de la solution System Center par rapport aux concepts d'organisation ITIL. Le portail du catalogue de se...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : PLEINIèRE SECOND JOURTECHDAYS PARIS 2012 : PLEINIèRE SECOND JOUR par ROMELARD Fabrice
Après une première journée dédiée aux développeurs, cette seconde journée est dédiée au monde des entreprises et de ses applications. Ainsi, cette pleinière est dédiée à faire un 360 de l'évolution des applications Business aux demandes ac...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : RETOUR D'EXPéRIENCE SUR LA MISE EN PLACE D'UN CLOUD PRIVéTECHDAYS PARIS 2012 : RETOUR D'EXPéRIENCE SUR LA MISE EN PLACE D'UN CLOUD PRIVé par ROMELARD Fabrice
Speaker : Guillaume Rochette Cette session est dédiée à fournir le retour sur la mise en place d'un cloud privé (IaaS) par Osiatis pour son compte ou celui de ses clients. Ce projet s'est déroulé sur 4 mois et a permis de faire évoluer...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : COMMENT SHAREPOINT A SAUVé MES TECHDAYSTECHDAYS PARIS 2012 : COMMENT SHAREPOINT A SAUVé MES TECHDAYS par ROMELARD Fabrice
Speakers : Lionel Limozin et Alain Marty La session commence par une découverte de SharePoint à travers la mise en place d'un environnement SharePoint pour la gestion des Sessions animées par BeWise. Le besoin est très ba...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : AIDERE : AIDE par Nico26000
Cliquez pour lire la suite par Nico26000 RE : AIDERE : AIDE par WorldDMT
Cliquez pour lire la suite par WorldDMT AIDEAIDE par Nico26000
Cliquez pour lire la suite par Nico26000
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|