Revision: 75436
http://sourceforge.net/p/brlcad/code/75436
Author: starseeker
Date: 2020-04-17 15:21:55 +0000 (Fri, 17 Apr 2020)
Log Message:
-----------
Stub in a png image callback - not properly generic, that needs a translation
of this to libicv, but for now we just need to hide the details of dmo_get_png
Modified Paths:
--------------
brlcad/branches/dm-fb-merge/include/dm.h
brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c
brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c
brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c
brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h
brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c
brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp
brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c
brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c
brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp
brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c
brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c
brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c
Modified: brlcad/branches/dm-fb-merge/include/dm.h
===================================================================
--- brlcad/branches/dm-fb-merge/include/dm.h 2020-04-17 15:06:54 UTC (rev
75435)
+++ brlcad/branches/dm-fb-merge/include/dm.h 2020-04-17 15:21:55 UTC (rev
75436)
@@ -28,6 +28,8 @@
#include "common.h"
+#include "png.h"
+
#include "vmath.h"
#include "bn.h"
#include "raytrace.h"
@@ -289,6 +291,10 @@
DM_EXPORT extern int dm_get_fb_visible(struct dm *dmp);
DM_EXPORT extern int dm_set_fb_visible(struct dm *dmp, int is_fb_visible);
+// TODO - this should be using libicv rather than returning a PNG struct -
right
+// now this just moving the guts of dmo_png_cmd behind the call table...
+DM_EXPORT extern png_structp dm_get_image(struct dm *dmp);
+
/* TODO - dm_vp is supposed to go away, but until we figure it out
* expose it here to allow dm hiding */
DM_EXPORT extern fastf_t *dm_get_vp(struct dm *dmp);
Modified: brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -1713,6 +1713,14 @@
{"", 0, (char *)0, 0,
BU_STRUCTPARSE_FUNC_NULL, NULL, NULL}
};
+int
+X_geometry_request(struct dm *dmp, int width, int height)
+{
+ if (!dmp) return -1;
+ Tk_GeometryRequest(((struct dm_Xvars *)dmp->i->dm_vars.pub_vars)->xtkwin,
width, height);
+ return 0;
+}
+
#define XVARS_MV_O(_m) offsetof(struct dm_Xvars, _m)
struct bu_structparse dm_Xvars_vparse[] = {
@@ -1785,8 +1793,9 @@
X_openFb,
NULL,
NULL,
+ X_geometry_request,
+ X_internal_var,
NULL,
- NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -36,7 +36,6 @@
#include "dm.h"
#include "rt/solid.h"
#include "./include/private.h"
-#include "./include/dm_xvars.h"
#include "./null/dm-Null.h"
extern struct dm *plot_open(void *interp, int argc, const char *argv[]);
@@ -188,6 +187,15 @@
}
}
+png_structp
+dm_get_image(struct dm *dmp)
+{
+ if (!dmp || !dmp->i->dm_get_image) return NULL;
+ return dmp->i->dm_get_image(dmp);
+}
+
+/* Properly generic functions */
+
void
dm_geometry_request(struct dm *dmp, int width, int height)
{
@@ -202,7 +210,6 @@
(void)dmp->i->dm_internal_var(result, dmp, key);
}
-/* Properly generic function */
fastf_t
dm_Xx2Normal(struct dm *dmp, int x)
Modified: brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -2665,6 +2665,7 @@
ogl_put_internal,
ogl_geometry_request,
ogl_internal_var,
+ NULL,
0,
1, /* has displaylist */
0, /* no stereo by default */
Modified: brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h 2020-04-17
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h 2020-04-17
15:21:55 UTC (rev 75436)
@@ -34,6 +34,8 @@
#ifndef DM_CALLTABLE_H
#define DM_CALLTABLE_H
+#include "png.h"
+
#include "bu/parse.h"
#include "bu/vls.h"
#include "dm.h"
@@ -94,6 +96,7 @@
int (*dm_put_internal)(struct dm *dmp);
int (*dm_geometry_request)(struct dm *dmp, int width, int height);
int (*dm_internal_var)(struct bu_vls *result, struct dm *dmp, const char
*key);
+ png_structp (*dm_get_image)(struct dm *dmp);
unsigned long dm_id; /**< @brief window id */
int dm_displaylist; /**< @brief !0 means device has
displaylist */
int dm_stereo; /**< @brief stereo flag */
Modified: brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c 2020-04-17
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c 2020-04-17
15:21:55 UTC (rev 75436)
@@ -326,6 +326,7 @@
NULL,
NULL,
NULL,
+ NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp 2020-04-17
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp 2020-04-17
15:21:55 UTC (rev 75436)
@@ -2560,6 +2560,7 @@
osgl_put_internal,
osgl_geometry_request,
osgl_internal_var,
+ NULL,
0,
1, /* has displaylist */
0, /* no stereo by default */
Modified: brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c 2020-04-17
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c 2020-04-17
15:21:55 UTC (rev 75436)
@@ -571,6 +571,7 @@
NULL,
NULL,
NULL,
+ NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c 2020-04-17
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c 2020-04-17
15:21:55 UTC (rev 75436)
@@ -541,6 +541,7 @@
NULL,
NULL,
NULL,
+ NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -1067,6 +1067,7 @@
NULL,
qt_geometry_request,
qt_internal_var,
+ NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -931,6 +931,7 @@
NULL,
tk_geometry_request,
tk_internal_var,
+ NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -382,6 +382,7 @@
NULL,
NULL,
NULL,
+ NULL,
0,
0, /* no displaylist */
0, /* no stereo */
Modified: brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c 2020-04-17 15:06:54 UTC
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c 2020-04-17 15:21:55 UTC
(rev 75436)
@@ -2208,6 +2208,7 @@
wgl_put_internal,
wgl_geometry_request,
wgl_internal_var,
+ NULL,
0,
1, /* has displaylist */
0, /* no stereo by default */
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits