Subversion Repositories svn.mios32

Rev

Rev 1190 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1190 Rev 1724
Line 1... Line 1...
1
/* -*- mode:C++; tab-width:4; c-basic-offset:4; indent-tabs-mode:nil -*- */
1
/* -*- mode:C++; tab-width:4; c-basic-offset:4; indent-tabs-mode:nil -*- */
2
// $Id: LogBox.cpp 1190 2011-04-24 23:20:11Z tk $
2
// $Id: LogBox.cpp 1724 2013-03-28 20:23:40Z tk $
3
/*
3
/*
4
 * Log Box (an optimized Log window)
4
 * Log Box (an optimized Log window)
5
 *
5
 *
6
 * ==========================================================================
6
 * ==========================================================================
7
 *
7
 *
Line 27... Line 27...
27
#endif
27
#endif
28
#else 
28
#else 
29
#if defined(JUCE_WIN32)
29
#if defined(JUCE_WIN32)
30
    , logEntryFont(Font::getDefaultMonospacedFontName(), 10.0, 0)
30
    , logEntryFont(Font::getDefaultMonospacedFontName(), 10.0, 0)
31
#else
31
#else
32
    , logEntryFont(Font::getDefaultMonospacedFontName(), 13.0, 0)
32
    , logEntryFont(Font::getDefaultMonospacedFontName(), 12.0, 0)
33
#endif
33
#endif
34
#endif
34
#endif
35
{
35
{
36
    setModel(this);
36
    setModel(this);
37
    setMultipleSelectionEnabled(true);
37
    setMultipleSelectionEnabled(true);
Line 86... Line 86...
86
    g.setColour(findColour(0x1000205)); // TextEditor::outlineColourId
86
    g.setColour(findColour(0x1000205)); // TextEditor::outlineColourId
87
    g.drawRect(0, 0, getWidth(), getHeight());
87
    g.drawRect(0, 0, getWidth(), getHeight());
88
88
89
    g.setOpacity(1.0f);
89
    g.setOpacity(1.0f);
90
    const Colour shadowColour(findColour(0x1000207)); // TextEditor::shadowColourId
90
    const Colour shadowColour(findColour(0x1000207)); // TextEditor::shadowColourId
-
 
91
#if 0
91
    g.drawBevel(0, 0, getWidth(), getHeight() + 2, 3, shadowColour, shadowColour);
92
    g.drawBevel(0, 0, getWidth(), getHeight() + 2, 3, shadowColour, shadowColour);
-
 
93
#else
-
 
94
    {
-
 
95
        // drawBevel has been removed in Juce 2 - copy&paste of old code:
-
 
96
        const int x = 0;
-
 
97
        const int y = 0;
-
 
98
        const int width = getWidth();
-
 
99
        const int height = getHeight() + 2;
-
 
100
        const int bevelThickness = 3;
-
 
101
        const Colour& topLeftColour = shadowColour;
-
 
102
        const Colour& bottomRightColour = shadowColour;
-
 
103
        const bool useGradient = true;
-
 
104
        const bool sharpEdgeOnOutside = true;
-
 
105
     
-
 
106
        if (g.clipRegionIntersects (Rectangle<int> (x, y, width, height))) {
-
 
107
            LowLevelGraphicsContext& context = g.getInternalContext();
-
 
108
            context.saveState();
-
 
109
-
 
110
            const float oldOpacity = 1.0f;//xxx state->colour.getFloatAlpha();
-
 
111
            const float ramp = oldOpacity / bevelThickness;
-
 
112
-
 
113
            for (int i = bevelThickness; --i >= 0;) {
-
 
114
                const float op = useGradient ? ramp * (sharpEdgeOnOutside ? bevelThickness - i : i)
-
 
115
                                                                                 : oldOpacity;
-
 
116
-
 
117
                context.setFill (topLeftColour.withMultipliedAlpha (op));
-
 
118
                context.fillRect (Rectangle<int> (x + i, y + i, width - i * 2, 1), false);
-
 
119
                context.setFill (topLeftColour.withMultipliedAlpha (op * 0.75f));
-
 
120
                context.fillRect (Rectangle<int> (x + i, y + i + 1, 1, height - i * 2 - 2), false);
-
 
121
                context.setFill (bottomRightColour.withMultipliedAlpha (op));
-
 
122
                context.fillRect (Rectangle<int> (x + i, y + height - i - 1, width - i * 2, 1), false);
-
 
123
                context.setFill (bottomRightColour.withMultipliedAlpha (op  * 0.75f));
-
 
124
                context.fillRect (Rectangle<int> (x + width - i - 1, y + i + 1, 1, height - i * 2 - 2), false);
-
 
125
            }
-
 
126
-
 
127
            context.restoreState();
-
 
128
        }
-
 
129
    }
-
 
130
#endif
92
}
131
}
93
132
94
//==============================================================================
133
//==============================================================================
95
void LogBox::clear(void)
134
void LogBox::clear(void)
96
{
135
{