1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
,-----.-----.----. ,-----.
`-. ,-| ,-. | ,-. `| ,-. |
| | | `-' | `-' ,| `-' |
`-' `-----'----' `-----'
+-------------------------------------------------------------+
| Tasks with one star (*----) are easy, tasks with five stars |
| (*****) are hard to do. Please submit your tasks in the |
| appropriate category and delete tasks that you did. Don't |
| forget to write it down in ChangeLog and commit comments! |
+-------------------------------------------------------------+
HTML Parsing
- (*----) Tags to be implemented:
img, pre (needs extra parsing code), code, font, em, ul, ol, li
- (**---) Figure out how to use fonts properly
HTML Display
- (***--) Images
Looks
- (***--) Icons:
* Logo icon:
* Dog's nose is too big. (Compare with dog photos!)
* Remove antenna?
* Missing:
* Podcast icon
* 'Add category' toolbar icon, 32x32
* Generic 'delete' icons for toolbar, 32x32
* Delete feed : OK
* Delete category
* Delete article group
GUI
- (***--) Check if it's possible to drop articles *on* a database element
instead of in between
- (***--) Attach icons to the cursor when using drag&drop
- (***--) Make outline view remember the expansion state
- (****-) Rebuild Fonts preference panel
General
- (*----) Make databases non-components
- (****-) Clean up Database code!!!
- _One_ method to insert DatabaseElements somewhere
- A method to get the best (category, index) tuple for insertion
- (**---) OPML support
- (**---) Find out how the language descriptions on GNUstep work,
where the weekday names are read from in the NSCalendarDate
initializer method. Make date parsing run with different
language settings than just english!
[Note: Solved in RSSKit now. When RSSKit is migrated to RSSKit2,
this will then have to be done in Grr.]
- (**---) Podcasting support
- (***--) Enhance component architecture
Enhance component architecture so that components can tell
the application how important they think they are at the moment,
so that the application can switch between Podcast/HTML view
itself. (Make this a weak component feature.)
- (****-) Write ComponentManager class
- (**---) View providing components: Add a method that's called after
the view has been placed in a window, so that the components
can adjust to the new size. Call this -enableComponent and also
add -disableComponent (or similar). Let the table components
adjust their tables using NSTableView's -sizeLastColumnToFit
method. [NOTE: Is this task really needed or is it overhead?]
- (***--) Podcast Download progress window
- (*----) Improve search component in toolbar
Subtask:
* Find out how to let this search field notify you whenever
a letter is entered. (Incremental search)
Idea:
When a letter is entered, a timer is started with a delay of
a second. If another letter is enteres before the timer rang,
the timer is reset to a delay of 1 sec. So the timer always
rings about 1 sec after the last keystroke.
When the timer rings, start a search. If the current search
string is a refinement of the search string in the last
search, do a incremental search, otherwise fall back to
basic search.
When the articles to be searched change (by clicking a
category in the category outline view), try to do an
incremental search on the added articles when the new
set is a superset of the original set.
- (****-) Proxy class for articles
Implement a proxy class for articles that loads the articles
only on demand, so that the application startup is faster.
This requires modifications in RSSKit. You will have to
generalize the code to load feeds from property lists, so
that the RSSFactory handles the article loading from the
article dictionaries contained in the feed property list
structure. The storing code will also have to be adjusted.
The resulting code is likely to be incompatible with former
versions.
Management
- (**---) Draw a workflow which TODOs depend on what
- (***--) Complete Manual Testing documentation
|