--- configuration.general.41.sgml	Sat May 15 11:09:18 2004
+++ configuration.general.-buttons-41.sgml	Mon May 17 11:11:44 2004
@@ -436,6 +436,104 @@
 selection.
 
 </para>
+
+<para>
+
+If you are not satisfied with order of buttons, or you want to remove certain buttons,
+you can use <varname>$opts['buttons']</varname> option. In this option, you can specify
+exact buttons to be displayed, even with custom ones. There are several common reasons
+to remove some buttons: when having huge amount of pages, dropdown box creation is too long,
+display save button only at the bottom of the page to force users to scroll through screeen before
+adding a new record, and so on.
+
+</para>
+
+<para>
+
+Buttons on phpMyEdit pages can be divided into several group. These groups then specify keywords
+which are used when declaring a button in <varname>$opts['buttons']</varname>.
+
+<simplelist type=horiz columns=2>
+<member> navigation </><member> &nbsp; <constant>first, <<, prev, <, next, >, last, >> </constant></>
+<member> go to </><member> &nbsp; <constant>goto, goto_combo </constant></>
+<member> operation </><member> &nbsp; <constant>add, view, change, delete, copy </constant></>
+<member> confirmation </><member> &nbsp; <constant>save, more, cancel </constant></>
+</simplelist>
+
+Navigation and go to group can be used in list and filter mode to jump several pages ahead or back.
+Operation group moves user to another mode, namely one of ACPDV. Confirmation buttons are used to
+confirm actions in ACPDV. While cancel is self explanatory, save and more might be confusing.
+Save is used to confirm action and return to L mode. More means confirming action and return to
+current mode. Save button is usually displayed as Save, however in D mode it is as Delete and in A
+mode as Add. More is displayed as either More or Apply.
+
+</para>
+
+
+<example><title>Default buttons</title>
+<programlisting><![CDATA[
+$opts['buttons']['L']['up'] = array('<<','<','add','view','change','copy','delete','>','>>','goto','goto_combo');
+$opts['buttons']['L']['down'] = $opts['buttons']['L']['up'];
+
+$opts['buttons']['F']['up'] = array('<<','<','add','view','change','copy','delete','>','>>','goto','goto_combo');
+$opts['buttons']['F']['down'] = $opts['buttons']['F']['up'];
+
+$opts['buttons']['A']['up'] = array('save','more','cancel');
+$opts['buttons']['A']['down'] = $opts['buttons']['A']['up'];
+
+$opts['buttons']['C']['up'] = array('save','more','cancel');
+$opts['buttons']['C']['down'] = $opts['buttons']['C']['up'];
+
+$opts['buttons']['P']['up'] = array('save', 'cancel');
+$opts['buttons']['P']['down'] = $opts['buttons']['P']['up'];
+
+$opts['buttons']['D']['up'] = array('save','cancel');
+$opts['buttons']['D']['down'] = $opts['buttons']['D']['up'];
+
+$opts['buttons']['V']['up'] = array('change','cancel');
+$opts['buttons']['V']['down'] = $opts['buttons']['V']['up'];
+]]></programlisting>
+</example>
+
+<para>
+
+A button can be disabled for two reasons. A navigation button when there are no next or previous
+pages or an operation button if certain operation is not permitted to the user. By default, all
+disabled buttons are displayed and marked as disabled. If you do not want to show disabled buttons
+at all, prepend '-' to keyword. If you want a disabled button to show as enabled, prepend '+'.
+This will allow users to successfully push this button, however no meaningfull action will be taken.
+
+<simplelist type=horiz columns=2>
+<member> &nbsp; <constant>next</constant></><member> -- show next button and mark disabled if appropriate</>
+<member> &nbsp; <constant>-next</constant></><member> -- do not show next button if disabled</>
+</simplelist>
+
+</para>
+
+<para>
+
+You may also specify custom buttons, which values can be used outside of phpMyEdit. The first way
+to specify a custom button is to use phpMyEdit htmlSubmit method. In this way, value of this submit
+button is translated using your language files into user specified language. Possible configuration
+is name, value, css class name and boolean disabled. Second way of declaring custom buttons, is to
+declare html code of the button. Note that using this method, any html entity can be outputted.
+custom buttons
+
+</para>
+
+<example><title>Custom buttons</title>
+<programlisting><![CDATA[
+$opts['buttons']['V']['up'] = array(
+	'change',
+	'cancel',
+	array('name' => 'pme_back', 'value' => 'Back to main menu', 'css' => 'pme-back', 'disabled' =. false),
+	array('code' => 'Move to:'),
+	array('code' => '<SELECT><OPTION>....</OPTION></SELECT>'),
+);
+$opts['buttons']['V']['down'] = $opts['buttons']['V']['up'];
+]]></programlisting>
+</example>
+
 </sect1>
 
 <sect1 id="configuration.filters">
