home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of A1200
/
World_Of_A1200.iso
/
programs
/
disk
/
misc
/
dcmp
/
source
/
source.lha
/
data.c
< prev
next >
Wrap
C/C++ Source or Header
|
1993-01-17
|
18KB
|
512 lines
/* $Id: data.c,v 1.18 92/12/10 04:21:23 tf Exp $ © Tobias Ferber */
#include <intuition/intuition.h>
#include <workbench/workbench.h>
#include "info.c"
/*
* We need this since we can't be sure that we will open on
* a screen that uses a fitting font for our digests
*/
struct TextAttr TextAttr =
{ (STRPTR) "topaz.font", /* ta_Name */
8, /* ta_YSize */
FS_NORMAL, /* ta_Style */
FPF_ROMFONT, /* ta_Flags */
};
#include "menus.c"
/*
* These texts are not multilingual (yet) because they are dependant on
* length and position of the underlined character. Possible translations
* for future revisions:
*
* +-----------------+-----------------+-----------------+-----------------+
* | English | Deutsch | Français | Italiano |
* +-----------------+-----------------+-----------------+-----------------+
* | Verify Tracks | Tracks prüfen | Verifiér TRKs | |
* | Logfile | LogFile | Logfile | |
* | Begin Operation | DCMP starten | | |
* | Stop ! | Stop ! | Stop ! | |
* | Equal: Yes No | | | |
* | Start/End: | | | |
* | Att/Err: | | | |
* +-----------------+-----------------+-----------------+-----------------+
*
*/
struct IntuiText gadget_text[]= {
{ 1, 0, JAM1, 36, 2, &TextAttr, "Verify Tracks", &gadget_text[ 8] }, /* 0 */
{ 1, 0, JAM2, 12, 4, &TextAttr, "_ ", &gadget_text[ 9] }, /* 1 */
{ 1, 0, JAM1, 20, 3, &TextAttr, "Logfile", &gadget_text[10] }, /* 2 */
{ 1, 0, JAM1, 7, 3, &TextAttr, "DF0:", &gadget_text[11] }, /* 3 */
{ 1, 0, JAM1, 7, 3, &TextAttr, "DF1:", &gadget_text[11] }, /* 4 */
{ 1, 0, JAM1, 7, 3, &TextAttr, "DF2:", &gadget_text[11] }, /* 5 */
{ 1, 0, JAM1, 7, 3, &TextAttr, "DF3:", &gadget_text[11] }, /* 6 */
{ 1, 0, JAM2, 12, 4, &TextAttr, " _", &gadget_text[12] }, /* 7 */
{ 1, 0, JAM1, 36, 3, &TextAttr, "_", NULL }, /* 8 */
{ 1, 0, JAM2, 12, 3, &TextAttr, "Begin Operation", NULL }, /* 9 */
{ 1, 0, JAM1, 20, 4, &TextAttr, " _", NULL }, /* 10 */
{ 1, 0, JAM1, 7, 4, &TextAttr, " _", NULL }, /* 11 */
{ 1, 0, JAM2, 12, 3, &TextAttr, " Stop ! ", NULL }, /* 12 */
};
struct IntuiText info_text[] = {
{ 1, 0, JAM1, 0,-10, &TextAttr, "Equal: Yes No",&info_text[1] }, /* 0 */
{ 1, 0, JAM1, 10, 5, &TextAttr, "Start/End: 00/79", &info_text[2] }, /* 1 */
{ 1, 0, JAM1, 10, 6, &TextAttr, "_ _", &info_text[3] }, /* 2 */
{ 1, 0, JAM1, 10, 16, &TextAttr, "Att/Err..: 00/i", &info_text[4] }, /* 3 */
{ 1, 0, JAM1, 10, 17, &TextAttr, "_ _", &info_text[5] }, /* 4 */
{ 1, 0, JAM1, 10, 27, &TextAttr, "Track....: 000", NULL }, /* 5 */
};
#define HOOK_ID 0L
#define BEGIN_ID 1L
#define LOGFILE_ID 2L
#define DRIVE0_ID 3L
#define DRIVE1_ID 4L
#define DRIVE2_ID 5L
#define DRIVE3_ID 6L
#define OVERLAY_ID 7L
#define STRING_ID 8L
char logfile_name[256], undo_buffer[256];
struct StringInfo string_info =
{ logfile_name, /* Buffer (NULL is *NOT* allowed!) */
undo_buffer, /* UndoBuffer */
0, /* BufferPos */
255, /* MaxChars */
0 /* DispPos */
};
struct Gadget string_gadget =
{ NULL, /* NextGadget */
117-4, /* LeftEdge */
103-11, /* TopEdge */
198, /* Width */
10, /* Height */
GADGHCOMP, /* Flags */
GADGIMMEDIATE| /* Activation */
RELVERIFY,
STRGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
NULL, /* GadgetText */
NULL, /* MutualExclude */
&string_info, /* SpecialInfo */
STRING_ID, /* GadgetID */
NULL /* UserData */
};
struct Gadget overlay_gadget =
{ NULL, /* NextGadget */
117-4, /* LeftEdge */
103-11, /* TopEdge */
198, /* Width */
10, /* Height */
GADGHNONE, /* Flags */
GADGIMMEDIATE, /* Activation */
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
NULL, /* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
OVERLAY_ID, /* GadgetID */
NULL /* UserData */
};
struct Gadget drive_gadget[4] =
{
{ &drive_gadget[1], /* NextGadget */
323-4, /* LeftEdge */
100-11, /* TopEdge */
44, /* Width */
14, /* Height */
GADGHCOMP, /* Flags */
RELVERIFY| /* Activation */
GADGIMMEDIATE|
TOGGLESELECT,
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
&gadget_text[3],/* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
DRIVE0_ID, /* GadgetID */
NULL /* UserData */
},
{ &drive_gadget[2], /* NextGadget */
323+48-4, /* LeftEdge */
100-11, /* TopEdge */
44, /* Width */
14, /* Height */
GADGHCOMP, /* Flags */
RELVERIFY| /* Activation */
GADGIMMEDIATE|
TOGGLESELECT,
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
&gadget_text[4],/* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
DRIVE1_ID, /* GadgetID */
NULL /* UserData */
},
{ &drive_gadget[3], /* NextGadget */
323+2*48-4, /* LeftEdge */
100-11, /* TopEdge */
44, /* Width */
14, /* Height */
GADGHCOMP, /* Flags */
RELVERIFY| /* Activation */
GADGIMMEDIATE|
TOGGLESELECT,
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
&gadget_text[5],/* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
DRIVE2_ID, /* GadgetID */
NULL /* UserData */
},
{ &string_gadget, /* NextGadget */
323+3*48-4, /* LeftEdge */
100-11, /* TopEdge */
44, /* Width */
14, /* Height */
GADGHCOMP, /* Flags */
RELVERIFY| /* Activation */
GADGIMMEDIATE|
TOGGLESELECT,
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
&gadget_text[6],/* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
DRIVE3_ID, /* GadgetID */
NULL /* UserData */
}
};
struct Gadget logfile_gadget =
{ &drive_gadget[0], /* NextGadget */
7-4, /* LeftEdge */ /* TFRAME0_X ??? */
100-11, /* TopEdge */
100, /* Width */
14, /* Height */
GADGHCOMP, /* Flags */
GADGIMMEDIATE| /* Activation */
RELVERIFY,
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
&gadget_text[2], /* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
LOGFILE_ID, /* GadgetID */
NULL /* UserData */
};
struct Gadget begin_gadget =
{ &logfile_gadget, /* NextGadget */
366-4, /* LeftEdge */ /* INFOBOX_X */
82-11, /* TopEdge */
145, /* Width */ /* INFOBOX_W */
14, /* Height */
GADGHCOMP, /* Flags */
GADGIMMEDIATE| /* Activation */
RELVERIFY,
BOOLGADGET, /* GadgetType */
NULL, /* GadgetRender */
NULL, /* SelectRender */
&gadget_text[1], /* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
BEGIN_ID, /* GadgetID */
NULL /* UserData */
};
SHORT hook_pairs[] =
{ 7,5, /*.......................*/
10,8, /*................***....*/
12,8, /*...............**......*/
18,2, /*..............**.......*/
19,2, /*......***....**........*/
17,2, /*.......***..**.........*/
11,8, /*........*****..........*/
8,5, /*.........***...........*/
9,5, /*.......................*/
11,7 /*.......................*/
};
struct Border hook_on_border =
{ 0,0, /* LeftEdge, TopEdge */
1, /* FrontPen */
0, /* BackPen */
JAM1, /* DrawMode */
10, /* Count */
hook_pairs, /* XY */
NULL /* NextBorder */
};
struct Border hook_off_border =
{ 0,0, /* LeftEdge, TopEdge */
0, /* FrontPen */
0, /* BackPen */
JAM2, /* DrawMode */
10, /* Count */
hook_pairs, /* XY */
NULL /* NextBorder */
};
struct Gadget hook_gadget =
{ &begin_gadget, /* NextGadget */
366-4, /* LeftEdge */ /* INFOBOX_X */
68-11, /* TopEdge */
26, /* Width */
11, /* Height */
GADGHIMAGE, /* Flags */
GADGIMMEDIATE| /* Activation */
RELVERIFY|
TOGGLESELECT,
BOOLGADGET, /* GadgetType */
&hook_off_border, /* GadgetRender */
&hook_on_border, /* SelectRender */
&gadget_text[0], /* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
HOOK_ID, /* GadgetID */
NULL /* UserData */
};
extern static char rcs_id[];
/*
* The NewWindow stucture's Width and Height are suitable for our graphics
* under versions of Kickstart 1.3 with BorderLeft = 4
* BorderRight = 4
* BorderTop = 11 (topaz.font,8)
* BorderBottom = 2
* If we find differences to these values after OpenWindow() we'll re-size
* our Window accordingly. (I don't know how to find it out else...)
*
* See also: open_window_stuff() in dcmp.c !
*/
struct NewWindow NewWindow =
{ 50,50, /* LeftEdge, TopEdge */
520,119, /* Width, Height */
0,1, /* DetailPen, BlockPen */
CLOSEWINDOW| /* IDCMPFlags */
GADGETDOWN|
GADGETUP|
MOUSEBUTTONS|
RAWKEY|
MENUPICK|
NEWSIZE,
WINDOWCLOSE| /* Flags */
WINDOWDEPTH|
WINDOWDRAG|
RMBTRAP| /* => No menu selection possible when coming up ! */
NOCAREREFRESH| /* ??? */
GIMMEZEROZERO| /* added on Thu Dec 10 02:42:36 1992 */
ACTIVATE,
&hook_gadget, /* FirstGadget */
NULL, /* CheckMark */
(UBYTE *)NULL, /* Title - will be added in open_window_stuff() */
NULL,NULL, /* Screen, BitMap */
0,0,0,0, /* MinWidth, MinHeight, MaxWidth, MaxHeight */
WBENCHSCREEN /* Type */
};
/* the logfile icon */
USHORT Image1Data[] = {
/* plane 0 */ 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x1000,
0x0000, 0x0000, 0x0000, 0x1000,
0x0000, 0x0000, 0x0000, 0x1000,
0x0000, 0xA801, 0x0000, 0x1000,
0x0001, 0x5401, 0x0000, 0x1000,
0x0000, 0x0001, 0x0000, 0x1000,
0x0000, 0x0001, 0xFE80, 0x1000,
0x0001, 0x5554, 0x0080, 0x1000,
0x0000, 0x0000, 0x0080, 0x1000,
0x0001, 0x5555, 0x5080, 0x1000,
0x0000, 0x0000, 0x0080, 0x1000,
0x0001, 0x5555, 0x4080, 0x1000,
0x0000, 0x0000, 0x0080, 0x1000,
0x0001, 0x5554, 0x0080, 0x1000,
0x0000, 0x0000, 0x0080, 0x1000,
0x0000, 0x0000, 0x0080, 0x1000,
0x0000, 0x0000, 0x0080, 0x1000,
0x0001, 0xFFFF, 0xFF80, 0x1000,
0x0000, 0x0000, 0x0000, 0x1000,
0x0000, 0x0000, 0x0000, 0x1000,
0x7FFF, 0xFFFF, 0xFFFF, 0xF000,
/* plane 1 */ 0xFFFF, 0xFFFF, 0xFFFF, 0xF000,
0x9249, 0x2492, 0x4924, 0x8000,
0xA492, 0x4924, 0x9249, 0x2000,
0xC927, 0xFFFF, 0x2492, 0x4000,
0x924F, 0x57FE, 0xC924, 0x8000,
0xA496, 0xABFE, 0xFA49, 0x2000,
0xC927, 0xFFFE, 0xFE92, 0x4000,
0x924F, 0xFFFE, 0x0124, 0x8000,
0xA496, 0xAAAB, 0x8149, 0x2000,
0xC927, 0xFFFF, 0xFF12, 0x4000,
0x924E, 0xAAAA, 0xAF24, 0x8000,
0xA497, 0xFFFF, 0xFF49, 0x2000,
0xC926, 0xAAAA, 0xBF12, 0x4000,
0x924F, 0xFFFF, 0xFF24, 0x8000,
0xA496, 0xAAAB, 0xFF49, 0x2000,
0xC927, 0xFFFF, 0xFF12, 0x4000,
0x924F, 0xFFFF, 0xFF24, 0x8000,
0xA497, 0xFFFF, 0xFF49, 0x2000,
0xC924, 0x0000, 0x0012, 0x4000,
0x9249, 0x2492, 0x4924, 0x8000,
0xA492, 0x4924, 0x9249, 0x2000,
0x8000, 0x0000, 0x0000, 0x0000
};
struct Image Image1 = {
0, /* LeftEdge */
0, /* TopEdge */
52, /* Width */
22, /* Height */
2, /* Depth */
&Image1Data[0], /* ImageData */
3, /* PlanePick */
0, /* PlaneOnOff */
NULL /* NextImage */
};
/* image when activated */
USHORT Image2Data[] = {
/* plane 0 */ 0xFFFF, 0xFFFF, 0xFFFF, 0xF000,
0x8000, 0x0000, 0x0000, 0x0000,
0x8000, 0x0000, 0x0000, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8000, 0xA800, 0x0080, 0x0000,
0x8001, 0x5400, 0x0080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8001, 0x5555, 0x4080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8001, 0x5555, 0x5080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8001, 0x5555, 0x4080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8001, 0x5554, 0x0080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8000, 0x0000, 0x0080, 0x0000,
0x8001, 0xFFFF, 0xFF80, 0x0000,
0x8000, 0x0000, 0x0000, 0x0000,
0x8000, 0x0000, 0x0000, 0x0000,
0x8000, 0x0000, 0x0000, 0x0000,
/* plane 1 */ 0x0000, 0x0000, 0x0000, 0x0000,
0x1249, 0x2492, 0x4924, 0x9000,
0x2492, 0x4924, 0x9249, 0x3000,
0x4927, 0xFFFF, 0xFF12, 0x5000,
0x124F, 0x57FF, 0xFF24, 0x9000,
0x2496, 0xABFF, 0xFF49, 0x3000,
0x4927, 0xFFFF, 0xFF12, 0x5000,
0x124F, 0xFFFF, 0xFF24, 0x9000,
0x2496, 0xAAAA, 0xBF49, 0x3000,
0x4927, 0xFFFF, 0xFF12, 0x5000,
0x124E, 0xAAAA, 0xAF24, 0x9000,
0x2497, 0xFFFF, 0xFF49, 0x3000,
0x4926, 0xAAAA, 0xBF12, 0x5000,
0x124F, 0xFFFF, 0xFF24, 0x9000,
0x2496, 0xAAAB, 0xFF49, 0x3000,
0x4927, 0xFFFF, 0xFF12, 0x5000,
0x124F, 0xFFFF, 0xFF24, 0x9000,
0x2497, 0xFFFF, 0xFF49, 0x3000,
0x4924, 0x0000, 0x0012, 0x5000,
0x1249, 0x2492, 0x4924, 0x9000,
0x2492, 0x4924, 0x9249, 0x3000,
0x7FFF, 0xFFFF, 0xFFFF, 0xF000,
};
struct Image Image2 = {
0, /* LeftEdge */
0, /* TopEdge */
52, /* Width */
22, /* Height */
2, /* Depth */
&Image2Data[0], /* ImageData */
3, /* PlanePick */
0, /* PlaneOnOff */
NULL /* NextImage */
};
char DefaultTool[256] = {
"c:MuchMore"
};
/* char *ToolTypes[] = { NULL }; */
/* <workbench/workbench.h> */
struct DiskObject LogIcon = {
WB_DISKMAGIC, /* do_Magic = 0xE310 */
WB_DISKVERSION, /* do_Version = 1 */
/* struct Gadget do_Gadget <intuition/intuition.h> */
(struct Gadget *)NULL, /* NextGadget */
249, /* LeftEdge */
21, /* TopEdge */
52, /* Width */
23, /* Height */
GADGIMAGE | GADGHIMAGE, /* Flags */
RELVERIFY | GADGIMMEDIATE, /* Activation */
BOOLGADGET, /* GadgetType */
(APTR) &Image1, /* GadgetRender */
(APTR) &Image2, /* SelectRender */
(struct IntuiText *)NULL, /* GadgetText */
NULL, /* MutualExclude */
NULL, /* SpecialInfo */
NULL, /* GadgetID */
NULL, /* UserData */
WBPROJECT, /* do_Type */
(char *)&DefaultTool[0], /* do_DefaultTool */
NULL, /* do_ToolTypes */
NO_ICON_POSITION, /* do_CurrentX */
NO_ICON_POSITION, /* do_CurrentY */
(struct DrawerData *)NULL, /* do_DrawerData */
(char *)NULL, /* do_ToolWindow */
(LONG)4096 /* do_StackSize */
};
/* dcmp logo */
extern unsigned short LogoData[]; /* see logo.S */
struct Image LogoImage = {
0, /* LeftEdge */
0, /* TopEdge */
158, /* Width */
33, /* Height */
2, /* Depth */
&LogoData[0], /* ImageData */
0xFF, /* PlanePick */
0x00, /* PlaneOnOff */
NULL /* NextImage */
};