ActorForm.cs

Description du code

ActorForm.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.model;
  9. using be.gaudry.view;
  10. using be.gaudry.bibliobrol.view.utils;
  11. using be.gaudry.bibliobrol.view.dialogs;
  12. using be.gaudry.events;
  13. using be.gaudry.bibliobrol.model.identity;
  14. using be.gaudry.bibliobrol.config;
  15. using be.gaudry.model.enums;
  16. using be.gaudry.bibliobrol.model.enums;
  17.  
  18. namespace be.gaudry.bibliobrol.view
  19. {
  20. public partial class ActorForm : MDIChildForm, IMDIChild
  21. {
  22. #region declarations and constructor
  23. private const String ALL_ROLES = " -Toutes les personnes- ";
  24. private const String NO_ROLE = " -Personnes sans rôle- ";
  25. private ActorRole[] roles;
  26. //private bool pictureModified;
  27. //private DataGridViewCellStyle deletedStyle, addedStyle;
  28. public ActorForm()
  29. {
  30. roles = ModelAdapter.getRoles().ToArray();
  31. //pictureModified = false;
  32. InitializeComponent();
  33.  
  34. this.SuspendLayout();
  35. addToolStrip(personsTS);
  36.  
  37.  
  38. initCB();
  39. /*
  40.   deletedStyle = new DataGridViewCellStyle();
  41.   deletedStyle.ForeColor = Color.White;
  42.   deletedStyle.BackColor = Color.Crimson;
  43.  
  44.   addedStyle = new DataGridViewCellStyle();
  45.   addedStyle.ForeColor = Color.White;
  46.   addedStyle.BackColor = Color.DarkGreen;
  47.   * */
  48. this.ResumeLayout(false);
  49. }
  50. #endregion
  51.  
  52. private void initCB()
  53. {
  54. personsByRoleTSCB.Items.Add(new ActorRole(0, ALL_ROLES));
  55. personsByRoleTSCB.Items.Add(new ActorRole(0, NO_ROLE));
  56. personsByRoleTSCB.Items.AddRange(roles);
  57. personsByRoleTSCB.SelectedIndex = 0;
  58.  
  59. selectPersonsTSCB.Items.Add(new ActorRole(0, ALL_ROLES));
  60. selectPersonsTSCB.Items.Add(new ActorRole(0, NO_ROLE));
  61. selectPersonsTSCB.Items.AddRange(roles);
  62. selectPersonsTSCB.SelectedIndex = 0;
  63.  
  64. personDisplayTSCB.ComboBox.DataSource = EnumHelper.ToList(typeof(PERSON_DISPLAY));
  65. personDisplayTSCB.ComboBox.DisplayMember = "Value";
  66. personDisplayTSCB.ComboBox.ValueMember = "Key";
  67. personDisplayTSCB.ComboBox.SelectedItem = Config.PersonDisplay;
  68. }
  69. /// <summary>
  70. /// Load persons display list
  71. /// </summary>
  72. /// <param name="sender"></param>
  73. /// <param name="e"></param>
  74. private void onPersonsRoleIndexChanged(object sender, EventArgs e)
  75. {
  76. ToolStripComboBox tscb = (ToolStripComboBox)sender;
  77. if (tscb.SelectedIndex > 0)//0 = filter (ie : selection by name)
  78. {
  79. ActorRole role;
  80. try
  81. {
  82. role = (ActorRole)tscb.SelectedItem;
  83. }
  84. catch (InvalidCastException) { role = new ActorRole(0, ALL_ROLES); }
  85. fillPersonsListBox(role);
  86. }
  87. }
  88.  
  89. private void fillPersonsListBox(ActorRole role)
  90. {
  91. selectPersonsTSCB.SelectedItem = role;
  92. personsByRoleTSCB.SelectedItem = role;
  93. persListBox.Items.Clear();
  94. switch (role.Name)
  95. {
  96. case ALL_ROLES:
  97. persListBox.Items.AddRange(ModelAdapter.getPersonsVos().ToArray());
  98. break;
  99. case NO_ROLE:
  100. MessageBox.Show("Option non implémentée");
  101. break;
  102. default:
  103. persListBox.Items.AddRange(ModelAdapter.getPersonsVos(role).ToArray());
  104. break;
  105. }
  106. //personEditCtl.clearForm();
  107. }
  108. private void fillPersonsListBox(string name)
  109. {
  110. selectPersonsTSCB.SelectedIndex = 0;
  111. personsByRoleTSCB.SelectedIndex = 0;
  112. persListBox.Items.Clear();
  113. string searchTxt = name.Replace('*', '%');
  114. persListBox.Items.AddRange(ModelAdapter.getPersonsVos(searchTxt).ToArray());
  115. if (persListBox.Items.Count < 1)
  116. {
  117. MessageBox.Show(
  118. this,
  119. String.Format("Aucune personne trouvée correspondant à {0}.", name),
  120. "Recherche de personnes",
  121. MessageBoxButtons.OK,
  122. MessageBoxIcon.Information
  123. );
  124. }
  125. }
  126.  
  127.  
  128. /// <summary>
  129. /// Load person infos for selected person
  130. /// </summary>
  131. /// <param name="sender">Button component</param>
  132. /// <param name="e">EventArgs</param>
  133. private void onPersonsSelectedIndexChanged(object sender, EventArgs e)
  134. {
  135. fillPersonFormFromListBox();
  136. }
  137.  
  138. private void fillPersonFormFromListBox()
  139. {
  140.  
  141. PersonLO pers = persListBox.SelectedItem as PersonLO;
  142. if (pers != null)
  143. {
  144. enableEditForm(ModelAdapter.getPerson(pers.Id, true));
  145. }
  146. else
  147. {
  148. enableEditForm(null);
  149. }
  150. }
  151. private void enableEditForm(Person person)
  152. {
  153. if (person != null)
  154. {
  155. personEditCtl.setPerson(person);
  156. personEditCtl.Visible = true;
  157. eidTsB.Enabled = true;
  158. persImgTSB.Enabled = true;
  159. persDelTsMic.Enabled = true;
  160. persDelBtn.Enabled = true;
  161. }
  162. else
  163. {
  164. personEditCtl.Visible = false;
  165. eidTsB.Enabled = false;
  166. persImgTSB.Enabled = false;
  167. persDelTsMic.Enabled = false;
  168. persDelBtn.Enabled = false;
  169. }
  170. }
  171.  
  172. private void onAddPerson_Click(object sender, EventArgs e)
  173. {
  174. enableEditForm(new Person());
  175. }
  176.  
  177. private void onDeletePerson_Click(object sender, EventArgs e)
  178. {
  179. Person person = personEditCtl.getPerson();
  180. if (person != null)
  181. {
  182. DialogResult r = MessageBox.Show(
  183. this,
  184. String.Format("Confirmez-vous la suppression de la personne {0} {1} ?",
  185. person.LastName,
  186. person.FirstName
  187. ),
  188. "Suppression de la personne",
  189. MessageBoxButtons.YesNo,
  190. MessageBoxIcon.Question,
  191. MessageBoxDefaultButton.Button1
  192. );
  193. if (r == DialogResult.Yes)
  194. {
  195. ModelAdapter.deletePerson(person);
  196. System.IO.File.Delete(Img.getPersImgPath(person));
  197. fillPersonsListBox((ActorRole)selectPersonsTSCB.SelectedItem);
  198. personEditCtl.clearForm();
  199. }
  200. }
  201. }
  202.  
  203.  
  204. private void ActorForm_FormClosing(object sender, FormClosingEventArgs e)
  205. {
  206. try
  207. {
  208. personEditCtl.unlockPersonIfAllowed();
  209. }
  210. catch { }//we may have null pointer exception if no person was selected
  211. }
  212.  
  213. private void personDisplayTSCB_Click(object sender, EventArgs e)
  214. {
  215. Config.PersonDisplay = (PERSON_DISPLAY)EnumHelper.getEnum(personDisplayTSCB.ComboBox.SelectedItem); ;
  216. //no need to save person display
  217. onPersonsRoleIndexChanged(selectPersonsTSCB, e);
  218. }
  219.  
  220. private void searchPersonTsTB_KeyUp(object sender, KeyEventArgs e)
  221. {
  222. bool enabled = searchPersonTsTB.Text != string.Empty;
  223. searchPersonTsBtn.Enabled = enabled;
  224. if (enabled && e.KeyCode == Keys.Enter)
  225. {
  226. fillPersonsListBox(searchPersonTsTB.Text);
  227. }
  228. }
  229.  
  230. private void searchPersonTsBtn_Click(object sender, EventArgs e)
  231. {
  232. fillPersonsListBox(searchPersonTsTB.Text);
  233. }
  234.  
  235. #region save person
  236. private void onPersSave_Click(object sender, EventArgs e)
  237. {
  238. personEditCtl.onPersonSave_Click(sender, e);
  239. }
  240.  
  241. private void onPersonEditCtlEnableSave(bool enabled)
  242. {
  243. persSaveTSB.Enabled = enabled;
  244. savePersTsMi.Enabled = enabled;
  245. }
  246. #endregion
  247.  
  248. private void eidTsB_Click(object sender, EventArgs e)
  249. {
  250. personEditCtl.onOpenUserForm_Click(sender, e);
  251. }
  252.  
  253. private void persImgTSB_Click(object sender, EventArgs e)
  254. {
  255. personEditCtl.onModifyImage_Click(sender, e);
  256. }
  257.  
  258. #region IMDIChild Members
  259.  
  260. public MenuStrip getMainMenuStrip()
  261. {
  262. return mainMenuStrip;
  263. }
  264.  
  265. #endregion
  266. }
  267. }

