//public selectRangeArea getRowArea(Int32 y) //{ // cursorVariatorState currentState = state(area.x, y); // appendRole role = getAppendRole(currentState); // return output; //} #pragma warning disable CS1574 // XML comment has cref attribute 'appendType' that could not be resolved /// <summary> /// Provides complete <see cref="styleShotSet"/> according to x,y coordinates and desired <see cref="aceCommonTypes.enums.appendType"/>. /// </summary> /// <param name="x">X (horizontal) position relative to <c>selectRangeArea</c> 0,0 point.</param> /// <param name="y">Y (vertical) position relative to <c>selectRangeArea</c> 0,0 point.</param> /// <param name="type">If <c>appendType.none</c> it will automatically find the best match</param> /// <returns></returns> public styleShotSet getStyleShot(Int32 x, Int32 y, appendType type = appendType.none) #pragma warning restore CS1574 // XML comment has cref attribute 'appendType' that could not be resolved { cursorVariatorState currentState = state(x, y); appendRole role = getAppendRole(currentState); if (type == appendType.none) { throw new NotSupportedException("appendType is set to none!"); //type = role.convertRoleToType(); } acePaletteRole colorToUse = mainPaletteRole; if (currentState.useLayoutPalette) { colorToUse = layoutPaletteRole; } styleShotSet output = new styleShotSet(role, type, (acePaletteVariationRole)currentState.useColorIndex, colorToUse, currentState.useInvertedForeground, theme); return(output); }
/// <summary> /// Gets the append role recommandation according to x and y position /// </summary> /// <returns></returns> public virtual appendRole getAppendRole(cursorVariatorState state) { if (state.isHeadZone) { if (tableOptionFlags.HasFlag(appendTableOptionFlags.topHeadMerged)) { return(appendRole.mergedHead); } else { return(appendRole.sectionHead); } } if (state.isHeadZoneExtended) { return(appendRole.tableColumnHead); } if (state.isFootZone) { if (tableOptionFlags.HasFlag(appendTableOptionFlags.footMearged)) { return(appendRole.mergedFoot); } else { return(appendRole.sectionHead); } } if (state.isLeftZone) { if (state.isHeadZone) { return(appendRole.tableCellNovalue); } if (state.isHeadZoneExtended) { return(appendRole.tableColumnHead); } return(appendRole.tableColumnHead); } else if (state.isRightZone) { if (state.isHeadZone) { return(appendRole.tableCellNovalue); } if (state.isHeadZoneExtended) { return(appendRole.tableColumnHead); } if (state.isMajor) { return(appendRole.tableBetween); } if (state.isMinor) { return(appendRole.tableBetween); } return(appendRole.none); } return(appendRole.tableCellValue); }