Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

os::ListView Class Reference

Flexible multicolumn list view. More...

#include <listview.h>

Inheritance diagram for os::ListView:

os::View os::Invoker os::Handler os::DirectoryView List of all members.

Public Types

typedef std::vector<ListViewRow*>::const_iterator const_iterator
enum  scroll_direction { SCROLL_UP, SCROLL_DOWN }
enum  { AUTOSCROLL_BORDER = 20 }
enum  { F_MULTI_SELECT = 0x0001, F_NO_AUTO_SORT = 0x0002, F_RENDER_BORDER = 0x0004, F_DONT_SCROLL = 0x0008 }

Public Methods

 ListView (const Rect &cFrame, const char *pzTitle, uint32 nModeFlags=F_MULTI_SELECT|F_RENDER_BORDER, uint32 nResizeMask=CF_FOLLOW_LEFT|CF_FOLLOW_TOP, uint32 nFlags=WID_WILL_DRAW|WID_FULL_UPDATE_ON_RESIZE)
 ~ListView ()
virtual void Invoked (int nFirstRow, int nLastRow)
virtual void SelectionChanged (int nFirstRow, int nLastRow)
virtual bool DragSelection (const Point &cPos)
void StartScroll (scroll_direction eDirection, bool bSelect)
void StopScroll ()
void MakeVisible (int nRow, bool bCenter=true)
int InsertColumn (const char *pzTitle, int nWidth, int nPos=-1)
const std::vector<int>& GetColumnMapping () const
void SetColumnMapping (const std::vector< int > &cMap)
void InsertRow (ListViewRow *pcRow, bool bUpdate=true)
ListViewRowRemoveRow (int nIndex, bool bUpdate=true)
void InvalidateRow (int nRow)
uint GetRowCount () const
ListViewRowGetRow (const Point &cPos) const
ListViewRowGetRow (uint nIndex) const
int HitTest (const Point &cPos) const
float GetRowPos (int nRow)
void Clear ()
bool IsSelected (uint nRow) const
void Select (int nFirst, int nLast, bool bReplace=true)
void Select (int nRow, bool bReplace=true)
void Highlight (int nFirst, int nLast, bool bReplace, bool bHighlight=true)
void Highlight (int nRow, bool bReplace, bool bHighlight=true)
void Sort ()
int GetFirstSelected () const
int GetLastSelected () const
void SetSelChangeMsg (Message *pcMsg)
void SetInvokeMsg (Message *pcMsg)
MessageGetSelChangeMsg () const
MessageGetInvokeMsg () const
virtual void Paint (const Rect &cUpdateRect)
 Called by the system update "damaged" areas of the view. More...

virtual void FrameSized (const Point &cDelta)
virtual void KeyDown (const char *pzString, const char *pzRawString, uint32 nQualifiers)
virtual void AllAttached ()
virtual bool HasFocus (void) const
const_iterator begin () const
const_iterator end () const

Friends

class  ListViewContainer
class  ListViewHeader

Detailed Description

Flexible multicolumn list view.

Description:
See also:
Author(s):
Kurt Skauen (kurt@atheos.cx)


Member Typedef Documentation

typedef std::vector< ListViewRow *>::const_iterator os::ListView::const_iterator
 


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
AUTOSCROLL_BORDER  

anonymous enum
 

Enumeration values:
F_MULTI_SELECT  
F_NO_AUTO_SORT  
F_RENDER_BORDER  
F_DONT_SCROLL  

enum os::ListView::scroll_direction
 

Enumeration values:
SCROLL_UP  
SCROLL_DOWN  


Constructor & Destructor Documentation

ListView::ListView ( const Rect & cFrame,
const char * pzTitle,
uint32 nModeFlags = F_MULTI_SELECT | F_RENDER_BORDER,
uint32 nResizeMask = CF_FOLLOW_LEFT | CF_FOLLOW_TOP,
uint32 nFlags = WID_WILL_DRAW | WID_FULL_UPDATE_ON_RESIZE )
 

ListView::~ListView ( )
 


Member Function Documentation

void ListView::AllAttached ( void ) [virtual]
 

Reimplemented from os::View.

void ListView::Clear ( )
 

bool ListView::DragSelection ( const Point & cPos ) [virtual]
 

Reimplemented in os::DirectoryView.

void ListView::FrameSized ( const Point & cDelta ) [virtual]
 

Reimplemented from os::View.

const std::vector< int > & ListView::GetColumnMapping ( ) const
 

int ListView::GetFirstSelected ( ) const
 

Message * ListView::GetInvokeMsg ( ) const
 

int ListView::GetLastSelected ( ) const
 

ListViewRow * ListView::GetRow ( uint nIndex ) const
 

ListViewRow * ListView::GetRow ( const Point & cPos ) const
 

uint ListView::GetRowCount ( ) const
 

float ListView::GetRowPos ( int nRow )
 

Message * ListView::GetSelChangeMsg ( ) const
 

bool ListView::HasFocus ( void ) const [virtual]
 

Reimplemented from os::View.

void ListView::Highlight ( int nRow,
bool bReplace,
bool bHighlight = true )
 

void ListView::Highlight ( int nFirst,
int nLast,
bool bReplace,
bool bHighlight = true )
 

int ListView::HitTest ( const Point & cPos ) const
 

int ListView::InsertColumn ( const char * pzTitle,
int nWidth,
int nPos = -1 )
 

void ListView::InsertRow ( ListViewRow * pcRow,
bool bUpdate = true )
 

void ListView::InvalidateRow ( int nRow )
 

void ListView::Invoked ( int nFirstRow,
int nLastRow ) [virtual]
 

Reimplemented in os::DirectoryView.

bool ListView::IsSelected ( uint nRow ) const
 

void ListView::KeyDown ( const char * pzString,
const char * pzRawString,
uint32 nQualifiers ) [virtual]
 

Reimplemented from os::View.

Reimplemented in os::DirectoryView.

void ListView::MakeVisible ( int nRow,
bool bCenter = true )
 

void ListView::Paint ( const Rect & cUpdateRect ) [virtual]
 

Called by the system update "damaged" areas of the view.

Description:
Note:
Warning:
Parameters:
cUpdateRect   A rectangle enclosing all damaged areas. This is just a rough "worst-case", further fine-grained clipping will be performed by the Application Server to avoid updating non-damaged pixels and make the update as fast and flicker-free as possible.

See also:
Invalidate(), Flush()
Author(s):
Kurt Skauen (kurt@atheos.cx)

Reimplemented from os::View.

ListViewRow * ListView::RemoveRow ( int nIndex,
bool bUpdate = true )
 

void ListView::Select ( int nRow,
bool bReplace = true )
 

void ListView::Select ( int nFirst,
int nLast,
bool bReplace = true )
 

void ListView::SelectionChanged ( int nFirstRow,
int nLastRow ) [virtual]
 

void ListView::SetColumnMapping ( const std::vector< int > & cMap )
 

void ListView::SetInvokeMsg ( Message * pcMsg )
 

void ListView::SetSelChangeMsg ( Message * pcMsg )
 

void ListView::Sort ( )
 

void ListView::StartScroll ( scroll_direction eDirection,
bool bSelect )
 

void ListView::StopScroll ( )
 

ListView::const_iterator ListView::begin ( ) const
 

ListView::const_iterator ListView::end ( ) const
 


Friends And Related Function Documentation

class ListViewContainer [friend]
 

class ListViewHeader [friend]
 


The documentation for this class was generated from the following files:
Generated at Sat Apr 7 16:11:35 2001 for AtheOS higlevel API by doxygen1.2.5 written by Dimitri van Heesch, © 1997-2001