head 1.45; access; symbols AS_CUI_0_6_5:1.42 AS_CUI_0_6_4:1.38 AS_CUI_0_6_3:1.35 AS_CUI_0_6_2:1.28 AS_CUI_0_6_1:1.24 AS_CUI_0_6_0:1.21 AS_CUI_0_5_6:1.21 AS_CUI_0_5_5:1.15 AS_CUI_0_5_4:1.15 AS_CUI_0_5_3:1.15 AS_CUI_0_5_2:1.15 AS_CUI_0_5_1:1.15 AS_CUI_0_5_0:1.15; locks; strict; comment @# @; 1.45 date 2003.03.09.18.11.39; author rse; state Exp; branches; next 1.44; 1.44 date 2003.03.06.12.48.16; author rse; state Exp; branches; next 1.43; 1.43 date 2003.03.05.08.40.53; author rse; state Exp; branches; next 1.42; 1.42 date 2003.02.27.10.53.08; author thl; state Exp; branches; next 1.41; 1.41 date 2003.02.26.09.39.38; author rse; state Exp; branches; next 1.40; 1.40 date 2003.02.26.09.21.46; author thl; state Exp; branches; next 1.39; 1.39 date 2003.02.25.20.21.10; author rse; state Exp; branches; next 1.38; 1.38 date 2003.02.25.15.26.49; author thl; state Exp; branches; next 1.37; 1.37 date 2003.02.25.08.32.23; author thl; state Exp; branches; next 1.36; 1.36 date 2003.02.25.08.07.01; author thl; state Exp; branches; next 1.35; 1.35 date 2003.02.24.15.46.50; author thl; state Exp; branches; next 1.34; 1.34 date 2003.02.24.15.30.25; author thl; state Exp; branches; next 1.33; 1.33 date 2003.02.24.14.51.41; author thl; state Exp; branches; next 1.32; 1.32 date 2003.02.24.14.35.48; author thl; state Exp; branches; next 1.31; 1.31 date 2003.02.24.13.26.46; author thl; state Exp; branches; next 1.30; 1.30 date 2003.02.20.14.38.31; author rse; state Exp; branches; next 1.29; 1.29 date 2003.02.20.14.35.28; author rse; state Exp; branches; next 1.28; 1.28 date 2003.02.20.13.28.06; author thl; state Exp; branches; next 1.27; 1.27 date 2003.02.20.11.04.10; author thl; state Exp; branches; next 1.26; 1.26 date 2003.02.20.09.08.45; author thl; state Exp; branches; next 1.25; 1.25 date 2003.02.17.08.05.35; author thl; state Exp; branches; next 1.24; 1.24 date 2003.02.06.08.37.49; author cschug; state Exp; branches; next 1.23; 1.23 date 2003.02.05.10.57.25; author rse; state Exp; branches; next 1.22; 1.22 date 2003.02.04.13.48.41; author rse; state Exp; branches; next 1.21; 1.21 date 2002.12.19.14.07.37; author thl; state Exp; branches; next 1.20; 1.20 date 2002.12.19.12.55.01; author thl; state Exp; branches; next 1.19; 1.19 date 2002.12.19.11.44.10; author thl; state Exp; branches; next 1.18; 1.18 date 2002.12.19.10.40.35; author thl; state Exp; branches; next 1.17; 1.17 date 2002.12.19.10.14.07; author thl; state Exp; branches; next 1.16; 1.16 date 2002.12.19.09.51.48; author thl; state Exp; branches; next 1.15; 1.15 date 2002.12.17.10.57.24; author thl; state Exp; branches; next 1.14; 1.14 date 2002.12.17.08.40.57; author thl; state Exp; branches; next 1.13; 1.13 date 2002.12.11.14.02.08; author thl; state Exp; branches; next 1.12; 1.12 date 2002.12.11.13.31.50; author thl; state Exp; branches; next 1.11; 1.11 date 2002.12.11.11.12.30; author thl; state Exp; branches; next 1.10; 1.10 date 2002.12.11.10.21.43; author thl; state Exp; branches; next 1.9; 1.9 date 2002.12.11.10.21.14; author thl; state Exp; branches; next 1.8; 1.8 date 2002.12.10.15.09.55; author thl; state Exp; branches; next 1.7; 1.7 date 2002.12.10.15.05.33; author thl; state Exp; branches; next 1.6; 1.6 date 2002.12.10.14.17.31; author thl; state Exp; branches; next 1.5; 1.5 date 2002.12.10.14.09.27; author thl; state Exp; branches; next 1.4; 1.4 date 2002.12.10.13.37.43; author thl; state Exp; branches; next 1.3; 1.3 date 2002.12.10.10.26.36; author thl; state Exp; branches; next 1.2; 1.2 date 2002.12.05.14.04.57; author thl; state Exp; branches; next 1.1; 1.1 date 2002.12.05.14.03.40; author thl; state Exp; branches; next ; desc @@ 1.45 log @split into three classes to give priorities @ text @High Priority (Bugs and Essentials): o all: saved preferences (width of fields, what fields displayed) o rse: if columns start+end time are not shown (employee wants to just do amount accounting), the start+end time should be 00:00+24:00 on "o"/"O" o rse: additional synchronize key which re-aligns start/end/amount of current entry according to end of previous and start of next entry o thl: check what happens if any field (i.e. remark) exceeds screen width o rse: BUG! "~" has a redraw omission problem when being used on freshly created lines, i.e. using "o" Medium Priority (Adjustments): o rse: the date-separation underlines should start at screen position 0 (not at field start) for more optical consistency o cs: first 'TAB' should complete (if possible), second 'TAB' should open selection box (similar to bash) o cs: ESC should not enter menu because unknown terminal escapes accidentally emulate ESC (use CTRL-M) Low Priority (New Features): o thl: ~ (rounding) should be configurable o cs: maybe we can introduce plain record numbers (line numbers) which could be referenced when entering accounts ala bash history ('!4' results in the same account information as record #4) o cs: 'd' should mark deletion only o rse: switch between mouse handling which allows widget selection by click and copy'n'paste o cs: need two account expansion modes, min/max where min is bash-like and max is like it is (min must stay in edit mode) o thl: pressing # should pop up a calendar o thl: something (click on column head or press some key i.e. |col _row) should enable the user to filter for something o thl: sort accounting "popup" list o thl: / should enable the user to search for something o cs: support for favourite selections, templates, key recorder/macros or something like this for repetitive tasks o cs: xterm resizing does not work @ 1.44 log @one more wish for a convenience feature @ text @d1 22 a22 21 o all: saved preferences (width of fields, what fields displayed) o rse: if columns start+end time are not shown (employee wants to just do amount accounting), the start+end time should be 00:00+24:00 on "o"/"O" o rse: additional synchronize key which re-aligns start/end/amount of current entry according to end of previous and start of next entry o thl: / should enable the user to search for something o thl: sort accounting "popup" list o thl: something (click on column head or press some key i.e. |col _row) should enable the user to filter for something o thl: ~ (rounding) should be configurable o rse: BUG! "~" has a redraw omission problem when being used on freshly created lines, i.e. using "o" o thl: pressing # should pop up a calendar o rse: [unknown] the date-separation underlines should start at screen position 0 (not at field start) for more optical consistency o rse: [complicated] the current layout (displayed fields and their field-width) should be remembered o cs: xterm resizing does not work o cs: first 'TAB' should complete (if possible), second 'TAB' should open selection box (similar to bash) o cs: maybe we can introduce plain record numers (line numbers) which could be referenced when entering accounts ala bash history ('!4' results in the same account information as record #4) o rse: switch between mouse handling which allows widget selection by click and copy'n'paste o rse: increase size of remark field o thl: check what happens if any field (i.e. remark) exceeds screen width o cs: 'd' should mark deletion only o cs: ESC should not enter menu because unknown terminal escapes accidentally emulate ESC (use CTRL-M) o cs: need two account expansion modes, min/max where min is bash-like and max is like it is (min must stay in edit mode) o cs: support for favourite selections, templates, key recorder/macros or something like this for repetitive tasks @ 1.43 log @remember important point @ text @d3 1 @ 1.42 log @problem report @ text @d2 1 @ 1.41 log @flush @ text @d6 1 @ 1.40 log @apply rse convenience patch @ text @d1 1 @ 1.39 log @I really dislike having to adjust the amount all the time, although I do strict chronological accounting @ text @a17 1 o rse: [easy] on 'o' the amount is always '08:00'. Instead it should be end-start which makes it easier for chronological accounting @ 1.38 log @new feature "+"/"-" on date fields increment/decrement value @ text @d18 1 @ 1.37 log @new feature "~" on time fields rounds time @ text @a3 1 o thl: using +/- in a field (i.e. date/time) should be used for increasing/decreasing a value @ 1.36 log @new feature "=" on time fields recalculates time @ text @d5 1 a5 1 o thl: using ~ should round a time field to the next quarter (configurable) @ 1.35 log @implement useful "." handling on amount field @ text @a4 1 o thl: using = should force a recalculation for a time field @ 1.34 log @fix bug and improve account input @ text @a7 1 o rse: [easy] pressing "." on the amount field should recalculate instead of insert current time @ 1.33 log @change default action when quit @ text @a17 1 o cs: BUG: enter fraction into account, TAB, TAB again, nothing selected but fractional input is lost @ 1.32 log @fix wrong cursor placement when on a new line @ text @a17 1 o cs: default for 'quit without saving' should be 'cancel' @ 1.31 log @feedback from cs/rse on-site review @ text @a17 1 o cs: 'o' places cursor in wrong line if screen doesn't need scrolling @ 1.30 log @more todo @ text @d14 10 @ 1.29 log @remember old wish @ text @d8 3 a10 1 o rse: pressing "." on the amount field should recalculate instead of insert current time @ 1.28 log @introduce dirty handling, view in status, recognize when quit; cursor stays away from movement mode @ text @d8 1 @ 1.27 log @change "0" to leftmost set destination, keep "^" leftmost cell @ text @a7 1 o cs: 'q' should give a warning equal to 'File'->'Quit program' @ 1.26 log @sorting is not completely standardized but fixed to work useful and documented @ text @a9 1 o cs: '^' should auto-center the view to the most important columns @ 1.25 log @flagging was the original behaviour and visible deletion was requested by my team leader @ text @a7 1 o rse: original sorting should be kept @ 1.24 log @first flush - have fun :-) @ text @a10 1 o cs: 'd' should not delete at once but flag the record as deleted. Use '$' to sync (similar to mutt) @ 1.23 log @why is this no longer happening? @ text @d9 6 @ 1.22 log @remember from whom the stuff is @ text @d8 1 @ 1.21 log @underlines on primary sort key @ text @d1 7 a7 7 o / should enable the user to search for something o sort accounting "popup" list o something (click on column head or press some key i.e. |col _row) should enable the user to filter for something o using +/- in a field (i.e. date/time) should be used for increasing/decreasing a value o using = should force a recalculation for a time field o using ~ should round a time field to the next quarter (configurable) o pressing # should pop up a calendar @ 1.20 log @add ESC handling @ text @a7 1 o make breaks between days visible [ps] @ 1.19 log @add "x" or "Z" for save and exit, CTRL-Q is gone; ESC in movement mode activates menu, CTRL-X is gone; replaced dangerous wrong == with eq comparison make use of CUI_TAB, CUI_ESCAPE and CUI_SPACE @ text @a7 1 o ESC should really escape [ps] @ 1.18 log @support cell copying from prev/succ row @ text @a7 1 o support 'Z' as alternative to CTRL-Q (save and exit) @ 1.17 log @support insert/Append @ text @a8 1 o using : should copy the value of the fied from the previous column (; row for consistency) @ 1.16 log @support setting jump destinations @ text @a7 2 o support 'i' as alternative to KEY_ENTER o support 'A' as alternative to KEY_ENTER + cursor end @ 1.15 log @one item off @ text @a10 2 o support 'w' as alternative to TAB in movement mode o support 'b' as alternative to SHIFT-TAB in movement mode @ 1.14 log @feedback @ text @a0 2 o use SPACE not PIPE for default status @ 1.13 log @delete/undo with unlimited history stack @ text @d13 2 d16 2 @ 1.12 log @handling case where no entries currently exist moved from main to matrixwidget fixed bug where yank a line does only work on entries that were read in not newly created ones support for row deletion through matrixdeleterow() support for shrinking matrix by one row through matrixshrinkrow() improve initial screen drawing by calling draw method on wholly cui object d deletes the line visibly, no more mark for deletion @ text @a1 2 o d should put the deleted line into a undo buffer stack o u should work as o and fill the data from the undo buffer stack @ 1.11 log @die() handler with log to a file and popup @ text @d2 1 a2 1 o d should delete the line visibly and put it into a undo buffer stack @ 1.10 log @status line at the bottom @ text @a3 1 o die() handler with log to a file and popup @ 1.9 log @more ideas @ text @a4 1 o a inverse status line should be visible at the bottom of the screen @ 1.8 log @borderless window @ text @d6 1 d8 10 @ 1.7 log @useful prefill of begin/end when [oO]nanewline @ text @a4 1 o the window should be borderless @ 1.6 log @SPACE should clear the field and enter edit mode like ENTER @ text @a1 2 o default end and amount to empty field when on a new line o default begin field to end field of previous data entry or current time if previous data unavailable @ 1.5 log @convert accounts DOT to SLASH immediately after selection @ text @a6 1 o SPACE should clear the field and enter edit mode like ENTER @ 1.4 log @start at the bottom @ text @a0 1 o convert accounts DOT to SLASH immediately after selection @ 1.3 log @align date/time syntax checking and completion between readevents() and CUI syntax checking now uses svalidyyyymmdd() and isvalidhhmm() completion now uses anydate2yyyymmdd() and anytimetohhmm() add time calculation when one of begin/end/amount is missing handle preseletable current "dot" time in day() and now() use user supplyable current date/time in readevents() remove outdated createsamplematrixdata() ignore missing blur callbacks (can't handle error, so don't check for it) wipe out some debug code handle KEY_ENTER when entering a edit mode and when leaving edit mode control focus/ cursor movement when leaving edit mode remove obsolete CDK research nicedate(), nicetime(), today(), now() two points off 00TODO @ text @a0 1 o start at the bottom, like pressing CTRL-G @ 1.2 log @yank cell, Yank line, paste cell or paste/Paste line @ text @a3 2 o complete time fields on blur, too o calc begin, end or amount when the other two fields are given and the calculated field is currently empty @ 1.1 log @wishlist @ text @a7 2 o y should yank an additional field only and use a buffer rather than a reference o Y should yank a line, terminate y and use a buffer rather than a reference @