SageTV Community  

Go Back   SageTV Community > SageTV BETA Release Products > SageTV Beta Test Software
Forum Rules FAQs Community Downloads Today's Posts Search


SageTV Beta Test Software Discussion related to BETA Releases of the SageTV application produced by SageTV. Questions, issues, problems, suggestions, etc. regarding SageTV Beta Releases should be posted here.

Closed Thread
Thread Tools Search this Thread Display Modes
Old 05-20-2010, 12:59 PM
Narflex's Avatar
Narflex Narflex is offline
Join Date: Feb 2003
Location: Redondo Beach, CA
Posts: 6,349
Cool SageTV V7.0.9 Beta is Ready!

Howdy all!

Beta testing has begun for Version 7 of SageTV. All of the high-level information on V7 can be found here:

Be sure to read the above post as it contains important information regarding upgrade pricing and new features

Since we explain most things in the above post, we'll just use this for the download links and detailed release notes that we know many of you want to see.

As always, report bugs you find here:

Here's the download links for V7:

SageTV for Windows

SageTVClient for Windows

SageTVPlaceshifter for Windows

SageTV for Windows Home Server

SageTV Media Center for Linux

SageTV Placeshifter for Linux

SageTV Media Center for Linux - Debian Package Installer

SageTV Placeshifter for Linux - Debian Package Installer

We decided not to post the full set of release notes since it contains 561 items since V6.6. So we abridged it somewhat and now its down to 192 items. Yeah, that's still pretty long...but we know some of you will actually want to read through this all because they'll be of interest.

Detailed Updates from V6.6 to V7.0.9 Beta

