<chapter id="dcop"> <title>Scripting &kmplot;</title> <para>A new feature in &kde; 3.4 is that you can write scrips for &kmplot; with &DCOP;. For example, if you want to define a new function <userinput>f(x)=2sin x+3cos x</userinput>, set its line width to 20 and then draw it, you type in a console:</para> <para><command>dcop kmplot-PID Parser addFunction "f(x)=2sin x+3cos x"</command> As a result, the new function's id number will be returned, or -1 if the function could not be defined.</para> <para><command>>dcop kmplot-PID Parser setFunctionFLineWidth 20 ID</command> This command sets the function with the id number ID the line width to 20.</para> <para><command>>dcop kmplot-PID View drawPlot</command> This command repaints the window so that the function get visible.</para> <para> A list over the available functions: <variablelist> <varlistentry> <term> KmPlotShell fileOpen &url </term> <listitem> <para>Load the file <parameter>url</parameter>.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg isModified </term> <listitem> <para>Returns true if any changes are done.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg editColors </term> <listitem> <para>Opens the color edit dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg editAxes </term> <listitem> <para>Opens the coordinate system edit dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg editScaling </term> <listitem> <para>Opens the scaling edit dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg editFonts </term> <listitem> <para>Opens the fonts edit dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg editConstants </term> <listitem> <para>Opens the constants edit dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg newFunction </term> <listitem> <para>Opens the new function plot dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg newParametric </term> <listitem> <para>Opens the new parametric plot dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg newPolar </term> <listitem> <para>Opens the new polar plot dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg toggleShowSlider0 </term> <listitem> <para>Shows/hides parameter slider window number 1.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg toggleShowSlider1 </term> <listitem> <para>Shows/hides parameter slider window number 2.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg toggleShowSlider2 </term> <listitem> <para>Shows/hides parameter slider window number 3.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg toggleShowSlider3 </term> <listitem> <para>Shows/hides parameter slider window number 4.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotSave </term> <listitem> <para>Saves the functions (opens the save dialog if it is a new file).</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotSaveas </term> <listitem> <para>The same as choosing <menuchoice><guimenu>File</guimenu><guimenuitem>Save As</guimenuitem></menuchoice> in the menu.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotEditPlots </term> <listitem> <para>Opens the edit plots dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotPrint </term> <listitem> <para>Opens the print dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotExport </term> <listitem> <para>Opens the export dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotSettings </term> <listitem> <para>Opens the settings dialog.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotNames </term> <listitem> <para>Shows a list of predefined math functions.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotCoord1 </term> <listitem> <para>Coordinate System I.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotCoord2 </term> <listitem> <para>Coordinate System II.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg slotCoord3 </term> <listitem> <para>Coordinate System III.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg getYValue </term> <listitem> <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Get y-Value...</guimenuitem></menuchoice> in the menu.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg findMinimumValue </term> <listitem> <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Search for Minimum Value...</guimenuitem></menuchoice> in the menu.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg findMaximumValue </term> <listitem> <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Search for Maximum Value...</guimenuitem></menuchoice> in the menu.</para> </listitem> </varlistentry> <varlistentry> <term> MainDlg graphArea </term> <listitem> <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Calculate Integral</guimenuitem></menuchoice> in the menu.</para> </listitem> </varlistentry> <varlistentry> <term> Parser addFunction f_str </term> <listitem> <para>Adds a new function with the expression <parameter>f_str</parameter>. If the expression does not contain a function name, it will be auto-generated. The id number of the new function is returned, or -1 if the function couln't be defined.</para> </listitem> </varlistentry> <varlistentry> <term> Parser delfkt id </term> <listitem> <para>Removes the function with the id number <parameter>id</parameter>. If the function could not be deleted, false is returned, otherwise true.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionExpression f_str id </term> <listitem> <para>Sets the expression for the function with the id number <parameter>id</parameter> to <parameter>f_str</parameter>. Returns true if it succeed, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser countFunctions </term> <listitem> <para>Returns the number of functions (parametric functions are calculated as two).</para> </listitem> </varlistentry> <varlistentry> <term> Parser listFunctionNames </term> <listitem> <para>Returns a list with all functions.</para> </listitem> </varlistentry> <varlistentry> <term> Parser fnameToId f_str </term> <listitem> <para>Returns the id number of <parameter>f_str</parameter> or -1 if the function name <parameter>f_str</parameter> was not found.</para> </listitem> </varlistentry> <varlistentry> <term> Parser id x </term> <listitem> <para>Calculates the value <parameter>x</parameter> for the function with the ID <parameter>id</parameter> or returns 0.0 if <parameter>id</parameter> does not exist.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionFVisible id </term> <listitem> <para>Returns true if the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionF1Visible id </term> <listitem> <para>Returns true if the first derivative of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionF2Visible id </term> <listitem> <para>Returns true if the second derivative of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionIntVisible id </term> <listitem> <para>Returns true if the integral of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionFVisible visible id </term> <listitem> <para>Shows the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionF1Visible visible id </term> <listitem> <para>Shows the first derivative of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionF2Visible visible id </term> <listitem> <para>Shows the second derivative of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionIntVisible visible id </term> <listitem> <para>Shows the integral of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionStr id </term> <listitem> <para>Returns the function expression of the function with the ID <parameter>id</parameter>. If the function not exists, an empty string is returned instead.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionFColor id </term> <listitem> <para>Returns the color of the function with the ID <parameter>id</parameter>.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionF1Color id </term> <listitem> <para>Returns the color of the first derivative of the function with the ID <parameter>id</parameter>.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionF2Color id </term> <listitem> <para>Returns the color of the second derivative of the function with the ID <parameter>id</parameter>.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionIntColor id </term> <listitem> <para>Returns the color of the integral of the function with the ID <parameter>id</parameter>.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionFColor color id </term> <listitem> <para>Sets the color of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionF1Color color id </term> <listitem> <para>Sets the color of the first derivative of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionF2Color color id </term> <listitem> <para>Sets the color of the second derivative of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionIntColor color id </term> <listitem> <para>Sets the color of the integral of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionFLineWidth id </term> <listitem> <para>Returns the line width of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionF1LineWidth id </term> <listitem> <para>Returns the line width of the first derivative of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionF2LineWidth id </term> <listitem> <para>Returns the line width of the first derivative of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionIntLineWidth id </term> <listitem> <para>Returns the line width of the integral of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionFLineWidth linewidth id </term> <listitem> <para>Sets the line width of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionF1LineWidth linewidth id </term> <listitem> <para>Sets the line width of the first derivative of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionF2LineWidth linewidth id </term> <listitem> <para>Sets the line width of the second derivative of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionIntLineWidth linewidth id </term> <listitem> <para>Sets the line width of the integral of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionParameterList id </term> <listitem> <para>Returns a list with all the parameter values for the function with the ID <parameter>id</parameter>.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionAddParameter new_parameter id </term> <listitem> <para>Adds the parameter value <parameter>new_parameter</parameter> to the function with the ID <parameter>id</parameter>. True is returned if the operation succeed, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionRemoveParameter remove_parameter id </term> <listitem> <para>Removes the parameter value <parameter>remove_parameter</parameter> from the function with the ID <parameter>id</parameter>. True is returned if the operation succeed, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionMinValue id </term> <listitem> <para>Returns the minimum plot range value of the function with the ID <parameter>id</parameter>. If the function not exists or if the minimum value is not definied, an empty string is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionMaxValue id </term> <listitem> <para>Returns the maximum plot range value of the function with the ID <parameter>id</parameter>. If the function not exists or if the maximum value is not definied, an empty string is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionMinValue min id </term> <listitem> <para>Sets the minimum plot range value of the function with the ID <parameter>id</parameter> to <parameter>min</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionMaxValue max id </term> <listitem> <para>Sets the maximum plot range value of the function with the ID <parameter>id</parameter> to <parameter>max</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionStartXValue id </term> <listitem> <para>Returns the initial x point for the integral of the function with the ID <parameter>id</parameter>. If the function not exists or if the x-point-expression is not definied, an empty string is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser functionStartYValue id </term> <listitem> <para>Returns the initial y point for the integral of the function with the ID <parameter>id</parameter>. If the function not exists or if the y-point-expression is not definied, an empty string is returned.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionStartXValue min id </term> <listitem> <para>Sets the initial x point for the integral of the function with the ID <parameter>id</parameter> to <parameter>x</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> Parser setFunctionStartYValue max id </term> <listitem> <para>Sets the initial y point for the integral of the function with the ID <parameter>id</parameter> to <parameter>y</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> </listitem> </varlistentry> <varlistentry> <term> View stopDrawing </term> <listitem> <para>If &kmplot; currently is drawing a function, the procedure will stop.</para> </listitem> </varlistentry> <varlistentry> <term> View drawPlot </term> <listitem> <para>Redraws all functions.</para> </listitem> </varlistentry> </variablelist> </para> </chapter> <!-- Local Variables: mode: sgml sgml-minimize-attributes:nil sgml-general-insert-case:lower sgml-indent-step:0 sgml-indent-data:nil sgml-parent-document:("index.docbook" "BOOK" "CHAPTER") End: -->