Пример #1
0
static void cleanup(char *msg)
{
    if (msg) printf("colorwheel: %s\n", msg);

    if (win)
    {
        if (wheelgad) RemoveGadget(win, wheelgad);
        if (gradgad) RemoveGadget(win, gradgad);
        CloseWindow(win);
    }

    if (wheelgad) DisposeObject((Object *)wheelgad);
    if (gradgad) DisposeObject((Object *)gradgad);

    if (pen1 != -1) ReleasePen(cm, pen1);
    if (pen2 != -1) ReleasePen(cm, pen2);

    if (dri) FreeScreenDrawInfo(scr, dri);
    if (scr) UnlockPubScreen(0, scr);

    if (ColorWheelBase) CloseLibrary(ColorWheelBase);
    if (GradientSliderBase) CloseLibrary(GradientSliderBase);
    if (UtilityBase) CloseLibrary((struct Library *)UtilityBase);
    if (GfxBase) CloseLibrary((struct Library *)GfxBase);
    if (IntuitionBase) CloseLibrary((struct Library *)IntuitionBase);

    exit(0);
}
Пример #2
0
ULONG TAPEDECK_DELETE_Gadget(piClass *cl,piObject *o,Msg msg)
{
	struct Node_Gadget *ng;

	piGetAttr(o,OBJ_Node,(ULONG *)&ng);
	if(ng->ng_Gadget && ng->ng_Window) RemoveGadget(((struct Node_Window *)OBJECT_DATA(ng->ng_Window))->nw_Window,ng->ng_Gadget);
	if(ng->ng_Gadget) DisposeObject(ng->ng_Gadget);
	ng->ng_Gadget=NULL;
	return piDoSuperMethodA(cl,o,msg);
}
Пример #3
0
/***********************************************************************************
 * Procedure: uncover_window
 * Synopsis:  un(void)cover_window();
 * Purpose:   remove bool gadget from window - reactivate other gadgets
 ***********************************************************************************/
void uncover_window(void)
{
   if (cover_count == 0) /* is this the last request to remove it? */
   {
      if (cover)
      {
         RemoveGadget(global.window, cover);
         free_mem(cover, sizeof(struct Gadget));
         cover = NULL;
      }
   }
   else /* don't take it off till the fat lady sings */
      cover_count--;
}
Пример #4
0
IPTR Prop__OM_DISPOSE(struct IClass *cl, Object *obj, Msg msg)
{
    struct Prop_DATA *data = INST_DATA(cl, obj);

    if (data->prop_object && !data->usewinborder) {
        RemoveGadget(_window(obj), (struct Gadget *) data->prop_object);
        DisposeObject(data->prop_object);
    }

    DisposeImageContainer(data->buffer);
    DisposeImageContainer(data->temp);
    if (data->mapbuffer != NULL) FreeBitMap(data->mapbuffer);
    if (data->maptemp != NULL) FreeBitMap(data->maptemp);
    if (data->tmprp != NULL) FreeRastPort(data->tmprp);

    data->buffer = NULL;
    data->temp = NULL;
    data->mapbuffer = NULL;
    data->maptemp = NULL;
    data->tmprp = NULL;

    return DoSuperMethodA(cl, obj, msg);
}