Esempio n. 1
0
        protected override void Rename(string name)
        {
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            page.EditedObject.name = name;
            base.Rename(name);
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        protected void onUserNameTextLostFocus(object sender, RoutedEventArgs args)
        {
            UserEditorItem page    = (UserEditorItem)getUserEditor().getActivePage();
            string         newName = page.getUserForm().userMainPanel.nameTextBox.Text;

            Rename(newName);
        }
Esempio n. 3
0
        /// <summary>
        /// Cette méthode est exécutée lorsqu'on sélectionne une Input Table sur la sidebar.
        /// Cette opération a pour but d'ouvrir une page pour la table selectionnée dans l'éditeur.
        /// </summary>
        /// <param name="sender">La table sélectionnée</param>
        protected void onSelectUserFromSidebar(object sender)
        {
            if (sender != null && sender is Domain.User)
            {
                Domain.User user = (Domain.User)sender;
                EditorItem <Domain.User> page = getUserEditor().getPage(user.name);
                if (page != null)
                {
                    page.fillObject();
                    getUserEditor().selectePage(page);
                }
                else if (user.oid != null && user.oid.HasValue)
                {
                    this.Open(user.oid.Value);
                }
                else
                {
                    page = getUserEditor().addOrSelectPage(user);
                    initializePageHandlers(page);
                    page.Title = user.name;

                    getUserEditor().ListChangeHandler.AddNew(user);
                }
                UserEditorItem pageOpen = (UserEditorItem)getUserEditor().getActivePage();
            }
        }
Esempio n. 4
0
        public override OperationState Rename()
        {
            if (base.Rename() != OperationState.CONTINUE)
            {
                return(OperationState.STOP);
            }

            IsRenameOnDoubleClick = true;
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            return(ValidateEditedNewName(page.EditedObject.name));
        }
Esempio n. 5
0
        /// <summary>
        /// Cette methode est exécuté lorsqu'on édit le nom de la table active.
        /// Si l'utilisateur tappe sur la touche ENTER, le nouveau nom est validé.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        protected void onNameTextChange(object sender, KeyEventArgs args)
        {
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            if (args.Key == Key.Escape)
            {
                page.getUserForm().userMainPanel.nameTextBox.Text = page.Title;
            }
            else if (args.Key == Key.Enter)
            {
                ValidateEditedNewName();
            }
        }
Esempio n. 6
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        protected virtual OperationState ValidateEditedNewName(string newName = "")
        {
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            Domain.User table = page.EditedObject;
            if (string.IsNullOrEmpty(newName))
            {
                newName = page.getUserForm().userMainPanel.nameTextBox.Text.Trim();
            }
            if (string.IsNullOrEmpty(newName))
            {
                DisplayError("Empty Name", "The User name can't be mepty!");
                page.getUserForm().userMainPanel.nameTextBox.SelectAll();
                page.getUserForm().userMainPanel.nameTextBox.Focus();
                return(OperationState.STOP);
            }

            bool found = false;

            if (GetUserService().getByName(newName) != null)
            {
                found = true;
            }

            foreach (UserEditorItem unReco in getUserEditor().getPages())
            {
                if ((found && newName != getUserEditor().getActivePage().Title) || (unReco != getUserEditor().getActivePage() && newName == unReco.Title))
                {
                    DisplayError("Duplicate Name", "There is another user named: " + newName);
                    page.getUserForm().userMainPanel.nameTextBox.Text = page.Title;
                    //   page.getUserForm().userMainPanel.nameTextBox.SelectAll();
                    //   page.getUserForm().userMainPanel.nameTextBox.Focus();
                    return(OperationState.STOP);
                }
            }
            if (!IsRenameOnDoubleClick)
            {
                if (table.name.ToUpper().Equals(newName.ToUpper()))
                {
                    return(OperationState.CONTINUE);
                }
            }

            ((UserSideBar)SideBar).UserGroup.UserTreeview.updateUser(newName, table.name, false);
            table.name = newName;
            page.Title = newName;
            OnChange();
            return(OperationState.CONTINUE);
        }
Esempio n. 7
0
        /// <summary>
        /// Cette methode est exécuté lorsqu'on édit le nom de la table active.
        /// Si l'utilisateur tappe sur la touche ENTER, le nouveau nom est validé.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        protected void onUserNameTextChange(object sender, KeyEventArgs args)
        {
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            if (args.Key == Key.Escape)
            {
                string newName = page.getUserForm().userMainPanel.nameTextBox.Text;
                Rename(newName);
            }
            else if (args.Key == Key.Enter)
            {
                string newName = page.getUserForm().userMainPanel.nameTextBox.Text;
                Rename(newName);
            }
        }
Esempio n. 8
0
        private void OnRelationItemDelete(object item)
        {
            if (!(item is Domain.Relation))
            {
                return;
            }
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            if (page == null)
            {
                return;
            }
            page.EditedObject.relationsListChangeHandler.AddDeleted((Domain.Relation)item);
            OnChange();
        }
Esempio n. 9
0
        /// <summary>
        /// Initialisation des Handlers sur une nouvelle page.
        /// En plus des handlers de base, on initialise les handlers sur :
        /// - DesignerPropertiesPanel
        /// -
        /// - SpreadSheet
        /// -
        /// </summary>
        protected override void initializePageHandlers(EditorItem <Domain.User> page)
        {
            base.initializePageHandlers(page);
            UserEditorItem editorPage = (UserEditorItem)page;

            editorPage.getUserForm().userMainPanel.nameTextBox.KeyUp += onNameTextChange;
            editorPage.getUserForm().userMainPanel.nameTextBox.LostFocus += onNameTextLostFocus;
            editorPage.getUserForm().userMainPanel.loginTextBox.KeyUp += onLoginTextChange;
            editorPage.getUserForm().userMainPanel.loginTextBox.LostFocus += onLoginTextLostFocus;
            editorPage.getUserForm().userMainPanel.RelationPanel.Changed += OnRelationChange;
            editorPage.getUserForm().userMainPanel.profilcomboBox.SelectionChanged += onProfilFieldChange;
            editorPage.getUserForm().userMainPanel.RelationPanel.ItemChanged += OnRelationItemChange;
            editorPage.getUserForm().userMainPanel.RelationPanel.ItemDeleted += OnRelationItemDelete;
            editorPage.getUserForm().userMainPanel.nameTextBox.LostFocus += onUserNameTextLostFocus;
            editorPage.getUserForm().userMainPanel.nameTextBox.KeyUp += onUserNameTextChange;
        }
Esempio n. 10
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="oid"></param>
        /// <returns></returns>
        public override OperationState Open(Domain.User user)
        {
            UserEditorItem page = (UserEditorItem)getEditor().addOrSelectPage(user);

            initializePageHandlers(page);
            page.getUserForm().userMainPanel.InitService(GetUserService());
            page.getUserForm().userMainPanel.InitProfilComboBox();
            page.getUserForm().userMainPanel.InitRelationPanel();
            page.getUserForm().displayObject();
            getEditor().ListChangeHandler.AddNew(user);
            if (this.ToolBar != null)
            {
                this.ToolBar.SaveButton.IsEnabled = false;
            }

            return(OperationState.CONTINUE);
        }
Esempio n. 11
0
        /// <summary>
        /// Cette methode permet de créer une nouvelle reco.
        /// </summary>
        /// <returns>CONTINUE si la création de la nouvelle reconciliation se termine avec succès. STOP sinon</returns>
        public override OperationState Create()
        {
            Domain.User user = GetNewUser();

            ((UserSideBar)SideBar).UserGroup.UserTreeview.AddUser(user);
            UserEditorItem page = (UserEditorItem)getUserEditor().addOrSelectPage(user);

            initializePageHandlers(page);
            page.getUserForm().UserService = GetUserService();
            page.getUserForm().userMainPanel.InitService(GetUserService());
            page.Title = user.name;
            page.getUserForm().displayObject();
            getUserEditor().ListChangeHandler.AddNew(user);
            page.getUserForm().userMainPanel.InitProfilComboBox();
            page.getUserForm().userMainPanel.InitRelationPanel();
            return(OperationState.CONTINUE);
        }
Esempio n. 12
0
        private void onProfilFieldChange(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
        {
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            if (page != null)
            {
                string name    = page.getUserForm().userMainPanel.profilcomboBox.SelectedItem.ToString();
                string profilS = (string)page.getUserForm().userMainPanel.profilcomboBox.SelectedItem;
                //Domain.Profil profil = (Domain.Profil)page.getUserForm().userMainPanel.profilcomboBox.SelectedItem;
                ((UserSideBar)SideBar).UserGroup.UserTreeview.updateUser(name, page.Title, true);
                Domain.User usTemp = page.EditedObject;
                usTemp.profil                = GetUserService().ProfilService.getByName(profilS);
                page.EditedObject            = usTemp;
                page.EditedObject.isModified = true;
                OnChange();
            }
        }
Esempio n. 13
0
 public override OperationState Save(EditorItem <Domain.User> page)
 {
     try
     {
         currentPage = (UserEditorItem)page;
         if (base.Save(page) == OperationState.STOP)
         {
             return(OperationState.STOP);
         }
     }
     catch (Exception)
     {
         DisplayError("Save User", "Unable to save USer.");
         return(OperationState.STOP);
     }
     return(OperationState.CONTINUE);
 }
Esempio n. 14
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        protected virtual OperationState ValidateEditedLoginName(string loginName = "")
        {
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            Domain.User table = page.EditedObject;
            if (string.IsNullOrEmpty(loginName))
            {
                loginName = page.getUserForm().userMainPanel.loginTextBox.Text.Trim();
            }
            if (string.IsNullOrEmpty(loginName))
            {
                DisplayError("Empty Login", "The User login can't be empty!");
                page.getUserForm().userMainPanel.loginTextBox.SelectAll();
                page.getUserForm().userMainPanel.loginTextBox.Focus();
                return(OperationState.STOP);
            }
            bool found = false;

            if (GetUserService().getUserByLogin(loginName) != null)
            {
                found = true;
            }

            foreach (UserEditorItem unReco in getUserEditor().getPages())
            {
                if ((found && loginName != getUserEditor().getActivePage().EditedObject.login) || (unReco != getUserEditor().getActivePage() && loginName == unReco.EditedObject.login))
                {
                    DisplayError("Duplicate Login", "There is another User named: " + loginName);
                    page.getUserForm().userMainPanel.loginTextBox.Text = getUserEditor().getActivePage().EditedObject.login != null?getUserEditor().getActivePage().EditedObject.login : getUserEditor().getActivePage().Title;

                    page.getUserForm().userMainPanel.loginTextBox.SelectAll();
                    page.getUserForm().userMainPanel.loginTextBox.Focus();
                    return(OperationState.STOP);
                }
            }

            OnChange();
            return(OperationState.CONTINUE);
        }
Esempio n. 15
0
        private void OnRelationItemChange(object item)
        {
            if (!(item is Domain.Relation))
            {
                return;
            }
            UserEditorItem page = (UserEditorItem)getUserEditor().getActivePage();

            if (page == null)
            {
                return;
            }
            //Domain.Relation relation = (Domain.Relation)item;
            //if (relation.oid.HasValue)
            //{
            //    page.EditedObject.relationsListChangeHandler.AddUpdated((Domain.Relation)item);
            //}
            //else
            //{
            //    page.EditedObject.relationsListChangeHandler.AddNew((Domain.Relation)item);
            //}
            OnChange();
        }