Core Updates
1. When checking if a keyword Favorite matches an Airing; also compare against the information in the Show's ExternalID field (i.e. SH23124232, etc.)
2. When searching by all fields; also check the misc. Airing information for Closed Captioned, Stereo, Subtitled, SAP, HDTV, Premiere, Season Premiere, Channel Premiere, Series Premiere, Season Finale and Series Finale search terms (or substrings of them)
3. Added support for the new "Scroll Up/Left/Right/Down" UserEvents which perform unit scrolling on the focused component (tables or panels)
4. Removed some no longer needed JAR files for 'commons logging' and 'mx4j' from the installers.
5. Added support for BluRay thumbnail generation
6. Added server-based property "videoframe/disable_timescaling_on_seek" which, if set to true (false is the default), will disable the technique where SageTV will scale a seek time to compensate for differences between the real duration of a file and the duration stored in the database. This can help accuracy w/ utilities like ComSkip.
7. Optimized thumbnail loading when a folder.jpg file is in use. Previously it would load a copy for each MediaFile that was correlated with it; now it will only load a single copy and share it between them.
8. Added property "repair_epg_manual_record_mismatches" which defaults to true. If set to false; then the EPG DB will not try to fix Manual Records that have their backing EPG data changed.
9. Added new UI-specific property "ui/wait_indicator_refresh_period" which controls the refresh period of the busy indicator (default is 100 msec).
10. Fixed bug where videos with a HD resolution in width, but a height below 700 wouldn't be tagged as HD.
11. Changed generated thumbnail size to be 512 in the larger dimension (it was 256 previously). This will cause re-generation of all previously generated thumbnails.
12. Added support to the client/server protocol for the server forcibly restarting the client (needed when they share a filesystem and a plugin modifies an in-use resource file)
13. Added support for doing a one-shot connection to a SageTV server which is used when restarting the SageTVClient while connected to a server
14. Added restart capability to SageTV for Linux and Windows. On Windows there will now be 2 executables running for any invocation of SageTV in order to manage the restart logic. Linux uses a script.
15. Added client-UI specific property "ui/wait_icon_prefix" which can be used to change the image prefix for the wait indicator icon. The actual image files must end with X.png where X ranges from 0 to 7 inclusive.
16. Fixed bug where multipart Airings that all use the same ShowID (SH, MV or SP) would not all get recorded. Those Airings are now recognized as non-unique; which will cause them all to be recorded.
17. Added property "enable_hotplug_storage_detector" which defaults to true; and if set to false it will disable scanning for newly attached storage devices.
18. Added a new System Message for when a recording directory is detected to be offline. The message will occur whenever the directory transitions from the online->offline state. It an error (red) message if there's only one recording directory; and a warning (yellow) message if there's more than one.
19. Redefined how enabling/disabling of animations work. If there are any Effects Widgets in the STV; then the new Effect animation system will be used if animations are enabled; otherwise the old 'layer' animation system will be used if animations are enabled. If you used V7 before; you will need to manually go in and turn on animations.
20. Removed the space between the time and the AM/PM indicator when using the default time formatting in locales that use the AM/PM indicator.
21. Update various DVB frequencies
22. Fixed incorrect aspect ratio detection in MPEG2 streams that had a 1:1 PAR setting
23. Added property "ui/disable_focus_gain_on_menu_change" which allows specifying that focus should not be requested by SageTV whenever a menu transition occurs. (SageTV does request focus on menu changes by default)
24. Added new system message to report when a partial Favorite recording was performed and saved as a complete recording because it's not airing again.
25. Updated Keep At Most setting for Favorites so it'll take a maximum of 63 now instead of 15
26. Added automatic conversion of Favorite recordings to another format after they have completed recording; the destination directory can also be specified as well as whether or not to delete the original after the conversion is done
27. Fixed bug for song track #'s that are larger than 128 so they return as a positive value up to 255 instead of a negative value
28. Changed default scheduling lookahead to be 14 days instead of 3
29. Added automounting of ISO files for playback as DVDs or BluRay(BDMV) folder structures. On Windows this requires Virtual Clone Drive (freeware) to be installed.
30. Removed requirement of VIDEO_TS.VOB file for detection of DVDs without a VIDEO_TS folder structure (VIDEO_TS.IFO is now the only requirement)
31. Added parallel image loading for all renderers. Images can now be loaded in the background without interrupting the rendering process or user interactivty.
32. Added property "seeker/fs_mgr_wait_period" which controls the delay between when capture device recording progress is checked (in milliseconds, defaults to 15000)
33. Added support for selecting a specific title when playing back a BDMV folder (only for HD media extenders and Windows clients)
34. When importing a new video MediaFile the following metadata fields are now also used to populate the Airing/Show objects: ExternalID, EpisodeName, OriginalAirDate, ExtendedRatings, PartNumber, TotalParts, Misc, HDTV, CC, Stereo, Subtitled, SeasonPremiere, SeriesPremiere, ChannelPremiere, SeasonFinale, SeriesFinale, SAP, ParentalRating,
35. Added support for watching of live TV channels that are video or audio only (i.e. music/radio channels)
36. Freetype is now used by default for font loading if a TTF file can be located; otherwise the Java font system is used
37. Added faster caching of relative path images used in STVs so we don't need to hit the filesystem everytime to verify their path
38. Added seamless file transitions when watching live TV for Windows Application, Windows Client and HD Media Extenders. So when one show ends and the next begins; the transition is seamless.
39. Set the power management update interval to be 10 seconds by default instead of 30. This way temporary states that exist on the server where we indicate we don't need power will not leave the OS's power management system in a state long enough to trigger it to shutdown.
40. Metadata for completed recordings is now embedded in the MPEG file when the recording is done. This can be disabled by setting the property: "seeker/mpeg_metadata_embedding=false"
41. All recordings are automatically embedded with metadata if the property "seeker/mpeg_metadata_embedding" is not defined at all in the file; so on the first run of V7 it will embed metadata in all of your recordings; the property is then set to true automatically.
42. Allow for importing of playlist files in video import directories
43. Fixed bug where the EPG downloader wouldn't download the actual EPG data on the first connection. (it would after any lineup modifications were done; and usually they are which is why we didn't catch this)
44. Changed ID boundary where the database rolls over so that the Wiz.bin file should really no longer ever be rolled over within a user's lifetime
45. Added property "ui/autoscroll_period" which controls how fast autoscrolling events can be sent (they will not occur faster than the period)
46. Fixed NPE that could occur as a result of MetadataParserPlugin putting a null key or value in its returned Map of properties
47. Optimized ID3 parsing so that if we detect invalid ID3V2 data in an existing ID3V2 tag we then go look for the ID3V1 tag to see if that one might have valid data.
48. Added metadata fields so that the complete information about a TV recording can be specified in its imported metadata. Boolean fields should use 'true' to indicate the flag should be set. New fields are: PartNumber, TotalParts, HDTV, CC, Stereo, Subtitled, Premiere, SeasonPremiere, SeriesPremiere, ChannelPremiere, SeasonFinale, SeriesFinale, SAP, EpisodeName, ExtendedRatings (, or ; delmited), OriginalAirDate (long value), ExternalID and Misc (, or ; delimited)
49. Added ability to modify the disk balancing technique when using multiple recording directories. The option is in Detailed Setup->General and only appears if you have more than one recording directory configured. Optimizing for space is the technique SageTV has used in the past; and is the default. Optimizing for Bandwidth is a new technique that will spread out the active recordings as evenly as possible across the directories so bandwidth usage is more evenly distributed between the recording directories.

