View Single Post
Old 04-16-2010, 04:04 AM   #1
chaley
Grand Sorcerer
chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.
 
Posts: 11,742
Karma: 6997045
Join Date: Jan 2010
Location: Notts, England
Device: Kobo Libra 2
Opinions wanted on details of new GUI features

I am now wrapping up implementing several new features that use Kovid's stellar custom column database code, and I would like some opinions on some details.

The background: calibre users will soon have the ability to create user-defined 'custom columns' that are stored individually in the database and seen as columns on the GUI. A custom column can be one of several types: 'text/multiple' (like today's Tags), 'text/single' (like today's Publisher), 'comments' (like today's Comments), 'yes/no' (boolean), 'datetime', 'integer', 'float', and 'rating' (like today's Rating). Those of interest for this message are 'yes/no', 'text/multiple', and 'text/single' .

Questions:

1. Like most columns, Yes/No columns can actually have three values: Yes, No, and not-set. What should a search for 'col:no' return, columns with No or columns with either No or not-set? What should col:false return, No or either No or not-set? What should col:true return, Yes or both Yes and No (currently, searching for true means testing if the column has a value.)

When considering the choice, note that if col:yes matches only columns containing 'Yes' and col:no only columns containing No, then:
- a search for 'not col:yes' would get both No and not-set.
- a search for 'not col:no' would get both Yes and not-set.
- 'not (col:yes or col:no)' would get only not-set columns.

Alternative: the value No goes away, leaving as possible values Yes and not-set, making the column effectively two-valued.

2. Text/multiple and text/single columns will appear in the tag browser as categories. Should they disappear when they are removed from the GUI (config/interface/uncheck column)? If so, should the standard categories also disappear if unchecked? For example, if I take Publisher off the GUI, should it also disappear from the tags browser?

3. A 'restrict view' feature has been added that, when selected, restricts the GUI to show only books that match the restriction (a saved search). The restriction is selected in a place different from the search box; the search box is left empty. A restriction not only limits the books displayed, but also limits contents of the categories in the tags pane to items in the selected books. Searching and tag browsing operate only on the books matching the restriction. The intent is to permit definition of 'mini-libraries': calibre acts as if the library contained only the selected books.

The question: how should a restriction be visually indicated? Options I have thought of: a) set the 'number of books' text next to the search box to 'restricted' instead of 'all books', b) color that same box/text (what color)?, or c) be indicated by the fact that the restriction selection box has something in it. Ideas?

Please note: adding a box to the libraries bar is not an option.
---
Thanks in advance.
chaley is offline   Reply With Quote