Customize Peoplecode App Designer text editor - oracle

I'm writing a lot of peoplecode in Oracle's Peoplesoft Application Designer 8.53
as far as IDE's go its pretty rudimentary but i'd like to be able to apply a custom Highlighting Scheme or customize the automatic white space manipulation that happens on save.
i found a few registry keys that allowed some customization but is anyone aware of a more complete list of possible registry modifications to customize the app designer text editor?
e.g. the examples i have found so far include
"PeoplecodeText"="Text,0,16777215,1,1"
"PeoplecodeTextSelection"="Text Selection,0,65280,0,0"
"PeoplecodeNumber"="Number,16512,16777215,0,1"
"PeoplecodeOperator"="Operator,32896,16777215,0,1"
"PeoplecodeComment"="Comment,10789024,16777215,0,1"
"PeoplecodeQuotedString"="QuotedString,255,16777215,0,1"
"PeoplecodeKeyword"="Keyword,16744448,16777215,0,1"
"PeoplecodeClassDefn"="ClassDefn,8421376,16777215,0,1"
"PeoplecodeBuiltin"="Builtin,8388736,16777215,0,1"

Related

Where is the DateTimePicker's native icon stored in Windows?

I'm looking to extract the calendar / dropdown icon from the native Windows DateTimePicker control at runtime. i.e. This little guy on the right (or something similar):
Does anyone know where it's found? (e.g. what API call paints it or what DLL the resource is stored in)?
Details
It's for a C# custom control (WinForms). I don't like the built-in DateTimePicker and am making a better one that allows rapid freeform text entry then parses it with more intelligence and less constraints. I plan to distribute my custom control as a single snippet of source code (.cs file) that's easy to copy/paste (nothing else required).
I know the Segoe MDL2 font has a calendar icon in it (E787) but I can't guarantee my target platforms will have it.

Create snippet and code completion from custom language

I work with an ERP, but the tools that it offers are very poor and non-practical, so I want to integrate an external editor and create snippets and code completion for it. It has its own built-in language, any ideas are welcome.
option 1: customizing the ERP editor
Integrating snippets and other features into the existing ERP editor would probably be difficult. Assuming it's provided as a web application, you could (in theory) write some Javascript that listens to the text you write into the built-in editor and then modifies it accordingly (blowing up expansions according to snippets you define, autocompleting words, etc.), but this might be brittle if the underlying HTML/Javascript changes, and difficult because you'll have to figure out how to reliably inject your custom Javascript whenever you load the website.
option 2: customizing your editor of choice for the ERP language
It sounds like the only thing the ERP editor is providing you with is syntax highlighting and maybe keyword autocompletion. If that's it, then in general those things aren't hard to implement in your editor of choice (e.g. for Vim, adding keyword autocompletion is as simple as dumping the keywords into a text file, and syntax highlighting involves defining some regular expressions). The benefit of doing this is that you'll also have access to all of your editor's other pleasantries, like navigation hotkeys, snippet plugins, and more.

Can I create a Visual Studio 2010 Add-In that Uses a WPF Display?

