Revision: 75305
http://sourceforge.net/p/brlcad/code/75305
Author: starseeker
Date: 2020-04-08 18:56:15 +0000 (Wed, 08 Apr 2020)
Log Message:
-----------
more context propagation
Modified Paths:
--------------
brlcad/trunk/include/dm.h
brlcad/trunk/src/libdm/dm-Null.c
brlcad/trunk/src/libdm/dm-Null.h
brlcad/trunk/src/libdm/dm-X.c
brlcad/trunk/src/libdm/dm-generic.c
brlcad/trunk/src/libdm/dm-ogl.c
brlcad/trunk/src/libdm/dm-tk.c
brlcad/trunk/src/libdm/dm-txt.c
brlcad/trunk/src/libdm/dm-wgl.c
brlcad/trunk/src/libdm/dm_private.h
brlcad/trunk/src/libtclcad/dm_tcl.c
brlcad/trunk/src/libtclcad/tclcad_obj.c
brlcad/trunk/src/mged/attach.c
brlcad/trunk/src/mged/doevent.c
Modified: brlcad/trunk/include/dm.h
===================================================================
--- brlcad/trunk/include/dm.h 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/include/dm.h 2020-04-08 18:56:15 UTC (rev 75305)
@@ -397,7 +397,7 @@
DM_EXPORT extern void dm_set_bound(dm *dmp, fastf_t val);
DM_EXPORT extern int dm_get_stereo(dm *dmp);
DM_EXPORT extern int dm_set_win_bounds(dm *dmp, fastf_t *w);
-DM_EXPORT extern int dm_configure_win(dm *dmp, int force);
+DM_EXPORT extern int dm_configure_win(dm *dmp, struct dm_context *context, int
force);
DM_EXPORT extern struct bu_vls *dm_get_pathname(dm *dmp);
DM_EXPORT extern struct bu_vls *dm_get_dname(dm *dmp);
DM_EXPORT extern struct bu_vls *dm_get_tkname(dm *dmp);
Modified: brlcad/trunk/src/libdm/dm-Null.c
===================================================================
--- brlcad/trunk/src/libdm/dm-Null.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-Null.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -168,7 +168,7 @@
int
-null_configureWin(struct dm_internal *UNUSED(dmp), int UNUSED(force))
+null_configureWin(struct dm_internal *UNUSED(dmp), struct dm_context
*UNUSED(context), int UNUSED(force))
{
return 0;
}
Modified: brlcad/trunk/src/libdm/dm-Null.h
===================================================================
--- brlcad/trunk/src/libdm/dm-Null.h 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-Null.h 2020-04-08 18:56:15 UTC (rev 75305)
@@ -111,7 +111,7 @@
DM_EXPORT extern int
-null_configureWin(dm *dmp, int force);
+null_configureWin(dm *dmp, struct dm_context *context, int force);
DM_EXPORT extern int
Modified: brlcad/trunk/src/libdm/dm-X.c
===================================================================
--- brlcad/trunk/src/libdm/dm-X.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-X.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -158,7 +158,7 @@
HIDDEN int
-X_configureWin_guts(struct dm_internal *dmp, int force)
+X_configureWin_guts(struct dm_internal *dmp, struct dm_context *context, int
force)
{
XWindowAttributes xwa;
XFontStruct *newfontstruct;
@@ -183,14 +183,9 @@
}
#ifdef HAVE_TK
- Tk_FreePixmap(pubvars->dpy,
- privars->pix);
- privars->pix =
- Tk_GetPixmap(pubvars->dpy,
- DefaultRootWindow(pubvars->dpy),
- dmp->dm_width,
- dmp->dm_height,
- Tk_Depth(pubvars->xtkwin));
+ (*context->dm_free_pixmap)(dmp, pubvars->dpy, privars->pix);
+ privars->pix = (Pixmap)(*context->dm_get_pixmap)(dmp, pubvars->dpy,
DefaultRootWindow(pubvars->dpy),
+ pubvars->xtkwin, dmp->dm_width, dmp->dm_height);
#endif
/* First time through, load a font or quit */
@@ -737,7 +732,7 @@
privars->xmat = &(privars->mod_mat[0]);
- (void)X_configureWin_guts(dmp, 1);
+ (void)X_configureWin_guts(dmp, context, 1);
#ifdef HAVE_TK
(*context->dm_window_set_bg)(dmp, pubvars->xtkwin, privars->bg);
@@ -1423,10 +1418,10 @@
HIDDEN int
-X_configureWin(struct dm_internal *dmp, int force)
+X_configureWin(struct dm_internal *dmp, struct dm_context *context, int force)
{
/* don't force */
- return X_configureWin_guts(dmp, force);
+ return X_configureWin_guts(dmp, context, force);
}
Modified: brlcad/trunk/src/libdm/dm-generic.c
===================================================================
--- brlcad/trunk/src/libdm/dm-generic.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-generic.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -543,10 +543,10 @@
return dmp->dm_stereo;
}
int
-dm_configure_win(dm *dmp, int force)
+dm_configure_win(dm *dmp, struct dm_context *context, int force)
{
if (UNLIKELY(!dmp)) return 0;
- return dmp->dm_configureWin(dmp, force);
+ return dmp->dm_configureWin(dmp, context, force);
}
struct bu_vls *
Modified: brlcad/trunk/src/libdm/dm-ogl.c
===================================================================
--- brlcad/trunk/src/libdm/dm-ogl.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-ogl.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -122,7 +122,7 @@
HIDDEN int ogl_setBGColor(struct dm_internal *dmp, unsigned char r, unsigned
char g, unsigned char b);
HIDDEN int ogl_setLineAttr(struct dm_internal *dmp, int width, int style);
HIDDEN int ogl_configureWin_guts(struct dm_internal *dmp, int force);
-HIDDEN int ogl_configureWin(struct dm_internal *dmp, int force);
+HIDDEN int ogl_configureWin(struct dm_internal *dmp, struct dm_context *, int
force);
HIDDEN int ogl_setLight(struct dm_internal *dmp, int lighting_on);
HIDDEN int ogl_setTransparency(struct dm_internal *dmp, int transparency_on);
HIDDEN int ogl_setDepthMask(struct dm_internal *dmp, int depthMask_on);
@@ -407,7 +407,7 @@
HIDDEN int
-ogl_configureWin(struct dm_internal *dmp, int force)
+ogl_configureWin(struct dm_internal *dmp, struct dm_context *UNUSED(context),
int force)
{
if (!glXMakeCurrent(((struct dm_xvars *)dmp->dm_vars.pub_vars)->dpy,
((struct dm_xvars *)dmp->dm_vars.pub_vars)->win,
Modified: brlcad/trunk/src/libdm/dm-tk.c
===================================================================
--- brlcad/trunk/src/libdm/dm-tk.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-tk.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -786,7 +786,7 @@
HIDDEN int
-tk_configureWin(struct dm_internal *dmp, int force)
+tk_configureWin(struct dm_internal *dmp, struct dm_context *UNUSED(context),
int force)
{
/* don't force */
return tk_configureWin_guts(dmp, force);
Modified: brlcad/trunk/src/libdm/dm-txt.c
===================================================================
--- brlcad/trunk/src/libdm/dm-txt.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-txt.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -205,7 +205,7 @@
HIDDEN int
-txt_configureWin(dm *UNUSED(dmp), int UNUSED(force))
+txt_configureWin(dm *UNUSED(dmp), struct dm_context *UNUSED(context), int
UNUSED(force))
{
bu_log("configureWin called\n");
return 0;
Modified: brlcad/trunk/src/libdm/dm-wgl.c
===================================================================
--- brlcad/trunk/src/libdm/dm-wgl.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm-wgl.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -1991,7 +1991,7 @@
HIDDEN int
-wgl_configureWin(dm *dmp, int force)
+wgl_configureWin(dm *dmp, struct dm_context *UNUSED(context), int force)
{
if (!wglMakeCurrent(((struct dm_xvars *)dmp->dm_vars.pub_vars)->hdc,
((struct wgl_vars *)dmp->dm_vars.priv_vars)->glxc)) {
Modified: brlcad/trunk/src/libdm/dm_private.h
===================================================================
--- brlcad/trunk/src/libdm/dm_private.h 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libdm/dm_private.h 2020-04-08 18:56:15 UTC (rev 75305)
@@ -82,7 +82,7 @@
int (*dm_setFGColor)(struct dm_internal *dmp, unsigned char r, unsigned
char g, unsigned char b, int strict, fastf_t transparency);
int (*dm_setBGColor)(struct dm_internal *, unsigned char, unsigned char,
unsigned char);
int (*dm_setLineAttr)(struct dm_internal *dmp, int width, int style);
/**< @brief currently - linewidth, (not-)dashed */
- int (*dm_configureWin)(struct dm_internal *dmp, int force);
+ int (*dm_configureWin)(struct dm_internal *dmp, struct dm_context
*context, int force);
int (*dm_setWinBounds)(struct dm_internal *dmp, fastf_t *w);
int (*dm_setLight)(struct dm_internal *dmp, int light_on);
int (*dm_setTransparency)(struct dm_internal *dmp, int transparency_on);
Modified: brlcad/trunk/src/libtclcad/dm_tcl.c
===================================================================
--- brlcad/trunk/src/libtclcad/dm_tcl.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/libtclcad/dm_tcl.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -1626,7 +1626,7 @@
}
/* configure the display manager window */
- status = dm_configure_win(dmop->dmo_dmp, 0);
+ status = dm_configure_win(dmop->dmo_dmp, &dm_tk_context, 0);
#ifdef USE_FBSERV
/* configure the framebuffer window */
Modified: brlcad/trunk/src/libtclcad/tclcad_obj.c
===================================================================
--- brlcad/trunk/src/libtclcad/tclcad_obj.c 2020-04-08 18:41:51 UTC (rev
75304)
+++ brlcad/trunk/src/libtclcad/tclcad_obj.c 2020-04-08 18:56:15 UTC (rev
75305)
@@ -2519,7 +2519,7 @@
}
/* configure the display manager window */
- status = dm_configure_win(gdvp->gdv_dmp, 0);
+ status = dm_configure_win(gdvp->gdv_dmp, &dm_tk_context, 0);
/* configure the framebuffer window */
if (gdvp->gdv_fbs.fbs_fbp != FB_NULL)
@@ -6446,7 +6446,7 @@
if (DM_VALID_FONT_SIZE(fontsize) || fontsize == 0) {
dm_set_fontsize(gdvp->gdv_dmp, fontsize);
- (void)dm_configure_win(gdvp->gdv_dmp, 1);
+ (void)dm_configure_win(gdvp->gdv_dmp, &dm_tk_context, 1);
to_refresh_view(gdvp);
return GED_OK;
}
Modified: brlcad/trunk/src/mged/attach.c
===================================================================
--- brlcad/trunk/src/mged/attach.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/mged/attach.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -284,7 +284,7 @@
#ifdef HAVE_TK
Tk_CreateGenericHandler(doEvent, (ClientData)NULL);
#endif
- (void)dm_configure_win(DMP, 0);
+ (void)dm_configure_win(DMP, &dm_tk_context, 0);
if (dm_get_pathname(DMP)) {
bu_vls_printf(&vls, "mged_bind_dm %s",
bu_vls_addr(dm_get_pathname(DMP)));
Modified: brlcad/trunk/src/mged/doevent.c
===================================================================
--- brlcad/trunk/src/mged/doevent.c 2020-04-08 18:41:51 UTC (rev 75304)
+++ brlcad/trunk/src/mged/doevent.c 2020-04-08 18:56:15 UTC (rev 75305)
@@ -49,6 +49,7 @@
#include "vmath.h"
#include "raytrace.h"
#include "ged.h"
+#include "tclcad.h"
#include "dm/dm_xvars.h"
#include "./mged.h"
@@ -148,7 +149,7 @@
if (eventPtr->type == ConfigureNotify) {
XConfigureEvent *conf = (XConfigureEvent *)eventPtr;
- dm_configure_win(DMP, 0);
+ dm_configure_win(DMP, &dm_tk_context, 0);
rect_image2view();
dirty = 1;
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