コード例 #1
0
        private static void EditItem(QuickShopItem item, Role role)
        {
            Modal itemEditModal = CreateItemEditModal(item, role);

            Hud.Current.RootPanel.AddChild(itemEditModal);

            itemEditModal.Display();
        }
コード例 #2
0
 private static void PopulateEditWindowWithSettings(DialogBox dialog, QuickShopItem item)
 {
     dialog.Content.SetPanelContent((panelContent) =>
     {
         SettingsPage.CreateSettingsEntry(panelContent, "MENU.SHOPEDITOR.PRICE.TITLE", item.ItemData.Price, "MENU.SHOPEDITOR.PRICE.DESCRIPTION", null, (value) =>
         {
             item.ItemData.Price = value;
         });
     });
 }
コード例 #3
0
        private static Modal CreateItemEditModal(QuickShopItem item, Role role)
        {
            DialogBox dialogBox = new();

            dialogBox.Header.DragHeader.IsLocked = false;
            dialogBox.SetTranslationTitle(new TranslationData("MENU.SHOPEDITOR.EDIT.DESCRIPTION", new TranslationData(item.ItemData.GetTranslationKey("NAME"))));
            dialogBox.AddClass("itemeditwindow");

            dialogBox.OnAgree = () =>
            {
                ServerUpdateItem(item.ItemData.Name, true, JsonSerializer.Serialize(item.ItemData), role.Name);

                dialogBox.Close();
            };

            dialogBox.OnDecline = () =>
            {
                dialogBox.Close();
            };

            PopulateEditWindowWithSettings(dialogBox, item);

            return(dialogBox);
        }
コード例 #4
0
        private static void ToggleItem(QuickShopItem item, Role role)
        {
            bool toggle = !item.HasClass("selected");

            ServerUpdateItem(item.ItemData.Name, toggle, toggle ? JsonSerializer.Serialize(item.ItemData) : "", role.Name);
        }