Browse Source

Get a few more things to build

Signed-off-by: falkTX <falktx@falktx.com>
pull/272/head
falkTX 4 years ago
parent
commit
327bf352ef
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
8 changed files with 45 additions and 37 deletions
  1. +12
    -7
      dgl/Makefile
  2. +7
    -7
      dgl/src/Cairo.cpp
  3. +1
    -1
      dgl/src/NanoVG.cpp
  4. +22
    -2
      dgl/src/OpenGL.cpp
  5. +1
    -1
      dgl/src/SubWidgetPrivateData.cpp
  6. +1
    -1
      dgl/src/SubWidgetPrivateData.hpp
  7. +0
    -17
      dgl/src/TopLevelWidgetPrivateData.cpp
  8. +1
    -1
      dgl/src/WidgetPrivateData.cpp

+ 12
- 7
dgl/Makefile View File

@@ -28,13 +28,18 @@ OBJS_common = \
../build/dgl/ApplicationPrivateData.cpp.o \ ../build/dgl/ApplicationPrivateData.cpp.o \
../build/dgl/Color.cpp.o \ ../build/dgl/Color.cpp.o \
../build/dgl/Geometry.cpp.o \ ../build/dgl/Geometry.cpp.o \
../build/dgl/ImageBase.cpp.o \
../build/dgl/Resources.cpp.o \
../build/dgl/SubWidget.cpp.o \
../build/dgl/SubWidgetPrivateData.cpp.o \
../build/dgl/TopLevelWidget.cpp.o \ ../build/dgl/TopLevelWidget.cpp.o \
../build/dgl/TopLevelWidgetPrivateData.cpp.o \
../build/dgl/Widget.cpp.o \
../build/dgl/WidgetPrivateData.cpp.o \
../build/dgl/Window.cpp.o \ ../build/dgl/Window.cpp.o \
../build/dgl/WindowPrivateData.cpp.o ../build/dgl/WindowPrivateData.cpp.o
# ../build/dgl/ImageBase.cpp.o \
# ../build/dgl/Resources.cpp.o\

# ../build/dgl/StandaloneWindow.cpp.o \ # ../build/dgl/StandaloneWindow.cpp.o \
# ../build/dgl/Widget.cpp.o \
# ../build/dgl/WindowFileBrowser.cpp.o # ../build/dgl/WindowFileBrowser.cpp.o


# TODO: ImageWidgets.cpp # TODO: ImageWidgets.cpp
@@ -42,9 +47,8 @@ OBJS_common = \
# --------------------------------------------------------------------------------------------------------------------- # ---------------------------------------------------------------------------------------------------------------------


OBJS_cairo = $(OBJS_common) \ OBJS_cairo = $(OBJS_common) \
../build/dgl/Cairo.cpp.cairo.o \
../build/dgl/pugl.cpp.cairo.o ../build/dgl/pugl.cpp.cairo.o
# ../build/dgl/Cairo.cpp.cairo.o \
# ../build/dgl/WidgetPrivateData.cpp.cairo.o


# ifeq ($(MACOS),true) # ifeq ($(MACOS),true)
# OBJS_cairo += ../build/dgl/Window.mm.cairo.o # OBJS_cairo += ../build/dgl/Window.mm.cairo.o
@@ -55,11 +59,12 @@ OBJS_cairo = $(OBJS_common) \
# --------------------------------------------------------------------------------------------------------------------- # ---------------------------------------------------------------------------------------------------------------------


