mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-01-21 07:17:26 -08:00
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
76 lines
2.5 KiB
Diff
76 lines
2.5 KiB
Diff
--- _Gnuplot.py.orig 2003-10-17 16:28:10.000000000 +0200
|
|
+++ _Gnuplot.py 2004-10-28 14:39:20.000000000 +0200
|
|
@@ -18,6 +18,27 @@
|
|
|
|
import gp, PlotItems, termdefs
|
|
|
|
+def test_mouse():
|
|
+ """Return whether mouse support is present or not.
|
|
+
|
|
+ The detection is done by calling gnuplot with a file containing only the
|
|
+ "set mouse" command. If gnuplot does have mouse support, it should simply
|
|
+ execute the file silently, producing no output."""
|
|
+
|
|
+ import os,tempfile,commands
|
|
+
|
|
+ tmpname = tempfile.mktemp()
|
|
+ tfile = open(tmpname,"w")
|
|
+ tfile.write("set mouse")
|
|
+ tfile.close()
|
|
+ msg = commands.getoutput(gp.GnuplotOpts.gnuplot_command + " " +
|
|
+ tmpname)
|
|
+ os.unlink(tmpname)
|
|
+ if msg: # Gnuplot won"t print anything if it has mouse support
|
|
+ has_mouse = 0
|
|
+ else:
|
|
+ has_mouse = 1
|
|
+ return has_mouse
|
|
|
|
class _GnuplotFile:
|
|
"""A file to which gnuplot commands can be written.
|
|
@@ -152,7 +173,7 @@
|
|
'output' : 'string',
|
|
}
|
|
|
|
- def __init__(self, filename=None, persist=None, debug=0):
|
|
+ def __init__(self, filename=None, persist=None, debug=0, mouse=None):
|
|
"""Create a Gnuplot object.
|
|
|
|
Create a 'Gnuplot' object. By default, this starts a gnuplot
|
|
@@ -172,8 +193,19 @@
|
|
'debug=1' -- echo the gnuplot commands to stderr as well as
|
|
sending them to gnuplot.
|
|
|
|
+ "mouse=1" -- activate mouse support (officially available as of
|
|
+ gnuplot 4.0 under certain platforms).
|
|
+
|
|
"""
|
|
|
|
+ # The mouse check must be done first, so we can decide whether to use
|
|
+ # inline data and fifos or not (they break mouse support)
|
|
+ if mouse is None:
|
|
+ mouse = test_mouse()
|
|
+ if mouse:
|
|
+ gp.GnuplotOpts.prefer_inline_data = 0
|
|
+ gp.GnuplotOpts.prefer_fifo_data = 0
|
|
+
|
|
if filename is None:
|
|
self.gnuplot = gp.GnuplotProcess(persist=persist)
|
|
else:
|
|
@@ -182,10 +214,14 @@
|
|
'Gnuplot with output to file does not allow '
|
|
'persist option.')
|
|
self.gnuplot = _GnuplotFile(filename)
|
|
+
|
|
self._clear_queue()
|
|
self.debug = debug
|
|
self.plotcmd = 'plot'
|
|
- self('set terminal %s' % (gp.GnuplotOpts.default_term,))
|
|
+ # The "set mouse" command MUST be the VERY FIRST command passed to gnuplot
|
|
+ if mouse:
|
|
+ self("set mouse")
|
|
+ self("set terminal %s" % gp.GnuplotOpts.default_term)
|
|
|
|
def __call__(self, s):
|
|
"""Send a command string to gnuplot.
|