/* Do not edit this file. It was automatically genarated. */

#ifndef HEADER_AvailableColumnsListBox
#define HEADER_AvailableColumnsListBox

#include "Settings.h"
#include "Header.h"
#include "ScreenManager.h"

#include "ListBox.h"

#include "debug.h"
#include <assert.h>


typedef struct AvailableColumnsListBox_ {
   ListBox super;

   Settings* settings;
   ScreenManager* scr;
   ListBox* columns;
} AvailableColumnsListBox;


AvailableColumnsListBox* AvailableColumnsListBox_new(Settings* settings, ListBox* columns, ScreenManager* scr);

void AvailableColumnsListBox_delete(Object* object);

HandlerResult AvailableColumnsListBox_eventHandler(ListBox* super, int ch);

#endif
