Multiple plugins/addons within 1 home screen menu item?
#1
First, I just want to say I am new to XBMC and really liking it. I come from years of Windows Media Center with Media Browser and also Boxee. PVR and Games Launching was only thing I was waiting for.

I have 1 customization searching the forums has not answered. Specifically, I want to create a Home Screen Menu Item called "Apps" and within that have the Navi-X plugin (program addon), Pandora plugin (music addon), and YouTube plugin (video addon) within this Apps menu item.

From what I understand, it is only possible to add a singular plugin, selected as a favorite, to a singular home screen menu item. I.E. adding a YouTube menu item that launches the Youtube Plugin. But can I add multiple favorites to a singular menu item called "Apps?"

Also, in some skins their is an "Addons" or "Programs" menu item, but this only allows program addons/plugins to be launched and I want to be able to add video and music plugins to this.,

Is this possible? Did I miss something or not research enough?

Basically, I prefer having all my favorite plugins (program, video, and music) added into 1 Home Screen Menu Item called "Apps."
Reply
#2
Yeahhh...

I want the exact same thing as you, but there isn't REALLY a way to do what you are talking about.

Here's what you CAN do though--what I did anyway.

-I made a custom button that actually takes me to favourites, but I labeled the button "Programs"--this gives the effect of what you want--a custom screen full of EVERY plugin you use (video, audio, whatever)--but, the heading will still say "favourites" at the top if your skin has it labelled at all.

I use Cirrus Extended, and there is no such heading anyway so it matters even less.



OR

If you have the time and are more adventurous, the following SHOULD work.

I know it is possible to make custom windows in XBMC, so if you want to learn a bit about skinning, you could actually make your own customized screen and just add the things you want to it manually.

XBMC's skins are located in %appdata%/roaming/xbmc/addons/skin.nameofyourskin... inside this folder, everything is named pretty much as you would expect, except the 720p folder, which is the folder that contains the bulk of the skin's code.

This is the file you will be working in for the most part.

If you open up the 720p folder, you will find a ton of .xml files.... for the most part, each file represents one screen or set of screens. For example, there is an xml file for your homescreen menu, another for the homescreen itself, perhaps 1 xml per unique library "view", or there might be multiple views in one xml file.

The specifics escape me, but basically, at the top of the views or any custom windows you might have, and maybe some others, they have a "window id" number at the top.... you would need to make up a unique number for your custom window, and that number would be how you call it from the homescreen button.

So, for example, at the top of my Tv guides xml file in Cirrus extended, it says:
Code:
<window id="1115">


So, my Home screen button that opens the TV Guide screen reads like this:
Code:
            <item id="28">

                    <label>31187</label>

                    <onclick>ActivateWindow(1115)</onclick>

                    <icon>special://skin/backgrounds/tv_guide/</icon>

                    <thumb>$INFO[Skin.String(Home_Custom_Back_TVGuide_Folder)]</thumb>

                    <visible>!Skin.HasSetting(HomeMenuNoTVGuideButton) + Library.HasContent(TVShows)</visible>

                </item>
The important part of that is the <onclick> part.

Basically, I would find a window that you like in your skin (perhaps the favourites menu?), give it a unique window id, replace the code that displays the content in that window with <item></item> type code like I copied from my home screen above, only linking to your specific chosen applications/windows....

Now, save that new xml file with a unique name in the 720p folder.

Finally, open up includes.xml in the 720p folder, and add your new file's name to the list of xml files at the very top--it doesn't matter where you add it in the list.

I know it's a little confusing, but it will be a fun learning process, help you to customize your own xbmc infinitely to your own liking, and achieve the results you want exactly --unless I'm mistaken.
Reply
#3
You can do this fairly easily simply by writing a script, though I guess our definitions of "easily" may vary.

I knocked up an example script to run the YouTube add-on. If you're interested grab http://swarchive.ratsauce.co.uk/xbmc/Ope...Script.zip. Save it somewhere convenient then go into System, Add-ons, Get Add-ons and use the "Install from zip" option to install it. Now under the programs heading you'll have an option "Open YouTube" and selecting this option should run the YouTube add-on.

To see how the script works press Windows-R and in the Run dialog type:

"%appdata%\xbmc\addons"

(including the quotes) and click OK and this will open an Explorer window showing your add-ons. There'll be several folders there including one called script.runyoutube, and this contains my script. Open that folder and you'll find two files addon.xml and default.py.

Addon.xml is an XML file describing the script. Open it in Notepad and you'll see it sets the title, description etc. Default.py is the actual script, and it contains only one line that matters:

Code:
xbmc.executebuiltin('ActivateWindow(10025,"plugin://plugin.video.youtube/")')

To create other scripts to run other add-ons:

1. in your addons folder create a new folder called script.somethingsuitable and copy the sample addon.xml and default.py into the new folder.

2. edit addon.xml to change the script name and description.

3. edit default.py and change the name of the add-on you're activating.

It can be a bit tricky to work out the name of the add-on so here's a trick: add the add-on to favourites by highlighting the add-on, pressing C and selecting "Add to favourites". Now open favourites.xml by running:

notepad "%appdata%\xbmc\userdata\favourites.xml"

and you'll see the ActivateWindow line you need in the file (note that XBMC uses Unix style line breaks and Notepad may show the whole file as a single line).

JR
Reply
#4
Branlr,

Thanks for the skinning direction. I actually did a very similar thing with Boxee by adding custom home screen buttons via very similar folders and .xml files you pointed. Boxee, is based on XBMC, so I should of known to tinker in the same areas, but hoped perhaps their was an easier, built-in way, I was missing. Boxee actually has this exact "Apps" with all their plugins and one for your favorite plugins, so I might look into those .xml files and see if I can duplicate something. However, thanks for the help and I will definitely do some tinkering around and see what I can come up with. It does seem like a learning process, but again that is where all the reward is.

Jhsrennie,

Wow! Your script seems like a fairly straightforward solution. I would of never even have thought to do something like that. I am excited to give it a shot this weekend and will report back with progress. Thank you for the suggestion.
Reply

Logout Mark Read Team Forum Stats Members Help
Multiple plugins/addons within 1 home screen menu item?0