private void EntityPivotRotationTextBox_TextChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            Vector4    v = FloatUtil.ParseVector4String(EntityPivotRotationTextBox.Text);
            Quaternion q = new Quaternion(v);

            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity.PivotOrientation != q)
                {
                    CurrentEntity.SetPivotOrientation(q);
                    //SetYmapHasChanged(true);
                    var wf = ProjectForm.WorldForm;
                    if (wf != null)
                    {
                        wf.BeginInvoke(new Action(() =>
                        {
                            bool editpivot     = wf.EditEntityPivot;
                            wf.EditEntityPivot = true;
                            wf.SetWidgetRotation(CurrentEntity.WidgetOrientation, true);
                            wf.EditEntityPivot = editpivot;
                        }));
                    }
                }
            }
        }
Exemple #2
0
        private void EntityPivotRotationQuatBox_ValueChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            Quaternion q = EntityPivotRotationQuatBox.Value;

            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity.PivotOrientation != q)
                {
                    CurrentEntity.SetPivotOrientation(q);
                    //SetYmapHasChanged(true);
                    var wf = ProjectForm.WorldForm;
                    if (wf != null)
                    {
                        wf.BeginInvoke(new Action(() =>
                        {
                            bool editpivot     = wf.EditEntityPivot;
                            wf.EditEntityPivot = true;
                            wf.SetWidgetRotation(CurrentEntity.WidgetOrientation, true);
                            wf.EditEntityPivot = editpivot;
                        }));
                    }
                }
            }
        }
Exemple #3
0
        /// <summary>
        /// 绑定实体数据
        /// </summary>
        /// <param name="entity">实体对象</param>
        /// <param name="isCopy">是否复制</param>
        public virtual void BindMethod(E entity, bool isCopy = false)
        {
            IsInnerSetValue = true;
            CurrentEntity   = entity;
            BindEventArgs args = new BindEventArgs();

            args.IsNew      = IsNew;
            args.IsCopy     = isCopy;
            args.BindEntity = entity;
            OnBind(args);
            if (args.IsSuccess)
            {
                if (IsNew && Metadata != null && Grid != null && Metadata.ParentFieldName.IsNotEmpty())
                {
                    int parentID = 0;
                    if (ParentEntity != null)
                    {
                        parentID = ParentEntity.ID;
                    }
                    CurrentEntity.SetPropertyValue(Metadata.ParentFieldName, parentID);
                }

                if (EditPanel != null)
                {
                    FormHelper.BindControlValue(EditPanel, entity);
                }

                if (StatusPanel != null)
                {
                    FormHelper.BindControlValue(StatusPanel, entity);
                }
                SetButtonStatus();
            }
            IsInnerSetValue = false;
        }
        private void OnGetPerformanceDataCompleted(CustomEventArgs args)
        {
            if (args.Status == SocketError.Success)
            {
                var message  = (ResponseMessage)args.Result;
                var response = (PerfmonDataResponse)message.Response;

                CurrentEntity.AppendPerformanceCpu(new IntDateTimeObject()
                {
                    Time  = DateTime.Now,
                    Value = response.CPUuse
                });
                CurrentEntity.AppendPerformanceDiscQueue(new IntDateTimeObject()
                {
                    Time  = DateTime.Now,
                    Value = response.DiskQueue
                });
                CurrentEntity.AppendPerformanceFreeDisc(new IntDateTimeObject()
                {
                    Time  = DateTime.Now,
                    Value = response.DiskFree
                });
                CurrentEntity.AppendPerformanceRam(new IntDateTimeObject()
                {
                    Time  = DateTime.Now,
                    Value = response.RAMfree
                });
            }
        }
