NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

nameAndDescriptionWnd.py (3467B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\structure\accessGroups\nameAndDescriptionWnd.py
      2 from carbonui.control.singlelineedits.singleLineEditText import SingleLineEditText
      3 from carbonui.button.group import ButtonGroup
      4 from eve.client.script.ui.control.eveEditPlainText import EditPlainText
      5 from carbonui.control.window import Window
      6 import carbonui.const as uiconst
      7 from eve.client.script.ui.control.eveLabel import EveLabelSmall
      8 from localization import GetByLabel
      9 from carbonui.uicore import uicore
     10 from player_messaging.client.ui_message import prompt_player_fsd_dialog
     11 
     12 class AccessGroupsNameAndDescBaseWnd(Window):
     13     default_name = 'Edit Groups window'
     14     default_windowID = 'AccessGroupsNameAndDescBaseWnd'
     15     default_width = 400
     16     default_height = 200
     17     default_minSize = (400, 200)
     18     confirmLabelPath = ''
     19 
     20     def ApplyAttributes(self, attributes):
     21         Window.ApplyAttributes(self, attributes)
     22         self.controller = attributes.controller
     23         self.btnGroup = ButtonGroup(parent=self.sr.main, idx=0)
     24         self.btnGroup.AddButton(GetByLabel(self.confirmLabelPath), self.OnConfirmClicked)
     25         self.btnGroup.AddButton(GetByLabel('UI/Commands/Cancel'), self.Cancel)
     26         self.groupNameField = SingleLineEditText(parent=self.sr.main, align=uiconst.TOTOP, label=GetByLabel('UI/Structures/AccessGroups/GroupName'), padding=4, top=10, maxLength=30)
     27         EveLabelSmall(name='titleHeader', parent=self.sr.main, text=GetByLabel('UI/Structures/AccessGroups/GroupDescription'), align=uiconst.TOTOP, top=6, padLeft=4)
     28         self.groupDescField = EditPlainText(parent=self.sr.main, padding=(4, 0, 4, 4), maxLength=200)
     29         self.PopulateFields()
     30 
     31     def PopulateFields(self):
     32         pass
     33 
     34     def OnConfirmClicked(self, *args):
     35         name = self.groupNameField.GetValue().strip()
     36         desc = self.groupDescField.GetValue().strip()
     37         if name:
     38             self.Confirm(name, desc)
     39             self.CloseByUser()
     40         else:
     41             prompt_player_fsd_dialog('uiwarning03')
     42 
     43     def Confirm(self, name, desc):
     44         pass
     45 
     46     def Cancel(self, *args):
     47         self.CloseByUser()
     48 
     49 
     50 class AccessGroupsCreateWnd(AccessGroupsNameAndDescBaseWnd):
     51     default_captionLabelPath = 'UI/Structures/AccessGroups/CreateNewGroup'
     52     confirmLabelPath = 'UI/Structures/AccessGroups/CreateGroupBtn'
     53 
     54     def Confirm(self, name, desc):
     55         self.controller.OnCreateGroup(name, desc)
     56 
     57 
     58 class AccessGroupsEditGroup(AccessGroupsNameAndDescBaseWnd):
     59     default_captionLabelPath = 'UI/Structures/AccessGroups/EditGroupCaption'
     60     confirmLabelPath = 'UI/Common/Buttons/Save'
     61 
     62     def ApplyAttributes(self, attributes):
     63         self.groupInfo = attributes.groupInfo
     64         AccessGroupsNameAndDescBaseWnd.ApplyAttributes(self, attributes)
     65 
     66     def PostApplyAttributes(self, attributes):
     67         caption = GetByLabel(self.default_captionLabelPath, oldGroupName=self.groupInfo.name)
     68         attributes.caption = caption
     69         AccessGroupsNameAndDescBaseWnd.PostApplyAttributes(self, attributes)
     70 
     71     def PopulateFields(self):
     72         oldGroupName = self.groupInfo.name
     73         self.groupNameField.SetText(oldGroupName)
     74         oldGroupDesc = self.groupInfo.description
     75         self.groupDescField.SetText(oldGroupDesc)
     76 
     77     def Confirm(self, newName, newDesc):
     78         groupID = self.groupInfo.groupID
     79         self.controller.EditGroupNameAndDescription(groupID, newName, newDesc)