- Moderator
- #1
The next major release of Moving Pictures will have an interface in the MediaPortal GUI for managing files in the importer. This is still a work in progress and this build is only meant for skin designers but there is an alpha linked below. Be sure to download the unofficial Titan skin files as well, they are listed separate. Skin designers, if you want a skin property or button or anything that is not currently there, please ask.
Many thanks to Edalex for his initial patch for this functionality. If you see him in this thread give him a like, if it were not for him this would not be happening.
DOWNLOAD
This build is meant for developers, if you are not a developer download this build at your own risk.
------------------------------------------------------------------------------------------------------------

Edit: more screenshots
EDIT:Additional changes are documented on page 2.
Included Skins
This build should work fine in either MediaPortal 1.2.3 or 1.3 Beta, but the included skin files are targeted at 1.3 Beta. The main download includes working skin files for DefaultWide only. There is an additional download that contains Titan skin files, if you are a skin designer or are just checking things out I highly recommend checking out the Titan skin files, these are of course a work in progress but more time has been given to these.
Also worth noting, the included Titan skin files were not created by the Titan team. This is at best a reference implementation to help other skin designer get started/inspired.
Window ID and Controls
The importer is implemented as a new screen with ID# 96743. This can be launched either the context menu in Moving Pictures or a skin based hyperlink (in the DefaultWide and Titan skins this is on the slide out menu).
The only control linked to any code on the Importer screen is the file listcontrol which has an ID of 310. Each list item includes three labels, the filename(s), the currently selected movie for this file, and an enum indicating the file's current status. The third will almost certainly never be used but I figured maybe it could be used for some clever skin based conditionals or something. Each list item also has a pinicon to indicate status. Now that I am typing this up I realize these filenames are not ideal so expect these to change in the future. Suggestions are welcome.
EDIT: Well the CODE markup on the forums here sucks...
Skin Properties
The following properties are pushed to the skin. If you can think of anything you want but is not available please let me know. Unless otherwise indicated these skin properties are only reliably available on the Importer screen.
EDIT: Don't feel obligated to use all of these. But be creative. And tell me what is missing.
#MovingPictures.Importer.Status: A description of the current task the importer is working on. The CurrentTask properties below are directly related to this task description. This on occasion gets blanked out for some reason, I need to figure out why.
#MovingPictures.Importer.TotalProgressPercent: Indicates how far along the importer is as a percentage. This would be useful for a progress bar. (0-100)
#MovingPictures.Importer.IsActive: Indicates if the importer is enabled. This will almost always be set to true. If the user has intentionally disabled the importer in the GUI this will be false. Available on main Moving Pictures Screen as well.
#MovingPictures.Importer.Waiting.Count: The number of files that are queued in the importer but are waiting to be processed.
#MovingPictures.Importer.NeedInput.Count: The number of files requiring attention by the user. Available on main Moving Pictures Screen as well.
#MovingPictures.Importer.Processing.Count: The number of files currently being processed. This is usually directly tied to the number of threads running in the importer. Maybe not so useful but maybe someone can do something creative with this.
#MovingPictures.Importer.Done.Count: The number of movies that have been successfully imported since the last time the importer was (re)started.
#MovingPictures.Importer.CurrentTask.Count: The number of completed units of work in the current task. This can refer to import paths scanned, files queued, etc depending on context. This combined with the total field below might be useful to append to the status string. For example, "Queuing Files... (23/75)"
#MovingPictures.Importer.CurrentTask.Total: The total number of units of work for the current task.
#MovingPictures.Importer.CurrentTask.Percentage: The percent complete for the current task (0-100).
Current Issues / Possible Changes
This is a very early build so things will probably change. I have tried to stabilize everything that is included right now but this is not a final build. Below are some things I jotted down to myself while working on this. Please feel free to comment or make additional suggestions.
Please post with your feedback and thoughts. Here are a few specific things I'd like feedback on but please feel free to post with whatever concerns/interests you.
Many thanks to Edalex for his initial patch for this functionality. If you see him in this thread give him a like, if it were not for him this would not be happening.
DOWNLOAD
This build is meant for developers, if you are not a developer download this build at your own risk.
------------------------------------------------------------------------------------------------------------



