Author: kmachalkova
Date: Tue Jan 20 16:57:49 2009
New Revision: 54831
URL: http://svn.opensuse.org/viewcvs/yast?rev=54831&view=rev
Log:
Speeding up item insertion, required for displaying
large tables (bnc#467586)
Modified:
trunk/ncurses/VERSION
trunk/ncurses/package/yast2-ncurses.changes
trunk/ncurses/src/NCTable.cc
trunk/ncurses/src/NCTable.h
Modified: trunk/ncurses/VERSION
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/VERSION?rev=54831&r1=54830&r2=54831&view=diff
==============================================================================
--- trunk/ncurses/VERSION (original)
+++ trunk/ncurses/VERSION Tue Jan 20 16:57:49 2009
@@ -1 +1 @@
-2.18.1
+2.18.2
Modified: trunk/ncurses/package/yast2-ncurses.changes
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/package/yast2-ncurses.changes?rev=54831&r1=54830&r2=54831&view=diff
==============================================================================
--- trunk/ncurses/package/yast2-ncurses.changes (original)
+++ trunk/ncurses/package/yast2-ncurses.changes Tue Jan 20 16:57:49 2009
@@ -1,4 +1,13 @@
-------------------------------------------------------------------
+Tue Jan 20 16:50:55 CET 2009 - kmachalkova@suse.cz
+
+- Table widget: two variants of addItem method (all-at-once and
+ one-by-one) + YTable::addItems reimplemented in order to speed
+ up item insertion (table must not be redrawn on each insert)
+ (bnc#467586)
+- V 2.18.2
+
+-------------------------------------------------------------------
Mon Dec 15 13:18:54 CET 2008 - kmachalkova@suse.cz
- Fixed tree items indexing to ensure selecting the correct item
Modified: trunk/ncurses/src/NCTable.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/ncurses/src/NCTable.cc?rev=54831&r1=54830&r2=54831&view=diff
==============================================================================
--- trunk/ncurses/src/NCTable.cc (original)
+++ trunk/ncurses/src/NCTable.cc Tue Jan 20 16:57:49 2009
@@ -169,12 +169,19 @@
_header[ col ] = NCstring( s );
}
+// Append item (as pointed to by 'yitem') in one-by-one
+// fashion i.e. the whole table gets redrawn afterwards.
+void NCTable::addItem( YItem *yitem)
+{
+ addItem(yitem, false); // add just this one
+}
-
-// Append item (as pointed to by 'yitem') to a table
-// (create new table line consisting of individual cells)
-
-void NCTable::addItem( YItem *yitem )
+// Append item (as pointed to by 'yitem') to a table.
+// This creates visual representation of new table line
+// consisting of individual cells. Depending on the 2nd
+// param, table is redrawn. If 'allAtOnce' is set to
+// true, it is up to the caller to redraw the table.
+void NCTable::addItem( YItem *yitem, bool allAtOnce )
{
YTableItem *item = dynamic_cast