tvbrowser.core.plugin

## Class PluginManagerImpl

- java.lang.Object
- - tvbrowser.core.plugin.PluginManagerImpl

- All Implemented Interfaces:
    PluginManager

      public class PluginManagerImpl
      extends java.lang.Object
      implements PluginManager

  The implementation of the PluginManager interface. This class is the connection for the plugins to TV-Browser.
  Author:
    Til Schneider, www.murfman.de

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `PluginManagerImpl.RatingFieldRating`

  - ### Field Summary

    - ### Fields inherited from interface devplugin.PluginManager

      `SEARCHER_TYPE_BOOLEAN, SEARCHER_TYPE_EXACTLY, SEARCHER_TYPE_KEYWORD, SEARCHER_TYPE_REGULAR_EXPRESSION`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `javax.swing.JPopupMenu` | `createPluginContextMenu(Program program, ContextMenuIf caller)` Creates a context menu for the given program containing all plugins.
    `ProgramSearcher` | `createProgramSearcher(int type, java.lang.String searchTerm, boolean caseSensitive)` Creates a ProgramSearcher.
    `ProgressMonitorExtended` | `createProgressMonitor()` Gets access to the progress and label of status bar.
    `javax.swing.JPopupMenu` | `createRemovedProgramContextMenu(Program program)` Creates a context menu for the given program.
    `void` | `deleteFileOnNextStart(java.lang.String path)` adds a file name to the list of files to be deleted on next TV-Browser start
    `PluginAccess` | `getActivatedPluginForId(java.lang.String pluginId)` Gets the activated plugin with the given ID.
    `PluginAccess[]` | `getActivatedPlugins()` Returns all activated Plugins.
    `ProgramRatingIf[]` | `getAllProgramRatingIfs()` Gets all ProgramRatingIfs of all plugins.
    `AbstractPluginProgramFormating[]` | `getAvailableGlobalPuginProgramFormatings()` Gets the available global program configurations.
    `java.util.Iterator<Program>` | `getChannelDayProgram(Date date, Channel channel)` Gets an iterator through all programs of the specified channel at the specified date.
    `Date` | `getCurrentDate()` Get the date currently shown in the program table.
    `TvDataServiceProxy` | `getDataServiceProxy(java.lang.String id)`
    `PluginAccess` | `getDefaultContextMenuPlugin()` Gets the plugin that is used as default in the context menu.
    `Program` | `getExampleProgram()` Returns an example program.
    `FilterManager` | `getFilterManager()` Returns the filter manager of TV-Browser.
    `javax.swing.ImageIcon` | `getIconFromTheme(Plugin plugin, java.lang.String category, java.lang.String iconName, int size)` Returns an icon from the icon-theme-system If your plugin has icons that are not available as icons within an theme, you can add your icons into your jar-file.
    `javax.swing.ImageIcon` | `getIconFromTheme(Plugin plugin, ThemeIcon icon)` Returns an Icon from the Icon-Theme-System If your Plugin has Icons that are not available as Icons within an Theme, you can add your Icons into your Jar-File.
    `static PluginManager` | `getInstance()` Returns the instance of this class, if there is no instance it is created first.
    `java.lang.String` | `getJavaPluginId(Plugin javaPlugin)` Gets the ID of the given Java plugin.
    `Program[]` | `getMarkedPrograms()` Return all marked programs.
    `Program` | `getProgram(Date date, java.lang.String progID)` Gets a program.
    `Program` | `getProgram(java.lang.String uniqueID)` Gets a program.
    `Program[]` | `getPrograms(Date date, java.lang.String progID)` Gets a program.
    `Program[]` | `getPrograms(java.lang.String uniqueID)` Gets programs.
    `ProgramReceiveIf` | `getReceiceIfForId(java.lang.String id)` Return the ReceiveIfFor given id or `null` if there is no ReceiveIf for the given id.
    `ProgramReceiveIf[]` | `getReceiveIfs()` Return all Plugins/Functions that are able to receive programs.
    `ProgramReceiveIf[]` | `getReceiveIfs(ProgramReceiveIf caller, ProgramReceiveTarget callerTarget)` Return all Plugins/Functions that are able to receive programs.
    `Channel[]` | `getSubscribedChannels()` Gets all channels the user has subscribed.
    `TvBrowserSettings` | `getTvBrowserSettings()` Returns some settings a plugin may need.
    `Version` | `getTVBrowserVersion()`
    `void` | `goToDate(Date date)` Let TV-Browser change the date to the given date.
    `void` | `handleProgramDoubleClick(Program program)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramDoubleClick(Program program, ContextMenuIf caller)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramMiddleClick(Program program)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramMiddleClick(Program program, ContextMenuIf caller)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramMiddleDoubleClick(Program program)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramMiddleDoubleClick(Program program, ContextMenuIf caller)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramSingleClick(Program program)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramSingleClick(Program program, ContextMenuIf caller)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `void` | `handleProgramSingleCtrlClick(Program program, ContextMenuIf caller)` Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
    `protected void` | `handleTvBrowserStartFinished()`
    `boolean` | `isDataAvailable(Date date)` check if some TV data is available on the given date
    `boolean` | `isTvBrowserStartFinished()` Gets if TV-Browser start was finished.
    `void` | `scrollToChannel(Channel channel)` Let TV-Browser scroll to the given channel.
    `void` | `scrollToProgram(Program program)` Let TV-Browser scroll to the given program.
    `void` | `scrollToTime(int time)` Let TV-Browser scroll to the given time.
    `void` | `scrollToTime(int time, boolean highlight)` Let TV-Browser scroll to the given time.
    `void` | `selectProgram(Program program)` Selects the given program in the program table.
    `boolean` | `showBalloonTip(java.lang.String caption, java.lang.String message, java.awt.TrayIcon.MessageType messageType)` Shows a balloon tip on the TV-Browser tray icon.
    `void` | `showSettings(Plugin plugin)` Show the Settings-Dialog for a Plugin
    `void` | `showSettings(java.lang.String settingsItem)` Show the Settings-Dialog with a Specific SettingsItem

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getInstance

          public static PluginManager getInstance()

      Returns the instance of this class, if there is no instance it is created first.
      Returns:
        The instance of this class.

    - #### getProgram

          public Program getProgram(Date date,
                           java.lang.String progID)

      Description copied from interface: `PluginManager`
      Gets a program.
      Specified by:
        `getProgram` in interface `PluginManager`
      Parameters:
        `date` - The date when the program is shown.
        `progID` - The ID of the program.
      Returns:
        The program or `null` if there is no such program.

    - #### getPrograms

          public Program[] getPrograms(Date date,
                              java.lang.String progID)

      Gets a program.
      Specified by:
        `getPrograms` in interface `PluginManager`
      Parameters:
        `date` - The date when the program is shown.
        `progID` - The ID of the program.
      Returns:
        The program or `null` if there is no such program.

    - #### getProgram

          public Program getProgram(java.lang.String uniqueID)

      Gets a program.
      Specified by:
        `getProgram` in interface `PluginManager`
      Parameters:
        `uniqueID` - The unique ID (`Program.getUniqueID()`) of this program.
      Returns:
        The program or `null` if there is no such program.

    - #### getPrograms

          public Program[] getPrograms(java.lang.String uniqueID)

      Description copied from interface: `PluginManager`
      Gets programs. (Well this is stupid but if programs start at the same time on the same channel on the same date they have the same UniqueID.)
      Specified by:
        `getPrograms` in interface `PluginManager`
      Parameters:
        `uniqueID` - The unique ID (`Program.getUniqueID()`) of the programs.
      Returns:
        The programs or `null` if there are no such programs.

    - #### getSubscribedChannels

          public Channel[] getSubscribedChannels()

      Gets all channels the user has subscribed.
      Specified by:
        `getSubscribedChannels` in interface `PluginManager`
      Returns:
        all channels the user has subscribed.

    - #### getChannelDayProgram

          public java.util.Iterator<Program> getChannelDayProgram(Date date,
                                                         Channel channel)

      Gets an iterator through all programs of the specified channel at the specified date.
      Specified by:
        `getChannelDayProgram` in interface `PluginManager`
      Parameters:
        `date` - The date of the programs.
        `channel` - The channel of the programs.
      Returns:
        an Iterator for all programs of one day and channel.
        If the requested data is not available, the iterator is empty, but not `null`.

    - #### createProgramSearcher

          public ProgramSearcher createProgramSearcher(int type,
                                              java.lang.String searchTerm,
                                              boolean caseSensitive)
                                                throws TvBrowserException

      Creates a ProgramSearcher.
      Specified by:
        `createProgramSearcher` in interface `PluginManager`
      Parameters:
        `type` - The searcher type to create. Must be one of
        - `PluginManager.SEARCHER_TYPE_EXACTLY`,
        - `PluginManager.SEARCHER_TYPE_KEYWORD`,
        - `PluginManager.SEARCHER_TYPE_REGULAR_EXPRESSION` or
        - `PluginManager.SEARCHER_TYPE_BOOLEAN`.
        `searchTerm` - The search term the searcher should look for.
        `caseSensitive` - Specifies whether the searcher should be case sensitive.
      Returns:
        A program searcher.
      Throws:
        `TvBrowserException` - If creating the program searcher failed.

    - #### getActivatedPlugins

          public PluginAccess[] getActivatedPlugins()

      Returns all activated Plugins.
      Specified by:
        `getActivatedPlugins` in interface `PluginManager`
      Returns:
        all activated Plugins.
      Since:
        1.1

    - #### getJavaPluginId

          public java.lang.String getJavaPluginId(Plugin javaPlugin)

      Gets the ID of the given Java plugin.
      Specified by:
        `getJavaPluginId` in interface `PluginManager`
      Parameters:
        `javaPlugin` - The Java plugin to get the ID for.
      Returns:
        The ID of the given Java plugin.

    - #### getActivatedPluginForId

          public PluginAccess getActivatedPluginForId(java.lang.String pluginId)

      Gets the activated plugin with the given ID.
      Specified by:
        `getActivatedPluginForId` in interface `PluginManager`
      Parameters:
        `pluginId` - The ID of the wanted plugin.
      Returns:
        The plugin with the given ID or `null` if no such plugin exists or if the plugin is not activated.

    - #### getDataServiceProxy

          public TvDataServiceProxy getDataServiceProxy(java.lang.String id)

      Specified by:
        `getDataServiceProxy` in interface `PluginManager`

    - #### createPluginContextMenu

          public javax.swing.JPopupMenu createPluginContextMenu(Program program,
                                                       ContextMenuIf caller)

      Creates a context menu for the given program containing all plugins.
      Specified by:
        `createPluginContextMenu` in interface `PluginManager`
      Parameters:
        `program` - The program to create the context menu for
        `caller` - The calling plugin.
      Returns:
        a context menu for the given program.

    - #### getExampleProgram

          public Program getExampleProgram()

      Returns an example program. You can use it for preview stuff.
      Specified by:
        `getExampleProgram` in interface `PluginManager`
      Returns:
        an example program.
      Since:
        0.9.7.4

    - #### handleProgramSingleClick

          public void handleProgramSingleClick(Program program)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Description copied from interface: `PluginManager`
      Handles a single left click on a program.

      Executes the single left click context menu function. Plugins should use handleProgramDoubleClick(Program program, Plugin caller). It prevents the Plugin to be activated a second time.

      Specified by:
        `handleProgramSingleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the single left click context menu function.

    - #### handleProgramSingleClick

          public void handleProgramSingleClick(Program program,
                                      ContextMenuIf caller)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Description copied from interface: `PluginManager`
      Handles a single left click on a program.

      Executes the default context menu plugin.

      Specified by:
        `handleProgramSingleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the default context menu function.
        `caller` - The ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twice

    - #### handleProgramSingleCtrlClick

          public void handleProgramSingleCtrlClick(Program program,
                                          ContextMenuIf caller)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Description copied from interface: `PluginManager`
      Handles a single left click on a program with Ctrl being held.

      Executes the default context menu plugin.

      Specified by:
        `handleProgramSingleCtrlClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the default context menu function.
        `caller` - The ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twice

    - #### handleProgramDoubleClick

          public void handleProgramDoubleClick(Program program)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Handles a double click on a program.

      Executes the default context menu plugin. Plugins should use handleProgramDoubleClick(Program program, Plugin caller). It prevetns the Plugin to be activated a second time.

      Specified by:
        `handleProgramDoubleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the default context menu plugin.
      Since:
        1.1

    - #### handleProgramDoubleClick

          public void handleProgramDoubleClick(Program program,
                                      ContextMenuIf caller)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Handles a double click on a program.

      Executes the default context menu plugin.

      Specified by:
        `handleProgramDoubleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the default context menu plugin.
        `caller` - ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twice
      Since:
        1.1

    - #### handleProgramMiddleClick

          public void handleProgramMiddleClick(Program program)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Handles a middle click on a program.

      Executes the middle click context menu plugin. Plugins should use handleProgramMiddleClick(Program program, Plugin caller). It prevents the Plugin to be activated a second time.

      Specified by:
        `handleProgramMiddleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the middle click context menu plugin.
      Since:
        1.1

    - #### handleProgramMiddleClick

          public void handleProgramMiddleClick(Program program,
                                      ContextMenuIf caller)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Handles a middle click on a program.

      Executes the middle click context menu action.

      Specified by:
        `handleProgramMiddleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the middle click context menu action.
        `caller` - ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twice.
      Since:
        1.1

    - #### handleProgramMiddleDoubleClick

          public void handleProgramMiddleDoubleClick(Program program)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Handles a middle click on a program.

      Executes the middle click context menu action. Plugins should use handleProgramMiddleClick(Program program, Plugin caller). It prevents the Plugin to be activated a second time.

      Specified by:
        `handleProgramMiddleDoubleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the middle click context menu action.
      Since:
        3.0

    - #### handleProgramMiddleDoubleClick

          public void handleProgramMiddleDoubleClick(Program program,
                                            ContextMenuIf caller)

      Deprecated. since 3.3.1 Use `#ProgramMouseEventHandler` and/or `#ProgramKeyEventHandler` instead.
      Handles a middle double click on a program.

      Executes the middle double click context menu action.

      Specified by:
        `handleProgramMiddleDoubleClick` in interface `PluginManager`
      Parameters:
        `program` - The program to pass to the middle double click context menu action.
        `caller` - ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twice.
      Since:
        3.0

    - #### getDefaultContextMenuPlugin

          public PluginAccess getDefaultContextMenuPlugin()

      Gets the plugin that is used as default in the context menu.
      Returns:
        the default context menu plugin.
      Since:
        1.1

    - #### getTvBrowserSettings

          public TvBrowserSettings getTvBrowserSettings()

      Returns some settings a plugin may need.
      Specified by:
        `getTvBrowserSettings` in interface `PluginManager`
      Returns:
        Some settings a plugin may need.

    - #### getIconFromTheme

          public javax.swing.ImageIcon getIconFromTheme(Plugin plugin,
                                               java.lang.String category,
                                               java.lang.String iconName,
                                               int size)

      Returns an icon from the icon-theme-system If your plugin has icons that are not available as icons within an theme, you can add your icons into your jar-file. The directory structure must be like this: [PackageOfYourPlugin]/icons/[size]x[size]/[category]/[icon].png Please try to use the icon naming conventions of the FreeDesktop project: http://cvs.freedesktop.org/[*]checkout[*]/icon-theme/default-icon-theme/spec/icon-naming-spec.xml (please remove the [ ])
      Specified by:
        `getIconFromTheme` in interface `PluginManager`
      Parameters:
        `plugin` - Plugin that wants to load an icon
        `category` - Category of the icon (action, etc...)
        `iconName` - icon name without file extension
        `size` - Size of the icon
      Returns:
        Icon if found, `null` if not

    - #### getIconFromTheme

          public javax.swing.ImageIcon getIconFromTheme(Plugin plugin,
                                               ThemeIcon icon)

      Returns an Icon from the Icon-Theme-System If your Plugin has Icons that are not available as Icons within an Theme, you can add your Icons into your Jar-File. The Directory-Structure must be like this: [PackageOfYourPlugin]/icons/[Size]x[Size]/[category]/[icon].png Please try to use the FreeDesktop-Icon Naming Conventions http://cvs.freedesktop.org/[*]checkout[*]/icon-theme/default-icon-theme/spec/icon-naming-spec.xml (please remove the [ ])
      Specified by:
        `getIconFromTheme` in interface `PluginManager`
      Parameters:
        `plugin` - Plugin that wants to load an Icon
        `icon` - ThemeIcon that represents the Icon
      Returns:
        Icon if found, null if not

    - #### showSettings

          public void showSettings(Plugin plugin)

      Show the Settings-Dialog for a Plugin
      Specified by:
        `showSettings` in interface `PluginManager`
      Parameters:
        `plugin` - Use this Plugin
      Since:
        2.2

    - #### showSettings

          public void showSettings(java.lang.String settingsItem)

      Show the Settings-Dialog with a Specific SettingsItem
      Specified by:
        `showSettings` in interface `PluginManager`
      Parameters:
        `settingsItem` - SettingsItem to show (e.g. SettingsItem.CHANNELS)
      Since:
        2.2

    - #### getMarkedPrograms

          public Program[] getMarkedPrograms()

      Return all marked programs.
      Specified by:
        `getMarkedPrograms` in interface `PluginManager`
      Returns:
        The marked programs
      Since:
        2.2

    - #### getReceiveIfs

          public ProgramReceiveIf[] getReceiveIfs()

      Return all Plugins/Functions that are able to receive programs.
      Specified by:
        `getReceiveIfs` in interface `PluginManager`
      Returns:
        The ProgramReceiveIfs.
      Since:
        2.5

    - #### getReceiveIfs

          public ProgramReceiveIf[] getReceiveIfs(ProgramReceiveIf caller,
                                         ProgramReceiveTarget callerTarget)

      Return all Plugins/Functions that are able to receive programs.
      Specified by:
        `getReceiveIfs` in interface `PluginManager`
      Parameters:
        `caller` - The caller ProgramReceiveIf.
        `callerTarget` - The target that calls the receive if array.
      Returns:
        The ProgramReceiveIfs.
      Since:
        2.5

    - #### getReceiceIfForId

          public ProgramReceiveIf getReceiceIfForId(java.lang.String id)

      Return the ReceiveIfFor given id or `null` if there is no ReceiveIf for the given id.
      Specified by:
        `getReceiceIfForId` in interface `PluginManager`
      Parameters:
        `id` - The id of the ReceiveIf.
      Returns:
        The ReceiveIf with the given id or `null`
      Since:
        2.5

    - #### scrollToProgram

          public void scrollToProgram(Program program)

      Let TV-Browser scroll to the given program.
      Specified by:
        `scrollToProgram` in interface `PluginManager`
      Parameters:
        `program` - The program to scroll to.
      Since:
        2.5

    - #### selectProgram

          public void selectProgram(Program program)

      Description copied from interface: `PluginManager`
      Selects the given program in the program table.

      Specified by:
        `selectProgram` in interface `PluginManager`
      Parameters:
        `program` - The program to select.

    - #### scrollToTime

          public void scrollToTime(int time)

      Let TV-Browser scroll to the given time.
      Specified by:
        `scrollToTime` in interface `PluginManager`
      Parameters:
        `time` - The time to scroll to in minutes after midnight.
      Since:
        2.5

    - #### scrollToTime

          public void scrollToTime(int time,
                          boolean highlight)

      Let TV-Browser scroll to the given time.
      Specified by:
        `scrollToTime` in interface `PluginManager`
      Parameters:
        `time` - The time to scroll to in minutes after midnight.
        `highlight` - If programs at scroll time should be highlighted (if scroll highlighting is enabled.)
      Since:
        3.3.3

    - #### scrollToChannel

          public void scrollToChannel(Channel channel)

      Let TV-Browser scroll to the given channel.
      Specified by:
        `scrollToChannel` in interface `PluginManager`
      Parameters:
        `channel` - The channel to scroll to.
      Since:
        2.5

    - #### goToDate

          public void goToDate(Date date)

      Let TV-Browser change the date to the given date.
      Specified by:
        `goToDate` in interface `PluginManager`
      Parameters:
        `date` - The date to show the program for.
      Since:
        2.5

    - #### getFilterManager

          public FilterManager getFilterManager()

      Returns the filter manager of TV-Browser. With the filter manager you get access to the filter system of TV-Browser. You can add or remove filters of your plugin and switch the currently used filter.
      Specified by:
        `getFilterManager` in interface `PluginManager`
      Returns:
        The filter manager of TV-Browser or `null` if TV-Browser isn't fully loaded.
      Since:
        2.5

    - #### handleTvBrowserStartFinished

          protected void handleTvBrowserStartFinished()

    - #### getAvailableGlobalPuginProgramFormatings

          public AbstractPluginProgramFormating[] getAvailableGlobalPuginProgramFormatings()

      Gets the available global program configurations.

      Specified by:
        `getAvailableGlobalPuginProgramFormatings` in interface `PluginManager`
      Returns:
        The available global program configurations.
      Since:
        2.5.1

    - #### getCurrentDate

          public Date getCurrentDate()

      Description copied from interface: `PluginManager`
      Get the date currently shown in the program table.
      Specified by:
        `getCurrentDate` in interface `PluginManager`
      Returns:
        date currently shown in program table

    - #### getAllProgramRatingIfs

          public ProgramRatingIf[] getAllProgramRatingIfs()

      Gets all ProgramRatingIfs of all plugins. You can get all available ratings for one program.
      Specified by:
        `getAllProgramRatingIfs` in interface `PluginManager`
      Returns:
        all ProgramRatingIfs of all plugins
      Since:
        2.7

    - #### deleteFileOnNextStart

          public void deleteFileOnNextStart(java.lang.String path)

      Description copied from interface: `PluginManager`
      adds a file name to the list of files to be deleted on next TV-Browser start
      Specified by:
        `deleteFileOnNextStart` in interface `PluginManager`
      Parameters:
        `path` - full file path

    - #### isDataAvailable

          public boolean isDataAvailable(Date date)

      Description copied from interface: `PluginManager`
      check if some TV data is available on the given date
      Specified by:
        `isDataAvailable` in interface `PluginManager`
      Returns:
        `true` if at least one channel has data for the date

    - #### showBalloonTip

          public boolean showBalloonTip(java.lang.String caption,
                               java.lang.String message,
                               java.awt.TrayIcon.MessageType messageType)

      Description copied from interface: `PluginManager`
      Shows a balloon tip on the TV-Browser tray icon.

      Specified by:
        `showBalloonTip` in interface `PluginManager`
      Parameters:
        `caption` - The caption of the displayed message.
        `message` - The message to display in the balloon tip.
        `messageType` - The java.awt.TrayIcon.MessageType of the displayed balllon tip.
      Returns:
        If the balloon tip could be shown.

    - #### getTVBrowserVersion

          public Version getTVBrowserVersion()

      Specified by:
        `getTVBrowserVersion` in interface `PluginManager`
      Returns:
        The Version of TV-Browser

    - #### createRemovedProgramContextMenu

          public javax.swing.JPopupMenu createRemovedProgramContextMenu(Program program)

      Description copied from interface: `PluginManager`
      Creates a context menu for the given program. It can be used to provide search and scroll function to programs that were removed on data update.

      Specified by:
        `createRemovedProgramContextMenu` in interface `PluginManager`
      Parameters:
        `program` - The removed program to create the context menu for
      Returns:
        A context menu for the given program.

    - #### isTvBrowserStartFinished

          public boolean isTvBrowserStartFinished()

      Description copied from interface: `PluginManager`
      Gets if TV-Browser start was finished.

      Specified by:
        `isTvBrowserStartFinished` in interface `PluginManager`
      Returns:
        `true` if TV-Browser start was finished, `false` otherwise.

    - #### createProgressMonitor

          public ProgressMonitorExtended createProgressMonitor()

      Description copied from interface: `PluginManager`
      Gets access to the progress and label of status bar.

      Specified by:
        `createProgressMonitor` in interface `PluginManager`
      Returns:
        The progress monitor of TV-Browser

TV-Browser 3.4.3, Copyright (C) 2004-2008 TV-Browser Team (dev@tvbrowser.org)