Suivez et participez au développement du nouvel OpenCellar : PLOC.co
Page d'accueil
 
Français  English  
Open Cellar Home Edition - 1.2 - Le logiciel gratuit pour gérér efficacement votre cave à vins sous Windows. Open Cellar Mobile Edition - Beta 2 - La gestion de cave à vins a enfin sa solution Mobile sur Pocket PC. Open Cellar Cross Platform - Beta 1 - La gestion gratuite de vins disponible sous Mac OSX et Linux. Mon Open Cellar Les forums d'Open Cellar Place des vins
Rechercher : Bienvenue (se connecter - créer un compte)
Options de page

Nuage de tags
Dupliquer un emplacement
Le script suivant vous permet de dupliquer un emplacement.
Pour l'éxécuter allez dans le menu "Préférences" -> "Editeurs de scripts"
Modifiez la ligne string sourceRackName = "Cave climadiff"; par le nom de l'emplacement à dupliquer

// DuplicateRack 
// Mai 2007 
// Ce script duplique l'emplacement spécifié 

// Paramétrage 
string sourceRackName = "Cave climadiff"; 

if(App.ActiveCellar == null) 
{ 
    MessageBox.Show("Aucune cave ouverte"); 
    return; 
} 

// Récupere l'emplacement source. 
Rack theRack = null; 

ObjectCollection racks = App.ActiveCellar.GetCollection((ushort)ObjectType.Rack); 

for (int i = 0; i < racks.Count; i++) 
{ 
   Rack rk = (Rack)racks[i]; 
   if(rk.Name.Trim().ToLower() == sourceRackName.ToLower()) 
   { 
      theRack = rk; 
      break; 
   } 
} 

// Verifie que le rack a été trouvé 

if(theRack == null) 
{ 
   MessageBox.Show("Impossible de continuer : \nL'emplacement \"" + sourceRackName + "\" est introuvable."); 
   return; 
} 

// OK -> création de l'emplacement 
RackBuilder rb = new RackBuilder(App.ActiveCellar); 

rb.SetColumnsSize(theRack.Columns); 
rb.SetRowsSize(theRack.Rows); 
rb.SetRackType(theRack.RackType); 
rb.SetNamingType(theRack.NamingType); 
rb.SetSpace(theRack.RowSpace, theRack.ColumnSpace); 
rb.SetRackName(theRack.Name); 
rb.Save(); 
rb.NotifyChange(); 

// Elements 
for(byte col = 0; col < theRack.Columns; col++) 
{ 
  for(byte row = 0; row < theRack.Rows; row++) 
  { 
        if(theRack.Exist(col, row)) 
   { 
      // Création 
      RackItem item = rb.CreateRackItem(row, col); 
      item.Save(); 
   } 
  } 
} 

// ouverture fenetre 
MessageBox.Show("Copie terminée."); 

IWindow rackWindow = App.GetWindow(WindowType.Rack, rb.Rack); 
rackWindow.Show(); 

© 2006-2014 Matthieu DUCROCQ Blog officiel d'Open Cellar - Tous droits réservés - Dernière mise à jour : janvier 2014 | twitter | facebook