summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-05-18Remove unused functions border_{,no}color()Lukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18ui-day: Large-scale refactoringLukas Fleischer
Use the generic list box implementation for the appointments panel. This results in some major changes to how the items are printed. Note that this temporarily removes the heading showing the POM and the date as well as the separating line between events and appointments. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Store appointments for the current day in a vectorLukas Fleischer
This allows for more efficient access to items at specific positions. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Add a vector implementationLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18ui-calendar: Use scroll window implementationLukas Fleischer
Make use of the generic scroll window implementation for the calendar view. Note that this is useful despite the panel not needing a scroll bar, since the scroll window functions can be used to draw the panel border and take care of relative positions. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18ui-todo: Large-scale refactoringLukas Fleischer
This is a complete overhaul of the TODO list user interface. The new implementation uses the generic list box panel. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Add support for drawing highlighted decorationLukas Fleischer
This allows for drawing selected scroll windows and list boxes with a highlighted border. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18custom.c: Simplify codeLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Remove numbers and whitespace from option menusLukas Fleischer
These are no longer needed since items are no longer accessed via numeric keys. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Reduce flicker when resizing in option menusLukas Fleischer
Do not update the main windows when resizing the terminal in the general options menu or in the notification options menu. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Use generic list box for notification optionsLukas Fleischer
This changes the notification options menu to use the new generic list box implementation. The only user-visible change is that items are now accessed via the arrow and edit key bindings instead of digits. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Use generic list box for general optionsLukas Fleischer
This changes the general options menu to use the new generic list box implementation. The only user-visible change is that items are now accessed via the arrow and edit key bindings instead of digits. This also allows for easily adding more than 10 options to the menu. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Add a generic list box implementationLukas Fleischer
This adds a very generic list box implementation. List boxes with items of different heights are supported. Two callback functions to determine the height of every single item and to draw a specific item are used. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-18Rework scroll window implementationLukas Fleischer
This complete rewrite of the scroll window implementation decouples scroll windows from every other window abstraction layer we use. Note that this leads to some code duplication. The long-term purpose of this rewrite, however, is to eventually make every panel use scroll windows. This makes for a huge cleanup of the UI code. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2014-05-13Pass date parameter to ui_day_update_panel()Lukas Fleischer
This allows for drawing appointment panels for days other than the current day. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-08-27Display translated help pagesLukas Fleischer
Use an algorithm similar to gettext's locale resolution to find an appropriate translation to display. Fall back to the English version. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-08-27Install translated documentationLukas Fleischer
Add rules so that translated documentation is installed to /usr/local/share/doc/calcurse/<lang>/. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-08-27doc/: Add translated documentationLukas Fleischer
Created using `po2txt` from translate-toolkit. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-08-27po/: Translation updates from TransifexLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-08-13Redraw screen if command prompt is canceledLukas Fleischer
When pressing escape or entering an empty command, we returned from key_generic_cmd() without updating the screen. Fix this by creating a cleanup section at the bottom of key_generic_cmd() and jump to that section when the command prompt is cancelled. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24.tx/config: Add file filters for all resourcesLukas Fleischer
This allows for naming translations "<foo>-<lang>.po", where <foo> is a document name (e.g. "add") and <lang> is a language (e.g. "de"), and simply using `tx push -t` to submit them to Transifex. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24po/doc/: Update message catalogsLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24Drop doc/main.txtLukas Fleischer
This is no longer needed since we don't use the internal online help system anymore. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24doc/Makefile.am: Fix "copy-paste.txt" file nameLukas Fleischer
Regression introduced in 6ef890b434e7ab65abdd0e6bb13cb86e583d85ae. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24doc/edit.txt: Mention the move featureLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24doc/: Mention punctual appointmentsLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-24doc/: Spelling and grammar fixesLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23Add POT files for online help textsLukas Fleischer
Use translate-toolkit to generate message catalogs for all online help texts. Add Transifex resources for each of the message catalogs. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23.tx/config: Rename main resource to "calcurse"Lukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23.tx/config: Set global translation typeLukas Fleischer
We only deal with PO files in calcurse -- set the global translation format accordingly. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23.tx/config: Update host URILukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23calcurse.pot: Update message catalogLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23po/POTFILES.in: Sync with source treeLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-23doc/: Rename copy_paste.txt to copy-paste.txtLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-22doc/: Do not mention explicit key bindingsLukas Fleischer
Since we exported help texts into text files, we are no longer able to refer to the user's key bindings. Drop key binding references from the online help texts. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-22doc/: Fix several typos in online help textsLukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-22doc/: Formatting fixesLukas Fleischer
* Use an AsciiDoc-compatible layout. * Use a maximum line width of 79 characters everywhere. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-22manual.txt: Update "Online help" sectionLukas Fleischer
Add information on recent changes to the online help system. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-22manual.txt: Update "Creation History" sectionLukas Fleischer
Remove some non-relevant information. Add information on myself to the creation history. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-19Document for -l/--limit and %(remaing)/%(duration)William Pettersson
Update man-page and manual to describe limit option, and new formatting options for %(remaining) and %(duration). Signed-off-by: William Pettersson <william.pettersson@gmail.com> Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-18Add write and quit commandsLukas Fleischer
This adds following vim-style commands to the command mode: * write * w * quit * q * wq Commands can be suffixed with a "!" to force execution. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-18Add support for moving appointmentsLukas Fleischer
This adds an edit option to change an appointment's start time without changing its duration. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-18update_start_time(): Allow for moving an itemLukas Fleischer
Add a parameter that specifies whether the duration should be updated when updating the start time of an item. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-18Allow for making an appointment punctualLukas Fleischer
This allows for setting an empty end time when editing an item, converting it into a punctual appointment. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-18key_generic_help(): Use display_help()Lukas Fleischer
Now that we moved the online help code into a separate function, use that to display the introduction help page when pressing the generic help key binding. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-18Split online help code into a separate functionLukas Fleischer
Reintroduce help.c and move the online help code into a new function display_help(). Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-17Rename io_file_exist{,s}()Lukas Fleischer
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-17Add several help topic aliasesLukas Fleischer
Add aliases and choose the right help topic if the user requests help on a key binding or a key binding label. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-17Allow for getting help on key bindingsLukas Fleischer
In addition to getting help on specific topics, users can type things like ":help s" or ":help ^A" to get help on specific key bindings now. Note that we do not add help texts for these keys here -- we will alias key bindings to already existing topics in a follow-up patch. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2013-07-17Drop legacy online help systemLukas Fleischer
Remove the old online help system and change the generic help key to do the same thing as ":help". This also removes some context-sensitive help. We should think about re-adding support for this later. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>