# vSList

A class to manipulate lists for `C_List` controls.

## Synopsis

Header:
  `<v/vslist.h>`
Class name:
  vSList

## Definition

     class vSList
          {

          public:		//---------------------------------------- public
    	vSList(int maxsize = 128);
    	~vSList();

    	void erase();
    	int size();
    	int insert(int insAt, char* strn);
    	int replace(int repAt, char* strn);
    	int deleteItem(int delAt);

    	int max;
    	char** list;
          };

## Description

This class is provided to make manipulation of lists used in `C_List` controls easier. You can find some good example code in the VIDE.

## Methods

#### vSList(int maxsize=128)

You can specify in the constructor the maximum size of the list you will be working with. Someday I hope to fix this class so that it will grow the list as needed.

#### void erase()

Erases the entire list. Deletes each item on the list, but leaves the space for `list` intact.

#### int size()

Returns the number of items on the list.

#### int insert(int insAt, char* strn)

Inserts the string `strn` into the list at the point `insAt`. If `insAt` is less than zero, the item is appended to the end of the list.

#### int replace(int repAt, char* strn)

Replaces the item at `repAt` with the new `strn`.

#### int deleteItem(int delAt)

Deletes the item at `delAt`.

#### int max

This is the maximum size of the list.

#### char** list

This is the actual list of pointers to the list strings. I suppose it really shouldn't be directly accessible, but it is.

## Comments

## See Also

vDialog::SetValue, C_List