Package tvbrowser.ui.pluginview

Examples of tvbrowser.ui.pluginview.Node


    super(tree);
    mPaths = paths;
    mPrograms = programs;
    mDefaultAction = new AbstractAction() {
      public void actionPerformed(ActionEvent e) {
        Node node = (Node) mPaths[0].getLastPathComponent();
        ProgramItem programItem = (ProgramItem) node.getUserObject();
        final Program program = programItem.getProgram();
        MainFrame.getInstance().scrollToProgram(program, new Runnable() {
          public void run() {
            ProgramTable table = MainFrame.getInstance().getProgramTableScrollPane().getProgramTable();
            table.deSelectItem();
View Full Code Here


   * Create a Export-To-Other-Plugins Action
   * @return Export-To-Other-Plugins Action
   * @param paths create action for this TreePath
   */
  protected JMenu getExportMenu(TreePath paths) {
    final Node node = (Node) paths.getLastPathComponent();

    JMenu menu = new JMenu(mLocalizer.msg("export","Export"));
    menu.setFont(MenuUtil.CONTEXT_MENU_PLAINFONT);

    if ((node.getChildCount() == 0) && (node.getType() != Node.PROGRAM)) {
      menu.setEnabled(false);
      return menu;
    }

    Object o = getObjectForNode(node);
View Full Code Here

    return menu;
  }

  protected JMenuItem getFilterMenuItem(final TreePath treePath) {
    final Node node = (Node) treePath.getLastPathComponent();
    String pathName = "";
    for (int i = 1; i < treePath.getPathCount(); i++) {
      if (i > 1) {
        pathName = pathName + "/";
      }
View Full Code Here

   * @param node Node to use
   * @return Plugin-Parent of this Node
   */
  public Object getObjectForNode(Node node) {

    Node parent = node;

    while (parent != null && parent.getType() != Node.PLUGIN_ROOT && parent != ReminderPlugin.getRootNode().getMutableTreeNode() && parent != FavoritesPlugin.getRootNode().getMutableTreeNode() && parent.getProgramReceiveTarget() == null) {
      parent = (Node) parent.getParent();
    }

    if (parent != null){
      if(parent.getProgramReceiveTarget() != null) {
        return parent.getProgramReceiveTarget();
      }

      Object o = parent.getUserObject();

      if(o instanceof Plugin) {
        return o;
      } else {
        if (o instanceof String && o.equals(ReminderPlugin.getRootNode().getMutableTreeNode().getUserObject())) {
View Full Code Here

  private PluginTreeNode(final byte type, final Object object) {
    mChildNodes = null; // do not initialize to save memory
    mNodeType = type;
    mObject = object;
    mDefaultNode = new Node(type, mObject);
    mNodeListeners = null; // do not initialize to save memory
    mGroupingByDate = true;
    mGroupWeekly = false;
  }
View Full Code Here

        mDefaultNode.add(n.getMutableTreeNode());
      }
      else {
        if (n.mNodeType == Node.PROGRAM) {
          ProgramItem progItem = (ProgramItem)n.getUserObject();
          Node node = n.getMutableTreeNode();

          if (currentDate == null) {
            currentDate = Date.getCurrentDate();
          }
          if(progItem.getProgram().getDate().addDays(1).compareTo(currentDate) >= 0) {
View Full Code Here

    // Create the new nodes
    Set<Date> keySet = dateMap.keySet();
    Date[] dates = new Date[keySet.size()];
    keySet.toArray(dates);
    Arrays.sort(dates);
    Node node=null;
    String lastDateStr="";
    int numPrograms = 0;
    for (Date date : dates) {
      numPrograms += dateMap.get(date).size();
    }
    // show week nodes if there are less than 2 programs per day on average
    boolean createWeekNodes = mGroupWeekly && (numPrograms <= dates.length * 2);
    boolean isShowingWeekNodes = createWeekNodes;

    for (Date date : dates) {
      String dateStr;
      if (mNodeYesterday.equals(date)) {
        dateStr = Localizer.getLocalization(Localizer.I18N_YESTERDAY);
        isShowingWeekNodes = false;
      }
      else if (mNodeToday.equals(date)) {
        dateStr = Localizer.getLocalization(Localizer.I18N_TODAY);
        isShowingWeekNodes = false;
      }
      else if (mNodeTomorrow.equals(date)) {
        dateStr = Localizer.getLocalization(Localizer.I18N_TOMORROW);
        isShowingWeekNodes = false;
      }
      else {
        if (createWeekNodes) {
          int weeks = date.getNumberOfDaysSince(mNodeToday) / 7;
          if (weeks <= 3) {
            dateStr = mLocalizer.msg("weeks."+weeks,"in {0} weeks",weeks);
          }
          else {
            dateStr = mLocalizer.msg("weeks.later","later");
          }
        }
        else {
          dateStr = date.getLongDateString();
        }
      }
      if (!dateStr.equals(lastDateStr)) {
        node = new Node(Node.STRUCTURE_NODE, dateStr);
        mDefaultNode.add(node);
        lastDateStr = dateStr;
      }
      List<PluginTreeNode> list = dateMap.get(date);
      PluginTreeNode[] nodeArr = new PluginTreeNode[list.size()];
      list.toArray(nodeArr);
      Arrays.sort(nodeArr);
      for (PluginTreeNode element : nodeArr) {
        Node newNode = new Node((ProgramItem)element.getUserObject());
        newNode.setNodeFormatter(element.getNodeFormatter(createWeekNodes && isShowingWeekNodes));
        node.add(newNode);
      }

      isShowingWeekNodes = createWeekNodes;
    }
View Full Code Here

  @Override
  public PluginTreeNode getRootNode() {
    if (mRootNode == null) {
      mRootNode = new PluginTreeNode(this);
      loadRootNode(mRootNode);
      final Node mutableTreeNode = mRootNode.getMutableTreeNode();
      mutableTreeNode.setIcon(
          new ImageIcon(ImageUtilities.createImageFromJar(
              "tvraterplugin/imgs/missingrating.png", TVRaterPlugin.class)));
      mutableTreeNode.setShowLeafCountEnabled(false);
      if (mRootNode.isEmpty()) {
        updateRootNode(true);
      }
    }
    return mRootNode;
View Full Code Here

TOP

Related Classes of tvbrowser.ui.pluginview.Node

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.