def update(self, event):
        self._sizer.Clear()
        self.DestroyChildren()

        has_runlists = False
        for attr in self._model.record().attributes():
            if attr.type() == ATTR_TYPE.DATA:
                if attr.non_resident():
                    for (_, __) in attr.runlist().runs():
                        has_runlists = True

        if has_runlists:
            warning_panel = DiskGeometryWarningPanel(self, self._model)
            self._sizer.Add(warning_panel,
                            self.NOT_EXPAND_VERTICALLY, wx.EXPAND)

        for attr in self._model.record().attributes():
            if attr.type() == ATTR_TYPE.DATA:
                try:
                    if attr.non_resident():
                        try:
                            for (offset, length) in attr.runlist().runs():
                                runlist_panel = RunlistPanel(self,
                                                             offset,
                                                             length,
                                                             self._model)
                                self._sizer.Add(runlist_panel,
                                                0, wx.EXPAND)
                        except __HOLE__:
                            sys.stderr.write("Error parsing runlist\n")
                            continue
                    elif len(attr.value()) > 0:
                        value_view = wx.TextCtrl(self,
                                                 style=wx.TE_MULTILINE)
                        value_view.SetFont(wx.Font(8, wx.SWISS, wx.NORMAL,
                                                 wx.NORMAL, False, u'Courier'))
                        value_view.SetValue(unicode(_format_hex(attr.value())))
                        self._sizer.Add(value_view,
                                        self.EXPAND_VERTICALLY, wx.EXPAND)
                except ZeroDivisionError:
                    continue
        self.Layout()
dataset/ETHPy150Open williballenthin/INDXParse/MFTView.py/RecordDataPane.update