home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1997 #3
/
amigamamagazinepolishissue03-1
/
ma_1995
/
07
/
ami45a
< prev
next >
Wrap
Text File
|
1997-04-15
|
3KB
|
218 lines
/* Listing #5 */
#include <intuition/intuition.h>
#include <proto/exec.h>
#include <proto/intuition.h>
int main(int argc, char *argv[])
{
struct IntuitionBase *IntuitionBase;
struct Window *window;
struct IntuiMessage *msg;
char koniec;
check_os(OS_20);
if (IntuitionBase=(struct IntuitionBase*)OpenLibrary("intuition.library", 37))
{
/* Udaîo sië otworzyê bibliotekë */
if (window=OpenWindowTags(0,
WA_Left, 100,
WA_Top, 100,
WA_Width, 250,
WA_Height, 50,
WA_Flags, WFLG_DRAGBAR | WFLG_CLOSEGADGET | WFLG_DEPTHGADGET | WFLG_ACTIVATE | WFLG_RMBTRAP,
WA_IDCMP, IDCMP_CLOSEWINDOW | IDCMP_DISKINSERTED | IDCMP_DISKREMOVED | IDCMP_MOUSEBUTTONS,
TAG_END))
{
for (koniec=0; !koniec;)
{
WaitPort(window->UserPort);
if (msg=(struct IntuiMessage*)GetMsg(window->UserPort))
{
ULONG Clas=msg->Class;
UWORD Code=msg->Code;
ReplyMsg((struct Message*)msg);
switch (Clas)
{
case IDCMP_CLOSEWINDOW:
koniec=1;
break;
case IDCMP_DISKINSERTED:
DisplayBeep(0);
SetWindowTitles(window, "Dziëkujë za dysk!", "Smaczny dysk stwierdzono w stacji.");
break;
case IDCMP_DISKREMOVED:
SetWindowTitles(window, 0, 0);
if (!(DisplayAlert(RECOVERY_ALERT,
"\0\270\14Oddaj mój dysk bezczelny uûytkowniku!\0\1"
"\0\35\027Lewy - Tak, juû oddam.\0\1"
"\1\300\027Prawy - idú precz !!!\0\0", 35)))
{
struct EasyStruct easyreq=
{
sizeof(struct EasyStruct),
0,
"Ûâdanie",
"Powtarzam: oddaj dysk.\n"
"Juû ûâdam dysku po raz %ld",
"Tak oczywiôcie|Nie dam!"
};
ULONG iflags=IDCMP_DISKINSERTED;
ULONG licz=1;
while (!EasyRequest(window, &easyreq, &iflags, licz))
licz++;
break;
}
SetWindowTitles(window, "Oddaj mój dysk!", "Ty jeszcze poûaîujesz.");
break;
case IDCMP_MOUSEBUTTONS:
{
char *tekst;
switch (Code)
{
case SELECTDOWN:
tekst="Lewy - wciôniëty";
break;
case SELECTUP:
tekst="Lewy - puszczony";
break;
case MENUDOWN:
tekst="Prawy - wciôniëty";
break;
case MENUUP:
tekst="Prawy - puszczony";
break;
case MIDDLEDOWN:
tekst="Ôrodkowy - wciôniëty";
break;
case MIDDLEUP:
tekst="Ôrodkowy - puszczony";
break;
}
SetWindowTitles(window, tekst, (STRPTR)-1);
}
break;
}
}
}
CloseWindow(window);
}
CloseLibrary((struct Library*)IntuitionBase);
}
return 0;
}