OptionsForm.cs

Description du code

OptionsForm.cs est un fichier du projet BiblioBrol.
Ce fichier est situé dans /var/www/bin/sniplets/bibliobrol/src/.

Projet BiblioBrol :

Gestion de media en CSharp.

Pour plus d'infos, vous pouvez consulter la brève analyse.

Code source ou contenu du fichier

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using be.gaudry.bibliobrol.view.controls;
  9. using be.gaudry.bibliobrol.view.utils;
  10. using be.gaudry.bibliobrol.config;
  11. using be.gaudry.model.enums;
  12.  
  13.  
  14. namespace be.gaudry.bibliobrol.view.dialogs
  15. {
  16. /// <summary>
  17. /// Class used to set the application Configuration
  18. /// </summary>
  19. public partial class OptionsForm : Form
  20. {
  21. #region declarations and constructor
  22. private List<UserControl> optionPanels;
  23. private String availableDB;
  24. public OptionsForm()
  25. {
  26. InitializeComponent();
  27. initOptionsValues();
  28. initOptionsControls();
  29. }
  30. #endregion
  31.  
  32. #region initializations
  33. private void initOptionsValues()
  34. {
  35. availableDB = getAvailableDbTypes();
  36. }
  37.  
  38. private void initOptionsControls()
  39. {
  40. optionPanels = new List<UserControl>();
  41.  
  42. dataDirCtl.Info = "Ce répertoire sert à stocker les données de l'application.";
  43. dataDirCtl.DirTitle = "données";
  44. dataDirCtl.dirPathModified += new DirControl.DirPathModifiedHandler(onDataDirPathModified);
  45.  
  46. persSelCtl.personSelected += new PersonSelectControl.PersonSelectedHandler(onOwnerSelected);
  47.  
  48. sysInfoCtl.addTitle("Persistance");
  49. sysInfoCtl.addItem("Version", String.Format("Version {0}", Config.DBVersion));
  50. sysInfoCtl.addItem("Type", EnumHelper.GetDescription(Config.PersistentType));
  51. sysInfoCtl.setAssembly(System.Reflection.Assembly.GetExecutingAssembly());
  52.  
  53. optionPanels.Add(dbSelCtl);
  54. optionPanels.Add(infosCtl);
  55. optionPanels.Add(persCtl);
  56. optionPanels.Add(persSelCtl);
  57. optionPanels.Add(dataDirCtl);
  58. optionPanels.Add(persImgCtl);
  59. optionPanels.Add(brolImgCtl);
  60. optionPanels.Add(appImgCtl);
  61. optionPanels.Add(prefsCtl);
  62. optionPanels.Add(todoCtl);
  63. optionPanels.Add(versionCtl);
  64. optionPanels.Add(sysInfoCtl);
  65.  
  66. mainSC.Panel2.Controls.AddRange(optionPanels.ToArray());
  67. hidePanels();
  68. }
  69. #endregion
  70.  
  71. #region private methods
  72. private void hidePanels()
  73. {
  74. foreach (UserControl c in optionPanels)
  75. {
  76. c.Visible = false;
  77. }
  78. }
  79. private void displayPanel(UserControl uc)
  80. {
  81. if (uc.Visible == false)
  82. foreach (UserControl c in optionPanels)
  83. {
  84. c.Visible = c.Equals(uc);
  85. }
  86. }
  87. private string getAvailableDbTypes()
  88. {
  89. DataTable dt = System.Data.Common.DbProviderFactories.GetFactoryClasses();
  90. StringBuilder str = new StringBuilder("Les ");
  91. str.Append(dt.Rows.Count.ToString());
  92. str.Append(" bases de données suivantes sont présentes sur la machine :\n");
  93. foreach (DataRow row in dt.Rows)
  94. {
  95. str.Append("\n\t- ");
  96. //Object[] columns = row.ItemArray;
  97. //for (int i = 0; i < columns.Length; i++)
  98. //{
  99. // str.Append("\t");
  100. // str.Append(columns[i] + "("+ dt.Columns[i].ColumnName +")");
  101. //}
  102. str.Append(row["Name"]);
  103. str.Append("\t(");
  104. str.Append(row["InvariantName"]);
  105. str.Append(")");
  106. }
  107. return str.ToString();
  108. }
  109. private void optionsTreeView_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
  110. {
  111. StringBuilder str;
  112. switch (e.Node.Name)
  113. {
  114. case "brolDirNode":
  115. dataDirCtl.Path = Config.DataDirectory;
  116. displayPanel(dataDirCtl);
  117. break;
  118. case "storageNode":
  119. infosCtl.InfosTitle = "Système de persistance";
  120. str = new StringBuilder("Le système de persistance est le moyen utilisé par biblioBrol pour sauver les informations.");
  121. str.Append("\n\nPar exemple, nous pouvons décider d'utiliser un des moyens de persistance suivants :");
  122. str.Append("\n- une base de données MS Access");
  123. str.Append("\n- une base de données MySQL");
  124. str.Append("\n- une base de données Oracle");
  125. str.Append("\n- une série de fichiers XML");
  126. infosCtl.Infos = str.ToString();
  127. displayPanel(infosCtl);
  128. break;
  129. case "storageSelectionNode":
  130. displayPanel(dbSelCtl);
  131. break;
  132. case "availableStoragesNode":
  133. infosCtl.InfosTitle = "Bases de données";
  134. infosCtl.Infos = availableDB;
  135. displayPanel(infosCtl);
  136. break;
  137. case "storageOpsNode":
  138. infosCtl.InfosTitle = "Opérations sur la persistance";
  139. infosCtl.Infos = "todo :\n\nCréation de la db\nRAZ des exemplaires\nRAZ des ouvrages\nRAZ des personnes\nBackup\nPartage d'infos\n\timportation\n\texportation\nParamètres des serveurs WebService";
  140. displayPanel(infosCtl);
  141. break;
  142. case "ownerNode":
  143. infosCtl.InfosTitle = "Propriétaire de l'application";
  144. str = new StringBuilder("Définir un propriétaire pour biblioBrol permet par exemple de déterminer");
  145. str.Append(" la personne par défaut lors de l'ajout de nouveaux ouvrages.");
  146. infosCtl.Infos = str.ToString();
  147. displayPanel(infosCtl);
  148. break;
  149. case "ownerInfosNode":
  150. persCtl.setPerson(Config.Owner);
  151. displayPanel(persCtl);
  152. break;
  153. case "ownerSelectNode":
  154. persSelCtl.CurrentPerson = Config.Owner;
  155. displayPanel(persSelCtl);
  156. break;
  157. case "prefsNode":
  158. displayPanel(prefsCtl);
  159. break;
  160. case "todoNode":
  161. displayPanel(todoCtl);
  162. break;
  163. case "updateNode":
  164. displayPanel(versionCtl);
  165. break;
  166. case "sysInfoNode":
  167. displayPanel(sysInfoCtl);
  168. break;
  169. default:
  170. hidePanels();
  171. break;
  172. }
  173. }
  174. #endregion
  175.  
  176. #region events
  177. private void okBtn_Click(object sender, EventArgs e)
  178. {
  179. Config.save();
  180. this.Close();
  181. }
  182.  
  183. private void cancelBtn_Click(object sender, EventArgs e)
  184. {
  185. this.Close();
  186. }
  187.  
  188.  
  189. private void onOwnerSelected(object sender, PersonSelectedEventArgs e)
  190. {
  191. Config.Owner = e.Person;
  192. Config.save();
  193. }
  194. private void onDataDirPathModified(object sender, DirPathModifiedEventArgs e)
  195. {
  196. Config.saveDataDirectory(e.Path);
  197. }
  198. #endregion
  199. }
  200. }

