widgets: add macros to make it less error-prone to create jscore args