Blame lib/Xm/FileSBP.h

Packit b099d7
/* 
Packit b099d7
 * Motif
Packit b099d7
 *
Packit b099d7
 * Copyright (c) 1987-2012, The Open Group. All rights reserved.
Packit b099d7
 *
Packit b099d7
 * These libraries and programs are free software; you can
Packit b099d7
 * redistribute them and/or modify them under the terms of the GNU
Packit b099d7
 * Lesser General Public License as published by the Free Software
Packit b099d7
 * Foundation; either version 2 of the License, or (at your option)
Packit b099d7
 * any later version.
Packit b099d7
 *
Packit b099d7
 * These libraries and programs are distributed in the hope that
Packit b099d7
 * they will be useful, but WITHOUT ANY WARRANTY; without even the
Packit b099d7
 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
Packit b099d7
 * PURPOSE. See the GNU Lesser General Public License for more
Packit b099d7
 * details.
Packit b099d7
 *
Packit b099d7
 * You should have received a copy of the GNU Lesser General Public
Packit b099d7
 * License along with these librararies and programs; if not, write
Packit b099d7
 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
Packit b099d7
 * Floor, Boston, MA 02110-1301 USA
Packit b099d7
*/ 
Packit b099d7
/* 
Packit b099d7
 * HISTORY
Packit b099d7
*/ 
Packit b099d7
/*   $XConsortium: FileSBP.h /main/13 1995/09/19 23:02:34 cde-sun $ */
Packit b099d7
/*
Packit b099d7
*  (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
Packit b099d7
/*
Packit b099d7
*  (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
Packit b099d7
#ifndef _XmFSelectP_h
Packit b099d7
#define _XmFSelectP_h
Packit b099d7
Packit b099d7
#include <Xm/SelectioBP.h>
Packit b099d7
#include <Xm/FileSB.h>
Packit b099d7
Packit b099d7
#ifdef __cplusplus
Packit b099d7
extern "C" {
Packit b099d7
#endif
Packit b099d7
Packit b099d7
/* Defines for use in allocation geometry matrix. */
Packit b099d7
Packit b099d7
#define XmFSB_MAX_WIDGETS_VERT   12 
Packit b099d7
Packit b099d7
/* Bit locations for the state_flags bit field.
Packit b099d7
*/
Packit b099d7
#define XmFS_NO_MATCH		(1 << 0)
Packit b099d7
#define XmFS_IN_FILE_SEARCH	(1 << 1)
Packit b099d7
#define XmFS_DIR_SEARCH_PROC    (1 << 2)
Packit b099d7
Packit b099d7
/* Constraint part record for FileSelectionBox widget */
Packit b099d7
Packit b099d7
typedef struct _XmFileSelectionBoxConstraintPart
Packit b099d7
{
Packit b099d7
   char unused;
Packit b099d7
} XmFileSelectionBoxConstraintPart, * XmFileSelectionBoxConstraint;
Packit b099d7
Packit b099d7
/*  New fields for the FileSelectionBox widget class record  */
Packit b099d7
Packit b099d7
typedef struct
Packit b099d7
{
Packit b099d7
    XtPointer           extension;      /* Pointer to extension record */
Packit b099d7
} XmFileSelectionBoxClassPart;
Packit b099d7
Packit b099d7
Packit b099d7
/* Full class record declaration */
Packit b099d7
Packit b099d7
typedef struct _XmFileSelectionBoxClassRec
Packit b099d7
{
Packit b099d7
   CoreClassPart       core_class;
Packit b099d7
   CompositeClassPart  composite_class;
Packit b099d7
   ConstraintClassPart constraint_class;
Packit b099d7
   XmManagerClassPart  manager_class;
Packit b099d7
   XmBulletinBoardClassPart    bulletin_board_class;
Packit b099d7
   XmSelectionBoxClassPart    selection_box_class;
Packit b099d7
   XmFileSelectionBoxClassPart    file_selection_box_class;
Packit b099d7
} XmFileSelectionBoxClassRec;
Packit b099d7
Packit b099d7
externalref XmFileSelectionBoxClassRec xmFileSelectionBoxClassRec;
Packit b099d7
Packit b099d7
Packit b099d7
/* New fields for the FileSelectionBox widget record */
Packit b099d7
Packit b099d7
typedef struct
Packit b099d7
{
Packit b099d7
    XmString        directory;        /* directory specification */
Packit b099d7
    XmString        pattern;          /* file search pattern */
Packit b099d7
    Widget          dir_list_label;   /* directory list Label */
Packit b099d7
    XmString        dir_list_label_string;/* directory list label text */
Packit b099d7
    Widget          dir_list;         /* directory List */
Packit b099d7
    XmString *      dir_list_items;   /* items in directory List */
Packit b099d7
    int             dir_list_item_count;/* number of items in directory List */
Packit b099d7
    int             dir_list_selected_item_position;
Packit b099d7
    Widget          filter_label;     /* file search filter label */
Packit b099d7
    XmString        filter_label_string;/* filter label text */
Packit b099d7
    Widget          filter_text;      /* filter text entry field */
Packit b099d7
    XmString        dir_mask;         /* string in filter text entry field */
Packit b099d7
    XmString        no_match_string;  /* string in list when no file match */
Packit b099d7
    XmQualifyProc   qualify_search_data_proc; /* directory and mask routine */
Packit b099d7
    XmSearchProc    dir_search_proc;  /* change directory routine */
Packit b099d7
    XmSearchProc    file_search_proc; /* file search routine */
Packit b099d7
    unsigned char   file_type_mask;   /* mask for type of files in file list */
Packit b099d7
    Boolean         list_updated;     /* flag to indicate file list update   */
Packit b099d7
    Boolean         directory_valid ; /* flag to indicate valid new directory*/
Packit b099d7
    unsigned char   state_flags ;     /* internal flags to indicate state.   */
Packit b099d7
Packit b099d7
    XtEnum   path_mode ;
Packit b099d7
    XtEnum   file_filter_style ;
Packit b099d7
    Widget          dir_text ; 
Packit b099d7
    Widget          dir_text_label ;
Packit b099d7
    XmString        dir_text_label_string ;
Packit b099d7
    time_t   	    prev_dir_modtime;
Packit b099d7
} XmFileSelectionBoxPart;
Packit b099d7
Packit b099d7
Packit b099d7
/****************************************************************
Packit b099d7
 *
Packit b099d7
 * Full instance record declaration
Packit b099d7
 *
Packit b099d7
 ****************************************************************/
Packit b099d7
Packit b099d7
typedef struct _XmFileSelectionBoxRec
Packit b099d7
{
Packit b099d7
    CorePart	            core;
Packit b099d7
    CompositePart           composite;
Packit b099d7
    ConstraintPart          constraint;
Packit b099d7
    XmManagerPart           manager;
Packit b099d7
    XmBulletinBoardPart     bulletin_board;
Packit b099d7
    XmSelectionBoxPart      selection_box;
Packit b099d7
    XmFileSelectionBoxPart  file_selection_box;
Packit b099d7
} XmFileSelectionBoxRec;
Packit b099d7
Packit b099d7
Packit b099d7
/* Access macros */
Packit b099d7
Packit b099d7
#define FS_Directory( w) \
Packit b099d7
                (((XmFileSelectionBoxWidget)(w))->file_selection_box.directory)
Packit b099d7
#define FS_DirMask( w) \
Packit b099d7
                 (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_mask)
Packit b099d7
#define FS_DirListLabel( w) \
Packit b099d7
           (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_label)
Packit b099d7
#define FS_DirListLabelString( w) \
Packit b099d7
    (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_label_string)
Packit b099d7
#define FS_DirList( w) \
Packit b099d7
                 (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list)
Packit b099d7
#define FS_DirListItems( w) \
Packit b099d7
           (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_items)
Packit b099d7
#define FS_DirListItemCount( w) \
Packit b099d7
      (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_item_count)
Packit b099d7
#define FS_FilterLabel( w) \
Packit b099d7
             (((XmFileSelectionBoxWidget)(w))->file_selection_box.filter_label)
Packit b099d7
#define FS_FilterLabelString( w) \
Packit b099d7
      (((XmFileSelectionBoxWidget)(w))->file_selection_box.filter_label_string)
Packit b099d7
#define FS_FilterText( w) \
Packit b099d7
              (((XmFileSelectionBoxWidget)(w))->file_selection_box.filter_text)
Packit b099d7
#define FS_Pattern( w) \
Packit b099d7
                  (((XmFileSelectionBoxWidget)(w))->file_selection_box.pattern)
Packit b099d7
#define FS_NoMatchString( w) \
Packit b099d7
          (((XmFileSelectionBoxWidget)(w))->file_selection_box.no_match_string)
Packit b099d7
#define FS_QualifySearchDataProc( w) (((XmFileSelectionBoxWidget) \
Packit b099d7
                             (w))->file_selection_box.qualify_search_data_proc)
Packit b099d7
#define FS_DirSearchProc( w) \
Packit b099d7
          (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_search_proc)
Packit b099d7
#define FS_FileSearchProc( w) \
Packit b099d7
         (((XmFileSelectionBoxWidget)(w))->file_selection_box.file_search_proc)
Packit b099d7
#define FS_RealDefaultButton( w) \
Packit b099d7
      (((XmFileSelectionBoxWidget)(w))->file_selection_box.real_default_button)
Packit b099d7
#define FS_FileTypeMask( w) \
Packit b099d7
           (((XmFileSelectionBoxWidget)(w))->file_selection_box.file_type_mask)
Packit b099d7
#define FS_ListUpdated( w) \
Packit b099d7
             (((XmFileSelectionBoxWidget)(w))->file_selection_box.list_updated)
Packit b099d7
#define FS_DirectoryValid( w) \
Packit b099d7
          (((XmFileSelectionBoxWidget)(w))->file_selection_box.directory_valid)
Packit b099d7
#define FS_StateFlags( w) \
Packit b099d7
              (((XmFileSelectionBoxWidget)(w))->file_selection_box.state_flags)
Packit b099d7
#define FS_DirListSelectedItemPosition( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.dir_list_selected_item_position)
Packit b099d7
Packit b099d7
#define FS_PathMode( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.path_mode)
Packit b099d7
#define FS_FileFilterStyle( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.file_filter_style)
Packit b099d7
#define FS_DirText( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.dir_text)
Packit b099d7
#define FS_DirTextLabel( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.dir_text_label)
Packit b099d7
#define FS_DirTextLabelString( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.dir_text_label_string)
Packit b099d7
#define FS_PrevDirModTime( w) (((XmFileSelectionBoxWidget) w) \
Packit b099d7
                          ->file_selection_box.prev_dir_modtime)
Packit b099d7
Packit b099d7
Packit b099d7
/********    Private Function Declarations    ********/
Packit b099d7
Packit b099d7
Packit b099d7
/********    End Private Function Declarations    ********/
Packit b099d7
Packit b099d7
Packit b099d7
#ifdef __cplusplus
Packit b099d7
}  /* Close scope of 'extern "C"' declaration which encloses file. */
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#endif /* _XmFSelectP_h */
Packit b099d7
/* DON'T ADD ANYTHING AFTER THIS #endif */