void SaveOnExitProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
void InfoProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
void ManProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
+void GuideProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
+void HomePageProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
+void NewsPageProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
+void BugReportProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
void HintProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
void BookProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
void AboutGameProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms));
{N_("Info XBoard"), "Info XBoard", InfoProc},
{N_("Man XBoard F1"), "Man XBoard", ManProc},
{"----", NULL, NothingProc},
+ {N_("XBoard Home Page"), "Home Page", HomePageProc},
+ {N_("On-line User Guide"), "User Guide", GuideProc},
+ {N_("Development News"), "News Page", NewsPageProc},
+ {N_("e-Mail Bug Report"), "Bug Report", BugReportProc},
+ {"----", NULL, NothingProc},
{N_("About XBoard"), "About XBoard", AboutProc},
{NULL, NULL, NULL}
};
XtSetValues(sh, args, j);
}
+static XtIntervalId delayedDragID = 0;
+
void
DragProc ()
{
if(GameListIsUp()) CoDrag(gameListShell, &wpGameList);
wpMain = wpNew;
XDrawPosition(boardWidget, True, NULL);
+ delayedDragID = 0; // now drag executed, make sure next DelayedDrag will not cancel timer event (which could now be used by other)
}
void
DelayedDrag ()
{
- static XtIntervalId delayedDragID = 0;
if(delayedDragID) XtRemoveTimeOut(delayedDragID); // cancel pending
delayedDragID =
XtAppAddTimeOut(appContext, 50, (XtTimerCallbackProc) DragProc, (XtPointer) 0); // and schedule new one 50 msec later
}
void
+BugReportProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
+{
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s mailto:bug-xboard@gnu.org", appData.sysOpen);
+ system(buf);
+}
+
+void
+GuideProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
+{
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s http://www.gnu.org/software/xboard/user_guide/UserGuide.html", appData.sysOpen);
+ system(buf);
+}
+
+void
+HomePageProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
+{
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s http://www.gnu.org/software/xboard/", appData.sysOpen);
+ system(buf);
+}
+
+void
+NewsPageProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
+{
+ char buf[MSG_SIZ];
+ snprintf(buf, MSG_SIZ, "%s http://www.gnu.org/software/xboard/whats_new/portal.html", appData.sysOpen);
+ system(buf);
+}
+
+void
AboutProc (Widget w, XEvent *event, String *prms, Cardinal *nprms)
{
char buf[2 * MSG_SIZ];