File: appReally.c

package info (click to toggle)
ted 2.11-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 11,064 kB
  • ctags: 13,935
  • sloc: ansic: 120,446; makefile: 7,469; sh: 253
file content (89 lines) | stat: -rw-r--r-- 2,289 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/************************************************************************/
/*  Really Quit, Really Close dialogs.					*/
/************************************************************************/

#   include	"appFrameConfig.h"

#   include	<stddef.h>
#   include	<stdio.h>
#   include	<stdlib.h>

#   include	<appFrame.h>

#   include	<appDebugon.h>

/************************************************************************/
/*									*/
/*  Run a 'Really Close' dialog.					*/
/*									*/
/************************************************************************/

void appRunReallyCloseDialog(	APP_WIDGET			option,
				EditDocument *			ed )
    {
    EditApplication *		ea= ed->edApplication;
    int				rcc;

    AppFileMessageResources *	afmr= &(ea->eaFileMessageResources);

    rcc= appQuestionRunSubjectYesNoCancelDialog( ea,
						ed->edToplevel.atTopWidget,
						option,
						ed->edTitle,
						afmr->afmrReallyCloseQuestion,
						afmr->afmrReallyCloseSaveIt,
						afmr->afmrReallyCloseDontSave,
						afmr->afmrReallyCloseCancel );

    switch( rcc )
	{
	case AQDrespYES:
	    if  ( ! ea->eaSaveDocument )
		{ XDEB(ea->eaSaveDocument); return;	}

	    if  ( ! ed->edFilename )
		{ appDocFileSaveAs( option, (void *)ed, (void *)0 ); }
	    else{
		const int	interactive= 1;

		if  ( ! appDocSaveDocumentByName( ed, option, interactive,
					    ed->edFormat, ed->edFilename ) )
		    { appDocumentChanged( ed, 0 ); }
		}

	    if  ( ! ed->edHasBeenChanged )
		{ appCloseDocument( ea, ed );	}
	    break;

	case AQDrespNO:
	    appCloseDocument( ea, ed );
	    break;
	case AQDrespCANCEL:
	    break;
	default:
	    LDEB(rcc); break;
	}

    return;
    }

/************************************************************************/
/*									*/
/*  Run a 'Really Quit' dialog.						*/
/*									*/
/************************************************************************/

int appRunReallyQuitDialog(	APP_WIDGET			option,
				APP_WIDGET			relative,
				EditApplication *		ea )
    {
    AppFileMessageResources *	afmr= &(ea->eaFileMessageResources);

    return appQuestionRunYesNoCancelDialog( ea,
					relative,
					option,
					afmr->afmrReallyQuitQuestion,
					afmr->afmrReallyQuitReview,
					afmr->afmrReallyQuitAnyway,
					afmr->afmrReallyQuitCancel );
    }