def list_dialog(title='', items=None, multiple=False, done_button_title='Done'): c = dialogs._ListDialogController(title, items, multiple, done_button_title=done_button_title) c.view.data_source.delete_enabled = False c.view.present('sheet') c.view.wait_modal() return c.selected_item
def show_objc_properties(sender): row = picker.row_for_view(sender) entry = picker.flat_entries[row] b = entry.rootview datasource = getobjcprops.ObjCPropertyDataSource(b) c = dialogs._ListDialogController(title=b.__repr__(), items=[], multiple=False, done_button_title='Done') c.view.data_source = datasource c.view.delegate = datasource datasource.action = properties_row_selected n.push_view(c.view)
def SClist_dialog(title='', items=None, multiple=False, done_button_title='Done', frame =None): if not items: items = [] if not isinstance(title, basestring): raise TypeError('title must be a string') if not isinstance(items, collections.Sequence): raise TypeError('items must be a sequence') c = dialogs._ListDialogController(title, items, multiple, done_button_title=done_button_title) if frame: c.view.frame = frame c.view.present('sheet') c.view.wait_modal() return c.selected_item
def properties_row_selected(ds): selected_item = ds.items[ds.selected_row] print(selected_item) addr = re.match('<[^:]*: (0x[0-9a-fA-F]*)', selected_item[1]) if addr: addr = addr.group(1) addr = literal_eval(addr) obj = ObjCInstance(addr) print(obj) datasource = getobjcprops.ObjCPropertyDataSource(obj) c = dialogs._ListDialogController(title=selected_item[0], items=[], multiple=False, done_button_title='Done') c.view.data_source = datasource c.view.delegate = datasource datasource.action = properties_row_selected n.push_view(c.view)