Edit: more screenshots
EDIT:Additional changes are documented on page 2.
Included Skins
This build should work fine in either MediaPortal 1.2.3 or 1.3 Beta, but the included skin files are targeted at 1.3 Beta. The main download includes working skin files for DefaultWide only. There is an additional download that contains Titan skin files, if you are a skin designer or are just checking things out I highly recommend checking out the Titan skin files, these are of course a work in progress but more time has been given to these.
Also worth noting, the included Titan skin files were not created by the Titan team. This is at best a reference implementation to help other skin designer get started/inspired.
Window ID and Controls
The importer is implemented as a new screen with ID# 96743. This can be launched either the context menu in Moving Pictures or a skin based hyperlink (in the DefaultWide and Titan skins this is on the slide out menu).
The only control linked to any code on the Importer screen is the file listcontrol which has an ID of 310. Each list item includes three labels, the filename(s), the currently selected movie for this file, and an enum indicating the file's current status. The third will almost certainly never be used but I figured maybe it could be used for some clever skin based conditionals or something. Each list item also has a pinicon to indicate status. Now that I am typing this up I realize these filenames are not ideal so expect these to change in the future. Suggestions are welcome.
Code:
Status Icons:
-------------
waiting to be processed: [no icon]
currently being processed: led_blue.png
needs user input: led_yellow.png
successfully imported: led_green.png
Skin Properties
The following properties are pushed to the skin. If you can think of anything you want but is not available please let me know. Unless otherwise indicated these skin properties are only reliably available on the Importer screen.
EDIT: Don't feel obligated to use all of these. But be creative. And tell me what is missing.
#MovingPictures.Importer.Status: A description of the current task the importer is working on. The CurrentTask properties below are directly related to this task description. This on occasion gets blanked out for some reason, I need to figure out why.
#MovingPictures.Importer.TotalProgressPercent: Indicates how far along the importer is as a percentage. This would be useful for a progress bar. (0-100)
#MovingPictures.Importer.IsActive: Indicates if the importer is enabled. This will almost always be set to true. If the user has intentionally disabled the importer in the GUI this will be false. Available on main Moving Pictures Screen as well.
#MovingPictures.Importer.Waiting.Count: The number of files that are queued in the importer but are waiting to be processed.
#MovingPictures.Importer.NeedInput.Count: The number of files requiring attention by the user. Available on main Moving Pictures Screen as well.
#MovingPictures.Importer.Processing.Count: The number of files currently being processed. This is usually directly tied to the number of threads running in the importer. Maybe not so useful but maybe someone can do something creative with this.
#MovingPictures.Importer.Done.Count: The number of movies that have been successfully imported since the last time the importer was (re)started.
#MovingPictures.Importer.CurrentTask.Count: The number of completed units of work in the current task. This can refer to import paths scanned, files queued, etc depending on context. This combined with the total field below might be useful to append to the status string. For example, "Queuing Files... (23/75)"
#MovingPictures.Importer.CurrentTask.Total: The total number of units of work for the current task.
#MovingPictures.Importer.CurrentTask.Percentage: The percent complete for the current task (0-100).
Current Issues / Possible Changes
This is a very early build so things will probably change. I have tried to stabilize everything that is included right now but this is not a final build. Below are some things I jotted down to myself while working on this. Please feel free to comment or make additional suggestions.
- Currently the importer is restarted when you enter the GUI Importer screen for the first time. This will be fixed in the next release, but just be aware of this.
- No feedback is given when you ignore a file. This functions correctly under the hood I just need to figure out a way to indicate the file has been ignored to the user. Suggestions are welcome.
- I will add a "Send to Importer" action for movies in the main Moving Pictures UI.
- Most strings are not currently translated, this of course will change.
- The status skin property sometimes gets blanked out, not sure why. Will try to fix.
- MediaPortal currently crashes when the Importer skin file is missing.
Please post with your feedback and thoughts. Here are a few specific things I'd like feedback on but please feel free to post with whatever concerns/interests you.
- I would like to add some filtering functionality to the list. Most people for example will not be interested in what was successfully imported several days ago. Or may just want to see a list of stuff that needs their attention. How do you imagine yourself using the importer?
- Are there any launch parameters you guys would like to see?
- The the Titan and DefaultWide skin the Importer link on the hidden menu is at the very bottom. This is probably not ideal and it really should be grouped with the other primary Moving Pictures functions higher in the list.
- Should we add an optional "Importer" entry to the Category list? Or is the slide out menu and context menu enough? Bear in mind not all users are pro like you.
- Can those stupid numbers leading each dialog entry be removed? They look horrible and provide seemingly little function.
- Are the current number of status icons enough?
- Do we need column headers for the list?
Last edited: