Я пишу браузер файлов QML. Теперь я хочу реализовать функции back и forward . Эта функция аналогична функциональности браузера вперед и назад. Пример:
Я начинаю с "/ home / text / folder1" и просматриваю "/ home / text / folder1 / src". Теперь я просматриваю "/ home / text / folder1 / src / java". Если я нажму два раза назад, я окажусь в «/ home / text / folder1», и я больше не смогу нажать назад (кнопка должна быть серой или каким-либо другим способом указывать, что больше нет «предыдущих» элементов, которые будут показаны ).
Я думал о реализации этого через двойной список. Однако у меня возникают проблемы с пониманием того, где я должен добавлять новые элементы в список, и когда я должен это делать.
Возьмите предыдущий пример:
Если вместо того, чтобы нажимать назад дважды, я нажимаю назад только один раз (сейчас я нахожусь в "/ home / text / folder1 / src"). Если я вдруг перейду в "/ home / text / folder2", что теперь? Как теперь должен выглядеть мой двойной связанный список?
Это вопрос структуры данных, а не реализации, поэтому код не требуется.