diff options
author | Veronika Irvine <veronika> | 2006-01-25 18:24:26 +0000 |
---|---|---|
committer | Veronika Irvine <veronika> | 2006-01-25 18:24:26 +0000 |
commit | dff246353fc1b99dece2351383557247adc25bf9 (patch) | |
tree | ff869d3c57145eead1ff7d38819041921051809b /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java | |
parent | 86ec4e649ba5245474ded73180816420629ac01d (diff) | |
download | eclipse.platform.swt-dff246353fc1b99dece2351383557247adc25bf9.tar.gz eclipse.platform.swt-dff246353fc1b99dece2351383557247adc25bf9.tar.xz eclipse.platform.swt-dff246353fc1b99dece2351383557247adc25bf9.zip |
send SetData event when getItem(int), getItems() or getItemCount() called
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java index 344a83c173..36b615b5c6 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java @@ -750,6 +750,7 @@ public Rectangle getImageBounds (int index) { */ public int getItemCount () { checkWidget(); + if (!parent.checkData (this)) error (SWT.ERROR_WIDGET_DISPOSED); return OS.gtk_tree_model_iter_n_children (parent.modelHandle, handle); } @@ -772,9 +773,10 @@ public int getItemCount () { */ public TreeItem getItem (int index) { checkWidget(); - if (!(0 <= index && index < OS.gtk_tree_model_iter_n_children (parent.modelHandle, handle))) { - error (SWT.ERROR_INVALID_RANGE); - } + if (index < 0) error (SWT.ERROR_INVALID_RANGE); + if (!parent.checkData (this)) error (SWT.ERROR_WIDGET_DISPOSED); + int itemCount = OS.gtk_tree_model_iter_n_children (parent.modelHandle, handle); + if (index >= itemCount) error (SWT.ERROR_INVALID_RANGE); return parent._getItem (handle, index); } @@ -796,6 +798,7 @@ public TreeItem getItem (int index) { */ public TreeItem [] getItems () { checkWidget(); + if (!parent.checkData (this)) error (SWT.ERROR_WIDGET_DISPOSED); return parent.getItems (handle); } |