<chapter id="kate-mdi">

<title>Working With the &kate; <acronym>MDI</acronym></title>

<sect1 id="kate-mdi-overview">
<title>Overview</title>

<para>Window, View, Document, Frame, Editor... What are they all in
the terminology of &kate;, and how do you get the most out of it? This
chapter will explain all of that, and even more.</para>

<sect2 id="kate-mdi-overview-mainwindow">

<title>The Main Window</title>

<para>The &kate; Main Window is a standard &kde; application window,
with the addition of dockable subwindows, or tool windows. It has a
Menubar with all the common menus, and some more, and a toolbar
providing access to commonly used commands.</para>

<para>The most important part of the window is the Editing Area, by
default displaying a single text editor component, in which you can
work with your documents.</para>

<para>The docking capabilities of the window is used for the tool
windows:</para>

<itemizedlist>
<listitem><para><link linkend="kate-mdi-tools-file-list">The File List</link></para></listitem>
<listitem><para><link linkend="kate-mdi-tools-file-selector">The File Selector</link></para></listitem>
<listitem><para><link linkend="kate-mdi-tools-konsole">The Built in Terminal Emulator</link></para></listitem>
</itemizedlist>

<para>And possibly other tool windows, for example provided by
plugins.</para>

<para>The Tool Windows can be placed anywhere you want them inside or
outside the main window by dragging the handle bar in the top of them
with the &LMB; pressed, and stacked in shared tab windows if
desired.</para>

<para>When dragging a docked window, a black rectangle will be
displayed to indicate where the window will be placed if you release
the mouse button, unless you move the mouse cursor outside the main
window, in which case the dragged window will become a free floating
top level window.</para>

</sect2>


</sect1>

<sect1 id="kate-mdi-editor">

<title>The Editor area</title>

<para>&kate; is capable of having more than one document open at the
same time, and also of splitting the editing area into any number of
frames, similar to how for example &konqueror; or the popular
<application>emacs</application> text editor works. This way you can
view several documents at the same time, or more instances of the same
document, handy for example if your document contains definitions in
the top that you want to see often for reference. Or you could view a
program source header in one frame, while editing the implementation
file in another.</para>

<para>When a document is available in more than one editor, changes
made in one editor will immediately be reflected in the others as
well. This includes changing the text as well as selecting
text. Search operations or cursor movement is only reflected in the
current editor.</para>

<para>It is currently not possible to have more instances of the same
document open in the sense that one instance will be edited while the
other will not.</para>

<para>When splitting an editor into two frames, it is divided into two
equally sized frames, both displaying the current document of that
editor. The new frame will be at the bottom (in the case of a
horizontal split) or at the right (for a vertical split). The new
frame gets the focus, which is visualized by a small green led in the
focused frame.</para>

</sect1>

<sect1 id="kate-mdi-tools-file-list">
<title>The File List</title>

<para>The file list displays a list of all documents currently open in
&kate;. Modified files will have a small <guiicon>floppy
disk</guiicon> icon on their left to indicate that state.</para>

<para>If two or more files with the same name (located in different
directories) are open, the names of the second will be prepended
<quote>&lt;2&gt;</quote> and so on. The tool-tip for the file will
display its full name including the path, allowing you to choose the
desired one.</para> <para>To display a document in the currently
active frame, click the document name in the list.</para>

<para>The default location in the &kate; window is to the left of the
editing area, in a dockable tab window shared with the <link
linkend="kate-mdi-tools-file-selector">File Selector</link>.</para>
</sect1>

<sect1 id="kate-mdi-tools-file-selector">
<title>The File Selector</title>

<para>The File Selector is a directory viewer, allowing you to open
files from a displayed directory in the current frame.</para>

<para>From top down, the file selector consist of the following
elements:</para>

<variablelist>
<varlistentry>
<term>A Toolbar</term>
<listitem>
<para>This contains standard navigations tool buttons:</para>
<variablelist>
<varlistentry>
<term><guibutton>Home</guibutton></term>
<listitem><para>Pressing it will cause the directory view to <command>cd</command> to your home directory.</para></listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Up</guibutton></term>
<listitem><para>This will cause the directory view to <command>cd</command> to the immediate parent of the currently displayed
directory if possible.</para></listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Back</guibutton></term>
<listitem><para>Causes the directory view to <command>cd</command> to the previously displayed directory in the history.
This button is disabled, if there is no previous item.</para></listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Forward</guibutton></term>
<listitem><para>Causes the directory view to <command>cd</command> to the next directory in the history.
This button is disabled, if there is no next directory.</para></listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Sync</guibutton></term>
<listitem><para>This button will cause the directory view to
<command>cd</command> to the directory of the currently active
document if possible. This button is disabled, if the active document
is a new, unsaved file, or the directory in which it resides can not
be decided.</para></listitem> 
</varlistentry>
</variablelist>

</listitem>
</varlistentry>

<varlistentry>
<term>A &URL; entry</term>
<listitem>
<para>Here you can type the path of a directory to browse. The URL
entry is maintaining a list of previously typed paths, to choose one
use the arrow button on  the right of the entry.</para> 
<tip><para>The &URL; entry has directory auto-completion, the completion
method can be set using the &RMB; menu of the text
entry.</para></tip>
</listitem> 
</varlistentry>

<varlistentry>
<term>A Directory View</term>
<listitem><para>This is a standard &kde; directory view.</para></listitem>
</varlistentry>

<varlistentry>
<term>A Filter Entry</term>
<listitem>
<para>The Filter entry allows you to enter a filter for the files
displayed in the directory view. The filter is using standard globs,
patterns must be separated by whitespace. Example: <userinput>*.cpp
*.h *.moc</userinput></para> 
<para>To display all files, enter a single asterisk
<userinput>*</userinput>.</para>
<para>The filter entry saves the last 10 filters entered between
sessions, to use one, press the arrow button on the right of the entry
and select the desired filter string.</para> 
</listitem>
</varlistentry>

</variablelist>

</sect1>


<sect1 id="kate-mdi-tools-konsole">
<title>The Built in Terminal Emulator</title>

<para>The built in Terminal Emulator is a copy of the &kde; &konsole;
terminal application, for your convenience. It is available from the
<menuchoice><guimenu>Settings</guimenu><guimenuitem>Show Terminal
Emulator</guimenuitem></menuchoice> menu item or the<keycombo
action="simul"><keycap>F7</keycap></keycombo>, and will get the focus
whenever displayed. Additionally, if the <link
linkend="config-dialog-general-sync-konsole">Sync &konsole; with
active document</link> option is enabled, it will
<command>cd</command> into the directory of the current document if
possible when it is displayed, or when the current document
changes.</para>

<para>The default location in the &kate; window is at the bottom,
below the editing area.</para>

<para>You can configure the &konsole; using it's &RMB; menu, for more
information, see the &konsole; manual.</para>

</sect1>

</chapter>
