1
0
mirror of https://github.com/gryf/wmaker.git synced 2026-02-06 08:15:56 +01:00

Update for 0.51.2-pre2

This commit is contained in:
dan
1999-03-09 14:58:01 +00:00
parent 60980735fe
commit 088c0ac230
108 changed files with 2998 additions and 2770 deletions

View File

@@ -1,8 +1,19 @@
changes since wmaker 0.51.1:
...........................
- wusergnusteppath() will return a statically allocated string now.
DO NOT FREE IT ANYMORE!!
changes since wmaker 0.51.0:
............................
- applied c++ compat header patch from Martynas Kunigelis <mkunigelis@alna.lt>
- added WMSetTextFieldBeveled()
- removed W_GC() : use WMColorGC() instead
- added WMCreatePixmap()
- changed WMSetTextFieldEnabled() to WMSetTextFieldEditable()
changes since wmaker 0.50.1:
............................

Binary file not shown.

Binary file not shown.

View File

@@ -25,65 +25,65 @@ static char * Images_xpm[] = {
"/ c #424960",
"( c #272A35",
"_ c #0E1015",
": c #8295A0",
"< c #9E7576",
"[ c #323230",
"} c #56504B",
"| c #2C2119",
"1 c #8D9294",
"2 c #D3DAE0",
"3 c #C1C9D0",
"4 c #BFC2C4",
"5 c #070C1B",
"6 c #29354E",
"7 c #4E5A77",
"8 c #66718F",
"9 c #788094",
"0 c #828899",
"a c #848A9E",
"b c #7B8297",
"c c #676D84",
"d c #51576E",
"e c #3B4151",
"f c #1C1C20",
"g c #FFFFFF",
"h c #F8F8F8",
"i c #F1F1F1",
"j c #EAEAEA",
"k c #E4E4E4",
"l c #DDDDDD",
"m c #D6D6D6",
"n c #D0D0D0",
"o c #C9C9C9",
"p c #C2C2C2",
"q c #BBBBBB",
"r c #B5B5B5",
"s c #AEAEAE",
"t c #A7A7A7",
"u c #A1A1A1",
"v c #9A9A9A",
"w c #939393",
"x c #8C8C8C",
"y c #868686",
"z c #7F7F7F",
"A c #787878",
"B c #727272",
"C c #6B6B6B",
"D c #646464",
"E c #5D5D5D",
"F c #575757",
"G c #505050",
"H c #494949",
"I c #434343",
"J c #3C3C3C",
"K c #353535",
"L c #2E2E2E",
"M c #282828",
"N c #212121",
"O c #1A1A1A",
"P c #141414",
"Q c #0D0D0D",
"R c #060606",
": c #FFFFFF",
"< c #F8F8F8",
"[ c #F1F1F1",
"} c #EAEAEA",
"| c #E4E4E4",
"1 c #DDDDDD",
"2 c #D6D6D6",
"3 c #D0D0D0",
"4 c #C9C9C9",
"5 c #C2C2C2",
"6 c #BBBBBB",
"7 c #B5B5B5",
"8 c #AEAEAE",
"9 c #A7A7A7",
"0 c #A1A1A1",
"a c #9A9A9A",
"b c #939393",
"c c #8C8C8C",
"d c #868686",
"e c #7F7F7F",
"f c #787878",
"g c #727272",
"h c #6B6B6B",
"i c #646464",
"j c #5D5D5D",
"k c #575757",
"l c #505050",
"m c #494949",
"n c #434343",
"o c #3C3C3C",
"p c #353535",
"q c #2E2E2E",
"r c #282828",
"s c #212121",
"t c #1A1A1A",
"u c #141414",
"v c #0D0D0D",
"w c #060606",
"x c #8295A0",
"y c #9E7576",
"z c #323230",
"A c #56504B",
"B c #2C2119",
"C c #8D9294",
"D c #D3DAE0",
"E c #C1C9D0",
"F c #BFC2C4",
"G c #070C1B",
"H c #29354E",
"I c #4E5A77",
"J c #66718F",
"K c #788094",
"L c #828899",
"M c #848A9E",
"N c #7B8297",
"O c #676D84",
"P c #51576E",
"Q c #3B4151",
"R c #1C1C20",
"S c #484848",
"T c #20201E",
"U c #634A48",
@@ -336,49 +336,49 @@ static char * Images_xpm[] = {
"r@ c #576789",
"s@ c #546484",
"t@ c #556788",
"u@ c #76787A",
"v@ c #413E38",
"w@ c #C6CBCD",
"x@ c #1F1B17",
"y@ c #A2A2A0",
"z@ c #E7ECF0",
"A@ c #F1F5F8",
"B@ c #BDC0C2",
"C@ c #373739",
"D@ c #47516B",
"E@ c #48546E",
"F@ c #485470",
"G@ c #495774",
"H@ c #4A5879",
"I@ c #4A5C7D",
"J@ c #0F131B",
"K@ c #7F8592",
"L@ c #CDD5E4",
"M@ c #D9E0F1",
"N@ c #CBD5EB",
"O@ c #A4AECE",
"P@ c #808BB3",
"Q@ c #707891",
"R@ c #6B7287",
"S@ c #6F778C",
"T@ c #C9D3E0",
"U@ c #C0CBDD",
"V@ c #A9BAD7",
"W@ c #A8B9D7",
"X@ c #90A4C7",
"Y@ c #141920",
"Z@ c #1B2531",
"`@ c #475F7E",
" # c #546C90",
".# c #6982A0",
"+# c #C0CFDC",
"@# c #8B9FB7",
"## c #56688A",
"$# c #515D7B",
"%# c #515B79",
"&# c #515B76",
"*# c #525D79",
"=# c #333333",
"u@ c #333333",
"v@ c #76787A",
"w@ c #413E38",
"x@ c #C6CBCD",
"y@ c #1F1B17",
"z@ c #A2A2A0",
"A@ c #E7ECF0",
"B@ c #F1F5F8",
"C@ c #BDC0C2",
"D@ c #373739",
"E@ c #47516B",
"F@ c #48546E",
"G@ c #485470",
"H@ c #495774",
"I@ c #4A5879",
"J@ c #4A5C7D",
"K@ c #0F131B",
"L@ c #7F8592",
"M@ c #CDD5E4",
"N@ c #D9E0F1",
"O@ c #CBD5EB",
"P@ c #A4AECE",
"Q@ c #808BB3",
"R@ c #707891",
"S@ c #6B7287",
"T@ c #6F778C",
"U@ c #C9D3E0",
"V@ c #C0CBDD",
"W@ c #A9BAD7",
"X@ c #A8B9D7",
"Y@ c #90A4C7",
"Z@ c #141920",
"`@ c #1B2531",
" # c #475F7E",
".# c #546C90",
"+# c #6982A0",
"@# c #C0CFDC",
"## c #8B9FB7",
"$# c #56688A",
"%# c #515D7B",
"&# c #515B79",
"*# c #515B76",
"=# c #525D79",
"-# c #9A9B9B",
";# c #BEC2C5",
"># c #959A9E",
@@ -2088,24 +2088,24 @@ static char * Images_xpm[] = {
" ",
" ",
" . + @ # $ % $ & ",
" * = - ; > , ' ) ! ~ { ] ^ / ( _ ",
" : < [ } | 1 2 3 3 > 4 5 6 7 8 9 0 a b c d e f @ g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R ",
" S T U V W X Y 2 3 Z > Z Z ` ...+.@.#.$.%.&.*.^ =.-.;.>. g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R ",
" ,.'.).!.~.{.].^./.2 > > > > > 2 (. _.:.<._.[.}.|.1.2.3.4.5.6.7.8.9.0.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r. g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R ",
" s.+ t.u.v.w.x.y.z.A.B.C.D.E.F.G.2 ; H. I.J.K.L.<.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.`. +.+++@+#+$+m.m.%+&+*+=+-+;+r. g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R ",
" >+,+'+C.)+4 4 !+; /.~+{+]+^+/+(+_+:+<+[+ }+|+|+1+2+3+4+5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+ g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R ",
" w+x+; y+3 z+A+B+> 3 C+D+E+/.F+G+^.3 H+I+ J+K+L+M+N+L.O+P+Q+R+S+T+U+V+W+X+Y+Z+`+ @.@+@@@#@$@%@&@*@=@-@;@>@,@'@)@ ",
" !@~@C+{@^+]@^@B+2 2 ^./@(@/._@:@^.Z <@L [@}@|@1@2@N+3@4@5@6@7@8@9@0@a@b@c@d@e@f@g@h@i@j@k@l@=+m@n@o@p@q@r@s@t@ g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g ",
" u@v@w@x@^.A+y@B+z@z@+ z ~+A@/@z.z@/.B@C@ 1@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@W.Y@Z@`@ #.#+#@###$#%#&#*# g z z z z =# g z z z z =# g z z z z =# g z z z z =# g z z z z =# ",
" u@-#^.;#; > z@>#,#'#D+)#y+!#,#~#{#'#]#^# 1@/#(#_#_#H@:#<#[#}#|#1#2#3#4#5#6#7#8#9#9#0#a#b#c#d#e#f#g#h#i#=.j#k#l# g z z z z =# g z z z z =# g z z z z =# g z z z z =# g z z z z =# ",
" !@/././.2 2 /.m#w@n#-#z+z o#p#q#r#s#n#t#u# v#w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#O#P#Q#R#S#T#U#V#W#X#Y#Z#`# $l# g z z z z =# g z z z z =# g z z z z =# g z z z z =# g z z z z =# ",
".$+$@$n##$2 $$;#%$&$x@z D+*$F+&$=$-$;$>$z ,$'$ )$!$~${$]$^$/$($_$:$<$[$}$|$1$2$3$4$5$6$7$8$9$0$a$b$c$d$e$f$g$h$i$j$k$ g =#=#=#=#=# g =#=#=#=#=# g =#=#=#=#=# g =#=#=#=#=# g =#=#=#=#=# ",
" z@l$(@m$/.D.C+n$o$'#$$'#p$q$r$/@s$t$u$t$/@'$ v$w$x$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$7$O$P$Q$R$S$T$U$V$W$X$Y$Z$`$ %.% ",
" A@q$+%@%/.;$C+#%$%%%$$'#t$&%*%=%-%;%>%s$u#I+ ,%'%)%!%~%{%]%^%/%(%_%:%<%[%}%|%1%2%3%4%5%6%7%8%9%0%a%X$b%c%d%e%f%g%h% g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g ",
" z@E.4 i%2 j%k%#%l%m%n%o%p%q%r%s%t%u%v%w%u%x% y%z%A%)%!%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%`% &.&+&@& g z z z z =# g z z z z =# g z z z z =# g z z z z =# g z z z z =# ",
" z $$n##&, $&%&&&)+(@*&z z /+u$=&B+>%-&s%;&I+ >&,&z%'&)&!&~&{&]&^&/&(&_&:&<&[&}&|&1&2&3&4&5&6&7&8&9&`$0&a&b&c&d&e&f& g z z z z =# g z z z z =# g z z z z =# g z z z z =# g z z z z =# ",
" g&h&i&{@j&k&r$r$*%r$t$l&,#m&p$t.@%F+n&#$o&'$ p&q&r&s&'&t&u&v&w&x&y&z&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W& g z z z z =# g z z z z =# g z z z z =# g z z z z =# g z z z z =# ",
" I+'$X&Y&Z&`& *.*t$+*t$.*q$q$q$/@q$q$@*'$ #*$*%*&***P&=*O&-*;*>*,*'*)*!*~*{*]*^*/*(*_*:*<*[*}*|*1*2*3*4*5*6*7*8* g =#=#=#=#=# g =#=#=#=#=# g =#=#=#=#=# g =#=#=#=#=# g =#=#=#=#=# ",
" * = - ; > , ' ) ! ~ { ] ^ / ( _ : < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d e f g h i j k l m n o p q r s t u v w ",
" x y z A B C D E E > F G H I J K L M N O P Q R @ : < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d e f g h i j k l m n o p q r s t u v w ",
" S T U V W X Y D E Z > Z Z ` ...+.@.#.$.%.&.*.^ =.-.;.>. : < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d e f g h i j k l m n o p q r s t u v w ",
" ,.'.).!.~.{.].^./.D > > > > > D (. _.:.<._.[.}.|.1.2.3.4.5.6.7.8.9.0.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r. : < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d e f g h i j k l m n o p q r s t u v w ",
" s.+ t.u.v.w.x.y.z.A.B.C.D.E.F.G.D ; H. I.J.K.L.<.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.`. +.+++@+#+$+m.m.%+&+*+=+-+;+r. : < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d e f g h i j k l m n o p q r s t u v w ",
" >+,+'+C.)+F F !+; /.~+{+]+^+/+(+_+:+<+[+ }+|+|+1+2+3+4+5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+ ",
" w+x+; y+E z+A+B+> E C+D+E+/.F+G+^.E H+I+ J+K+L+M+N+L.O+P+Q+R+S+T+U+V+W+X+Y+Z+`+ @.@+@@@#@$@%@&@*@=@-@;@>@,@'@)@ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : ",
" !@~@C+{@^+]@^@B+D D ^./@(@/._@:@^.Z <@q [@}@|@1@2@N+3@4@5@6@7@8@9@0@a@b@c@d@e@f@g@h@i@j@k@l@=+m@n@o@p@q@r@s@t@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ ",
" v@w@x@y@^.A+z@B+A@A@+ e ~+B@/@z.A@/.C@D@ 1@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@W.Z@`@ #.#+#@###$#%#&#*#=# : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ ",
" v@-#^.;#; > A@>#,#'#D+)#y+!#,#~#{#'#]#^# 1@/#(#_#_#I@:#<#[#}#|#1#2#3#4#5#6#7#8#9#9#0#a#b#c#d#e#f#g#h#i#=.j#k#l# : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ ",
" !@/././.D D /.m#x@n#-#z+e o#p#q#r#s#n#t#u# v#w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#O#P#Q#R#S#T#U#V#W#X#Y#Z#`# $l# : u@u@u@u@u@ : u@u@u@u@u@ : u@u@u@u@u@ : u@u@u@u@u@ : u@u@u@u@u@ ",
".$+$@$n##$D $$;#%$&$y@e D+*$F+&$=$-$;$>$e ,$'$ )$!$~${$]$^$/$($_$:$<$[$}$|$1$2$3$4$5$6$7$8$9$0$a$b$c$d$e$f$g$h$i$j$k$ ",
" A@l$(@m$/.D.C+n$o$'#$$'#p$q$r$/@s$t$u$t$/@'$ v$w$x$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$7$O$P$Q$R$S$T$U$V$W$X$Y$Z$`$ %.% : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : ",
" B@q$+%@%/.;$C+#%$%%%$$'#t$&%*%=%-%;%>%s$u#I+ ,%'%)%!%~%{%]%^%/%(%_%:%<%[%}%|%1%2%3%4%5%6%7%8%9%0%a%X$b%c%d%e%f%g%h% : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ ",
" A@E.F i%D j%k%#%l%m%n%o%p%q%r%s%t%u%v%w%u%x% y%z%A%)%!%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%`% &.&+&@& : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ ",
" e $$n##&, $&%&&&)+(@*&e e /+u$=&B+>%-&s%;&I+ >&,&z%'&)&!&~&{&]&^&/&(&_&:&<&[&}&|&1&2&3&4&5&6&7&8&9&`$0&a&b&c&d&e&f& : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ : e e e e u@ ",
" g&h&i&{@j&k&r$r$*%r$t$l&,#m&p$t.@%F+n&#$o&'$ p&q&r&s&'&t&u&v&w&x&y&z&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W& : u@u@u@u@u@ : u@u@u@u@u@ : u@u@u@u@u@ : u@u@u@u@u@ : u@u@u@u@u@ ",
" I+'$X&Y&Z&`& *.*t$+*t$.*q$q$q$/@q$q$@*'$ #*$*%*&***P&=*O&-*;*>*,*'*)*!*~*{*]*^*/*(*_*:*<*[*}*|*1*2*3*4*5*6*7*8* ",
" x%I+'$x%x%x%x%'$'$'$'$'$x%X& 9*0*a*b*c*d*b*e*a*f*g*h*i*j*P.k*l*k*m*n*o*p*q*r*s*t*u*v*w*5*x*y*z*A*B* ",
" C*D*E*F*G*H*I*J*K*L*M*a*a*N*O*K*O*K*K*P*Q*L*R*S*T*U*V*W*X*Y*Z*`* =.=+= ",
" @=#=$=%=&=*=b*M*c*==c*M*-=;=>=,=d*'=)=)=)=)=!=~={=]=^=/=(=_=:=<=[=.=.= ",
@@ -2113,31 +2113,31 @@ static char * Images_xpm[] = {
" l=m=n=o= p=q=r=s=1=2=t=u=v=F*w=b=8=x=y=z=$=z=A=B=A=A=C=D=E=F=G=H=I=J=K=j=[= =+= ",
" L=M=N=O=P=Q=R=S=T=U= V=W=X=Y= ",
" Z=`= -.-+-@-#-$-%-&-*-=- --;->-,- ",
" '-)-!-~-{-]-^-/-(-_-:-<-[-}-|- 1-2-3- g 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-y-y-z-A-B- ",
" C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S- T-U-V- g 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z =#z-A-B- ",
" W-X-Y-Z-`- ;.;+;@;#;$;%;&;*;=;-;;;>; ,;,; g 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z =#z-A-B- ",
" ';);!;~;{;];^;/;(;_;:;<;[;};|;1;2;3;4;5; g 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z =#z-A-B- ",
" 6;7;8;9;0;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o; g 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-=#=#z-A-B- ",
" '-)-!-~-{-]-^-/-(-_-:-<-[-}-|- 1-2-3- : 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-y-y-z-A-B- ",
" C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S- T-U-V- : 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-e u@z-A-B- ",
" W-X-Y-Z-`- ;.;+;@;#;$;%;&;*;=;-;;;>; ,;,; : 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-e u@z-A-B- ",
" ';);!;~;{;];^;/;(;_;:;<;[;};|;1;2;3;4;5; : 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-e u@z-A-B- ",
" 6;7;8;9;0;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o; : 4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-u@u@z-A-B- ",
" p;q;r;s;t;u;v;w;x;y;z;A;B;C;D;E;F;G;H;I;J; ",
" K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;`; >.>+>@>#> g $>%>&>*>y-y-y-=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v> g $>%>&>*>y-z =#=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" w>x>y>z>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R> S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-y-y-!,~,{,],^,/,(,_,:,<, g $>%>&>*>y-z =#=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" [,},|,1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i, S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-z =#!,~,{,],^,/,(,_,:,<, g $>%>&>*>y-z =#=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D, S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-z =#!,~,{,],^,/,(,_,:,<, g $>%>&>*>y-=#=#=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X, S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-z =#!,~,{,],^,/,(,_,:,<, ",
" Y,Z,`, '.'+'@'#'$'%'&'*'='-';'>',''')'!' S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-=#=#!,~,{,],^,/,(,_,:,<, g ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-y-y-6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" m'n'o'p'q'r's't'u'v'w'x'y'z'A'B'C'D'E' g ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-z =#6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V' W'X'Y'Z'`' ).)+)y-y-y-@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) g ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-z =#6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" 2)3)4)5)6)7)8)9)0)a)b)c)d)e)f)g) W'X'Y'Z'`' ).)+)y-z =#@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) g ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-z =#6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" h)i)j)k)l)m)n)o)p)q)r)s)t)u) W'X'Y'Z'`' ).)+)y-z =#@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) g ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-=#=#6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" v)w)x)y)z)A)B)C)D)E)F) W'X'Y'Z'`' ).)+)y-z =#@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) ",
" G)H)I)J)K)L) W'X'Y'Z'`' ).)+)y-=#=#@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) ",
" K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;`; >.>+>@>#> : $>%>&>*>y-y-y-=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v> : $>%>&>*>y-e u@=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" w>x>y>z>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R> S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-y-y-!,~,{,],^,/,(,_,:,<, : $>%>&>*>y-e u@=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" [,},|,1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i, S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-e u@!,~,{,],^,/,(,_,:,<, : $>%>&>*>y-e u@=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D, S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-e u@!,~,{,],^,/,(,_,:,<, : $>%>&>*>y-u@u@=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0> ",
" E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X, S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-e u@!,~,{,],^,/,(,_,:,<, ",
" Y,Z,`, '.'+'@'#'$'%'&'*'='-';'>',''')'!' S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',),y-u@u@!,~,{,],^,/,(,_,:,<, : ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-y-y-6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" m'n'o'p'q'r's't'u'v'w'x'y'z'A'B'C'D'E' : ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-e u@6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V' W'X'Y'Z'`' ).)+)y-y-y-@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) : ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-e u@6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" 2)3)4)5)6)7)8)9)0)a)b)c)d)e)f)g) W'X'Y'Z'`' ).)+)y-e u@@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) : ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-e u@6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" h)i)j)k)l)m)n)o)p)q)r)s)t)u) W'X'Y'Z'`' ).)+)y-e u@@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) : ~'{']'^'/'('_':'<'['}'|'1'2'3'4'5'y-u@u@6'7'8'9'0'a'b'c'd'e'f'g'h'i'j'k'l' ",
" v)w)x)y)z)A)B)C)D)E)F) W'X'Y'Z'`' ).)+)y-e u@@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) ",
" G)H)I)J)K)L) W'X'Y'Z'`' ).)+)y-u@u@@)#)$)%)&)*)=)-);)>),)')))!)~){)])^)/)()_):)<)[)})|)1) ",
" ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-y-y-@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-z =#@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-z =#@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-z =#@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-=#=#@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-e u@@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-e u@@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-e u@@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)`) !.!+!y-u@u@@!#!$!%!&!*!=!-!;!>!,!'!)!!!~!{!]! ",
" ",
" ",
" ",
@@ -2145,23 +2145,23 @@ static char * Images_xpm[] = {
" ",
" ^!^!^!^!^! ,; ,;,; ,;,; ,;,;,; ",
" ^!^!^!^!^! ,;,; ,;,; ,;,; ,; /!(!(!_!_!_!_!_!_!_!:!:!<!:!:!:!<!:!:!:![![![![!}!}!}!}!|!}!}!1! ",
" ^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-y-y- z!A!B!B!B!C!B!C!D!D!E!F!D!D!D!D!D!D!G!G!H!G!H!I!I!J!J!J!K!K!K!L! ",
" ^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-z =# M!M!M!M!M! ,; ,;,; ,; ,; ,; ,;,; ,;,; ,; ,;,; N!O!P!Q!R!S!T!U!V!T!W!X!W!Y!Y!Z!`! ~.~+~@~#~$~%~&~*~=~-~;~;~;~>~ ",
" ^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-z =# M!M!M!M!M! ,;,; ,; ,;,; ,; ,;,;,;,; ,; ,~'~)~!~~~{~]~]~]~]~]~^~/~(~_~:~<~[~}~|~1~2~3~4~<~5~6~6~6~6~7~8~ ",
" ^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-z =# 9~0~a~a~b~c~d~d~d~d~e~f~f~g~a~h~i~j~k~l~m~n~o~p~q~r~e~s~s~s~t~u~ ",
" ^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-=#=# v~v~v~v~v~ ,; ,;,; ,;,; ,;,;,; w~x~y~z~z~z~z~z~z~A~B~C~C~D~E~F~G~H~I~J~K~L~M~N~O~P~Q~R~R~R~S~T~ ",
"^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-y-y- z!A!B!B!B!C!B!C!D!D!E!F!D!D!D!D!D!D!G!G!H!G!H!I!I!J!J!J!K!K!K!L! ",
"^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-e u@ M!M!M!M!M! ,; ,;,; ,; ,; ,; ,;,; ,;,; ,; ,;,; N!O!P!Q!R!S!T!U!V!T!W!X!W!Y!Y!Z!`! ~.~+~@~#~$~%~&~*~=~-~;~;~;~>~ ",
"^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-e u@ M!M!M!M!M! ,;,; ,; ,;,; ,; ,;,;,;,; ,; ,~'~)~!~~~{~]~]~]~]~]~^~/~(~_~:~<~[~}~|~1~2~3~4~<~5~6~6~6~6~7~8~ ",
"^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-e u@ 9~0~a~a~b~c~d~d~d~d~e~f~f~g~a~h~i~j~k~l~m~n~o~p~q~r~e~s~s~s~t~u~ ",
"^!2!3!4!5!6!7!8!9!0!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!y-u@u@ v~v~v~v~v~ ,; ,;,; ,;,; ,;,;,; w~x~y~z~z~z~z~z~z~A~B~C~C~D~E~F~G~H~I~J~K~L~M~N~O~P~Q~R~R~R~S~T~ ",
" v~v~v~v~v~ ,;,; ,;,; ,;,; ,; U~V~W~W~W~X~Y~Z~Z~`~ {.{.{+{@{#{${%{&{*{={-{;{>{,{'{){!{.{.{.{~{ ",
" g {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-y-y-7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ n{o{p{q{r{r{s{r{r{s{t{t{u{v{w{x{y{z{A{B{C{D{E{F{G{H{I{J{K{L{J{M{ ",
" g {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-z =#7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ j!j!j!j!j! ,; ,; ,; ,; ,;,; ,;,;,;,;,;,;,;,;,; N{O{P{P{Q{Q{R{R{R{R{S{T{U{U{V{W{X{Y{Z{`{ ].]+]@]#]$]%]&]&]&]*]=] ",
" g {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-z =#7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ j!j!j!j!j! ,; ,; ,; ,;,;,; ,; ,;,;,; -];]>],]'])]!]!]~]!]{]]]^]^]/]!](]_]:]<][]}]|]1]2](]{]3]4]3]4]5] ",
" g {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-z =#7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ 6]7]8]8]9]0]a]b]c]d]e]f]g]h]h]i]j]k]l]m]n]o]p]q]r]s]t]t]t]t]u]v] ",
" g {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-=#=#7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ w]w]w]w]w] ,; ,;,; ,;,; ,;,;,; x]y]z]A]B]C]D]E]F]G]H]I]J]J]J]K]L]M]N]O]P]Q]R]S]T]U]V]V]V]V]U]W] ",
": {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-y-y-7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ n{o{p{q{r{r{s{r{r{s{t{t{u{v{w{x{y{z{A{B{C{D{E{F{G{H{I{J{K{L{J{M{ ",
": {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-e u@7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ j!j!j!j!j! ,; ,; ,; ,; ,;,; ,;,;,;,;,;,;,;,;,; N{O{P{P{Q{Q{R{R{R{R{S{T{U{U{V{W{X{Y{Z{`{ ].]+]@]#]$]%]&]&]&]*]=] ",
": {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-e u@7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ j!j!j!j!j! ,; ,; ,; ,;,;,; ,; ,;,;,; -];]>],]'])]!]!]~]!]{]]]^]^]/]!](]_]:]<][]}]|]1]2](]{]3]4]3]4]5] ",
": {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-e u@7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ 6]7]8]8]9]0]a]b]c]d]e]f]g]h]h]i]j]k]l]m]n]o]p]q]r]s]t]t]t]t]u]v] ",
": {{]{^{/{({_{:{<{[{}{|{1{2{3{4{5{6{y-u@u@7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{ w]w]w]w]w] ,; ,;,; ,;,; ,;,;,; x]y]z]A]B]C]D]E]F]G]H]I]J]J]J]K]L]M]N]O]P]Q]R]S]T]U]V]V]V]V]U]W] ",
" w]w]w]w]w] ,;,; ,;,; ,;,; ,; X]Y]Z]`] ^.^+^@^#^$^%^&^*^*^*^*^*^Y]=^-^;^>^,^'^)^!^!^!^~^{^]^^^ ",
" ,;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-y-y-b^c^d^e^f^g^h^i^j^k^l^ m^n^o^p^q^r^s^t^u^v^w^x^y^z^A^B^C^D^E^F^G^H^I^J^K^L^M^L^N^O^C^P^ ",
" ,;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-z =#b^c^d^e^f^g^h^i^j^k^l^ Q^Q^Q^Q^Q^ ,; ,;,; ,; ,; ,; ,;,; ,;,; ,; ,;R^ S^T^U^V^W^X^Y^Z^`^ /./+/@/#/$/%/&/*/=/-/;/>/,/'/)/!/~/{/]/^///(/ ",
" ,;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-z =#b^c^d^e^f^g^h^i^j^k^l^ Q^Q^Q^Q^Q^ ,;,; ,; ,;,; ,; ,;,;,;,; ,; _/:/</[/}/|/1/2/3/4/5/6/7/8/9/0/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/ ",
" ,;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-z =#b^c^d^e^f^g^h^i^j^k^l^ q/r/s/t/u/v/w/x/y/z/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/ ",
" ,;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-=#=#b^c^d^e^f^g^h^i^j^k^l^ W/W/W/W/W/ ,; ,; ,; ,; ,;,; ,;,;,;,;,;,;,;,;,; X/Y/Z/`/ (.(+(@(#($(%(&(*(=(-(;(>(,('()(!(~({(](^(/(((_(:(<([(}( ",
",;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-y-y-b^c^d^e^f^g^h^i^j^k^l^ m^n^o^p^q^r^s^t^u^v^w^x^y^z^A^B^C^D^E^F^G^H^I^J^K^L^M^L^N^O^C^P^ ",
",;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-e u@b^c^d^e^f^g^h^i^j^k^l^ Q^Q^Q^Q^Q^ ,; ,;,; ,; ,; ,; ,;,; ,;,; ,; ,;R^ S^T^U^V^W^X^Y^Z^`^ /./+/@/#/$/%/&/*/=/-/;/>/,/'/)/!/~/{/]/^///(/ ",
",;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-e u@b^c^d^e^f^g^h^i^j^k^l^ Q^Q^Q^Q^Q^ ,;,; ,; ,;,; ,; ,;,;,;,; ,; _/:/</[/}/|/1/2/3/4/5/6/7/8/9/0/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/ ",
",;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-e u@b^c^d^e^f^g^h^i^j^k^l^ q/r/s/t/u/v/w/x/y/z/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/ ",
",;S>/^(^_^:^<^[^}^|^1^2^3^4^5^6^7^*,8^-,9^>,0^a^y-u@u@b^c^d^e^f^g^h^i^j^k^l^ W/W/W/W/W/ ,; ,; ,; ,; ,;,; ,;,;,;,;,;,;,;,;,; X/Y/Z/`/ (.(+(@(#($(%(&(*(=(-(;(>(,('()(!(~({(](^(/(((_(:(<([(}( ",
" W/W/W/W/W/ ,; ,; ,; ,;,;,; ,; ,;,;,; |(1(2(3(4(5(6(7(8(9(0(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u( ",
" ",
" ",

View File

@@ -6,7 +6,7 @@
#include <wraster.h>
#include <X11/Xlib.h>
#define WINGS_H_VERSION 981220
#define WINGS_H_VERSION 990222
#ifdef __cplusplus
@@ -512,6 +512,9 @@ WMPixmap *WMRetainPixmap(WMPixmap *pixmap);
void WMReleasePixmap(WMPixmap *pixmap);
WMPixmap *WMCreatePixmap(WMScreen *scrPtr, int width, int height, int depth,
Bool masked);
WMPixmap *WMCreatePixmapFromXPixmaps(WMScreen *scrPtr, Pixmap pixmap,
Pixmap mask, int width, int height,
int depth);
@@ -774,9 +777,9 @@ void WMSetTextFieldBordered(WMTextField *tPtr, Bool bordered);
void WMSetTextFieldBeveled(WMTextField *tPtr, Bool flag);
Bool WMGetTextFieldEnabled(WMTextField *tPtr);
Bool WMGetTextFieldEditable(WMTextField *tPtr);
void WMSetTextFieldEnabled(WMTextField *tPtr, Bool flag);
void WMSetTextFieldEditable(WMTextField *tPtr, Bool flag);
void WMSetTextFieldSecure(WMTextField *tPtr, Bool flag);
@@ -944,13 +947,19 @@ WMColorPanel *WMGetColorPanel(WMScreen *scrPtr);
void WMFreeColorPanel(WMColorPanel *panel);
int WMRunColorPanel(WMColorPanel *panel, WMWindow *owner, RColor color);
void WMShowColorPanel(WMColorPanel *panel);
void WMCloseColorPanel(WMColorPanel *panel);
void WMSetColorPanelColor(WMColorPanel *panel, RColor color);
RColor WMGetColorPanelColor(WMColorPanel *panel);
void WMSetPickerMode(WMColorPanel *panel, WMColorPanelMode mode);
void WMSetColorPanelPickerMode(WMColorPanel *panel, WMColorPanelMode mode);
void WMSetColorPanelAction(WMColorPanel *panel, WMAction *action, void *data);
/* ....................................................................... */

View File

@@ -9,7 +9,7 @@
#include "WINGs.h"
#include "WUtil.h"
#if WINGS_H_VERSION < 981220
#if WINGS_H_VERSION < 990222
#error There_is_an_old_WINGs.h_file_somewhere_in_your_system._Please_remove_it.
#endif
@@ -59,6 +59,7 @@ typedef struct W_Font {
short height;
short y;
short refCount;
char *name;
unsigned int notFontSet:1;
} W_Font;
@@ -156,7 +157,9 @@ typedef struct W_Screen {
W_Font *normalFont;
W_Font *boldFont;
WMHashTable *fontCache;
struct W_Pixmap *checkButtonImageOn;
struct W_Pixmap *checkButtonImageOff;
@@ -324,7 +327,6 @@ _WINGsConfiguration WINGsConfiguration;
#define W_VIEW_MAPPED(view) (view)->flags.mapped
#define W_PIXEL(c) (c)->color.pixel
#define W_GC(c) (c)->gc
#define W_FONTID(f) (f)->font->fid

View File

@@ -146,7 +146,7 @@ paintMyWidget(_MyWidget *mPtr)
color = WMWhiteColor(scr);
W_PaintText(mPtr->view, mPtr->view->window, scr->normalFont, 0, 0,
mPtr->view->size.width, WACenter, W_GC(color),
mPtr->view->size.width, WACenter, WMColorGC(color),
False, mPtr->text, strlen(mPtr->text));
WMReleaseColor(color);

View File

@@ -25,7 +25,7 @@ int main(int argc, char **argv)
WMScreen *scr;
WMPixmap *pixmap;
WMColorPanel *panel;
RColor startcolor;
WMInitializeApplication("WMColorPicker", &argc, argv);
@@ -44,10 +44,8 @@ int main(int argc, char **argv)
WMSetApplicationIconImage(scr, pixmap); WMReleasePixmap(pixmap);
panel = WMGetColorPanel(scr);
startcolor.red = 0;
startcolor.green = 0;
startcolor.blue = 255;
WMRunColorPanel(panel, NULL, startcolor);
WMShowColorPanel(panel);
WMScreenMainLoop(scr);
return 0;
}

View File

@@ -35,22 +35,24 @@ extern char *WMGetApplicationName();
char*
wusergnusteppath()
{
char *path;
static char *path = NULL;
char *gspath;
int pathlen;
gspath = getenv("GNUSTEP_USER_ROOT");
if (gspath) {
gspath = wexpandpath(gspath);
pathlen = strlen(gspath) + 4;
path = wmalloc(pathlen);
strcpy(path, gspath);
free(gspath);
} else {
pathlen = strlen(wgethomedir()) + 10;
path = wmalloc(pathlen);
strcpy(path, wgethomedir());
strcat(path, "/GNUstep");
if (!path) {
gspath = getenv("GNUSTEP_USER_ROOT");
if (gspath) {
gspath = wexpandpath(gspath);
pathlen = strlen(gspath) + 4;
path = wmalloc(pathlen);
strcpy(path, gspath);
free(gspath);
} else {
pathlen = strlen(wgethomedir()) + 10;
path = wmalloc(pathlen);
strcpy(path, wgethomedir());
strcat(path, "/GNUstep");
}
}
return path;
@@ -66,7 +68,6 @@ wdefaultspathfordomain(char *domain)
gspath = wusergnusteppath();
path = wmalloc(strlen(gspath)+strlen(DEFAULTS_DIR)+strlen(domain)+4);
strcpy(path, gspath);
free(gspath);
strcat(path, DEFAULTS_DIR);
strcat(path, "/");
strcat(path, domain);

View File

@@ -173,7 +173,6 @@ WMPathForResourceOfType(char *resource, char *ext)
tmp = wusergnusteppath();
if (tmp) {
path = checkFile(tmp, appdir, ext, resource);
free(tmp);
if (path) {
free(appdir);
return path;

View File

@@ -229,7 +229,7 @@ drawTitleOfColumn(WMBrowser *bPtr, int column)
x=(column-bPtr->firstVisibleColumn)*(bPtr->columnSize.width+COLUMN_SPACING);
XFillRectangle(scr->display, bPtr->view->window, W_GC(scr->darkGray), x, 0,
XFillRectangle(scr->display, bPtr->view->window, WMColorGC(scr->darkGray), x, 0,
bPtr->columnSize.width, bPtr->titleHeight);
W_DrawRelief(scr, bPtr->view->window, x, 0,
bPtr->columnSize.width, bPtr->titleHeight, WRSunken);
@@ -245,13 +245,13 @@ drawTitleOfColumn(WMBrowser *bPtr, int column)
&titleLen, widthC);
W_PaintText(bPtr->view, bPtr->view->window, scr->boldFont, x,
(bPtr->titleHeight-WMFontHeight(scr->boldFont))/2,
bPtr->columnSize.width, WACenter, W_GC(scr->white),
bPtr->columnSize.width, WACenter, WMColorGC(scr->white),
False, titleBuf, titleLen);
free (titleBuf);
} else {
W_PaintText(bPtr->view, bPtr->view->window, scr->boldFont, x,
(bPtr->titleHeight-WMFontHeight(scr->boldFont))/2,
bPtr->columnSize.width, WACenter, W_GC(scr->white),
bPtr->columnSize.width, WACenter, WMColorGC(scr->white),
False, bPtr->titles[column], titleLen);
}
}
@@ -267,7 +267,7 @@ WMSetBrowserColumnTitle(WMBrowser *bPtr, int column, char *title)
if (bPtr->titles[column])
free(bPtr->titles[column]);
bPtr->titles[column] = (title!=NULL) ? wstrdup(title) : wstrdup("");
bPtr->titles[column] = wstrdup(title);
if (COLUMN_IS_VISIBLE(bPtr, column) && bPtr->flags.isTitled) {
drawTitleOfColumn(bPtr, column);
@@ -517,7 +517,7 @@ paintItem(WMList *lPtr, int index, Drawable d, char *text, int state,
y = rect->pos.y;
if (state & WLDSSelected)
XFillRectangle(scr->display, d, W_GC(scr->white), x, y,
XFillRectangle(scr->display, d, WMColorGC(scr->white), x, y,
width, height);
else
XClearArea(scr->display, d, x, y, width, height, False);
@@ -530,24 +530,24 @@ paintItem(WMList *lPtr, int index, Drawable d, char *text, int state,
char *textBuf = createTruncatedString(scr->normalFont,
text, &textLen, widthC);
W_PaintText(view, d, scr->normalFont, x+4, y, widthC,
WALeft, W_GC(scr->black), False, textBuf, textLen);
WALeft, WMColorGC(scr->black), False, textBuf, textLen);
free(textBuf);
} else {
W_PaintText(view, d, scr->normalFont, x+4, y, widthC,
WALeft, W_GC(scr->black), False, text, textLen);
WALeft, WMColorGC(scr->black), False, text, textLen);
}
}
if (state & WLDSIsBranch) {
XDrawLine(scr->display, d, W_GC(scr->darkGray), x+width-11, y+3,
XDrawLine(scr->display, d, WMColorGC(scr->darkGray), x+width-11, y+3,
x+width-6, y+height/2);
if (state & WLDSSelected)
XDrawLine(scr->display, d,W_GC(scr->gray), x+width-11, y+height-5,
XDrawLine(scr->display, d,WMColorGC(scr->gray), x+width-11, y+height-5,
x+width-6, y+height/2);
else
XDrawLine(scr->display, d,W_GC(scr->white), x+width-11, y+height-5,
XDrawLine(scr->display, d,WMColorGC(scr->white), x+width-11, y+height-5,
x+width-6, y+height/2);
XDrawLine(scr->display, d, W_GC(scr->black), x+width-12, y+3,
XDrawLine(scr->display, d, WMColorGC(scr->black), x+width-12, y+3,
x+width-12, y+height-5);
}
}
@@ -893,31 +893,27 @@ listCallback(void *self, void *clientData)
int i;
item = WMGetListSelectedItem(lPtr);
if (!item) {
oldItem = item;
return;
}
if (!item || oldItem == item)
return;
if (oldItem != item) {
for (i=0; i<bPtr->columnCount; i++) {
if (lPtr == bPtr->columns[i])
break;
}
assert(i<bPtr->columnCount);
/* columns at right must be cleared */
removeColumn(bPtr, i+1);
/* open directory */
if (item->isBranch) {
WMAddBrowserColumn(bPtr);
loadColumn(bPtr, bPtr->usedColumnCount-1);
}
if (bPtr->usedColumnCount < bPtr->maxVisibleColumns)
i = 0;
else
i = bPtr->usedColumnCount-bPtr->maxVisibleColumns;
scrollToColumn(bPtr, i, True);
for (i=0; i<bPtr->columnCount; i++) {
if (lPtr == bPtr->columns[i])
break;
}
assert(i<bPtr->columnCount);
/* columns at right must be cleared */
removeColumn(bPtr, i+1);
/* open directory */
if (item->isBranch) {
WMAddBrowserColumn(bPtr);
loadColumn(bPtr, bPtr->usedColumnCount-1);
}
if (bPtr->usedColumnCount < bPtr->maxVisibleColumns)
i = 0;
else
i = bPtr->usedColumnCount-bPtr->maxVisibleColumns;
scrollToColumn(bPtr, i, True);
/* call callback for click */
if (bPtr->action)

View File

@@ -511,7 +511,7 @@ paintButton(Button *bPtr)
if (bPtr->flags.selected) {
if (bPtr->flags.stateLight)
gc = W_GC(scrPtr->white);
gc = WMColorGC(scrPtr->white);
if (bPtr->flags.stateChange) {
if (bPtr->altCaption) {
@@ -533,7 +533,7 @@ paintButton(Button *bPtr)
offset = 1;
}
if (bPtr->flags.pushLight)
gc = W_GC(scrPtr->white);
gc = WMColorGC(scrPtr->white);
if (bPtr->flags.pushChange) {
if (bPtr->altCaption) {
@@ -546,9 +546,9 @@ paintButton(Button *bPtr)
if (bPtr->flags.enabled)
textGC = W_GC(scrPtr->black);
textGC = WMColorGC(scrPtr->black);
else
textGC = W_GC(scrPtr->darkGray);
textGC = WMColorGC(scrPtr->darkGray);
W_PaintTextAndImage(bPtr->view, True, textGC,
(bPtr->font!=NULL ? bPtr->font : scrPtr->normalFont),

View File

@@ -31,7 +31,6 @@ findCloseColor(WMScreen *scr, unsigned short red, unsigned short green,
WMColor *color;
XColor xcolor;
RColor rcolor;
XGCValues gcv;
rcolor.red = red>>8;
rcolor.green = green>>8;
@@ -49,11 +48,7 @@ findCloseColor(WMScreen *scr, unsigned short red, unsigned short green,
color->refCount = 1;
color->color = xcolor;
color->flags.exact = 1;
gcv.foreground = color->color.pixel;
gcv.graphics_exposures = False;
color->gc = XCreateGC(scr->display, scr->rcontext->drawable,
GCForeground|GCGraphicsExposures, &gcv);
color->gc = NULL;
return color;
}
@@ -65,7 +60,6 @@ createRGBColor(WMScreen *scr, unsigned short red, unsigned short green,
unsigned short blue)
{
WMColor *color;
XGCValues gcv;
XColor xcolor;
xcolor.red = red;
@@ -81,11 +75,7 @@ createRGBColor(WMScreen *scr, unsigned short red, unsigned short green,
color->refCount = 1;
color->color = xcolor;
color->flags.exact = 1;
gcv.foreground = color->color.pixel;
gcv.graphics_exposures = False;
color->gc = XCreateGC(scr->display, scr->rcontext->drawable,
GCForeground|GCGraphicsExposures, &gcv);
color->gc = NULL;
return color;
}
@@ -116,8 +106,10 @@ WMCreateNamedColor(WMScreen *scr, char *name, Bool exact)
if (!XParseColor(scr->display, scr->colormap, name, &xcolor))
return NULL;
if (scr->visual->class == TrueColor)
exact = True;
if (!exact || !(color=createRGBColor(scr, xcolor.red, xcolor.green,
xcolor.blue))) {
color = findCloseColor(scr, xcolor.red, xcolor.green, xcolor.blue);
@@ -146,7 +138,8 @@ WMReleaseColor(WMColor *color)
if (color->refCount < 1) {
XFreeColors(color->screen->display, color->screen->colormap,
&(color->color.pixel), 1, 0);
XFreeGC(color->screen->display, color->gc);
if (color->gc)
XFreeGC(color->screen->display, color->gc);
free(color);
}
}
@@ -156,7 +149,8 @@ void
WMPaintColorSwatch(WMColor *color, Drawable d, int x, int y,
unsigned int width, unsigned int height)
{
XFillRectangle(color->screen->display, d, color->gc, x, y, width, height);
XFillRectangle(color->screen->display, d, WMColorGC(color),
x, y, width, height);
}
@@ -170,6 +164,16 @@ WMColorPixel(WMColor *color)
GC
WMColorGC(WMColor *color)
{
if (!color->gc) {
XGCValues gcv;
WMScreen *scr = color->screen;
gcv.foreground = color->color.pixel;
gcv.graphics_exposures = False;
color->gc = XCreateGC(scr->display, scr->rcontext->drawable,
GCForeground|GCGraphicsExposures, &gcv);
}
return color->gc;
}
@@ -226,7 +230,6 @@ WMGrayColor(WMScreen *scr)
LIGHT_STIPPLE_HEIGHT);
color = createRGBColor(scr, 0xffff, 0xffff, 0xffff);
XFreeGC(scr->display, color->gc);
gcv.foreground = white->color.pixel;
gcv.background = black->color.pixel;
@@ -268,7 +271,6 @@ WMDarkGrayColor(WMScreen *scr)
DARK_STIPPLE_HEIGHT);
color = createRGBColor(scr, 0, 0, 0);
XFreeGC(scr->display, color->gc);
gcv.foreground = white->color.pixel;
gcv.background = black->color.pixel;

File diff suppressed because it is too large Load Diff

View File

@@ -24,6 +24,9 @@ typedef struct W_ColorWell {
} flags;
} ColorWell;
static char *_ColorWellActivatedNotification = "_ColorWellActivatedNotification";
static void destroyColorWell(ColorWell *cPtr);
static void paintColorWell(ColorWell *cPtr);
@@ -36,6 +39,8 @@ static void handleActionEvents(XEvent *event, void *data);
static void resizeColorWell();
W_ViewProcedureTable _ColorWellViewProcedures = {
NULL,
resizeColorWell,
@@ -58,6 +63,21 @@ static WMDragSourceProcs dragProcs = {
static void
activatedObserver(void *data, WMNotification *notification)
{
WMColorWell *cPtr = (WMColorWell*)data;
if (!cPtr->flags.active || WMGetNotificationObject(notification) == cPtr)
return;
W_SetViewBackgroundColor(cPtr->view, WMWidgetScreen(cPtr)->gray);
paintColorWell(cPtr);
cPtr->flags.active = 0;
}
WMColorWell*
WMCreateColorWell(WMWidget *parent)
{
@@ -97,9 +117,14 @@ WMCreateColorWell(WMWidget *parent)
cPtr->colorView->flags.mapWhenRealized = 1;
cPtr->flags.bordered = 1;
resizeColorWell(cPtr, DEFAULT_WIDTH, DEFAULT_HEIGHT);
WMAddNotificationObserver(activatedObserver, cPtr,
_ColorWellActivatedNotification, NULL);
cPtr->color = WMBlackColor(WMWidgetScreen(cPtr));
return cPtr;
}
@@ -379,14 +404,54 @@ handleDragEvents(XEvent *event, void *data)
static void
handleActionEvents(XEvent *event, void *data)
{
/* WMColorWell *cPtr = (ColorWell*)data;*/
WMColorWell *cPtr = (ColorWell*)data;
WMScreen *scr = WMWidgetScreen(cPtr);
WMColorPanel *cpanel;
if (cPtr->flags.active)
W_SetViewBackgroundColor(cPtr->view, scr->gray);
else
W_SetViewBackgroundColor(cPtr->view, scr->white);
paintColorWell(cPtr);
cPtr->flags.active ^= 1;
if (cPtr->flags.active) {
WMPostNotificationName(_ColorWellActivatedNotification, cPtr, NULL);
}
/*
cpanel = WMGetColorPanel(scr);
if (cPtr->color)
WMSetColorPanelColor(cpanel, cPtr->color);
WMShowColorPanel(cpanel);
*
*/
{
char *t;
WMColor *color;
t = WMRunInputPanel(scr, NULL, "Advanced Color Picker",
"Type a Color (this is temporary!!! I'm not THAT dumb :P)",
NULL, "OK", "Cancel");
if (t) {
color = WMCreateNamedColor(scr, t, False);
if (color) {
WMSetColorWellColor(cPtr, color);
WMReleaseColor(color);
}
free(t);
}
}
}
static void
destroyColorWell(ColorWell *cPtr)
{
WMRemoveNotificationObserver(cPtr);
if (cPtr->color)
WMReleaseColor(cPtr->color);

View File

@@ -104,16 +104,22 @@ textChangedObserver(void *observerData, WMNotification *notification)
char *text;
WMList *list;
int col = WMGetBrowserNumberOfColumns(panel->browser) - 1;
int i, j, textEvent;
int i, textEvent = (int)WMGetNotificationClientData(notification);
static int running = 0;
if (running)
return;
running = 1;
if (panel->flags.ignoreTextChangeNotification)
return;
if (!(list = WMGetBrowserListInColumn(panel->browser, col)))
return;
list = WMGetBrowserListInColumn(panel->browser, col);
if (!list)
return;
text = WMGetTextFieldText(panel->fileField);
textEvent = (int)WMGetNotificationClientData(notification);
if (panel->flags.autoCompletion && textEvent!=WMDeleteTextEvent)
i = closestListItem(list, text, False);
@@ -126,16 +132,14 @@ textChangedObserver(void *observerData, WMNotification *notification)
int textLen = strlen(text), itemTextLen = strlen(item->text);
int visibleItems = WMWidgetHeight(list)/WMGetListItemHeight(list);
WMSetListPosition(list, i - visibleItems/2);
if (textEvent!=WMSetTextEvent || textLen<itemTextLen)
WMSetListPosition(list, i - visibleItems/2);
if (textEvent!=WMDeleteTextEvent) {
if (textEvent!=WMDeleteTextEvent && textLen<itemTextLen) {
WMRange range;
panel->flags.ignoreTextChangeNotification = 1;
WMInsertTextFieldText(panel->fileField, &item->text[textLen],
textLen);
panel->flags.ignoreTextChangeNotification = 0;
textLen);
WMSetTextFieldCursorPosition(panel->fileField, itemTextLen);
range.position = textLen;
range.count = itemTextLen - textLen;
@@ -144,6 +148,7 @@ textChangedObserver(void *observerData, WMNotification *notification)
}
free(text);
running = 0;
}
@@ -317,12 +322,12 @@ WMRunModalFilePanelForDirectory(WMFilePanel *panel, WMWindow *owner,
WMScreen *scr = WMWidgetScreen(panel->win);
XEvent event;
WMChangePanelOwner(panel->win, owner);
if (name && !owner) {
WMSetWindowTitle(panel->win, name);
}
WMChangePanelOwner(panel->win, owner);
WMSetFilePanelDirectory(panel, path);
panel->flags.done = 0;
@@ -346,12 +351,19 @@ WMRunModalFilePanelForDirectory(WMFilePanel *panel, WMWindow *owner,
WMSetLabelText(panel->titleLabel, name);
scr->modalView = W_VIEW(panel->win);
WMMapWidget(panel->win);
WMMoveWidget(panel->win,
(scr->rootView->size.width - WMWidgetWidth(panel->win))/2,
(scr->rootView->size.height - WMWidgetHeight(panel->win))/2);
scr->modal = 1;
while (!panel->flags.done) {
WMNextEvent(scr->display, &event);
WMHandleEvent(&event);
}
scr->modal = 0;
/* Must withdraw window because the next time we map
* it, it might have a different transient owner.

View File

@@ -18,9 +18,16 @@ WMCreateFont(WMScreen *scrPtr, char *fontName)
char *defaultString;
XFontSetExtents *extents;
font = WMHashGet(scrPtr->fontCache, fontName);
if (font) {
WMRetainFont(font);
return font;
}
font = malloc(sizeof(WMFont));
if (!font)
return NULL;
memset(font, 0, sizeof(WMFont));
font->notFontSet = 0;
@@ -50,9 +57,13 @@ WMCreateFont(WMScreen *scrPtr, char *fontName)
font->height = extents->max_logical_extent.height;
font->y = font->height - (font->height + extents->max_logical_extent.y);
font->refCount = 1;
font->name = wstrdup(fontName);
assert(WMHashInsert(scrPtr->fontCache, font->name, font)==NULL);
return font;
}
@@ -66,12 +77,13 @@ WMCreateFontInDefaultEncoding(WMScreen *scrPtr, char *fontName)
font = malloc(sizeof(WMFont));
if (!font)
return NULL;
return NULL;
memset(font, 0, sizeof(WMFont));
font->notFontSet = 1;
font->screen = scrPtr;
font->font.normal = XLoadQueryFont(display, fontName);
if (!font->font.normal) {
free(font);
@@ -108,8 +120,13 @@ WMReleaseFont(WMFont *font)
if (font->refCount < 1) {
if (font->notFontSet)
XFreeFont(font->screen->display, font->font.normal);
else
else {
XFreeFontSet(font->screen->display, font->font.set);
}
if (font->name) {
WMHashRemove(font->screen->fontCache, font->name);
free(font->name);
}
free(font);
}
}

View File

@@ -149,10 +149,10 @@ paintFrame(Frame *fPtr)
tx = (view->size.width - tw) / 2;
XFillRectangle(scrPtr->display, view->window, W_GC(scrPtr->gray),
XFillRectangle(scrPtr->display, view->window, WMColorGC(scrPtr->gray),
tx, ty, tw, th);
WMDrawString(scrPtr, view->window, W_GC(scrPtr->black),
WMDrawString(scrPtr, view->window, WMColorGC(scrPtr->black),
scrPtr->normalFont, tx, ty, fPtr->caption,
strlen(fPtr->caption));
}

View File

@@ -358,10 +358,10 @@ renderPixmap(W_Screen *screen, Pixmap d, Pixmap mask, char **data,
int width, int height)
{
int x, y;
GC whiteGC = W_GC(screen->white);
GC blackGC = W_GC(screen->black);
GC lightGC = W_GC(screen->gray);
GC darkGC = W_GC(screen->darkGray);
GC whiteGC = WMColorGC(screen->white);
GC blackGC = WMColorGC(screen->black);
GC lightGC = WMColorGC(screen->gray);
GC darkGC = WMColorGC(screen->darkGray);
if (mask)
@@ -583,6 +583,7 @@ WMCreateScreenWithRContext(Display *display, int screen, RContext *context)
scrPtr->rootWin = RootWindow(display, screen);
scrPtr->fontCache = WMCreateHashTable(WMStringPointerHashCallbacks);
/* initially allocate some colors */
WMWhiteColor(scrPtr);

View File

@@ -196,9 +196,9 @@ paintLabel(Label *lPtr)
GC gc;
if (lPtr->textColor)
gc = W_GC(lPtr->textColor);
gc = WMColorGC(lPtr->textColor);
else
gc = W_GC(scrPtr->black);
gc = WMColorGC(scrPtr->black);
W_PaintTextAndImage(lPtr->view, !lPtr->flags.noWrap, gc,
(lPtr->font!=NULL ? lPtr->font : scrPtr->normalFont),

View File

@@ -546,13 +546,13 @@ paintItem(List *lPtr, int index)
&rect);
} else {
if (itemPtr->selected)
XFillRectangle(scr->display, view->window, W_GC(scr->white), x, y,
XFillRectangle(scr->display, view->window, WMColorGC(scr->white), x, y,
width, height);
else
XClearArea(scr->display, view->window, x, y, width, height, False);
W_PaintText(view, view->window, scr->normalFont, x+4, y, width,
WALeft, W_GC(scr->black), False,
WALeft, WMColorGC(scr->black), False,
itemPtr->text, strlen(itemPtr->text));
}
}

View File

@@ -17,37 +17,37 @@ W_DrawRelief(W_Screen *scr, Drawable d, int x, int y, unsigned int width,
switch (relief) {
case WRSimple:
XDrawRectangle(dpy, d, W_GC(scr->black), x, y, width-1, height-1);
XDrawRectangle(dpy, d, WMColorGC(scr->black), x, y, width-1, height-1);
return;
break;
case WRRaised:
bgc = W_GC(scr->black);
dgc = W_GC(scr->darkGray);
wgc = W_GC(scr->white);
lgc = W_GC(scr->gray);
bgc = WMColorGC(scr->black);
dgc = WMColorGC(scr->darkGray);
wgc = WMColorGC(scr->white);
lgc = WMColorGC(scr->gray);
break;
case WRSunken:
wgc = W_GC(scr->darkGray);
lgc = W_GC(scr->black);
bgc = W_GC(scr->white);
dgc = W_GC(scr->gray);
wgc = WMColorGC(scr->darkGray);
lgc = WMColorGC(scr->black);
bgc = WMColorGC(scr->white);
dgc = WMColorGC(scr->gray);
break;
case WRPushed:
lgc = wgc = W_GC(scr->black);
dgc = bgc = W_GC(scr->white);
lgc = wgc = WMColorGC(scr->black);
dgc = bgc = WMColorGC(scr->white);
break;
case WRRidge:
lgc = bgc = W_GC(scr->darkGray);
dgc = wgc = W_GC(scr->white);
lgc = bgc = WMColorGC(scr->darkGray);
dgc = wgc = WMColorGC(scr->white);
break;
case WRGroove:
wgc = dgc = W_GC(scr->darkGray);
lgc = bgc = W_GC(scr->white);
wgc = dgc = WMColorGC(scr->darkGray);
lgc = bgc = WMColorGC(scr->white);
break;
default:

View File

@@ -30,6 +30,34 @@ WMReleasePixmap(WMPixmap *pixmap)
}
WMPixmap*
WMCreatePixmap(WMScreen *scrPtr, int width, int height, int depth, Bool masked)
{
WMPixmap *pixPtr;
pixPtr = malloc(sizeof(WMPixmap));
if (!pixPtr) {
return NULL;
}
pixPtr->screen = scrPtr;
pixPtr->width = width;
pixPtr->height = height;
pixPtr->depth = depth;
pixPtr->refCount = 1;
pixPtr->pixmap = XCreatePixmap(scrPtr->display, W_DRAWABLE(scrPtr),
width, height, depth);
if (masked) {
pixPtr->mask = XCreatePixmap(scrPtr->display, W_DRAWABLE(scrPtr),
width, height, 1);
} else {
pixPtr->mask = None;
}
return pixPtr;
}
WMPixmap*
WMCreatePixmapFromXPixmaps(WMScreen *scrPtr, Pixmap pixmap, Pixmap mask,
int width, int height, int depth)

View File

@@ -403,7 +403,7 @@ paintPopUpButton(PopUpButton *bPtr)
pixmap = XCreatePixmap(scr->display, bPtr->view->window,
bPtr->view->size.width, bPtr->view->size.height,
scr->depth);
XFillRectangle(scr->display, pixmap, W_GC(scr->gray), 0, 0,
XFillRectangle(scr->display, pixmap, WMColorGC(scr->gray), 0, 0,
bPtr->view->size.width, bPtr->view->size.height);
W_DrawRelief(scr, pixmap, 0, 0, bPtr->view->size.width,
@@ -413,7 +413,7 @@ paintPopUpButton(PopUpButton *bPtr)
W_PaintText(bPtr->view, pixmap, scr->normalFont, 6,
(bPtr->view->size.height-WMFontHeight(scr->normalFont))/2,
bPtr->view->size.width, WALeft,
bPtr->flags.enabled ? W_GC(scr->black) : W_GC(scr->darkGray),
bPtr->flags.enabled ? WMColorGC(scr->black) : WMColorGC(scr->darkGray),
False, caption, strlen(caption));
}
@@ -489,7 +489,7 @@ paintMenuEntry(PopUpButton *bPtr, int index, int highlight)
return;
}
XFillRectangle(scr->display, bPtr->menuView->window, W_GC(scr->white),
XFillRectangle(scr->display, bPtr->menuView->window, WMColorGC(scr->white),
1, index*itemHeight+1, width-3, itemHeight-3);
itemPtr = bPtr->items;
@@ -500,7 +500,7 @@ paintMenuEntry(PopUpButton *bPtr, int index, int highlight)
width, itemHeight, WRRaised);
W_PaintText(bPtr->menuView, bPtr->menuView->window, scr->normalFont, 6,
index*itemHeight + yo, width, WALeft, W_GC(scr->black), False,
index*itemHeight + yo, width, WALeft, WMColorGC(scr->black), False,
itemPtr->text, strlen(itemPtr->text));
if (!bPtr->flags.pullsDown && index == bPtr->selectedItemIndex) {
@@ -531,7 +531,7 @@ makeMenuPixmap(PopUpButton *bPtr)
pixmap = XCreatePixmap(scr->display, bPtr->view->window, width, height,
scr->depth);
XFillRectangle(scr->display, pixmap, W_GC(scr->gray), 0, 0, width, height);
XFillRectangle(scr->display, pixmap, WMColorGC(scr->gray), 0, 0, width, height);
itemPtr = bPtr->items;
for (i = 0; i < bPtr->itemCount; i++) {
@@ -541,9 +541,9 @@ makeMenuPixmap(PopUpButton *bPtr)
WRRaised);
if (itemPtr->disabled)
gc = W_GC(scr->darkGray);
gc = WMColorGC(scr->darkGray);
else
gc = W_GC(scr->black);
gc = WMColorGC(scr->black);
W_PaintText(bPtr->menuView, pixmap, scr->normalFont, 6,
i*itemHeight + yo, width, WALeft, gc, False,
@@ -569,7 +569,8 @@ resizeMenu(PopUpButton *bPtr)
int height;
height = bPtr->itemCount * bPtr->view->size.height;
W_ResizeView(bPtr->menuView, bPtr->view->size.width, height);
if (height > 0)
W_ResizeView(bPtr->menuView, bPtr->view->size.width, height);
}

View File

@@ -260,7 +260,7 @@ paintArrow(WMScroller *sPtr, Drawable d, int part)
#ifndef DOUBLE_BUFFER
if (sPtr->flags.decrDown)
gc = W_GC(scr->white);
gc = WMColorGC(scr->white);
#endif
} else { /* increment button */
if (sPtr->flags.horizontal) {
@@ -300,7 +300,7 @@ paintArrow(WMScroller *sPtr, Drawable d, int part)
ofs+1, 2+1, bsize+1-3, bsize-3);
#else
if ((!part&&sPtr->flags.decrDown) || (part&&sPtr->flags.incrDown))
XFillRectangle(scr->display, d, W_GC(scr->white),
XFillRectangle(scr->display, d, WMColorGC(scr->white),
ofs+1, 2+1, bsize+1-3, bsize-3);
#endif /* DOUBLE_BUFFER */
W_DrawRelief(scr, d, ofs, 2, bsize, bsize, WRRaised);
@@ -324,7 +324,7 @@ paintArrow(WMScroller *sPtr, Drawable d, int part)
2+1, ofs+1, bsize-3, bsize+1-3);
#else
if ((!part&&sPtr->flags.decrDown) || (part&&sPtr->flags.incrDown))
XFillRectangle(scr->display, d, W_GC(scr->white),
XFillRectangle(scr->display, d, WMColorGC(scr->white),
2+1, ofs+1, bsize-3, bsize+1-3);
#endif /* DOUBLE_BUFFER */
W_DrawRelief(scr, d, 2, ofs, bsize, bsize, WRRaised);
@@ -386,14 +386,14 @@ paintScroller(Scroller *sPtr)
#ifdef DOUBLE_BUFFER
d = XCreatePixmap(scr->display, view->window, view->size.width,
view->size.height, scr->depth);
XFillRectangle(scr->display, d, W_GC(scr->gray), 0, 0,
XFillRectangle(scr->display, d, WMColorGC(scr->gray), 0, 0,
view->size.width, view->size.height);
#endif
XDrawRectangle(scr->display, d, W_GC(scr->black), 0, 0,
XDrawRectangle(scr->display, d, WMColorGC(scr->black), 0, 0,
view->size.width-1, view->size.height-1);
#ifndef DOUBLE_BUFFER
XDrawRectangle(scr->display, d, W_GC(scr->gray), 1, 1,
XDrawRectangle(scr->display, d, WMColorGC(scr->gray), 1, 1,
view->size.width-3, view->size.height-3);
#endif

View File

@@ -245,43 +245,43 @@ makeKnobPixmap(Slider *sPtr)
}
pix = XCreatePixmap(scr->display, sPtr->view->window, w, h, scr->depth);
XFillRectangle(scr->display, pix, W_GC(scr->gray), 0, 0, w, h);
XFillRectangle(scr->display, pix, WMColorGC(scr->gray), 0, 0, w, h);
if (sPtr->knobThickness < 10) {
W_DrawRelief(scr, pix, 0, 0, w, h, WRRaised);
} else if (sPtr->flags.vertical) {
XDrawLine(scr->display, pix, W_GC(scr->white), 0, 0, 0, h-3);
XDrawLine(scr->display, pix, W_GC(scr->white), 1, 0, 1, h-3);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), w-2, 1, w-2, h/2-2);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), w-2, h/2, w-2, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 0, 0, 0, h-3);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 1, 0, 1, h-3);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), w-2, 1, w-2, h/2-2);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), w-2, h/2, w-2, h-2);
XDrawLine(scr->display, pix, W_GC(scr->white), 0, 0, w-2, 0);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), 1, h/2-2, w-3, h/2-2);
XDrawLine(scr->display, pix, W_GC(scr->white), 0, h/2-1, w-3, h/2-1);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 0, 0, w-2, 0);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), 1, h/2-2, w-3, h/2-2);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 0, h/2-1, w-3, h/2-1);
XDrawLine(scr->display, pix, W_GC(scr->black), w-1, 0, w-1, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->black), w-1, 0, w-1, h-2);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), 0, h-3, w-2, h-3);
XDrawLine(scr->display, pix, W_GC(scr->black), 0, h-2, w-1, h-2);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), 0, h-1, w-1,h-1);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), 0, h-3, w-2, h-3);
XDrawLine(scr->display, pix, WMColorGC(scr->black), 0, h-2, w-1, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), 0, h-1, w-1,h-1);
} else {
XDrawLine(scr->display, pix, W_GC(scr->white), 0, 0, w-3, 0);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 0, 0, w-3, 0);
XDrawLine(scr->display, pix, W_GC(scr->white), 0, 0, 0, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 0, 0, 0, h-2);
XDrawLine(scr->display, pix, W_GC(scr->white), 1, 0, 1, h-3);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), w/2-2, 1, w/2-2, h-3);
XDrawLine(scr->display, pix, W_GC(scr->white), w/2-1, 0, w/2-1, h-3);
XDrawLine(scr->display, pix, WMColorGC(scr->white), 1, 0, 1, h-3);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), w/2-2, 1, w/2-2, h-3);
XDrawLine(scr->display, pix, WMColorGC(scr->white), w/2-1, 0, w/2-1, h-3);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), w-3, 0, w-3, h-2);
XDrawLine(scr->display, pix, W_GC(scr->black), w-2, 0, w-2, h-2);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), w-1, 0, w-1, h-1);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), w-3, 0, w-3, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->black), w-2, 0, w-2, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), w-1, 0, w-1, h-1);
XDrawLine(scr->display, pix, W_GC(scr->black), 1, h-1, w/2+1, h-1);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), 1, h-2, w/2-2, h-2);
XDrawLine(scr->display, pix, W_GC(scr->darkGray), w/2, h-2, w-3,h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->black), 1, h-1, w/2+1, h-1);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), 1, h-2, w/2-2, h-2);
XDrawLine(scr->display, pix, WMColorGC(scr->darkGray), w/2, h-2, w-3,h-2);
XDrawLine(scr->display, pix, W_GC(scr->black), 0, h-1, w-2, h-1);
XDrawLine(scr->display, pix, WMColorGC(scr->black), 0, h-1, w-2, h-1);
}
if (sPtr->knobPixmap)
@@ -339,9 +339,9 @@ paintSlider(Slider *sPtr)
#define MAXV sPtr->maxValue
#define POSV sPtr->value
bgc = W_GC(scr->black);
wgc = W_GC(scr->white);
lgc = W_GC(scr->gray);
bgc = WMColorGC(scr->black);
wgc = WMColorGC(scr->white);
lgc = WMColorGC(scr->gray);
buffer = XCreatePixmap(scr->display, sPtr->view->window,
size.width, size.height, scr->depth);
@@ -487,12 +487,21 @@ handleActionEvents(XEvent *event, void *data)
#else
int tmp;
tmp = valueForMousePoint(sPtr, event->xmotion.x, event->xmotion.y);
if (tmp < sPtr->value)
tmp = sPtr->value-1;
else
tmp = sPtr->value+1;
WMSetSliderValue(sPtr, tmp);
if (event->xbutton.button == Button2) {
sPtr->flags.dragging = 1;
sPtr->value = valueForMousePoint(sPtr, event->xmotion.x,
event->xmotion.y);
paintSlider(sPtr);
} else {
tmp = valueForMousePoint(sPtr, event->xmotion.x,
event->xmotion.y);
if (tmp < sPtr->value)
tmp = sPtr->value-1;
else
tmp = sPtr->value+1;
WMSetSliderValue(sPtr, tmp);
}
#endif
if (sPtr->flags.continuous && sPtr->action) {

View File

@@ -410,14 +410,14 @@ WMSetTextFieldSecure(WMTextField *tPtr, Bool flag)
Bool
WMGetTextFieldEnabled(WMTextField *tPtr)
WMGetTextFieldEditable(WMTextField *tPtr)
{
return tPtr->flags.enabled;
}
void
WMSetTextFieldEnabled(WMTextField *tPtr, Bool flag)
WMSetTextFieldEditable(WMTextField *tPtr, Bool flag)
{
tPtr->flags.enabled = flag;
@@ -581,15 +581,15 @@ drawRelief(WMView *view, Bool beveled)
int width = view->size.width;
int height = view->size.height;
dgc = W_GC(scr->darkGray);
dgc = WMColorGC(scr->darkGray);
if (!beveled) {
XDrawRectangle(dpy, view->window, dgc, 0, 0, width-1, height-1);
return;
}
wgc = W_GC(scr->white);
lgc = W_GC(scr->gray);
wgc = WMColorGC(scr->white);
lgc = WMColorGC(scr->gray);
/* top left */
XDrawLine(dpy, view->window, dgc, 0, 0, width-1, 0);
@@ -820,8 +820,7 @@ handleTextFieldKeyPress(TextField *tPtr, XEvent *event)
switch (ksym) {
case XK_Tab:
if (event->xkey.state & ShiftMask) {
if (tPtr->view->prevFocusChain &&
tPtr->view->prevFocusChain->flags.mapped) {
if (tPtr->view->prevFocusChain) {
W_SetFocusOfTopLevel(W_TopLevelOfView(tPtr->view),
tPtr->view->prevFocusChain);
tPtr->flags.notIllegalMovement = 1;
@@ -829,8 +828,7 @@ handleTextFieldKeyPress(TextField *tPtr, XEvent *event)
WMPostNotificationName(WMTextDidEndEditingNotification, tPtr,
(void*)WMBacktabTextMovement);
} else {
if (tPtr->view->nextFocusChain &&
tPtr->view->nextFocusChain->flags.mapped) {
if (tPtr->view->nextFocusChain) {
W_SetFocusOfTopLevel(W_TopLevelOfView(tPtr->view),
tPtr->view->nextFocusChain);
tPtr->flags.notIllegalMovement = 1;

View File

@@ -102,33 +102,6 @@ adoptChildView(W_View *view, W_View *child)
}
static void
getPosition(Display *dpy, Window win, int *x_ret, int *y_ret)
{
unsigned foo;
Window bar;
Window parent;
Window *childs;
int x, y;
XGetGeometry(dpy, win, &bar, &x, &y, &foo, &foo, &foo, &foo);
if (XQueryTree(dpy, win, &bar, &parent, &childs, &foo)) {
int px, py;
XFree(childs);
if (parent != bar) {
getPosition(dpy, parent, &px, &py);
x += px;
y += py;
}
}
*x_ret = x;
*y_ret = y;
}
static void
handleEvents(XEvent *event, void *data)
{
@@ -154,8 +127,12 @@ handleEvents(XEvent *event, void *data)
view->pos.x = event->xconfigure.x;
view->pos.y = event->xconfigure.y;
} else {
getPosition(view->screen->display, view->window,
&view->pos.x, &view->pos.y);
Window foo;
XTranslateCoordinates(view->screen->display,
view->window, view->screen->rootWin,
event->xconfigure.x, event->xconfigure.y,
&view->pos.x, &view->pos.y, &foo);
}
}
}