RE: Main screen ideas 1of2
"Simon C" <[email protected]>
| Newsgroups | gmane.comp.mobile.bitpim.devel |
|---|---|
| Message-ID | <002601c63ea0$64dc81a0$0201a8c0@HOME> |
> > Borrowing some style ideas from fma I've replace the icons > with a tree > > view, it looks better I think. > > I do too! BTW where did you get the icons? > > > add a standard way for each panel to hook into the tree > view (e.g. SMS > > and > > It should also possible to have the same item multiple times > in the tree view. > For example in addition to the phonebook entries, there could > be a node named groups which each group as a child and > phonebook entries in that group as a further child. I propose changing the main screen to be a tree view similar to the screenshot I sent out. The implementation... The main window object will loose all of it's phone code, it will only provide the splitter frame, tree view and routing for menu and toolbar events, it will create a phone object to add to the root of the tree. The tree view will contain a root node representing a phone object. The phone object will be a class that contains references to all the wigets for the phone and will manage the leaves (widgets) under its node in the the tree view (it's parent). The phone class will contain references to the database and configuration options for its phone. This allows for multiple phones to be managed in the same tree view at some point in the future. A new class will be created to serve as a base class for the widgets, this will provide access from the widget to the tree view, this will allow the widget to add objects to the tree rather than having to create their own tree view (SMS, call history and fileview for example). It will also provide context sensitive popup menus for the tree, controlled by the widgets which will publish the menu items for their parts of the tree and subscribing to the events. It should be possible to upgrade the widgets one at a time, rather than all at once, the original widget code will work in the new design without change. Change will only be required to access the new features. The phonebook widget will take advantage of the tree view to show things like categories and allow new categories and contacts to be added via the popup menu in the tree. Drag and drop will be added in the widget base class, this will allow a user to move contacts from one category to another easily or add a ringtone to a contact. Widgets would subscribe to drop events and provide object hit test results, the base class would maintain a list of drag and drop data types to allow the widgets to handle custom objects. When multiple phones are supported, drag and drop will be supported between phones. The initial version of the change would provide no addition functionality to the user, just a look and feel change. Improvements to the individual widgets would follow as time allowed. I have not done any of this work, the screenshots I sent out were barely functional. I'd like to get approval from everyone before I do anything more. This is a big piece of work, but I think it will be worth it. The approach described will allow it to be done incrementally, and allow multiple developers to work on different portions simultaneously. The result will be bitpim having a really good looking front end to match the best of what is out there. Comments? Simon ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642