Structure et Fichiers du projet

Afficher/masquer...


Répertoires contenus dans /var/www/bin/sniplets/bibliobrol/src/view/ 
IcôneNomTailleModification
IcôneNomTailleModification
| _ Répertoire parent0 octets1731712667 16/11/2024 00:17:47
| _wizards0 octets1541007184 31/10/2018 18:33:04
| _utils0 octets1541007184 31/10/2018 18:33:04
| _controls0 octets1541007178 31/10/2018 18:32:58
| _dialogs0 octets1541007183 31/10/2018 18:33:03
Fichiers contenus dans /var/www/bin/sniplets/bibliobrol/src/view/ 
IcôneNomTailleModificationAction
IcôneNomTailleModificationAction
Afficher le fichier .resx|.resxMediabrolForm.resx32.55 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .resx|.resxAWSForm.resx188.27 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .resx|.resxMainForm.resx6.07 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .resx|.resxConsoleForm.resx256.48 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .cs|.csAWSForm.Designer.cs23.45 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csActorForm.cs9.09 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csBiblioBrolAboutBox.Designer.cs11.22 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csAWSForm.cs7.68 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csBorrowsForm.cs1.66 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csCopy of MainForm.Designer.cs16.91 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .cs|.csConsoleForm.Designer.cs2.71 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .cs|.csWebServiceForm.cs6.34 Ko31/10/2018 18:32:29-refusé-
Afficher le fichier .resx|.resxOldMainForm.resx58.06 Ko31/10/2018 18:32:28-refusé-
Afficher le fichier .cs|.csCopy of MainForm.cs30.81 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .resx|.resxActorForm.resx44.98 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .resx|.resxBorrowsForm.resx73.4 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .cs|.csMainForm.cs37.45 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .resx|.resxWebServiceForm.resx9.71 Ko31/10/2018 18:32:29-refusé-
Afficher le fichier .cs|.csMainForm.Designer.cs7.16 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .cs|.csBorrowsForm.Designer.cs10.51 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csTasksForm.cs389 octets31/10/2018 18:32:28-refusé-
Afficher le fichier .resx|.resxBiblioBrolAboutBox.resx5.68 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csBrolForm.cs25.87 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .cs|.csWebServiceForm.Designer.cs13.12 Ko31/10/2018 18:32:29-refusé-
Afficher le fichier .cs|.csMediabrolForm.Designer.cs142.05 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .cs|.csConsoleForm.cs2.79 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .cs|.csBrolForm.designer.cs41.73 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .cs|.csMediabrolForm.cs31.94 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .cs|.csStatsForm.Designer.cs11.59 Ko31/10/2018 18:32:28-refusé-
Afficher le fichier .cs|.csActorForm.Designer.cs28.26 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csOldMainForm.Designer.cs83.98 Ko31/10/2018 18:32:28-refusé-
Afficher le fichier .cs|.csStatsForm.cs5 Ko31/10/2018 18:32:28-refusé-
Afficher le fichier .cs|.csBiblioBrolAboutBox.cs5.51 Ko31/10/2018 18:32:25-refusé-
Afficher le fichier .cs|.csOldMainForm.cs27.08 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .resx|.resxTasksForm.resx187.31 Ko31/10/2018 18:32:29-refusé-
Afficher le fichier .cs|.csTasksForm.Designer.cs2.26 Ko31/10/2018 18:32:28-refusé-
Afficher le fichier .resx|.resxBrolForm.resx45.52 Ko31/10/2018 18:32:26-refusé-
Afficher le fichier .resx|.resxCopy of MainForm.resx7.53 Ko31/10/2018 18:32:27-refusé-
Afficher le fichier .resx|.resxStatsForm.resx187.5 Ko31/10/2018 18:32:28-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.

Version en cache

16/11/2024 00:17:47 Cette version de la page est en cache (à la date du 16/11/2024 00:17:47) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.

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/ActorForm.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.