JavaScript interaction with PowerPoint documents - powerpoint

I have a task pane add-in for PowerPoint in mind that can help users with tasks on the active presentation. With Microsoft Office becoming more and more popular on platforms besides Windows using the JavaScript API would make a great portable implementation. There are a number of COM add-ins doing things like these via the PowerPoint object model:
Get the color of a selected shape and apply to another
Change position of shapes to align
them
Copy one or more shapes from a slide in a presentation to
another
Upload a selected image to a web service
Insert a slide
downloaded from a web service
After going through the JavaScript API documentation it seems like these things are impossible at the moment. getFileAsync sounds remotely promising but does not help in the end. getSelectedDataAsync only returns text or titles and IDs for slides. So this isn't a solution either.
Is it correct that for the tasks above I am currently out of luck with the available JavaScript API for PowerPoint? I.e. I will need to wait for a more comprehensive API to become available (like the APIs for Word and Excel)? Anyone knows if Microsoft has something in the works here?

Right now the Office extensibility team has been investing heavily in Excel and Word JavaScript APIs, the PPT API will also be available in the near future, but I cannot disclose any specific date. Stay tuned!!!

Related

UI / UX designer tool with custom style

My clients have their home grown style sheets for buttons, labels, alerts etc for consistent look across their applications.
Now if I want to create high fidelity mockups for client review, is there a way to generate mockups using the styles sheet they have?
Any tools like Adobe / Sketch can do the same?
Appreciate your feedback.
Figma is a great tool which helps us to build a master template of certain UI component and use it across the prototype wherever it's needed. Similarly, you can use Adobe XD and Sketch which also have similar kind of features also.

Web addin dialog box in powerpoint: centering and inserting web browser emulation

Operation system: Windows 10
MS Office version: 2019 64-bit
I am trying to create an MS Office web add-in which allows me to place different html pages to different slides. While reading different parts of the MS documentation and web-searching, I could not understand how to:
Center the so-called Taskpane in the center of a slide after start
Insert a web object with an option to show some website content (including js) WITHOUT errors connected to MS Office safety
A good example is a Plotly D3.JS Charts. I try to do practically the same but with support of loading local html files.
UPD: I know about LiveWeb, LiveSlides and other solutions. However, they have their own security problems - I have to correct regit. Therefore, please, do not propose them.
The task pane in an Office Web Add-in always opens to the side of the Office application window. You cannot configure it to open in the center of the document. Also, you cannot have separate task panes for each slide.

How can I get an Outlook Office Addin using the Office UI Fabric to pick up the users current theme in OWA

I'm using the primary theme colours from Office UI Fabric Core, but no matter which theme I change to in Outlook Web Access my add-in colors don't change. It's constantly using the default blue.
I've tried clear browser history/cache, different users, different browsers, different machines.
When displaying an Outlook Add-in in OWA the add-in is displayed in its own sandboxed iframe (if this helps someone who knows how the dynamic theme mechanism is suppose to work).
Office UI Fabric team member here. Sorry for the incredibly long delay, I'm just now seeing questions about Fabric on SO.
This question has come up a number of other times and is a scenario we hope to address soon. I don't have a great answer for when we can enable picking up & applying specific Office client themes, but know that this is important for us to support in our own product scenarios, so I'd expect to see developments here soon. We'll be working with specific product teams to figure out the best way to handle this from a technical perspective.
That said, in the meantime, it is actually possible to load themed styles in Fabric-React today that should give you an indicator of what the solution might look like: try changing a theme color like themePrimary on this page, then view a component like Button to see that change reflected there. I imagine the solution we end up with will look similar to this.

COPY and PASTE to/from Excel and MVC web application

I have tested both Google Docs and Microsoft Office live and seen that is possible with both tools to do two way copy and paste with Ctrl+C and Ctrl+V with Excel document running in my windows based machine.
This is also a requirement for our new web application we are defining the architecture right now.
We plan to use ASP.NET MVC 3 and I am not sure if there is any grid out there able to handle this feature. The interesting thing is that neither Google docs or Office live requires any plugin to be installed on the client and does not display any security warning so it looks like Javascript is actually able to access to the windows clipboard ( set / get ).
To find a nice MVC editable grid is also a big challenge, something I could move around with the arrow keys and simply edit any cell...
Has anybody sorted out anything similar before? Thanks!
We used ExtJS on one of our MVC applications to do this kind of thing. They have some pretty powerful and flexible grids that sound like the kind of thing you're looking for.
ExtJS Website

Usability of applications without the traditional "menu" bar

I've noticed recently that it seems to be a trend in Windows applications to no longer include the menu bar in an application (the "File Edit ..." menu), instead having the functionality linked to icons seemingly randomly spread around the application window.
for example: IE8, Windows 7 media player.
Is there any usability evidence driving this change? (I, personally, find these apps really hard to use)
If so, can someone suggest where I might find this research and perhaps some guidelines for writing new applications using this style?
Some answers have suggested that it's the "Ribbon" style, which appears to be what I'm looking at. I'm still having trouble finding guidelines or evidence of what works/doesn't work.
The MS Office Ribbon perhaps inspired the latest slew of apps that use multiple icons without text labels in lieu of a menu bar. However, the implementation of these apps apparently failed to understand or realize the advantages of the Ribbon or even what makes a Ribbon a Ribbon.
Controls labeled with icons alone are more difficult to learn than those labeled with text alone [See Wiedenbeck S (1999). The use of icons and labels in an end user application program: an empirical study of learning and retention. Behaviour & Information Technology, 18(2)]. The lack of text labels for groups of controls in these apps can’t help.
Note that the Office Ribbon generally avoids both of these pitfalls by providing text labels for groups of controls (the Office Logo being a notable exception) and text labels for most individual controls (many controls on the Home tab being another notable exception).
After being subject to much research, the Office Ribbon largely preserved the traditional File-Edit-View arrangement of commands found the traditional menu bar. There’s no evidence that there’s anything wrong with this organization.
IMO, icon-scattered UI designs represent a fashion or branding statement, a rather clumsy attempt to appear “state-of-the-art” like Office, and an excuse to decorate the UI with graphics. They are not a usability improvement.
For everything about the Ribbon, see Jensen Harris’s blog.
My critique of the Ribbon. Not that I'm particularly satisfied with the traditional menu bar and tool bar.
It is ribbon. Presumably it is easier to use than the standard menu because it is context dependent. The whole purpose of developing it was that despite the fact Word can do almost anything now, people were complaining it is missing some features just because they couldn't find them. So MS people were thinking hard and ribbon is what they created. Being context dependent it shows you the features you might use right now, not all the features and it saves screen estate so more features actually visible to the user.
Well, after a quick search I found a reasonable explanation of this UI trend. It is based on the Ribbon concept. It traces back from Office 2007 and even Firefox is using it.
References:
http://www.pcpro.co.uk/news/351808/firefox-tidies-up-with-office-2007s-ribbon
http://slashdot.org/story/09/09/23/1846248/Firefox-To-Replace-Menus-Wi
https://wiki.mozilla.org/Firefox/Sprints/Windows_Theme_Revamp/Direction_and_Feedback
http://en.wikipedia.org/wiki/Ribbon_(computing)
The ribbon still serves as a navigation area - a combination of a menubar and toolbar that tends to be organized by area (Print, Design, Layout, External Data) rather than traditional style (File, Edit, Tools). While it does take a bit of getting used to things being organized by area, it certainly adds to the usability.
I think the reason IE 8 integrates the menu bar into the same line as the tab is to allow for more viewing real estate (or junky toolbar add-ons). A ribbon would be overkill for something as simple as a browser where 99% of the time you do one of 3 things: Enter a URL, Go to Bookmarks/Favorites, or Print.
If you are writing a Windows-based database system or other complex application, definitely checkout how Microsoft utilizes the ribbons throughout its Office products.
The "ribbon" is nothing more than a FAT toolbar. Such things are getting invented, not because of user request or need, but because of the arrogance of large corporations and bored, rich managers and "developers" sitting around with nothing to do. "Inventing" things is one thing, but FORCING it on everyone w/o preserving the previous, non-cluttered, classic, working, familiar interface is absolute arrogance. People need to be informed. You don't have to put up with it. Say something.

Resources