Windows Updates
1. Changed default setting for 'always_use_dshow_player' to be true to take advantage of the new stream demux
2. Fixed very rare bug where surfing between analog and digital channels on a hybrid tuner would sometimes cause it to be loaded twice which would then cause the device to fail.
3. Added support for detecting resolution change events on Windows so we can rebuilt the D3D system in response to it
4. Fixed bug when playing back with EVR/VMR9 where the decoder didn't properly calculate the aspect ratio; we now can detect this state and then default to the aspect ratio we determined from the file format itself.
5. Fixed issue where the video dimensions wouldn't be correct due to adding a closed captioning decoder filter sometimes in DirectShow (happened w/ PlayOn Hulu playback)
6. Added registry setting HKLM\Software\Frey Technologies\Common\DirectShow\EnableSageTVStreamDemux which defaults to 1, and if set to zero will disable use of the new Stream Demux DShow filter
7. Add AVMed A815 DVB-T (Volar) USB tuner support.
8. Added support for specifying the registry setting HKLM\Software\Frey Technologies\SageTV\IgnoreMCEPowerOff=1 which will then cause SageTV to not consume the Power event from an MCE remote and let the OS handle it instead
9. Fixed bug where MPEG files with filenames with Unicode characters in them didn't always have their format detected properly
10. Add Microsoft default decoders from Windows 7 to our filters list
11. Added BluRay (BDMV) playback support for Windows client & application. Audio track selection, title selection and chapter selection are supported. Currently BluRay subtitles are not supported on the Windows client. ISO playback is also supported; but the ISO file must be accessible by the machine playing it back either through UNC or a mapped network drive. BDMV folders can be streamed to a SageTVClient residing on the same LAN as the server.
12. Optimized disk writing filter to remove the need for 64k block size formatting of drives on Windows.
13. The Windows Installers now set ths permissions on the Program Files\SageTV folder and its subfolders for full control for everyone to prevent issues with UAC.
14. Added support for bobgavant's (andyvt) DirectShow playback graph plugins (he will provide more details)

Linux Updates
1. Added support for a 'sagesettings' file which can store commonly changes startup parameters that are preserved across upgrades rather than editing the startsage or startsagecore files directly
2. Fixed rare deadlock bug that could occur if the logfile rolled over at the wrong time
3. Fixed bug with DVB on Linux where due to the new capture device naming rules; the .lnb file that was created didn't match the native device names used (now the core will make a copy of the file so it matches the desired name since the UI doesn't know the proper names)
4. Cleaned up video capture device names so that they're consistent if devices are added/removed and use names related to the actual hardware; not the file system's device path.
5. Fixed platform path characters when loading a MediaFile object since the Macintosh & Linux JVMs don't do this by default like the Windows JVM does
6. Fixed bugs with circular file playback (used in device input and channel previews)

