https://bugs.documentfoundation.org/show_bug.cgi?id=154075

            Bug ID: 154075
           Summary: Cacl's F4 absolute cycle is sub-optimal when starting
                    from a sheet-only absolute reference
           Product: LibreOffice
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: lowest
         Component: Calc
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
            Blocks: 108917

There was a complaint in bug 153548 that when formula-building and selecting a
cell from another sheet that "Cycle Cell Reference Types" would be better if it
first switched to full absolute, then none, then partial. The initial state is
a partial absolute $Sheet.A1 - which is a good initial state.

The code that handles the cycle is sc/source/core/tool/reffind.cxx's
lcl_NextFlags

The order that the toggle follows is sc/inc/address.hxx
    TAB_ABS       = 0x0004
    ROW_ABS       = 0x0002,
    COL_ABS       = 0x0001,
    ZERO          = 0x0000,

The formula decreases by one from the current position, and from 0 to 7. The
starting point this report is concerned with is 4.

To see this in action:
-open attachment 185317 (F4 Test.ods), press "=" and select A1 in Sheet 2
-notice the initial formula is "=$Sheet2.A1"
-press F4 and cycle through the 8 absolute choices

I think the suggestion then is to reverse the order of the cycle. That way when
you start with the sheet as an absolute, you start adding cell and row until
fully absolute before making the whole thing relative.

I'm sure this change would raise the ire of all those who like to press F4 once
to make the most common task of changing from relative to fully absolute
instead of taking 7 steps to do that task.

Perhaps the place of COL and TAB could be switched around, but that would cause
the rather unpleasant situation of alternating an absolute sheet back and
forth.

Or is there some other kind of magic equation that could do the following
order:
0 - none
7 - full
1 - col
2 - row
3 - cell
6 - sheet + row
5 - sheet + col
4 - sheet

The other option would be to have a "remember the last used toggle" state and
combine a "toggle session" with the "current toggle state" and have some
special action for the "first toggle in a session" - which is probably the only
acceptable solution for this request.


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=108917
[Bug 108917] [META] Cell references bugs and enhancements
-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to