mirror of
https://github.com/Ryujinx/GtkSharp.git
synced 2024-12-23 22:55:28 +00:00
48358ccf22
* sample/NodeViewDemo.cs : rework of TreeViewDemo to use NodeStore. * sample/TreeViewDemo.cs : added some timing and node counting fu. 2004-12-16 Duncan Mak <duncan@ximian.com> * gtk/Makefile.am (sources): Added NodeSelection and NodeView. * gtk/NodeSelection.cs: New file, an implementation of TreeSelection that exposes ITreeNodes instead of TreeIters. * gtk/NodeStore.cs : added internal GetIter and GetPath methods for NodeSelection. Reworked [TreeNodeValue] lookup logic. out what the Type of data the store holds. * gtk/NodeView.cs: New subclass of TreeView utilizing NodeStore and NodeSelection. * gtk/TreeIter.custom : new internal UserData prop. * gtk/TreeNodeValueAttribute.cs: Set AllowMultiple to true. * gtk/TreeView.custom: Obsoleted constructor that uses a NodeStore as parameter. NodeView should be used instead. svn path=/trunk/gtk-sharp/; revision=37845
47 lines
1.5 KiB
Plaintext
47 lines
1.5 KiB
Plaintext
//
|
|
// To avoid ValueType.Equals which is slow
|
|
//
|
|
//
|
|
// This program is free software; you can redistribute it and/or
|
|
// modify it under the terms of version 2 of the Lesser GNU General
|
|
// Public License as published by the Free Software Foundation.
|
|
//
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
// Lesser General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU Lesser General Public
|
|
// License along with this program; if not, write to the
|
|
// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
// Boston, MA 02111-1307, USA.
|
|
|
|
public override int GetHashCode ()
|
|
{
|
|
return Stamp ^ (int) _user_data ^ (int) _user_data2 ^ (int) _user_data3;
|
|
}
|
|
|
|
public override bool Equals (object o)
|
|
{
|
|
if (o == null)
|
|
return false;
|
|
|
|
if (!(o is TreeIter))
|
|
return false;
|
|
TreeIter ti = (TreeIter) o;
|
|
return ti.Stamp == Stamp &&
|
|
ti._user_data == _user_data &&
|
|
ti._user_data2 == _user_data2 &&
|
|
ti._user_data3 == _user_data3;
|
|
}
|
|
|
|
internal IntPtr UserData {
|
|
get {
|
|
return _user_data;
|
|
}
|
|
set {
|
|
_user_data = value;
|
|
}
|
|
}
|
|
|