// Name: wx/gtk/listbox.h
// Purpose: wxListBox class declaration
// Author: Robert Roebling
-// Id: $Id$
// Copyright: (c) 1998 Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_GTK_LISTBOX_H_
#define _WX_GTK_LISTBOX_H_
-struct _GtkTreeEntry;
+struct _wxTreeEntry;
struct _GtkTreeIter;
//-----------------------------------------------------------------------------
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;
+ virtual void EnsureVisible(int n);
+
+ virtual void Update();
+
static wxVisualAttributes
GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
// implementation from now on
- GtkWidget *GetConnectWidget();
-
-#if wxUSE_TOOLTIPS
- void ApplyToolTip( GtkTooltips *tips, const gchar *tip );
-#endif // wxUSE_TOOLTIPS
+ virtual GtkWidget *GetConnectWidget();
struct _GtkTreeView *m_treeview;
struct _GtkListStore *m_liststore;
bool m_hasCheckBoxes;
#endif // wxUSE_CHECKLISTBOX
- bool m_blockEvent;
+ struct _wxTreeEntry* GTKGetEntry(unsigned pos) const;
+
+ void GTKDisableEvents();
+ void GTKEnableEvents();
- struct _GtkTreeEntry* GtkGetEntry(unsigned pos) const;
- void GtkDeselectAll();
- void GtkSetSelection(int n, const bool select, const bool blockEvent);
+ void GTKOnSelectionChanged();
+ void GTKOnActivated(int item);
protected:
virtual void DoClear();
virtual int DoInsertItems(const wxArrayStringsAdapter& items,
unsigned int pos,
void **clientData, wxClientDataType type);
+ virtual int DoInsertOneItem(const wxString& item, unsigned int pos);
virtual void DoSetFirstItem(int n);
virtual void DoSetItemClientData(unsigned int n, void* clientData);
virtual int DoListHitTest(const wxPoint& point) const;
// get the iterator for the given index, returns false if invalid
- bool GtkGetIteratorFor(unsigned pos, _GtkTreeIter *iter) const;
+ bool GTKGetIteratorFor(unsigned pos, _GtkTreeIter *iter) const;
// get the index for the given iterator, return wxNOT_FOUND on failure
- int GtkGetIndexFor(_GtkTreeIter& iter) const;
+ int GTKGetIndexFor(_GtkTreeIter& iter) const;
- // set the specified item
- void GtkSetItem(_GtkTreeIter& iter, const _GtkTreeEntry *entry);
+ // common part of DoSetFirstItem() and EnsureVisible()
+ void DoScrollToCell(int n, float alignY, float alignX);
private:
void Init(); //common construction