Diff for /rpl/src/encart.c between versions 1.63 and 1.74

version 1.63, 2017/08/23 20:29:29 version 1.74, 2020/01/10 11:15:42
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.28    RPL/2 (R) version 4.1.32
   Copyright (C) 1989-2017 Dr. BERTRAND Joël    Copyright (C) 1989-2020 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 40  valeur_erreur(logical1 nouvelle_valeur) Line 40  valeur_erreur(logical1 nouvelle_valeur)
     return(registre);      return(registre);
 }  }
   
   #ifdef MOTIF_SUPPORT
 static int  static int
 _XlibErrorHandler(Display *display, XErrorEvent *event)  _XlibErrorHandler(Display *display, XErrorEvent *event)
 {  {
Line 53  _XtWarningHandler(String message) Line 54  _XtWarningHandler(String message)
 {  {
     return;      return;
 }  }
   #endif
   
 void  void
 encart(struct_processus *s_etat_processus, integer8 duree)  encart(struct_processus *s_etat_processus, integer8 duree)
Line 84  encart(struct_processus *s_etat_processu Line 86  encart(struct_processus *s_etat_processu
     int                 y_max;      int                 y_max;
     int                 y_min;      int                 y_min;
   
     Pixel               couleur_arriere_plan;  
     Pixel               couleur_avant_plan;  
   
     Pixmap              pixmap_rpl;      Pixmap              pixmap_rpl;
     Pixmap              pixmap_rpl_masque;      Pixmap              pixmap_rpl_masque;
   
     Position            hauteur_popup;      Position            hauteur_popup;
     Position            largeur_popup;      Position            largeur_popup;
   
       Screen              *screen;
   
     String              *argv;      String              *argv;
   
     struct timespec     attente;      struct timespec     attente;
Line 147  encart(struct_processus *s_etat_processu Line 148  encart(struct_processus *s_etat_processu
                 xmFormWidgetClass, objet_principal,                  xmFormWidgetClass, objet_principal,
                 NULL);                  NULL);
   
           XtVaGetValues(objet_principal,
                   XmNmwmDecorations, &decor,
                   XmNmwmFunctions, &fonctions,
                   NULL);
   
           decor &= ~(MWM_DECOR_ALL + MWM_DECOR_MAXIMIZE + MWM_DECOR_RESIZEH
                   + MWM_DECOR_TITLE + MWM_DECOR_MENU + MWM_DECOR_BORDER);
           fonctions &= ~(MWM_FUNC_ALL + MWM_FUNC_RESIZE + MWM_FUNC_CLOSE
                   + MWM_FUNC_MINIMIZE + MWM_FUNC_MAXIMIZE);
   
           XtVaSetValues(objet_principal,
                   XmNmwmDecorations, decor,
                   XmNmwmFunctions, fonctions,
                   NULL);
   
         cadre = XtVaCreateManagedWidget("rplExternalFrame",          cadre = XtVaCreateManagedWidget("rplExternalFrame",
                 xmFrameWidgetClass, form,                  xmFrameWidgetClass, form,
                 XmNtopAttachment, XmATTACH_FORM,                  XmNtopAttachment, XmATTACH_FORM,
Line 161  encart(struct_processus *s_etat_processu Line 177  encart(struct_processus *s_etat_processu
                 XmNmarginHeight, 5,                  XmNmarginHeight, 5,
                 NULL);                  NULL);
                   
         XtVaGetValues(form,  
                 XmNforeground, &couleur_avant_plan,  
                 XmNbackground, &couleur_arriere_plan,  
                 NULL);  
   
         if ((erreur = XpmCreatePixmapFromData(XtDisplay(form),          if ((erreur = XpmCreatePixmapFromData(XtDisplay(form),
                 DefaultRootWindow(XtDisplay(form)), rpl_xpm,                  DefaultRootWindow(XtDisplay(form)), rpl_xpm,
                 &pixmap_rpl, &pixmap_rpl_masque, NULL)) != 0)                  &pixmap_rpl, &pixmap_rpl_masque, NULL)) != XpmSuccess)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
             return;              return;
Line 180  encart(struct_processus *s_etat_processu Line 191  encart(struct_processus *s_etat_processu
                 XmNlabelPixmap, pixmap_rpl,                  XmNlabelPixmap, pixmap_rpl,
                 NULL);                  NULL);
   
         XtVaGetValues(objet_principal,  
                 XmNmwmDecorations, &decor,  
                 XmNmwmFunctions, &fonctions,  
                 NULL);  
   
         decor &= ~(MWM_DECOR_ALL + MWM_DECOR_MAXIMIZE + MWM_DECOR_RESIZEH  
                 + MWM_DECOR_TITLE + MWM_DECOR_MENU + MWM_DECOR_BORDER);  
         fonctions &= ~(MWM_FUNC_ALL + MWM_FUNC_RESIZE + MWM_FUNC_CLOSE  
                 + MWM_FUNC_MINIMIZE + MWM_FUNC_MAXIMIZE);  
   
         XtVaSetValues(objet_principal,  
                 XmNmwmDecorations, decor,  
                 XmNmwmFunctions, fonctions,  
                 NULL);  
   
         if (XineramaIsActive(display) == True)          if (XineramaIsActive(display) == True)
         {          {
             // Récupération de la localisation des différents écrans              // Récupération de la localisation des différents écrans
Line 348  encart(struct_processus *s_etat_processu Line 344  encart(struct_processus *s_etat_processu
   
         XtUnrealizeWidget(objet_principal);          XtUnrealizeWidget(objet_principal);
   
         XmDestroyPixmap(XtScreen(form), pixmap_rpl);  
         XmDestroyPixmap(XtScreen(form), pixmap_rpl_masque);  
   
         XtDestroyWidget(pixmap);  
         XtDestroyWidget(cadre);  
         XtDestroyWidget(form);  
         XtDestroyWidget(objet_principal);  
   
         while(XtAppPending(app) == 0)          while(XtAppPending(app) == 0)
         {          {
             nanosleep(&attente, NULL);              nanosleep(&attente, NULL);
Line 368  encart(struct_processus *s_etat_processu Line 356  encart(struct_processus *s_etat_processu
             nanosleep(&attente, NULL);              nanosleep(&attente, NULL);
         }          }
   
         XCloseDisplay(display);          screen = XtScreen(form);
   
           XtDestroyWidget(pixmap);
           XtDestroyWidget(cadre);
           XtDestroyWidget(form);
           XtDestroyWidget(objet_principal);
   
           XmDestroyPixmap(screen, pixmap_rpl);
           XmDestroyPixmap(screen, pixmap_rpl_masque);
   
         XtAppSetWarningHandler(app, old_message_handler);          XtAppSetWarningHandler(app, old_message_handler);
         XtDestroyApplicationContext(app);          XtDestroyApplicationContext(app);
           XCloseDisplay(display);
     }      }
 #   endif  #   endif
   

Removed from v.1.63  
changed lines
  Added in v.1.74


CVSweb interface <joel.bertrand@systella.fr>