OBJS_opengl = $(OBJS_common) \ OBJS_opengl = $(OBJS_common) \
../build/dgl/OpenGL.cpp.opengl.o \
../build/dgl/NanoVG.cpp.opengl.o \
../build/dgl/pugl.cpp.opengl.o ../build/dgl/pugl.cpp.opengl.o
# ../build/dgl/OpenGL.cpp.opengl.o \
# ../build/dgl/Image.cpp.opengl.o \ # ../build/dgl/Image.cpp.opengl.o \
# ../build/dgl/ImageWidgets.cpp.opengl.o \ # ../build/dgl/ImageWidgets.cpp.opengl.o \
# ../build/dgl/NanoVG.cpp.opengl.o \
# ../build/dgl/WidgetPrivateData.cpp.opengl.o \ # ../build/dgl/WidgetPrivateData.cpp.opengl.o \
# ../build/dgl/WindowPrivateData.cpp.opengl.o # ../build/dgl/WindowPrivateData.cpp.opengl.o




+ 7
- 7
dgl/src/Cairo.cpp View File

@@ -15,7 +15,8 @@
*/ */


#include "../Cairo.hpp" #include "../Cairo.hpp"
#include "WidgetPrivateData.hpp"
#include "SubWidgetPrivateData.hpp"
#include "WindowPrivateData.hpp"


START_NAMESPACE_DGL START_NAMESPACE_DGL


@@ -64,15 +65,14 @@ void Rectangle<T>::_draw(const bool outline)


// ----------------------------------------------------------------------- // -----------------------------------------------------------------------


void Widget::PrivateData::display(const uint width,
const uint height,
const double autoScaling,
const bool renderingSubWidget)
void SubWidget::PrivateData::display(const uint width, const uint height, const double autoScaling)
{ {
/*
if ((skipDisplay && ! renderingSubWidget) || size.isInvalid() || ! visible) if ((skipDisplay && ! renderingSubWidget) || size.isInvalid() || ! visible)
return; return;
*/


cairo_t* cr = static_cast<const CairoGraphicsContext&>(parent.getGraphicsContext()).cairo;
cairo_t* cr = static_cast<const CairoGraphicsContext&>(self->getGraphicsContext()).handle;
cairo_matrix_t matrix; cairo_matrix_t matrix;
cairo_get_matrix(cr, &matrix); cairo_get_matrix(cr, &matrix);
cairo_translate(cr, absolutePos.getX(), absolutePos.getY()); cairo_translate(cr, absolutePos.getX(), absolutePos.getY());
@@ -83,7 +83,7 @@ void Widget::PrivateData::display(const uint width,


cairo_set_matrix(cr, &matrix); cairo_set_matrix(cr, &matrix);


displaySubWidgets(width, height, autoScaling);
// displaySubWidgets(width, height, autoScaling);
} }


// ----------------------------------------------------------------------- // -----------------------------------------------------------------------


+ 1
- 1
dgl/src/NanoVG.cpp View File

@@ -963,7 +963,7 @@ NanoWidget<BaseWidget>::NanoWidget(Widget* const parent, int flags)
NanoVG(flags), NanoVG(flags),
nData(new PrivateData(this)) nData(new PrivateData(this))
{ {
BaseWidget::pData->viewportNeedsScaling = true;
BaseWidget::pData->needsViewportScaling = true;
} }


// TopLevelWidget // TopLevelWidget


+ 22
- 2
dgl/src/OpenGL.cpp View File

@@ -16,6 +16,7 @@


#include "../OpenGL.hpp" #include "../OpenGL.hpp"
#include "SubWidgetPrivateData.hpp" #include "SubWidgetPrivateData.hpp"
#include "TopLevelWidgetPrivateData.hpp"
#include "WidgetPrivateData.hpp" #include "WidgetPrivateData.hpp"
#include "WindowPrivateData.hpp" #include "WindowPrivateData.hpp"


@@ -357,7 +358,7 @@ void Widget::PrivateData::display(const uint width,
} }
#endif #endif


