XenevaOS
Loading...
Searching...
No Matches
view.h
Go to the documentation of this file.
1
30#ifndef __VIEW_H__
31#define __VIEW_H__
32
33#include <stdint.h>
34#include "list.h"
35#include "window.h"
36#include "scrollpane.h"
37#include "icon.h"
38
39#define LIST_VIEW_ITEM_HEIGHT 24 //30
40#define LIST_VIEW_ITEM_YPADDING 2
41
42typedef struct _list_item_ ChListItem;
43
60
61typedef struct _list_item_ {
62 //Geometry
63 int xPos;
64 int yPos;
66 int width;
67 int height;
68 //item string, icon
70 char* itemText;
73
74/*
75* ChCreateListView -- create a new list view widget
76* @param x -- x location
77* @param y -- y location
78* @param w -- width of the list
79* @param h -- height of the list
80*/
81XE_EXTERN XE_LIB ChListView* ChCreateListView(int x, int y, int w, int h);
82
83/*
84* ChListViewSetScrollpane -- assigns a scrollpane to given list view
85* @param view -- Pointer to list view
86* @param pane -- Pointer to scroll pane
87*/
89
90/*
91* ChListViewAddItem -- add list item to list view
92* @param lv -- Pointer to list view
93* @param itemText -- item text
94*/
96
97/*
98* ChListViewSetListItemIcon -- sets icon for list items
99* @param li -- Pointer to list item
100* @param icon -- Pointer to icon structure
101*/
103
104/*
105* ChListViewClear -- clears all list view items
106* @param lv -- Pointer to list view
107*/
109
110/*
111* ChListViewRepaint -- repaint the entire list view
112* @param win -- Pointer to main window
113* @param lv -- Pointer to list view
114*/
116
117/*
118* ChListViewGetSelectedItem -- returns the current selected item
119* @param lv -- Pointer to ChListView
120*/
122
123#endif
ChListView * lv
Definition main.cpp:62
#define XE_LIB
Definition _xeneva.h:55
#define XE_EXTERN
Definition _xeneva.h:50
ChWindow * win
Definition namdapha.cpp:54
Definition window.h:123
Definition window.h:99
Definition icon.h:56
Definition list.h:46
Definition view.h:61
void(* ChListItemAction)(ChListView *lv, _list_item_ *li)
Definition view.h:71
int width
Definition view.h:66
int height
Definition view.h:67
char * itemText
Definition view.h:70
ChIcon * icon
Definition view.h:69
int yPos
Definition view.h:64
int xPos
Definition view.h:63
bool selected
Definition view.h:65
Definition view.h:44
int contentSizeY
Definition view.h:57
int lastNodePosY
Definition view.h:54
int horizontalRenderY
Definition view.h:50
bool scrollable
Definition view.h:47
bool firstItemPlaced
Definition view.h:55
list_t * itemList
Definition view.h:46
ChScrollPane * scrollpane
Definition view.h:48
int numRows
Definition view.h:49
ChListItem * selectedItem
Definition view.h:56
ChWidget wid
Definition view.h:45
int lastNodeIndex
Definition view.h:53
int currentStartIndex
Definition view.h:52
int horizontalRenderX
Definition view.h:51
int contentSizeX
Definition view.h:58
Definition scrollpane.h:64
XE_EXTERN XE_LIB ChListItem * ChListViewGetSelectedItem(ChListView *lv)
Definition view.cpp:313
XE_EXTERN XE_LIB void ChListViewSetScrollpane(ChListView *view, ChScrollPane *pane)
Definition view.cpp:179
struct _list_view_ ChListView
XE_EXTERN XE_LIB void ChListViewClear(ChListView *lv)
Definition view.cpp:258
XE_EXTERN XE_LIB ChListItem * ChListViewAddItem(ChWindow *win, ChListView *lv, char *itemText)
Definition view.cpp:198
XE_EXTERN XE_LIB ChListView * ChCreateListView(int x, int y, int w, int h)
Definition view.cpp:154
XE_EXTERN XE_LIB void ChListViewSetListItemIcon(ChListItem *li, ChIcon *icon)
Definition view.cpp:245
struct _list_item_ ChListItem
Definition view.h:42
XE_EXTERN XE_LIB void ChListViewRepaint(ChWindow *win, ChListView *lv)
Definition view.cpp:281