Exemple #5
0
        /// <summary>
        /// 复制方法
        /// </summary>
        public void CopyMethod()
        {
            IsNew = true;

            CopyEventArgs beforeArgs = new CopyEventArgs();

            SetEditEventArgs(beforeArgs);
            beforeArgs.IsCopy = true;
            OnBeforeCopy(beforeArgs);
            if (!beforeArgs.IsSuccess)
            {
                return;
            }
            if (beforeArgs.CopyEntity == null)
            {
                beforeArgs.CopyEntity = CurrentEntity.Clone();
            }

            if (beforeArgs.CopyEntity != null)
            {
                E entity = (E)beforeArgs.CopyEntity;
                entity.ID = 0;
                BindMethod(entity, true);
                SelectFirstControl();

                CopyEventArgs afterArgs = new CopyEventArgs();
                SetEditEventArgs(afterArgs);
                afterArgs.IsCopy = true;
                OnAfterCopy(afterArgs);
            }
        }
Exemple #6
0
        public UserScreenViewModel()
        {
            Editor = new EditorViewModel <UserVM>(controller.Users.Select(u => CreateVM(u)),
                                                  "Выберите пользователя:",
                                                  () =>
            {
                var ent = controller.CreateUser();
                return(CreateVM(ent));
            });
            Buttons = new AddButtonsViewModel <UserVM>(OnAddRoles, "+ роли", OnAddAbilities, "+ возможности");

            Editor.PropertyChanged      += Editor_PropertyChanged;
            controller.UserRolesChanged += (s, e1) =>
            {
                SetupUserRoles();
                SetupRoleAbilities();
            };
            controller.UserAbilitiesChanged += (s, e1) =>
            {
                SetupRoleAbilities();
            };
            // возможности в роли не меняются
            controller.DeprecatedChanged += (s, e1) =>
            {
                if (e1.entity == CurrentEntity.user)
                {
                    CurrentEntity.OnDeprecatedChangedByCode();
                }
            };

            AfterConstructed();
        }
        private void EntityScaleZTextBox_TextChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            float sz = 0;

            FloatUtil.TryParse(EntityScaleZTextBox.Text, out sz);
            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity.Scale.Z != sz)
                {
                    Vector3 newscale = new Vector3(CurrentEntity.Scale.X, CurrentEntity.Scale.Y, sz);
                    CurrentEntity.SetScale(newscale);
                    ProjectItemChanged();
                    var wf = ProjectForm.WorldForm;
                    if (wf != null)
                    {
                        wf.BeginInvoke(new Action(() =>
                        {
                            wf.SetWidgetScale(newscale, true);
                        }));
                    }
                }
            }
        }
        public ObservableListViewModel(IViewInfo viewInfo, List <IViewModelEventSubscription <IViewModel, IEvent> > eventSubscriptions, List <IViewModelEventPublication <IViewModel, IEvent> > eventPublications, List <IViewModelEventCommand <IViewModel, IEvent> > commandInfo, ISystemProcess process, Type orientation, int priority) : base(process, viewInfo, eventSubscriptions, eventPublications, commandInfo, orientation, priority)
        {
            // Validator = new EntityValidator<TEntity>();
            State.WhenAnyValue(x => x.Value).Subscribe(x => UpdateLocalState(x));
            CurrentEntity.WhenAnyValue(x => x.Value).Subscribe(x => ChangeTracking.Clear());

            _instance = this;
        }
Exemple #9
0
        public MesurementsEntity(Mesurements mesurements, string idInstllation)
        {
            CurrentEntity current = new CurrentEntity(mesurements.current);

            idMesurment         = current.id;
            this.idInstallation = Int32.Parse(idInstllation);
            Database.Insert <MesurementsEntity>(this);
        }
Exemple #10
0
        public async override void GetValuesFromNavigationParameters(NavigationContext navigationContext)
        {
            SexList = await _sexService.GetListAsync <SexDetail>();

            CurrentEntity = navigationContext.Parameters["entity"] as ValidatableBindableBase;

            CurrentEntity.MarkEntityAsClean();
        }
 // обработчик нажатия на кнопку добавления продукта в БД
 private void btnSave_Click(object sender, EventArgs e)
 {
     CurrentEntity.Amount       = Convert.ToDecimal(txtAmount.Text);
     CurrentEntity.InterestRate = Convert.ToDecimal(txtInterestrate.Text);
     CurrentEntity.AccountId    = Convert.ToString((lueAccount.LookupResultValue as IAccount).Id);
     CurrentEntity.FbMyProduct  = lueFbMyProduct.LookupResultValue as IFbMyProduct;
     CurrentEntity.Save();
     DialogService.CloseEventHappened(sender, e);
     PanelRefresh.RefreshAll();
 }
Exemple #12
0
        public async override void GetValuesFromNavigationParameters(NavigationContext navigationContext)
        {
            GenderList = await _genderService.GetListAsync <GenderDetail>();

            BreedList = await _breedService.GetListAsync <BreedDetail>();

            CurrentEntity = navigationContext.Parameters["entity"] as ValidatableBindableBase;

            CurrentEntity.MarkEntityAsClean();
        }
Exemple #13
0
        public Current(string id)
        {
            CurrentEntity cur = Database.sQLiteConnection.Get <CurrentEntity>(id);

            this.values       = JsonConvert.DeserializeObject <List <Values> >(cur.values);
            this.indexes      = JsonConvert.DeserializeObject <List <Indexes> >(cur.indexes);
            this.standards    = JsonConvert.DeserializeObject <List <Standards> >(cur.standards);
            this.tillDateTime = cur.tillDateTime;
            this.fromDateTime = cur.fromDateTime;
        }
 private void RoomViewModelOnEditEnded(RealEstateEditViewModel <T> .EditEndedMode editEndedMode, T entity)
 {
     if (editEndedMode == RealEstateEditViewModel <T> .EditEndedMode.Add)
     {
         Entities.Add(CreateNewViewModel(entity));
     }
     if (editEndedMode == RealEstateEditViewModel <T> .EditEndedMode.Edit)
     {
         CurrentEntity.LoadViewModel(entity);
     }
 }
Exemple #15
0
        private void EntityArchetypeTextBox_TextChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            uint   hash = 0;
            string name = EntityArchetypeTextBox.Text;

            if (!uint.TryParse(name, out hash))//don't re-hash hashes
            {
                hash = JenkHash.GenHash(name);
                JenkIndex.Ensure(name);
            }
            EntityArchetypeHashLabel.Text = "Hash: " + hash.ToString();

            var arch = ProjectForm.GameFileCache.GetArchetype(hash);

            if (arch == null)
            {
                EntityArchetypeHashLabel.Text += " (not found)";
            }

            if (CurrentEntity != null)
            {
                lock (ProjectForm.ProjectSyncRoot)
                {
                    CurrentEntity._CEntityDef.archetypeName = new MetaHash(hash);

                    if (CurrentMCEntity != null)
                    {
                        CurrentMCEntity._Data.archetypeName = new MetaHash(hash);
                    }

                    if (CurrentEntity.Archetype != arch)
                    {
                        CurrentEntity.SetArchetype(arch);

                        if (CurrentEntity.IsMlo)
                        {
                            CurrentEntity.MloInstance.InitYmapEntityArchetypes(ProjectForm.GameFileCache);
                        }

                        ProjectItemChanged();
                    }
                }
            }

            ProjectForm.ProjectExplorer?.UpdateEntityTreeNode(CurrentEntity);
        }
Exemple #16
0
 private void OnControlledEntityChanged(ControlledEntityChangedEvent e)
 {
     if (e.controlledEntity.name.Equals("Player"))
     {
         _currentlyControlledEntity = CurrentEntity.Player;
     }
     else
     {
         _currentlyControlledEntity = CurrentEntity.Minion;
     }
 }
Exemple #17
0
 public override void Response(ICollision collided)
 {
     if (collided.CurrentEntity is HiddenBlockEntity &&
         (collided.CurrentEntity as HiddenBlockEntity).BState is HiddenBlockState)
     {
     }                                                                                //do nothing
     else
     {
         CurrentEntity.CollisionResponse(collided);
     }
 }
Exemple #18
0
        public virtual EntityType GetEntityByFileName(string FileName)
        {
            foreach (EntityType CurrentEntity in Entities)
            {
                if (CurrentEntity.GetFilename() == FileName)
                {
                    return(CurrentEntity);
                }
            }

            return(null);
        }
Exemple #19
0
 public override void Response(ICollision collided)//can collide with blocks and Goomba or Items
 {
     if (!BottomCollision(collided) && collided.CurrentEntity is HiddenBlockEntity &&
         (collided.CurrentEntity as HiddenBlockEntity).BState is HiddenBlockState)
     {
         //do nothing
     }
     else
     {
         CurrentEntity.CollisionResponse(collided);
     }
 }
Exemple #20
0
 public override void Response(ICollision collided)
 {
     if (collided is MarioCollision &&
         (collided.CurrentEntity as MarioEntity).PowerState is MarioInvincibleState)
     {
         CurrentEntity.Dead = true;
         (collided.CurrentEntity as MarioEntity).Sounds.PlaySound(EventSoundEffects.EventSounds.Stomp);
     }
     else
     {
         CurrentEntity.CollisionResponse(collided);
     }
 }
Exemple #21
0
        public async override void Prepare()
        {
            DogShowList = await _dogShowService.GetDogShowListAsync <DogShowDetail>();

            SelectedDogRegistration = await _dogRegistrationService.GetDogRegistrationAsync <DogRegistrationDetail>(data.DogId);

            IBreedEntryEntity entry = await _breedEntryService.GetBreedEntryAsync <BreedEntry>(data.Id);

            entry.Classes = await _dogShowService.GetListOfClassEntriesForBreedEntryAsync <BreedClassEntryEntityWithClassDetailForSelection>(data.Id);

            entry.Dog     = SelectedDogRegistration;
            CurrentEntity = (entry as BreedEntry);
            CurrentEntity.MarkEntityAsClean();
        }
Exemple #22
0
        public override void PostSerialize()
        {
            base.PostSerialize();

            if (bReading)
            {
                SerializeListOwnerPrefixFixup();

                foreach (EntityType CurrentEntity in Entities)
                {
                    CurrentEntity.FixupLinks();
                }
            }
        }
Exemple #23
0
        /// <summary>
        /// Returns a string list of all event data
        /// </summary>
        public string[] ToString()
        {
            // Get timespan
            TimeSpan et = TimeSpan.FromSeconds(EventTime);
            // Calculate hours
            int etHours = et.Hours + (Global.StartSimulationTime / Constants.DATE_TIME_FACTOR);

            // Setup string[] for display
            string[] entityToString = CurrentEntity.ToString();
            entityToString[1] = EventType.ToString();
            entityToString[2] = string.Format("{0:D1}:{1:D2}:{2:D2}", etHours, et.Minutes, et.Seconds);

            // return data string array
            return(entityToString);
        }
Exemple #24
0
        public AbilityScreenViewModel()
        {
            Editor = new EditorViewModel <AbilityVM>(controller.Abilities.Select(r => CreateVM(r)),
                                                     "Выберите возможность:",
                                                     () =>
            {
                var ent = controller.CreateAbility();
                return(CreateVM(ent));
            });
            Buttons = new AddButtonsViewModel <AbilityVM>(OnAddUsers, "+ пользователи", OnAddRoles, "+ роли");
            Editor.PropertyChanged += Editor_PropertyChanged;

            controller.UserRolesChanged += (s, e1) =>
            {
                SetupAbilityUsers(); // на случай автодобавления роли при добавлении возможности
                SetupUserRoles();
            };
            controller.UserAbilitiesChanged += (s, e1) =>
            {
                SetupAbilityUsers();
                SetupUserRoles();
            };
            controller.RoleAbilitiesChanged += (s, e1) =>
            {
                SetupAbilityUsers(); // если вариант проще
                SetupUserRoles();
            };
            controller.DeprecatedChanged += (s, e1) =>
            {
                if (e1.entity == CurrentEntity.ability)
                {
                    CurrentEntity.OnDeprecatedChangedByCode();
                }
            };
            PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == "Mode")
                {
                    SetupUserRoles();
                }
            };

            AfterConstructed();
        }