We're working on creating a specialized graphical editor for our enterprise applications. We've looked at and rejected DSLs. Ideally I'd like to have the main interface of the editor be docked like the code windows and use WPF for drawing. Can anyone point me to some documentation to get me on the right path?
Thanks.
Colin.
UPDATE: It's beginning to look like "no." From http://msdn.microsoft.com/en-us/library/bb166228.aspx: "Document windows are created by implementing an editor. The IVsEditorFactory interface creates document windows as part of instantiating an editor. For more information, see Accessing the Editor By Using Legacy Interfaces."
Following the link to http://msdn.microsoft.com/en-us/library/dd885127.aspx gives this this bit of advice: "You can access the Visual Studio editor from legacy interfaces. The Visual Studio SDK includes adapters known as shims, which enable these interfaces to interact with the new editor. Nevertheless, we recommend that you update your legacy code to use the new editor API. Your code will perform better and you can use new technologies such as the Windows Presentation Foundation (WPF) and the Managed Extensibility Framework (MEF)."
So, to sum up: if you want to implement an editor you have to use the legacy interfaces, but you shouldn't use the legacy interfaces because then you can't use WPF or MEF.
Seriously Microsoft, WTF?
UPDATE 2: Now that I have the proper names ("custom editor"), I was able to find the following topic: http://social.msdn.microsoft.com/Forums/en-US/vsxprerelease/thread/9e605d0f-1296-47c9-a534-e54905251ebe
I still don't see why they couldn't have included that somewhere prominent in the MSDN docs. You know, like somewhere near where they tell you that you can't use WPF if you're using the legacy interfaces.
Creating a custom editor doesn't have to be terribly painful. Yes, a custom editor will require implementing a few interfaces, but you can still use WPF to actually create the control that is hosted in the VS document frame.
DiveDeeper's blog has some great resources for learning about creating a custom editor.
Creating a simple custom editor - the basics
Creating a simple custom editor - the first 10 meters
Creating a simple custom editor - under pressure
I'd recommend using a library like VSXtra to do a lot of the work for you. It will provide you with a nice base implementation of an editor factory, editor pane, package, etc. Istvan Novak writes about building a custom editor with his VSXtra library in this blog post.

How can I write a plugin for VS2010 using MEF?

I've seen lots of MEF code for plugging into custom apps, but I am yet to find out how to write a plugin for VS2010 using MEF. I was under the impression that the new IDE supported this.
Does anyone know if this is supported 'out of the box', or does it require an install. Does anyone have any links, tips, etc to get me started.
MEF is the primary extension mechanism for extending the editor. If you install the SDK, there are a few new project samples set up to create editor extensions, found under C# (or VB)->Extensibility. These include:
Editor classifier – for providing syntax highlighting
Editor margin – putting a margin along the sides of the editor, with arbitrary WPF content
Editor text/viewport adornment – for putting WPF visuals into the editor
You can find overview documentation on MSDN: Extending the editor, and Editor extension points.
Some samples you may want to look at: editor samples on code.msdn.microsoft.com, a couple more on editorsamples.codeplex.com, and the source for all the samples I've written.
I blog about writing editor extensions. On there, you can find descriptions of most of the extensions I've written, along with more general posts about performance, design of the new editor, etc.
Questions posted on the editor forum on msdn also are answered by various members of the editor team.

Common usages of views and editors in Eclipse RCP applications regarding to enterprise automation?

I am a software developer working with different ERPs based on different platforms. Java is one of them. I've decided to learn Eclipse RCP. I am trying to understand the basics of Eclipse RCP regarding its views and editors concept.
Working with other platforms I don't care how to make a form in GUI. All the forms in my application can show data say from a DB or save this data back into the DB. And I don't care if a form shows the list of entities or a detailed info about an entity.
Here, in Eclipse RCP, I see that a form can reside in a view or in an editor. What is the difference between them? I would like to hear these differences from a business point of view, please. Or maybe these differences can be explained only in terms like "editor cannot have its own toolbar"? I would like to understand the purposes or common usages as a user not as a developer.
Thank you.
The wiki has a goof FAQ on this topic
There is generally only one instance of a given view per workbench page, but there can be several instances of the same type of editor.
Editors can appear in only one region of the page, whereas views can be moved to any part of the page and minimized as fast views.
Editors can be in a dirty state, meaning that their contents are unsaved and will be lost if the editor is closed without saving.
Views have a local toolbar, whereas editors contribute buttons to the global toolbar.
Editors can be associated with a file name or an extension, and this association can be changed by users.
Some advanced use are mentioned
here, about the ability to reuse an editor for several types of file.
or there, for linking to an editor
Views can have a different organization than editor: see fast view.
In broad terms:
Use editors for the main editable "documents".
Document lifecycle (open/dirty/save/close) fits neatly with editors.
Use all sorts of rich controls, hyperlinks, etc. It doesn't have to be a text editor.
Use views to provide optional supplementary analysis/manipulation of the document in the current editor.
Use views for other (often cross-document) navigation, analysis, search results, etc.

Resources