/**
   * Tries to find the current {@link GradleProjectStructureTreeModel} instance.
   *
   * @param context target context (if defined)
   * @return current {@link GradleProjectStructureTreeModel} instance (if any has been found);
   *     <code>null</code> otherwise
   */
  @Nullable
  public static GradleProjectStructureTreeModel getProjectStructureTreeModel(
      @Nullable DataContext context) {
    if (context != null) {
      final GradleProjectStructureTreeModel model = GradleDataKeys.SYNC_TREE_MODEL.getData(context);
      if (model != null) {
        return model;
      }
    }

    if (context == null) {
      return null;
    }

    final Project project = PlatformDataKeys.PROJECT.getData(context);
    if (project == null) {
      return null;
    }

    return getProjectStructureTreeModel(project);
  }