I have a client who has some Edit in Place browses where the rows are colored based on the conditions of the row. I have been hard coding the code to apply those colors, but the conditions are a bit more dynamic than we thought, so I’m trying to handle the conditions and colors in a meta table that can be edited and applied without recompiling. All the other EIP controls appear to be working fine, but it doesn’t seem to be the case with the Color EIP control. Does anybody have any insight on why the EIP ColorDialog doesn’t work?
Can you post a simple example app demonstrating the problem?
Sure. Here’s a TOPSPEED file version of what I’m working with. The app is a demo of the exact problem. On the ProcedureInfo Update Screen, there’s an EIP list of conditions with each condition needing colors for four different settings (Normal Foreground, Normal Background, Selected Foreground, and Selected Background).
eipColor.zip (51.1 KB)
This is my workaround that works. The code is placed before the parent call in the TakeEvent method for the EIP control.
EditInPlace::ProLBClr:NormalForegroundColor.TakeEvent PROCEDURE(UNSIGNED Event)
ReturnValue BYTE,AUTO
aColor long
CODE
IF Event = EVENT:DroppingDown THEN
aColor = SELF.usevar
IF COLORDIALOG(self.Title, aColor) then
SELF.UseVar = aColor
DISPLAY(SELF.Feq)
RETURN EditAction:Complete
END
RETURN EditAction:Cancel
END
It appears that the eip color dialog returns a string??