void SubWidget::PrivateData::display(uint width, uint height, double autoScaling)
void SubWidget::PrivateData::display(const uint width, const uint height, const double autoScaling)
{ {
bool needsDisableScissor = false; bool needsDisableScissor = false;


@@ -369,7 +370,7 @@ void SubWidget::PrivateData::display(uint width, uint height, double autoScaling
width * autoScaling, width * autoScaling,
height * autoScaling); height * autoScaling);
} }
else if (viewportNeedsScaling)
else if (needsViewportScaling)
{ {
// limit viewport to widget bounds // limit viewport to widget bounds
glViewport(absolutePos.getX(), glViewport(absolutePos.getX(),
@@ -409,6 +410,25 @@ void SubWidget::PrivateData::display(uint width, uint height, double autoScaling


// ----------------------------------------------------------------------- // -----------------------------------------------------------------------


void TopLevelWidget::PrivateData::display()
{
const Size<uint> size(window.getSize());
const uint width = size.getWidth();
const uint height = size.getHeight();
const double autoScaling = window.pData->autoScaling;

// full viewport size
glViewport(0, -(height * autoScaling - height), width * autoScaling, height * autoScaling);

// main widget drawing
self->onDisplay();

// now draw subwidgets if there are any
selfw->pData->displaySubWidgets(width, height, autoScaling);
}

// -----------------------------------------------------------------------

const GraphicsContext& Window::PrivateData::getGraphicsContext() const noexcept const GraphicsContext& Window::PrivateData::getGraphicsContext() const noexcept
{ {
return (const GraphicsContext&)graphicsContext; return (const GraphicsContext&)graphicsContext;


+ 1
- 1
dgl/src/SubWidgetPrivateData.cpp View File

@@ -25,7 +25,7 @@ SubWidget::PrivateData::PrivateData(SubWidget* const s, Widget* const pw)
: self(s), : self(s),
parentWidget(pw), parentWidget(pw),
absolutePos(), absolutePos(),
viewportNeedsScaling(false)
needsViewportScaling(false)
{ {
parentWidget->pData->subWidgets.push_back(self); parentWidget->pData->subWidgets.push_back(self);
} }


+ 1
- 1
dgl/src/SubWidgetPrivateData.hpp View File

@@ -27,7 +27,7 @@ struct SubWidget::PrivateData {
SubWidget* const self; SubWidget* const self;
Widget* const parentWidget; Widget* const parentWidget;
Point<int> absolutePos; Point<int> absolutePos;
bool viewportNeedsScaling; // needed for NanoVG
bool needsViewportScaling; // needed for NanoVG


explicit PrivateData(SubWidget* const s, Widget* const pw); explicit PrivateData(SubWidget* const s, Widget* const pw);
~PrivateData(); ~PrivateData();


+ 0
- 17
dgl/src/TopLevelWidgetPrivateData.cpp View File

@@ -37,23 +37,6 @@ TopLevelWidget::PrivateData::~PrivateData()
window.pData->topLevelWidget = nullptr; window.pData->topLevelWidget = nullptr;
} }


void TopLevelWidget::PrivateData::display()
{
const Size<uint> size(window.getSize());
const uint width = size.getWidth();
const uint height = size.getHeight();
const double autoScaling = window.pData->autoScaling;

// full viewport size
glViewport(0, -(height * autoScaling - height), width * autoScaling, height * autoScaling);

// main widget drawing
self->onDisplay();

// now draw subwidgets if there are any
selfw->pData->displaySubWidgets(width, height, autoScaling);
}

void TopLevelWidget::PrivateData::mouseEvent(const Events::MouseEvent& ev) void TopLevelWidget::PrivateData::mouseEvent(const Events::MouseEvent& ev)
{ {
Events::MouseEvent rev = ev; Events::MouseEvent rev = ev;


+ 1
- 1
dgl/src/WidgetPrivateData.cpp View File

@@ -15,7 +15,7 @@
*/ */


#include "WidgetPrivateData.hpp" #include "WidgetPrivateData.hpp"
#include "../SubWidget.hpp"
#include "SubWidgetPrivateData.hpp"
#include "../TopLevelWidget.hpp" #include "../TopLevelWidget.hpp"


START_NAMESPACE_DGL START_NAMESPACE_DGL


Loading…
Cancel
Save