Data Table improvements

Currently we work a lot with Data Tables. Some Improvements would be nice:

  • Copy, Paste, Duplicate of Rows is missing
  • Reordering should be esier (maybe with drag and drop), sorting by column would be nice
  • Textures and other types should be previewed with a Thumbnail in the Table. A Thumbnail Size Slider would be awesome.
  • GetDataTableRow should accept Data Tables via Variable. (…) I know that the function have to know the Structure of the Table. This could be an additional (literal) variable input.
  • Data Tables should support different primary key types. Currently the primary key is a Name. Integer and especially Enums should be supported too.

This would make a brilliant engine a little bit more brilliant :slight_smile:

Any comments?

I like the ideas it would make it look and feel complete.
Tough primary key changed is maybe the only thing I could be with out.
I quit like it being a FName if I want to refer to them as a int or enum I do a conversion.

You can then always assume you can get the data the same way.
And you don`t have to check type of primary key/ Name before you start working with a Data Table.

Conversion e.g: Am sure you know this, but its here now. :wink:

	const FName myFNameNumber("1");
	const int32 myNumber = FCString::Atoi(*myFNameNumber.ToString());
	const FName myNumberFName = FName(*FString::FromInt(1));


Yes you are right. Currently I often use enums where the enum items match the row name. So I can use a Dropdown list in blueprints and the construction script can use it as key to get some data from the table. Maybe it is possible that every data table automatically creates an enum with all of its keys.

Yes I can see how that would be very user friendly.
Am sure you cant do it with enums defined in code as you would need to define them before you compile.
But maybe you could use the Blueprint Enum type to auto generate in editor. (Auto create asset.) and enums with a prefix or something.

I have not worked much with editor code, so not sure exactly how to do this.
But it be very interesting to find out.