Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added chart support for word and powerpoint in addition to excel #7046

Merged
merged 12 commits into from Jan 1, 2018

Conversation

dineshkaushal
Copy link
Contributor

@dineshkaushal dineshkaushal commented Apr 3, 2017

This fixes partially #1541.
This is a common implementation for office charts that works for Excel, word, and powerpoint.
Earlier implementation for excel chart #1987 worked on event based model, but this one provides keyboard navigation which is much more structured.
excelChart.py is redundent, but I have still not removed it just in case users want event based implementation back.

@michaelDCurran
Copy link
Member

@michaelDCurran michaelDCurran commented Apr 12, 2017

It looks like you have not committed _msOfficeChart.py

return _(u"{text}").format(text=text)

def moveTo(self):
chartNVDAObj = WordChart(windowHandle=self.document.rootNVDAObject.windowHandle, wordApplicationObject=self.rangeObj.Document.Application, wordShapeObject=self.collectionItem)
Copy link
Member

@michaelDCurran michaelDCurran Apr 12, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this needs to be changed to OfficeChart

@dineshkaushal
Copy link
Contributor Author

@dineshkaushal dineshkaushal commented Apr 17, 2017

Oops, I missed that file. I have also made another correction. This is regarding using formula to get text directly from the cell for xValues when formula property has series formula

# -*- coding: UTF-8 -*-
#NVDAObjects/window/_msOfficeChartConstants.py
#A part of NonVisual Desktop Access (NVDA)
#Copyright (C) 2014-2015 James Teh, Michael Curren, NV Access Limited
Copy link
Member

@michaelDCurran michaelDCurran Apr 18, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix the copyright statement. Something like Copyright (C) 2014-2017 NV access Limited, Dinesh Kaushal


# Dictionary for the Description of chart types.
chartTypeDict = {
# Translators: A type of chart in Microsoft Excel.
Copy link
Member

@michaelDCurran michaelDCurran Apr 18, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change this and all other comments to mention Microsoft Office, not Microsoft Excel specifically.

text +=_("No Series defined.")
return text

def getChartSegment(self):
Copy link
Member

@michaelDCurran michaelDCurran Apr 18, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this different to OfficeChartElementBase.getChartSegment? if not then this can be removed.

"kb:escape": "disablePassThrough",
}

class OfficeChartElement(OfficeChartElementList):
Copy link
Member

@michaelDCurran michaelDCurran Apr 18, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find the name of this particular class confusing. I'm assuming that this element represents all the stuff that is not a series? perhaps call it OfficeChartElementMeta or something? saying OfficeChartElement makes it look too generic.

…etChartSegment and changed comments from excel to office
@michaelDCurran
Copy link
Member

@michaelDCurran michaelDCurran commented Jun 8, 2017

@dineshkaushal: a reminder to change the copyright line in _msOfficeChart.py to remove Michael Curran and James Teh (NV Access Limited) is enough. Also, can you merge master and fix conflicts again please. thanks :) Otherwise this is looking good.
Finally, it would be great if you could provide some sample office files with charts in them if you have not already. e.g. a Powerpoint slide deck, Excel workbook, and Word doc, all with charts. This will help me do some final testing.

dineshkaushal and others added 5 commits Oct 9, 2017
…tching sheets is still correctly supported.

also ensure that charts are not classed as being in Excel's treeInterceptor, so that they can be dismissed properly with escape.
… must press enter on the chart to interact with it. This ensures you can still move the chart around the slide with the arrows like any other shape when not interacting.
@michaelDCurran
Copy link
Member

@michaelDCurran michaelDCurran commented Dec 12, 2017

I have addressed all review actions myself:

  • Copyright statement is fixed.
  • excelChart.py is now removed (it is still in the git history obviously if needed).
  • Escape now correctly works for Excel charts.
  • Focusing a chart in Powerpoint slide view requires you to then press enter to interact with the chart (just like all other shapes).

michaelDCurran added a commit that referenced this issue Dec 12, 2017
@Adriani90
Copy link
Collaborator

@Adriani90 Adriani90 commented Dec 13, 2017

Dear all,

before creating a new issue, I wanted to ask, is it possible to report if a diagram is concav or convex by signal tones? So when I navigate from value a to b and the diagram is concav, the sound should go higher and NVDA should just read the actual value. We could take the signal tones from reporting progress bars for example.

@dineshkaushal
Copy link
Contributor Author

@dineshkaushal dineshkaushal commented Dec 14, 2017

@dineshkaushal
Copy link
Contributor Author

@dineshkaushal dineshkaushal commented Dec 14, 2017

@michaelDCurran michaelDCurran merged commit adea9f6 into nvaccess:master Jan 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants