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)