/*
 This example resets the view boundary of the TOP view to the system
 defined automatic view boundaries.
*/
#include <stdlib.h>
#include <stdio.h>
#include <uf.h>
#include <uf_defs.h>
#include <uf_draw.h>
#include <uf_draw_types.h>
#include <uf_drf_types.h>
#include <uf_part.h>
#include <uf_view.h>
void ufusr(char *param, int *retcod, int param_len)
{
    int         ifail = 0;
    tag_t       view_tag = NULL_TAG;
    tag_t       part_tag = NULL_TAG;
    char        error_message[133];
    char *      view_name = "TOP@1";

    ifail = UF_initialize();

    if( !ifail )
      part_tag = UF_PART_ask_display_part();

    if( !ifail && part_tag != NULL_TAG )
      ifail = UF_VIEW_ask_tag_of_view_name(view_name,
                                           &view_tag );

    if( !ifail && part_tag != NULL_TAG )
      ifail = UF_DRAW_define_view_auto_rect(
                   view_tag );

    printf( "UF_DRAW_define_view_auto_rect " );
    if( ifail )
    {
      ifail = UF_get_fail_message( ifail,
          error_message );
      printf( "fails.\nError is: %s\n",
        error_message );
    }
    else if ( part_tag == NULL_TAG )
    {
      printf( "fails.\n" );
      printf( "Error is: no active part.\n" );
    }
    else
        printf( "is successful.\n" );
    ifail = UF_terminate();
}

