mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-01 16:34:53 +01:00
don't care about after_widget or if is first
This commit is contained in:
parent
b79cb04d51
commit
25ed310fed
1 changed files with 10 additions and 29 deletions
|
|
@ -435,7 +435,7 @@ class ModifiableDictItem(QtWidgets.QWidget):
|
||||||
self.wrapper_widget.label_widget.setText(label)
|
self.wrapper_widget.label_widget.setText(label)
|
||||||
|
|
||||||
def on_add_clicked(self):
|
def on_add_clicked(self):
|
||||||
widget = self.entity_widget.add_new_key(None, None, self)
|
widget = self.entity_widget.add_new_key(None, None)
|
||||||
widget.key_input.setFocus(True)
|
widget.key_input.setFocus(True)
|
||||||
|
|
||||||
def on_edit_pressed(self):
|
def on_edit_pressed(self):
|
||||||
|
|
@ -634,7 +634,7 @@ class DictMutableKeysWidget(BaseWidget):
|
||||||
# TODO implement
|
# TODO implement
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def add_new_key(self, key, label=None, after_widget=None):
|
def add_new_key(self, key, label=None):
|
||||||
uuid_key = None
|
uuid_key = None
|
||||||
entity_key = key
|
entity_key = key
|
||||||
if not key:
|
if not key:
|
||||||
|
|
@ -654,7 +654,7 @@ class DictMutableKeysWidget(BaseWidget):
|
||||||
|
|
||||||
# Backup solution (for testing)
|
# Backup solution (for testing)
|
||||||
if input_field is None:
|
if input_field is None:
|
||||||
input_field = self.add_widget_for_child(child_entity, after_widget)
|
input_field = self.add_widget_for_child(child_entity)
|
||||||
|
|
||||||
if key:
|
if key:
|
||||||
# Happens when created from collapsible key items where key
|
# Happens when created from collapsible key items where key
|
||||||
|
|
@ -732,29 +732,16 @@ class DictMutableKeysWidget(BaseWidget):
|
||||||
return
|
return
|
||||||
self.entity.set_child_label(entity, label)
|
self.entity.set_child_label(entity, label)
|
||||||
|
|
||||||
def add_widget_for_child(
|
def add_widget_for_child(self, child_entity):
|
||||||
self, child_entity, after_widget=None, first=False
|
|
||||||
):
|
|
||||||
if first:
|
|
||||||
new_widget_index = 0
|
|
||||||
else:
|
|
||||||
new_widget_index = len(self.input_fields)
|
|
||||||
|
|
||||||
if self.input_fields and not first:
|
|
||||||
if not after_widget:
|
|
||||||
after_widget = self.input_fields[-1]
|
|
||||||
|
|
||||||
for idx in range(self.content_layout.count()):
|
|
||||||
item = self.content_layout.itemAt(idx)
|
|
||||||
if item.widget() is after_widget:
|
|
||||||
new_widget_index = idx + 1
|
|
||||||
break
|
|
||||||
|
|
||||||
input_field = ModifiableDictItem(
|
input_field = ModifiableDictItem(
|
||||||
self.entity.collapsible_key, child_entity, self
|
self.entity.collapsible_key, child_entity, self
|
||||||
)
|
)
|
||||||
self.input_fields.append(input_field)
|
self.input_fields.append(input_field)
|
||||||
|
|
||||||
|
new_widget_index = self.content_layout.count() - 1
|
||||||
|
|
||||||
self.content_layout.insertWidget(new_widget_index, input_field)
|
self.content_layout.insertWidget(new_widget_index, input_field)
|
||||||
|
|
||||||
return input_field
|
return input_field
|
||||||
|
|
||||||
def remove_row(self, widget):
|
def remove_row(self, widget):
|
||||||
|
|
@ -823,21 +810,15 @@ class DictMutableKeysWidget(BaseWidget):
|
||||||
|
|
||||||
for key, child_entity in self.entity.items():
|
for key, child_entity in self.entity.items():
|
||||||
found = False
|
found = False
|
||||||
previous_input = None
|
|
||||||
for input_field in self.input_fields:
|
for input_field in self.input_fields:
|
||||||
if input_field.entity is not child_entity:
|
if input_field.entity is child_entity:
|
||||||
previous_input = input_field
|
|
||||||
else:
|
|
||||||
found = True
|
found = True
|
||||||
break
|
break
|
||||||
|
|
||||||
if not found:
|
if not found:
|
||||||
changed = True
|
changed = True
|
||||||
args = [previous_input]
|
|
||||||
if previous_input is None:
|
|
||||||
args.append(True)
|
|
||||||
|
|
||||||
_input_field = self.add_widget_for_child(child_entity, *args)
|
_input_field = self.add_widget_for_child(child_entity)
|
||||||
_input_field.origin_key = key
|
_input_field.origin_key = key
|
||||||
_input_field.set_key(key)
|
_input_field.set_key(key)
|
||||||
if self.entity.collapsible_key:
|
if self.entity.collapsible_key:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue