C.All - enhancing LCD and themes (Official Thread) (1 Viewer)

archimede

MP Donator
  • Premium Supporter
  • February 1, 2005
    81
    0
    Stuttgart, Germany
    Dazzlercee said:
    Just trying to get my head around it at the moment. The first step was to get it working...lol. If you have any tips let me know. :D
    It seems to be working well using the following (16x2 lines)

    in Smartie
    Code:
    Text01="$dll(MPSmartie.dll,1,Line1,0)"
    Text01="$dll(MPSmartie.dll,1,Line2,0)"

    in MP
    Code:
    MediaMenu
    Line1=§#currentmodule§
    Line2=§#selecteditem§
    
    Menu
    Line1=§#currentmodule§
    Line2=§#highlightedbutton§
    
    Music
    Line1=§#Play.Current.Artist§ | §#Play.Current.Album§ | §#Play.Current.Title§
    Line2=§#currentplaytime§ / §#duration§

    For the other views I still have to set up the screens.

    I am now trying to have Smartie switching to MP data when MP is running (and viceversa). I have normally other info on the LCD (cpu, lan, etc.) and as soon as MP starts, it should switch over.
    I succeded in this, but as soon as MP is off, it is not switching back!
     

    HdWagner

    Portal Pro
    June 4, 2006
    53
    0
    Home Country
    Germany Germany
    archimede said:
    Which is registry entry that should be created?
    It's \HKEY_LOCAL_MACHINE\Software\Mediaportal with a key of type string named "path" and the value should be s.th. like "D:\Programme\Team MediaPortal\MediaPortal"

    It should be created as soon as you enter C.All configuration.
     

    HdWagner

    Portal Pro
    June 4, 2006
    53
    0
    Home Country
    Germany Germany
    archimede said:
    I am now trying to have Smartie switching to MP data when MP is running (and viceversa). I have normally other info on the LCD (cpu, lan, etc.) and as soon as MP starts, it should switch over.
    I succeded in this, but as soon as MP is off, it is not switching back!
    You have to monitor the key #c-all.is-active. If the value of this key is true, then MediaPortal is running. If the value is an empty string, then MediaPortal is not running.

    To make C.All send the key #c-all.is-active, you have to enter C.All configuration, enable Data -> Send filtered ... and add a line with #c-all.is-active to the text field.
     

    Dazzlercee

    Portal Member
    June 27, 2006
    8
    0
    The registry value was not set on my system.

    Archimede; I can confirm that you can remove the dll from System32 and then manually enter the the registry value:

    HKEY_LOCAL_MACHINE\SOFTWARE\MediaPortal

    Create a new String Value and call it "Path"

    Enter it's value as:

    "c:\Program Files\Team Mediaportal\Mediaportal" **

    ** Or wherever you have Mediaportal installed.


    The plugin should then work as intended.
     

    Dazzlercee

    Portal Member
    June 27, 2006
    8
    0
    Am I thinking along the right lines here:

    Smartie Action

    IF #c-all.is-active = 1 then enablescreen(13)**
    IF #c-all.is-active = 1 then gotoscreen(13)
    IF #c-all.is-active = 0 then disablescreen(13)

    ** Mediaportal screen in Smartie

    Thanks,

    Daz
     

    xavier

    MP Donator
  • Premium Supporter
  • December 12, 2004
    121
    17
    Venice
    Home Country
    Italy Italy
    Usage with Girder

    Hi HdWagner,

    with the ExternalDisplay plugin of JoeDalton, I sent two payloads to Girder (pld1 and pld2) contemporarily. The script that I was built me managed both the payloads to control at the best my remote control.

    I read in the documentation of C.All that only the payload pld1 is sent. :cry:

    Before heavily modifying my Girder script I ask if it is possible more explanations on the use of the panels Screens and Events of C.All, even introducing examples already realized with C.Mee.

    Not you forget that I would like to also use C.All to manage LCDStudio, over that Girder... 8)

    Regards,
    xavier
     

    Dazzlercee

    Portal Member
    June 27, 2006
    8
    0
    I'm a bit stuck now. I cannot get Smartie to change to a screen based on the key #c-all.is-active. The C.all debug window shows that this value is true when Mediaportal runs.

    In Smartie I have defned an Action:

    If #c-all.is-active = true then enablescreen(13)
    If #c-all.is-active = true then gotoscreen(13)
    If #c-all.is-active <> true then disablescreen(13)

    I have screen 13 stickied so it will stay on the VFD once enabled.

    No joy however...........any tips/ideas?
     

    Dazzlercee

    Portal Member
    June 27, 2006
    8
    0
    OK, I've got it now.....I think.

    This seems to work for switching to and from MP screens on VFD:

    if $dll(MPSmartie.dll,1,#c-all.is-active,0) = true then enablescreen(whatever)

    if $dll(MPSmartie.dll,1,#c-all.is-active,0) = true then gotoscreen(whatever)

    if $dll(MPSmartie.dll,1,#c-all.is-active,0) <> true then disablescreen(whatever)

    if $dll(MPSmartie.dll,1,#c-all.is-active,0)<> true then gotoscreen(1)


    I hope this helps someone, its taken me most of the day to work it out.
     

    HdWagner

    Portal Pro
    June 4, 2006
    53
    0
    Home Country
    Germany Germany
    Re: Usage with Girder

    Dazzlercee: Great that it works! I've never done that with more than two Smartie screens... :)

    xavier said:
    with the ExternalDisplay plugin of JoeDalton, I sent two payloads to Girder (pld1 and pld2) contemporarily. The script that I was built me managed both the payloads to control at the best my remote control.

    I read in the documentation of C.All that only the payload pld1 is sent. :cry:

    Before heavily modifying my Girder script I ask if it is possible more explanations on the use of the panels Screens and Events of C.All, even introducing examples already realized with C.Mee.

    Hey, you guys just won the world cup! Congratulations!

    Examples for C.Mee and Girder - I don't have any. I don't understand Girder at all...

    A brief explanation:
    C.All receives the change of every GUIProperty (this is internal stuff of MediaPortal).
    The GUIProperty with the name #play.current.album holds the name of the currently playing album.
    If this changes, C.All sends the key (=GUIProperty) and its value (=the value/contents of this GUIProperty) to the LCD software. For Girder it sends the key as EventString and the value as pld1.

    You probably don't want to care about things like #play.current.album. You probably just want the right information at the right time on your LCD. If you play music, you want to see music information - this is found in the C.All panel Screens, in the screen "Music". As every other screen it defines the keys "Line1", "Line2", ... and fills them with the correct info. C.All fills these 4 keys with music info/menu info/Tetris info/... So you only need to use the 4 lines your LCD software/Girder.

    To show the music info (the music screen) at the correct time, C.All needs to know when music is played. This is defined in the panel Events.
    The lines read like this:
    If #Play.Current.File is Published (=not empty), then C.All creates the screen "Music".
    If #Play.Current.File is Removed (=empty), then C.All kills the screen "Music".


    I can certainly send s.th. in pld2 - but what?
     

    Users who are viewing this thread

    Top Bottom