Page 1 of 1

Questions to gui development...

Posted: 20 Sep 2006 15:40
by BrainLai
Dear Sir:

I'm trying to do some modification on the GUI to add some private features and hope it works on the skinnable interface. Before that, I shall ask some qustions for clarifications.

1.1) In VLC, the skinnable interface and wxWidget interface are two independent modules, aren't they?
So skin mechanism as well as its configuration files only apply to the former, don't they?
1.2)If I want to modify the interface to add new features such as an additional window or panel to show external information (like current time, weather, and etc.), I need to modify both the two interface module to reflect the new features, don't I?
1.3)Since the new feature is triggered by a new button or menu item, I should modity the interface module to add the predefined action for skin configurations, shouldn't I?

2.) Where do you recommand to get started for such a modification?

Thanks.
Brain Lai

Posted: 26 Sep 2006 23:35
by ipkiss
1.1) In VLC, the skinnable interface and wxWidget interface are two independent modules, aren't they?
So skin mechanism as well as its configuration files only apply to the former, don't they?
Correct.
1.2)If I want to modify the interface to add new features such as an additional window or panel to show external information (like current time, weather, and etc.), I need to modify both the two interface module to reflect the new features, don't I?
As you may have noticed, all the dialog boxes used in the skinnable interface are the same as the ones in the wxwidgets one. In fact, the wxWidgets interface acts as a "dialogs provider" for the skins module, so if you plan to implement your new panel as a dialog in the wxWidgets interface, it should be straightforward to reuse it for the skins module. Of course, if you want the dialog to be skinnable as well, it will be more work...
1.3)Since the new feature is triggered by a new button or menu item, I should modity the interface module to add the predefined action for skin configurations, shouldn't I?
If you choose to implement the new panel as a wxwidget dialog, the changes in the skins module are minimal (just to define a new action to show/hide the panel). I can indicate you where to do the changes if you want.
2.) Where do you recommand to get started for such a modification?
You can look at the code, mainly. The skins2 module is rather well commented (you can use the doxygen documentation if you like). Otherwise, feel free to ask more precise questions on IRC, on the mailing-lists or even on the forums.