674 lines
20 KiB
Plaintext
674 lines
20 KiB
Plaintext
/*** DTB_USER_CODE_START vvv Add file header below vvv ***/
|
|
//%% (c) Copyright 1993, 1994 Hewlett-Packard Company
|
|
//%% (c) Copyright 1993, 1994 International Business Machines Corp.
|
|
//%% (c) Copyright 1993, 1994 Sun Microsystems, Inc.
|
|
//%% (c) Copyright 1993, 1994 Novell, Inc.
|
|
//%% $XConsortium: ttChooser_stubs.C.src /main/3 1995/11/06 17:14:10 rswiston $
|
|
/*** DTB_USER_CODE_END ^^^ Add file header above ^^^ ***/
|
|
|
|
/*
|
|
* File: ttChooser_stubs.c
|
|
* Contains: Module callbacks and connection functions
|
|
*
|
|
* This file was generated by dtcodegen, from module ttChooser
|
|
*
|
|
* Any text may be added between the DTB_USER_CODE_START and
|
|
* DTB_USER_CODE_END comments (even non-C code). Descriptive comments
|
|
* are provided only as an aid.
|
|
*
|
|
* ** EDIT ONLY WITHIN SECTIONS MARKED WITH DTB_USER_CODE COMMENTS. **
|
|
* ** ALL OTHER MODIFICATIONS WILL BE OVERWRITTEN. DO NOT MODIFY OR **
|
|
* ** DELETE THE GENERATED COMMENTS! **
|
|
*/
|
|
|
|
#include <stdint.h>
|
|
#include <stdio.h>
|
|
#include <Xm/Xm.h>
|
|
#include "dtb_utils.h"
|
|
#include "ttChooser_ui.h"
|
|
|
|
/*
|
|
* Header files for cross-module connections
|
|
*/
|
|
#include "ttsnoop_ui.h"
|
|
|
|
|
|
/**************************************************************************
|
|
*** DTB_USER_CODE_START
|
|
***
|
|
*** All necessary header files have been included.
|
|
***
|
|
*** Add include files, types, macros, externs, and user functions here.
|
|
***/
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <sstream>
|
|
|
|
#include <Xm/TextF.h>
|
|
#include <Xm/List.h>
|
|
#include "DtTt.h"
|
|
|
|
void
|
|
_DtTtChooserSet(
|
|
_DtTtChooserAction choice,
|
|
void * entity
|
|
)
|
|
{
|
|
DtbTtChooserChooserInfo instance = &dtb_tt_chooser_chooser;
|
|
if (! instance->initialized) {
|
|
dtb_tt_chooser_chooser_initialize(
|
|
instance, dtb_ttsnoop_ttsnoop_win.ttsnoopWin );
|
|
}
|
|
char *okString;
|
|
char *title;
|
|
char *valueLabel;
|
|
char *valuesLabel;
|
|
switch (choice) {
|
|
case _DtTtChooserNone:
|
|
return;
|
|
case _DtTtChooserMessageOpen:
|
|
okString = "Open";
|
|
title = "Open Tt_message";
|
|
break;
|
|
case _DtTtChooserMessageCreateStandard:
|
|
okString = "Create";
|
|
title = "Create Standard Tt_message";
|
|
break;
|
|
case _DtTtChooserMessageOpSet:
|
|
okString = "Set";
|
|
title = "tt_message_op_set";
|
|
break;
|
|
case _DtTtChooserMessageHandlerSet:
|
|
okString = "Set";
|
|
title = "tt_message_handler_set";
|
|
break;
|
|
case _DtTtChooserMessageDestroy:
|
|
okString = "Destroy";
|
|
title = "tt_message_destroy";
|
|
break;
|
|
case _DtTtChooserPatternOpen:
|
|
okString = "Open";
|
|
title = "Open Tt_pattern";
|
|
break;
|
|
case _DtTtChooserPatternOpAdd:
|
|
okString = "Add";
|
|
title = "tt_pattern_op_add";
|
|
break;
|
|
case _DtTtChooserPatternSenderAdd:
|
|
okString = "Add";
|
|
title = "tt_pattern_sender_add";
|
|
break;
|
|
case _DtTtChooserPatternDestroy:
|
|
okString = "Destroy";
|
|
title = "tt_pattern_destroy";
|
|
break;
|
|
case _DtTtChooserDtSessionQuit:
|
|
okString = "Quit";
|
|
title = "ttdt_session_quit";
|
|
break;
|
|
case _DtTtChooserDtFileDeleted:
|
|
okString = "Send";
|
|
title = "ttdt_file_event(,TTDT_DELETED)";
|
|
break;
|
|
case _DtTtChooserDtFileModified:
|
|
okString = "Send";
|
|
title = "ttdt_file_event(,TTDT_MODIFIED)";
|
|
break;
|
|
case _DtTtChooserDtFileReverted:
|
|
okString = "Send";
|
|
title = "ttdt_file_event(,TTDT_REVERTED)";
|
|
break;
|
|
case _DtTtChooserDtFileMoved:
|
|
okString = "Send";
|
|
title = "ttdt_file_event(,TTDT_MOVED)";
|
|
break;
|
|
case _DtTtChooserDtFileSaved:
|
|
okString = "Send";
|
|
title = "ttdt_file_event(,TTDT_SAVED)";
|
|
break;
|
|
case _DtTtChooserDtFileQuit:
|
|
okString = "Quit";
|
|
title = "ttdt_file_quit";
|
|
break;
|
|
case _DtTtChooserProcidSetDefault:
|
|
okString = "Set";
|
|
title = "tt_default_procid_set";
|
|
break;
|
|
case _DtTtChooserProcidSuspend:
|
|
okString = "Remove";
|
|
title = "XtRemoveInput";
|
|
break;
|
|
case _DtTtChooserProcidResume:
|
|
okString = "Add";
|
|
title = "XtAppAddInput";
|
|
break;
|
|
case _DtTtChooserDtProcidClose:
|
|
okString = "Close";
|
|
title = "ttdt_close";
|
|
break;
|
|
}
|
|
DtTtType type;
|
|
switch (choice) {
|
|
case _DtTtChooserNone:
|
|
return;
|
|
case _DtTtChooserMessageOpSet:
|
|
case _DtTtChooserPatternOpAdd:
|
|
case _DtTtChooserMessageCreateStandard:
|
|
valueLabel = "Op:";
|
|
valuesLabel = "Standard Op";
|
|
type = DTTT_OP;
|
|
break;
|
|
case _DtTtChooserMessageOpen:
|
|
case _DtTtChooserMessageDestroy:
|
|
valueLabel = "Tt_message:";
|
|
valuesLabel = "Tt_message";
|
|
type = DTTT_MESSAGE;
|
|
break;
|
|
case _DtTtChooserPatternOpen:
|
|
case _DtTtChooserPatternDestroy:
|
|
valueLabel = "Tt_pattern:";
|
|
valuesLabel = "Tt_pattern";
|
|
type = DTTT_PATTERN;
|
|
break;
|
|
case _DtTtChooserDtSessionQuit:
|
|
valueLabel = "Tt_pattern *:";
|
|
valuesLabel = "Desktop-joined session";
|
|
type = DTTT_DTSESSION;
|
|
break;
|
|
case _DtTtChooserDtFileDeleted:
|
|
case _DtTtChooserDtFileModified:
|
|
case _DtTtChooserDtFileReverted:
|
|
case _DtTtChooserDtFileMoved:
|
|
case _DtTtChooserDtFileSaved:
|
|
case _DtTtChooserDtFileQuit:
|
|
valueLabel = "Tt_pattern *:";
|
|
valuesLabel = "Desktop-joined file";
|
|
type = DTTT_DTFILE;
|
|
break;
|
|
case _DtTtChooserMessageHandlerSet:
|
|
case _DtTtChooserPatternSenderAdd:
|
|
case _DtTtChooserProcidSetDefault:
|
|
case _DtTtChooserProcidSuspend:
|
|
case _DtTtChooserProcidResume:
|
|
case _DtTtChooserDtProcidClose:
|
|
valueLabel = "Procid:";
|
|
valuesLabel = "Procid";
|
|
type = DTTT_PROCID;
|
|
break;
|
|
}
|
|
DtTtSetLabel( instance->chooserOkButton, okString );
|
|
DtTtSetLabel( instance->chooserText_label, valueLabel );
|
|
|
|
int itemCount;
|
|
XmString *items = _DtTtChoices( type, &itemCount );
|
|
XtVaSetValues( instance->chooserList,
|
|
XmNitemCount, itemCount,
|
|
XmNitems, items,
|
|
NULL );
|
|
XmListDeselectAllItems( instance->chooserList );
|
|
XmTextFieldSetString( instance->chooserText, 0 );
|
|
XtVaSetValues( instance->chooser, XmNtitle, title, NULL );
|
|
|
|
std::ostringstream valuesStream;
|
|
valuesStream << itemCount << " " << valuesLabel;
|
|
if (itemCount != 1) valuesStream << "s";
|
|
valuesStream << ends;
|
|
DtTtSetLabel( instance->chooserList_label, valuesStream.str().c_str() );
|
|
|
|
// Remember dialog mode, entity
|
|
XtVaSetValues( instance->chooserOkButton, XmNuserData, choice, NULL );
|
|
XtVaSetValues( instance->chooserCancelButton, XmNuserData, entity, NULL );
|
|
|
|
XtManageChild( instance->chooser_shellform );
|
|
}
|
|
|
|
/*** DTB_USER_CODE_END
|
|
***
|
|
*** End of user code section
|
|
***
|
|
**************************************************************************/
|
|
|
|
|
|
|
|
void
|
|
ttChooser_chooserCancelButton_CB1(
|
|
Widget widget,
|
|
XtPointer clientData,
|
|
XtPointer callData
|
|
)
|
|
{
|
|
/*** DTB_USER_CODE_START vvv Add C variables and code below vvv ***/
|
|
/*** DTB_USER_CODE_END ^^^ Add C variables and code above ^^^ ***/
|
|
|
|
DtbTtChooserChooserInfo instance = (DtbTtChooserChooserInfo)clientData;
|
|
|
|
if (!(instance->initialized))
|
|
{
|
|
dtb_tt_chooser_chooser_initialize(instance, dtb_ttsnoop_ttsnoop_win.ttsnoopWin);
|
|
}
|
|
XtUnmanageChild(instance->chooser_shellform);
|
|
|
|
/*** DTB_USER_CODE_START vvv Add C code below vvv ***/
|
|
/*** DTB_USER_CODE_END ^^^ Add C code above ^^^ ***/
|
|
}
|
|
|
|
|
|
void
|
|
choiceSelected(
|
|
Widget widget,
|
|
XtPointer clientData,
|
|
XtPointer callData
|
|
)
|
|
{
|
|
/*** DTB_USER_CODE_START vvv Add C variables and code below vvv ***/
|
|
/*** DTB_USER_CODE_END ^^^ Add C variables and code above ^^^ ***/
|
|
|
|
/*** DTB_USER_CODE_START vvv Add C code below vvv ***/
|
|
DtbTtChooserChooserInfo instance = (DtbTtChooserChooserInfo)clientData;
|
|
XmListCallbackStruct *info = (XmListCallbackStruct *)callData;
|
|
int choice;
|
|
XtVaGetValues( instance->chooserOkButton, XmNuserData, &choice, NULL );
|
|
DtTtType type;
|
|
Boolean isString = False;
|
|
switch ((_DtTtChooserAction)choice) {
|
|
case _DtTtChooserNone:
|
|
return;
|
|
case _DtTtChooserMessageOpSet:
|
|
case _DtTtChooserPatternOpAdd:
|
|
case _DtTtChooserMessageCreateStandard:
|
|
isString = True;
|
|
type = DTTT_OP;
|
|
break;
|
|
case _DtTtChooserMessageOpen:
|
|
case _DtTtChooserMessageDestroy:
|
|
type = DTTT_MESSAGE;
|
|
break;
|
|
case _DtTtChooserPatternOpen:
|
|
case _DtTtChooserPatternDestroy:
|
|
type = DTTT_PATTERN;
|
|
break;
|
|
case _DtTtChooserDtSessionQuit:
|
|
type = DTTT_DTSESSION;
|
|
break;
|
|
case _DtTtChooserDtFileDeleted:
|
|
case _DtTtChooserDtFileModified:
|
|
case _DtTtChooserDtFileReverted:
|
|
case _DtTtChooserDtFileMoved:
|
|
case _DtTtChooserDtFileSaved:
|
|
case _DtTtChooserDtFileQuit:
|
|
type = DTTT_DTFILE;
|
|
break;
|
|
case _DtTtChooserMessageHandlerSet:
|
|
case _DtTtChooserPatternSenderAdd:
|
|
case _DtTtChooserProcidSetDefault:
|
|
case _DtTtChooserProcidSuspend:
|
|
case _DtTtChooserProcidResume:
|
|
case _DtTtChooserDtProcidClose:
|
|
isString = True;
|
|
type = DTTT_PROCID;
|
|
break;
|
|
}
|
|
void *entity = DtTtNth( type, info->item_position - 1 );
|
|
std::ostringstream entityName;
|
|
if (isString) {
|
|
entityName << (char *)entity << ends;
|
|
} else {
|
|
entityName << entity << ends;
|
|
}
|
|
XmTextFieldSetString( instance->chooserText, const_cast<char *>(entityName.str().c_str()) );
|
|
/*** DTB_USER_CODE_END ^^^ Add C code above ^^^ ***/
|
|
}
|
|
|
|
|
|
void
|
|
choiceOkayed(
|
|
Widget widget,
|
|
XtPointer clientData,
|
|
XtPointer callData
|
|
)
|
|
{
|
|
/*** DTB_USER_CODE_START vvv Add C variables and code below vvv ***/
|
|
/*** DTB_USER_CODE_END ^^^ Add C variables and code above ^^^ ***/
|
|
|
|
/*** DTB_USER_CODE_START vvv Add C code below vvv ***/
|
|
DtbTtChooserChooserInfo instance = (DtbTtChooserChooserInfo)clientData;
|
|
char *text = XmTextFieldGetString( instance->chooserText );
|
|
int ival;
|
|
XtVaGetValues( instance->chooserOkButton, XmNuserData, &ival, NULL );
|
|
_DtTtChooserAction choice = (_DtTtChooserAction)ival;
|
|
Widget label = dtb_ttsnoop_ttsnoop_win.ttsnoopWin_label;
|
|
switch (choice) {
|
|
int ival, fd;
|
|
Tt_message msg;
|
|
Tt_pattern pat;
|
|
Tt_pattern *pats;
|
|
Tt_status status;
|
|
char *func, *procid;
|
|
XtPointer xtPtr;
|
|
XtInputId id;
|
|
Widget newWidget;
|
|
case _DtTtChooserNone:
|
|
return;
|
|
case _DtTtChooserMessageCreateStandard:
|
|
msg = tttk_message_create( text );
|
|
status = DtTtSetLabel( label, "tt_message_create()", msg );
|
|
if (tt_is_err( status )) {
|
|
break;
|
|
}
|
|
DtTtCreated( DTTT_MESSAGE, msg );
|
|
newWidget = DtTtMessageWidgetCreate(
|
|
dtb_ttsnoop_ttsnoop_win.ttsnoopWin, msg,
|
|
DtTtMessageWidgetUpdate );
|
|
status = tt_ptr_error( newWidget );
|
|
if (tt_is_err( status )) {
|
|
return;
|
|
}
|
|
XRaiseWindow( XtDisplay( newWidget ), XtWindow( newWidget ));
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserMessageOpSet:
|
|
XtVaGetValues( instance->chooserCancelButton,
|
|
XmNuserData, &xtPtr, NULL );
|
|
_DtTtMessageUpdate( (Tt_message)xtPtr, choice, text );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserPatternOpAdd:
|
|
XtVaGetValues( instance->chooserCancelButton,
|
|
XmNuserData, &xtPtr, NULL );
|
|
_DtTtPatternUpdate( (Tt_pattern)xtPtr, choice, text );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserMessageHandlerSet:
|
|
XtVaGetValues( instance->chooserCancelButton,
|
|
XmNuserData, &xtPtr, NULL );
|
|
_DtTtMessageUpdate( (Tt_message)xtPtr, choice, text );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserPatternSenderAdd:
|
|
XtVaGetValues( instance->chooserCancelButton,
|
|
XmNuserData, &xtPtr, NULL );
|
|
_DtTtPatternUpdate( (Tt_pattern)xtPtr, choice, text );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserMessageOpen:
|
|
case _DtTtChooserMessageDestroy:
|
|
if (text == 0) {
|
|
return;
|
|
}
|
|
ival = 0;
|
|
sscanf( text, "%i", &ival );
|
|
msg = (Tt_message) (intptr_t) ival;
|
|
if (DtTtIndex( DTTT_MESSAGE, msg ) < 0) {
|
|
return;
|
|
}
|
|
if (choice == _DtTtChooserMessageOpen) {
|
|
Widget newWidget = DtTtMessageWidgetCreate(
|
|
dtb_ttsnoop_ttsnoop_win.ttsnoopWin,
|
|
msg, DtTtMessageWidgetUpdate );
|
|
Tt_status status = tt_ptr_error( newWidget );
|
|
if (tt_is_err( status )) {
|
|
return;
|
|
}
|
|
XRaiseWindow( XtDisplay( newWidget ), XtWindow( newWidget ));
|
|
} else {
|
|
Widget msgWidget = DtTtMessageWidget( msg );
|
|
Tt_status status = tttk_message_destroy( msg );
|
|
if (status == TT_WRN_STOPPED) {
|
|
DtTtSetLabel( label, "tttk_message_destroy()",
|
|
status );
|
|
return;
|
|
}
|
|
DtTtDestroyed( DTTT_MESSAGE, msg );
|
|
if (msgWidget != 0) {
|
|
XtDestroyWidget( msgWidget );
|
|
}
|
|
_DtTtChooserSet( _DtTtChooserMessageDestroy );
|
|
}
|
|
break;
|
|
case _DtTtChooserPatternOpen:
|
|
case _DtTtChooserPatternDestroy:
|
|
if (text == 0) {
|
|
return;
|
|
}
|
|
ival = 0;
|
|
sscanf( text, "%i", &ival );
|
|
pat = (Tt_pattern) (intptr_t) ival;
|
|
if (DtTtIndex( DTTT_PATTERN, pat ) < 0) {
|
|
return;
|
|
}
|
|
if (choice == _DtTtChooserPatternOpen) {
|
|
Widget newWidget = DtTtPatternWidgetCreate(
|
|
dtb_ttsnoop_ttsnoop_win.ttsnoopWin,
|
|
pat, 0 );
|
|
Tt_status status = tt_ptr_error( newWidget );
|
|
if (tt_is_err( status )) {
|
|
return;
|
|
}
|
|
XRaiseWindow( XtDisplay( newWidget ), XtWindow( newWidget ));
|
|
} else {
|
|
Widget patWidget = DtTtPatternWidget( pat );
|
|
Tt_status status = tt_pattern_destroy( pat );
|
|
if (status == TT_WRN_STOPPED) {
|
|
DtTtSetLabel( label, "tt_pattern_destroy()",
|
|
status );
|
|
return;
|
|
}
|
|
DtTtDestroyed( DTTT_PATTERN, pat );
|
|
if (patWidget != 0) {
|
|
XtDestroyWidget( patWidget );
|
|
}
|
|
_DtTtChooserSet( _DtTtChooserPatternDestroy );
|
|
}
|
|
break;
|
|
case _DtTtChooserDtSessionQuit:
|
|
if (text == 0) {
|
|
return;
|
|
}
|
|
ival = 0;
|
|
sscanf( text, "%i", &ival );
|
|
pats = (Tt_pattern *) (intptr_t) ival;
|
|
if (DtTtIndex( DTTT_DTSESSION, pats ) < 0) {
|
|
return;
|
|
}
|
|
text = (char *)tt_pattern_user( *pats, _DtTtPatsNameKey );
|
|
if (tt_is_err( tt_ptr_error( text )) || text == 0) {
|
|
return;
|
|
}
|
|
status = ttdt_session_quit( text, pats, 1 );
|
|
DtTtSetLabel( label, "ttdt_session_quit()", status );
|
|
if (status == TT_OK) {
|
|
DtTtDestroyed( DTTT_DTSESSION, pats );
|
|
}
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserDtFileDeleted:
|
|
case _DtTtChooserDtFileModified:
|
|
case _DtTtChooserDtFileReverted:
|
|
case _DtTtChooserDtFileMoved:
|
|
case _DtTtChooserDtFileSaved:
|
|
case _DtTtChooserDtFileQuit:
|
|
if (text == 0) {
|
|
return;
|
|
}
|
|
ival = 0;
|
|
sscanf( text, "%i", &ival );
|
|
pats = (Tt_pattern *) (intptr_t) ival;
|
|
if (DtTtIndex( DTTT_DTFILE, pats ) < 0) {
|
|
return;
|
|
}
|
|
switch ((_DtTtChooserAction)choice) {
|
|
case _DtTtChooserDtFileModified:
|
|
status = ttdt_file_event( 0, TTDT_MODIFIED, pats, 1 );
|
|
func = "ttdt_file_event(,TTDT_MODIFIED)";
|
|
break;
|
|
case _DtTtChooserDtFileReverted:
|
|
status = ttdt_file_event( 0, TTDT_REVERTED, pats, 1 );
|
|
func = "ttdt_file_event(,TTDT_REVERTED)";
|
|
break;
|
|
case _DtTtChooserDtFileSaved:
|
|
status = ttdt_file_event( 0, TTDT_SAVED, pats, 1 );
|
|
func = "ttdt_file_event(,TTDT_SAVED)";
|
|
break;
|
|
case _DtTtChooserDtFileQuit:
|
|
status = ttdt_file_quit( pats, 1 );
|
|
func = "ttdt_file_quit()";
|
|
if (status == TT_OK) {
|
|
DtTtDestroyed( DTTT_DTFILE, pats );
|
|
}
|
|
break;
|
|
}
|
|
DtTtSetLabel( label, func, status );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
case _DtTtChooserProcidSetDefault:
|
|
status = tt_default_procid_set( text );
|
|
DtTtSetLabel( label, "tt_default_procid_set()", status );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserProcidSuspend:
|
|
ival = DtTtIndex( DTTT_PROCID, text );
|
|
if (ival < 0) {
|
|
return;
|
|
}
|
|
id = (XtInputId)DtTtNthClientDatum( DTTT_PROCID, ival );
|
|
if (id != 0) {
|
|
XtRemoveInput( id );
|
|
DtTtSetLabel( label, "XtRemoveInput()" );
|
|
}
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserProcidResume:
|
|
ival = DtTtIndex( DTTT_PROCID, text );
|
|
if (ival < 0) {
|
|
return;
|
|
}
|
|
fd = tt_procid_fd( text );
|
|
if (tt_is_err( tt_int_error( fd ))) {
|
|
return;
|
|
}
|
|
id = XtAppAddInput( XtWidgetToApplicationContext( label ),
|
|
fd, (XtPointer)XtInputReadMask,
|
|
tttk_Xt_input_handler, text );
|
|
DtTtSetLabel( label, "XtAppAddInput()", (int)id );
|
|
if (id != 0) {
|
|
DtTtNthClientDatumSet( DTTT_PROCID, ival, (void *)id );
|
|
}
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
case _DtTtChooserDtProcidClose:
|
|
status = ttdt_close( text, 0, 1 );
|
|
DtTtSetLabel( label, "ttdt_close()", status );
|
|
ival = DtTtIndex( DTTT_PROCID, text );
|
|
if (ival < 0) {
|
|
return;
|
|
}
|
|
id = (XtInputId)DtTtNthClientDatum( DTTT_PROCID, ival );
|
|
if (id != 0) {
|
|
XtRemoveInput( id );
|
|
}
|
|
DtTtDestroyed( DTTT_PROCID, text );
|
|
XtUnmanageChild( instance->chooser_shellform );
|
|
break;
|
|
}
|
|
/*** DTB_USER_CODE_END ^^^ Add C code above ^^^ ***/
|
|
}
|
|
|
|
|
|
void
|
|
ttChooserHelp(
|
|
Widget widget,
|
|
XtPointer clientData,
|
|
XtPointer callData
|
|
)
|
|
{
|
|
/*** DTB_USER_CODE_START vvv Add C variables and code below vvv ***/
|
|
/*** DTB_USER_CODE_END ^^^ Add C variables and code above ^^^ ***/
|
|
|
|
/*** DTB_USER_CODE_START vvv Add C code below vvv ***/
|
|
DtbTtChooserChooserInfo instance = (DtbTtChooserChooserInfo)clientData;
|
|
int ival;
|
|
XtVaGetValues( instance->chooserOkButton, XmNuserData, &ival, NULL );
|
|
_DtTtChooserAction choice = (_DtTtChooserAction)ival;
|
|
Widget label = dtb_ttsnoop_ttsnoop_win.ttsnoopWin_label;
|
|
switch (choice) {
|
|
char *op;
|
|
case _DtTtChooserNone:
|
|
return;
|
|
case _DtTtChooserMessageOpSet:
|
|
case _DtTtChooserMessageCreateStandard:
|
|
case _DtTtChooserPatternOpAdd:
|
|
op = XmTextFieldGetString( instance->chooserText );
|
|
if (op != 0) {
|
|
_DtMan( label, op );
|
|
}
|
|
if (choice == _DtTtChooserMessageOpSet) {
|
|
_DtMan( label, "tt_message_op_set" );
|
|
} else {
|
|
_DtMan( label, "tt_pattern_op_add" );
|
|
}
|
|
break;
|
|
case _DtTtChooserMessageOpen:
|
|
_DtMan( label, "tt_message_print" );
|
|
break;
|
|
case _DtTtChooserMessageHandlerSet:
|
|
_DtMan( label, "tt_message_handler_set" );
|
|
break;
|
|
case _DtTtChooserMessageDestroy:
|
|
_DtMan( label, "tt_message_destroy" );
|
|
break;
|
|
case _DtTtChooserPatternOpen:
|
|
_DtMan( label, "tt_pattern_print" );
|
|
break;
|
|
case _DtTtChooserPatternSenderAdd:
|
|
_DtMan( label, "tt_pattern_sender_add" );
|
|
break;
|
|
case _DtTtChooserPatternDestroy:
|
|
_DtMan( label, "tt_pattern_destroy" );
|
|
break;
|
|
case _DtTtChooserDtSessionQuit:
|
|
_DtMan( label, "ttdt_session_quit" );
|
|
break;
|
|
case _DtTtChooserDtFileDeleted:
|
|
case _DtTtChooserDtFileModified:
|
|
case _DtTtChooserDtFileReverted:
|
|
case _DtTtChooserDtFileMoved:
|
|
case _DtTtChooserDtFileSaved:
|
|
_DtMan( label, "ttdt_file_event" );
|
|
break;
|
|
case _DtTtChooserDtFileQuit:
|
|
_DtMan( label, "ttdt_file_quit" );
|
|
break;
|
|
case _DtTtChooserProcidSetDefault:
|
|
_DtMan( label, "tt_default_procid_set" );
|
|
break;
|
|
case _DtTtChooserProcidSuspend:
|
|
_DtMan( label, "XtRemoveInput" );
|
|
break;
|
|
case _DtTtChooserProcidResume:
|
|
_DtMan( label, "XtAppAddInput" );
|
|
break;
|
|
case _DtTtChooserDtProcidClose:
|
|
_DtMan( label, "ttdt_close" );
|
|
break;
|
|
}
|
|
/*** DTB_USER_CODE_END ^^^ Add C code above ^^^ ***/
|
|
}
|
|
|
|
|
|
|
|
/**************************************************************************
|
|
*** DTB_USER_CODE_START
|
|
***
|
|
*** All automatically-generated data and functions have been defined.
|
|
***
|
|
*** Add new functions here, or at the top of the file.
|
|
***/
|
|
|
|
/*** DTB_USER_CODE_END
|
|
***
|
|
*** End of user code section
|
|
***
|
|
**************************************************************************/
|
|
|
|
|