Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 10 JAN 2007 04:52:16AM Paul Evans wrote:

I am using OI 7.1

The business requirement is for row protection in an EditTable where row data does not fill the table and blank rows are left filling the table. Point to note: No white space allowed and the table depth cannot be dynamic. In our EditTables the tables are padded out with blank rows so that the grid fills the EditTable's viewable depth, and coloured alternate rows white and pale blue.

I have partly resolved this in the POSCHANGED and CLICK events to reset SELPOS to PREVSELPOS, but because of the time-lag the "protected" blank row flickers with the highlight bar and simetimes even sticks! The business is not impressed with this.

To overcome the mouse drag event I have utilised the code from POPUP - ClickEditTable.

What I would really like is row protection along the lines of the existing column protection. Is there, or will there be, a new message for SendMessage along the lines of PROTECT_BY_POS?

Any ideas anyone?

PaulE


At 10 JAN 2007 05:13AM Paul Evans wrote:

What I really mean to say is that I want specific rows effectively 'disabled'.


At 10 JAN 2007 06:04PM Barry Stevens wrote:

Would the REDRAW 0/1 help

If you have sequential single set_property(s), try and make them into a single set_property where possible.

What are you doing for a 'time lag' to occur.


At 11 JAN 2007 04:09AM Paul Evans wrote:

Hi Barry,

Unfortunately, "Redraw" doesn't help me in this situation. The user has clicked or dragged to a row that I do not want them to and that row is now higlighted. I am trapping this event in POSCHANGED and CLICK, but at this point the row is already highlighted. If I try and switch "Redraw" off at an earlier point then POSCHANGED and CLICK does not occur.

Timer, why Timer? I suspect I am back to the same problem as above.

What I need is an event that I can trap that occurs when the mouse has been moved or the cursor key has been pressed but before a row has been highlighted.


At 11 JAN 2007 05:07AM Barry Stevens wrote:

Do I assume you are using 'permit row selection'.

Could you turn that off and do the row highlite youself after checking all your requirements for the user to be in that row.

I havent checked to see if there is a row highlite 'function'.


At 11 JAN 2007 05:23AM Barry Stevens wrote:

Send_Message(controlID, "COLOR_BY_POS", 0, PrevSelPos, White$)

Send_Message(controlID, "COLOR_BY_POS", 0, SelPos, RowSelectionColor)


At 11 JAN 2007 08:47AM [email protected]'s Don Bakke wrote:

Paul,

What I need is an event that I can trap that occurs when the mouse has been moved or the cursor key has been pressed but before a row has been highlighted.

Regrettably this is simply not available with the standard OI edit table control. Barry offers some clever workarounds but I suspect it will be a PITA to implement and probably won't give you the complete affect that you are looking for.

We generally try to avoid giving self-commercials on this board but if this is an important issue for you and you are willing to consider a third-party solution then please drop me a line. I think we have something that will do exactly what you want.

[email protected]

SRP Computer Solutions, Inc.


At 11 JAN 2007 09:18AM [url=http://www.sprezzatura.com]The Sprezzatura Group[/url] wrote:

Version 8 will allow protection without the "disappear/appear" "feature". Carl's talk in Seattle will go into some detail on this sort of thing as it is all related to Windows messages. SRPCS have a replacement edit table which is feature rich and reasonably priced.

The Sprezzatura Group

World leaders in all things RevSoft


At 11 JAN 2007 09:40AM Paul Evans wrote:

Thanks for you input guys. I have found a workable solution that the business is happy with. It does involve a little more work but once done works quite smoothly. Essentially, I created an EditTable to hold the data, with a 'dummy' EditTable of the same size that is disabled, to full the EditTable displayable are where the 'empty' rows would be.

At the point I populate the data EditTable I calculate the rows needed and the rows remaining to fill the displayed EditTable area. Then I retrieve the ORIG_STRUCT for the two EditTables, destroy both tables, resize accordingly and then re-create the two re-sized tables, ensuring that they are re-created in the correct order to ensure that my z-order is correct.

There is a little more, but essentially only for tidying up the combined structure.

I then populate the data EditTable.

Barry I have filed you suggestion away, some good points there. Don thanks for your offer.

Many thanks,

PaulE

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/f54427d32ad9295f8525725f0036399b.txt
  • Last modified: 2023/12/30 11:57
  • by 127.0.0.1