xrdb.c (6319B)
1 void 2 load_xresources() 3 { 4 Display *display; 5 char * resm; 6 XrmDatabase xrdb; 7 char *type; 8 XrmValue value; 9 10 display = XOpenDisplay(NULL); 11 12 if (display != NULL) { 13 resm = XResourceManagerString(display); 14 15 if (resm != NULL) { 16 xrdb = XrmGetStringDatabase(resm); 17 18 if (xrdb != NULL) { 19 XRDB_LOAD_COLOR("dwm.normfgcolor", normfgcolor); 20 XRDB_LOAD_COLOR("dwm.normbgcolor", normbgcolor); 21 XRDB_LOAD_COLOR("dwm.normbordercolor", normbordercolor); 22 XRDB_LOAD_COLOR("dwm.normfloatcolor", normfloatcolor); 23 XRDB_LOAD_COLOR("dwm.selfgcolor", selfgcolor); 24 XRDB_LOAD_COLOR("dwm.selbgcolor", selbgcolor); 25 XRDB_LOAD_COLOR("dwm.selbordercolor", selbordercolor); 26 XRDB_LOAD_COLOR("dwm.selfloatcolor", selfloatcolor); 27 XRDB_LOAD_COLOR("dwm.titlenormfgcolor", titlenormfgcolor); 28 XRDB_LOAD_COLOR("dwm.titlenormbgcolor", titlenormbgcolor); 29 XRDB_LOAD_COLOR("dwm.titlenormbordercolor", titlenormbordercolor); 30 XRDB_LOAD_COLOR("dwm.titlenormfloatcolor", titlenormfloatcolor); 31 XRDB_LOAD_COLOR("dwm.titleselfgcolor", titleselfgcolor); 32 XRDB_LOAD_COLOR("dwm.titleselbgcolor", titleselbgcolor); 33 XRDB_LOAD_COLOR("dwm.titleselbordercolor", titleselbordercolor); 34 XRDB_LOAD_COLOR("dwm.titleselfloatcolor", titleselfloatcolor); 35 XRDB_LOAD_COLOR("dwm.tagsnormfgcolor", tagsnormfgcolor); 36 XRDB_LOAD_COLOR("dwm.tagsnormbgcolor", tagsnormbgcolor); 37 XRDB_LOAD_COLOR("dwm.tagsnormbordercolor", tagsnormbordercolor); 38 XRDB_LOAD_COLOR("dwm.tagsnormfloatcolor", tagsnormfloatcolor); 39 XRDB_LOAD_COLOR("dwm.tagsselfgcolor", tagsselfgcolor); 40 XRDB_LOAD_COLOR("dwm.tagsselbgcolor", tagsselbgcolor); 41 XRDB_LOAD_COLOR("dwm.tagsselbordercolor", tagsselbordercolor); 42 XRDB_LOAD_COLOR("dwm.tagsselfloatcolor", tagsselfloatcolor); 43 XRDB_LOAD_COLOR("dwm.hidnormfgcolor", hidnormfgcolor); 44 XRDB_LOAD_COLOR("dwm.hidnormbgcolor", hidnormbgcolor); 45 XRDB_LOAD_COLOR("dwm.hidselfgcolor", hidselfgcolor); 46 XRDB_LOAD_COLOR("dwm.hidselbgcolor", hidselbgcolor); 47 XRDB_LOAD_COLOR("dwm.urgfgcolor", urgfgcolor); 48 XRDB_LOAD_COLOR("dwm.urgbgcolor", urgbgcolor); 49 XRDB_LOAD_COLOR("dwm.urgbordercolor", urgbordercolor); 50 XRDB_LOAD_COLOR("dwm.urgfloatcolor", urgfloatcolor); 51 #if BAR_LTSYMBOL_SCHEME_PATCH 52 XRDB_LOAD_COLOR("dwm.ltsymbolfgcolor", ltsymbolfgcolor); 53 XRDB_LOAD_COLOR("dwm.ltsymbolbgcolor", ltsymbolbgcolor); 54 #endif // BAR_LTSYMBOL_SCHEME_PATCH 55 #if RENAMED_SCRATCHPADS_PATCH 56 XRDB_LOAD_COLOR("dwm.scratchselfgcolor", scratchselfgcolor); 57 XRDB_LOAD_COLOR("dwm.scratchselbgcolor", scratchselbgcolor); 58 XRDB_LOAD_COLOR("dwm.scratchselbordercolor", scratchselbordercolor); 59 XRDB_LOAD_COLOR("dwm.scratchselfloatcolor", scratchselfloatcolor); 60 XRDB_LOAD_COLOR("dwm.scratchnormfgcolor", scratchnormfgcolor); 61 XRDB_LOAD_COLOR("dwm.scratchnormbgcolor", scratchnormbgcolor); 62 XRDB_LOAD_COLOR("dwm.scratchnormbordercolor", scratchnormbordercolor); 63 XRDB_LOAD_COLOR("dwm.scratchnormfloatcolor", scratchnormfloatcolor); 64 #endif // RENAMED_SCRATCHPADS_PATCH 65 #if BAR_FLEXWINTITLE_PATCH 66 XRDB_LOAD_COLOR("dwm.normTTBbgcolor", normTTBbgcolor); 67 XRDB_LOAD_COLOR("dwm.normLTRbgcolor", normLTRbgcolor); 68 XRDB_LOAD_COLOR("dwm.normMONObgcolor", normMONObgcolor); 69 XRDB_LOAD_COLOR("dwm.normGRIDbgcolor", normGRIDbgcolor); 70 XRDB_LOAD_COLOR("dwm.normGRD1bgcolor", normGRD1bgcolor); 71 XRDB_LOAD_COLOR("dwm.normGRD2bgcolor", normGRD2bgcolor); 72 XRDB_LOAD_COLOR("dwm.normGRDMbgcolor", normGRDMbgcolor); 73 XRDB_LOAD_COLOR("dwm.normHGRDbgcolor", normHGRDbgcolor); 74 XRDB_LOAD_COLOR("dwm.normDWDLbgcolor", normDWDLbgcolor); 75 XRDB_LOAD_COLOR("dwm.normSPRLbgcolor", normSPRLbgcolor); 76 XRDB_LOAD_COLOR("dwm.normfloatbgcolor", normfloatbgcolor); 77 XRDB_LOAD_COLOR("dwm.actTTBbgcolor", actTTBbgcolor); 78 XRDB_LOAD_COLOR("dwm.actLTRbgcolor", actLTRbgcolor); 79 XRDB_LOAD_COLOR("dwm.actMONObgcolor", actMONObgcolor); 80 XRDB_LOAD_COLOR("dwm.actGRIDbgcolor", actGRIDbgcolor); 81 XRDB_LOAD_COLOR("dwm.actGRD1bgcolor", actGRD1bgcolor); 82 XRDB_LOAD_COLOR("dwm.actGRD2bgcolor", actGRD2bgcolor); 83 XRDB_LOAD_COLOR("dwm.actGRDMbgcolor", actGRDMbgcolor); 84 XRDB_LOAD_COLOR("dwm.actHGRDbgcolor", actHGRDbgcolor); 85 XRDB_LOAD_COLOR("dwm.actDWDLbgcolor", actDWDLbgcolor); 86 XRDB_LOAD_COLOR("dwm.actSPRLbgcolor", actSPRLbgcolor); 87 XRDB_LOAD_COLOR("dwm.actfloatbgcolor", actfloatbgcolor); 88 XRDB_LOAD_COLOR("dwm.selTTBbgcolor", selTTBbgcolor); 89 XRDB_LOAD_COLOR("dwm.selLTRbgcolor", selLTRbgcolor); 90 XRDB_LOAD_COLOR("dwm.selMONObgcolor", selMONObgcolor); 91 XRDB_LOAD_COLOR("dwm.selGRIDbgcolor", selGRIDbgcolor); 92 XRDB_LOAD_COLOR("dwm.selGRD1bgcolor", selGRD1bgcolor); 93 XRDB_LOAD_COLOR("dwm.selGRD2bgcolor", selGRD2bgcolor); 94 XRDB_LOAD_COLOR("dwm.selGRDMbgcolor", selGRDMbgcolor); 95 XRDB_LOAD_COLOR("dwm.selHGRDbgcolor", selHGRDbgcolor); 96 XRDB_LOAD_COLOR("dwm.selDWDLbgcolor", selDWDLbgcolor); 97 XRDB_LOAD_COLOR("dwm.selSPRLbgcolor", selSPRLbgcolor); 98 XRDB_LOAD_COLOR("dwm.selfloatbgcolor", selfloatbgcolor); 99 #endif // BAR_FLEXWINTITLE_PATCH 100 #if BAR_STATUS2D_XRDB_TERMCOLORS_PATCH && BAR_STATUS2D_PATCH 101 XRDB_LOAD_COLOR("color0", termcol0); 102 XRDB_LOAD_COLOR("color1", termcol1); 103 XRDB_LOAD_COLOR("color2", termcol2); 104 XRDB_LOAD_COLOR("color3", termcol3); 105 XRDB_LOAD_COLOR("color4", termcol4); 106 XRDB_LOAD_COLOR("color5", termcol5); 107 XRDB_LOAD_COLOR("color6", termcol6); 108 XRDB_LOAD_COLOR("color7", termcol7); 109 XRDB_LOAD_COLOR("color8", termcol8); 110 XRDB_LOAD_COLOR("color9", termcol9); 111 XRDB_LOAD_COLOR("color10", termcol10); 112 XRDB_LOAD_COLOR("color11", termcol11); 113 XRDB_LOAD_COLOR("color12", termcol12); 114 XRDB_LOAD_COLOR("color13", termcol13); 115 XRDB_LOAD_COLOR("color14", termcol14); 116 XRDB_LOAD_COLOR("color15", termcol15); 117 #endif // BAR_STATUS2D_XRDB_TERMCOLORS_PATCH 118 119 XrmDestroyDatabase(xrdb); 120 } 121 } 122 } 123 124 XCloseDisplay(display); 125 } 126 127 void 128 xrdb(const Arg *arg) 129 { 130 load_xresources(); 131 int i; 132 for (i = 0; i < LENGTH(colors); i++) 133 scheme[i] = drw_scm_create(drw, colors[i], 134 #if BAR_ALPHA_PATCH 135 alphas[i], 136 #endif // BAR_ALPHA_PATCH 137 ColCount 138 ); 139 #if BAR_SYSTRAY_PATCH && !BAR_ALPHA_PATCH 140 if (systray) { 141 XMoveWindow(dpy, systray->win, -32000, -32000); 142 } 143 #endif // BAR_SYSTRAY_PATCH 144 arrange(NULL); 145 focus(NULL); 146 }