def restore_splitter_sizes(window: QDialog, splitter: QSplitter): global cache if cache: symbol = window.__class__.__name__ + '_' + splitter.objectName() sizes = cache.get_value(symbol, None, list) if not isinstance(sizes, list) or len(sizes) != 2: sizes = [100, 100] if splitter.parent(): if splitter.orientation() == Qt.Vertical: sizes[0], sizes[1] = round(splitter.parent().height() / 2), round(splitter.parent().height() / 2) else: sizes[0], sizes[1] = round(splitter.parent().width() / 2), round(splitter.parent().width() / 2) splitter.setSizes(sizes)
def save_splitter_sizes(window: QDialog, splitter: QSplitter): global cache if cache: symbol = window.__class__.__name__ + '_' + splitter.objectName() cache.set_value(symbol, splitter.sizes())