(svn r7299) -CodeChange: Train and Aircraft Build window GUI code simplified a bit:
- using one engine list instead of 3 - removed engine filters (loco, wagons, helicopters, etc.) - EngineList code isolated from GUI (moved to helpers.cpp - reusing CBlobT code which does exactly what is needed for EngineList) - removed unnecessary "optimization" (rebuild and sort engine list on each WE_PAINT)
This commit is contained in:
11
engine.h
11
engine.h
@@ -293,4 +293,15 @@ int32 AddEngineReplacement(EngineRenewList* erl, EngineID old_engine, EngineID n
|
||||
*/
|
||||
int32 RemoveEngineReplacement(EngineRenewList* erl, EngineID engine, uint32 flags);
|
||||
|
||||
/* Engine list manipulators - current implementation is only C wrapper of CBlobT<EngineID> class (helpers.cpp) */
|
||||
void EngList_Create(EngineList *el); ///< Creates engine list
|
||||
void EngList_Destroy(EngineList *el); ///< Deallocate and destroy engine list
|
||||
uint EngList_Count(const EngineList *el); ///< Returns number of items in the engine list
|
||||
void EngList_Add(EngineList *el, EngineID eid); ///< Append one item at the end of engine list
|
||||
EngineID* EngList_Items(EngineList *el); ///< Returns engine list items as C array
|
||||
void EngList_RemoveAll(EngineList *el); ///< Removes all items from engine list
|
||||
typedef int CDECL EngList_SortTypeFunction(const void*, const void*); ///< argument type for EngList_Sort()
|
||||
void EngList_Sort(EngineList *el, EngList_SortTypeFunction compare); ///< qsort of the engine list
|
||||
void EngList_SortPartial(EngineList *el, EngList_SortTypeFunction compare, uint begin, uint num_items); ///< qsort of specified portion of the engine list
|
||||
|
||||
#endif /* ENGINE_H */
|
||||
|
Reference in New Issue
Block a user