This is exactly the right way to do it. In fact, I would probably create one or more named dummy objects so that I can easily refer to them later. Something like this, perhaps:
def __init__(self, **properties):
self.init_components(**properties)
# When the form is created, populate the RepeatingPanel
self.data = [ ...your actual data... ]
self.new_item = {"foo": "", "bar": ""}
self.repeating_panel_1.items = self.data + [self.new_item]
def save_new_item_click (self, **event_args):
# When the "Save new item" button is clicked,
# do something to store the new data, and refresh the list.
# May want to actually save self.new_item somewhere.
# For now, just add it to self.data.
self.data += [self.new_item]
# Create a new blank item for the end of the list, and
# repopulate the RepeatingPanel.
self.new_item = {"foo": "", "bar": ""}
self.repeating_panel_1.items = self.data + [self.new_item]
Hope that helps!