I am developing the user interface for a embedded device. I have created about 30 ui forms. You have first the Welcome form which loads the database and connects automatically to the available known wifi and all those start up functions. Once everything is loaded the next form to be loaded is the user login
So this is how I go about it, if Login is my second ui
//Instantiating the Login class
Login *myLog = new Login();
//Close the welcome class
this->close();
//open the Login class
myLog->show();
Is this the right way to switch between multiple UI? The software can be imagined like any smart phone device with multiple Icon buttons to open different apps. And each app or folder has a functionality of its own. I have a home button to move back to main menu homepage and so on. I have used the above given code to switch between various ui forms and I am not sure if this is the way to go about it. I am very new to Qt and I was asked to do this task within 2 weeks and I created the easiest way I found. Is there a better way to go about it?
Any help or guidelines is appreciated. If you could give me links to understand better it would be great
Thank you
EDIT
Every ui form has a short cut panel for direct access to login, main menu, settings-power options, wifi options (within settings). The layout flow shown under 1 is similar to 2, 3 and settings. Sorry for the ugly image. The two way arrow indicates i can switch back and forth. The single arrow shows linear movement.
Is there a better way to go about it?
I think so.
As noted in the comment, I would use a QStackedWidget myself.
I think this blog post explains how to establish "Home", "First" and so forth widgets inside it. This should be useful for you:
How to use Qstackedwidget in Qt (Switching between multiple views in Qt)
Related
Not sure why but I am not seeing the 'Applications' folder under 'Content'. All the tutorials out there mention editing the (/sitecore/content/Applications/WebEdit/Custom Experience Button) items to accomplish what I need.
My guess is I don't have view access to the core database in order to see these items or folders? If this isn't the case, how would I go about finding these buttons? Any help appreciated and I apologize if I didn't provide enough info but my goal is to add features to the page editor component toolbars.
To make this a formal answer...
First, login to desktop mode (on login screen, select "Desktop" from "Options" expander below form). Next, change database to core at bottom right:
Finally, re-open your content manager and you should see the /sitecore/content/Applications node.
I would like to have wizard in my application. but I don't want the focus to be on the wizard until the wizard is finished. That's what happens if I use wx.wizard. I prefer to load the wizard in an aui pane. So the user can switch to main window even in the middle of the wizard. I can have panels on top of each to make a wizard. Kindly point me if there is a better Pythonic way of doing that.
Thank you in advance.
The Wizard "widget" in wxPython is basically a dialog. I don't think you can embed it in your application. You might be able to extend the widget somehow to do so, but that would likely be a lot of work.
Instead, I would just create a set of panels that are your wizard pages. You will need a main panel that has some buttons on it that you place your pages on. Then when you hit the button, it will show the next page. I wrote a tutorial on the subject a couple years ago that should get you started:
http://www.blog.pythonlibrary.org/2012/07/12/wxpython-how-to-create-a-generic-wizard/
I have set up a BlackBerry Cascades-UI project. I am using QML to define the look and feel of the user interface. I need to provide the user a method of selecting an image from the device photo gallery after the screen has been touched.
Does anyone have any idea on how to provide a list on the screen with all the images in the gallery and their appropriate names after a touch event has been triggered?
Perhaps someone would like to know even though nobody answered.
There currently is no Photo Gallery dialog (though it is announced and will probably be released in an update in the near future). However, it is possible to invoke a native file selection dialog from another thread. For more information about this, go to the support forums for Cascades and find a topic called: "Using native filebrowse and filesave dialog in Cascades".
Here is a link.
on beta 3, you can use file picker to select file(s)
I have a project where I'd like to have many wxPanel which are displayed or hide, depending the selection of the user. All panel are on the same position, only one is displayed at a time.
On a code side, there is no problem at all. Where it gets tricky, is how to manage this with wxSmith and keep a clear view while having many wxpanel at the sample location?
One way which is really not proper is to user the wxNotebook, and then when you start the soft delete all tabs and then show the needed panel.
I have look around to try to have the panel on a "other" wxSmith window and then load it, like a class but haven't find anything good.
I'm sure, as wxSmith is really a great tool that it must have a way to do this.
Thanks for your help!
See ya
"One way which is really not proper is to user the wxNotebook, and then when you start the soft delete all tabs and then show the needed panel."
Why not? I use that technique for AtomWeaver, and it works fine. The plus side is that you can design each page normally on a RAD GUI builder.
I've created a class called GUI_NotebookPageData that holds a pointer to a single notebook page. Create an array of these, holding info about all notebook pages.
Then, by index, or by name, get the info of the page you want to show/hide, and use wxNotebook's RemovePage()/InsertPage() methods.
This method is specially good for having several pages shown at the same time.
Actually it's possible to use external ressources with wxSmith, then it's very simple to manage the frames.
It create a derived class from wxPanel (or other window) on a new wxSmith window, easy to manage then just required to include it on the project.
I've some data that can be shown on grid attached on a panel. When user clicks some button i'm showing this panel. Now i wanted to launch this grid in a separate window(should be a child to existing window) and want to make the grid editable, click controls...etc, is it possible?
thanks in advance.
You should be able to achieve this effect by placing your grid on a separate form, complete with editing stuff. Disable the form and set its parent, (see control.parent), to be the main form panel. When the user wants to edit it, set the grid-form parent to nil and enable it.
Not actually tried this with WinForms, but it works fine with Delphi VCL so worth a test if no better answers are forthcoming
Rgds,
Martin