Structure et Fichiers du projet

Afficher/masquer...


Répertoires contenus dans /var/www/bin/sniplets/bibliobrol/src/view/dialogs/ 
IcôneNomTailleModification
Pas de sous-répertoires.
IcôneNomTailleModification
| _ Répertoire parent0 octets1718697112 18/06/2024 09:51:52
Fichiers contenus dans /var/www/bin/sniplets/bibliobrol/src/view/dialogs/ 
IcôneNomTailleModificationAction
IcôneNomTailleModificationAction
Afficher le fichier .resx|.resxAboutBibliobrolDialog.resx5.68 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csSelectSerieItemDialog.Designer.cs6.84 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csEditBrolForm.Designer.cs9.93 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csEditBorrowForm.Designer.cs13.58 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .resx|.resxEditRoleForm.resx5.68 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csBrolPropertiesForm.Designer.cs3.5 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csVersionForm.cs729 octets31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csAboutBibliobrolDialog.Designer.cs2.29 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csSelectConsoleVerboseDialog.cs581 octets31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxImportedImagesForm.resx188.76 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csEditSeriesForm.Designer.cs8.55 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csEditBrolForm.cs3.37 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .cs|.csCommentForm.cs1.47 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csEditRoleForm.Designer.cs7.86 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csMediabrolPropertiesForm.Designer.cs3.57 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxVersionForm.resx43.11 Ko31/10/2018 18:33:03-refusé-
Afficher le fichier .cs|.csPersonInfoForm.cs1.13 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csImportedImagesForm.Designer.cs5.86 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csSelectCategoryDialog.Designer.cs5.71 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxBrolPropertiesForm.resx5.87 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csSelectConsoleVerboseDialog.Designer.cs3.77 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxMediaBrolsByBrolForm.resx6.39 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxMediabrolPropertiesForm.resx5.87 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxSelectCategoryDialog.resx5.68 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csOptionsForm.cs7.57 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxSelectSerieItemDialog.resx5.68 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxCommentForm.resx187.31 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .resx|.resxPersonInfoForm.resx40.67 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csImportedImagesForm.cs914 octets31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csEditBorrowForm.cs4.83 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .cs|.csPersonInfoForm.Designer.cs3.03 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csAboutBibliobrolDialog.cs416 octets31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csMediaBrolsByBrolForm.cs1.47 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csEditSeriesForm.cs2.2 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csSelectRoleForm.Designer.cs6.57 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxSelectConsoleVerboseDialog.resx5.68 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csSelectRoleForm.cs996 octets31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csInfobrolForm.cs404 octets31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csMediaBrolsByBrolForm.Designer.cs6.86 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxDiaSetActorRole.resx5.68 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .cs|.csSelectCategoryDialog.cs2.68 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csDiaSetActorRole.cs6.51 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .resx|.resxSelectRoleForm.resx5.68 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csVersionForm.Designer.cs7.25 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csSelectSerieItemDialog.cs1.92 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxOptionsForm.resx38.91 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csEditRoleForm.cs1.35 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .cs|.csCommentForm.Designer.cs3.09 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csUserForm.Designer.cs65.04 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxEditBorrowForm.resx187.31 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .cs|.csDiaSetActorRole.Designer.cs7.98 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .resx|.resxEditBrolForm.resx11.3 Ko31/10/2018 18:33:00-refusé-
Afficher le fichier .resx|.resxUserForm.resx42.02 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .cs|.csBrolPropertiesForm.cs652 octets31/10/2018 18:32:58-refusé-
Afficher le fichier .resx|.resxInfobrolForm.resx40.95 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csUserForm.cs9.99 Ko31/10/2018 18:33:02-refusé-
Afficher le fichier .resx|.resxDiaSelectActor.resx5.68 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .cs|.csDiaSelectActor.cs1.87 Ko31/10/2018 18:32:58-refusé-
Afficher le fichier .cs|.csDiaSelectActor.Designer.cs4.15 Ko31/10/2018 18:32:59-refusé-
Afficher le fichier .cs|.csOptionsForm.Designer.cs18.22 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csMediabrolPropertiesForm.cs690 octets31/10/2018 18:33:01-refusé-
Afficher le fichier .cs|.csInfobrolForm.Designer.cs2.46 Ko31/10/2018 18:33:01-refusé-
Afficher le fichier .resx|.resxEditSeriesForm.resx38.91 Ko31/10/2018 18:33:00-refusé-

Utilisation de l'explorateur de code

  • Navigation :
    • Un clic sur une icône de répertoire ouvre ce répertoire pour en afficher les fichiers.
    • Lorsque le répertoire en cours ne contient pas de sous-répertoires il est possible de remonter vers le répertoire parent.
    • La structure de répertoires en treetable (tableau en forme d'arborescence) n'est plus possibledans cette version.
    • Un clic sur une icône de fichier ouvre ce fichier pour en afficher le code avec la coloration syntaxique adaptée en fonction du langage principal utilisé dans le fichier.
  • Affichage :
    • Il est possible de trier les répertoires ou les fichiers selon certains critères (nom, taille, date).
  • Actions :
    • Les actions possible sur les fichiers dépendent de vos droits d'utilisateur sur le site. Veuillez activer le mode utilisateur pour activer les actions.

Document créé le 16/10/2009, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/cs-bibliobrol-source-rf-view/dialogs/OptionsForm.cs.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.