Bug 94318 - Smart appending does not work as intended
Summary: Smart appending does not work as intended
Status: RESOLVED FIXED
Alias: None
Product: kvoctrain
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR wishlist
Target Milestone: ---
Assignee: Peter Hedlund
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-12-03 11:13 UTC by Marc Heyvaert
Modified: 2005-01-08 00:51 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marc Heyvaert 2004-12-03 11:13:08 UTC
Version:           0.8.1 (using KDE KDE 3.2.1)
Installed from:    SuSE RPMs
OS:                Linux

Quote from the KVocTrain Handbook:
<quote>
'Ins' - Invokes a dialog to enter a new original expression and appends a new row with this expression at the end of the vocabulary. The cursor is moved to the end of the vocabulary afterwards.
If you have selected smart appending you are prompted to enter originals and their translations until you stop by pressing the ESC key.
</quote>

Actual behaviour:

2 possibilities either inline editing on or off.

When 'on':
'Ins' creates a new line and moves the cursor down to that line. You can enter new expressions right away, pressing 'Enter' moves the cursor to the next column, however when you are in the last column there is no creation of a new line. Hence the behaviour is the same as usual. It would be nice if a new row was appended automatically, even when smart editing is not selected...

When 'off'
'Ins' creates a new line  and moves the cursor down to that line, to the first cell that can contain an expression. To open the dialog you have to doubleclick this cell. IMO it would be better to open the dialog automatically, you are in smart appending mode after all...
When you open de dialog, the edit box where you can enter the expression should get the focus automatically.
When you enter an expression and hit enter, you can continue to enter expressions and they will be put in the following columns, however there is no visual feedback, the cursor does not indicate where this expression will be inserted. This is confusing, especially when you have the dialog and the spreadsheet open together, one next to the other.
When you arrive at the end of the line and hit 'enter' a new row is automatically added. This is OK and as expected, however the dialog looses its focus, everything is greyed. So you have to doubleclick the cell again to start entering data for that line.

Personally I think that having 'smart appending' as an option in not really necessary. It should be the rule if you are at the bottom row. Also, I don't really like the 'Ins' behaviour. This is my suggestion. Let 'Ins' behave as we know it from spreadsheets : insert a new row right above or below the current row. I would choose right below the current row here, so that you can maintain a logical structure in your data-file easily. If you are at the bottom row the 'smart-appending' rules would kick in, so when you press enter in the last cell, a new row would be automatically created, the cursor would be put in the first cell that can contain an expression, either in inline edit mode or opening the dialog. The right cell should get the focus.

Marc
Comment 1 Peter Hedlund 2005-01-08 00:51:25 UTC
CVS commit by hedlund: 

A restructuring of the way the vocabulary table is edited. The old Inline editing option is removed. You can now always type directly in the table. The Entry dialog can be invoked with a keyboard shortcut.

KVocTrain has always been designed to append new entries to the end of the list and will remain so. Smart appending works well for appending new entries using the dialog. Without the dialog the Insert key will append a new row as usual. Minor improvements can probably still be made but this should be enough to close bugs 93172, 94318, and 95639.

BUG: 93172
BUG: 94318
BUG: 95639


  A            kvoctraintable.cpp   1.1 [GPL (v2+)]
  A            kvoctraintable.h   1.1 [GPL (v2+)]
  A            kvoctraintableitem.cpp   1.1 [GPL (v2+)]
  A            kvoctraintableitem.h   1.1 [GPL (v2+)]
  M +3 -3      Makefile.am   1.44
  M +3 -5      kv_resource.h   1.6
  M +1 -3      kva_clip.cpp   1.15
  M +0 -2      kva_config.cpp   1.36
  M +3 -5      kva_header.cpp   1.26
  M +4 -7      kva_init.cpp   1.50
  M +1 -1      kva_io.cpp   1.46
  M +1 -2      kva_query.cpp   1.35
  M +24 -36    kvoctrain.cpp   1.73
  M +10 -15    kvoctrain.h   1.36
  M +10 -19    kvoctrain.kcfg   1.18
  M +1 -2      kvoctrainui.rc   1.3
  M +10 -141   kvoctrainview.cpp   1.36
  M +12 -59    kvoctrainview.h   1.15
  R            rowtable.cpp   1.34
  R            rowtable.h   1.19