packages feed

wxc-0.90: src/cpp/eljcombobox.cpp

#include "wrapper.h"

extern "C"
{

EWXWEXPORT(wxComboBox*,wxComboBox_Create)(wxWindow* _prt,int _id,wxString* _txt,int _lft,int _top,int _wdt,int _hgt,int _n,void* _str,int _stl)
{
	wxString* list = new wxString[_n];

	for (int i = 0; i < _n; i++)
		list[i] = ((wxChar**)_str)[i];

	wxComboBox* result = new wxComboBox (_prt, _id, *_txt, wxPoint(_lft, _top), wxSize(_wdt, _hgt), _n, list, _stl, wxDefaultValidator);

	delete [] list;
#if wxVERSION_NUMBER < 2400
	if ((result->Number()) && (result->GetSelection() == -1)) result->SetSelection(0);
#else
	if ((result->GetCount()) && (result->GetSelection() == -1)) result->SetSelection(0);
#endif
	
	return result;
}

EWXWEXPORT(void,wxComboBox_Copy)(wxComboBox* self)
{
	self->Copy();
}
	
EWXWEXPORT(void,wxComboBox_Cut)(wxComboBox* self)
{
	self->Cut();
}
	
EWXWEXPORT(void,wxComboBox_Paste)(wxComboBox* self)
{
	self->Paste();
}
	
EWXWEXPORT(void,wxComboBox_SetInsertionPoint)(wxComboBox* self,int pos)
{
	self->SetInsertionPoint(pos);
}
	
EWXWEXPORT(void,wxComboBox_SetInsertionPointEnd)(wxComboBox* self)
{
	self->SetInsertionPointEnd();
}
	
EWXWEXPORT(int,wxComboBox_GetInsertionPoint)(wxComboBox* self)
{
	return self->GetInsertionPoint();
}
	
EWXWEXPORT(int,wxComboBox_GetLastPosition)(wxComboBox* self)
{
	return self->GetLastPosition();
}
	
EWXWEXPORT(void,wxComboBox_Replace)(wxComboBox* self,int from,int to,wxString* value)
{
	self->Replace(from, to,*value);
}
	
EWXWEXPORT(void,wxComboBox_Remove)(wxComboBox* self,int from,int to)
{
	self->Remove(from, to);
#if wxVERSION_NUMBER < 2400
	if ((self->Number()) && (self->GetSelection() == -1)) self->SetSelection(0);
#else
	if ((self->GetCount()) && (self->GetSelection() == -1)) self->SetSelection(0);
#endif
}
	
EWXWEXPORT(void,wxComboBox_SetTextSelection)(wxComboBox* self,int from,int to)
{
	self->SetSelection(from, to);
}
	
EWXWEXPORT(void,wxComboBox_SetEditable)(wxComboBox* self,bool editable)
{
	self->SetEditable(editable);
}
	
EWXWEXPORT(wxString*,wxComboBox_GetStringSelection)(wxComboBox* self)
{
	return new wxString(self->GetStringSelection());
}
	
EWXWEXPORT(wxString*,wxComboBox_GetValue)(wxComboBox* self)
{
	return new wxString(self->GetValue());
}
	
EWXWEXPORT(void,wxComboBox_Append)(wxComboBox* self,wxString* item)
{
	self->Append(*item);
#if wxVERSION_NUMBER < 2400
	if (self->Number() && (self->GetSelection() == -1)) self->SetSelection(0);
#else
	if (self->GetCount() && (self->GetSelection() == -1)) self->SetSelection(0);
#endif
}
	
EWXWEXPORT(void,wxComboBox_AppendData)(wxComboBox* self,wxString* item,void* d)
{
#if defined(__WXMAC__)
	self->Append(*item);
#else
	self->Append(*item, d);
#endif

#if wxVERSION_NUMBER < 2400
	if ((self->Number()) && (self->GetSelection() == -1)) self->SetSelection(0);
#else
	if ((self->GetCount()) && (self->GetSelection() == -1)) self->SetSelection(0);
#endif
}
	
EWXWEXPORT(void,wxComboBox_Delete)(wxComboBox* self,int n)
{
	self->Delete(n);
#if wxVERSION_NUMBER < 2400
	if ((self->Number()) && (self->GetSelection() == -1)) self->SetSelection(0);
#else
	if ((self->GetCount()) && (self->GetSelection() == -1)) self->SetSelection(0);
#endif
}
	
EWXWEXPORT(void,wxComboBox_Clear)(wxComboBox* self)
{
	self->Clear();
}
	
EWXWEXPORT(int,wxComboBox_GetCount)(wxComboBox* self)
{
#if wxVERSION_NUMBER < 2400
	return self->Number();
#else
	return self->GetCount();
#endif
}
	
EWXWEXPORT(int,wxComboBox_GetSelection)(wxComboBox* self)
{
	return self->GetSelection();
}
	
EWXWEXPORT(void,wxComboBox_SetSelection)(wxComboBox* self,int n)
{
	self->SetSelection(n);
}
	
EWXWEXPORT(int,wxComboBox_FindString)(wxComboBox* self,wxString* s)
{
	return self->FindString(*s);
}
	
EWXWEXPORT(wxString*,wxComboBox_GetString)(wxComboBox* self,int n)
{
	return new wxString(self->GetString(n));
}
	
EWXWEXPORT(void,wxComboBox_SetString)(wxComboBox* self,int n,wxString* s)
{
	self->SetString(n,*s);
}
	
EWXWEXPORT(void,wxComboBox_SetClientData)(wxComboBox* self,int n,void* clientData)
{
	((wxItemContainer*) self)->SetClientData( n, clientData );
}
	
EWXWEXPORT(void*,wxComboBox_GetClientData)(wxComboBox* self,int n)
{
	return ((wxItemContainer*) self)->GetClientData(n);
}

}