I, too, like the concept of preserving the read only status of a file across sessions.
Why Is This Useful
While it is frequently possible to keep reference files locked against changes by marking them Read Only in the file system, this is not always practical. For example, I frequently have configuration and header files that are works in progress open primarily for reference. Changing such files, especially headers, might disrupt incremental builds, by unnecessarily causing stable code to be rebuilt solely because of a accidental change to a header, which could range from something harmless, such as replacing tabs with spaces, to something devastating, such as an accidentally typed character that changed the name of a widely used symbolic constant.
Perhaps Limited to Projects
This is a feature that might fit well into a Project configuration. Ideally, this would be a configurable setting; e. g., if a certain box is ticked, the read only status of files that belong to the project is preserved in the file list.
Another feature that would fit well into projects is to save the current location of each file that belongs to the project.
Ideally, both settings would have project scope, with options to override for each file.