Wednesday, December 23, 2009

The Redesign: New GUI

So how is oft-touted redesign progressing? Well it’s coming along nicely. Here’s what the new GUI looks like as of 5 minutes ago:

Sylvie and Bruno.epub - Sigil (2)

It should mostly stay that way.

So you have a fancy new “Book Browser” docked to the left by default; you can drag it to the right, or pull it out into its own window if you want. It lists all the files that make up your book (notice how the files are not renamed anymore), in neat little folders:

  • Text
  • Styles
  • Images
  • Fonts
  • Misc

You will be able to right-click in the Book Browser to add/remove files, rename them (F2 also works), open file information and the like. The file icons are queried from the OS, so whatever is the default for your system is what you’ll see in Sigil too.

The files are sorted alphabetically in all folders except the Text folder, where they are sorted according to the (imported) reading order. It’s also the only folder where you can rearrange the files, as the order determines the aforementioned reading order on export.

CSS files are now also preserved, and not loaded as style tags. Double-clicking one opens it in a special CSS editor with CSS syntax highlighting. Sigil 0.2.0 should also ship with an image viewing (but not editing) tab capability. Somewhere down the line when font embedding makes an appearance, there will be a font viewing tab as well. The “quick brown fox jumps over the lazy dog” kind. Double-click a font file in Windows and you’ll know what I mean.

The tabbed interface is also finally here. Very firefoxy. Yes, you can reorder the tabs. I hate it when applications don’t let me do that (like Foxit Reader), so Sigil is trying to be a bit smarter.

Before anyone goes all “ZOMG I CAN HAS NOW? MOAR!”, I’m merely 10% of the way through. This is just the UI, and its functionality. That’s the easy part. The very, very hard part was designing a new architecture for the back-end. But now comes the long and arduous task of integrating the old components into this new system. By “integrating” I mean rewriting. Not the Meta Editor, but the TOC editor definitely. All the importers too, plus the exporters. And a million other things. For instance, CSS and images are not currently loaded correctly in Book View.

After all of that is implemented, then of course I have to test everything.

When I feel I’ve gotten it to a point where others can try it, there will be a series of Release Candidates with the goal of shaking out any major bugs (and hopefully most of the minor). If I wasn’t so terribly bogged down with university work, I could do all this in a few weeks. But since I am, it will probably be February before you see something you can install.

Yeah, it sucks.