Start work on NDA
This commit is contained in:
parent
88102cafea
commit
90ee3fc724
Binary file not shown.
Binary file not shown.
Binary file not shown.
10
Make.engine
10
Make.engine
|
@ -1,3 +1,9 @@
|
||||||
|
#
|
||||||
|
# Make.engine
|
||||||
|
# By: Jeremy Rand
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
CALC_OBJS=abCalc.o abCStack.o abCMode.o abCError.o
|
CALC_OBJS=abCalc.o abCStack.o abCMode.o abCError.o
|
||||||
|
|
||||||
EXPR_OBJS=expr/abCExpr.o expr/abCExpReal.o expr/abCExprInt.o
|
EXPR_OBJS=expr/abCExpr.o expr/abCExpReal.o expr/abCExprInt.o
|
||||||
|
@ -8,7 +14,9 @@ OPS_OBJS=ops/abCOp.o ops/abCOpAdd.o ops/abCOpSubtr.o ops/abCOpMult.o \
|
||||||
ops/abCOpStws.o ops/abCOpRcws.o ops/abCOpSl.o ops/abCOpRl.o ops/abCOpSr.o \
|
ops/abCOpStws.o ops/abCOpRcws.o ops/abCOpSl.o ops/abCOpRl.o ops/abCOpSr.o \
|
||||||
ops/abCOpRr.o ops/abCOpAsr.o
|
ops/abCOpRr.o ops/abCOpAsr.o
|
||||||
|
|
||||||
OBJS=abCMain.o $(CALC_OBJS) $(EXPR_OBJS) $(OPS_OBJS)
|
SHELL_OBJS=abCMain.o $(CALC_OBJS) $(EXPR_OBJS) $(OPS_OBJS)
|
||||||
|
|
||||||
|
NDA_OBJS=abCNDA.o $(CALC_OBJS) $(EXPR_OBJS) $(OPS_OBJS)
|
||||||
|
|
||||||
abCMain.o: abCalc.h abCStack.h expr/abCExpr.h ops/abCOp.h abCError.h
|
abCMain.o: abCalc.h abCStack.h expr/abCExpr.h ops/abCOp.h abCError.h
|
||||||
|
|
||||||
|
|
11
Make.mac
11
Make.mac
|
@ -1,3 +1,8 @@
|
||||||
|
#
|
||||||
|
# Make.mac
|
||||||
|
# By: Jeremy Rand
|
||||||
|
#
|
||||||
|
|
||||||
NAME=abCalc
|
NAME=abCalc
|
||||||
|
|
||||||
CFLAGS=-I.
|
CFLAGS=-I.
|
||||||
|
@ -6,8 +11,8 @@ all: $(NAME)
|
||||||
|
|
||||||
include Make.engine
|
include Make.engine
|
||||||
|
|
||||||
$(NAME): $(OBJS)
|
$(NAME): $(SHELL_OBJS)
|
||||||
cc -o $(NAME) $(OBJS)
|
cc -o $(NAME) $(SHELL_OBJS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f $(NAME) $(OBJS)
|
rm -f $(NAME) $(SHELL_OBJS)
|
||||||
|
|
20
Makefile
20
Makefile
|
@ -1,16 +1,26 @@
|
||||||
NAME=abCalc
|
#
|
||||||
|
# Makefile
|
||||||
|
# By: Jeremy Rand
|
||||||
|
#
|
||||||
|
|
||||||
all: $(NAME)
|
SHELL_NAME=abCalc
|
||||||
|
NDA_NAME=abCalcNDA
|
||||||
|
|
||||||
|
all: $(SHELL_NAME) $(NDA_NAME)
|
||||||
|
|
||||||
.INCLUDE: "Make.engine"
|
.INCLUDE: "Make.engine"
|
||||||
|
|
||||||
CFLAGS=-D ABCALC_GSOS
|
CFLAGS=-D ABCALC_GSOS
|
||||||
|
|
||||||
$(NAME): fixtype $(OBJS)
|
$(SHELL_NAME): fixtype $(SHELL_OBJS)
|
||||||
occ -o $(NAME) $(OBJS)
|
occ -o $(SHELL_NAME) $(SHELL_OBJS)
|
||||||
|
|
||||||
|
$(NDA_NAME): fixtype $(NDA_OBJS)
|
||||||
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
cp -p rm -f $(NAME) $(OBJS) $(NAME).r $(NAME).root
|
cp -p rm -f $(SHELL_NAME) $(SHELL_OBJS) $(SHELL_NAME).root
|
||||||
|
cp -p rm -f $(NDA_NAME) $(NDA_OBJS) $(NDA_NAME).r $(NDA_NAME).root
|
||||||
cp -p rm -f *.root
|
cp -p rm -f *.root
|
||||||
cp -p rm -f expr/*.root
|
cp -p rm -f expr/*.root
|
||||||
cp -p rm -f ops/*.root
|
cp -p rm -f ops/*.root
|
||||||
|
|
|
@ -0,0 +1,73 @@
|
||||||
|
/*
|
||||||
|
abCalcNDA.c
|
||||||
|
By: Jeremy Rand
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#pragma nda NDAOpen NDAClose NDAAction NDAInit 60 0x03FF " abCalc\\H**"
|
||||||
|
|
||||||
|
|
||||||
|
#include <types.h>
|
||||||
|
|
||||||
|
|
||||||
|
static BOOLEAN gCalcActive;
|
||||||
|
static GrafPortPtr gCalcWinPtr;
|
||||||
|
|
||||||
|
|
||||||
|
void NDAClose(void)
|
||||||
|
{
|
||||||
|
if (gCalcActive) {
|
||||||
|
CloseWindow(gCalcWinPtr);
|
||||||
|
gCalcActive = FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void NDAInit(int code)
|
||||||
|
{
|
||||||
|
if (code == 1)
|
||||||
|
gCalcActive = FALSE;
|
||||||
|
else if (gCalcActive)
|
||||||
|
NDAClose();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
GrafPortPtr NDAOpen(void)
|
||||||
|
{
|
||||||
|
GrafPortPtr wPtr;
|
||||||
|
|
||||||
|
wPtr = NULL;
|
||||||
|
if (!clockActive) {
|
||||||
|
if (OpenResourceFork()) {
|
||||||
|
gCalcWinPtr = NewWindow2("\p abCalc ", 0, NULL, NULL, 0x02, wrNum, rWindParam1);
|
||||||
|
if (toolerror() == 0) {
|
||||||
|
SetSysWindow(gCalcWinPtr);
|
||||||
|
clockActive = TRUE;
|
||||||
|
wPtr = clockWinPtr;
|
||||||
|
}
|
||||||
|
CloseResourceFork();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return wPtr;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BOOLEAN NDAAction(int code, EventRecord *sysEvent)
|
||||||
|
{
|
||||||
|
int event;
|
||||||
|
static EventRecord localEvent;
|
||||||
|
|
||||||
|
switch (code) {
|
||||||
|
case eventAction:
|
||||||
|
localEvent.what = sysEvent->what;
|
||||||
|
localEvent.message = sysEvent->message;
|
||||||
|
localEvent.when = sysEvent->when;
|
||||||
|
localEvent.where = sysEvent->where;
|
||||||
|
localEvent.modifiers = sysEvent->modifiers;
|
||||||
|
event = TaskMasterDA(0, &localEvent);
|
||||||
|
break;
|
||||||
|
case runAction:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
/*
|
||||||
|
abCalcNDA.defs
|
||||||
|
By: Jeremy Rand
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define ABCALC_WINDOW_NUM 1001
|
||||||
|
#define ABCALC_LINED_COLORS 1002
|
|
@ -0,0 +1,37 @@
|
||||||
|
/*
|
||||||
|
abCalcNDA.h
|
||||||
|
By: Jeremy Rand
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "types.rez"
|
||||||
|
#include "abCalcNda.defs"
|
||||||
|
|
||||||
|
|
||||||
|
resource rWindParam1 (ABCALC_WINDOW_NUM) {
|
||||||
|
$C0A5, /* wFrameBits */
|
||||||
|
nil, /* wTitle */
|
||||||
|
0, /* wRefCon */
|
||||||
|
{0,0,0,0}, /* ZoomRect */
|
||||||
|
ABCALC_LINED_COLORS, /* wColor ID */
|
||||||
|
{0,0}, /* Origin */
|
||||||
|
{0,0}, /* data size */
|
||||||
|
{0,0}, /* max height-width */
|
||||||
|
{0,0}, /* scroll ver hors */
|
||||||
|
{0,0}, /* page ver horiz */
|
||||||
|
0, /* winfoRefcon */
|
||||||
|
0, /* wInfoHeight */
|
||||||
|
{50,50,62,200}, /* wposition */
|
||||||
|
infront, /* wPlane */
|
||||||
|
nil, /* wStorage */
|
||||||
|
$0800 /* wInVerb */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
resource rWindColor (ABCALC_LINED_COLORS) {
|
||||||
|
0x0000, /* frameColor */
|
||||||
|
0x0F00, /* titleColor */
|
||||||
|
0x020F, /* tbarColor */
|
||||||
|
0xF0F0, /* growColor */
|
||||||
|
0x00F0, /* infoColor */
|
||||||
|
};
|
Loading…
Reference in New Issue