packages feed

HGamer3D-CEGUI-Binding-0.1.9: include/ClassListHeader.h

// This source file is part of HGamer3D
// (A project to enable 3D game development in Haskell)
// For the latest info, see http://www.althainz.de/HGamer3D.html
// 
// (c) 2011, 2012 Peter Althainz
// 
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// 
//     http://www.apache.org/licenses/LICENSE-2.0
// 
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// 

// ClassListHeader.h

// 

#include "wchar.h"
#ifndef _DEFINED_HG3D_ClassListHeader
#define _DEFINED_HG3D_ClassListHeader

#include "ClassPtr.h"
#include "ClassListHeaderSegment.h"
#include "EnumSortDirection.h"



// Return the number of columns or segments attached to the header. 
void cegui_lsthdr_getColumnCount(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);

// Return the ListHeaderSegment
void cegui_lsthdr_getSegmentFromColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c, struct hg3dclass_struct * result_c);

// Return the ListHeaderSegment
void cegui_lsthdr_getSegmentFromID(struct hg3dclass_struct * thisclass_c, unsigned int id_c, struct hg3dclass_struct * result_c);

// Return the ListHeaderSegment
void cegui_lsthdr_getSortSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);

// Return the zero based column index of the specified segment. 
void cegui_lsthdr_getColumnFromSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, unsigned int * result_c);

// Return the zero based column index of the segment with the specified ID. 
void cegui_lsthdr_getColumnFromID(struct hg3dclass_struct * thisclass_c, unsigned int id_c, unsigned int * result_c);

// Return the zero based index of the current sort column. There must be at least one segment/column to successfully call this method. 
void cegui_lsthdr_getSortColumn(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);

// Return the zero based column index of the segment with the specified text. 
void cegui_lsthdr_getColumnWithText(struct hg3dclass_struct * thisclass_c, char * text_c, unsigned int * result_c);

// Return the pixel offset to the given ListHeaderSegment
void cegui_lsthdr_getPixelOffsetToSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, float * result_c);

// Return the pixel offset to the ListHeaderSegment
void cegui_lsthdr_getPixelOffsetToColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c, float * result_c);

// Return the total pixel width of all attached segments. 
void cegui_lsthdr_getTotalSegmentsPixelExtent(struct hg3dclass_struct * thisclass_c, float * result_c);

// Return the currently set sort direction. 
void cegui_lsthdr_getSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection * result_c);

// Return whether user manipulation of the sort column & direction are enabled. 
void cegui_lsthdr_isSortingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);

// Return whether the user may size column segments. 
void cegui_lsthdr_isColumnSizingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);

// Return whether the user may modify the order of the segments. 
void cegui_lsthdr_isColumnDraggingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);

// Return the current segment offset value. This value is used to implement scrolling of the header segments within the ListHeader
void cegui_lsthdr_getSegmentOffset(struct hg3dclass_struct * thisclass_c, float * result_c);

// Set whether user manipulation of the sort column and direction is enabled. 
void cegui_lsthdr_setSortingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);

// Set the current sort direction. 
void cegui_lsthdr_setSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection direction_c);

// Set the column segment to be used as the sort column. 
void cegui_lsthdr_setSortSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c);

// Set the column to be used as the sort column. 
void cegui_lsthdr_setSortColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c);

// Set the column to to be used for sorting via its ID code. 
void cegui_lsthdr_setSortColumnFromID(struct hg3dclass_struct * thisclass_c, unsigned int id_c);

// Set whether columns may be sized by the user. 
void cegui_lsthdr_setColumnSizingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);

// Set whether columns may be reordered by the user via drag and drop. 
void cegui_lsthdr_setColumnDraggingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);

// Removes a column segment from the ListHeader
void cegui_lsthdr_removeColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c);

// Remove the specified segment from the ListHeader
void cegui_lsthdr_removeSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c);

// Moves a column segment into a new position. 
void cegui_lsthdr_moveColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c, unsigned int position_c);

// Move a column segment to a new position. 
void cegui_lsthdr_moveColumn2(struct hg3dclass_struct * thisclass_c, unsigned int column_c, struct hg3dclass_struct * position_c);

// Moves a segment into a new position. 
void cegui_lsthdr_moveSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, unsigned int position_c);

// Move a segment to a new position. 
void cegui_lsthdr_moveSegment2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, struct hg3dclass_struct * position_c);

// Set the current base segment offset. (This implements scrolling of the header segments within the header area). 
void cegui_lsthdr_setSegmentOffset(struct hg3dclass_struct * thisclass_c, float offset_c);

// Constructor for the list header base class. 
void cegui_lsthdr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);

// Destructor for the list header base class. 
void cegui_lsthdr_destruct(struct hg3dclass_struct * thisclass_c);

#endif