Browse Source

Linux 64-bit icon fix.

tags/2021-05-28
jules 13 years ago
parent
commit
e1fea143b6
2 changed files with 17 additions and 17 deletions
  1. +13
    -13
      modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp
  2. +4
    -4
      modules/juce_gui_basics/native/juce_linux_Windowing.cpp

+ 13
- 13
modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp View File

@@ -72,14 +72,14 @@ namespace DirectWriteTypeLayout
lastOriginY = baselineOriginY;
++currentLine;
if (currentLine >= layout->getNumLines())
{
jassert (currentLine == layout->getNumLines());
TextLayout::Line* const newLine = new TextLayout::Line();
layout->addLine (newLine);
newLine->lineOrigin = Point<float> (baselineOriginX, baselineOriginY); // The x value is only correct when dealing with LTR text
}
}
if (currentLine >= layout->getNumLines())
{
jassert (currentLine == layout->getNumLines());
TextLayout::Line* const newLine = new TextLayout::Line();
layout->addLine (newLine);
newLine->lineOrigin = Point<float> (baselineOriginX, baselineOriginY); // The x value is only correct when dealing with LTR text
}
}
TextLayout::Line& glyphLine = layout->getLine (currentLine);
@@ -319,15 +319,15 @@ namespace DirectWriteTypeLayout
layout.ensureStorageAllocated (actualLineCount);
{
ComSmartPtr<CustomDirectWriteTextRenderer> textRenderer (new CustomDirectWriteTextRenderer (fontCollection));
hr = dwTextLayout->Draw (&layout, textRenderer, 0, 0);
}
{
ComSmartPtr<CustomDirectWriteTextRenderer> textRenderer (new CustomDirectWriteTextRenderer (fontCollection));
hr = dwTextLayout->Draw (&layout, textRenderer, 0, 0);
}
HeapBlock <DWRITE_LINE_METRICS> dwLineMetrics (actualLineCount);
hr = dwTextLayout->GetLineMetrics (dwLineMetrics, actualLineCount, &actualLineCount);
int lastLocation = 0;
const int numLines = jmin ((int) actualLineCount, layout.getNumLines());
const int numLines = jmin ((int) actualLineCount, layout.getNumLines());
for (int i = 0; i < numLines; ++i)
{


+ 4
- 4
modules/juce_gui_basics/native/juce_linux_Windowing.cpp View File

@@ -1139,15 +1139,15 @@ public:
void setIcon (const Image& newIcon)
{
const int dataSize = newIcon.getWidth() * newIcon.getHeight() + 2;
HeapBlock <int> data (dataSize);
HeapBlock <unsigned long> data (dataSize);
int index = 0;
data[index++] = newIcon.getWidth();
data[index++] = newIcon.getHeight();
data[index++] = (unsigned long) newIcon.getWidth();
data[index++] = (unsigned long) newIcon.getHeight();
for (int y = 0; y < newIcon.getHeight(); ++y)
for (int x = 0; x < newIcon.getWidth(); ++x)
data[index++] = newIcon.getPixelAt (x, y).getARGB();
data[index++] = (unsigned long) newIcon.getPixelAt (x, y).getARGB();
ScopedXLock xlock;
xchangeProperty (windowH, Atoms::getCreating ("_NET_WM_ICON"), XA_CARDINAL, 32, data.getData(), dataSize);


Loading…
Cancel
Save