Extender Updates
1. DVD Playback fix: Update JUMPSS for the case were vtsm is 0
2. Fixed bug where the first extender/placeshifter connection attempt to a server may end up disconnecting due to a timeout handler synchronization issue
3. Native output resolution switching will now match on frame rate as well as resolution (previously it only cared about matching resolutions)

Placeshifter Updates
1. Fixed bug with placeshifter discovery of servers on a LAN where the presence of multiple servers would sometimes cause them all to not be detected properly.
2. Fixed usage of timeouts with remote filesystem transfers to placeshifter clients
3. Added support for using the Direct3D renderer in the Windows Placeshifter; this is now the default. This replaces the use of OpenGL. It also supports all the new 3D effect functionality.

Plugin System Updates
1. This is all new; so we won't list the individual changes here

STV Updates
1. Too much to list

continued in next post due to length limitations....
Jeffrey Kardatzke
Founder of SageTV
Old 05-20-2010, 01:00 PM
Narflex's Avatar
Narflex Narflex is offline
Join Date: Feb 2003
Location: Redondo Beach, CA
Posts: 6,349
Studio Updates
1. Fixed bug where Ctrl+Shift+F12 didn't always highlight the currently active menu in the SageTV Studio if called from an extender/placeshifter.
2. Added new MediaFile API call: GetMediaFileRelativePath(MediaFile) which returns the path of the MediaFile relative to the import directory that contains it.
3. Added Plugin API call GetPluginImplementation(Plugin) which exposes a way to get at the actual sage.SageTVPlugin implementation of a plugin object if needed
4. Updated documentation for GetMediaFileMetadata and SetMediaFileMetadata so they reference all the predefined properties that we handle.
5. Enabled parallel support for GetMediaFileMetadata so that it can retrieve any of the standard data set by SetMediaFileMetadata (i.e. Title, EpisodeName, OriginalAirDate, etc.)
6. When doing a 'Find' in the Studio, limit the number of results to 1000 (controlled by "studio/max_find_results"). A warning message will poup if this occurs.
7. Added support for Undo in the SageTV Studio when editing an attribute value inline. The first undo will revert the Value (if changed) and the second undo will revert the Name (if changed).
8. Updated preferred size for text components in the Studio property editors so that they'll expand to a larger size if their content require it. (this applies to straight text fields; not ones that have sliders or other adjustment capabilities)
9. Added support for putting temporary MediaFile objects into the Now Playing Playlist
10. Added support for various new metadata properties to the GetMediaFileMetadata API call; see the documentation for details
11. When 'Display Attribute Values' is selected in the Studio; allow inline editing of the name and value of the Attribute.
12. When creating the JFrame for the SageTV Studio use the JComponent.setName(String) call and pass the UIContext name to that call
13. Added an indicator to the Studio's title bar if the currently loaded STV has dynamic imports active.
14. Warn the user about saving an STV in the Studio if that STV has dynamic imports active.
15. STVs are now checked for a 'STVName' and 'STVVersion' Attribute underneath the Global Theme Widget. This defines the name & version for specifying dependencies when used with the automated plugin system.
16. Changed layout algorithm for the video widget so that it has a preferred size equal to the full available area adjusted for the aspect ratio of the currently playing content (so a Video Widget can autosize itself and match the video aspect ratio)
17. Updated Table Widget implementation so that if it is marked as a Background Component then it will not allow the table itself to be focusable (this only was allowed in the past if the table was scrollable and had no focusable children)
18. Added Configuration API calls: GetOverscanInsetTop/Left/BottomRight() and GetOverscanInsets() which can be used for getting floating point values that correspond to the overscan insets applied to the UI
19. Added Plugin API
20. Added Utility API calls: IsLocalRestartNeeded(), IsServerRestartNeeded(), Restart() and ServerRestart()
21. Added Widget API calls: AddWidgetWithSymbol(WidgetType, Symbol), GetSTVName() and GetSTVVersion()
22. Fixed bug where the internal Maps used to store local variables in the Studio's expression language were not thread-safe
23. Fixed bug with the property editor in SageTV Studio where clicking Cancel or Revert wouldn't cause the UI to immediately update itself to reflect the changes.
24. Fixed bug when selecting revert would set a property back to its default value (blank) was not also resetting the slider to the default position
25. Fixed bug when selecting revert and editing multiple Widget's properties simultaneously wouldn't reset the background color to gray for properties that had different values between the Widgets being edited
26. Fixed bug when editing multiple Widget's properties at once for a combobox selection; if any Widgets didn't have that property previously set; then the resulting change was not applied
27. Fixed bug when editing multiple Widget's properties at once for a boolean selection; it didn't treat 'false' and 'null' as the same thing
28. Added new event listeners for MouseEnter, MouseExit and MouseMove. These are new selections in the event list for the Listener Widget.
29. Added Airing API calls: GetManualRecordProperty(Airing, Name) and SetManualRecordProperty(Airing, Name, Value)
30. Updated functionality of SetMediaFileMetadata so that if any of the following names are used for the metadata property it will instead update the Airing or Show object in the database instead that links to the MediaFile (changes to the Airing will cause construction of a new Airing object and relinkage to the MediaFile; while Show objects will be updated in place). GetMediaFileMetadata was not changed; so in these special cases, Get and Set are not mirrors of each other. The metadata names this applies to are: Track, Title, EpisodeName, Album, Genre, GenreID, Description, Year, Language, Rated, RunningTime, OriginalAirDate, ExtendedRatings, Misc, PartNumber, TotalParts, HDTV, CC, Stereo, Subtitled, Premiere, SeasonPremiere, SeriesPremiere, ChannelPremiere, SeasonFinal, SeriesFinale, SAP, ParentalRating and all of the 'Roles' for a Show object. A .properties file will be created/appended for the corresponding MediaFile to ensure this data is retained if a rescan of the MediaFiles is performed.
31. Added support for setting the ExternalID for a MediaFile's Show object through the MediaFile API call SetMediaFileMetadata. This will result in a new Show object being built which will then be linked to the MediaFile; this supports converting the MediaFile to a 'TV' type file.
32. Added support for the YYYY-MM-DD format for specifying the OriginalAirDate in an imported media's .properties file
33. Changed sort order for top-level Widget display in the Studio so that it sorts first by type and then by case-insensitive name (so Widgets of the same type are grouped together)
34. Added support for defining an Attribute called 'ForceLayerAnimations' in a Menu's Theme Widget. If it is set to "true" then that Menu will use the old layer animation system if animations are enabled even if Effect Widgets exist in the STV.
35. Added support for specifying an Attribute called "LinearScrolling" and setting it to true that will cause scrolling to be done on a linear timescale for scrollable Panels or Tables (the default is the Quadratic timescale)
36. Added support for being able to specify the default process chain to execute for an Item or Image (by selecting it) in the Themed Widget; this can be overridden by specifying one directly in the Widget itself.
37. Fixed bug where determining the chain of Widgets between a UI parent and its child sometimes included extra Widgets if there were multiple paths to the child
38. Fixed bug where the Fork() Action didn't cause a new child variable context to be created; this provides thread-safety for any new variables declared in the Fork'd thread
39. Optimized MediaFile API call GetMediaFileMetadata so that it executes locally instead of on the server since the client has all the necessary information accessible in its copy of the database.
40. Added new SystemMessage API calls: IsSystemMessageObject and GetSystemMessageVariableNames
41. Added new Favorite API calls: GetFavoriteProperty and SetFavoriteProperty. These allows setting/getting of user-defined properties that are attached to Favorites. The values are stored in the database (Wiz.bin).
42. Added CaptureDevice API call: SetCaptureDeviceDTVStandard which is used for setting the digital TV standard on cards that support more than one (only the Hauppauge HVR-4000 currently)
43. Added 'Dynamic Boolean Property Editing' checkbox item under the Tools menu in Studio which allows editing of the text property for items that are normally checkboxes. This allows using dynamic property values for boolean items. This value effects new property windows that are opened.
44. Fixed bug in editing Widget properties with the SageTV Studio where if the properties component was too big to fit on the screen; some items would not be visible. It now makes the panel scrollable in that case.
45. Added the 'Background Component' property to the OptionsMenu Widget which can be used to allow it to be sized outside of the overscan area (it will then behave like a Menu Widget does in this respect)
46. Added support for the following properties which are automatically determined by the core if not defined when using the GetMediaFileMetadata API call: Format.Video.Height, Format.Video.Width, Format.Video.FPS, Format.Video.Interlaced, Format.Video.Progressive, Format.Audio.NumStreams, Format.Audio.[StreamNum].XXX (where StreamNum < NumStreams and XXX is one of the Format.Audio.XXX properties), Format.Subtitle.NumStreams, Format.Subtitle.[StreamNum].XXX (where StreamNum < NumStreams and XXX is one of the Format.Subtitle.XXX properties), Format.Subtitle.Codec and Format.Container.
47. Added 'Cross Fade Duration' for text widgets. This will occur if the text the widget is displaying changes and the duration is greater than zero.
48. Added ability to specify the DisableParentClip attribute in the theme at a Menu level instead of just globally
49. Added Show API calls: GetPeopleAndCharacterInShowInRole, GetPeopleAndCharacterInShowInRoles, GetPeopleAndCharacterListInShowInRole and GetPeopleAndCharacterListInShowInRoles
50. Added new MediaPlayer API call: GetRawMediaTime() which returns the playback time of the current file relative to the start of the file (for multi-segment files; this will be relative to the start of the current segment)
51. Updated the GetSystemMessageTypeName SystemMessage API call so that it'll return the 'typename' variable for the message if there's no actual name defined for its message type
52. Fixed bug where Theme Widgets were not allowed to contain Attribute Widgets in the Studio
53. Added new Global API call: SetFocusToUIComponent(UIComponent) to allow setting focus explicitly to a UI component
54. Added support for loading XBMC skins which are then automatically converted to a SageTV STV. Select the 'skin.xml' file from either the Studio or within the SageTV UI. There are various limitations with this. You can switch back through the settings->Advanced->Revert To Default STV in the translated XBMC UI.
55. Updated Global API call GetUIContextName() so that it will return the proper UI context for the thread when invoked from a Java callback using SageTV.api. The thread must have been created by the SageTV core either automatically or using the Fork() API call.
56. Added non-standard new_java_util_Vector(Object[]) method
57. Added new MediaNode API - this is currently only used for supporting XBMC skins
58. Added the 'Region for Autoscroll' property to Table Widgets which specifies the amount of area in the Cell table subcomponent that mouse movement in should cause autoscrolling in the appropriate direction. (max value is 0.5 since that would cover the entire table)
59. Added 'Background Load' property for Image Widgets which specify that its image resource should be loaded in the background and does not need to be preloaded prior to rendering. This will prevent the loading process for this image from interfering with the responsiveness of the UI.
60. Added 'Cross Fade Duration' for Image widgets so that they fade between the old and the new when the source of their image changes
61. Added Diffuse Image and Scale Diffused Image properties to the Image Widget
62. Added Diffuse Color to the Image, Menu, Panel, Item, Text, TextInput, OptionsMenu, Table and TableComponent Widgets
63. Added support for the 'Focusable' condition which can be specified in an Item Widget
64. Added Scroll Duration to the Panel and Table Widgets
65. Added new Effect widget for new animation/rendering effects and supporting properties. It can do translations, scales, fades and rotations in all 3 dimensions (systems with only 2D rendering capabilities will map the 3D transform into 2D)
66. Removed RenderXform[ScaleX/Y] from all Widgets (its now part of the Effect Widget)
67. Added new Image Widget property 'Crop to fill entire area' which if used in conjunction with scaling & preserve aspect ratio will cause the image to be scaled to fill the entire area with cropping used in order to preserve the aspect ratio.
68. Allow specifying .ttf files (with absolute or relative paths) for font names
69. Added support for the following metadata values (case-insensitive) when using GetMediaFileMetadata if the values are not defined by an import plugin: Format.Video.Codec, Format.Video.Resolution, Format.Video.Aspect, Format.Audio.Codec, Format.Audio.Channels, Format.Audio.Language, Format.Audio.SampleRate, Format.Audio.BitsPerSample, Format.Audio.Bitrate (in kbps), Format.Subtitle.Language, Format.Video.Bitrate (in Mbps)
70. Added support for doing drag & drop copy operation between two instances of the SageTV Studio when they each belong to a different UI and may have different STVs loaded. Regular Copy & Paste will not work; as each Studio instance maintains its own clipboard.
71. Added magenta highlighting in the Studio for actions/conditionals/branches that are in an Effect hierarchy
72. Added option in studio to display Attribute values in the tree; it defaults to on
73. If displaying widget UIDs is enabled in the Studio; then using the Find function will now search by UID as well.
74. Added automatic argument conversion of MediaNode data objects with the other SageTV object types
75. Added autoconversion of File/Airing/MediaFile/Show->SeriesInfo, MediaFile->File, Album->MediaFile, MediaFile->Album
76. Updated MediaFile intelligent sorter so that it automatically puts the current recordings first
77. Check for Wave files for sounds in an STV relative path as well as an absolute path.
78. Changed the way the ApplicationStarted & ApplicationExiting hooks are called so they map to loading/unloading of an STV rather than starting/exiting of a UI session
79. Added Global Attribute checks for various special UI modes of: SingularMouseTransparency - the mouse transparency property for components only applies to themself and not to their hierarchy; DisableParentClip - ignores parent bounds for clipping children unless attribute 'EnforceBounds' is set; AllowHiddenFocus - enables checking for the AllowHiddenFocus attribute in components ;
80. XBMCCompatability - refreshes menu on popup loads, enables faster searching for XMBCID tagged components, don't move table focus to scrollbars automatically from table cells, ensures uniqueness in table data cells, paging listeners are evaluated at the top level rather than locally, alternate text alignment/scaling rules, rescales fixed size UI components, process actions for internal navigation before the explicit listeners, focused effect triggers apply to the upward & downward hierarchy that component is in instead of just the downward, component hierarchy searching goes from the last component to the first, enables use of the 'ListFocusIndex' attribute for identifiying a fixed focus position in a table
81. When using a Text widget that has the $Clock name and has parent actions that set the text; the text will not be changed internally by the clock itself, but it will cause the component to refresh itself the same way a $Clock display normally would. This allows more customized text display of time that updates at the proper frequency.
82. Fixed bug where wrapped tables that had more than one column for vertically oriented or more than one row for horizontally oriented did not wrap properly
83. Added support for creating Tables that don't autosize their components; can be enabled by adding an Attribute widget to a table with name "FreeformCellSize" and giving it a value of "true"
84. Changed table processing of up/down/left/right commands so that it will process them if it can scroll the table and it won't steal focus when it does this. (this is already how it handled paging commands; this allows for consistency when scrolling a table externally)
85. When rendering a scrolling effect; disable display of Widgets w/ FocusTracker effects or with a LayerFocus designation in the region being scrolled off.
86. Added autoscrolling of a table when navigating to items that are partially visible
87. Added automatically declared local variables for Table Widgets of NumHPages, NumVPages, NumHPagesF and NumVPagesF
88. Changed image scaling rule when in XBMCCompatability mode and when Resize=true, PreserveAspect=true & CropToFill=false so that the image will autosize itself to fill any available size instead of only shrinking itself to fit a certain size
89. When moving focus to the first or last focusable item in a scrollable panel; follow it up with a scroll all the way to the top or bottom for better visual consistency.
90. When using SetFocusByValue; if the value applies to a panel then preferably try to set focus to the last focused child instead of the first child.
91. Fixed NumVPagesV, NumHPagesF, NumPagesF variables for scrollable panels so they return actual floating point values instead of rounded values.
92. Allow for negative positioning of components
93. Added support for the AllowHiddenFocus attribute where Focus can be set on a hierarchy that is currently not visible if it has the Global AllowHiddenFocus attribute set and also the local one for the component
94. Updated APIs so IsXXXXObject returns true for a MediaNode that wraps an XXXX object
95. Added autoconversion of the Album argument when using the Album API.
96. Added CaptureDeviceInput API method: GetCaptureDeviceInputBroadcastStandard() which should be used for getting the broadcast standard in an input-specific way instead of a device-specific way
97. Added Favorite API calls to support the new automatic conversion feature: IsDeleteAfterAutomaticConversion, GetFavoriteAutomaticConversionFormat, GetFavoriteAutomaticConversionDestination, SetFavoriteAutomaticConversionFormat, SetFavoriteAutomaticConversionDestination and SetDeleteAfterAutomaticConversion
98. Added Global API calls GetUIComponentPositionX. GetUIComponentPositionY, GetUIComponentWidth and GetUIComponentHeight which can be used to get the coordinates of a specific UI component
99. Added new Global API calls: GetVariableFromContext, GetVisibilityForVariable, GetUIComponentForVariable, GetTableFocusedVisibleRow, GetTableFocusedVisibleColumn, GetTableFocusedVisiblePosition, GetTableFocusedPosition, GetDataFromTableFocusedOffset, GetDataFromTableVisiblePosition, IsTableTransitionToNext, IsTableTransitionToPrevious, IsTransitioningToMenu, IsTransitioningFromMenu, GetTextForUIComponent, GetUIComponentLastFocusedChild, SendEventToUIComponent, GetChildUIComponentForVariable, GetVariableFromUIComponent
100. Added MediaPlayer API call for getting a description of a specific title in a BDMV folder that's currently being played (it just give the duration and a * to signify the main movie): GetBluRayTitleDescription(TitleNum)
101. Added SeriesInfo API calls: GetSeriesCategory & GetSeriesSubCategory which return the corresponding values for the series; these are automatically determined from the Show objects which correlate to the SeriesInfo object
102. Added SeriesInfoAPI call: GetSeriesCharacterForActor(SeriesInfo, String) which will give the character name the specified actor plays in the series
103. Updated Show API to accept SeriesInfo objects for the API calls: GetShowCategory, GetShowSubCategory, GetShowDescription, GetShowTitle
104. Added Show API call: GetPeopleAndCharacterListInShow(Show) which returns an array of strings which have Actor + Character for their description (SeriesInfo is used to resolve this)
105. Updated ShowAPI so that GetShowYear, GetShowTitle and GetPeopleInShowInRole can handle an Album argument and then the respective call is made on the Album
106. Added Utility API call SubstringBegin(String, EndOffset) which returns the beginning of a string up until EndOffset chars from the end.
107. Added Utility API call DidImageLoadFail(Object) which returns true if the passed in object represents an image who's load was attempted, but it failed
108. Added Utility API call: IsEmpty(Object) which returns true is the argument is zero/null/empty for various object types
109. Added Utility API call: AddElement(Collection,Object) which adds a value to the specfied collection
110. Changed Utility API calls to return the empty string if given zero as the argument for PrintDate, PrintDateLong, PrintDateShort, PrintDateFull, PrintTime, PrintTimeLong, PrintTimeShort, PrintTimeFull
111. Added Utility API call: GetAbsoluteFilePath(File) which returns the absolute file path of the argument
112. Added Utility API call: DiretoryListing(File path, String mediaMask) to allow retrieving directory listings filtered by media type
113. Fixed DeleteLocalFilePath API call so that it actually performed the deletion on the local file system instead of always on the server
114. Added new Utility API call GetFileAsString(path) - it will return the entire contents of the specified file path as a string
115. Major performance increase when adding a Widget to an STV
Jeffrey Kardatzke
Founder of SageTV
Closed Thread

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
SageTV V6.5.4 Beta is Ready Narflex SageTV Beta Test Software 0 12-17-2008 01:50 PM
SageTV V6.4.5 Beta is Ready! Narflex SageTV Beta Test Software 1 07-10-2008 09:43 PM

All times are GMT -6. The time now is 11:47 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.