Stage Within Another Stage in javafx - javafx-2

All,
I am developing a client/server application in JavaFX. I have a main menu in a primaryStage and would like to load the contents (Designed a form in Screen Builder) when a menu is clicked in another stage? How do i do that? Also, I wish to make my client stage window to fit the size of primaryStage I already have? I am new to JavaFX and thanks in advance for your help.
Regards
PK

A couple of comments:
JavaFX is all about the client-side. While it is billed as a library on which to base Rich Internet Apps, its current incarnation, imo, does not live up to this promise. For enterprise-level client/server apps, you're likely to get better security and database flexibility by investing development time in the server-side middle-tier than by creating a heavyweight client-side app. It's just the way things are right now.
Secondly, JavaFX 2.2 currently provides no support for a Visual Studio-esque "Multi-document Interface" or a GUI with parent windows that can contain child windows.
If what you want is to display a Modal Dialog Window after selecting an option in your primary stage, you can certainly do that. Many people create helper classes to assist with the creation of modal dialogs because in JavaFX 2.2 it is a little awkward to create them. The helper class I used for modal dialogs holds two pairs of references:
References to the parent window's Stage and Controller object
References to this dialog's Stage and Controller object
Having these references handy makes it simpler to create the modal stage and it provides the references you may need to pass data between the controller objects for the parent and modal dialogs.

Related

Embeddable Web UI Designer

Is there are web framework that allows creating of custom Web UI designers that can be embedded into a webpage/webapp?
What I am looking for is to create a web UI that allows users to edit the UI in a drag and drop style editor. It should be possible to select some widgets (like these: http://scaffy.railsware.com/futurico/#pagination) and to select a data source (will be provided by back-end, nodejs).
Background: I am not a web designer and have no previous web experience. I just want to know if it possible to create what I am looking for and how much effort it would be. My background is in embedded Linux development and I would like to create an easy way for people to create machines with single board computers. The embedded stuff is pretty much complete and I am exploring ways to create nice and user editable user interfaces.
I think what you want is possible.
However... as far I know nothing exists which will do exactly what you require.
There are thousands of UI widgets on the Web to choose from but you would need a custom built backend cms developed especially for your needs
There plenty of Web agencies who could provide a bespoke solution. They could also assist with updates and adding new widgets.
So it can be done (and may encounter some browser incompatability issues), but you'll just have to be prepared to spend money.

Customizing the front end of maximo anywhere apps

I have been working on maximo anywhere apps recently and have a requirement to completely change the look and feel of the work execution app, the oslc layer which talks to maximo in the backend remains the same and all the functionalities are the same but there are some new buttons, notification messages and all sorts of UX aspects to be added to the app, I have just started looking at the architecture and code of the app but does anyone know how can I make changes to the front-end or is it even possible? I could find very few documents available online and all of them spoke of customizing features and functionalities but I coudlnot find any document for adding UX aspects.
It would be great someone could point out any documents or kick-off points which I can start looking into.
Thanks.
Thanks for asking, if you're just talking about adding new fields, layouts, screens to the UI, you can do that all through the app.xml, and there are lots of examples on our knowledge center, for example this one:
http://www-01.ibm.com/support/knowledgecenter/SSPJLC_7.5.2/com.ibm.si.mpl.doc_7.5.2/config_apps/t_add_rw_fields.html?lang=en
If you're talking about changing the "look" of the existing widgets, this can all be done through css, by overriding our out of the box css classes. Use Chrome inspector to figure out which css class is being used for each element type, and just override it through standard css approaches.
If you're talking about more advanced customization, for example adding your own new widget types to our screens, it is possible to programmatically instantiate/destroy your own widgets through javascript and add them to our standard application views. This code is usually hooked on the initialize and back event of our views. But you'll be responsible for writing the code to synchronize the data layer with your custom widget. We unfortunately don't have a published example of this customization usecase yet.
We always adding new widget capabilities to our Anywhere UI framework, so I'd love to hear feedback on the new widget types you're interested in.

Extend IBM Connections on an application level like blogs and forums

We are trying to extend IBM Connections 4.5 CR3 with own XPages apps not on the well described widget extension level for communities but on the application level.
Our goal is to extend the applications menu and load our apps inside the connections framework just like the original blogs or forums IBM apps.
Some others tried the same thing like this one:
http://blog.riand.com/2014/06/get-your-application-integrated-within.html?m=1
It seems that the trick for coming around the CORS trouble is not well documented in there.
Mikkel has put some code onto GitHub for the server side page generation:
https://github.com/lekkimworld/ic-wrapper
Can someone over here solve this or help us to come some steps further?
There are a number of approaches you can take, depending how daring you are.
The most pragmatic approach would be:Load a connections page, steal the HTML that makes up the Menu bar, copy that into a XPages custom control and you are done (of course you had added a link to your application beforehand in LotusConnectionsConfig.xml
Check the JSP that reads the LotusConnectionsConfig.xml how it is rendering the menu bar. Configure the Apache HTTP to expose the XML for read access, so you can dynamically create that menu - saves work when your menu changes often
Use the approaches described by Phil
Add a small JS that you call in your added menu. It would remove the content of the Connections page below the menu level and insert an iFrame which loads your XPage
Cheat by building a widget for a community homepage and have just that one widget (taking the whole page as real estate) in that Community
That's just off my head. Hope it helps

Is it possible to migrate a MonoCross application incrementally to MvvmCross?

The team I'm on created a cross-platform application that runs on iOS, Android, and Windows Mobile that was created using Xamarin's tools and MonoCross. We're looking at MvvmCross as a possible MonoCross replacement but don't want to write the application from scratch.
Does anyone have experience with or thoughts on migrating a Xamarin/MonoCross cross-platform application to Xamarin/MvvmCross? Is it possible for the two frameworks to coexist in the same app (the ideal solution would have us migrate the app one screen at a time).
Thanks in advance.
Following Stuart's advice below I confirmed that it is possible to integrate MvvmCross into an existing MonoCross application.
In the original code a selection on View 1 initiates a call to Controller 2 using MonoCross URI navigation. Controller 2 displays View 2, passing it the data from Model 2.
Following the example in this video I created an MvvmCross View and ViewModel. A selection on View 1 still navigates to Controller 2 but Controller 2 now displays the new MvvmCross View 2. View 2 is data bound to ViewModel 2 which takes over Controller 2's functions of getting the Model data.
I don't know of anyone who's done this recently, but I originally ported several of the MonoCross samples over when I first created MvvmCross. The overall idea of one page to one "ViewModel" stays the same, although the mvvm binding offers more continuous view-viewmodel interactions than the more discrete Controller-Action model.
At a practical level:
MvvmCross itself is very modular and can be used in "CrossLight" mode where it simply provides data-binding and plugins - see CrossLight in http://mvvmcross.wordpress.com/. You might be able to use this for migrating pages one-by-one
MonoCross isn't really very interface/IoC based - so you may find that your resulting MvvmCross migration would also not be interface based either
MonoCross apps tend to use file-linking and #defines rather than PCLs - so you may find it easier to not use PCLs in MvvmCross
I suspect the best option for this migration is to let your team experiment - they already have lots of knowledge about your app and about what they do and don't need and what benefits they do and don't get from a framework.

A default and easy way to display a spinner while performing lengthy operations

I'm transferring huge chunks of data while my users work with their forms. Besides trying to optimize the code to ensure for the fastest connections, I'd like to display a spinning image in the middle of the form to notify the user that the software is sweating it's parts of to get the info as quickly as possible.
I'd like to point to following considerations.
Can I use an arbitrary animated image (e.g. abc.gif)?
Is it possible (suggested, even) to use the default spinner seen in the CRM?
Can such a solution be applicable even for older versions of CRM?
IS is possible (recommended, maybe) to use jQuery and it's cool effects?
Yes you can use any animated gif. Add as a web resource in CRM 2011.
You can take the default spinner and add as a web resource. I'd strongly recommend you don't try and address it directly.
Yes but the way you manage your scripts is less prescribed. No solutions or web resources to use in CRM4.
Absolutely. See below.
The jQuery plugin BlockUI is one of the most popular for potentially long running OData calls from which you need to prevent further UI interaction.
Since you'll need to attach directly to a DOM element it's use won't be supported. However, as long as you stick with attaching to the <body> element and avoid digging too far down into the DOM like for example onto the markup for specific form sections you'll be OK.
For CRM 2011 we use our own Web Resource to wrap BlockUI providing a very simple API enforcing consistent binding to the <body> element which also checks for the inclusion of jQuery and BlockUI scripts (Web Resources) on the form.
Same deal applies for CRM 4 but script management is much more down to how your team are currently managing customisations and dependencies.
The easier you can make it to use, the less likely other developers on the team are to go off and try and roll their own causing horrible inconsistencies in the final UX.

Resources