view static/css/mixins.less @ 102:f872c643b056

Updates to snippet functionality (see details) Sorry about the large commit, but it was difficult to break it up as a lot of new functionality was introduced. Most of it is specific to the snippet feature but there are some other changes as well. Commit highlights: * Added the ability to switch the syntax highlighting colour scheme when viewing a snippet. This is currently done on a per-snippet basis only, but eventually it will be possible to set a default in your profile to have all the snippets you view use that colour scheme. There are currently 8 different colour schemes, all of which were taken from the default pygments stylesheets (some were modified). * Added a "num_views" field to the Snippet model, with the field being incremented any time the snippet view is called (raw or regular view). * Created a simple "explore" view that lists the recently-posted snippets. Will implement pagination and sorting by other attributes ("popularity", for example, based on number of views) as well. * Added a post-save hook to the User model to ensure that a Profile is created for every user as soon as the User itself is created. This alleviates the need for a get_profile method that checks if the user has a profile or not and creates one if necessary. (The code is currently still there, will be cleaned up soon). * Added back the wordwrap toggling feature. Currently, if you want to enable word-wrapping, the line numbers have to be hidden in order to ensure that the lines and their numbers don't go out of sync. This will be fixed soon. * History/diff view is back * And some other minor cosmetic changes. Note: since some existing models have been changed, you'll likely need to delete the existing sqlite database before running syncdb. The alternative is to determine the necessary column changes/additions and run the SQL query yourself.
author dellsystem <ilostwaldo@gmail.com>
date Fri, 31 Aug 2012 02:53:22 -0400
parents e0348cfbdf48
children 17bc502c65a4
line wrap: on
line source

// From the Twitter bootstrap
#gradient(@startColor, @endColor) {
    background-color: @endColor;
    background-repeat: repeat-x;
    background-image: -khtml-gradient(linear, left top, left bottom, from(@startColor), to(@endColor)); // Konqueror
    background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
    background-image: -ms-linear-gradient(top, @startColor, @endColor); // IE10
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
    background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
    background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
    background-image: linear-gradient(top, @startColor, @endColor); // The standard
    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down
}

.border-radius(@radius) {
  -webkit-border-radius: @radius;
     -moz-border-radius: @radius;
          border-radius: @radius;
}

.box-shadow(@shadow) {
  -webkit-box-shadow: @shadow;
     -moz-box-shadow: @shadow;
          box-shadow: @shadow;
}

.inline-block {
    display: inline-block;
    zoom: 1;
    *display: inline;
}

.wrap {
    width: @fixedWidth;
    margin: 0 auto;
}

.center-align {
    text-align: center;
}

.right-float {
    float: right;
}

.button {
    line-height: 20px;
    .inline-block;
    #gradient(@mediumBlue, @darkBlue);
    .border-radius(5px);
    padding: 10px;
    color: @white;
    text-shadow: @darkSheer 0px 1px 0;
    border: 1px solid @darkBlue;

    &:hover {
        color: @white;
        text-decoration: none;
        #gradient(@darkBlue, @darkBlue);
    }

    &.large {
        font-size: 1.5em;
    }

}

button.button {
    cursor: pointer;
    outline: 0;
}

.pill {
    .inline-block;
    background: @lighterGrey;
    border: 1px solid lighten(@mediumGrey, 10%);
    .border-radius(3px);
    color: @darkGrey;
    padding: 8px 20px;
    font-weight: bold;
    line-height: 1;
    text-shadow: 0 1px 0 @white;
    .box-shadow(inset 0 0 3px 0px @white);

    &:hover {
        color: @white;
        text-decoration: none;
        background: @mediumBlue;
        border-color: @mediumBlue;
        text-shadow: 0 1px 0 @darkBlue;
        .box-shadow(inset 0 0 2px 0 @lightBlue);
    }
}

.hidden {
    display: none;
}