You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
krecipes/doc/krecipes/index.docbook

3118 lines
250 KiB

<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
<!ENTITY krecipes "<application>Krecipes</application>">
<!ENTITY kappname "&krecipes;"><!-- replace kapp here, do *not* replace kappname-->
<!ENTITY package "extragear/utils"><!-- tdebase, tdeadmin, etc -->
<!ENTITY % addindex "IGNORE">
<!ENTITY % English "INCLUDE"><!-- change language only here -->
]>
<!-- The language must NOT be changed here. -->
<book lang="&language;">
<!-- This header contains all of the meta-information for the document such
as Authors, publish date, the abstract, and Keywords -->
<bookinfo>
<title>The <emphasis>&krecipes;</emphasis> Handbook</title>
<authorgroup>
<author>
<firstname>Colleen</firstname>
<surname>Beamer</surname>
<affiliation>
<address><email>colleen.beamer&#064;gmail.com</email></address>
</affiliation>
</author>
<author>
<firstname>Jason</firstname>
<surname>Kivlighn</surname>
<affiliation>
<address><email>jkivlighn&#064;gmail.com</email></address>
</affiliation>
</author>
</authorgroup>
<!-- TRANS:ROLES_OF_TRANSLATORS -->
<copyright>
<year>2004-2006</year>
<holder>Colleen Beamer and Jason Kivlighn</holder>
</copyright>
<!-- Translators: put here the copyright notice of the translation -->
<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
and in the FDL itself on how to use it. -->
<legalnotice>&FDLNotice;</legalnotice>
<!-- Date and version information of the documentation
Don't forget to include this last date and this last revision number, we
need them for translation coordination !
Please respect the format of the date (YYYY-MM-DD) and of the version
(V.MM.LL), it could be used by automation scripts.
Do NOT change these in the translation. -->
<date>2006-08-31</date>
<releaseinfo>1.0.beta1</releaseinfo>
<!-- Abstract about this handbook -->
<abstract>
<para>
<emphasis>&krecipes;</emphasis> is an application to manage recipes.
</para>
</abstract>
<!-- This is a set of Keywords for indexing by search engines.
Please at least include TDE, the TDE package it is in, the name
of your application, and a few relevant keywords. -->
<keywordset>
<keyword>TDE</keyword>
<keyword>kdeextragear</keyword>
<keyword>Krecipes</keyword>
<keyword>cookbook</keyword>
<keyword>recipes</keyword>
</keywordset>
</bookinfo>
<!-- The contents of the documentation begin here. Label
each chapter so with the id attribute. This is necessary for two reasons: it
allows you to easily reference the chapter from other chapters of your
document, and if there is no ID, the name of the generated HTML files will vary
from time to time making it hard to manage for maintainers and for the CVS
system. Any chapter labelled (OPTIONAL) may be left out at the author's
discretion. Other chapters should not be left out in order to maintain a
consistent documentation style across all TDE apps. -->
<chapter id="introduction">
<title>Introduction</title>
<!-- The introduction chapter contains a brief introduction for the
application that explains what it does and where to report
problems. Basically a long version of the abstract. Don't include a
revision history. (see installation appendix comment) -->
<para>
<emphasis>&krecipes;</emphasis> is a program that lets you to manage your recipes, create shopping lists, choose a recipe based on available ingredients and plan your menu/diet in advance.
</para>
</chapter>
<chapter id="using-krecipes">
<title>Using <emphasis>&krecipes;</emphasis></title>
<!-- This chapter should tell the user how to use your app. You should use as
many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
your application. -->
<!-- Note that all graphics should be in .png format. Use no gifs because of
patent issues. -->
<sect1 id="getting-familiar">
<title>Getting Familiar</title>
<para>
When <emphasis>&krecipes;</emphasis> starts, the window displays the following components &mdash;
</para>
<itemizedlist>
<listitem><para>A menubar containing selections for <guimenu>File</guimenu>, <guimenu>Edit</guimenu>, <guimenu>Tools</guimenu>, <guimenu>Settings</guimenu>, and <guimenu>Help</guimenu></para></listitem>
<listitem><para>A toolbar with icons for <guiicon>New</guiicon>, <guiicon>Save</guiicon>, and <guiicon>Print</guiicon></para></listitem>
<listitem><para>A left-hand pane containing icons depicting and buttons for access to the various components of <emphasis>&krecipes;</emphasis></para></listitem>
<listitem><para>A right-hand pane, which is the main <emphasis>&krecipes;</emphasis> window, that by default contains a recipe category list</para></listitem>
</itemizedlist>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the main &krecipes; window.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="krecipes-main.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Main <emphasis>&krecipes;</emphasis> Screen</para></caption>
</mediaobject>
</screenshot>
</para>
</sect1>
<sect1 id="find-edit">
<title>Finding and Editing Recipes</title>
<para>
By default, <emphasis>&krecipes;</emphasis> starts with the <emphasis>Find/Edit Recipes</emphasis> component selected in the left pane of the window.
</para>
<note><para>This section describes the method of finding recipes in the <emphasis>Find/Edit Recipes</emphasis> component. For more specific details on <emphasis>Editing</emphasis> recipes, see the section <link linkend="edit-recipe">Editing Saved Recipes</link></para>
</note>
<para>With the <guibutton>Find/Edit Recipes</guibutton> component button selected, the main <emphasis>&krecipes;</emphasis> window displays the following &mdash;</para>
<itemizedlist><listitem><para>A title showing the name of the component selected</para></listitem>
<listitem><para><emphasis><guilabel>Basic</guilabel></emphasis> (the default) and <emphasis><guilabel>Advanced</guilabel></emphasis> tabs</para></listitem>
<listitem><para>A textbox to <userinput>enter search criteria</userinput></para>
<note><para>A cool feature here is that <emphasis>&krecipes;</emphasis> will search for recipes as you type a text string in the <guilabel>Search:</guilabel> box. For example, if you wanted to find a recipe containing the word <quote>apple</quote>, the recipes that display in the recipe view would show only those recipes that contain the text string and would be filtered more finely as each subsequent letter is typed.</para></note></listitem>
<listitem><para>A list of all recipe categories</para></listitem>
<listitem><para>Buttons for <guibutton>Open</guibutton>, <guibutton>Edit</guibutton> and <guibutton>Delete</guibutton> for performing the corresponding action on a recipe</para></listitem>
</itemizedlist>
<tip><para>You will notice the <guiicon><inlinemediaobject><imageobject><imagedata fileref="krectip.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> icon in the bottom, right-hand corner of the pane containing the component list. This icon appears in all &krecipes; components and when clicked, will open the corresponding section of this Handbook if you need extra help at any time.</para></tip>
<para>With the <emphasis><guilabel>Basic</guilabel></emphasis> tab active and the list of recipe categories displayed, a category can be expanded by clicking on the <guibutton>+</guibutton> button beside the category name. The category will automatically expand to show your recipes and/or subcategories, if there are any. From this list, you may select a recipe to open, edit or delete (see the section <link linkend="edit-recipe">Editing Saved Recipes</link> for more information). Additionally, if you <action>hover the mouse pointer</action> over any recipe title, a <interface>dialog box</interface> will appear showing the recipe title and the date that it was <emphasis>created</emphasis>, <emphasis>modified</emphasis> and <emphasis>last accessed</emphasis>.</para>
<para>Conversely, clicking the <guibutton>-</guibutton> button beside the category name will collapse the category.</para>
<sect2 id="right-click-menu">
<title>The "Right-Click" Menu</title>
<para><emphasis>&krecipes;</emphasis> allows a multitude of ways to perform various actions on your recipes. These actions are described in their corresponding sections in this Handbook. However, in addition to the various key combinations and/or menu selections, <action>right-clicking</action> on a recipe in the Basic search pane will bring up a menu from which the following actions can be selected &mdash;</para>
<itemizedlist>
<listitem><para>Open &ndash; Opens the selected recipe.</para></listitem>
<listitem><para>Edit &ndash; Opens the selected recipe for editing.</para></listitem>
<listitem><para>Export &ndash; Exports the selected recipe. See the section <link linkend="export-recipe">Exporting Recipes to Other Formats</link> for a complete description of this function.</para></listitem>
<listitem><para>Remove From Category &ndash; Removes the recipe from its current category and places it in the <emphasis>Uncategorized</emphasis> group. From the <emphasis>Uncategorized</emphasis> group, the recipe can be selected for editing to re-categorize it. See the section <link linkend="edit-recipe">Editing Saved Recipes</link> for more information.</para></listitem>
<listitem><para>Delete &ndash; Deletes the recipe from the database.</para></listitem>
<listitem><para>Add to Shopping List &ndash; Adds the selected recipe to your shopping list. See the section <link linkend="shopping-list">The Shopping List</link> for information regarding the use of the Shopping List.</para></listitem>
<listitem><para>Copy to Clipboard &ndash; Makes a copy of the recipe and places in on the clipboard so that it can be pasted into another application for example, an e-mail. The format of the copy is dependent on what is selected as a preference. For a complete description of the <quote>Copy to Clipboard</quote> functionality, see the section <link linkend="copy-clipboard">Copying to the Clipboard</link>.</para></listitem>
<listitem><para>Categorize &ndash; Allows you to select one or more recipes that appear in the <emphasis>Uncategorized</emphasis> group and place them in the appropriate category by selecting the it from a pop-up instead of having to edit the recipe(s).</para>
<note><para>This option applies only when there are recipes listed as <emphasis>Uncategorized</emphasis>. If multiple recipes are selected for categorizing, they must be of the same category. To select non-adjacent recipes for categorizing, hold the <keycap>Ctrl</keycap> key and select the desired recipes by clicking on them.</para></note></listitem>
</itemizedlist>
</sect2>
<sect2 id="advanced-tab">
<title>The Advanced Tab</title>
<para>
The purpose of the <emphasis><guilabel>Advanced</guilabel></emphasis> tab is to provide advanced search capability. Queries for recipes can be made based on nine search criteria, alone or in combination &mdash;
</para>
<itemizedlist>
<listitem><para>Title</para></listitem>
<listitem><para>Ingredients</para></listitem>
<listitem><para>Categories</para></listitem>
<listitem><para>Authors</para></listitem>
<listitem><para>Yield</para></listitem>
<listitem><para>Preparation Time</para></listitem>
<listitem><para>Instructions</para></listitem>
<listitem><para>Meta Data</para></listitem>
<listitem><para>Ratings</para></listitem>
</itemizedlist>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the available components in the &krecipes; Advanced Search tab.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="adv-search-parts.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The <emphasis>&krecipes;</emphasis> Advanced Search Components</para></caption>
</mediaobject>
</screenshot>
</para>
<para>When the <emphasis><guilabel>Advanced</guilabel></emphasis> tab is selected, the components will be collapsed and show &gt;&gt; beside the label of the component. To expand a section, simply click on the label of the component. Conversely, with the component expanded, &lt;&lt; will show beside the label and clicking on the label will collapse the section.</para>
<note><para>A section can be collaped simply to get it out of the way when it is not needed for a search. However, if you enter search criteria in any one of the search components, you can close the component and the search criteria will still be considered in the search.</para></note>
<para>For all search components in the <emphasis><guilabel>Advanced</guilabel></emphasis> tab, click the <guibutton>Search</guibutton> button to initiate the search once all desired search criteria have been selected. Clicking the <guibutton>Clear</guibutton> button will clear the search selections and the search results.</para>
<note><para>Only recipes meeting ALL criteria will display! No matter which parameters are used for the recipe search, should no recipes meeting the specified criteria be found, the message <quote>&mdash; No matching recipes found &mdash;</quote> will display in the recipe list area.</para></note>
<para>The various components are used as follows &mdash;</para>
<sect3 id="using-adv-title">
<title>The Title Search</title>
<para>Enter words that appear as part of the recipe title, for example, <emphasis>Chicken Rice</emphasis>. Using these words, recipes that contain the words <quote>Chicken</quote>, or <quote>Rice</quote>, or <emphasis>both</emphasis> in the title will appear in your results. However, if you click the tickbox beside the <emphasis><guilabel>Require All Words</guilabel></emphasis> label, only those recipes that have both <quote>Chicken</quote> <emphasis>AND</emphasis> <quote>Rice</quote> in the title will be found.</para>
</sect3>
<sect3 id="using-adv-ingredients">
<title>The Ingredients Search</title>
<para>In the <emphasis><guilabel>Ingredients</guilabel></emphasis> component of the <emphasis><guilabel>Advanced</guilabel></emphasis> tab, single or multi-word ingredients can be searched for. Single word ingredients are entered in the textbox with a space between each ingredient. Multi-word ingredients are enclosed in quotes, for example, "ice cream".</para>
<para>Searches may also be done using wild cards &ndash; <quote>*</quote> to replace any number of characters, or <quote>?</quote> to replace a single character. For an explanation on the use of wildcards, see the section <link linkend="using-wildcards">Using Wildcards in Searches</link>.</para>
<note><para>Although the ingredient that you are searching for might appear in the title of the recipe listed in the search results, it is the ingredient that has caused a particular recipe to show in the list, NOT the fact that the ingredient name might appear in the title.</para></note>
<para>Recipes can be searched for based on various criteria &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Uses all:</guilabel></emphasis> &ndash; If the search terms are entered in this textbox, it is being stated that the recipe(s) <emphasis>MUST</emphasis> contain all ingredients listed and therefore, only those recipes that contain <emphasis>ALL</emphasis> ingredients will be returned as results of the search.</para></listitem>
<listitem><para><emphasis><guilabel>Uses any of:</guilabel></emphasis> &ndash; If the search terms are entered in this textbox, it is being stated that the recipe(s) <emphasis>MAY</emphasis> contain any of the ingredients specified. The search results will return recipes that contain <emphasis>ANY OR ALL</emphasis> of the ingredients.</para></listitem>
<listitem><para><emphasis><guilabel>Without:</guilabel></emphasis> &ndash; If the search terms are entered in this textbox, it is being specified that the recipes returned as results of the search <emphasis>MUST NOT</emphasis> contain <emphasis>ANY</emphasis> of the listed ingredients.</para></listitem>
</itemizedlist>
</sect3>
<sect3 id="using-adv-categories">
<title>The Categories Search</title>
<para>As in the <emphasis><guilabel>Ingredients</guilabel></emphasis> component of the <emphasis><guilabel>Advanced</guilabel></emphasis> tab, search parameters in the <emphasis><guilabel>Categories</guilabel></emphasis> component are entered with a space between each parameter, or enclosed in quotes for multi-word parameters. You can also use wildcards for searching categories. See the section, <link linkend="using-wildcards">Using Wildcards in Searches</link> for an explanation on the use of wildcards.</para>
<para>Searching for recipes in <emphasis><guilabel>Categories</guilabel></emphasis> is done by specifying the criteria on which you wish to base the search as follows &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>In all:</guilabel></emphasis> &ndash; indicates that the recipes returned in the search should be in all the categories listed. This search might be used if you are looking for a recipe that appears in the <emphasis>Dessert</emphasis> category and also, in the <emphasis>Cakes</emphasis> category.</para></listitem>
<listitem><para><emphasis><guilabel>In any of:</guilabel></emphasis> &ndash; is specifying that recipes returned in the search may be from <emphasis>ANY</emphasis> of the categories, but a recipe may not necessarily be found in all categories listed.</para></listitem>
<listitem><para><emphasis><guilabel>Not in:</guilabel></emphasis> &ndash; is indicating that the recipes returned in the search <emphasis>MUST NOT</emphasis> be from the categories listed.</para></listitem>
</itemizedlist>
<para>The use of the <emphasis><guilabel>Categories</guilabel></emphasis> search is most useful when combined with other search parameters.</para>
<para>In the following screenshot, it is being specified that recipes should be searched for in the <emphasis>Chicken</emphasis> and <emphasis>Main Dishes</emphasis> categories.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of a completed search in &krecipes; specifying a category only.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="adv-cat-search.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Advanced Search &ndash; Category Only Specified</para></caption>
</mediaobject>
</screenshot>
</para>
<para>In this screenshot, recipes are still being searched for in the <emphasis>Chicken</emphasis> and <emphasis>Main Dishes</emphasis> categories. However, recipes that contain some form of the word <quote>tomato</quote> (note the use of the wildcard) are being excluded.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of a completed search in &krecipes; specifying a category and additional criteria.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="adv-srch-multi.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Advanced Search - Ingredient and Category Specified</para></caption>
</mediaobject>
</screenshot>
</para>
</sect3>
<sect3 id="using-adv-authors">
<title>The Authors Search</title>
<para>Are you looking for a recipe given to you by a certain person or input into <emphasis>&krecipes;</emphasis> from a specific magazine? The <emphasis><guilabel>Authors</guilabel></emphasis> component of the <emphasis><guilabel>Advanced</guilabel></emphasis> tab allows you to find that recipe!</para>
<para>As with the searches previously described, you can search using wildcards. For a description of using wildcards, see the section <link linkend="using-wildcards">Using Wildcards in Searches</link>. Names are entered with a space between if, for instance, you are searching for a recipe by only a first name. Whole names, or for situations where you have entered a magazine name as the recipe source (Author), the name is entered enclosed in quotes, for example, <quote><emphasis>Jason Kivlighn</emphasis></quote>, or <quote><emphasis>Vegetarian Times</emphasis></quote>.</para>
<para>Searches can be performed in the following ways &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>By any of:</guilabel></emphasis> &ndash; This search would be used if the recipes desired are by <emphasis>ANY</emphasis> of the authors listed in the textbox.</para></listitem>
<listitem><para><emphasis><guilabel>By all:</guilabel></emphasis> &ndash; This search would be used in situations where recipes have <quote>co-authors</quote>. An example of this would be: <emphasis><quote>Canadian Living Cooks</quote></emphasis> <emphasis><quote>Elizabeth Baird</quote></emphasis>. This would return only recipes where <emphasis>Canadian Living Cooks</emphasis> and <emphasis>Elizabeth Baird</emphasis> are both listed as the recipe source/author.</para></listitem>
<listitem><para><emphasis><guilabel>Not by:</guilabel></emphasis> &ndash; This search would be used when you want to exclude certain authors from your search.</para></listitem>
</itemizedlist>
</sect3>
<sect3 id="using-adv-yield">
<title>The Yield Search</title>
<para>The <emphasis><guilabel>Yield</guilabel></emphasis> component in the <emphasis><guilabel>Advanced</guilabel></emphasis> tab is slightly different from the searches described thus far in that it must be <emphasis>Enabled</emphasis> in order to have it utilized in the search criteria.</para>
<para>To enable <emphasis><guilabel>Yield</guilabel></emphasis> as a criteria for your search, click the tick box beside the <emphasis><guilabel>Enabled</guilabel></emphasis> label. Once you have designated this to be part of your search, you can define the yield by selecting from the drop-down menu as follows &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Yields at least:</guilabel></emphasis> &ndash; This would be specified if you want the recipe(s) to be able to provide a minimum number of portions. The recipe(s) returned COULD yield <emphasis>MORE</emphasis> than this number, but cannot yield less.</para></listitem>
<listitem><para><emphasis><guilabel>Yields at most:</guilabel></emphasis> &ndash; This would be specified if you want recipe(s) that are returned in the search to yield <emphasis>NO MORE THAN</emphasis> a specified number of portions.</para></listitem>
<listitem><para><emphasis><guilabel>Yields about:</guilabel></emphasis> &ndash; This would be used to approximate the number of portions you want in the recipe(s). The recipes(s) returned could yield <emphasis>SLIGHTLY MORE</emphasis> or <emphasis>SLIGHTLY LESS</emphasis> than a specified number of portions.</para></listitem>
</itemizedlist>
<para>After defining the type of search that is desired, the spinbox next to the drop-down menu is used to increment (or decrement) the actual <emphasis>yield amount</emphasis> that goes along with the defined parameters.</para>
<note><para>When inputting recipes, a <emphasis>yield type</emphasis>, for example, <emphasis>servings</emphasis> or <emphasis>dozen</emphasis> is allowed. Keep in mind that when including <emphasis>Yield</emphasis> as a search parameter, using a yield of 2 in a search will return results for 2 dozen, 2 servings, 2 loaves, but will <emphasis>NOT</emphasis> return results for 24 cookies, 24 squares, etc., even though these are technically 2 dozen.</para></note>
</sect3>
<sect3 id="using-adv-preptime">
<title>The Preparation Time Search</title>
<para>The <emphasis><guilabel>Preparation Time</guilabel></emphasis> component in the <emphasis><guilabel>Advanced</guilabel></emphasis> tab is used in the same manner as the <emphasis><guilabel>Yield</guilabel></emphasis> component. It must be <emphasis>Enabled</emphasis> in order to have it utilized in the search criteria.</para>
<para>To enable <emphasis><guilabel>Preparation Time</guilabel></emphasis> as a criteria for your search, click the tick box beside the <emphasis><guilabel>Enabled</guilabel></emphasis> label. Once you have designated this to be part of your search, you can define the time criteria by selecting from the drop-down menu as follows &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Ready in at most:</guilabel></emphasis> &ndash; This would be utilized if you want the recipe(s) to be ready within a specified time frame. The recipe(s) returned COULD be ready in <emphasis>LESS THAN</emphasis> or <emphasis>EXACTLY</emphasis> the time specified, but cannot be ready in greater than the time chosen for preparation.</para></listitem>
<listitem><para><emphasis><guilabel>Ready in about:</guilabel></emphasis> &ndash; This choice allows some flexibility and would be used to approximate the time needed to prepare the recipe. The recipe(s) that are returned in the search can be ready in <emphasis>SLIGHTLY MORE</emphasis>, <emphasis>EXACTLY</emphasis>, or <emphasis>SLIGHTLY LESS</emphasis> than the time specified for preparation.</para></listitem>
</itemizedlist>
<para>After defining the type of search that is desired, the spinbox next to the drop-down menu is used to increment (or decrement) the actual <emphasis>time</emphasis> parameter. Select the digits before the <emphasis>&#058;</emphasis> symbol to increment the hour portion of the time and then select the digits after the <emphasis>&#058;</emphasis> symbol to increment the minute portion of the time. The hour and minute parameters can be used alone or in combination.</para>
</sect3>
<sect3 id="using-adv-instructions">
<title>The Instructions Search</title>
<para>Are you interested in finding a recipe that contains certain instructions or is prepared a certain way? The <emphasis><guilabel>Instructions</guilabel></emphasis> component in the <emphasis><guilabel>Advanced</guilabel></emphasis> tab allows you to search the recipe instructions for specific terms that might include a preparation method, such as <quote><emphasis>Bake at 350</emphasis></quote>, or a suggested garnish. However, these are just examples of how this component might be used. Any term(s) that might appear in the <emphasis>Instructions</emphasis> of a recipe can be used.</para>
<para>To utilize the <emphasis><guilabel>Instructions</guilabel></emphasis> search, simply type the keyword or keywords in the textbox beside the <emphasis><guilabel>Keywords:</guilabel></emphasis> label. Enter keywords separated by spaces, or multi-word instructions enclosed in quotes. Wild cards can also be used. For instructions on the use of wildcards, see the section <link linkend="using-wildcards">Using Wildcards in Searches</link>.</para>
<para>Should you require that the search contain all the keywords listed, click the tick box beside the <emphasis><guilabel>Require All Words</guilabel></emphasis> label.</para>
</sect3>
<sect3 id="using-adv-meta">
<title>The Meta Data Search</title>
<para>By definition, <emphasis>Meta Data</emphasis> is <quote>data about data</quote>, or expressed another way, is <quote>information that describes another set of data</quote>. The <emphasis><guilabel>Meta Data</guilabel></emphasis> component in the <emphasis><guilabel>Advanced</guilabel></emphasis> tab allows you to search your recipes based on information about them, as follows &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Created:</guilabel></emphasis> &ndash; This is the date that the recipe was created on.</para></listitem>
<listitem><para><emphasis><guilabel>Modified:</guilabel></emphasis> &ndash; This is the date that the last revision was made to the recipe.</para></listitem>
<listitem><para><emphasis><guilabel>Last accessed:</guilabel></emphasis> &ndash; This is the date that the recipe was last opened or <quote>used</quote>.</para></listitem>
</itemizedlist>
<para>For each of the <emphasis>Meta Data</emphasis> descriptions, the date may be entered as an exact date if this is known or desired, or as a <quote>date range</quote>. Dates are interpreted in the format that has been set within the &kde; environment. For example, if the date format has been set to display as DD-MM-YYYY, you may enter the date directly into the textbox in the format of "DD-MM-YY". When entering the date, the two initial digits of the year may be entered, but are not absolutely necessary. However, it is imperative that you use the exact separator <abbrev>i.e.</abbrev> the dash (&ndash;), in the example, as set in the date format in &kde;. You may also use the drop-down arrow beside the box in which you want to enter the date to reveal a calendar.</para>
<caution><para>If you choose to enter the date directly into the textbox and are using a <emphasis>date range</emphasis> as opposed to an exact date, ensure that the dates for the start and end of the range are entered in the same format. For example, if you enter the starting date for the range in the format of "DD-MM-YY" and the ending date for the range in the format of "DD/MM/YY", either no recipes will be found or the results returned will include only those recipes that fit the criteria for the starting date, if this date agrees with the format as set in &kde;.</para></caution>
<sect4 id="use-calendar">
<title>Using the Calendar Interface</title>
<para>The calendar allows you to easily navigate though months and years to select any date.</para>
<para>When the calendar is revealed, the current month is shown and the current day is highlighted. Below the calendar is a textbox, which shows the date and beside this a drop-down menu that displays the specific week of the year.</para>
<para>One way to select a date would be to use the drop-down menu to select a particular week in the year, for example <guimenuitem>Week 26</guimenuitem>. Doing this will change the date in the textbox and will also position the highlighted date in the calendar to the beginning of Week 26. Note that <emphasis>Monday</emphasis> is used as the starting day for the week. To use a date from this week either, click the highlighted date in the calendar, or select another date from the week and the date will be transferred to the <emphasis>Meta Data</emphasis> textbox where the calendar was utilized.</para>
<para>Below the textbox that is displaying the date at the beginning of the chosen week of the year (or the current week if no choice has been made), there is a list of additional choices for date selection. Specifically, these are: &ndash; <emphasis>Today</emphasis>, <emphasis>Yesterday</emphasis>, <emphasis>Last Week</emphasis>, and <emphasis>Last Month</emphasis>. Clicking on one of these selections, will result in this date being shown in the <emphasis>Meta Data</emphasis> textbox being used. It should be noted here that each of the choices is relevant to today's date. For instance, if today's date is the 15th, clicking the <guibutton>Today</guibutton> would place today's date in the <emphasis>Meta Data</emphasis> textbox being used. Clicking <guibutton>Yesterday</guibutton> would, of course, place yesterday's date in the box. <guibutton>Last Week</guibutton> would place the date that is one week ago today in the box. <guibutton>Last Month</guibutton> would place last month's date that corresponds to today's date in the box, in the example from above, the 15th of the previous month.</para>
<para>Additionally, the calendar itself can be utilized to navigate to a specific date. When the arrow beside the textbox in which you want to display the date is clicked, thus revealing the calendar, there are a number of ways to select a date &mdash;</para>
<itemizedlist>
<listitem><para>Click on the month displayed &ndash; This will reveal a list from which you can select a desired month.</para></listitem>
<listitem><para>Click on the year displayed &ndash; This is reveal a textbox that displays the current year, but in which another year can be entered.</para></listitem>
</itemizedlist>
<para>To the left and right of the month and year heading on the calendar, there are arrows that can be used to navigate through various months and years. Clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="1leftarrow.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> icon will reveal the previous month's calendar. Conversely, clicking the <guiicon><inlinemediaobject><imageobject><imagedata fileref="1rightarrow.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> icon will advance the calendar to the next month.</para>
<para>Navigating between years is done in the same manner, but the <guiicon><inlinemediaobject><imageobject><imagedata fileref="2leftarrow.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> is used to navigate to previous years and the <guiicon><inlinemediaobject><imageobject><imagedata fileref="2rightarrow.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> is used to navigate to following years. In each case, once a date is selected, it will be transferred to the textbox at the point where the calendar was selected.</para>
</sect4>
</sect3>
<sect3 id="using-adv-ratings">
<title>The Ratings Search</title>
<para>When a Rating search is selected, it can be done in two ways &mdash;</para>
<orderedlist>
<listitem><para>By average:</para></listitem>
<listitem><para>By criteria:</para></listitem>
</orderedlist>
<sect4 id="avg-rating-srch">
<title>Searching by Average Rating</title>
<para>If you choose to search by average rating, select the <emphasis>Radio Button</emphasis> beside the <emphasis><guilabel>By average:</guilabel></emphasis> label. Then, enter a numerical value in the textbox that precedes the label <emphasis><guilabel>stars</guilabel></emphasis>. This value is the average of the number of stars assigned to each parameter under which the recipe was rated and can be a fixed value or a range, for example <emphasis>3-4</emphasis> stars. Fractional amounts are also permitted, for example, 3.5.</para>
<para>Once you have entered your search parameters, click the <guibutton>Search</guibutton> button and the recipes that meet the search criteria will display under the <emphasis><guilabel>Title</guilabel></emphasis> label on the right. Should no recipes meet the criteria, <emphasis>--- No matching recipes found ---</emphasis> will display.</para>
</sect4>
<sect4 id="rating-criteria-srch">
<title>Searching by Rating Criteria</title>
<para>To search by rating criteria, select the <emphasis>Radio Button</emphasis> beside the <emphasis><guilabel>By criteria:</guilabel></emphasis> label. First, select the criteria that you want to use for your rating from the drop-down menu. In the textbox next to this, enter the value of the number of stars for which you want recipes displayed, for example, 4. Entry is permitted in the following formats &mdash;</para>
<itemizedlist>
<listitem><para>whole numbers, e.g. 3</para></listitem>
<listitem><para>numbers that include fractional amounts, e.g. 3.5</para></listitem>
<listitem><para>whole number ranges, e.g. 3-4</para></listitem>
<listitem><para>ranges that include fractional amounts, e.g. 3.5-4</para></listitem>
</itemizedlist>
<para>Note that, if you enter a fractional amount, for instance, 3.5, it will display in the format that you have chosen for your preferences when transferred to the listbox &ndash; <abbrev>i.e.</abbrev>3.5 will display as 3.5 if you have chosen numbers to display in decimal format, or 3&#189; if you have chosen numbers to display as fractions. See the section <link linkend="custom-formatting">Customizing Formatting</link> for an explanation of setting formatting preferences.</para>
<para>Additionally, if no range is specified, the search will find recipes that have an assigned star rating in a range of &#177;&#189; of the value entered, 3&#189; to 4&#189; stars in the example.</para>
<para>Once you have chosen the parameters by which you want to search, click the <guibutton>+</guibutton> beside the textbox in which you entered the number of stars to have the criteria added to the list. More than one criteria may be utilized in the search. Once you have entered your search parameters, click the <guibutton>Search</guibutton> button and the recipes that meet the search criteria will display under the <emphasis><guilabel>Title</guilabel></emphasis> label on the right. Should no recipes meet the criteria, <emphasis>--- No matching recipes found ---</emphasis> will display.</para>
</sect4>
</sect3>
</sect2>
<sect2 id="using-wildcards">
<title>Using Wildcards in Searches</title>
<para><emphasis>Wildcards</emphasis> are a single character used to replace either multiple or single characters in a text string. Wildcards supported in <emphasis>&krecipes;</emphasis> are the <quote>*</quote> and <quote>?</quote> characters. The <quote>*</quote> character is used to replace any number of characters in a string, while the <quote>?</quote> is used to replace a single character. Both can be used to replace any alpha-numeric character, including a space.</para>
<para><emphasis>Examples of Wildcard Searches</emphasis></para>
<informaltable>
<tgroup cols="2">
<thead><row><entry>Wildcard Search</entry><entry>Possible Results Returned</entry></row></thead>
<tbody>
<row>
<entry>chick*</entry><entry><itemizedlist><listitem><para>chicken broth</para></listitem><listitem><para>chicken breast</para></listitem><listitem><para>chicken</para></listitem></itemizedlist></entry>
</row>
<row><entry>can*cherries</entry><entry><itemizedlist><listitem><para>canned cherries</para></listitem><listitem><para>candied red cherries</para></listitem><listitem><para>candied green cherries</para></listitem></itemizedlist></entry></row>
<row><entry>egg?</entry><entry><itemizedlist><listitem><para>egg</para></listitem><listitem><para>eggs</para></listitem></itemizedlist></entry></row>
</tbody>
</tgroup>
</informaltable>
</sect2>
</sect1>
<sect1 id="enter-edit-recipes">
<title>Entering and Editing Recipes</title>
<sect2 id="add-recipe">
<title>Adding a New Recipe</title>
<para>To add a new recipe, click on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="filenew.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> icon that appears in the first position on the <emphasis>&krecipes;</emphasis> toolbar. The <quote>Edit Recipe</quote> screen will display.
</para>
<para>The <quote>Edit Recipe</quote> screen has four tabs. Each permits entry of a different aspect of the recipe. These tabs are &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Recipe</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Ingredients</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Instructions</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Ratings</guilabel></emphasis></para></listitem>
</itemizedlist>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the recipe entry screen showing the 4 tabs.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="enter-recipe-tabs.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Recipe Entry Interface</para></caption>
</mediaobject>
</screenshot>
</para>
<para>It should also be noted that in the left-hand pane of the window, a button shows at the bottom of the component list that initially displays <quote>Write the recipe title here</quote>. This will change to the name of the recipe once it has been entered.</para>
</sect2>
<sect2 id="recipe-description">
<title>The Recipe Description</title>
<sect3 id="recipe-name">
<title>Adding the Recipe Name</title>
<para>The title of the recipe is entered in the textbox containing the prompt <quote>Write the recipe title here</quote>.</para>
</sect3>
<sect3 id="recipe-author">
<title>Adding the Recipe Author/Contributor</title>
<para>To enter an author for the recipe, click on the <guibutton>+</guibutton> that appears to the right of the <quote>Authors</quote> box.</para>
<para>A window will appear where the author or contributor of the recipe can be selected from the drop-down menu. Once selected, transfer the name to the list box below by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="down.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button that appears to the right of the drop-down menu.</para>
<tip><itemizedlist><listitem><para>An author's name can be typed directly into the textbox and transferred to the list box as described above. As you start entering characters, if there are authors that match the text string typed, the menu will display a list of existing choices from which you can choose to transfer the author's name to the list box, as described above.</para>
<para>However, in the situation where the author does not exist in your list, no choices will be listed as you type and when you click the <guiicon><inlinemediaobject><imageobject><imagedata fileref="down.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button to transfer the author to the listbox, the author will automatically be added to your list of authors as well. Also see <link linkend="authors-component">The Authors Component.</link> for information on adding an author to the list.</para></listitem>
<listitem><para>An author may also be removed from the list by clicking the <guiicon><inlinemediaobject><imageobject><imagedata fileref="up.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button.</para></listitem>
</itemizedlist>
</tip>
<para>Click on the <guibutton>OK</guibutton> button to accept. The window will close and the name of the selected author will appear under the heading.</para>
<para>To cancel selection of an author, click on the <guibutton>Cancel</guibutton> button.</para>
</sect3>
<sect3 id="recipe-category">
<title>Selecting the Recipe Category</title>
<para>Next, the recipe category is selected by clicking on the <guibutton>+</guibutton> beside the category box.</para>
<para>To select a category, click on the checkbox beside the category name and click the <guibutton>OK</guibutton> button to accept the selection or, the <guibutton>Cancel</guibutton> button to cancel the selection. Either way, the window will close.</para>
<tip><para>It is also possible to add a category here. Simply click on the <guibutton>New Category...</guibutton> button. Add a new category in the same manner as described in the section entitled <link linkend="categories-component">The Categories Component</link>.</para></tip>
</sect3>
<sect3 id="set-yield">
<title>Setting the Yield Amount and Type</title>
<para>Setting the amount that the recipe will yield is performed by entering a value in the textbox beneath the <emphasis><guilabel>Amount</guilabel></emphasis> label. It is possible to enter a numerical range for this number, for example, 3-4. When entering a range, if an incorrect value or format is entered, the entry will turn red indicating that a correction is necessary.</para>
<para>The second part of entering a yield is to enter the <emphasis>type</emphasis>. This is done by entering text in the textbox beneath the <emphasis><guilabel>Type</guilabel></emphasis> label. The text entered can be anything you choose that is appropriate for the recipe yield type, for example, <emphasis>servings</emphasis>, <emphasis>dozen</emphasis>, or <emphasis>squares</emphasis>. As you begin to type the yield type, &krecipes; will match it to any previously entered yield types and if any are found, they will appear in a list from which you can select the appropriate one.</para>
</sect3>
<sect3 id="prep-time">
<title>Specifying Preparation Time</title>
<para>The time it takes to prepare a recipe is designated by utilizing a spinbox.</para>
<para>However, the time must be specified in two steps &mdash;</para>
<orderedlist>
<listitem><para>Select the digits prior to the <emphasis>&#058;</emphasis> symbol that specify the hours and increment the time until the desired number is reached.</para></listitem>
<listitem><para>Select the digits after to the <emphasis>&#058;</emphasis> symbol that specify the minutes and increment the time until the desired number is reached.</para></listitem>
</orderedlist>
</sect3>
<sect3 id="photo-change">
<title>Changing the Default Photo</title>
<para>In the <emphasis><guilabel>Recipe</guilabel></emphasis> tab, the displayed photo can also be changed by clicking on the <guibutton>...</guibutton> button and selecting a photo for insertion. Alternatively, a photo may be inserted by dragging a graphic from any other application, for example a web page, and dropping it onto the photo in the Recipe tab while in edit mode.</para>
<note><para>The change in the graphic applies <emphasis>only to the current recipe</emphasis>.</para></note>
<tip><itemizedlist><listitem><para>To revert to the original, <emphasis>&krecipes;</emphasis> graphic, click on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="clear_left.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button. This can be done before the recipe is saved or after saving it.</para></listitem>
<listitem><para>To display NO photo in the recipe, refer to the section <link linkend="displayed-items">Selecting Items to Display</link> for further instructions.</para></listitem>
</itemizedlist>
</tip>
<para>
<screenshot>
<screeninfo>Here's a screenshot of a completed recipe description in the Recipe tab of the &krecipes; recipe entry interface.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="recipe-description-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>New Recipe Entry &ndash; The Completed Recipe Tab</para></caption>
</mediaobject>
</screenshot>
</para>
</sect3>
</sect2>
<sect2 id="ingredients-tab">
<title>Entering Recipe Ingredients</title>
<para>To enter the recipe ingredients, click on the <emphasis><guilabel>Ingredients</guilabel></emphasis> tab. By default, the radio button beside the label <emphasis><guilabel>Ingredient:</guilabel></emphasis> is selected. However, <emphasis>&krecipes;</emphasis> also allows the entry of a <emphasis><guilabel>Header:</guilabel></emphasis> by selecting the radio button beside this label.</para>
<para>Ideally, the header should be created first, for example <quote>Cake</quote> or <quote>Frosting</quote>. To do this, ensure that the <emphasis><guilabel>Header:</guilabel></emphasis> radio button is selected. Enter the desired name for the header in the textbox then, press the <keycap>Enter</keycap> key, or click the <guibutton>Add ingredient</guibutton> button located at the top right-hand side of the ingredient list. Once this is done, the radio button will automatically revert to the <emphasis><guilabel>Ingredient:</guilabel></emphasis> selection. Then, ingredients can be entered. You will note that as you enter each ingredient, it will appear below the header indented in a <quote>file tree</quote> type of format.</para>
<note><para>Although it is ideal to enter the header first and then the ingredients associated with that header, you can also enter the header after entering the ingredients. Enter the header as described above, then move the ingredient into the header by utilizing the <guiicon><inlinemediaobject><imageobject><imagedata fileref="down.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> or <guiicon><inlinemediaobject><imageobject><imagedata fileref="up.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button to position the ingredient until it appears indented below the appropriate header.</para></note>
<para> Ingredients are entered by filling in the appropriate textbox under the headings &mdash;</para>
<itemizedlist>
<listitem><para>Ingredient: &ndash; the ingredient is entered here, for example, Sugar</para>
<tip><itemizedlist><listitem><para>Type in the first few letters of the ingredient. If it exists in the ingredient list, it will appear in the textbox <quote>grayed-out</quote>. To select the gray-out ingredient, tab to the next textbox.</para></listitem>
<listitem><para>The Ingredient can also be selected from the <quote>drop-down</quote> menu.</para></listitem></itemizedlist>
</tip>
</listitem>
<listitem><para>Amount: &ndash; the amount of the ingredient required, for example, &#189; or 1-2 --> note that <emphasis>&krecipes;</emphasis> will allow the entry of ranges for ingredients</para></listitem>
<listitem><para>Unit: &ndash; the unit of measurement, for example, <emphasis>teaspoon</emphasis></para>
<para>When you enter a unit, if it does not exist in your <emphasis>Units list</emphasis>, it will automatically be added and a dialog box will appear prompting for the entry of a plural for the unit. Enter the plural in the textbox beside the label <emphasis><guilabel>Plural:</guilabel></emphasis>. Additionally, you can add an abbreviation for both the singular and plural forms of the unit as shown in the following diagram.</para>
<para><inlinemediaobject><imageobject><imagedata fileref="addunit.png" format="PNG"/></imageobject></inlinemediaobject></para>
<para>A drop-down menu is also available for selecting a <guilabel>Type:</guilabel> for the new unit. Choices for this are: &nbsp;</para>
<itemizedlist>
<listitem><para>Mass, for those units that are based on weight, for example, pound</para></listitem>
<listitem><para>Volume, for those units that are based on a volume measure, for example teaspoon, fluid ounce, or cup</para></listitem>
<listitem><para>Other, for those units that are neither a neither mass, nor volume or where a weight might be dependent on the size of the unit, for example <emphasis>bag</emphasis></para></listitem>
</itemizedlist>
<para>Specifying the unit type is important for the purpose of your unit conversions which, in combination with nutrient weights, help determine the nutrient values in your recipes. For a more detailed explanation of adding and maintaining units of measure, see <link linkend="units-component"> The Units Component</link>. For more information about ingredient weights, see <link linkend="ingredients-component">The Ingredients Component</link>.</para></listitem>
<listitem><para>Preparation Method: &ndash; the method of preparing the ingredient, for example, <emphasis>chopped</emphasis></para>
<tip><para>The Preparation Method can also be selected from a drop-down menu.</para>
<para><emphasis>&krecipes;</emphasis> will accept multiple preparation mentod in a comma-separated list, for example, <emphasis>peeled,chopped</emphasis></para></tip></listitem>
</itemizedlist>
<para><emphasis>&krecipes;</emphasis> also permits the entry of alternate ingredients. To enter an alternate ingredient, simply click on the tick box that appears between the <emphasis>Preparation Method:</emphasis> textbox and the <guilabel>OR</guilabel> label. A row identical to the one that you have just finished will appear for completing the alternative choice.</para>
<para>To add the ingredient(s) to the ingredient list, simply press the <keycap>Enter</keycap> key.</para>
<para>Alternatively, click on the <guibutton>Add Ingredient</guibutton> button on the right-hand side of the ingredient list.</para>
<note><itemizedlist>
<listitem><para>If a particular field is not required to describe an ingredient <emphasis>it can be left blank</emphasis>!</para></listitem>
<listitem><para>An ingredient may be removed from the list by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="no.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button to the right of the ingredient list.</para></listitem>
<listitem><para>An ingredient may also be repositioned in the list by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="up.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> or the <guiicon><inlinemediaobject><imageobject><imagedata fileref="down.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button that appear on the right of the ingredient list.</para></listitem>
<listitem><para>Once an ingredient has been transferred to the ingredient list, the <quote>Amount</quote>, <quote>Units</quote> and <quote>Preparation Method</quote> fields may be edited by double-clicking on the particular component that needs to be changed.</para> </listitem>
</itemizedlist></note>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the completed Ingredients tab in the &krecipes; recipe entry interface.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="recipe-ingredients-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Entering Ingredients &ndash; Ranges for the <emphasis>Amount</emphasis> and Alternate Ingredients are permitted</para></caption>
</mediaobject>
</screenshot>
</para>
<sect3 id="property-status">
<title>Looking After Nutrients</title>
<para>Directly beneath the ingredients list, there is a visible means to obtain the status of your recipe nutrients. Beside the label <guilabel>Property Status:</guilabel>, text and an <emphasis>LED</emphasis> style indicator are used to depict this information.</para>
<para>A green status indicator means that your nutrient information is complete. However, you will note from the above graphic, that the nutrient information for this recipe is <emphasis>Incomplete</emphasis> and the indicator shows as red. To find out exactly what is needed to complete the nutrient information, click the <guibutton>Details</guibutton> button. A window will appear explaining what the problems are, for example: &mdash;</para>
<para><inlinemediaobject><imageobject><imagedata fileref="property_details.png" format="PNG"/></imageobject></inlinemediaobject></para>
<para>This dialog is telling you that, for the ingredient <emphasis>apples</emphasis>, there are two possible reasons for the property or <emphasis>nutrient</emphasis> information being incomplete: &mdash;</para>
<para><orderedlist>
<listitem><para>An ingredient weight has not been provided.</para>
<para>Ingredient weights are set in the <emphasis>Ingredients</emphasis> component. See <link linkend="ingredients-component">The Ingredients Component</link> for instructions on all aspects of setting ingredient details.</para>
<para>or,</para></listitem>
<listitem><para>Conversion information is lacking.</para>
<para>For this example, you are being told that a conversion from "No unit" to "cup" and "cup" to "grams" cannot be done. Conversion factors for your units are set in the <emphasis>Units</emphasis> component. For more information on Units and their conversions see <link linkend="units-component">The Units Component</link>.</para></listitem>
</orderedlist>
</para>
<note><para>An entirely different message would result on clicking the <guibutton>Details</guibutton> button had the unit in the above screenshot been supplied with no preparation method specified.</para></note>
<para>The message in the above graphic also indicates that an approximation will be made for the ingredient <emphasis>butter</emphasis> because <emphasis>&krecipes;</emphasis> cannot find weight information that is specific to the preparation method <emphasis>melted</emphasis> when associated with this ingredient.</para>
<para>We can use the following table to assist in making a correction for apples.</para>
<informaltable>
<tgroup cols="6">
<thead><row><entry>Measure</entry><entry>Diameter</entry><entry>Equivalent 1</entry><entry>Equivalent 2</entry><entry>Equivalent 3</entry><entry>Equivalent 4</entry></row></thead>
<tbody>
<row><entry>1 large apple</entry><entry>3 3/4" (9.5 cm)</entry><entry>2 cups, sliced or chopped</entry><entry>1 1/2 cups, finely chopped</entry><entry>1 1/4 cups, grated</entry><entry>3/4 cups, sauce</entry></row>
<row><entry>1 medium apple</entry><entry>2 3/4" (7 cm)</entry><entry>1 1/3 cups, sliced or chopped</entry><entry>1 cup, finely chopped</entry><entry>3/4 cup, grated</entry><entry>1/2 cup, sauce</entry></row>
<row><entry>1 small apple</entry><entry>2 1/4" (5.7 cm)</entry><entry>3/4 cup, sliced or chopped</entry><entry>3/4 cup, finely chopped</entry><entry>1/2 cup, grated</entry><entry>1/3 cup, sauce</entry></row>
<row><entry>1 pound apples</entry><entry>&nbsp;</entry><entry>2 large apples</entry><entry>3 medium apples</entry><entry>4 small apples</entry><entry>&nbsp;</entry></row>
</tbody>
</tgroup>
</informaltable>
<para>Information for the compilation of the above table can be found at <ulink url="http://www.usapple.org/consumers/appleguide/equivalents.cfm"></ulink>.</para>
<para>Using the above table and assuming that the size of the apples is <emphasis>medium</emphasis>, you might add a weigh entry for medium apples in your ingredient weight table. See <link linkend="ingredients-component">The Ingredients Component</link> for explicit instructions on doing this.</para>
<para>The above table indicates that 1 pound of apples is equivalent to 3 medium apples. However, the weight table in the <emphasis>Ingredients Component</emphasis> requires that the weight be in <emphasis>grams</emphasis>. If we know that 1 pound equals 454 grams, and that 3 medium apples weigh 454 grams, then 1 apple will equal 151.3 grams. We will assume that this conversion has been added correctly to your weight table. Also, if the equivalent has been added to the weight table with no preparation method specified, you will have to remove the preparation method <emphasis>sliced</emphasis> in order to completely update the status indicator for <emphasis>apples</emphasis>.</para>
<tip><para>After adding the weight for <emphasis>apples</emphasis> in the <emphasis>Ingredients Component</emphasis>, if you return to your recipe and the <emphasis>LED</emphasis> status indicator hasn't changed, you can click on it to cause an update.</para></tip>
<para>To assist you with your conversions, <emphasis>&krecipes;</emphasis> has a nifty tool that can be found by selecting <guimenu>Tools</guimenu> and <guimenuitem>Measurement Converter</guimenuitem>. This helper will be more fully discussed in <link linkend="measure-converter">Using the Measurement Converter</link>.</para>
<para>After making the adustment for apples, the <emphasis>LED</emphasis> status indicator will turn yellow because nutrient information is complete, but an approximation has been made for the ingredient <emphasis>butter</emphasis>. The <guilabel>Property Status:</guilabel> of your recipe will show as <emphasis>Complete, but approximations made</emphasis>. Here, you can choose to do one of the following: &mdash;</para>
<para><orderedlist>
<listitem><para>Choose to enter a weight for <emphasis>melted butter</emphasis> in your weight table</para></listitem>
<listitem><para>Accept the approximation, in which case, your status <emphasis>LED</emphasis> will remain yellow</para></listitem>
<listitem><para>Remove the preparation method from <emphasis>butter</emphasis>, if it will not adversely affect the prepartion of your recipe.</para></listitem>
</orderedlist>
</para>
<para>Choosing 1 or 3 above will allow <emphasis>&krecipes;</emphasis> to obtain accurate weight information for the ingredient and your status indicator <emphasis>LED</emphasis> will turn green and the <guilabel>Property Status:</guilabel> will show as <emphasis>Complete</emphasis>.</para>
<tip><para>The <guibutton>Help</guibutton> button will connect you to this section of the <emphasis>&krecipes;</emphasis> Handbook.</para></tip>
</sect3>
<sect3 id="copy-paste">
<title>Copying Recipes from Other Sources</title>
<para>Do you need an easy method of getting recipe ingredients into <emphasis>&krecipes;</emphasis>? You can do that with the <emphasis>Copy/Paste</emphasis> functionality!</para>
<para>Find the recipe that you wish to enter into <emphasis>&krecipes;</emphasis>. Start the interface for entering a new recipe and enter the appropriate parameters in the <emphasis><guilabel>Recipe</guilabel></emphasis> tab. Move to the <emphasis><guilabel>Ingredients</guilabel></emphasis> tab. Copy the recipe ingredients from your chosen source and initiate the Copy/Paste interface by clicking the <guiicon><inlinemediaobject><imageobject><imagedata fileref="editpaste.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> which appears as the last item in the group of icons to the right of the ingredient list. The recipe ingredients will appear in the upper portion of the <interface>Ingredient Parser</interface> window.</para>
<para>Make any edits that you wish in this portion of the screen. For example, if the recipe lists an ingredient as <emphasis>sugar</emphasis> and you know that the corresponding item in your ingredient list is <emphasis>granulated sugar</emphasis>, you may want to change this. For any ingredient or unit that you do not alter in this portion of the screen, the ingredient and/or unit will be added to your ingredient and/or units list if it does not exist.</para>
<para>Once your ingredients are formatted to your liking, click the <guibutton>Parse Text</guibutton> button. The ingredient list will be transferred to the lower portion of the window beneath the label <emphasis><guilabel>Ingredients as understood by &krecipes;:</guilabel></emphasis>. From this portion of the screen, you can set any <emphasis>Headers</emphasis> by clicking on the <guibutton>Set Header</guibutton> button to the right.</para>
<para>Click the <guibutton>OK</guibutton> button that appears in the top right-hand corner of window to transfer you ingredients to your recipe. You can also choose not to proceed with the addition of the ingredients by clicking on the <guibutton>Cancel</guibutton> button which will close the window.</para>
<para>Once the ingredients have been transferred into the ingredient list for your new recipe, they can be moved or removed as describe in the section <link linkend="ingredients-tab">Entering Recipe Ingredients</link> above. In addition the amount, unit or preparation methods can be edited, also as described above.</para>
<para>You can now proceed to enter the recipe instructions as described below. The method for preparing your recipe can be copied from the source that you are using and pasted into the <emphasis><guilabel>Instructions</guilabel></emphasis> tab.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the edited ingredients in the &krecipes; Parser interface.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="parser.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Completed Ingredient Parser</para></caption>
</mediaobject>
</screenshot>
</para>
</sect3>
</sect2>
<sect2 id="instructions-tab">
<title>Entering the Recipe Instructions</title>
<para>To enter the recipe instructions, click on the <emphasis><guilabel>Instructions</guilabel></emphasis> tab.</para>
<para>Entering the recipe instructions is easy &ndash; in the whitespace provided, simply type in the steps necessary to complete the preparation of the recipe.</para>
<para>To make absolutely sure that typing is done in the correct area, the prompt <prompt>Write the recipe instructions here</prompt> is displayed! <guiicon><inlinemediaobject><imageobject><imagedata fileref="smiley.png" format="PNG"/></imageobject></inlinemediaobject></guiicon></para>
<tip><para>A <emphasis>VERY COOL</emphasis> part of entering the recipe instructions is the <emphasis>Auto Completion</emphasis> feature! This is a real time and effort saver if your instructions refer to many of the ingredients in your ingredient list, and/or if your ingredient names are lengthy. This is how it works &mdash;</para>
<para>In the <quote>Apple Crisp</quote> recipe shown in the screenshot, we have the ingredient <quote>brown sugar</quote>. As you begin typing <quote>brown sugar</quote> in your recipe instructions, <emphasis>&krecipes;</emphasis> will match typed characters with ingredients in your recipe ingredient list and automatically complete the remaining characters.</para>
<para>For example, if you type <quote>b</quote>, the characters <quote>rown sugar</quote> are the ones that will be auto-completed and inserted into the instructions. The auto-completed characters will appear highlighted and you can choose to accept the suggested ingredient by pressing the <keycap>Enter</keycap> key.</para>
<para>However, suppose that in your instructions, you simply wanted to refer to <quote>brown sugar</quote> as <emphasis>sugar</emphasis> and you enter the character <quote>s</quote>. <emphasis>&krecipes;</emphasis> will search the ingredients in your recipe and match the first ingredient beginning with <quote>s</quote> that it finds, if there is one. If there is no ingredient in your recipe ingredient list beginning with <quote>s</quote>, nothing will happen &ndash; you will just continue typing the word <quote>sugar</quote>.</para>
<para>If there is another ingredient beginning with <quote>s</quote> in your recipe ingredient list, for instance, <emphasis>salt</emphasis>, the remaining characters, <abbrev>i.e.</abbrev> the <quote>alt</quote>, will be auto-completed and highlighted. Simply press the <keycap>Delete</keycap> key on the keyboard to remove the unwanted characters and continue typing. Alternatively, you can just continue typing the entire word and your instructions will remain as typed.</para></tip>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the completed Instructions tab in the &krecipes; recipe entry interface.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="recipe-instructions-tab.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>New Recipe Entry &ndash; The Completed Instructions Tab</para></caption>
</mediaobject>
</screenshot>
</para>
</sect2>
<sect2 id="ratings-tab">
<title>Adding Recipe Ratings</title>
<para><emphasis>&krecipes;</emphasis> allows you to rate your recipes! Ratings by multiple people are allowed, so each of your recipe <quote>tasters</quote> can provide their own input. Additionally, each rating can include multiple rating parameters. The default parameters against which you can rate your recipe are &mdash;</para>
<itemizedlist>
<listitem><para>Taste</para></listitem>
<listitem><para>Appearance</para></listitem>
<listitem><para>Ease of Preparation</para></listitem>
<listitem><para>Originality</para></listitem>
<listitem><para>Overall</para></listitem>
</itemizedlist>
<para>Initially, in the <emphasis><guilabel>Ratings</guilabel></emphasis> tab, there is only a blank screen with the <guibutton>Add Rating...</guibutton> button at the bottom. Clicking this button will start the interface for entering ratings.</para>
<para>The <emphasis>Ratings</emphasis> interface is comprised of the following elements &mdash;</para>
<itemizedlist>
<listitem><para>Rater: &ndash; this is the name of the person providing their opinion of the recipe</para>
<para>To complete this element <userinput>enter the rater's name</userinput> in the textbox that appears beside the label <emphasis><guilabel>Rater:</guilabel></emphasis>.</para></listitem>
<listitem><para>Criteria: &ndash; this is the criteria on which the recipe is rated</para>
<para>Select the criteria against which you want to rate the recipe from the drop-down menu that appears beside the <emphasis><guilabel>Criteria:</guilabel></emphasis> label. Five default choices exist for rating criteria, as listed above, but if you have another against which you want to rate your recipe, it can be typed directly into the textbox and will automatically be added to your rating criteria list.</para></listitem>
<listitem><para>Stars: &ndash; this is the number of stars that you wish to assign to the particular criteria that you are rating on</para>
<para>Star ratings are completed by clicking on a star. Clicking on the left-hand side of any star will provide a &#189; star rating. Clicking on the right-hand side of the star will provide a full star rating.</para>
<tip><para>It is unnecessary to click on each star individually. For instance, if you are rating the recipe on the <emphasis>Taste</emphasis> criteria and you want to assign this a 4&#189; star rating, click on the left hand side of the 5th star.</para></tip>
<para>Once you have completed the star rating for the recipe, click the <guibutton>Add</guibutton> button to add the rating to the rating list. At this point, you can continue to rate the recipe against other criteria in the same manner.</para>
<para>From within the rating list, both the rating criteria and the star rating can be edited by double clicking on either item. The rating criteria is edited the same way any text edit is done. To edit the star rating, double click the stars and then type the numerical value for the number of stars that you wish to assign to the rating. Once you press the <keycap>Enter</keycap> key, the rating will show the graphical stars.</para>
<para>Should you change your mind and wish to remove any of the rating criteria, select it in your rating list and click the <guibutton>Delete</guibutton> button.</para>
</listitem>
<listitem><para>Comments: &ndash; this is any added information that you wish to note for the recipe, for example, an enhancement to improve the recipe, or a serving suggestion such as <emphasis>Great served with ice cream</emphasis></para>
<para>To enter a comment, simply position your cursor in the white space beneath the <emphasis><guilabel>Comments:</guilabel></emphasis> label and begin typing.</para></listitem>
</itemizedlist>
<para>Once you are satisfied with your ratings, click the <guibutton>OK</guibutton> button to complete the addition. The <quote>smiley</quote> graphic that appears to the left of the rating list is indicative of the overall rating of the recipe, from poor to excellent. This graphic will not appear in your recipe when it is viewed.</para>
<para>Any rating can be removed from the screen by clicking the <guibutton>Remove</guibutton> button beneath the rating that you wish to remove. Additionally, you can use the <keycombo action="simul">&Alt;<keycap>M</keycap></keycombo> key combination. A rating can be edited by clicking on the <guibutton>Edit...</guibutton> button. When you choose to edit a rating, the same interface that was used to originally enter the rating is opened. Each rating has its own <guibutton>Delete</guibutton> and <guibutton>Edit...</guibutton> buttons.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the completed Ratings tab in the &krecipes; recipe entry interface.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="ratings.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>New Recipe Entry &ndash; The Completed Ratings Tab</para></caption>
</mediaobject>
</screenshot>
</para>
</sect2>
<sect2 id="recipe-actions">
<title>Recipe Actions</title>
<para>OK! Now that the recipe has been input, what needs to be done?</para>
<para>The following options can be selected &mdash;</para>
<itemizedlist>
<listitem><para>Spell-check &ndash; this is accomplished by clicking on the <guiicon>ABC</guiicon> icon that appears on the bar below the input area in the <emphasis><guilabel>Instructions</guilabel></emphasis> tab</para></listitem>
<listitem><para>Save &ndash; click on the <guibutton>Save</guibutton> button that appears on the bottom of the screen</para>
<tip><para>The <guibutton>Save</guibutton> button can be used to save the recipe at any point during the input. As with any other application, when editing, it is always a good idea to save frequently!</para></tip>
</listitem>
<listitem><para>Show recipe &ndash; click on the <guibutton>Show recipe</guibutton> button to view the recipe</para>
<note><para>To view a recipe, it must be saved. If the recipe has NOT been saved at the time that the <guibutton>Show recipe</guibutton> button is clicked, the following alert will appear &mdash;</para>
<para><emphasis>You need to save the recipe before displaying it. Would you like to save it now?</emphasis></para>
<para>Click the <guibutton>Yes</guibutton> button to save the recipe, or the <guibutton>No</guibutton> button to close the dialog and return to the recipe entry interface.</para>
<para>If the <guibutton>Show</guibutton> button is pressed, the recipe will display. To return to the <interface>Edit Recipe</interface> interface in the event that the recipe has not been completely entered, click on the <guibutton>Recipe Name</guibutton> button that appears at the bottom of the component list in the left-hand pane of the window. Alternatively, <guimenu>Tools</guimenu> and <guimenuitem>Edit</guimenuitem> can be chosen from the <emphasis>&krecipes;</emphasis> menu, or select the <keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo> key combination.</para>
</note>
</listitem>
<listitem><para>Close &ndash; click the <guibutton>Close</guibutton> button</para>
<para>Again, if the recipe has not been saved an alert will appear stating &mdash;</para>
<para><emphasis>This recipe contains unsaved changes. Would you like to save it before closing?</emphasis></para>
<para>The course of action can be selected by clicking the <guibutton>Yes</guibutton> button to save, the <guibutton>No</guibutton> button to close the recipe without saving, or the <guibutton>Cancel</guibutton> button to close the dialog and return to the recipe entry interface.</para>
</listitem>
<listitem><para>Resize &ndash; click the <guibutton>Resize</guibutton> button to resize the recipe</para>
<tip><para>The recipe can be resized by either of two methods &mdash;</para>
<orderedlist>
<listitem><para>Scale by yield &mdash;</para>
<para>To scale by yield, select the <emphasis>Radio Button</emphasis> beside the <emphasis><guilabel>Scale by yield label</guilabel></emphasis>. Below this and beside the <emphasis><guilabel>Current yield:</guilabel></emphasis> label, the current yield of your recipe is shown. Beside the <emphasis><guilabel>New yield:</guilabel></emphasis>, there is a textbox in which to <userinput>enter the new yield amount desired</userinput>.</para>
<note><para>If you have entered a range for your yield amount, <emphasis>Scale by yield</emphasis> will not be available because <emphasis>&krecipes;</emphasis> cannot determine which portion of the range it is scaling.</para></note></listitem>
<listitem><para>Scale by factor &mdash;</para>
<para>To scale by factor, click the <emphasis>Radio Button</emphasis> beside the<emphasis><guilabel>Scale by factor</guilabel></emphasis> label. Enter <userinput>the desired scaling factor</userinput> in the textbox beside the <emphasis><guilabel>Factor (i.e. 1/2 to half; 3 to triple):</guilabel></emphasis> label.</para></listitem>
</orderedlist>
<para>In either of these scenarios, click the <guibutton>OK</guibutton> button to continue. Your recipe will be reproportioned appropriately. Alternatively, click the <guibutton>Cancel</guibutton> button to close the window and return to the previous screen.</para></tip></listitem>
</itemizedlist>
</sect2>
<sect2 id="edit-recipe">
<title>Editing Saved Recipes</title>
<para>The feature for editing recipes can be accessed in a number of ways. With the <emphasis>Find/Edit Recipes</emphasis> component selected, </para>
<orderedlist><listitem><para>Select the recipe to be edited from the recipe list in the main portion of the <emphasis>&krecipes;</emphasis> window. Click on the <guibutton>Open Recipe(s)</guibutton> button. From the <guimenu>Tools</guimenu> menu, select <guimenuitem>Edit Recipe</guimenuitem>, or the <keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo> key combination can be pressed.</para></listitem>
<listitem><para>Select the recipe to be edited from the recipe list in the main portion of the <emphasis>&krecipes;</emphasis> window. Click the <guibutton>Edit Recipe</guibutton> button.</para>
</listitem>
</orderedlist>
<note><para>Be sure that you have selected the recipe that you want to edit. If a recipe is not selected, an alert box will appear displaying the message <quote>No recipe selected!</quote></para></note>
<para>Either way, the identical screen that appeared when entering a new recipe displays. <emphasis>For a complete description of this screen, refer to the section</emphasis> <link linkend="add-recipe">Adding a New Recipe</link>.</para>
<para>All aspects of the recipe can now be edited &mdash;</para>
<itemizedlist>
<listitem><para>the Recipe Name, Authors, Categories, Yield Amount, Yield Type, Preparation Time and/or graphic from the <emphasis><guilabel>Recipe</guilabel></emphasis> tab</para></listitem>
<listitem><para>the Amount, Units, and/or Preparation method for each of the listed ingredients in the <emphasis><guilabel>Ingredients</guilabel></emphasis> tab</para>
<note><para>Also in this tab, an ingredient can be added by clicking on the <guibutton>New Ingredient</guibutton> button that appears on the top, right-hand side of the ingredient list, or deleted by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="no.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button</para></note></listitem>
<listitem><para>the preparation directions from the <emphasis><guilabel>Instructions</guilabel></emphasis> tab</para></listitem>
</itemizedlist>
<para>As with entering a new recipe, the buttons <guibutton>Save Recipe</guibutton>, <guibutton>Show Recipe</guibutton>, <guibutton>Close</guibutton> and <guibutton>Resize Recipe</guibutton> are available from each of the tabs</para>
<para>While editing the recipe, if the <guibutton>Show Recipe</guibutton> button is selected, the <interface>Unsaved changes - krecipes</interface> dialog box appears stating <emphasis>This recipe has changes that will not be displayed unless the recipe is saved. Would you like to save it now?</emphasis>. The <guibutton>Yes</guibutton>, <guibutton>No</guibutton> or <guibutton>Cancel</guibutton> buttons are available for selection.</para>
<para>The important detail to note is that in order to continue editing the recipe, the <interface>Edit Recipe</interface> interface must be accessed. This can be done in a variety of ways &mdash;</para>
<itemizedlist>
<listitem><para>Select <guimenu>Tools</guimenu> and then, <guimenuitem>Edit Recipe</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu</para></listitem>
<listitem><para>Press the <keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo> key combination</para></listitem>
<listitem><para>Click on the <guibutton>Recipe Name</guibutton> button that appears at the bottom of the component list in the left-hand pane of the window &ndash; this button appears once the recipe to be edited has been loaded and a change has been initiated </para></listitem>
</itemizedlist>
<tip><para>With the <emphasis>Find/Edit Recipes</emphasis> component selected and the list of recipes showing on the right-hand side of the screen, an entire recipe may be deleted by selecting it from the list and clicking the <guibutton>Delete</guibutton> button.</para></tip>
</sect2>
</sect1>
<sect1 id="krecipes-page-setup">
<title>Page Setup</title>
<para>
To access Page Setup, select <guimenu>Edit</guimenu> and <guimenuitem>Page Setup...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu bar.
</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Page Setup dialog</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="page-setup.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Page Setup</para></caption>
</mediaobject>
</screenshot>
</para>
<sect2 id="setup-overview">
<title>An Overview of Page Setup</title>
<para>
In the <interface>Page Setup</interface> window, the toolbar displays the icons for <guiicon>Open</guiicon>, <guiicon>Save</guiicon>, <guiicon>Save As</guiicon> and <guiicon>Redisplay</guiicon>.
</para>
<tip>
<itemizedlist>
<listitem><para>If you click and hold the <guiicon>Open</guiicon> icon, choices for <emphasis>Styles</emphasis> and <emphasis>Templates</emphasis> will be revealed. <emphasis>Styles</emphasis> are for selection of a color scheme for your recipes and <emphasis>Templates</emphasis> are choices for the layout of your recipes.</para>
<para><guimenuitem>Default</guimenuitem>, as the name suggests, is the default style. However, it is easy to change colors and to make other enhancements to the look of your recipes. To discover how to do this, refer to the section <link linkend="change-attributes">Changing Attributes</link>.</para></listitem>
<listitem><para>With regard to <guiicon>Redisplay</guiicon>, a word of caution is in order. Clicking on <guiicon>Redisplay</guiicon> after changes have been made in the Page Setup window, will reload the currently active layout file, erasing all changes <emphasis>unless they have been saved</emphasis>. This represents the prime function for <guiicon>Redisplay</guiicon>. Should you wish to revert to your previous settings while still in <interface>Page Setup</interface>, clicking <guiicon>Redisplay</guiicon> will allow you to do this provided that you have not saved any changes.
</para>
<para>
Beneath the toolbar, the label <guilabel>Usage: Right-click any element to edit the look of that element.</guilabel> clearly states the <interface>Page Setup</interface> method of use. All attribute changes are dynamic and do not necessitate reloading while in <interface>Page Setup</interface>. See the section <link linkend="change-attributes">Changing Attributes</link> for details on changing the appearance of your recipe elements.
</para></listitem>
</itemizedlist>
</tip>
<para>
When the <interface>Page Setup</interface> window first appears, you will probably need to resize it in order to view all the recipe elements. When the window is resized, all recipe elements will be scaled fit within the confines of the window.
</para>
</sect2>
<sect2 id="displayed-items">
<title>Selecting Items to Display</title>
<para>
The last icon on the toolbar allows access to a list of items that are available for display in the recipe. These include &mdash;
</para>
<itemizedlist>
<listitem><para><guimenuitem>Authors</guimenuitem> &ndash; The authors or contributors of the recipe</para></listitem>
<listitem><para><guimenuitem>Categories</guimenuitem> &ndash; The category to which the recipe belongs</para></listitem>
<listitem><para><guimenuitem>Ingredients</guimenuitem> &ndash; The list of recipe ingredients</para></listitem>
<listitem><para><guimenuitem>Instructions</guimenuitem> &ndash; The steps for preparing the recipe</para></listitem>
<listitem><para><guimenuitem>Photo</guimenuitem> &ndash; To display a photo in the recipe</para></listitem>
<listitem><para><guimenuitem>Properties</guimenuitem> &ndash; The list of nutrients in the recipe</para></listitem>
<listitem><para><guimenuitem>Preparation Time</guimenuitem> &ndash; The time for preparation</para></listitem>
<listitem><para><guimenuitem>Ratings</guimenuitem> &ndash; The ratings given to the recipe</para></listitem>
<listitem><para><guimenuitem>Title</guimenuitem> &ndash; The title of the recipe</para></listitem>
<listitem><para><guimenuitem>Yield</guimenuitem> &ndash; The yield amount expected from the recipe</para></listitem>
</itemizedlist>
<para>
By default, all items are displayed. To prevent display in the recipe, deselect the item by clicking on the checkbox beside it.
</para>
<note><para>All sections chosen to display in the recipe will also print. It may be desirable to have a section display, but not print. In this case, you can define a new print layout. See the section <link linkend="print-setup">Print Setup</link> for instructions.</para>
</note>
</sect2>
<sect2 id="change-attributes">
<title>Changing Attributes</title>
<para>Characteristics of each section can be changed individually.</para>
<para>
Right-click on any section in the Page Setup window. A menu will display with the title of the section appearing at the top. From this menu, you can &mdash;
</para>
<itemizedlist>
<listitem><para>Change the <guimenuitem>Background color...</guimenuitem></para></listitem>
<listitem><para>Change the <guimenuitem>Text color...</guimenuitem></para></listitem>
<listitem><para>Change the <guimenuitem>Font...</guimenuitem></para></listitem>
<listitem><para>Choose whether or not to display the section by selecting or deselecting the checkbox beside <guimenuitem>Show</guimenuitem></para></listitem>
<listitem><para>Change the <guimenu>Alignment</guimenu> &ndash; This menu item has a sub-menu that allows you to select the alignment</para></listitem>
<listitem><para>Define a <guimenuitem>Border...</guimenuitem> that will appear around the selected section </para>
<para>When the <quote>Requested Border</quote> configuration window appears, there are sections that allow the definition of various elements under the appropriate headings. For example &mdash;</para>
<itemizedlist>
<listitem><para>Under the heading <quote>Style</quote>, a border style can be selected</para></listitem>
<listitem><para> Under the heading <quote>Color</quote>, a color can be selected from the color spectrum and this can be fine-tuned, using the color slider</para></listitem>
<listitem><para>Under the heading <quote>Width</quote> the width of the border, in pixels, can be selected. <emphasis>For a border such as <quote>Groove</quote>, or <quote>Ridge</quote> a minimum pixel size of 4 to 6 has been found to work best.</emphasis> The border size can be selected using a spinbox or selecting a numeric value from a list</para></listitem>
</itemizedlist>
<para>Finally, at the bottom is a section that allows the preview of the border as it will appear in the recipe.</para>
</listitem>
<listitem><para>Specify the number of <guimenuitem>Columns...</guimenuitem> that will be used to display your list items, such as <emphasis>Ingredients</emphasis> and <emphasis>Properties</emphasis></para>
<para>When the <guimenuitem>Columns...</guimenuitem> menu item is selected, a dialog box will appear where you can set the number of columns for display using a spinbox or typing the number directly into the textbox that appears beneath the label <guilabel>Select the number of columns to use:</guilabel>.</para></listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="print-setup">
<title>Print Setup</title>
<para><emphasis>&krecipes;</emphasis> allows you to define different looks for viewing and printing your recipes. For instance, you might be happy with a unified look for viewing your recipes, but want to color co-ordinate all elements when the recipe is printed.</para>
<para>If you are printing a full page recipe, items selected for printing and the attributes of your various recipe elements are set in the same manner as they were in <link linkend="krecipes-page-setup">Page Setup</link>. The trick for having a separate definition for printing is to ensure that you have saved your settings with a new file name.</para>
<para>When you select <guimenu>File</guimenu> and <guimenuitem>Print</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu bar, the <interface>Print Preview</interface> screen appears, as depicted in the following screenshot. However, it should be noted that your recipe must be opened in order for it to be printed.</para>
<sect2 id="print-recipe">
<title>Printing Your Recipe</title>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Print Preview screen.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="print-preview.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Print Preview Screen</para></caption>
</mediaobject>
</screenshot>
</para>
<para>As you will note from the above graphic, the page has been modified to depict a <quote>blueberry</quote> theme. There is absolutely no reason why you can't have multiple print layout files to use for different recipes. <emphasis>&krecipes;</emphasis> names its layout files with a .klo extention, so you could have a blueberry.klo file for all your blueberry recipes, or a christmas.klo file for all those Christmas goodies. You will also observe that <emphasis>Properties</emphasis> (your nutrients) have been deselected for printing purposes.</para>
<para>From the screenshot, you will see that there are four buttons at the bottom of the screen. Their usage is as follows: &mdash;</para>
<itemizedlist>
<listitem><para><guibutton>Help</guibutton> &ndash; clicking on this button will refer you to this section of the Handbook</para></listitem>
<listitem><para><guibutton>Edit</guibutton> &ndash; is used to access the <interface>Print Setup</interface> interface so that you can make any desired changes to the way your recipe will print</para>
<note><para>As previously stated, modifications to your print setup are done in exactly the manner as they are done in <link linkend="krecipes-page-setup">Page Setup</link>.</para></note></listitem>
<listitem><para><guibutton>Print</guibutton> &ndash; will open the print dialog window for whatever print program you are using, for example, kprinter</para></listitem>
<listitem><para><guibutton>Cancel</guibutton> &ndash; will close the <interface>Print Preview</interface> window and return you to your open recipe</para></listitem>
</itemizedlist>
<para>When the print dialog box opens, there are some selections that you might want to pay particular attention to. These include: &mdash;</para>
<itemizedlist>
<listitem><para>The <emphasis><guibutton>Properties</guibutton></emphasis> button &ndash; when you click this button, a dialog will open where you can set paper size.</para></listitem>
<listitem><para>A tickbox beside the label <guilabel>Preview</guilabel>. You might want to select to preview the recipe from within the print interface to ensure that it prints exactly as you want. The <emphasis><interface>Print Preview</interface></emphasis> screen in &krecipes; will preview the selections made in the <emphasis><interface>Print Setup</interface></emphasis> interface within &krecipes;. However, how the recipe actually prints is controlled by settings from within the printer dialog.</para></listitem>
<listitem><para>An <guibutton>Options&gt;&gt;</guibutton> button at the bottom of the printer dialog window. Clicking on this button will expand this particular dialog.</para>
<para>When the <guibutton>Options&gt;&gt;</guibutton> is expanded, two tabs are of particular interest. These are: &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Copies</guilabel></emphasis> &ndash; within this tab, you can set the number of copies of your recipe to print, assuming that you might want more than one.</para></listitem>
<listitem><para><emphasis><guilabel>HTML Settings</guilabel></emphasis> &ndash; this tab is particularly important because it is the selections from within this tab that ensure your recipe will print exactly as previewed within &krecipes;.</para>
<para>There are three tickboxes within this tab: &mdash;</para>
<orderedlist><listitem><para><emphasis><guilabel>Printer friendly mode (black text, no background)</guilabel></emphasis> &ndash; if you want your recipe to print with the backgrounds that you have selected, <emphasis>deselect this tickbox</emphasis>!</para>
<note><para>This tickbox is the important one!</para></note>
</listitem>
<listitem><para><emphasis><guilabel>Print images</guilabel></emphasis> &ndash; deselect this tickbox only if you do not want your recipe printed with the associated photo.</para></listitem>
<listitem><para><emphasis><guilabel>Print header</guilabel></emphasis> &ndash; selecting this textbox will cause a header to be printed on your page showing the date, the file name and its path and the copy number.</para></listitem>
</orderedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<note><para>It is beyond the scope of this document to detail all print settings. If you should need assistance with this, click the <emphasis><guibutton>Help</guibutton></emphasis> button from within the print dialog interface.</para></note>
</sect2>
</sect1>
<sect1 id="import-export-recipes">
<title>Importing and Exporting Recipes</title>
<para><emphasis>&krecipes;</emphasis> allows the import of recipes from a file or from a database. Recipes can also be exported to other formats.</para>
<sect2 id="file-import">
<title>Importing from a File</title>
<para><emphasis>&krecipes;</emphasis> allows the import of recipes from the following formats &mdash;</para>
<itemizedlist><listitem><para><emphasis>&krecipes;</emphasis> &ndash; files of this format will have extensions of .kre or .kreml</para></listitem>
<listitem><para>MasterCook &ndash; files of this format will have extensions of .mx2 and originate from MasterCook 5 or 6</para></listitem>
<listitem><para>MasterCook Export &ndash; files of this format will have extensions of .mxp or .txt and originate from MasterCook 4</para></listitem>
<listitem><para>Meal-Master &ndash; files of this format will have extensions of .mmf or .txt</para></listitem>
<listitem><para><quote>Now You're Cooking</quote> Generic Export &ndash; files of this format will have extensions of .txt</para></listitem>
<listitem><para>RecipeML &ndash; files of this format will have extensions of .xml or .recipeml</para></listitem>
<listitem><para>Rezkonv &ndash; files of this format will have extensions of .rk or .txt</para></listitem>
</itemizedlist>
<para>To import a recipe from a file of one of the above formats, select <guimenu>File</guimenu> from the <emphasis>&krecipes;</emphasis> menu bar. From the available choices, select <guimenuitem>Import from File ...</guimenuitem></para>
<para>A window will appear that allows the navigation to the file that you wish to import. Navigation can be done using the <quote>point and click</quote> method, or the location of the file may be entered directly into the box labelled <emphasis><guilabel>Location:</guilabel></emphasis>.</para>
<para>The <emphasis><guilabel>Filter:</guilabel></emphasis> box is used to select the format of the recipe being imported from the drop-down menu.</para>
<tip><para>To position the cursor for entry into the <emphasis><guilabel>Location:</guilabel></emphasis> box, the key combination <keycombo action="simul">&Alt;<keycap>L</keycap></keycombo> can be used. To position the cursor for entry into the <emphasis><guilabel>Filter:</guilabel></emphasis> box, the key combination <keycombo action="simul">&Alt;<keycap>F</keycap></keycombo> can be used.</para></tip>
<para>Once you have navigated to the location of the recipe file that you want to import and have selected the correct format, all the recipes saved in the selected format will appear in the file list. If import of only one recipe is desired, select the file that you wish to import and its name will appear in the <emphasis><guilabel>Location:</guilabel></emphasis> box. Press the <guibutton>OK</guibutton> button to proceed with the import, or the <guibutton>Cancel</guibutton> button to close the file selection window and return to the previous screen.</para>
<para>If you have selected the <quote><emphasis>Ask which recipes to import</emphasis></quote> tickbox in the <quote>Configure <emphasis>&krecipes;</emphasis>, Import</quote> interface, when you click on the <guibutton>OK</guibutton> button, the <emphasis>&krecipes;</emphasis> <interface>Import Recipes</interface> window will appear from which you can select the recipes that you want to import. For instructions on how to select this choice see the section <link linkend="import-export-preference">Choosing Import/Export Preferences</link>. If this selection is not made, your recipes will be imported silently with no prompt.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Import Recipes screen.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="import-recipe-screen.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Import Recipes Window &ndash; this window will appear when you are importing from a file OR from a Database.</para></caption>
</mediaobject>
</screenshot>
</para>
<para>Under the heading <emphasis><guilabel>Recipes</guilabel></emphasis>, drop-down lists will appear &mdash;</para>
<para>All &ndash; This list will be expanded by default and is selected by default whether one recipe or multiple recipes are being imported (the tickbox to the left of the label will contain a check mark). In brackets, to the right of the label, the number of recipes being imported will appear.</para>
<para>Below the <emphasis><guilabel>All</guilabel></emphasis> label, all the remaining <emphasis>Categories</emphasis> will be listed and the tickbox to the left of each category label will contain a check mark indicating that the category is selected. These categories will be collapsed by default and in brackets to the right of the category label, the number of recipes in the category will be shown.</para>
<para>Each category can be expanded to reveal the list of recipes in the category by clicking on the <guiicon>+</guiicon> sign that appears to the left of the tickbox. Again, by default, recipes within each category are selected as indicated by the checkmark in the tickbox to the left of the category name. Any recipes that do not have a category attached to them will appear under the <emphasis><guilabel>Uncategorized</guilabel></emphasis> group. To deselect any recipes that you do not wish to import, simply clear the tickbox beside the recipe name by clicking on it.</para>
<para>Once you are satisfied with the selection(s) you have made, click the <guibutton>OK</guibutton> button to proceed with the import, or the <guibutton>Cancel</guibutton> button to prevent the import and close the window.</para>
<para>It should be noted that the <guibutton>Cancel</guibutton> button can be pressed after the import starts. In this situation, any recipes that have been imported prior to pressing the <guibutton>Cancel</guibutton> button will remain in the database &ndash; <emphasis>&krecipes;</emphasis> does not <quote>rollback</quote> completed imports on cancellation of the import process.</para>
<para>Any recipes that have been placed in the <emphasis><guilabel>Uncategorized</guilabel></emphasis> group can be individually edited to place them in the appropriate existing category. You may also define a new category in which to place them. See the section <link linkend="edit-recipe">Editing Saved Recipes</link> and <link linkend="categories-component">The Categories Component</link> for instruction on how to do this. Once you have edited your recipes to categorize them and the <emphasis><guilabel>Uncategorized</guilabel></emphasis> group is empty, it will automatically be removed from the category list.</para>
<para>If the recipe(s) are categorized, <emphasis>&krecipes;</emphasis> will put the recipe(s) into the appropriate category or create a new category if the appropriate one does not exist.</para>
<para>Regardless of whether the recipe being imported is uncategorized or categorized, it may still be appropriate to edit the recipe to define <quote>Preparation Time</quote>, or otherwise fine-tune the recipe.</para>
<warning><para>The manner in which the recipe imports into <emphasis>&krecipes;</emphasis> is <emphasis>DEPENDENT ON THE WAY IT HAS BEEN INPUT INTO THE ORIGINAL PROGRAM!</emphasis> If the recipe has been input into the original program in a sloppy manner, it will not import neatly into <emphasis>&krecipes;</emphasis>!</para></warning>
</sect2>
<sect2 id="database-import">
<title>Importing from a Database</title>
<para>To import a recipe from an existing database, select <guimenu>File</guimenu> from the <emphasis>&krecipes;</emphasis> menu bar. From the available choices, select <guimenuitem>Import from Database ...</guimenuitem> The <interface>Database Import</interface> window will appear. Under the heading <emphasis>Database</emphasis>, you can make one of three selections. Your selection can be made by clicking the radio button beside <link linkend="import-sqlite">SQLite</link>, <link linkend="import-mysql">MySQL</link>, or <link linkend="import-postgresql">PostgreSQL</link>.</para>
<sect3 id="import-sqlite">
<title>Importing from SQLite</title>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the import dialog when importing from an SQLite database.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="import-sqlite.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Importing from an SQLite Database</para></caption>
</mediaobject>
</screenshot>
</para>
<para>If you choose SQLite, beneath the heading <emphasis><guilabel>Database file:</guilabel></emphasis>, there is a textbox and beside this, the <guiicon>Open File Dialog</guiicon> icon which, when clicked, will <action>open the file dialog window</action>. This window is used to navigate to the location of the database that you want to import. Once you have located the appropriate database file, select it from the file list. The name will appear in the <emphasis><guilabel>Location:</guilabel></emphasis> box. Click the <guibutton>OK</guibutton> button to proceed or the <guibutton>Cancel</guibutton> button to close the file dialog window and return to the previous screen.</para>
<para>Once the <guibutton>OK</guibutton> button is pressed, the file dialog window will close. You will be returned to the <interface> Database Import</interface> window and you should see the name of the database file with its <quote>path</quote> showing in the textbox. Click the <guibutton>OK</guibutton> button to proceed with the import, or the <guibutton>Cancel</guibutton> button to discontinue the import.</para>
<para>At this point, the import becomes <link linkend="common-import">common</link> for whatever database you are importing.</para>
</sect3>
<sect3 id="import-mysql">
<title>Importing from MySQL</title>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the import dialog when importing from a MySQL database.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="import-other-sql.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Importing from a MySQL Database (The same interface would appear if the PostgreSQL radio button was selected.)</para></caption>
</mediaobject>
</screenshot>
</para>
<para>If the MySQL radio button is selected in the <interface>Database Import</interface> window, you will be required to enter the following parameters in the textbox beside the appropriate label &mdash;</para>
<itemizedlist><listitem><para><emphasis><guilabel>Server:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Username:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Password:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Port:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Database name:</guilabel></emphasis></para></listitem>
</itemizedlist>
<para>Once this information has been supplied, click the <guibutton>OK</guibutton> button to proceed with the import steps that are <link linkend="common-import">common</link> to all. At this point, you may also click the <guibutton>Cancel</guibutton> button the cancel the import and return to the previous screen.</para>
</sect3>
<sect3 id="import-postgresql">
<title>Importing from PostgreSQL</title>
<para>If the PostgreSQL radio button is selected in the <interface>Database Import</interface> window, you will be required to enter the following parameters in the textbox beside the appropriate label &mdash;</para>
<itemizedlist><listitem><para><emphasis><guilabel>Server:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Username:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Password:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Port:</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Database name:</guilabel></emphasis></para></listitem>
</itemizedlist>
<para>Once this information has been supplied, click the <guibutton>OK</guibutton> button to proceed with the import steps that are <link linkend="common-import">common</link> to all. At this point, you may also click the <guibutton>Cancel</guibutton> button to cancel the import and return to the previous screen.</para>
<note><para>For both MySQL and PostgreSQL, it will be fine to leave the <guilabel>Port:</guilabel> as <emphasis>Default</emphasis>, in most cases. However, if you know that you connect to your database via a specific port number, especially in the situation where you might be connecting remotely, it can be set by either entering the port number in the textbox beside the <guilabel>Port:</guilabel> label, or using the spinbox beside the textbox to increment the port to the desired number. </para></note>
</sect3>
<sect3 id="common-import">
<title>Steps Common to All Database Imports</title>
<para>Similar to importing recipes from a file, if you have selected the <quote><emphasis>Ask which recipes to import</emphasis></quote> tickbox in the <quote>Configure <emphasis>&krecipes;</emphasis>, Import/Export</quote> interface, when you click on the <guibutton>OK</guibutton> button, the <emphasis>&krecipes;</emphasis> <interface>Import Recipes</interface> window will appear from which you can select the recipes that you want to import. For instructions on how to select this choice see the section <link linkend="import-export-preference">Choosing Import/Export Preferences</link>. If this selection is not made, your recipes will be imported silently with no prompt.</para>
<para>Again the <emphasis><guilabel>All</guilabel></emphasis> label will show and beneath this, the list of all categories being imported. Also like importing from a file, the list items will have tick boxes on the left from which whole categories and/or recipes can be deselected by clicking on the box to remove the check mark. The total number of recipes will show to the right of the <quote>All</quote> list item and the number of recipes in each category will display to the right of the category item.</para>
<para>Click the <guibutton>OK</guibutton> button to proceed with importing the database, or the <guibutton>Cancel</guibutton> button to stop the import. If you choose to proceed, the categories and recipes that are in the database file being imported will appear in your <emphasis>&krecipes;</emphasis> recipe list.</para>
</sect3>
</sect2>
<sect2 id="export-recipe">
<title>Exporting Recipes to Other Formats</title>
<para><emphasis>&krecipes;</emphasis> can export your recipes to the following formats &mdash;</para>
<itemizedlist>
<listitem><para>Compressed Krecipes format &ndash; files of this format will have extensions of .kre</para>
<para>This export format will result in a smaller file size and as a result disk space is saved. The smaller file size also makes sending over the Internet easier. This format also provides an means of backup in addition to the backup functionality in <emphasis>&krecipes;</emphasis>. See the section <link linkend="backup-db">Backing up Your Krecipes Database</link> for further information.</para></listitem>
<listitem><para>Krecipes &ndash; files of this format will have extensions of .kreml</para>
<para>Using this format exports your recipe in a readable format that makes it easier to edit the recipe XML.</para>
<note><para>When exporting in either Krecipes and Krecipes Compressed format, all information is guaranteed to be preserved. Other formats may support only certain information. If your recipes contain, for example, <quote>borders</quote> around certain elements, and this is not supported by the export format that you have specified, that information is lost without any warning.</para></note></listitem>
<listitem><para>Plain Text &ndash; files of this format will have extentions of .txt</para>
<para>Using this format exports your recipe information <emphasis>without the photo</emphasis> into plain text format. The idea here is not to be able to import back into <emphasis>&krecipes;</emphasis>, nor import into any other recipe format. The purpose is to be a handy tool for such tasks as e-mail.</para></listitem>
<listitem><para>Web Book &ndash; files of this format will have extensions of .html</para>
<para>This option allows you to export multiple recipes, for instance, a category. The cool part about exporting as a Web Book is that you will be allowed to navigate to specific recipes via links that appear under the category name at the top of the page.</para>
<para>You might want to use this feature to export recipes from a single category. However, you can randomly select recipes from multiple categories to be exported in this format. To do this, select the first recipe by clicking on it and then, hold the <keycap>Ctrl</keycap> key and select the next and subsequent recipes. If recipes are selected randomly, the export will create a page named <emphasis>index.html</emphasis> in the location that you specify. This file will have links to the various categories of recipes that you have exported.</para>
<para>For instance, suppose you have selected to export random recipes from <emphasis>Appetizers</emphasis>, <emphasis>Main Dishes</emphasis>, and <emphasis>Desserts</emphasis>. The index.html file would show links for <emphasis>Appetizers</emphasis>, <emphasis>Main Dishes</emphasis>, and <emphasis>Desserts</emphasis>. Clicking any one of those links will open the page for that category and you will then be able to navigate through the recipes within the category by clicking on the recipe name link that appears under the category name at the top of the page.</para>
<note><para>Once exported in Web Book format, you are unable to import these recipes back into <emphasis>&krecipes;</emphasis>.</para></note>
</listitem>
<listitem><para>Web page &ndash; files of this format will have extensions of .html</para>
<para>You might choose to export in this format in order to create a web page that contains your recipes. Similar to exporting as a <emphasis>Web Book</emphasis>, you can export recipes from a single category, entire categories or randomly selected recipes from any number of categories. The difference is that all recipes exported in Web page format will appear on a single webpage with no navigational ability other than scrolling through the page using the scrollbar.</para>
<para>While exporting in Web page format has its purpose, you will obviously note the benefits of exporting as a Web Book if you are exporting many recipes.</para>
<para>However, it should be noted that once exported in Web page format, you are unable to import these recipes back into <emphasis>&krecipes;</emphasis>.</para>
<note><para>Exporting recipes in either <emphasis>Web page</emphasis> or <emphasis>Web Book</emphasis> format will retain all visual settings &ndash; <abbrev>i.e.</abbrev> those set in <emphasis>Page Setup</emphasis>, including the graphic.</para></note>
</listitem>
<listitem><para>Meal-Master &ndash; files of this format will have extensions of .mmf and you might want to export in this format to be able to import into the Meal-Master program to share will other Meal-Master users</para>
<para>This is the most widely-used recipe format. However, you should note that if your choose to export in this format, certain <emphasis>&krecipes;</emphasis> recipe information will be lost.</para></listitem>
<listitem><para>RecipeML &ndash; files of this format will have extensions of .xml</para>
<para>This is a standard recipe XML format, although not yet widely used by most recipe software. However, you may wish to use this format to have recipes recognized by programs that use it.</para></listitem>
<listitem><para>Rezkonv &ndash; files of this format will have extensions of .rk</para>
<para>This is the format for Rezkonv Suite, a popular German recipe program. When recipes are exported in this format, the human-readable and section names (Title, Yield, etc.) will be in German.</para></listitem>
</itemizedlist>
<para>To export a single recipe to one of the above formats, first select the recipe that you wish to export. Then, select <guimenu>File</guimenu> from the <emphasis>&krecipes;</emphasis> menu bar. From the available choices, select <guimenuitem>Export ...</guimenuitem></para>
<para>A window will appear that allows you to navigate to location where you wish to save your exported recipe. The location will default to your home directory, but another existing directory can be chosen, or you can create a new directory. The name of the recipe will appear in the box labelled <emphasis><guilabel>Location:</guilabel></emphasis> and this will default to the name that was given to the recipe in the <emphasis>&krecipes;</emphasis> database. However, this name can be changed to another at your discretion.</para>
<para>The <emphasis><guilabel>Filter:</guilabel></emphasis> box is used to select the format that you wish to use for the exported recipe from the drop-down menu.</para>
<para> You will also note that at the bottom of this window, there is a tickbox that allows you to select or deselect to <emphasis><guilabel>Automatically select filename extension</guilabel></emphasis>. The extension of the chosen export format will appear beside the phrase. If you choose to keep the tickbox selected, this extension will automatically be attached to the filename of your exported recipe. </para>
<tip><para>To position the cursor for entry into the <emphasis><guilabel>Location:</guilabel></emphasis> box, the key combination <keycombo action="simul">&Alt;<keycap>L</keycap></keycombo> can be used. To position the cursor for entry into the <emphasis><guilabel>Filter:</guilabel></emphasis> box, the key combination <keycombo action="simul">&Alt;<keycap>F</keycap></keycombo> can be used.</para></tip>
<para>Once the name of the exported recipe appears in the <emphasis><guilabel>Location:</guilabel></emphasis> box and you have chosen the format you wish to use for your exported recipe, click the <guibutton>Save</guibutton> button to proceed with the export, or the <guibutton>Cancel</guibutton> button to halt the export process and return to the previous screen.</para>
<para>When the <guibutton>Save</guibutton> button is clicked, the recipe will save in the chosen format and you will be able to open it with the program that accepts that file format &ndash; for example, if you have chosen to export your recipe in <quote>Meal-Master</quote> format, you will be able to open it in any program that accepts .mmf format files. You will also notice that the export process has created a directory in which the graphics related to your exported recipe are stored.</para>
<note><para>You may also export categories of recipes or your whole database in this same manner. However, if you want to export your entire database, you must ensure that no recipe or category is selected in your recipe list.</para>
<para>Whether you are exporting a single recipe, a category of recipes or your entire database, if no recipe or category of recipes is selected, an alert box will appear containing the message <quote>No recipes are currently selected. Would you like to export all recipes in the current view?</quote> Click the <guibutton>Yes</guibutton> button (or use the <keycombo action="simul">&Alt;<keycap>Y</keycap></keycombo>) to proceed with the export of all recipes. You can also cancel the process in order to select recipes for export by clicking the <guibutton>No</guibutton> button (or use the <keycombo action="simul">&Alt;<keycap>N</keycap></keycombo> key combination).</para>
<para>If you recall, when <emphasis>&krecipes;</emphasis> starts, by default the <emphasis>Find/Edit Recipes</emphasis> component is active and if you have recipes and categories, they appear in the right pane of the window. At this point nothing is selected, so you could choose to export your entire database. However, if there is something selected and you want to export, simply click on the white area of the category/recipe list. The highlight will disappear from the choice and you can now proceed to export your entire database.</para>
</note>
</sect2>
</sect1>
<sect1 id="backup-restore-db">
<title>Backing Up and Restoring Your <emphasis>&krecipes;</emphasis> Database</title>
<para>With <emphasis>&krecipes;</emphasis> it is an easy task to Backup and Restore your database. The Backup tool is extremely important so that you never lose your recipe database in the event of a hard drive failure. It is wise to ensure that you have a backup copy of your database in a location other than your hard drive. The Backup functionality is also useful when you simply want to revert to a previous version of your recipe database.</para>
<sect2 id="backup-db">
<title>Backing Up Your <emphasis>&krecipes;</emphasis> Database</title>
<para>To backup your <emphasis>&krecipes;</emphasis> database file, select <guimenu>File</guimenu> and <guimenuitem>Backup...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu bar. However, you might want to consider creating a keyboard shortcut (see the section <link linkend="configure-shortcuts">Creating Shortcuts</link> for more information), or adding an icon to your toolbar (see the section <link linkend="configure-toolbars">Customizing the Toolbar</link> for instruction on how to do this), since this is an invaluable tool and you will find yourself utilizing it often.</para>
<para>Once you have selected the menu item, shortcut or icon to backup your database, the <emphasis><interface>Save Backup As... -&krecipes;</interface></emphasis> window will appear where you can navigate to the location where you want to store your backup file and provide a name for it. By default, this interface opens to your home directory. You can navigate to another location and then, type the name that you wish to utilize for your backup in the textbox beside the label <emphasis><guilabel>Location:</guilabel></emphasis>. To position the cursor in the <emphasis><guilabel>Location:</guilabel></emphasis> textbox, either click in the box or use the keyboard shortcut <keycombo action="simul">&Alt;<keycap>L</keycap></keycombo>. If you have previously backed up your database, you can also select it from the drop-down menu beside the <emphasis><guilabel>Location:</guilabel></emphasis> textbox.</para>
<para>The <emphasis><guilabel>Filter:</guilabel></emphasis> textbox shows the type of file that you are creating. In the situation where you are backing up your <emphasis>&krecipes;</emphasis> database file, there is only one type of file available &ndash; a &krecipes; Backup File (*.krecbk), and that shows as the default selection.</para>
<para>The final item in this window is a tick box beside the label <emphasis><guilabel>Automatically select filename extension (.krecbk)</guilabel></emphasis>. With this option active, <abbrev>i.e.</abbrev> there is an x in the tick box, you can provide a filename, but do not have to supply an extention. The extension .krecbk will be attached to your filename automatically. However, you do not have to use the extension .krecdb. Simply clear the tick box and then, when you supply the filename for your backup, include the extension that you choose. For example, you might choose to name your database backup file <emphasis>myrecipes.krback</emphasis>.</para>
<para>When you have chosen the name for your backup and the location where you want to store it, click the <guibutton>Save</guibutton> button to complete the backup process, or the <guibutton>Cancel</guibutton> button to close the interface and return to the main <emphasis>&krecipes;</emphasis> window.</para>
</sect2>
<sect2 id="restore-db">
<title>Restoring Your <emphasis>&krecipes;</emphasis> Database</title>
<para>To restore your <emphasis>&krecipes;</emphasis> database file, select <guimenu>File</guimenu> and <guimenuitem>Restore...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu bar. As previously mentioned, you might want to consider creating a keyboard shortcut (see the section <link linkend="configure-shortcuts">Creating Shortcuts</link> for more information), or adding an icon to your toolbar (see the section <link linkend="configure-toolbars">Customizing the Toolbar</link> for instruction on how to do this).</para>
<para>Once you have selected the menu item, shortcut or icon to restore your database, the <emphasis><interface>Restore Backup &ndash; &krecipes;</interface></emphasis> window will appear where you can navigate to the location where you saved your backup. Once you have located the file and selected it, its name will appear in the textbox beside the label <emphasis><guilabel>Location:</guilabel></emphasis>.</para>
<para>By default, the <emphasis><interface>Restore Backup &ndash; &krecipes;</interface></emphasis> window opens to your home directory. An alternative to navigating to the location of your backup file and selecting it would be to type its name, including the path, directly into the <emphasis><guilabel>Location:</guilabel></emphasis> textbox. To position the cursor in the <emphasis><guilabel>Location:</guilabel></emphasis> textbox, either click in the box or use the keyboard shortcut <keycombo action="simul">&Alt;<keycap>L</keycap></keycombo>. If you have previously backed up your database, you can also select it from the drop-down menu beside the <emphasis><guilabel>Location:</guilabel></emphasis> textbox.</para>
<para>As with the backup function, the textbox beside the <emphasis><guilabel>Filter:</guilabel></emphasis> label shows the type of file as <emphasis>&krecipes; Backup File (*.krecbk)</emphasis>.
</para>
<para>Once you have selected your backup file, click the <guibutton>Open</guibutton> button to initiate the restore or the <guibutton>Cancel</guibutton> button to close the window and return to the main <emphasis>&krecipes;</emphasis> interface.</para>
<para>If you chose to proceed with the restore, the <emphasis>Warning &ndash; &krecipes;</emphasis> window will appear, as shown in the following screenshot:</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the warning that appears when restoring the &krecipes; database.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="restore-msg.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Restoring You Database &ndash; Erase Warning</para></caption>
</mediaobject>
</screenshot>
</para>
<para>You can select the tick box beside the label <emphasis><guilabel>Do not ask again</guilabel></emphasis> to prevent this message from showing in the future. However, if you choose to do this, your backup file will be restored silently and you will not be able to change your mind.</para>
<para>If you choose to continue to show the warning, click the <guibutton>Continue</guibutton> button to proceed with restoring your database file, or the <guibutton>Cancel</guibutton> button to stop the restore process and return to the main <emphasis>&krecipes;</emphasis> screen.</para>
<para>If you choose to continue with the restore, a progress dialog window will appear. The number of recipes in your database determines the length of time that this window will show. Finally, a dialog box will appear containing the message <quote>Restore Successful</quote>. Click the <guibutton>OK</guibutton> button to clear the window. Your restore is now complete!</para>
</sect2>
</sect1>
<sect1 id="krecipes-components">
<title>Other Krecipes Components</title>
<sect2 id="shopping-list">
<title>The Shopping List</title>
<para>The <emphasis>Shopping List</emphasis> component appears when the <guibutton>Shopping List</guibutton> button is clicked in the left pane of the <emphasis>&krecipes;</emphasis> window.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Shopping List component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="shop-list.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Shopping List Component</para></caption>
</mediaobject>
</screenshot>
</para>
<para>When selected, the component title appears at the top in the right pane of the window.</para>
<para>Below this is a textbox to <userinput>enter the specific name of a recipe</userinput> to search for. Recipes can also be chosen by selecting them from the list. Either way, the selected recipe must by transferred to the right-hand side of the screen under the heading <emphasis><guilabel>Shopping List</guilabel></emphasis> by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="forward.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button between the two portions of the screen.</para>
<para>Once the desired recipes have been transferred to the shopping list side of the screen, click the <guibutton>OK</guibutton> button.</para>
<tip><itemizedlist><listitem><para>Recipe names can also be transferred out of the shopping list side of the screen by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="back.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button.</para></listitem>
<listitem><para>The entire list of recipes that has been selected for producing the shopping list can be cleared by clicking the <guibutton>Clear</guibutton> button.</para></listitem>
</itemizedlist>
</tip>
<para>When the <guibutton>OK</guibutton> button is clicked, a window will appear that lists all ingredients contained in the <emphasis>&krecipes;</emphasis> database on the left and the ingredients required for the selected recipe(s) on the right. Above each of these is a <emphasis><guilabel>Search:</guilabel></emphasis> textbox to <userinput>enter the name of an ingredient</userinput> to search for within each of the lists.</para>
<para>Ingredients can be transferred to and from either side by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="back.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> or <guiicon><inlinemediaobject><imageobject><imagedata fileref="forward.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button that appears between the lists, as needed.</para>
<para>In the recipe ingredient list on the right, the <quote>Amount</quote> and the <quote>Unit</quote> of each ingredient can be edited by double-clicking on the appropriate value. For example, if the recipe requires 4 eggs and a purchase of eggs is required to make the recipe, it is unlikely that you would buy 4 eggs. In this case, the eggs ingredient could be selected, the <quote>Amount</quote> changed to 1 and the <quote>Unit</quote> changed to doz. or dozen.</para>
<para>When all desired changes have been made to the ingredients for the recipe(s) selected, click the <guibutton>Done</guibutton> button and the <interface>Shopping List</interface> will display.</para>
<para>From the <interface>Shopping List</interface> window, click the <guibutton>Print</guibutton> button to print the shopping list, or click the <guibutton>Close</guibutton> button to close the window.</para>
</sect2>
<sect2 id="diet-helper">
<title>The Diet Helper</title>
<para>The purpose of the <emphasis>Diet Helper</emphasis> component is to help plan menus for days, or weeks, at a time. Because of the ability to select nutrient values in this component, you are also able to plan your meals to adhere to nutrient limits. This makes either restricting or enhancing your diet much easier and more efficient.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Diet Helper component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="diet-help.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Diet Helper Component</para></caption>
</mediaobject>
</screenshot>
</para>
<para>The <emphasis>Diet Helper</emphasis> component is accessed by clicking on the <guibutton>Diet Helper</guibutton> button in the left pane of the <emphasis>&krecipes;</emphasis> window. As with other <emphasis>&krecipes;</emphasis> components, the user interface appears in the right pane under the heading <emphasis>Diet Helper</emphasis>.</para>
<para>To start setting up your menus, the first thing your have to do is select the number of days that you are planning for and the number of meals per day.</para>
<para>In the rectangular area under the heading <emphasis><guilabel>Number of Days</guilabel></emphasis>, the number of days is set at <quote>- 1 -</quote>. To increase this value, click and hold the &LMB; and move the slider to the right. The value will increment up to <quote>- 6 -</quote> and then, change to <quote>- 1 week -</quote>. After the number of days changes to <quote>- 1 week -</quote>, increases are in increments of 1 week to a maximum of 4 weeks.</para>
<para>Similarly, in the rectangular area under the heading <emphasis><guilabel>Meals per Day</guilabel></emphasis>, the number of meals displays as <quote>- 1 -</quote>. This value is incremented by clicking and holding the &LMB; and moving the slider to the right until the desired number of meals is displayed, up to a maximum of 10. When the slider is adjusted, a tab will appear for each of the meals.</para>
<para>The next step is to specify the number of dishes per meal. This is done by using the spinbox beside the <emphasis><guilabel>No. of dishes:</guilabel></emphasis> label to adjust the number.</para>
<para>Beside the <emphasis><guilabel>No. of dishes:</guilabel></emphasis> are the <guibutton>Previous Dish</guibutton> and <guibutton>Next Dish</guibutton> buttons that are used to navigate back and forth between dishes as you specify the type of recipe for each. As you utilize these buttons to move back and forth between dishes, you will note that in the <emphasis>Dish Characteristics</emphasis> area of the screen, the dish label changes as follows &mdash;</para>
<itemizedlist><listitem><para><emphasis><guilabel>1st Course</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>2nd Course</guilabel></emphasis></para></listitem>
<listitem><para><emphasis><guilabel>Dessert</guilabel></emphasis></para></listitem>
</itemizedlist>
<para>And for subsequent meals &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Dish 4</guilabel></emphasis>, <emphasis><guilabel>Dish 5</guilabel></emphasis>, etc.</para></listitem>
</itemizedlist>
<sect3 id="menu-plan-only">
<title>Planning Menus</title>
<para>In the <emphasis>Dish Characteristics</emphasis> area of the screen and beside the dish label, there is a tick box to <emphasis><guilabel>Enable Category Filtering</guilabel></emphasis>. Clicking this box <action>enables the feature</action>. It is important that you choose to do this because you may otherwise end up having <emphasis>Cheesecake</emphasis>, or some other unreasonable dish for breakfast!</para>
<para>With <quote>category filtering</quote> turned on, you can select the category to be used for the dish as specified by the dish label located beside the category selection box. For instance, the dish label might show <emphasis><guilabel>1st Course</guilabel></emphasis>. If you are selecting courses for your dinner meal, you might then select the category <emphasis>Salads</emphasis> from the category list. A scrollbar exists to the right that allows moving up and down within the list.</para>
<para>Continuing with the example of selecting dishes for your dinner meal, you would then click the <guibutton>Next Dish</guibutton> button. When you do this, you will note that the dish label changes to <emphasis><guilabel>2nd Course</guilabel></emphasis> and that again, you must turn <emphasis>category filtering</emphasis> on. Now, you can proceed with the selection of the category for your next dish, for example, <emphasis>Pasta</emphasis>.</para>
<para>Continue selecting the types of dishes for your meals in this same manner. When you have completed selecting the types of dishes, at this point, you can click the <guibutton>Create the diet</guibutton> button.</para>
<note><para>At this point, you are planning a menu only and not taking any dietary and nutrient constraints into consideration. To plan menus and consider nutrient consumption, see the section <link linkend="plan-menu-diet">Planning Diet-Conscious Menus</link>.</para></note>
<para>When you click the <guibutton>Create the diet</guibutton> button, the <interface>Diet</interface> window appears which displays your menus for the number of days that you have selected. In this window, you can click the <guibutton>Create Shopping List</guibutton> button to create the shopping list for your menus. You can also choose to <action>print the menu</action> by clicking the <guibutton>Print</guibutton> button. Clicking the <guibutton>Cancel</guibutton> button closes the <interface>Diet</interface> window and returns you to the previous screen.</para>
</sect3>
<sect3 id="plan-menu-diet">
<title>Planning Diet-Conscious Menus</title>
<para>All the steps listed in the section <link linkend="menu-plan-only">Planning Menus</link> also apply here. This section will discuss the incorporation of nutrient values into your menus.</para>
<para>Before you can include nutrients in your menu plan, you must ensure the following &mdash;</para>
<orderedlist><listitem><para>Nutrients or <emphasis>properties</emphasis> must be loaded for the ingredients. See the section <link linkend="ingredient-properties">Properties in Ingredients</link> for further instructions. If an ingredient does not contain nutrient values, it will be ignored.</para></listitem>
<listitem><para>Units of measure must be associated with the ingredients. Since most nutrients are measured in <emphasis>g/g</emphasis> or <emphasis>mg/g</emphasis>, ensure that <emphasis>g</emphasis> is one of the units associated with each ingredient. See the section <link linkend="ingredient-units">Units in Ingredients</link> for additional information.</para></listitem>
<listitem><para>The equivalencies between the units of measure must be completed in the <emphasis>Units</emphasis> component within the <emphasis><guilabel>Mass Conversions</guilabel></emphasis> and <emphasis><guilabel>Volume Conversions</guilabel></emphasis> tabs. See the section <link linkend="set-equivalents">Completing Your Conversion Tables</link> for instructions.</para></listitem>
</orderedlist>
<para>Once you have ensured that all necessary details have been provided for your ingredients, you are ready to consider nutrients in your menu plan. Of course, attending to these details should be done prior to the start of creating your menu/diet, since the consideration of nutrient values is a continuation of planning a basic menu.</para>
<para>In the portion of the screen that lists the nutrients, under the heading <emphasis><guilabel>Enabled</guilabel></emphasis>, select the nutrient that you want to consider by clicking on the tick box that appears to the left of the nutrient name. Note that you do not have to select <emphasis>every</emphasis> ingredient, only those that you wish to take into consideration. A scrollbar exists to the right that allows moving up and down within the list.</para>
<para>To the right of the nutrient name, columns labeled <emphasis><guilabel>Min. Value</guilabel></emphasis> and <emphasis><guilabel>Max. Value</guilabel></emphasis> exist. These are used to set the minimum and maximum values of nutrients so that when the search for appropriate recipes is done, only recipes that have a particular nutrient falling into the specified range will be considered for your menu/diet.</para>
<para>To set the ranges for a nutrient that you want to take into consideration, select it (it will be highlighted). Under the headings for <emphasis><guilabel>Min. Value</guilabel></emphasis> and <emphasis><guilabel>Max. Value</guilabel></emphasis>, the <quote>0</quote> that was under each heading prior to selecting the nutrient will change to <quote>0.00</quote>. A spinbox will show beside each of these values that you can utilize to set the value that you want. Alternatively, you can click on the value, position the cursor to where you want to type using the directional arrows and type a value, or you can double-click on the value to highlight it and type over the entire value that exists. These steps must be completed in each course category for each nutrient that you want to consider.</para>
<para>It should be noted that you may omit providing a minimum value for a nutrient, in which case the minimum value would remain as <quote>0</quote>. However, if you provide a minimum value, you must provide a maximum because, obviously, a maximum cannot be less than a minimum.</para>
<note><para>At any point in the process of planning a menu/diet, you can click the <guibutton>Clear</guibutton> button to clear all entries and begin again.</para></note>
<para>Once you have completed entering all the nutrient information, click the <guibutton>Create the diet</guibutton> button to create your menu/diet.</para>
<para>When you click the <guibutton>Create the diet</guibutton> button, the <interface>Diet</interface> window appears which displays your menus for the number of days that you have selected. In this window, you can click the <guibutton>Create Shopping List</guibutton> button to create the shopping list for your menus. You can also choose to <action>print the menu</action> by clicking the <guibutton>Print</guibutton> button. Clicking the <guibutton>Cancel</guibutton> button closes the <interface>Diet</interface> window and returns you to the previous screen.</para>
</sect3>
</sect2>
<sect2 id="ingredient-matcher">
<title>The Ingredient Matcher</title>
<para>The purpose of the <emphasis>Ingredient Matcher</emphasis> component is to find recipes that you are able to make (or almost make) with ingredients that you have on hand. To access the <emphasis>Ingredient Matcher</emphasis> component, click on the <guibutton>Ingredient Matcher</guibutton> button that is visible in the left frame of the <emphasis>&krecipes;</emphasis> window.</para>
<para>Once the component starts, typical of all <emphasis>&krecipes;</emphasis> components, the name will appear at the top of the window in the right frame. Beneath this, beside the <emphasis><guilabel>Search:</guilabel></emphasis> label, there is a textbox to <userinput> enter the recipe ingredient</userinput> that you want to search for.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Ingredient Matcher component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="ingredient-match.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Ingredient Matcher Component</para></caption>
</mediaobject>
</screenshot>
</para>
<para>Below the <emphasis><guilabel>Search:</guilabel></emphasis> box, under the heading <emphasis><guilabel>Ingredient</guilabel></emphasis> there is a list of all the ingredients that are in the <emphasis>&krecipes;</emphasis> database, both ones provided by default and those that you have entered by either adding them in the <emphasis>Ingredients</emphasis> component or by entering them in a recipe, which automatically adds the ingredient to the database. Elsewhere in this document, further information is provided on the use of the <link linkend="ingredients-component">Ingredients Component</link>.</para>
<para>The first step to finding a recipe for which you have the ingredients on hand is to search for one or more ingredients. This can be done by entering an ingredient name in the <guilabel>Search:</guilabel> box above the ingredient list or, by just scrolling through the list using the scrollbar that is on the right of it and selecting ingredients.</para>
<para>It is likely that the ingredients that you want to select will <emphasis>not</emphasis> be adjacent to each other, but this is not a problem. Simply click on the first ingredient that you want to use and then, hold down the <keycap>Ctrl</keycap> key and click on the next ingredient. This will work even if you are using the <guilabel>Search:</guilabel> box to look for ingredients. Just remember that after finding and selecting the first ingredient and then, using the search box to locate the next (and any subsequent) ingredient, you must hold down the <keycap>Ctrl</keycap> key before clicking on the ingredient name. <emphasis>&krecipes;</emphasis> dictates that at least one of the selected ingredients be in each of the recipes listed in the search results.</para>
<para>The next step, is to transfer the selected ingredients to the list box that appears to the right of your ingredient list. This is done by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="forward.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> that appears between the two lists. Ingredients can be transferred one at a time, or in multiples as previously described. Your ingredients will be listed under the heading <guilabel>Ingredient (required?)</guilabel>. If you would like to search for recipes that contain a specific ingredient, you can select the checkbox beside the ingredient name to indicate that it is a required ingredient for any recipes returned in your search. Conversely, ingredients can be transferred out of the right-hand list box by clicking on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="back.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> button.</para>
<para>Once you have transferred the ingredients to the listbox on the right, you can enter an <guilabel>Amount Available</guilabel> in the column beneath this heading. This is done by double-clicking on the space beside the ingredient for which you want to enter an available amount. The <interface>Enter amount - &krecipes;</interface> dialog box will appear in which you can <userinput>enter an amount</userinput> in the textbox below the <guilabel>Amount</guilabel> label. Next, you can select the unit of measure for the ingredient from the drop-down menu that appears beside the <guilabel>Amount</guilabel> textbox. Click the <guibutton>OK</guibutton> button to accept the amount entered, or the <guibutton>Cancel</guibutton> button to close the dialog box. Of course, you don't have to enter an amount if you know that you have enough of the ingredient for any recipe that might be returned in your search.</para>
<tip><para>If your right-hand ingredient list is fairly lengthy and you are looking for an ingredient for which you <emphasis>might</emphasis> want to enter an <guilabel>Amount Available</guilabel>, a <guilabel>Search:</guilabel> box appears above this list as well. When you enter a search term in this box, it will search only the ingredients that are in the right-hand list box.</para></tip>
<para>Before the recipes containing the selected ingredients will display, you must select the number of missing ingredients permitted in your recipes. This is accomplished by using the spinbox beside the label <emphasis><guilabel>Missing ingredients allowed:</guilabel></emphasis>. There will always be certain ingredients that you have on hand, for example, <emphasis>salt</emphasis> or <emphasis>sugar</emphasis>. One of the purposes of allowing missing ingredients is to compensate for those ingredients that are normally in your cupboard. It is for this reason that you might want to set the <emphasis><guilabel>Missing ingredients allowed:</guilabel></emphasis> to a reasonably high number. Or, if the number of missing ingredients shows as <emphasis>0</emphasis>, you can click on the textbox beside the <emphasis><guilabel>Missing ingredients allowed:</guilabel></emphasis> label to activate it and then, press the <keycap>&#8595;</keycap> directional arrow which will cause <emphasis>Any</emphasis> to appear in the textbox, indicating that any number of missing ingredients are permitted.</para>
<caution><para>Setting the missing ingredients too high will result in a longer list of recipes. Setting the missing ingredients too low will result in either no recipes being found, or cause the search to exclude recipes that you might also be able to make had you allowed for slightly more missing ingredients.</para></caution>
<para>Click the <guibutton>Find matching recipes</guibutton> button to display the search results in the area beneath the phrase <emphasis>Possible recipes with the specified ingredients</emphasis>. The recipe title will appear under the heading <emphasis><guilabel>Title</guilabel></emphasis>. The recipe id will appear under the heading <emphasis><guilabel>Id</guilabel></emphasis> and the missing ingredients will display under the heading <emphasis><guilabel>Missing ingredients</guilabel></emphasis>. The width of the columns that apply to each of these headings can be adjusted for viewing purposes. When your recipes are listed, they are grouped according to the number of missing ingredients and for each group, prior to listing the recipes, the number of missing ingredients is specified.</para>
<para>If your search does not provide recipes that are of interest, you can adjust the number of missing ingredients and click the <guibutton>Find matching recipes</guibutton> button to display new results based on the ingredients selected. Alternatively, you can press the <guibutton>Clear recipe list</guibutton> button to clear the recipe list to perform a whole new search with different ingredients.</para>
<para><emphasis>&krecipes;</emphasis> makes it easy for you to find a recipe that you can make with ingredients on hand. However, if you do have to run to the store, once you decide on the recipe that you want to make, you can use the <link linkend="shopping-list">The Shopping List</link> to make your shopping list.</para>
</sect2>
<sect2 id="data-button">
<title>The Data Button</title>
<para>
The <guibutton>Data</guibutton> button performs one simple function &ndash; when clicked, it gives access to additional components.
</para>
<tip><para>When the additional components are revealed, click the <guibutton>Up</guibutton> button to return to the previous list.
</para></tip>
</sect2>
<sect2 id="ingredients-component">
<title>The Ingredients Component</title>
<para>The <emphasis>Ingredients</emphasis> component is accessed by first, clicking on the <guibutton>Data</guibutton> button to reveal the additional <emphasis>&krecipes;</emphasis> components, and then, clicking on the <guibutton>Ingredients</guibutton> button.</para>
<para>When the <emphasis>Ingredients</emphasis> component opens, the component title will be seen at the top. Below this, there are 4 sections &mdash;</para>
<orderedlist>
<listitem><para>Below the heading <emphasis><guilabel>Ingredient list</guilabel></emphasis>, the list of ingredients contained in the <emphasis>&krecipes;</emphasis> database is shown. This list includes ingredients that have be provided as defaults in the program and also, ingredients that you have added.</para>
<para>Beside the heading is a textbox to <userinput>enter an ingredient</userinput> to search for in the ingredient list.</para>
<para>To the right of this section is a <guibutton>+</guibutton> button, for adding ingredients to the list, and a <guibutton>-</guibutton> button, for removing ingredients. See the section on <link linkend="working-ingredients">Working with Ingredients</link> for more details.</para>
</listitem>
<listitem><para>On the right-hand side of the window under the heading <emphasis><guilabel>Unit list</guilabel></emphasis>, the section for listing the ingredient units of measure is displayed. These include default units of measure that have been provided with the program, as well as ones you have added.</para>
<para>Again, a <guibutton>+</guibutton> button, for adding units of measure to the list, and a <guibutton>-</guibutton> button, for removing units, appears to the right of this section. See the section on <link linkend="ingredient-units">Units in Ingredients</link> for more details.</para>
</listitem>
<listitem><para>Below the <quote>Units list</quote> is the <emphasis><guilabel>Ingredient Properties</guilabel></emphasis> list. This list contains the nutrient values of each ingredient.</para>
<para>In this list, the name of the nutrient is shown under the heading <emphasis><guilabel>Property</guilabel></emphasis>, the amount of the nutrient present in the ingredient is shown under the heading <emphasis><guilabel>Amount</guilabel></emphasis> and the measurement value for the nutrient is shown under the heading <emphasis><guilabel>Units</guilabel></emphasis>. For example, if the ingredient <emphasis>orange juice</emphasis> has been selected, one of the nutrients displayed will be <emphasis>Vitamin C</emphasis>. Under the <emphasis><guilabel>Units</guilabel></emphasis> heading, <emphasis>mg/g</emphasis> will display, which means that there are the number of milligrams shown under the amount (in this case, 0.5) per gram of the ingredient.</para>
<para>Again, a <guibutton>+</guibutton> button, for adding ingredient properties to the list, and a <guibutton>-</guibutton>, button for removing properties, appears to the right of the section to allow addition and removal of nutrient values for an ingredient. See the section on <link linkend="ingredient-properties">Properties in Ingredients</link> for more details.</para>
</listitem>
<listitem><para>Below the <quote>Properties list</quote> is the <guilabel>Ingredient Weights</guilabel> list. This list, in combination with your unit conversions, is what helps provide accurate nutrient information for your recipes. See the section, <link linkend="set-equivalents">Completing Your Conversion Tables</link> for help with doing your unit conversions.</para>
<para>In this section, under the heading <guilabel>Weight</guilabel>, the weight of the ingredient is shown. Under the heading <guilabel>Per Amount</guilabel>, the unit to which the weight applies is shown. Using the orange juice example, the ingredient weight table shows that the weight of orange juice is 248 grams per cup of orange juice, or 31 grams per fluid ounce of orange juice.</para>
<para>As with the other sections that are a part of the ingredients component, to the right of the <guilabel>Ingredient Weights</guilabel> list, a <guibutton>+</guibutton> button is available for adding ingredient weights and a <guibutton>-</guibutton> button is available for removing ingredient weights. See the section <link linkend="ingredient-weights">Working with Ingredient Weights</link> for more information.</para>
</listitem>
</orderedlist>
<note><para>For those ingredients provided by default in the program, the USDA data has been loaded and this is what provides the nutrient values (or <quote>Properties</quote>) for each ingredient. The associated weights have also been loaded. However, if you have added an ingredient to the list, in order to display the nutrient value and the weight information for the ingredient, the USDA data must be loaded by clicking on the <guibutton>Load USDA data</guibutton> button that appears below the <emphasis>Ingredient Weights</emphasis> list.</para></note>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes;Ingredients component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="ingredients.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Ingredients Component</para></caption>
</mediaobject>
</screenshot>
</para>
<sect3 id="headers-tab">
<title>Ingredient Headers</title>
<para>When the <emphasis>Ingredients</emphasis> component is accessed, you will also notice a <guilabel>Headers</guilabel> tab. If this tab is accessed, the headers that apply to your recipes may be added, removed or renamed.</para>
<para>Similar to other <emphasis>&krecipes;</emphasis> components, there is a textbox beside a <guilabel>Search:</guilabel> label where you can enter the name of the header for which you want to search, should your list be long enough that this would be the best method to access a particular header.</para>
<para>On the right side of the <emphasis>Headers</emphasis> window, there is a <guibutton>+</guibutton> button, which when clicked, will bring up a dialog box which will permit the entry of a new header. To add the header, simply type in the name that you desire in the textbox that appears beneath the <guilabel>Header</guilabel> label. Click the <guibutton>OK</guibutton> button to proceed with the addition or, the <guibutton>Cancel</guibutton> button to clear the dialog box and return to the main header interface.</para>
<para>To remove a header, select it in the header list and click the <guibutton>-</guibutton> button. If this header is utilized in any of your recipes, a dialog box will appear stating <quote>Warning: The following will have to be removed also, since currently they use the element you have chosen to be removed.</quote>. To remove the header, click the <guibutton>OK</guibutton> button. The header will be removed from the list. Note, however, that in your recipe(s) that contain the particular header that you have chosen to remove, only the header will be absent. The ingredients that were part of the removed header will still be intact. To cancel the removal of the header, click the <guibutton>Cancel</guibutton> button. The dialog box will disappear and you will be returned to your header list. Of course, if the header does not exist in any of your recipes, it will be removed with no prompt.</para>
<para>To rename a header, simply select the header that you want to edit. With the header selected, right clicking will result in the appearance of a menu from which you can select <emphasis>Rename</emphasis>. A box will outline the selected header and a cursor will appear at the beginning of the header name. Using the arrow keys, position the cursor at the point where you wish to make your edit, or if you wish to completely rename the header, simply type the new name. Pressing the <keycap>Enter</keycap> key will complete the renaming process.</para>
<para>When a header is selected and the menu is access by right-clicking, in addition to a menu item for <guimenuitem>Rename</guimenuitem>, there are menu items for <guimenuitem>Create</guimenuitem> and <guimenuitem>Delete</guimenuitem>. This alternative method can be used to add and remove headers and will react in the same manner as outlined above. Additionally, each of the menu items has a key or key combination that can be used to carry out the desired action while in the <guilabel>Headers</guilabel> tab. These are: &mdash;</para>
<itemizedlist>
<listitem><para><keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo> to create a header</para></listitem>
<listitem><para><keycap>Del</keycap> to delete a header</para></listitem>
<listitem><para><keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo> to rename a header</para></listitem>
</itemizedlist>
</sect3>
<sect3 id="working-ingredients">
<title>Working with Ingredients</title>
<para>Ingredients may be added, removed or edited in the <emphasis>&krecipes;</emphasis> <emphasis>Ingredients</emphasis> component.</para>
<sect4 id="adding-ingredients">
<title>Adding:</title>
<para>To add an ingredient to the list, click on the <guibutton>+</guibutton> button that appears beside the ingredient list. A window will be presented where <userinput>the name of the new ingredient</userinput> can be typed in the textbox beneath the heading <emphasis><guilabel>New Ingredient</guilabel></emphasis>. Once the name has been added, click the <guibutton>OK</guibutton> button to complete the addition and close the window. The ingredient will now appear in the ingredient list. If you do not wish to add the ingredient to the list, click the <guibutton>Cancel</guibutton> button to close the window and return to the previous screen.</para>
</sect4>
<sect4 id="remove-ingredients">
<title>Removing:</title>
<para>To remove an ingredient from the list, click on the <guibutton>-</guibutton> button that appears beside the ingredient list. The ingredient will be removed <emphasis>provided there are no recipes using that ingredient</emphasis>.</para>
<para>If recipes exist that use the ingredient, a window will display with the prompt <emphasis>The following elements will have to be removed also, since currently they use the element you have chosen to be removed.</emphasis> Below the prompt, under the heading <emphasis><guilabel>Recipes</guilabel></emphasis>, a list of recipes that use that ingredient will display. Click the <guibutton>OK</guibutton> button to proceed with the removal of the ingredient AND recipe(s), or the <guibutton>Cancel</guibutton> to close the window and return to the previous screen.</para>
</sect4>
<sect4 id="edit-ingredients">
<title>Editing:</title>
<para>An ingredient may be edited by selecting the ingredient in the list and double-clicking on it. The ingredient will remain highlighted, but if either the <keycap>&#8592;</keycap> or <keycap>&#8594;</keycap> directional arrows is pressed, the cursor can be positioned to the point you wish to edit. If you wish to rename the entire ingredient, for example from <quote>butter</quote> to <quote>BUTTER</quote>, simply begin typing with the ingredient highlighted.</para>
<para>If you choose to rename an ingredient and another ingredient exists with the name chosen, an alert box will appear with the prompt <emphasis>This ingredient already exists. Continuing will merge these two ingredients into one. Are you sure?</emphasis> Click the <guibutton>Continue</guibutton> button to proceed with renaming the ingredient, or the <guibutton>Cancel</guibutton> button to abort.</para>
<tip><para>If you have two ingredients, one named <quote>cinnamon</quote> and the other named <quote>Cinnamon</quote> and you would like all recipes to show the ingredient as <quote>Cinnamon</quote>, first check which of the ingredients lists the properties &ndash; <abbrev>i.e.</abbrev> the nutrient values. If the nutrient values show for the ingredient <quote>cinnamon</quote>, renaming <quote>cinnamon</quote> to <quote>Cinnamon</quote> will result in a loss of the properties for that ingredient and they will have to be reloaded.</para>
<para>However, if you rename <quote>Cinnamon</quote> to <quote>cinnamon</quote> and then after the two ingredients have been merged, the single ingredient <quote>cinnamon</quote> to <quote>Cinnamon</quote>, your nutrient values will be retained.</para></tip>
</sect4>
<sect4 id="alternative-method">
<title>Alternatively:</title>
<para>An alternative method to either add, remove, or edit an ingredient is to first, select the ingredient and then, right-click to display a menu from which you can select <guimenuitem>Create</guimenuitem>, <guimenuitem>Delete</guimenuitem>, or <guimenuitem>Rename</guimenuitem>. Each choice performs as explained in the previous sections.</para>
<para>For quick functionality, the <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo> key combination can be used to <emphasis>Create</emphasis> a new ingredient. To <emphasis>Delete</emphasis> an ingredient, press the <keycap>Del</keycap> key on the keyboard &ndash; a prompt will be received if the ingredient is used by a recipe. The key combination <keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo> can be used to <emphasis>Rename</emphasis> an ingredient.</para>
</sect4>
</sect3>
<sect3 id="ingredient-units">
<title>Units in Ingredients</title>
<para>This section describes how to work with the units of measure, or <emphasis>Units</emphasis>, that apply to specific ingredients in the <emphasis>&krecipes;</emphasis> <emphasis>Ingredients</emphasis> component. For details on working with ingredients globally, see the section <link linkend="units-component">The Units Component</link>.</para>
<para>Within the <emphasis>Ingredients</emphasis> component, select an ingredient. In the <interface>Unit list</interface> portion of the screen, the units of measure that are associated with that ingredient will display.</para>
<para>Units can be added by clicking on the <guibutton>+</guibutton> button that appears to the right of the <emphasis>Unit list</emphasis>.</para>
<para>For example, one of the pre-loaded ingredients in the ingredients list is <quote>apple juice</quote>. By default, the units associated with this ingredient are <quote>gram</quote> and <quote>milligram</quote>. If apple juice is a required ingredient in a recipe, it is more likely that it will be measured by cup, or portion thereof. Therefore, it may be desired that <quote>cup</quote> be added to the <emphasis>Unit list</emphasis>. To do this, click on the <guibutton>+</guibutton> button that is beside the <emphasis>Unit list</emphasis>. The <interface>Choose Unit</interface> window will appear, from which you can select <emphasis>cup</emphasis>, for example, from the list. Then, click the <guibutton>OK</guibutton> button to add the unit, or the <guibutton>Cancel</guibutton> button to close the window and return to the previous screen.</para>
<para>Units can be removed by clicking on the <guibutton>-</guibutton> button that appears to the right of the <emphasis>Unit list</emphasis>. In a manner similar to that described in the <emphasis>Working with Ingredients</emphasis> section under the heading <link linkend="remove-ingredients">Removing:</link>, if an attempt is made to remove a unit that is associated with an ingredient used by a recipe in the database, a prompt will be displayed that permits confirmation of removal of the unit AND the recipe that is associated with the ingredient unit, or that will allow the cancellation of the action.</para>
</sect3>
<sect3 id="ingredient-properties">
<title>Properties in Ingredients</title>
<para>As previously stated, for those ingredients that are provided by default in the <emphasis>&krecipes;</emphasis> program, the <emphasis>Properties</emphasis> or nutrient values have been pre-loaded with the USDA values.</para>
<para>However, if a property has been added in the <emphasis>Properties</emphasis> component, a second step must be completed in the <emphasis>Ingredients</emphasis> component to add the <emphasis>Property</emphasis> and its associated value to the list.</para>
<sect4 id="add-ingredient-properties">
<title>Adding Ingredient Properties</title>
<para>The first step to adding a new property for an ingredient is to ensure that the appropriate unit is listed in the <emphasis>Unit list</emphasis> in the top right-hand corner of the <emphasis>Ingredients</emphasis> component. If the unit is not listed &ndash; <abbrev>i.e.</abbrev> the unit specified when the property was added, for instance <quote>gram</quote>, it must be added in the manner described in the section <link linkend="ingredient-units">Units in Ingredients</link>.</para>
<para>Assuming that the appropriate unit is listed in the <emphasis>Unit list</emphasis>, to add the new property to the <emphasis>Ingredient Properties</emphasis> list, select an ingredient in the <emphasis>Ingredient</emphasis> list then, click the <guibutton>+</guibutton> button that appears to the right of the properties list.</para>
<para>The <quote>Choose Property</quote> box will appear, from which you can select the property to be added for the ingredient. A drop-down menu shows below the property list, from which the unit associated with the property must be selected. Click the <guibutton>OK</guibutton> button to proceed, or the <guibutton>Cancel</guibutton> button to cancel the addition of the property and close the window.</para>
<para>If you choose to proceed with the addition, the property will be added to the <emphasis>Ingredient Properties</emphasis> list. However, you will note that it has a <quote>0</quote> value. This value must by supplied by you. To add the value, click on the property and increment the value using the spin-box that appears, or manually type the value. Once the value is entered, click the <guibutton>OK</guibutton> button that appears beside the spin-box.</para>
<note><para>If the USDA data does not show for the ingredient for which the new property has been added, it can be loaded either before adding the new property or after. If the USDA data is added after adding the new property, the new property will still show in the list.</para>
<para>The new property must be added to <emphasis>EACH</emphasis> ingredient separately.</para></note>
</sect4>
<sect4 id="remove-ingredient-properties">
<title>Removing Ingredient Properties</title>
<para>To remove a property from the <emphasis>Ingredient Properties</emphasis> list, simply select the property to be removed and click the <guibutton>-</guibutton> that appears to the right of the list. The property will be removed without a prompt. However, this will remove the property within the <emphasis>Ingredients</emphasis> component <emphasis>ONLY</emphasis>. The property will be retained in the list in the <emphasis>Properties</emphasis> component.</para>
</sect4>
</sect3>
<sect3 id="ingredient-weights">
<title>Working with Ingredient Weights</title>
<para>As with the <guilabel>Ingredient Properties</guilabel>, for those ingredients that were provided by default with the <emphasis>&krecipes;</emphasis> program, the <guilabel>Ingredient Weights</guilabel> will have been loaded. However, if the ingredient weights have not been loaded <emphasis>or, you wish to add an additional weight</emphasis> to one of your ingredients, you can do so.</para>
<sect4 id="add-weight">
<title>Adding Weights to your Ingredients</title>
<para>To add a weight for your ingredient, you must first select it. Then, click the <guibutton>+</guibutton> button that appears beside the <guilabel>Ingredient Weight</guilabel> list. A dialog box will appear in which you can enter the parameters for the <guilabel>New Ingredient Weight</guilabel>.</para>
<para>First, in the textbox beside the label <guilabel>Weight:</guilabel>, you can enter the weight that you want for the ingredient. Remember the table for apples in the <link linkend="property-status">Looking After Nutrients</link> section? By utilizing this table, it was calculated that 1 medium apple weighed 151.3 grams. Following through with this example, 151.3 is the value that would be entered in the <guilabel>Weight:</guilabel> textbox.</para>
<para>Next, the weight measure must be selected from the drop-down menu. So, using the apple example, we would select <emphasis>gram</emphasis> from this list. Since properties, or nutrient values, are usually specified as a <quote>per gram</quote> value, it is a good idea to set your weight measure to grams.</para>
<para>In the textbox beside the <guilabel>Per Amount:</guilabel> label, you would enter whatever amount the weight applies to. In the apple example, we would enter 1. Then, from the drop-down menu beside this textbox, the unit of measure would be selected, in this case <emphasis>medium</emphasis>.</para>
<tip><para>To quickly find the unit of measure, or any value from a drop-down list, press the key on the keyboard that corresponds to the first letter of the item being selected. For <emphasis>medium</emphasis>, press the <keycap>M</keycap> key as many times as required until <emphasis>medium</emphasis> is selected. Repeated pressing of the <keycap>M</keycap> key will cycle through all choices that begin with the letter m.</para></tip>
<para>Finally, from the drop-down menu that by default shows <guilabel>-No Preparation-</guilabel>, any preparation method associated with the ingredient would be selected. In our example, there is no preparation method, since we are dealing with whole apples.</para>
<para>Now, click the <guibutton>OK</guibutton> button to complete the entry of your ingredient weight, or the <guibutton>Cancel</guibutton> button to abort the addition and close the dialog box.</para>
</sect4>
<sect4 id="remove-weight">
<title>Removing Ingredient Weights</title>
<para>Conceivably, there should be no reason why you would want to remove an ingredient weight. If any change is necessary, all parts of the weight can be edited. See the section <link linkend="edit-weight">Editing Ingredient Weights</link> for assistance with this function.</para>
<para>However, if you do wish to remove a weight, it is possible to do it. With the appropriate ingredient selected, click on the weight that you wish to remove. Then, click the <guibutton>-</guibutton> button that appears to the right of your <guilabel>Ingredient Weights</guilabel> list. An alert will appear stating <emphasis>Recipes may require this
information for nutrient analysis. Are you sure you want to delete this entry?</emphasis> Click the <guibutton>Continue</guibutton> button to continue with the deletion of the ingredient weight, or the <guibutton>Cancel</guibutton> button to discontinue the deletion and close the alert window. </para>
<para>You will also notice a tick box beside the label <guilabel>Do not ask again</guilabel>.</para>
<caution><para>If you click on the tickbox, this will prevent the alert from appearing when you attempt to remove an ingredient weight. The ingredient weight will be removed silently and as stated in the alert, this may affect nutrient analysis of your recipe(s). Note the status indicator (the <emphasis>LED</emphasis>) on your recipes. If it has changed in any of them, it could be due to the removal of an ingredient weight.</para></caution>
</sect4>
<sect4 id="edit-weight">
<title>Editing Ingredient Weights</title>
<para>Any portion of the ingredient weight that is listed in the <guilabel>Ingredient Weights</guilabel> list can be edited by double-clicking the part that you want to edit as follows: &mdash;</para>
<itemizedlist>
<listitem><para>If you double-click the portion under the <guilabel>Weight</guilabel> heading, a dialog box will appear. Under the heading <guilabel>Weight</guilabel>, the existing weight will show in the textbox, but you can delete this and enter a new value. Beside the <guilabel>Weight</guilabel> textbox, the drop-down menu for the weight measure displays the current setting. However, this can be changed by selecting another from the menu. Finally, click the <guibutton>OK</guibutton> button to complete the change, or the <guibutton>Cancel</guibutton> button to close the dialog box without changing.</para></listitem>
<listitem><para>If you double-click the portion under the <guilabel>Per Amount</guilabel> heading, again, a dialog box will appear. Under the heading <guilabel>Amount</guilabel>, the existing amount will show in the textbox, but you can delete this and enter a new value. Beside the <guilabel>Amount</guilabel> textbox, the drop-down menu for selecting the unit that the amount applies to displays the current setting. However, this can be changed by selecting another from the menu. Next to the drop-down menu for specifying the unit, another drop-down menu displays from which you can select a preparation method. Again, this will display the current setting, if a preparation method has been used for the ingredient weight. Finally, click the <guibutton>OK</guibutton> button to complete the change, or the <guibutton>Cancel</guibutton> button to close the dialog box without changing.</para></listitem>
</itemizedlist>
</sect4>
</sect3>
</sect2>
<sect2 id="properties-component">
<title>The Properties Component</title>
<para>The <emphasis>Properties</emphasis> component is where nutrients are globally added and removed. To access this component, first click on the <guibutton>Data</guibutton> button in the left pane of the <emphasis>&krecipes;</emphasis> window and then, click on the <guibutton>Properties</guibutton> button.</para>
<para>As with other <emphasis>&krecipes;</emphasis> components, the name of the component appears in the right pane of the window at the top. Below this, beneath the heading <emphasis><guilabel>Property</guilabel></emphasis>, the list of nutrients is displayed. Beneath the heading <emphasis><guilabel>Units</guilabel></emphasis>, the units associated with the properties are shown.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Properties component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="properties.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Properties Component</para></caption>
</mediaobject>
</screenshot>
</para>
<para>For example, one of the nutrients under the <emphasis><guilabel>Property</guilabel></emphasis> heading is <quote>iron</quote>. If a recipe ingredient contains this nutrient, the amount of iron contained in the ingredient will show as a number of <emphasis>milligrams</emphasis> or <quote>mg</quote>.</para>
<sect3 id="add-properties">
<title>Adding Properties</title>
<para>A number of nutrients have been provided by default in the <emphasis>&krecipes;</emphasis> program. By default, all available nutrients are selected to be displayed in your recipes, if you choose to do so. However, you will notice in the screenshot that you can select exactly which nutrients that you want to display. This is a great way to watch your diet for specific nutrient intake.</para>
<para>Although the nutrient list provided by default is quite extensive, if there is a nutrient missing, it is possible to add it to the list. To add a missing nutrient, click the <guibutton>Create...</guibutton> button that appears near the top in the right-hand side of the <emphasis>&krecipes;</emphasis> window. The <interface>New Property</interface> window will appear. In this window, the <userinput>name of the nutrient</userinput> can be entered in the textbox beside the <emphasis><guilabel>Property name:</guilabel></emphasis> label, and the associated <userinput>unit of measure</userinput> is entered in the textbox beside the <emphasis><guilabel>Units:</guilabel></emphasis> label. Click the <guibutton>OK</guibutton> button to proceed with the addition, or the <guibutton>Cancel</guibutton> button to close the window and return to the previous screen.</para>
<warning><para>Adding a nutrient, or <emphasis>Property</emphasis>, is a two-step procedure. First, the nutrient and associated unit is added in the <emphasis>Properties</emphasis> component as described above. However, the actual nutrient value &ndash; <abbrev>i.e.</abbrev> the number of mg of iron, for example, contained in a particular ingredient must be added within the <emphasis>Ingredients</emphasis> component. This must be done for <emphasis>EACH</emphasis> ingredient. Refer to the section <link linkend="ingredient-properties">Properties in Ingredients</link> for more information.</para></warning>
</sect3>
<sect3 id="delete-properties">
<title>Deleting Properties</title>
<para>To remove a nutrient from the list, click the <guibutton>Delete</guibutton> button that appears below the <guibutton>Create...</guibutton> button that was used to create a new nutrient.</para>
<para>An <quote>alert</quote> box will appear asking <emphasis>Are you sure you want to delete this property?</emphasis> Click the <guibutton>Continue</guibutton> button to proceed with the removal of the nutrient, or the <guibutton>Cancel</guibutton> button to cancel the action and close the alert.</para>
<sect4 id="another-method">
<title>Another method:</title>
<para>An alternative method to either add, remove, or edit a nutrient is to first, select a nutrient and then, right-click to display a menu from which you can select <guimenuitem>Create</guimenuitem>, <guimenuitem>Delete</guimenuitem>, or <guimenuitem>Rename</guimenuitem>.</para>
<para>For quick functionality, the <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo> key combination can be used to <emphasis>Create</emphasis> a new nutrient. To <emphasis>Delete</emphasis> a nutrient, press the <keycap>Del</keycap> key on the keyboard &ndash; a prompt will appear asking <emphasis>Are you sure you want to delete this property?</emphasis> and can be acted on in the same manner as previously explained. The key combination <keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo> can be used to <emphasis>Rename</emphasis> an nutrient.</para>
</sect4>
</sect3>
</sect2>
<sect2 id="units-component">
<title>The Units Component</title>
<para>In the <emphasis>Units</emphasis> component, not only can units of measure that are to be used in the <emphasis>&krecipes;</emphasis> program be added and removed, but conversions between the various measures can be set up!</para>
<para>The <emphasis>Units</emphasis> component is accessed by first, clicking on the <guibutton>Data</guibutton> button to reveal the additional <emphasis>&krecipes;</emphasis> components, and then, clicking on the <guibutton>Units</guibutton> button.</para>
<para>Like other <emphasis>&krecipes;</emphasis> components, the <emphasis>Units</emphasis> component appears in the right-hand side of the <emphasis>&krecipes;</emphasis> window with the name of the component appearing at the top. Three tabs exist &ndash; one for listing and maintaining the units of measure and two for setting up the conversion tables between the various units of measure.</para>
<para>One of the conversion tables is for <emphasis>mass</emphasis> conversions, for instance, between grams and pounds. The other table is for <emphasis>volume</emphasis> conversion, for example, between fluid ounces and cups. It is these conversion tables, along with the ingredient weights that determine the nutrient values in your recipes. See the section <link linkend="ingredient-weights">Working with Ingredient Weights</link> for help with ingredient weights. Refer to <link linkend="set-equivalents">Completing Your Conversion Tables</link> later in this section for an outline on setting your conversion factors.</para>
<para>In the <emphasis><guilabel>Units</guilabel></emphasis> tab, a list of all the units of measure will appear. This list includes the units of measure that have been provided by default and those that you have added, either by entering a new unit while entering a new recipe, or by adding the unit within the <emphasis>Units</emphasis> component.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Units tab in the &krecipes; Units component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="units.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Units Component &ndash; The Units List</para></caption>
</mediaobject>
</screenshot>
</para>
<para>You will also note that each unit allows a singular and plural form of that unit, if one exists. Additionally, abbreviations for both singular and plural forms can be set. A unit <emphasis>type</emphasis> can also be specified for each unit.</para>
<sect3 id="add-units">
<title>Adding Units of Measure</title>
<para>To add a unit of measure, click the <guibutton>Create...</guibutton> button that appears to the right of the <emphasis>Unit</emphasis> list. The <interface>New Unit</interface> dialog box will appear where the name of the new unit can be added. Beneath the heading <emphasis><guilabel>New Unit</guilabel></emphasis>, there is a textbox to <userinput>enter the singular form of the unit</userinput> and one to <userinput>enter the plural form of the unit</userinput>. To the right of each of these textboxes is another pair of textboxes in which to <userinput>enter the abbreviation</userinput> for both singular and plural forms respectively. However, since both singular and plural abbreviations are most often identical, typing the abbreviation in the singular textbox, will result in the plural abbreviation being automatically completed. On the rare occasion that the plural abbreviation is different, you can easily edit the entry.</para>
<para>Finally, the unit <emphasis>type</emphasis> is selected from the drop-down menu that appears beside the label <guilabel>Type:</guilabel>. Choices for unit type are: &mdash;</para>
<itemizedlist>
<listitem><para>Other &ndash; this is the default and hence, this is what displays on the drop-down menu</para>
<para>This type is used for any unit that cannot be designated as mass of volume.</para></listitem>
<listitem><para>Mass &ndash; for those units that have a weight associated with them, for example, gram or pound</para></listitem>
<listitem><para>Volume &ndash; for those units that are associated with a volume, for example, cup, quart, liter</para></listitem>
</itemizedlist>
<para>Once all entries have been made, click the <guibutton>OK</guibutton> button to complete the addition, or the <guibutton>Cancel</guibutton> button to cancel the addition and close the box. Below, is an example of what the <interface>New Unit</interface> dialog box will look like once completed.</para>
<para><inlinemediaobject><imageobject><imagedata fileref="addunit.png" format="PNG"/></imageobject></inlinemediaobject></para>
</sect3>
<sect3 id="remove-units">
<title> Removing Units of Measure</title>
<para>To remove a unit of measure, in the <emphasis>Unit</emphasis> list, select the unit that you wish to remove. Click the <guibutton>Delete</guibutton> button that appears to the right of the list and below the <guibutton>Create...</guibutton> button that is used to add units of measure. A slight delay will occur while the database is searched to ensure that no recipes exist that use that unit of measure and then, the unit of measure will be removed.</para>
<para>If a recipe exists that uses the unit of measure selected to be removed, a window will appear with the <quote>alert</quote> <emphasis>The following will have to be removed also, since currently they use the element you have chosen to be removed</emphasis>. Beneath the heading <emphasis><guilabel>Recipes</guilabel></emphasis>, the list of recipes utilizing that unit will appear. Beneath the heading <emphasis>Ingredient Weights</emphasis> a list of ingredients is shown that utilize the unit of measure in the <emphasis>Ingredient Weights</emphasis> section. Click the <guibutton>OK</guibutton> button to proceed with the removal of the unit of measure AND <emphasis>any or all</emphasis> recipes/ingredients using that unit. Click the <guibutton>Cancel</guibutton> button to cancel the action and close the window.</para>
</sect3>
<sect3 id="set-equivalents">
<title>Completing Your Conversion Tables</title>
<para>Conversions between units are entered in the <emphasis><guilabel>Mass Conversions</guilabel></emphasis> tab for those units associated with a weight. For those units associated with a volume, the conversions are set in <emphasis><guilabel>Volume Conversions</guilabel></emphasis> tab. Both of these tables are set up in a <quote>spreadsheet</quote> style format. Down the side of the table, you will note that each <quote>row</quote> is labelled with a unit name. Similarly, along the top, each <quote>column</quote> is also labelled with a unit name. The<quote>cells</quote> in the body of the table are used to set the equivalencies. 1 to 1 equivalencies are provided by default.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Mass Conversions tab in the &krecipes; Units component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="mass-convert.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Units Component &ndash; Mass Unit Conversions</para></caption>
</mediaobject>
</screenshot>
</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Volume Conversions tab in the &krecipes; Units component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="volume-convert.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Units Component &ndash; Volume Unit Conversions</para></caption>
</mediaobject>
</screenshot>
</para>
<para>Both of these conversion tables are completed in the same manner. Using the <emphasis>Volume Conversion</emphasis>, table as an example, down the left side of the spreadsheet, suppose there is a unit of measure labelled <emphasis>cup</emphasis> . Using the <quote>horizontal scroll bar</quote> at the bottom of the window, if necessary, find the column that has the label <emphasis>fluid ounces</emphasis> at the top. Click on the cell that is beside <emphasis>cup</emphasis> and below <emphasis>fluid ounces</emphasis>. You can now enter 8, which is the equivalent in fluid ounces of 1 cup, in the cell. You can also use the directional arrows to navigate to the correct position for entering the equivalent if another cell is already active.</para>
<para>For large number equivalents, <emphasis>&krecipes;</emphasis> will automatically format the number with a <emphasis>thousands</emphasis> separator. For instance, to enter the milligram equivalent of 1 pound in the <emphasis>Mass Conversion</emphasis> table, you would enter 454000. Once you move off the cell, <emphasis>&krecipes;</emphasis> will display the number as 454,000.</para>
<para>Once the <emphasis>&krecipes;</emphasis> program knows the some of the conversions, it can automatically calculate others. For example, if the program has been informed that there are 8 fluid ounces in a cup, <emphasis>&krecipes;</emphasis> will automatically calculate that 1 fluid ounce is equal to .125 (or 1/8) of a cup.</para>
<sect4 id="measure-converter">
<title>Using the Measurement Converter</title>
<para>The <interface>Measurement Converter</interface> is accessed by selecting <guimenu>Tools</guimenu> and <guimenuitem>Measurement Converter</guimenuitem> from the &krecipes; menu. The interface can also be activated by using the <keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo> key combination.</para>
<para>The <interface>Measurement Converter</interface> works in conjunction with your <emphasis>Ingredient Weights</emphasis> and/or your conversion tables. If your conversion tables have not been completed, or you have not specified a unit type in the <guilabel>Units</guilabel> tab of the <emphasis>Units</emphasis> component, for example, mass or volume, the <interface>Measurement Converter</interface> <emphasis>will not</emphasis> be able to do its job. It will also not provide conversions if the <guilabel>Ingredient Weights</guilabel> have not been completed in the <emphasis>Ingredients</emphasis> component.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Measurement Converter tool.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="measure-convert.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Measurement Converter.</para></caption>
</mediaobject>
</screenshot>
</para>
<para>As you will note from the screenshot, when the <interface>Measurement Converter</interface> starts, beside the label <guilabel>Convert</guilabel> there is a textbox in which the enter <userinput>the amount you want to convert</userinput>. Beside this textbox, there is a drop-down menu from which to select the unit of measure that is associated with the amount that you are converting.</para>
<para>Below the amount and unit that you want to convert, there are two drop-down menus from which making a choice is optional. The first menu is labeled <guilabel>--Ingredient (optional)--</guilabel> and is for choosing an ingredient. The second is labeled <guilabel>-No Preparation-</guilabel> and is for selecting a preparation method, if desired. However, it is these two menus that cause your <emphasis>Ingredient Weights</emphasis> to come into play. For example, suppose one of your recipes calls for 8 cups of apples and you want to know how many pounds of apples you need to buy. The <interface>Measurement Converter</interface> can help!</para>
<para>Beside the label <guilabel>To</guilabel> is a drop-down menu for selecting the unit that you want to convert to. Below this menu and beside the label <guilabel>Result:</guilabel> the result displays. Of course, before the result will display, you must click the <guibutton>Convert</guibutton> button.</para>
<para>Two other buttons exist at the bottom of the <interface>Measurement Converter</interface> window &ndash; the <guibutton>Close</guibutton> button that will close the window without performing a conversion, or once you have performed a conversion and finished using the the information displayed, and the <guibutton>Help</guibutton> button, which opens the &krecipes; Handbook to this section.</para>
<para>As previously stated, the drop-down menus for selecting an ingredient and preparation method are optional unless you are converting ingredient amounts. The <interface>Measurement Converter</interface> can also be used for straight numeric conversion. For instance, the situation might exist where you have a recipe that lists the ingredients in imperial measure, but you want to convert them to metric measure. The <interface>Measurement Converter</interface> can also be used to find the equivalent for a multiple, for instance, how many milliliters are there in 4 fluid ounces? You won't want to be without this handy tool!</para>
</sect4>
</sect3>
</sect2>
<sect2 id="prep-methods">
<title>The Preparation Methods Component</title>
<para>To access the <emphasis>Preparation Methods</emphasis> component, first click on the <guibutton>Data</guibutton> button to reveal additional components and then, click the <guibutton>Preparation Methods</guibutton> button. In the right-hand pane of the <emphasis>&krecipes;</emphasis> window, a list of preparation methods will be displayed under the heading <quote>Preparation Method</quote>. Note that the name of the component also appears at the top of the pane.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Preparation Methods component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="prep-method.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Preparation Methods Component</para></caption>
</mediaobject>
</screenshot>
</para>
<para>The preparation methods listed include those installed by default with the program and those that are automatically added when a method is typed into the <quote>Preparation Method</quote> field while entering a new recipe. See the section <link linkend="add-recipe">Adding a New Recipe</link>.</para>
<sect3 id="add-prep">
<title>Adding a New Preparation Method</title>
<para>To add a new preparation method, click the <guibutton>Create...</guibutton> button that is seen in the upper right-hand portion of the screen. A dialog box will appear containing a textbox that allows entry of the new preparation method under the heading <quote>New Preparation Method</quote>.</para>
<para><userinput>Enter the name of the new preparation method</userinput>, for example, <emphasis>Slightly beaten</emphasis> in the textbox provided. Click the <guibutton>OK</guibutton> button to complete the addition, or the <guibutton>Cancel</guibutton> button to cancel the addition and return to the <quote>Preparation Method</quote> list.</para>
</sect3>
<sect3 id="remove-prep">
<title>Deleting a Preparation Method</title>
<para>To remove a preparation method, first select the method to be removed from the list of preparation methods displayed. Then, click on the <guibutton>Delete</guibutton> button that is displayed in the upper, right-hand portion of the screen beneath the <guibutton>Create...</guibutton> button.</para>
<para>Should the preparation method selected for deletion be used by a recipe, a dialog box will appear stating <emphasis>The following elements will have to be removed also, since currently they use the element you have chosen to be removed.</emphasis> Below this, the list of recipes utilizing the preparation method will show. Click the <guibutton>OK</guibutton> button to proceed &ndash; REMINDER: This will delete not only the preparation method, but the recipes utilizing that method as well! To cancel removal of the preparation method, click the <guibutton>Cancel</guibutton> button.</para>
<para>Should no recipe utilize the preparation method selected for deletion, no prompt will be given.</para>
</sect3>
<sect3 id="edit-prep">
<title>Editing Preparation Methods</title>
<para>Preparation methods can also be edited simply by double-clicking on the desired method.</para>
<para>For example, to change the method <emphasis>Slightly beaten</emphasis> to <emphasis>Slightly Beaten</emphasis>, double-click on the method in the list. A box will appear around the method, the method will be highlighted and an insertion point will appear. Use the <keycap>&#8592;</keycap> or the <keycap>&#8594;</keycap> directional arrow keys as required to position the cursor in the appropriate position to change the lowercase b in <quote>beaten</quote> to uppercase. Press the <keycap>Enter</keycap> key to complete the change.</para>
</sect3>
</sect2>
<sect2 id="categories-component">
<title>The Categories Component</title>
<para>When the <emphasis>Categories</emphasis> component is selected, the list of all created categories will appear under the heading <emphasis><guilabel>Category</guilabel></emphasis>. Those categories that have <emphasis>sub-categories</emphasis> will be shown with a + (plus) sign beside them, indicating that the category can be expanded. Once expanded, the main category will show a - (dash) beside it and the list of sub-categories will be visible.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Categories component.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="categories.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>The Categories Component</para></caption>
</mediaobject>
</screenshot>
</para>
<sect3 id="add-category">
<title>Adding a New Category</title>
<para>To add a new category, click on the <guibutton>Create...</guibutton> button.</para>
<para>A window will pop up where the name of the new category can be entered in a textbox under the label <emphasis><guilabel>New Category</guilabel></emphasis>. A subcategory can be selected using the <quote><guimenu>Subcategory of</guimenu></quote> drop-down menu, which lists existing categories. The default for the subcategory is <emphasis>&#042;&#042;NONE&#042;&#042;</emphasis>.</para>
<para>Once the name of the new category has been entered in the textbox, click the <guibutton>OK</guibutton> button to create the category and return to the category list. The list will now show the new category.</para>
<para>To cancel the addition of a new category and clear the window, click on the <guibutton>Cancel</guibutton> button.</para>
</sect3>
<sect3 id="delete-category">
<title>Removing a Category</title>
<para>To remove a category, select it from the list of categories and click the <guibutton>Delete</guibutton> button.</para>
<para>A prompt will appear asking, <emphasis>Are you sure you want to remove this category and all its subcategories?</emphasis>. Click the <guibutton>Continue</guibutton> button to remove the category, or the <guibutton>Cancel</guibutton> button to cancel the removal.</para>
<warning><para>Before deleting a category, ensure that it contains NO recipes! Despite the warning <emphasis>Are you sure you want to remove this category and all its subcategories?</emphasis>, clicking the <guibutton>Continue</guibutton> button will result in the deletion of the category whether or not it contains recipes!</para></warning>
</sect3>
</sect2>
<sect2 id="authors-component">
<title>The Authors Component</title>
<para>The <emphasis>Authors</emphasis> component is where the author or contributor of the recipe is maintained.</para>
<para>Within this component, the component title appears at the top and the list of authors appears in the main portion of the window.</para>
<sect3 id="add-author">
<title>Adding an Author or Contributor</title>
<para>To add an author/contributor, click on the <guibutton>Create...</guibutton> button on the right-hand side of the screen.</para>
<para>A window will appear that allows entry of the author's name in the textbox labelled <emphasis><guilabel>New Author</guilabel></emphasis></para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Authors Component showing the addition of a new author.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="authors-adding.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Authors Component &ndash; Adding an Author</para></caption>
</mediaobject>
</screenshot>
</para>
<para>Once a name has been entered, click the <guibutton>OK</guibutton> button to create the entry, or the <guibutton>Cancel</guibutton> button to cancel entry of a new author's name and close the window.</para>
</sect3>
<sect3 id="remove-author">
<title>Removing an Author/Contributor</title>
<para>To remove an author/contributor from the list, select the author from the list and click the <guibutton>Delete</guibutton> button on the right-hand side of the screen.
</para>
<para>When this button has been clicked, an alert will appear with the stating <emphasis>WARNING: The following currently use the element you have chosen to be removed</emphasis>. Beneath the heading <guilabel>Recipes</guilabel>, the list of recipes that have specified this author as the contributor will appear. Click the <guibutton>Continue</guibutton> button to delete the author, or the <guibutton>Cancel</guibutton> button to cancel the deletion.</para>
</sect3>
</sect2>
</sect1>
</chapter>
<chapter id="krecipes-preferences">
<title>Setting Preferences in <emphasis>&krecipes;</emphasis></title>
<para><emphasis>&krecipes;</emphasis> is extremely configurable and allows the setting of many preferences besides those defined in the <link linkend="krecipes-page-setup">Page Setup</link> section.</para>
<sect1 id="configure-shortcuts">
<title>Creating Shortcuts</title>
<para>To access the Shortcut configuration interface, select <guimenu>Settings</guimenu> and <guimenuitem>Configure Shortcuts...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu. The <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen will appear.</para>
<para>In the <emphasis><guilabel>Search:</guilabel></emphasis> textbox, <action>type the name</action> of the <emphasis>Action</emphasis> for which you want to create the shortcut. Under the heading <emphasis><guilabel>Action</guilabel></emphasis>, the cursor will position itself on an item in the list that matches the characters typed. As more characters are typed, the cursor will reposition itself on another item in the list. If an exact match is typed, the cursor will be positioned on this item. However, if multiple matches exist for the characters typed, the cursor will be positioned on the first match.</para>
<para>For example, in the screenshot below, two <emphasis>Actions</emphasis> exist for the expression <quote>Import</quote> Therefore, if you type <quote>Import</quote>, the cursor will be positioned on <quote>Import from Database...</quote>, although it may not be this Action that you want to create the shortcut for. However, if you type <quote>Import from File</quote>, the cursor will be positioned on the <quote>Import from File...</quote> Action.</para>
<para>Clicking the <guiicon><inlinemediaobject><imageobject><imagedata fileref="clear_right.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> icon located beside the <emphasis><guilabel>Search:</guilabel></emphasis> textbox clears the contents of the textbox.</para>
<para>Alternatively, you can use the scroll bars to scroll through the <emphasis>Actions</emphasis> until the one for which you want to change the shortcut is found.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the Configure Shortcuts &ndash; &krecipes; starting screen.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="configure-shortcuts.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure Shortcuts &ndash; <emphasis>&krecipes;</emphasis> Starting Point</para></caption>
</mediaobject>
</screenshot>
</para>
<para>To begin creating your shortcut, ensure that the <emphasis>Action</emphasis> for which you want to create the shortcut is selected.</para>
<para>If the <emphasis>Action</emphasis> has no attached shortcut, the radio button beside <emphasis><guilabel>None</guilabel></emphasis> will be selected by default. If there is a shortcut attached, the <emphasis><guilabel>Default</guilabel></emphasis> radio button will be selected as shown in the example in the screenshot.</para>
<para>To create a shortcut for an <emphasis>Action</emphasis> that does not have one attached, or to change an existing shortcut, click the radio button beside the <emphasis><guilabel>Custom</guilabel></emphasis> label.</para>
<para>When you click the <guibutton>Custom</guibutton> radio button, the window for doing the actual defining of your shortcut will appear.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Basic Shortcut configuration screen.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="configure-shortcuts-basic.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure Shortcuts &ndash; Basic Configuration</para></caption>
</mediaobject>
</screenshot>
</para>
<para>If a shortcut already exists, the textbox will contain an entry, as seen in the screenshot above. To clear this entry in order to enter a new one, click on the <guiicon><inlinemediaobject><imageobject><imagedata fileref="clear_right.png" format="PNG"/></imageobject></inlinemediaobject></guiicon> icon on the left of the textbox.
</para>
<para>If no shortcut exists, position the cursor in the textbox and enter your key combination. For example, to enter the key combination <keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo>, hold the <keycap>Ctrl</keycap> and simultaneously, press the <keycap>I</keycap> key. Entering the key combination in the textbox will close the entry window and return you to the main <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen. The shortcut will show on the <guibutton>Shortcut</guibutton> button that appears to the left of the <emphasis><guilabel>Custom</guilabel></emphasis> label.</para>
<para>Clicking the <guibutton>OK</guibutton> button, will set a change made, for instance if you cleared a shortcut and didn't want to set another, and return you to the main <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen. The <guibutton>Cancel</guibutton> button on the shortcut entry screen will cancel setting of the shortcut and return you to the main interface.</para>
<para>Clicking the <guibutton>Advanced&gt;&gt;</guibutton> button will expand the shortcut entry screen as shown in the screenshot below.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Advanced Shortcut configuration screen.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="configure-shortcuts-adv.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure Shortcuts &ndash; Advanced Configuration</para></caption>
</mediaobject>
</screenshot>
</para>
<para>On the <emphasis>Advanced</emphasis> shortcut entry screen, shortcuts are defined in the same manner as previously described. However, you will note that the definition of an <emphasis><guilabel>Alternate shortcut:</guilabel></emphasis> is possible.</para>
<para>The <guibutton>OK</guibutton> and <guibutton>Cancel</guibutton> buttons also operate in the same manner as previously described. The <guibutton>Advanced&lt;&lt;</guibutton> button collapses the window to the single shortcut entry interface.</para>
<para>You will also notice beneath the <emphasis><guilabel>Alternate shortcut:</guilabel></emphasis> textbox, that there is a tickbox labeled <emphasis><guilabel>Multi-key mode</guilabel></emphasis>. Selecting this provides very cool functionality! Follow these steps to see how it works &mdash;</para>
<orderedlist>
<listitem><para>From the main <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen, choose an <emphasis>Action</emphasis> for which you would like to configure a shortcut. As an example, let's choose <quote>About TDE</quote>. </para></listitem>
<listitem><para>Select the <emphasis><guilabel>Custom</guilabel></emphasis> radio button.</para></listitem>
<listitem><para>In the shortcut input screen, click the <guibutton>Advanced&gt;&gt;</guibutton> button, if the window is not already expanded.</para></listitem>
<listitem><para>Click the <emphasis><guilabel>Multi-key mode</guilabel></emphasis> tickbox to select.</para></listitem>
<listitem><para>Type A,A by pressing the <keycap>A</keycap> key twice &ndash; this will cause <emphasis>A,A</emphasis> to appear in the shortcut entry textbox.</para></listitem>
<listitem><para>Click the <guibutton>OK</guibutton> button. You will be returned to the main <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen.</para></listitem>
<listitem><para>Select another <emphasis>Action</emphasis>, for example, <quote>About Krecipes</quote>.</para></listitem>
<listitem><para>Again, make sure that you have selected the <emphasis><guilabel>Multi-key mode</guilabel></emphasis> tickbox.</para></listitem>
<listitem><para>For your shortcut combination, type A,B by pressing the <keycap>A</keycap> key and then, the <keycap>B</keycap> key &ndash; <emphasis>A,B</emphasis> will show in the shortcut textbox.</para></listitem>
<listitem><para>Click the <guibutton>OK</guibutton> button.</para></listitem>
<listitem><para>Back on the main <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen, click the <guibutton>OK</guibutton> button to close the window.</para></listitem>
</orderedlist>
<para>Now the fun begins! Anywhere in the program, as long as your cursor is not focused on text, for example, in a textbox or in a recipe edit input area, press the <keycap>A</keycap> key on your keyboard. In the top, left-hand corner of your screen, using the example outlined, a small menu will appear, as follows &mdash;</para>
<para><inlinemediaobject><imageobject><imagedata fileref="menu.png" format="PNG"/></imageobject></inlinemediaobject></para>
<para>You can press the <keycap>A</keycap> or <keycap>B</keycap> key on the keyboard to select your choice, or you can use the directional arrows on the keyboard to highlight your selection and then, press the <keycap>Enter</keycap> key.</para>
<para>Although we have used <quote>About TDE</quote> and <quote>About Krecipes</quote> in our example, this functionality could be applied to other choices. For example, you could choose to use the <emphasis>Multi-key mode</emphasis> for your import shortcuts, defining <quote>Import from Database</quote> as <emphasis>I,D</emphasis> and <quote>Import from File</quote> as <emphasis>I,F</emphasis>. Then, pressing the <keycap>I</keycap> key on your keyboard will bring up the import choices menu. Note here that for the <quote>Import from File</quote> choice, there is already a shortcut attached by default. However, <emphasis>&krecipes;</emphasis> is so configurable that you will be able to change this.</para>
<para>Back on the main <interface>Configure Shortcuts &ndash; &krecipes;</interface> screen, below the radio buttons, the default shortcut appears beside the <emphasis><guilabel>Default key:</guilabel></emphasis> label.</para>
<para>Below the <emphasis><guilabel>Default key:</guilabel></emphasis> label, functions of the buttons are as follows &mdash;</para>
<itemizedlist>
<listitem><para><guibutton>Defaults</guibutton> &ndash; returns all shortcut settings to their defaults</para></listitem>
<listitem><para><guibutton>OK</guibutton> &ndash; sets any changes made and closes the <interface>Configure Shortcuts &ndash; &krecipes;</interface> window</para></listitem>
<listitem><para><guibutton>Cancel</guibutton> &ndash; cancels any changes made and closes the <interface>Configure Shortcuts &ndash; &krecipes;</interface> window</para></listitem>
</itemizedlist>
</sect1>
<sect1 id="configure-toolbars">
<title>Customizing the Toolbar</title>
<para>To access the Toolbar configuration interface, select <guimenu>Settings</guimenu> and <guimenuitem>Configure Toolbars...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu. The <emphasis><guilabel>Configure Toolbars &ndash; &krecipes;</guilabel></emphasis> screen will appear.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Toolbar configuration screen.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="configure-toolbars.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure <emphasis>&krecipes;</emphasis> &ndash; Configure Toolbars interface</para></caption>
</mediaobject>
</screenshot>
</para>
<para>From the screenshot, you will notice that choices available for addition to the toolbar are on the left under the heading <emphasis><guilabel>Available actions:</guilabel></emphasis>. On the right, under the heading <emphasis><guilabel>Current actions:</guilabel></emphasis> are the icons that presently appear on the toolbar &ndash; note that your toolbar, by default, may appear differently from that displayed in the screenshot.</para>
<para>Between the two lists are four arrows, which allow for directional movement between the lists, or up and down in the list. When an item is selected from either list, the directional arrow(s) that are functional are colored, while the non-functional arrow(s) are grayed. Movement is accomplished by clicking on the appropriate directional arrow, as necessary, to move the selection into the desired position.</para>
<para>The icon for your selection can be changed by clicking the <guibutton>Change Icon...</guibutton> button. This will bring up a window from which you can select the icon that you want to use. Once selected, click the <guibutton>OK</guibutton> button that appears on the icon selection screen to close the window and attach the icon to the toolbar selection.</para>
<para>In order to apply your changes, you must click the <guibutton>Apply</guibutton> button that appears at the bottom of the <emphasis><guilabel>Configure Toolbars &ndash; &krecipes;</guilabel></emphasis> screen. This will apply your changes, but leave the window open in order to make other changes, if desired. To apply your changes and exit the interface, click the <guibutton>OK</guibutton> button. Clicking the <guibutton>Cancel</guibutton> will cancel <emphasis>any changes made since the last time the <guibutton>Apply</guibutton> button was clicked</emphasis>.</para>
</sect1>
<sect1 id="configure-krecipes-choice">
<title>Configuring <emphasis>&krecipes;</emphasis></title>
<para>When you choose <guimenu>Settings</guimenu> and <guimenuitem>Configure Krecipes</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu, the <interface>Krecipes Preferences - Krecipes</interface> window appears. From this window, you can choose one of three buttons to configure various aspects of <emphasis>&krecipes;</emphasis>.</para>
<sect2 id="configure-server-settings">
<title>Server Settings</title>
<para>The first preference that you can configure is the <emphasis><guilabel>Database Server Options</guilabel></emphasis>. You will notice from the following screenshot that this label shows that an SQLite database has been selected. However, if the database selected is either <emphasis>MySQL</emphasis> or <emphasis>PostgreSQL</emphasis> the label would show the name of the appropriate database format. The <emphasis><guilabel>Database file:</guilabel></emphasis> label shows the complete path to the database file.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Server Settings configuration window.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="server-settings.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure <emphasis>&krecipes;</emphasis> &ndash; Server Settings interface</para></caption>
</mediaobject>
</screenshot>
</para>
<para>If you wanted to choose another database file, you would click on the <guiicon>File</guiicon> icon and in the window that appears, navigate to the location of the database file that you want to use. This change would be reflected in the <emphasis><guilabel>Database file:</guilabel></emphasis> textbox.</para>
<para>The second preference available for configuration in the <emphasis><guilabel>Server Settings</guilabel></emphasis> screen is for the <emphasis>Backup</emphasis> operation. It is required that the path to your database program be known for the <emphasis>Backup</emphasis> operation to work properly. Therefore, beside the label that is shown in the screenshot as <emphasis><guilabel>Path to 'sqlite3':</guilabel></emphasis>, there is a textbox which shows the name of the database program. The text in this box can be changed by directly editing it, or by clicking the File icon, which will activate the screen that allows you to navigate to the location of your database program executable file.</para>
<para>You might want to do this if you have chosen to install your database program to a location that is different from the default. Also note that, in the screenshot, the database program shows as <quote>sqlite3</quote>. However, if you use another database program, for instance MySQL or PostgreSQL, the appropriate database would be shown.</para>
<note><para>This setting is for the purpose of setting the location of the database file. For specific information on backing up your database, see the section <link linkend="backup-db">Backing Up Your &krecipes; Database</link>.</para></note>
<para>Also exclusive to the <emphasis><guilabel>Server Settings</guilabel></emphasis> screen, is the <emphasis><guilabel>Re-run wizard on next startup</guilabel></emphasis> tickbox that can be selected to reload the database with the recipes and USDA data that come as defaults with the <emphasis>&krecipes;</emphasis> program.</para>
<para>Buttons that appear at the bottom of the <emphasis><guilabel>Server Settings</guilabel></emphasis> screen are common to each of the preference screens and function as follows &mdash;</para>
<itemizedlist>
<listitem><para><guibutton>OK</guibutton> &ndash; sets any changes made and closes the <interface>Krecipes Preferences - Krecipes</interface> window</para></listitem>
<listitem><para><guibutton>Cancel</guibutton> &ndash; cancels changes, if any have been made, and closes the <interface>Krecipes Preferences - Krecipes</interface> window</para></listitem>
<listitem><para><guibutton>Help</guibutton> opens the <emphasis>&krecipes;</emphasis> Handbook to the associated section</para></listitem>
</itemizedlist>
</sect2>
<sect2 id="custom-formatting">
<title>Customizing Formatting</title>
<para>Like accessing the <interface>Krecipes Preferences - Krecipes</interface> <emphasis><guilabel>Server Settings</guilabel></emphasis> preferences, you access the <emphasis><guilabel>Formatting</guilabel></emphasis> preferences, by first choosing <guimenu>Settings</guimenu> and <guimenuitem>Configure &krecipes;...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu and then, choosing the <emphasis><guilabel>Formatting</guilabel></emphasis> option that appears on the left of the window.</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Formatting configuration window.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="formatting.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure <emphasis>&krecipes;</emphasis> &ndash; Formatting interface</para></caption>
</mediaobject>
</screenshot>
</para>
<para>From this window, there are three formatting preferences that can be customized &mdash;</para>
<orderedlist><listitem><para><emphasis><guilabel>Number Format</guilabel></emphasis> &ndash; either <emphasis><guilabel>Fraction</guilabel></emphasis> or <emphasis><guilabel>Decimal</guilabel></emphasis> can be selected by clicking on the appropriate radio button and this choice controls how the units of measure will display in your recipes</para></listitem>
<listitem><para><emphasis><guilabel>Ingredient</guilabel></emphasis> format &ndash; this controls how the ingredients are listed in your recipes</para>
<para>You will notice from the screenshot that each portion of the ingredient has a variable associated with it, <emphasis>%n</emphasis> for <quote>Name</quote>, <emphasis>%p</emphasis> for <quote>Preparation method</quote>, <emphasis>%a</emphasis> for <quote>Amount</quote>, <emphasis>%u</emphasis> for <quote>Unit</quote>. The chosen order for display of these items appears in the <emphasis><guilabel>Ingredient format:</guilabel></emphasis> textbox and can be changed at will.</para>
</listitem>
<listitem><para><emphasis><guilabel>Use abbreviations</guilabel></emphasis> &ndash; this feature is turned on by clicking on the tickbox beside the label</para>
<para>If the abbreviations have been completed for your units, the result of selecting to <emphasis>Use abbreviations</emphasis> is that your units of measure will be displayed in their abbreviated form when you are viewing or printing your recipe, and in the printable version of your <emphasis>Shopping List</emphasis>.</para>
<para>For example, if <emphasis>Use abbreviations</emphasis> is selected and the ingredient format is specified as <emphasis>%a %u %n%p</emphasis>, as in the screenshot, this will cause the ingredient to be displayed as follows &mdash;</para>
<para>2&#0189; lbs. cream cheese; softened</para>
</listitem>
</orderedlist>
</sect2>
<sect2 id="import-export-preference">
<title>Choosing Import/Export Preferences</title>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Import/Export configuration window.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="import-settings.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure <emphasis>&krecipes;</emphasis> &ndash; Import/Export interface</para></caption>
</mediaobject>
</screenshot>
</para>
<para>Accessing the <interface>Krecipes Preferences - Krecipes</interface> <emphasis><guilabel>Import/Export</guilabel></emphasis> preferences, is accomplished by first, choosing <guimenu>Settings</guimenu> and <guimenuitem>Configure &krecipes;...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu and then, choosing the <emphasis><guilabel>Import/Export</guilabel></emphasis> option that appears on the left of the window.</para>
<para>On this screen under the heading <emphasis><guilabel>Import</guilabel></emphasis>, two options exist &mdash;</para>
<para>The first is <emphasis><guilabel>Overwrite recipes with same title</guilabel></emphasis> and this feature can be turned on by clicking the tickbox beside the label. This might be a good idea if you are re-importing a currently loaded database.</para>
<para>Should you choose NOT to overwrite existing recipes and you have a recipe titled <emphasis>Chocolate Cheesecake</emphasis>, for example, in your recipe list, if you import another Chocolate Cheesecake recipe, the listing will appear as &mdash;</para>
<para>Chocolate Cheesecake</para>
<para>Chocolate Cheesecake (2)</para>
<para>The second option is <emphasis><guilabel>Ask which recipes to import</guilabel></emphasis> and again, this feature can be turned on by selecting the textbox. If this feature is not turned on, your recipes will be imported silently with no prompt. See the section <link linkend="import-export-recipes">Importing and Exporting Recipes</link> for a screenshot that will show the result of this option being selected.</para>
<sect3 id="copy-clipboard">
<title>Copying to the Clipboard</title>
<para>Under the heading <emphasis><guilabel>Export</guilabel></emphasis>, a drop-down menu exists from which you can select the <quote>Copy to Clipboard</quote> format you wish to use.</para>
<para>Essentially, copying to the clipboard is the same as exporting a recipe. The difference lies in the end result of the export. The traditional export function creates a <emphasis>file</emphasis> (see the section <link linkend="export-recipe">Exporting Recipes to Other Formats</link> for a complete description of this). The <quote>Copy to Clipboard</quote> function creates a copy of the recipe in the specified format and places the copy on the clipboard. This provides the ability to paste that copy into an e-mail, for example. The usefulness of this might be in the situation where an attachment to an e-mail might be scrubbed.</para>
<para>The available choices for <quote>Copy to Clipboard</quote> are &mdash;</para>
<itemizedlist>
<listitem><para>Plain Text (*.txt) &ndash; If copied to the clipboard in this format, the result will be a plain text copy of the recipe.</para></listitem>
<listitem><para>Krecipes (*.kreml) &ndash; If copied to the clipboard in this format, the result will contain all the associated markup tags that allow formatting which is associated with <emphasis>&krecipes;</emphasis>.</para></listitem>
<listitem><para>Meal-Master (*.mmf) &ndash; If copied to the clipboard in this format, the result will be a format that is recognized by the Meal-Master program.</para></listitem>
<listitem><para>Rezkonv (*.rk) &ndash; If copied to the clipboard in this format, the result will be a format that is recognized by the Rezkonv program.</para></listitem>
<listitem><para>RecipeML (*.xml) &ndash; If copied to the clipboard in this format, the result will contain all the associated markup tags that allow formatting associated with RecipeML.</para></listitem>
</itemizedlist>
<para>As previously stated, once the recipe is copied to the clipboard in the desired format, it can be pasted into an e-mail. It can also be pasted into a text editor for the purpose of saving the document. When a recipe is copied to the clipboard in a plain text format and then pasted into an e-mail or another document, it is not intended to be imported back into <emphasis>&krecipes;</emphasis> or any other recipe program. However, suppose another format has been selected for <quote>Copy to Clipboard</quote>. What do you do then and how do you get it back into a related recipe program?</para>
<para>If the recipe has been copied into an e-mail and sent, the recipient could just copy the section associated with the recipe and then, paste it into a text editor and save it to a file with the extension associated with the format &ndash; <emphasis>.kreml</emphasis> for <emphasis>&krecipes;</emphasis> format, <emphasis>.mmf</emphasis> for Meal-Master format, <emphasis>.rk</emphasis> for Rezkonv format, or <emphasis>.xml</emphasis> for RecipeML format. Once saved, this file could then be imported back into the associated recipe program.</para>
<para>If the contents of the clipboard have been pasted directly into a text editor, the file can then be saved with the appropriate extension as previously listed and imported back into the associated recipe program.</para>
</sect3>
</sect2>
<sect2 id="configure-performance">
<title>Enhancing Performance</title>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; Performance configuration window.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="performance.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configure <emphasis>&krecipes;</emphasis> &ndash; Performance interface</para></caption>
</mediaobject>
</screenshot>
</para>
<para>Accessing the <interface>Krecipes Preferences - Krecipes</interface> <emphasis><guilabel>Performance</guilabel></emphasis> preferences, is accomplished by first, choosing <guimenu>Settings</guimenu> and <guimenuitem>Configure &krecipes;...</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu and then, choosing the <emphasis><guilabel>Performance</guilabel></emphasis> option that appears on the left of the window.</para>
<para>In this interface, you are customizing two settings. For a reason that you might want to do this, see the section <link linkend="config-performance-reason">Reasons for Configuring Performance Settings</link>. These settings can be used individually or together or not at all.</para>
<para>The first is to set the number of categories that appear in the list when the <emphasis>Find/Edit Recipes</emphasis> component is selected. By default, this number is set to <quote>Unlimited</quote>, which means that all categories will be displayed. To change this setting, adjust the <quote>slider</quote> that appears below the label <quote><emphasis><guilabel>Number of categories to display at once:</guilabel></emphasis></quote> until the desired number appears, or use the <quote>spinbox</quote> to set the number.</para>
<para>The second setting that you might wish to change is for the number of items that are displayed in lists, for example, the <emphasis>Ingredients</emphasis> list or <emphasis>Properties</emphasis> list. Again, by default this is set to <quote>Unlimited</quote> and to change the setting you would adjust the <quote>slider</quote> that appears below the label <quote><emphasis><guilabel>Number of elements to display at once:</guilabel></emphasis></quote>, or use the <quote>spinbox</quote> until the desired number appears.</para>
<para>It should be noted that for the <quote><emphasis><guilabel>Number of elements to display at once:</guilabel></emphasis></quote> setting, the adjustment is done in increments of 1000 when using the <quote>spinbox</quote>. Should you wish to set smaller numbers, you can do this by highlighting the word <quote>Unlimited</quote> or whatever numeric entry appears in the box and type the number that you wish to use. However, this feature is ideally used when you have a very large database of recipes.</para>
<sect3 id="config-performance-reason">
<title>Reasons for Configuring Performance Settings</title>
<para>In most instances, the settings to adjust the <emphasis><guilabel>Number of categories to display at once:</guilabel></emphasis> and/or the <emphasis><guilabel>Number of elements to display at once:</guilabel></emphasis> will not have to be changed. The ultimate reason that you might want to do so occurs when you have a very large database of recipes. Adjusting these settings so that your Categories or list items are loaded in groups will greatly improve the speed of loading for these items.</para>
</sect3>
</sect2>
</sect1>
</chapter>
<chapter id="report-problems">
<title>Reporting Problems</title>
<para>In the event that <emphasis>&krecipes;</emphasis> program does something unexpected and you think this might be a bug, you can submit a bug report to the program maintainer. Even if you do not encounter any problems and you have an idea to improve <emphasis>&krecipes;</emphasis>, you can submit this request as well. By submitting a report in either of these situations, it will help us to continually improve <emphasis>&krecipes;</emphasis>.</para>
<sect1 id="bugs-requests">
<title>Reporting Bugs/Requesting Feature Enhancements</title>
<para>To submit a bug report, select <guimenu>Help</guimenu> and <guimenuitem>Report Bug</guimenuitem> from the <emphasis>&krecipes;</emphasis> menu bar. The <emphasis><interface>Submit Bug Report &ndash; &krecipes;</interface></emphasis> window appears as in the screenshot below:</para>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the &krecipes; interface for submitting bugs or feature requests.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="submit-bug.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Submitting Bug Reports and Feature Requests</para></caption>
</mediaobject>
</screenshot>
</para>
<para>This is the actual e-mail interface used to submit the bug report or feature enhancement. In addition to the section for typing the e-mail, it provides a wealth of information, some of which provides information that will assist the maintainer in acting on your e-mail. The information provided is as follows: &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>From:</guilabel></emphasis> &ndash; the e-mail address of the person sending the e-mail shows beside this label, <abbrev>i.e.</abbrev>your e-mail address</para></listitem>
<listitem><para><emphasis><guilabel>To:</guilabel></emphasis> &ndash; the e-mail address of the person to whom the e-mail is being sent shows beside this label, <abbrev>i.e.</abbrev>the program maintainer</para></listitem>
<listitem><para><emphasis><guilabel>Application:</guilabel></emphasis> &ndash; the application that the report pertains to shows beside this label</para>
<note><para><emphasis>&krecipes;</emphasis> is shown by default because you are sending this from within <emphasis>&krecipes;</emphasis>. However, <emphasis>&krecipes;</emphasis> is a &kde; application, so there is a drop-down menu from which you could select another application if you were sending a report from within another program.</para></note>
</listitem>
<listitem><para><emphasis><guilabel>Version:</guilabel></emphasis> &ndash; the version of the <emphasis>&krecipes;</emphasis> program being used when the report is submitted shows beside this label</para></listitem>
<listitem><para><emphasis><guilabel>OS:</guilabel></emphasis> &ndash; the operating system being used and its version show beside this label</para></listitem>
<listitem><para><emphasis><guilabel>Compiler:</guilabel></emphasis> &ndash; the compiler used to compile <emphasis>&krecipes;</emphasis> and its version is shown beside this label (A compiler is the program that turns the source code as written by the programmer into what is known as <quote>object code</quote>, which the computer can understand.)</para></listitem>
</itemizedlist>
<para>The next sections are the ones that you will have to complete.</para>
<para>In the section labelled <emphasis><guilabel>Severity</guilabel></emphasis>, you provide the information as to the type of report by selecting the pertinent radio button as follows &mdash;</para>
<itemizedlist>
<listitem><para><emphasis><guilabel>Critical</guilabel></emphasis> &ndash; this selection indicates that there is a serious malfunction in the <emphasis>&krecipes; program</emphasis>, for instance, one that causes data loss</para>
<note><para>In the event of a crash, a <emphasis>Backtrace</emphasis> window might appear. This information is useful to the maintainer, so it is wise to copy the text that appears in this window and paste it into the body of your e-mail.</para></note></listitem>
<listitem><para><emphasis><guilabel>Grave</guilabel></emphasis> &ndash; this selection might be indicated if <emphasis>&krecipes;</emphasis> has been rendered unusable</para></listitem>
<listitem><para><emphasis><guilabel>Normal</guilabel></emphasis> &ndash; this selection indicates that some aspect of <emphasis>&krecipes;</emphasis> is failing to perform as expected.</para></listitem>
<listitem><para><emphasis><guilabel>Wishlist</guilabel></emphasis> &ndash; this selection would be used to request a feature enhancement to <emphasis>&krecipes;</emphasis>. This is the type of report being shown in the screenshot.</para></listitem>
<listitem><para><emphasis><guilabel>Translation</guilabel></emphasis> &ndash; this selection would be use to request that the <emphasis>&krecipes;</emphasis> be translated into another language.</para></listitem>
</itemizedlist>
<para>In the textbox beside the label <emphasis><guilabel>Subject:</guilabel></emphasis> you would type a description of the report being submitted and finally, in the large text area, you would type a description of the problem or enhancement and provide any error messages that have been displayed. Additionally, you should provide the maintainer with the database that you are using, <abbrev>i.e.</abbrev> SQLite, MySQL or PostreSQL and the version. </para>
<para>When you have completed the e-mail, click the <guibutton>Send</guibutton> button to submit your e-mail or the <guibutton>Cancel</guibutton> button to close the interface and return to the main <emphasis><guilabel>&krecipes;</guilabel></emphasis> window.</para>
<para>When you click the <guibutton>Send</guibutton> button, you will be prompted for a password. This is the password that goes along with your system username. However, before you can actually send your e-mail, it must be configured for sending as described in the following section. Click the <guibutton>Configure Email...</guibutton> button to start the e-mail configuration interface.</para>
<sect2 id="config-email">
<title>Configuring Email to Enable Submission of Bug Reports</title>
<para>
<screenshot>
<screeninfo>Here's a screenshot of the e-mail configuration screen that enables the ability to send bug reports from within &krecipes;.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="config-email.png" format="PNG"/>
</imageobject>
<textobject>
<phrase>Screenshot</phrase>
</textobject>
<caption><para>Configuring Email</para></caption>
</mediaobject>
</screenshot>
</para>
<para>From the screenshot, you will notice that there is an icon at the top of the page and beside this your username that you use to log onto your system. This icon can be changed by clicking on it.</para>
<para>The next set of information that you need to provide appears below the label <emphasis><guilabel>User Information</guilabel></emphasis> and that is exactly what this section contains. Looking at the screenshot, the information that needs to be provided is self-explantory. Of the first four pieces of information provided, the only ones that are absolutely essential are your <emphasis><guilabel>Email address:</guilabel></emphasis> and <emphasis><guilabel>SMTP server:</guilabel></emphasis>. An SMTP server is the server used for sending e-mail. This could be the one housed by your internet service provider, or one that is on your local area network.</para>
<para>The last item shown in the <emphasis><guilabel>User Information</guilabel></emphasis> section is for the <emphasis><guilabel>User ID</guilabel></emphasis>. In the screenshot, nothing shows beside this label, but it would normally default to your numerical User ID as set up on the system.</para>
<para>In the section beneath the label <emphasis><guilabel>At Password Prompt</guilabel></emphasis>, three radio buttons appear from which you can make the choice that you want. This selection dictates what will happen when you enter your password when prompted. Each time you press a key for a character in your password, that character is reiterated by the number of stars as determined by the radio button selected &ndash; one star if you chose the radio button beside the label <emphasis><guilabel>Show one star for each letter</guilabel></emphasis>, or three stars if you chose the radio button beside the label <emphasis><guilabel>Show three stars for each letter</guilabel></emphasis>. If you chose the radio button beside the label <emphasis><guilabel>Show nothing</guilabel></emphasis>, no stars will be reiterated.</para>
<para>It is not necessary to utilize the <guibutton>Change Password</guibutton> button. You probably already have a password to log onto your system. However, should you wish to change the password associated with your username, you may do so by clicking this button and following the prompts.</para>
<para>Now you are ready to send your e-mail!</para>
</sect2>
</sect1>
</chapter>
<chapter id="commands">
<title>Command Reference</title>
<!-- (OPTIONAL, BUT RECOMMENDED) This chapter should list all of the
application windows and their menubar and toolbar commands for easy reference.
Also include any keys that have a special function but have no equivalent in the
menus or toolbars. This may not be necessary for small apps or apps with no tool
or menu bars. -->
<sect1 id="kapp-mainwindow">
<title>The main <emphasis>&krecipes;</emphasis> window</title>
<sect2 id="file-menu">
<title>The File Menu</title>
<para>
<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>New Recipe</guimenuitem>
</menuchoice></term>
<listitem><para><action>Creates a new recipe</action></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Save</guimenuitem>
</menuchoice></term>
<listitem><para><action>Saves the recipe</action></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Print</guimenuitem>
</menuchoice></term>
<listitem><para><action>Prints the currently loaded recipe</action> &ndash; See the section <link linkend="print-recipe">Printing Your Recipe</link> for instructions</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycap>F5</keycap>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Reload</guimenuitem>
</menuchoice></term>
<listitem><para><action>Reloads the currently active recipe</action></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Import from File...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Imports recipes</action> from a file &ndash; See the section <link linkend="file-import">Importing from a File</link> for instructions</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Import from Database...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Imports recipes</action> from one of 3 database choices</para>
<para>See the corresponding sections on importing from a Database &ndash; <link linkend="import-sqlite">SQLite</link>, <link linkend="import-mysql">MySQL</link>, or <link linkend="import-postgresql">PostgreSQL</link></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Export...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Exports</action> either a single recipe or all recipes to a file &ndash; <link linkend="export-recipe">Exporting Recipes to Other Formats</link></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Backup</guimenuitem>
</menuchoice></term>
<listitem><para><action>Backs up</action> your <emphasis>&krecipes;</emphasis> database file &nbsp; refer to the section <link linkend="backup-db">Backing Up Your <emphasis>&krecipes;</emphasis> Database</link>.</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Restore</guimenuitem>
</menuchoice></term>
<listitem><para><action>Restores</action> your <emphasis>&krecipes;</emphasis> database file &nbsp; refer to the section <link linkend="restore-db">Restoring Your <emphasis>&krecipes;</emphasis> Database</link>.</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Quit</guimenuitem>
</menuchoice></term>
<listitem><para><action>Quits</action> <emphasis>&krecipes;</emphasis></para></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>
<sect2 id="edit-menu">
<title>The <guimenu>Edit</guimenu> Menu</title>
<para>
<variablelist>
<varlistentry>
<term>
<menuchoice>
<guimenu>Edit</guimenu>
<guimenuitem>Page Setup...</guimenuitem>
</menuchoice></term>
<listitem><para>Accesses the <emphasis>&krecipes;</emphasis> <action>Page Setup interface</action> for defining the page layout &ndash; see the section on <link linkend="krecipes-page-setup">Page Setup</link> for further details</para></listitem>
</varlistentry>
<varlistentry>
<term>
<menuchoice>
<guimenu>Edit</guimenu>
<guimenuitem>Print Setup...</guimenuitem>
</menuchoice></term>
<listitem><para>Accesses the <emphasis>&krecipes;</emphasis> <action>Print Setup interface</action> &ndash; this interface is identical to the <interface>Page Setup</interface>, but is used to define a setup that can be different and separate from the page layout for viewing your recipes</para>
<para>See the section on <link linkend="print-setup">Print Setup</link> for further details.</para></listitem>
</varlistentry>
<varlistentry>
<term>
<menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Copy to Clipboard</guimenuitem>
</menuchoice></term>
<listitem><para>Will make a text copy of a selected recipe and place it on the <interface>Clipboard</interface> in order to paste into another application, for example an e-mail.</para></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>
<sect2 id="tools-menu">
<title>The <guimenu>Tools</guimenu> Menu</title>
<para>
<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo>
</shortcut>
<guimenu>Tools</guimenu>
<guimenuitem>Edit</guimenuitem>
</menuchoice></term>
<listitem><para>Accesses the <emphasis>&krecipes;</emphasis> <action>Edit</action> mode</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo>
</shortcut>
<guimenu>Tools</guimenu>
<guimenuitem>Measurement Converter</guimenuitem>
</menuchoice></term>
<listitem><para>Accesses the <emphasis>&krecipes;</emphasis> <interface>Measurement Converter</interface> tool - see the <link linkend="measure-converter">Using the Measurement Converter</link> section for instruction.</para></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>
<sect2 id="settings-menu">
<title>The Settings Menu</title>
<para>
<variablelist>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Toolbar</guimenuitem>
</menuchoice></term>
<listitem><para><action>Turns display of Toolbar on and off</action></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Hide Statusbar</guimenuitem>
</menuchoice></term>
<listitem><para><action>Hides the Statusbar</action></para>
<para>If this menu item is selected, the choice changes to <guimenuitem>Show Statusbar</guimenuitem> which <action>Shows the Statusbar</action></para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Shortcuts...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens</action> the <interface>Configure Shortcuts - &krecipes;</interface> window from which Shortcuts can be defined</para>
<para>For complete instructions on configuring shortcuts, see the section <link linkend="configure-shortcuts">Creating Shortcuts</link></para>
</listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Toolbars...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens</action> the <interface>Configure Toolbars - &krecipes;</interface> window from which Toolbars can be configured</para>
<para>See the section <link linkend="configure-toolbars">Customizing the Toolbar</link> for details.</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure &krecipes;...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens</action> the <interface>&krecipes; Preferences - &krecipes;</interface> window from which a number of preferences can be defined</para>
<para>See the sections, <link linkend="configure-server-settings">Server Settings</link>, <link linkend="custom-formatting">Customizing Formatting</link>, or <link linkend="import-export-preference">Choosing Import/Export Preferences</link> for specific configuration instructions.</para></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>
<sect2 id="help-menu">
<title>The <guimenu>Help</guimenu> Menu</title>
<!-- Assuming you have a standard help menu (help, what's this, about -->
<!-- &krecipes;, about TDE) then the documentation is already written. -->
<!-- The following entity is valid anywhere that a variablelist is -->
<!-- valid. -->
&help.menu.documentation;
</sect2>
</sect1>
</chapter>
<chapter id="faq">
<title>Questions and Answers</title>
<!-- (OPTIONAL but recommended) This chapter should include all of the silly
(and not-so-silly) newbie questions that fill up your mailbox. This chapter
should be reserved for BRIEF questions and answers! If one question uses more
than a page or so then it should probably be part of the
"Using this Application" chapter instead. You should use links to
cross-reference questions to the parts of your documentation that answer them.
This is also a great place to provide pointers to other FAQ's if your users
must do some complicated configuration on other programs in order for your
application work. -->
&reporting.bugs;
&updating.documentation;
<qandaset id="faqlist">
<qandaentry>
<question>
<para>I've put a lot of recipes into Krecipes and now it runs and loads very slowly. Is there anything I can do to speed it up?</para>
</question>
<answer>
<para>Krecipes can work fine with thousands of recipes, even on a modest machine, and it is currently being tested with 50,000+ recipes.</para>
<para>Here's what you can do:</para>
<itemizedlist>
<listitem><para>Select the MySQL or PostgreSQL backends. They provide better overall performance than SQLite, especially for a huge amount of recipes.</para></listitem>
<listitem><para>In the Configure Krecipes dialog, tune the <link linkend="configure-performance">Performance options</link>.</para></listitem>
<listitem><para>Categorize your recipes. Krecipes will load much faster if all recipes are categorized.</para></listitem>
</itemizedlist>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>The Ingredient Matcher never matches any recipes. What am I doing wrong?</para>
</question>
<answer>
<para>The purpose of the Ingredient Matcher is to find recipes that you are able to make (or almost make) with ingredients that you select. That means you have to select every single ingredient used in a recipe (or all but a few, depending on how many ingredients can be missing) to match that recipe. See the <link linkend="ingredient-matcher">Ingredient Matcher section</link> for details.</para>
<para>If you want to see which recipes use particular ingredients, then you want to use the <link linkend="using-adv-ingredients">The Ingredients Search</link>.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Where are all the recipes?</para>
</question>
<answer>
<para>While running the &krecipes; wizard will allow you to choose to install sample recipes, the prime function of the program is to allow you to store and manage your own recipe collection.</para>
<para>If you are looking to augment your personal recipe collection, there are internet sites that host thousands of recipes that are freely available. Among these are: &mdash;</para>
<para><ulink url="http://www.thehoseys.com/recipes.html"></ulink></para>
<para><ulink url="http://www.garvick.com/recipes/meal-master.htm"></ulink></para>
<para>All you have to do is download the recipe and then, import it into your database. See the section <link linkend="file-import">Importing from a File</link> for help with this function.</para>
</answer>
</qandaentry>
</qandaset>
</chapter>
<chapter id="credits">
<!-- Include credits for the programmers, documentation writers, and
contributors here. The license for your software should then be included below
the credits with a reference to the appropriate license file included in the TDE
distribution. -->
<title>Credits and License</title>
<para>
&krecipes;. Program copyright 2003, 2004, 2005, 2006 by the &krecipes; developer team.
</para>
<variablelist>
<title>The &krecipes; team:</title>
<varlistentry>
<term>Unai Garro <email>ugarro&#064;users.sourceforge.net</email></term>
<listitem><para>Creator &amp; Core Developer</para></listitem>
</varlistentry>
<varlistentry>
<term>Jason Kivlighn <email>jkivlighn&#064;gmail.com</email></term>
<listitem><para>Project Maintainer &amp; Core Developer</para></listitem>
</varlistentry>
<varlistentry>
<term>Cyril Bosselut <email>bosselut&#064;b1project.com</email></term>
<listitem><para>Core Developer</para></listitem>
</varlistentry>
</variablelist>
<para>
Documentation copyright 2004-2006 Colleen Beamer <email>colleen.beamer&#064;gmail.com</email> and Jason Kivlighn <email>jkivlighn&#064;gmail.com</email>
</para>
<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
&underFDL; <!-- FDL: do not remove -->
<!-- Determine which license your application is licensed under,
and delete all the remaining licenses below:
(NOTE: All documentation are licensed under the FDL,
regardless of what license the application uses) -->
&underGPL; <!-- GPL License -->
</chapter>
<appendix id="installation">
<title>Installation</title>
<sect1 id="getting-kapp">
<title>How to obtain &krecipes;</title>
<para>The latest version of &krecipes; is available from its home page at <ulink url="http://krecipes.sourceforge.net">http://krecipes.sourceforge.net</ulink></para>
<para>&krecipes; can also be found in TDE SVN in the extragear/utils module. Instructions for downloading and installing through SVN are available at <ulink url="http://krecipes.sourceforge.net/downloading.html">http://krecipes.sourceforge.net/downloading.html</ulink></para>
</sect1>
<sect1 id="requirements">
<title>Requirements</title>
<!--
List any special requirements for your application here. This should include:
.Libraries or other software that is not included in tdesupport,
tdelibs, or tdebase.
.Hardware requirements like amount of RAM, disk space, graphics card
capabilities, screen resolution, special expansion cards, etc.
.Operating systems the app will run on. If your app is designed only for a
specific OS, (you wrote a graphical LILO configurator for example) put this
information here.
-->
<para>
In order to successfully use &krecipes;, make sure you have at least one of the two necessary databases installed: <emphasis>SQLite</emphasis> or <emphasis>MySQL</emphasis>. In case you decide to use MySQL, make sure also that you have <emphasis>&Qt;'s MySQL plugin</emphasis> properly installed. The program won't work without database support.
</para>
<para>
&krecipes; also requires &kde; &gt;= 3.1 and &Qt; &gt;= 3.1
</para>
<para>If you are compiling &krecipes; from source, you may need the following packages (package names may vary depending upon your distribution):</para>
<note><para>If you have compiled any &kde; application before, then these packages will already be installed.</para></note>
<itemizedlist>
<listitem><para>libjpeg-devel</para></listitem>
<listitem><para>libpng-devel</para></listitem>
<listitem><para>libart_lgpl-devel</para></listitem>
<listitem><para>arts-devel</para></listitem>
<listitem><para>zlib-devel</para></listitem>
<listitem><para>XFree86-devel or xorg-x11-devel or libxorg-x11-devel</para></listitem>
<listitem><para>tdelibs-devel</para></listitem>
<listitem><para>qt-devel or libtqt3-devel</para></listitem>
</itemizedlist>
<para>
&krecipes; currently has support for storing recipes in a PostgreSQL database, although it is currently considered beta. No problems have been found with it, but until there has been more testing, it will be marked as unsupported.
</para>
</sect1>
<sect1 id="compilation">
<title>Compilation and Installation</title>
<!-- This entity contains the boilerplate text for standard -->
<!-- compilation instructions. If your application requires any -->
<!-- special handling, remove it, and replace with your own text. -->
&install.compile.documentation;
<para>
Krecipes can also be compiled without support for certain databases. See <command>./configure --help</command>.
</para>
</sect1>
</appendix>
&documentation.index;
</book>
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:
vim:tabstop=2:shiftwidth=2:expandtab
-->