Exemple #25
0
        public RoleScreenViewModel()
        {
            Editor = new EditorViewModel <RoleVM>(controller.Roles.Select(r => CreateVM(r)),
                                                  "Выберите роль:",
                                                  () =>
            {
                var ent = controller.CreateRole();
                return(CreateVM(ent));
            });
            Buttons = new AddButtonsViewModel <RoleVM>(OnAddAbilities, "+ возможности", OnAddUsers, "+ пользователи");
            Editor.PropertyChanged      += Editor_PropertyChanged;
            controller.UserRolesChanged += (s, e1) =>
            {
                SetupAbilityUsers();
            };
            controller.UserAbilitiesChanged += (s, e1) =>
            {
                SetupAbilityUsers();
            };
            controller.RoleAbilitiesChanged += (s, e1) =>
            {
                SetupRoleAbilities();
                SetupAbilityUsers();
            };
            controller.DeprecatedChanged += (s, e1) =>
            {
                if (e1.entity == CurrentEntity.role)
                {
                    CurrentEntity.OnDeprecatedChangedByCode();
                }
            };
            PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == "Mode")
                {
                    SetupAbilityUsers();
                }
            };

            AfterConstructed();
        }
    private void SaveMyProduct(bool saveNew)
    {
        // проверка существования сущности
        if (CurrentEntity == null)
        {
            return;
        }

        // проверка заполнения необходимых полей
        var message        = string.Empty;
        var messageInvalid = string.Empty;

        if (string.IsNullOrWhiteSpace(txtProductName.Text))
        {
            message += (string.IsNullOrEmpty(message) ? string.Empty : "<br />") + " - " + Convert.ToString(GetLocalResourceObject("resProductName")).Replace(":", string.Empty);
        }
        if (string.IsNullOrWhiteSpace(txtProductType.Text))
        {
            message += (string.IsNullOrEmpty(message) ? string.Empty : "<br />") + " - " + Convert.ToString(GetLocalResourceObject("resProductType")).Replace(":", string.Empty);
        }
        if (message.IsNotNullOrEmpty() || messageInvalid.IsNotNullOrEmpty())
        {
            if (message.IsNotNullOrEmpty())
            {
                message = $"{GetLocalResourceObject("RequiredFieldsValidation.Message")}<br />{message}<br />";
            }
            if (messageInvalid.IsNotNullOrEmpty())
            {
                message += $"<br />{GetLocalResourceObject("RequiredFieldsValidation.Invalid.Message")}<br />{messageInvalid}";
            }
            message = "setTimeout(function() { Sage.UI.Dialogs.alert('" + message + "'); }, 1);";
            ScriptManager.RegisterStartupScript(this, GetType(), ClientID + "_RequiredFieldsValidation", message, true);
            return;
        }

        // сохраниение сущности
        CurrentEntity.Save();

        // перенаправление после сохранения в зависимости от нажатой кнопки
        Response.Redirect(saveNew ? "FbInsertMyProduct.aspx?modeid=Insert" : string.Format("FbMyProduct.aspx?entityId={0}", CurrentEntity.Id));
    }
