1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-23 04:23:08 +00:00

fixing two bugs: XWindow re-size and command line Geometry option

PR:	196012
Submitted by:	jguojun
This commit is contained in:
MIHIRA Sanpei Yoshiro 2015-01-08 01:23:17 +00:00
parent f540659bb8
commit c107e41c7b
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=376508
2 changed files with 62 additions and 6 deletions

View File

@ -3,7 +3,7 @@
PORTNAME= xgraph
PORTVERSION= 11.3.2.20000910
PORTREVISION= 2
PORTREVISION= 3
CATEGORIES= math print
MASTER_SITES= ftp://ftp.cs.utoronto.ca/pub/radford/
DISTNAME= xgraph-11

View File

@ -1,6 +1,6 @@
--- xgraph.c.orig Tue Nov 23 04:29:38 1993
+++ xgraph.c Mon Jun 28 00:44:15 1999
@@ -46,8 +46,6 @@
--- xgraph.c 2000-09-10 07:05:47.000000000 -0700
+++ xgraph.c 2014-12-15 22:32:58.000000000 -0800
@@ -74,8 +74,6 @@
#define BTNPAD 1
#define BTNINTER 3
@ -9,7 +9,7 @@
#define ABS(x) ((x) < 0 ? -(x) : (x))
#define ZERO_THRES 1.0E-07
@@ -266,6 +264,7 @@
@@ -333,6 +331,7 @@
if (!strm) {
(void) fprintf(stderr, "Warning: cannot open file `%s'\n",
inFileNames[idx]);
@ -17,7 +17,63 @@
} else {
if ((maxitems = ReadData(strm, inFileNames[idx])) < 0) {
errs++;
@@ -1369,6 +1368,8 @@
@@ -403,6 +402,7 @@
fg_color = PM_COLOR("Foreground");
bg_color = PM_COLOR("Background");
XRecolorCursor(disp, zoomCursor, &fg_color, &bg_color);
+ init_X(win_info->dev_info.user_state);
Num_Windows = 1;
while (Num_Windows > 0) {
@@ -415,6 +415,12 @@
continue;
}
switch (theEvent.type) {
+ case ConfigureNotify:
+ win_info->dev_info.area_w = theEvent.xconfigure.width;
+ win_info->dev_info.area_h = theEvent.xconfigure.height;
+ XClearArea(disp, theEvent.xany.window, 1, 1, win_info->dev_info.area_w, win_info->dev_info.area_h, 0);
+ DrawWindow(win_info);
+ break;
case Expose:
if (theEvent.xexpose.count <= 0) {
XWindowAttributes win_attr;
@@ -422,7 +428,7 @@
XGetWindowAttributes(disp, theEvent.xany.window, &win_attr);
win_info->dev_info.area_w = win_attr.width;
win_info->dev_info.area_h = win_attr.height;
- init_X(win_info->dev_info.user_state);
+ XClearArea(disp, theEvent.xany.window, 1, 1, win_info->dev_info.area_w, win_info->dev_info.area_h, 0);
DrawWindow(win_info);
}
break;
@@ -715,7 +721,7 @@
if (sizehints.x<0) sizehints.x = 0;
sizehints.y += 25;
}
-#endif
+#else
/* Aspect ratio computation */
if (asp < 1.0) {
@@ -723,6 +729,7 @@
} else {
height = ((int) (((double) NORMSIZE) / asp));
}
+#endif
height = MAX(MINDIM, height);
width = MAX(MINDIM, width);
@@ -789,7 +796,7 @@
new_info->flags = 0;
XSelectInput(disp, new_window,
- ExposureMask|KeyPressMask|ButtonPressMask);
+ ExposureMask|KeyPressMask|ButtonPressMask|StructureNotifyMask);
if (!theCursor) {
theCursor = XCreateFontCursor(disp, XC_top_left_arrow);
fg_color = PM_COLOR("Foreground");
@@ -1478,6 +1485,8 @@
while (*line && (*line != '\n') && (*line != '"')) line++;
if (*line) *line = '\0';
} else {