That said, I think their use of "named" arguments in this case really cleans up the API. I wish CSS3 folks would take note.
On Tue, Jan 11, 2011 at 1:50 PM, Nathan Weizenbaum <[email protected]> wrote: > I love it when folks disregard standards. > > For qlineargradient, you could monkeypatch Sass::Script::Lexer#special_fun > to recognize it as a syntactically non-standard function, but that would be > a little tricker than the Color monkeypatch. > > On Tue, Jan 11, 2011 at 1:21 PM, Chris Eppstein <[email protected]>wrote: > >> Regarding your first point, it can be done by "monkey patching" sass to >> change how colors behave when output. >> >> You could drop this into your compass config and I think it will do what >> you need (this overwrites the rgba_str method for all colors): >> >> module Sass::Script >> class Color < Literal >> >> def rgba_str >> >> split = options[:style] == :compressed ? ',' : ', ' >> >> "rgba(#{rgb.join(split)}#{split}#{Number.round(alpha)*100}%)" >> >> end >> >> end >> end >> >> Regarding the second point, that's not valid CSS syntax so the parser is >> going to barf on it, but you can kind of work around this by using strings >> (not pretty, but functional): >> >> background: unquote("qlineargradient(x1:#{$x1value}, y1:0, x2:1, >> y2:1, stop:0 #{$from-color}, stop: 0.4 gray, stop:1 green)"); >> >> Hope that helps! >> >> chris >> >> For what it's worth, Sass 3.1 does have a named argument syntax as well >> and I hope we find an uptake in CSS someday of such a concept. >> >> On Tue, Jan 11, 2011 at 1:05 PM, abierbaum <[email protected]> wrote: >> >>> I have been using sass (and compass) on several mobile web app >>> projects and have loved it. Recently I jumped back to a desktop >>> application using Qt and decided to see if I could use sass to >>> simplify the management of the stylesheets used in the application. >>> >>> Qt uses a CSS based styling syntax and most things are working fine. >>> But I have run into two issues that I don't know how to handle and >>> would appreciate any pointers or patches people could recommend that I >>> used. (I must confess that I don't know ruby, so writing the code >>> myself would not be easy) >>> >>> 1) Qt's support for rgba() in a color requires a format like: >>> >>> QWidget { >>> color: rgba(255, 50, 0, 50%); >>> } >>> >>> instead of the CSS standard >>> >>> QWidget { >>> color: rgba(255, 50, 0, 0.5); >>> } >>> >>> I am fine with putting the colors into sass using the CSS formatting >>> method, but is there any way to override the output from sass so it >>> writes out the colors in the qt required format? >>> >>> 2) Qt stylesheets have a way to specify gradients that does not parse >>> as valid CSS. (see: >>> http://doc.trolltech.com/latest/stylesheet-reference.html#gradient) >>> >>> For example: >>> >>> /* linear gradient from white to green */ >>> QTextEdit { >>> background: qlineargradient(x1:0, y1:0, x2:1, y2:1, >>> stop:0 white, stop: 0.4 gray, stop:1 green) >>> } >>> >>> When I put this in an scss file and run it through sass, I get an >>> "Invalid CSS after ..." error. >>> >>> Is there any way to extend sass to allow this to pass through the >>> system? >>> >>> I really want to see if there is a way to bring the power of sass to >>> Qt. My stylesheets now are a complete mess with magic color variables >>> and redundancies all over the place. After seeing the power of sass/ >>> compass on my web apps it is driving me crazy trying to do things the >>> old way. :) >>> >>> >>> Thanks, >>> Allen >>> >>> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "Haml" group. >>> To post to this group, send email to [email protected]. >>> To unsubscribe from this group, send email to >>> [email protected] <haml%[email protected]>. >>> For more options, visit this group at >>> http://groups.google.com/group/haml?hl=en. >>> >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Haml" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected] <haml%[email protected]>. >> For more options, visit this group at >> http://groups.google.com/group/haml?hl=en. >> > > -- > You received this message because you are subscribed to the Google Groups > "Haml" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected] <haml%[email protected]>. > For more options, visit this group at > http://groups.google.com/group/haml?hl=en. > -- You received this message because you are subscribed to the Google Groups "Haml" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/haml?hl=en.