Exemple #27
0
        /// <summary>
        ///     将远程调用的方法解码为RpcCall调用。
        /// </summary>
        /// <param name="data">远程调用方法的二进制数组</param>
        /// <param name="unLen">数据偏移量</param>
        protected override void DoDecode(byte[] data, ref int unLen)
        {
            FuncID = (ushort)VUInt16.Instance.Decode(data, ref unLen);
            if (CurrentEntity == null)
            {
                throw new DefineParseException(String.Format("Decode error: Current Entity is not set."));
            }
            var method = CurrentEntity.TryGetClientMethod(FuncID);

            if (method == null)
            {
                throw new DefineParseException(
                          String.Format("Decode error: Can not find function '{0}' in entity '{1}'.", FuncID,
                                        CurrentEntity.Name));
            }

            FuncName  = method.FuncName;
            Arguments = new Object[method.ArgsType.Count];
            for (var i = 0; i < method.ArgsType.Count; i++)
            {
                Arguments[i] = method.ArgsType[i].Decode(data, ref unLen);
            }
            if (RPCMsgLogManager.IsRecord)
            {
                var list = new List <object>(2 + Arguments.Length);
                list.Add(FuncID);
                list.Add(FuncName);
                for (var i = 0; i < Arguments.Length; i++)
                {
                    if (method.ArgsType[i].VType == VType.V_BLOB)
                    {
                        list.Add(Arguments[i] != null ? (Arguments[i] as byte[]).PackArray() : null);
                    }
                    else
                    {
                        list.Add(Arguments[i]);
                    }
                }
                RPCMsgLogManager.Receive(MSGIDType.CLIENT_RPC_RESP, list.ToArray());
            }
        }
Exemple #28
0
        private void EntityRotationQuatBox_ValueChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            Quaternion q = EntityRotationQuatBox.Value;
            Vector4    v = q.ToVector4();

            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity._CEntityDef.rotation != v)
                {
                    var wf = ProjectForm.WorldForm;

                    if (CurrentEntity.MloParent != null)
                    {
                        var world = Quaternion.Normalize(Quaternion.Multiply(q, CurrentEntity.MloParent.Orientation));
                        CurrentEntity.SetOrientation(world);
                    }
                    else
                    {
                        bool useInverse = (CurrentEntity.MloInstance == null);
                        CurrentEntity.SetOrientation(q, useInverse);
                    }

                    ProjectItemChanged();
                    wf?.BeginInvoke(new Action(() =>
                    {
                        wf.SetWidgetRotation(CurrentEntity.WidgetOrientation, true);
                    }));
                }
            }

            UpdateRotationFlag();
        }
        private void EntityPositionTextBox_TextChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            Vector3 v = FloatUtil.ParseVector3String(EntityPositionTextBox.Text);

            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity.MloParent != null)
                {
                    v = CurrentEntity.MloParent.Position + CurrentEntity.MloParent.Orientation.Multiply(v);
                    CurrentEntity.SetPosition(v);
                    ProjectItemChanged();
                }
                else
                {
                    if (CurrentEntity.Position != v)
                    {
                        CurrentEntity.SetPosition(v);
                        ProjectItemChanged();
                        var wf = ProjectForm.WorldForm;
                        if (wf != null)
                        {
                            wf.BeginInvoke(new Action(() =>
                            {
                                wf.SetWidgetPosition(CurrentEntity.WidgetPosition, true);
                            }));
                        }
                    }
                }
            }
        }
        private void EntityRotationTextBox_TextChanged(object sender, EventArgs e)
        {
            if (populatingui)
            {
                return;
            }
            if (CurrentEntity == null)
            {
                return;
            }
            Vector4 v = FloatUtil.ParseVector4String(EntityRotationTextBox.Text);

            lock (ProjectForm.ProjectSyncRoot)
            {
                if (CurrentEntity._CEntityDef.rotation != v)
                {
                    Quaternion q  = v.ToQuaternion();
                    var        wf = ProjectForm.WorldForm;

                    if (CurrentEntity.MloParent != null)
                    {
                        var world = Quaternion.Normalize(Quaternion.Multiply(q, CurrentEntity.MloParent.Orientation));
                        CurrentEntity.SetOrientation(world);
                    }
                    else
                    {
                        bool useInverse = (CurrentEntity.MloInstance == null);
                        CurrentEntity.SetOrientation(q, useInverse);
                    }

                    ProjectItemChanged();
                    wf?.BeginInvoke(new Action(() =>
                    {
                        wf.SetWidgetRotation(CurrentEntity.WidgetOrientation, true);
                    }));
                }
            }
        }