<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en_US" xml:lang="en_US"> <head> <title>kpilot/kpilot: dbRecordEditor.cc Source File (kpilot/kpilot)</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org" r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org" r (n 0 s 0 v 0 l 0))' /> <meta name="trademark" content="KDE e.V." /> <meta name="description" content="K Desktop Environment Homepage, KDE.org" /> <meta name="MSSmartTagsPreventParsing" content="true" /> <meta name="robots" content="all" /> <link rel="shortcut icon" href="../../../favicon.ico" /> <link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" /> <style type="text/css"> <!-- hr { display: none; } #content h2 { margin-left: 0px; } table.mdTable { background-color: #f8f8f8; border: .2em solid #d7d7d7; } td.mdRow { padding: 8px 20px; } td.md { font-weight: bold; } td.mdname1 { font-weight: bold; color: #602020; } td.mdname { font-weight: bold; color: #602020; } --> </style> </head> <body> <div id="nav_header_top" align="right"> <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a> <a href="../../.."><img id="nav_header_logo" alt="Home" align="left" src="../../../kde_gear_64.png" border="0" /></a> <span class="doNotDisplay">::</span> <img id="nav_header_logo_right" alt="" align="right" src="../../../pimlogo.png" border="0" /> <div id="nav_header_title" align="left">KDE PIM API Reference</div> </div> <div id="nav_header_bottom" align="right"> <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span> <div id="nav_header_bottom_left" style="text-align: left;"> / <a href="../../../">API Reference</a> / <a href="../../html/index.html">kpilot</a> / <a href=".">kpilot</a> </div> </div> <table id="main" border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td valign="top" class="menuheader" height="0"></td> <td id="contentcolumn" valign="top" rowspan="2" > <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;"> <h2><a name="content"></a>kpilot/kpilot</h2> <!-- Generated by Doxygen 1.5.5 --> <h1>dbRecordEditor.cc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* KPilot</span> <a name="l00002"></a>00002 <span class="comment">**</span> <a name="l00003"></a>00003 <span class="comment">** Copyright (C) 2003 Reinhold Kainhofer <reinhold@kainhofer.com></span> <a name="l00004"></a>00004 <span class="comment">**</span> <a name="l00005"></a>00005 <span class="comment">**/</span> <a name="l00006"></a>00006 <a name="l00007"></a>00007 <span class="comment">/*</span> <a name="l00008"></a>00008 <span class="comment">** This program is free software; you can redistribute it and/or modify</span> <a name="l00009"></a>00009 <span class="comment">** it under the terms of the GNU General Public License as published by</span> <a name="l00010"></a>00010 <span class="comment">** the Free Software Foundation; either version 2 of the License, or</span> <a name="l00011"></a>00011 <span class="comment">** (at your option) any later version.</span> <a name="l00012"></a>00012 <span class="comment">**</span> <a name="l00013"></a>00013 <span class="comment">** This program is distributed in the hope that it will be useful,</span> <a name="l00014"></a>00014 <span class="comment">** but WITHOUT ANY WARRANTY; without even the implied warranty of</span> <a name="l00015"></a>00015 <span class="comment">** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span> <a name="l00016"></a>00016 <span class="comment">** GNU General Public License for more details.</span> <a name="l00017"></a>00017 <span class="comment">**</span> <a name="l00018"></a>00018 <span class="comment">** You should have received a copy of the GNU General Public License</span> <a name="l00019"></a>00019 <span class="comment">** along with this program in a file called COPYING; if not, write to</span> <a name="l00020"></a>00020 <span class="comment">** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span> <a name="l00021"></a>00021 <span class="comment">** MA 02110-1301, USA.</span> <a name="l00022"></a>00022 <span class="comment">*/</span> <a name="l00023"></a>00023 <a name="l00024"></a>00024 <span class="comment">/*</span> <a name="l00025"></a>00025 <span class="comment">** Bug reports and questions can be sent to kde-pim@kde.org</span> <a name="l00026"></a>00026 <span class="comment">*/</span> <a name="l00027"></a>00027 <a name="l00028"></a>00028 <span class="preprocessor">#include "options.h"</span> <a name="l00029"></a>00029 <a name="l00030"></a>00030 <span class="preprocessor">#include <qlineedit.h></span> <a name="l00031"></a>00031 <span class="preprocessor">#include <qcheckbox.h></span> <a name="l00032"></a>00032 <span class="preprocessor">#include <qtooltip.h></span> <a name="l00033"></a>00033 <span class="preprocessor">#include <qwhatsthis.h></span> <a name="l00034"></a>00034 <span class="preprocessor">#include <qbuttongroup.h></span> <a name="l00035"></a>00035 <span class="preprocessor">#include <qlabel.h></span> <a name="l00036"></a>00036 <span class="preprocessor">#include <qpushbutton.h></span> <a name="l00037"></a>00037 <span class="preprocessor">#include <qlayout.h></span> <a name="l00038"></a>00038 <a name="l00039"></a>00039 <span class="preprocessor">#include <kmessagebox.h></span> <a name="l00040"></a>00040 <a name="l00041"></a>00041 <span class="preprocessor">#include "pilotRecord.h"</span> <a name="l00042"></a>00042 <span class="preprocessor">#include "dbRecordEditor.h"</span> <a name="l00043"></a>00043 <span class="comment">//#include "dbRecordEditor_base.h"</span> <a name="l00044"></a>00044 <a name="l00045"></a>00045 <span class="preprocessor">#include <khexedit/byteseditinterface.h></span> <a name="l00046"></a>00046 <span class="preprocessor">#include <khexedit/valuecolumninterface.h></span> <a name="l00047"></a>00047 <span class="preprocessor">#include <khexedit/charcolumninterface.h></span> <a name="l00048"></a>00048 <span class="keyword">using namespace </span>KHE; <a name="l00049"></a>00049 <a name="l00050"></a>00050 <a name="l00051"></a>00051 <a name="l00052"></a>00052 DBRecordEditor::DBRecordEditor(<a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecord.html">PilotRecord</a>*r, <span class="keywordtype">int</span> n, QWidget *parent) <a name="l00053"></a>00053 : KDialogBase(parent, <span class="stringliteral">"RecordEditor"</span>,false,i18n(<span class="stringliteral">"Edit Record"</span>), <a name="l00054"></a>00054 Ok|Cancel), rec(r), nr(n) <a name="l00055"></a>00055 { <a name="l00056"></a>00056 <span class="comment">// fWidget=new DBRecordEditorBase(this);</span> <a name="l00057"></a>00057 fWidget=<span class="keyword">new</span> QWidget(<span class="keyword">this</span>); <a name="l00058"></a>00058 setMainWidget(fWidget); <a name="l00059"></a>00059 fBuffer = <span class="keyword">new</span> <span class="keywordtype">char</span>[4096]; <a name="l00060"></a>00060 <a name="l00061"></a>00061 initWidgets(); <a name="l00062"></a>00062 fillWidgets(); <a name="l00063"></a>00063 } <a name="l00064"></a>00064 <a name="l00065"></a>00065 <a name="l00066"></a>00066 DBRecordEditor::~DBRecordEditor() <a name="l00067"></a>00067 { <a name="l00068"></a>00068 KPILOT_DELETE( fBuffer ); <a name="l00069"></a>00069 } <a name="l00070"></a>00070 <a name="l00071"></a>00071 <a name="l00072"></a>00072 <span class="keywordtype">void</span> DBRecordEditor::slotOk() <a name="l00073"></a>00073 { <a name="l00074"></a>00074 FUNCTIONSETUP; <a name="l00075"></a>00075 <span class="keywordflow">if</span> (KMessageBox::questionYesNo(<span class="keyword">this</span>, i18n(<span class="stringliteral">"Changing the record data and flags might corrupt the whole record, or even make the database unusable. Do not change the values unless you are absolutely sure you know what you are doing.\n\nReally assign these new flags?"</span>), i18n(<span class="stringliteral">"Changing Record"</span>),i18n(<span class="stringliteral">"Assign"</span>),KStdGuiItem::cancel())==KMessageBox::Yes) <a name="l00076"></a>00076 { <a name="l00077"></a>00077 <span class="keywordtype">int</span> att=rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecordBase.html#e2729cb7e2996973e9948753dbc7bb4e">attributes</a>(); <a name="l00078"></a>00078 <span class="preprocessor">#define setFlag(ctrl, flag) if (ctrl->isChecked()) att|=flag; else att &= ~flag;</span> <a name="l00079"></a>00079 <span class="preprocessor"></span> setFlag(fDirty, dlpRecAttrDirty); <a name="l00080"></a>00080 setFlag(fDeleted, dlpRecAttrDeleted); <a name="l00081"></a>00081 setFlag(fBusy, dlpRecAttrBusy); <a name="l00082"></a>00082 setFlag(fSecret, dlpRecAttrSecret); <a name="l00083"></a>00083 setFlag(fArchived, dlpRecAttrArchived); <a name="l00084"></a>00084 rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecordBase.html#87ab375e84bf95f3998fbd4a942f5ce8">setAttributes</a>(att); <a name="l00085"></a>00085 <span class="preprocessor">#undef setFlag</span> <a name="l00086"></a>00086 <span class="preprocessor"></span> <a name="l00087"></a>00087 <span class="keywordflow">if</span> ( fRecordDataIf->isModified() ) <a name="l00088"></a>00088 { <a name="l00089"></a>00089 DEBUGKPILOT << <span class="stringliteral">"record data changed, new Length of record: "</span> << <a name="l00090"></a>00090 fRecordDataIf->dataSize() << endl; <a name="l00091"></a>00091 <span class="comment">// take over data</span> <a name="l00092"></a>00092 rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecord.html#b9c01a1fa3d09b29395b750dd9df744f">setData</a>( fRecordDataIf->data(), fRecordDataIf->dataSize() ); <a name="l00093"></a>00093 } <a name="l00094"></a>00094 <a name="l00095"></a>00095 KDialogBase::slotOk(); <a name="l00096"></a>00096 } <a name="l00097"></a>00097 } <a name="l00098"></a>00098 <a name="l00099"></a>00099 <span class="keywordtype">void</span> DBRecordEditor::slotCancel() <a name="l00100"></a>00100 { <a name="l00101"></a>00101 KDialogBase::slotCancel(); <a name="l00102"></a>00102 } <a name="l00103"></a>00103 <a name="l00104"></a>00104 <span class="keywordtype">void</span> DBRecordEditor::languageChange() <a name="l00105"></a>00105 { <a name="l00106"></a>00106 fRecordIndexLabel->setText( tr2i18n( <span class="stringliteral">"Record index:"</span> ) ); <a name="l00107"></a>00107 fRecordIDLabel->setText( tr2i18n( <span class="stringliteral">"Record ID:"</span> ) ); <a name="l00108"></a>00108 fRecordIndex->setText( tr2i18n( <span class="stringliteral">"1"</span> ) ); <a name="l00109"></a>00109 fRecordID->setText( tr2i18n( <span class="stringliteral">"1"</span> ) ); <a name="l00110"></a>00110 fFlagsGroup->setTitle( tr2i18n( <span class="stringliteral">"Flags"</span> ) ); <a name="l00111"></a>00111 fDirty->setText( tr2i18n( <span class="stringliteral">"&Dirty"</span> ) ); <a name="l00112"></a>00112 fDeleted->setText( tr2i18n( <span class="stringliteral">"De&leted"</span> ) ); <a name="l00113"></a>00113 fBusy->setText( tr2i18n( <span class="stringliteral">"&Busy"</span> ) ); <a name="l00114"></a>00114 fSecret->setText( tr2i18n( <span class="stringliteral">"&Secret"</span> ) ); <a name="l00115"></a>00115 fArchived->setText( tr2i18n( <span class="stringliteral">"&Archived"</span> ) ); <a name="l00116"></a>00116 } <a name="l00117"></a>00117 <a name="l00118"></a>00118 <span class="keywordtype">void</span> DBRecordEditor::initWidgets() <a name="l00119"></a>00119 { <a name="l00120"></a>00120 <span class="comment">// FUNCTIONSETUP</span> <a name="l00121"></a>00121 <a name="l00122"></a>00122 DBRecordEditorBaseLayout = <span class="keyword">new</span> QGridLayout( fWidget, 1, 1, 11, 6, <span class="stringliteral">"DBRecordEditorBaseLayout"</span>); <a name="l00123"></a>00123 <a name="l00124"></a>00124 fRecordIndexLabel = <span class="keyword">new</span> QLabel( fWidget, <span class="stringliteral">"fRecordIndexLabel"</span> ); <a name="l00125"></a>00125 DBRecordEditorBaseLayout->addWidget( fRecordIndexLabel, 0, 0 ); <a name="l00126"></a>00126 <a name="l00127"></a>00127 fRecordIDLabel = <span class="keyword">new</span> QLabel( fWidget, <span class="stringliteral">"fRecordIDLabel"</span> ); <a name="l00128"></a>00128 DBRecordEditorBaseLayout->addWidget( fRecordIDLabel, 0, 2 ); <a name="l00129"></a>00129 <a name="l00130"></a>00130 fRecordIndex = <span class="keyword">new</span> QLineEdit( fWidget, <span class="stringliteral">"fRecordIndex"</span> ); <a name="l00131"></a>00131 fRecordIndex->setReadOnly( TRUE ); <a name="l00132"></a>00132 <a name="l00133"></a>00133 DBRecordEditorBaseLayout->addWidget( fRecordIndex, 0, 1 ); <a name="l00134"></a>00134 <a name="l00135"></a>00135 fRecordID = <span class="keyword">new</span> QLineEdit( fWidget, <span class="stringliteral">"fRecordID"</span> ); <a name="l00136"></a>00136 fRecordID->setReadOnly( TRUE ); <a name="l00137"></a>00137 <a name="l00138"></a>00138 DBRecordEditorBaseLayout->addWidget( fRecordID, 0, 3 ); <a name="l00139"></a>00139 <a name="l00140"></a>00140 fFlagsGroup = <span class="keyword">new</span> QButtonGroup( fWidget, <span class="stringliteral">"fFlagsGroup"</span> ); <a name="l00141"></a>00141 fFlagsGroup->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, <a name="l00142"></a>00142 (QSizePolicy::SizeType)4, 0, 0, fFlagsGroup->sizePolicy().hasHeightForWidth() ) ); <a name="l00143"></a>00143 fFlagsGroup->setColumnLayout(0, Qt::Vertical ); <a name="l00144"></a>00144 fFlagsGroup->layout()->setSpacing( 6 ); <a name="l00145"></a>00145 fFlagsGroup->layout()->setMargin( 11 ); <a name="l00146"></a>00146 fFlagsGroupLayout = <span class="keyword">new</span> QGridLayout( fFlagsGroup->layout() ); <a name="l00147"></a>00147 fFlagsGroupLayout->setAlignment( Qt::AlignTop ); <a name="l00148"></a>00148 <a name="l00149"></a>00149 fDirty = <span class="keyword">new</span> QCheckBox( fFlagsGroup, <span class="stringliteral">"fDirty"</span> ); <a name="l00150"></a>00150 fFlagsGroupLayout->addWidget( fDirty, 0, 0 ); <a name="l00151"></a>00151 <a name="l00152"></a>00152 fDeleted = <span class="keyword">new</span> QCheckBox( fFlagsGroup, <span class="stringliteral">"fDeleted"</span> ); <a name="l00153"></a>00153 fFlagsGroupLayout->addWidget( fDeleted, 1, 0 ); <a name="l00154"></a>00154 <a name="l00155"></a>00155 fBusy = <span class="keyword">new</span> QCheckBox( fFlagsGroup, <span class="stringliteral">"fBusy"</span> ); <a name="l00156"></a>00156 fFlagsGroupLayout->addWidget( fBusy, 0, 1 ); <a name="l00157"></a>00157 <a name="l00158"></a>00158 fSecret = <span class="keyword">new</span> QCheckBox( fFlagsGroup, <span class="stringliteral">"fSecret"</span> ); <a name="l00159"></a>00159 fFlagsGroupLayout->addMultiCellWidget( fSecret, 1, 1, 1, 2 ); <a name="l00160"></a>00160 <a name="l00161"></a>00161 fArchived = <span class="keyword">new</span> QCheckBox( fFlagsGroup, <span class="stringliteral">"fArchived"</span> ); <a name="l00162"></a>00162 fFlagsGroupLayout->addWidget( fArchived, 0, 2 ); <a name="l00163"></a>00163 <a name="l00164"></a>00164 DBRecordEditorBaseLayout->addMultiCellWidget( fFlagsGroup, 1, 1, 0, 3 ); <a name="l00165"></a>00165 <a name="l00166"></a>00166 fRecordData = KHE::createBytesEditWidget( fWidget, <span class="stringliteral">"fRecordData"</span> ); <a name="l00167"></a>00167 <span class="keywordflow">if</span>( fRecordData ) <a name="l00168"></a>00168 { <a name="l00169"></a>00169 <span class="comment">// fetch the editor interface</span> <a name="l00170"></a>00170 fRecordDataIf = KHE::bytesEditInterface( fRecordData ); <a name="l00171"></a>00171 Q_ASSERT( fRecordDataIf ); <span class="comment">// This should not fail!</span> <a name="l00172"></a>00172 <a name="l00173"></a>00173 KHE::ValueColumnInterface *ValueColumn = valueColumnInterface( fRecordData ); <a name="l00174"></a>00174 <span class="keywordflow">if</span>( ValueColumn ) <a name="l00175"></a>00175 { <a name="l00176"></a>00176 ValueColumn->setNoOfBytesPerLine( 16 ); <a name="l00177"></a>00177 ValueColumn->setResizeStyle( KHE::ValueColumnInterface::LockGrouping ); <a name="l00178"></a>00178 <span class="comment">// ValueColumn->setCoding( ValueColumnInterface::HexadecimalCoding );</span> <a name="l00179"></a>00179 <span class="comment">// ValueColumn->setByteSpacingWidth( 2 );</span> <a name="l00180"></a>00180 ValueColumn->setNoOfGroupedBytes( 4 ); <a name="l00181"></a>00181 ValueColumn->setGroupSpacingWidth( 8 ); <a name="l00182"></a>00182 } <a name="l00183"></a>00183 <a name="l00184"></a>00184 KHE::CharColumnInterface *CharColumn = charColumnInterface( fRecordData ); <a name="l00185"></a>00185 <span class="keywordflow">if</span>( CharColumn ) <a name="l00186"></a>00186 { <a name="l00187"></a>00187 CharColumn->setShowUnprintable( <span class="keyword">false</span> ); <a name="l00188"></a>00188 <span class="comment">// CharColumn->setSubstituteChar( '*' );</span> <a name="l00189"></a>00189 } <a name="l00190"></a>00190 } <a name="l00191"></a>00191 <span class="keywordflow">else</span> <a name="l00192"></a>00192 { <a name="l00193"></a>00193 QLabel*tmpW = <span class="keyword">new</span> QLabel( i18n(<span class="stringliteral">"To view and edit the record data, please install a hex editor (e.g. kbytesedit from kdeutils)."</span>), fWidget ); <a name="l00194"></a>00194 tmpW->setBackgroundMode( Qt::PaletteMid ); <a name="l00195"></a>00195 tmpW->setAlignment( Qt::AlignHCenter | Qt::AlignVCenter | Qt::WordBreak); <a name="l00196"></a>00196 tmpW->setFrameShape( QFrame::Panel ); <a name="l00197"></a>00197 tmpW->setFrameShadow( QFrame::Sunken ); <a name="l00198"></a>00198 fRecordData = tmpW; <a name="l00199"></a>00199 fRecordDataIf = 0; <a name="l00200"></a>00200 } <a name="l00201"></a>00201 <a name="l00202"></a>00202 DBRecordEditorBaseLayout->addMultiCellWidget( fRecordData, 2, 2, 0, 3 ); <a name="l00203"></a>00203 <a name="l00204"></a>00204 languageChange(); <a name="l00205"></a>00205 resize( QSize(600, 561).expandedTo(minimumSizeHint()) ); <a name="l00206"></a>00206 } <a name="l00207"></a>00207 <a name="l00208"></a>00208 <span class="keywordtype">void</span> DBRecordEditor::fillWidgets() <a name="l00209"></a>00209 { <a name="l00210"></a>00210 <span class="comment">// FUNCTIONSETUP</span> <a name="l00211"></a>00211 <a name="l00212"></a>00212 fRecordIndex->setText(QString::number(nr)); <a name="l00213"></a>00213 fRecordID->setText(QString::number(rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecordBase.html#cda8a86f61e1b991071e0a6f9acc3fe7">id</a>())); <a name="l00214"></a>00214 <a name="l00215"></a>00215 <span class="keywordtype">int</span> att=rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecordBase.html#e2729cb7e2996973e9948753dbc7bb4e">attributes</a>(); <a name="l00216"></a>00216 fDirty->setChecked(att & dlpRecAttrDirty); <a name="l00217"></a>00217 fDeleted->setChecked(att & dlpRecAttrDeleted); <a name="l00218"></a>00218 fBusy->setChecked(att & dlpRecAttrBusy); <a name="l00219"></a>00219 fSecret->setChecked(att & dlpRecAttrSecret); <a name="l00220"></a>00220 fArchived->setChecked(att & dlpRecAttrArchived); <a name="l00221"></a>00221 <a name="l00222"></a>00222 <span class="keywordflow">if</span>( fRecordDataIf ) <a name="l00223"></a>00223 { <a name="l00224"></a>00224 <span class="keywordtype">int</span> len = rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecord.html#d0a9127ffe29f224220ca44f3d4ad95e">size</a>(); <a name="l00225"></a>00225 memcpy( fBuffer, rec-><a class="codeRef" doxygen="lib.tag:../../../kpilot/lib/html/" href="../../../kpilot/lib/html/classPilotRecord.html#68dae73714ae61b53911e5edfafca55f">data</a>(), len ); <a name="l00226"></a>00226 fRecordDataIf->setData( fBuffer, len, 4096 ); <a name="l00227"></a>00227 fRecordDataIf->setMaxDataSize( 4096 ); <a name="l00228"></a>00228 fRecordDataIf->setReadOnly( <span class="keyword">false</span> ); <a name="l00229"></a>00229 <span class="comment">// We are managing the buffer ourselves:</span> <a name="l00230"></a>00230 fRecordDataIf->setAutoDelete( <span class="keyword">false</span> ); <a name="l00231"></a>00231 } <a name="l00232"></a>00232 } <a name="l00233"></a>00233 <a name="l00234"></a>00234 <a name="l00235"></a>00235 <span class="preprocessor">#include "dbRecordEditor.moc"</span> </pre></div></div> </div></div> </td> </tr> <tr> <td valign="top" id="leftmenu" width="25%"> <a name="navigation"></a> <div class="menu_box"><h2>kpilot/kpilot</h2> <div class="nav_list"> <ul><li><a href="index.html">Main Page</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="functions.html">Class Members</a></li></ul> <!-- <h2>Class Picker</h2> <div style="text-align: center;"> <form name="guideform"> <select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value"> <option value="annotated.html">-- Choose --</option> <option value="classDBFlagsEditor.html">dbflagseditor</option>, <option value="classDBRecordEditor.html">dbrecordeditor</option>, <option value="classListCategorizer.html">listcategorizer</option>, </select> </form> </div> --> </div></div> <div class="menu_box"><h2>API Dox</h2> <div class="nav_list"> <ul> <li><a href="../../../akregator/html/index.html">akregator</a></li><li> <a href="../../../akregator/src/html/index.html">src</a></li><li> <a href="../../../akregator/src/librss/html/index.html">librss</a></li><li><a href="../../../certmanager/html/index.html">certmanager</a></li><li> <a href="../../../certmanager/lib/html/index.html">lib</a></li><li><a href="../../../kaddressbook/html/index.html">kaddressbook</a></li><li><a href="../../../kalarm/html/index.html">kalarm</a></li><li> <a href="../../../kalarm/lib/html/index.html">lib</a></li><li><a href="../../../kandy/html/index.html">kandy</a></li><li><a href="../../../karm/html/index.html">karm</a></li><li><a href="../../../kdgantt/html/index.html">kdgantt</a></li><li><a href="../../../kgantt/html/index.html">kgantt</a></li><li><a href="../../../kioslaves/html/index.html">kioslaves</a></li><li> <a href="../../../kioslaves/imap4/html/index.html">imap4</a></li><li> <a href="../../../kioslaves/mbox/html/index.html">mbox</a></li><li><a href="../../../kitchensync/html/index.html">kitchensync</a></li><li><a href="../../../kmail/html/index.html">kmail</a></li><li><a href="../../../knotes/html/index.html">knotes</a></li><li><a href="../../../konsolekalendar/html/index.html">konsolekalendar</a></li><li><a href="../../../kontact/html/index.html">kontact</a></li><li><a href="../../../korganizer/html/index.html">korganizer</a></li><li><a href="../../../kpilot/html/index.html">kpilot</a></li><li> <a href="../../../kpilot/kpilot/html/index.html">kpilot</a></li><li> <a href="../../../kpilot/lib/html/index.html">lib</a></li><li><a href="../../../libemailfunctions/html/index.html">libemailfunctions</a></li><li><a href="../../../libkcal/html/index.html">libkcal</a></li><li><a href="../../../libkdepim/html/index.html">libkdepim</a></li><li><a href="../../../libkholidays/html/index.html">libkholidays</a></li><li><a href="../../../libkmime/html/index.html">libkmime</a></li><li><a href="../../../libkpgp/html/index.html">libkpgp</a></li><li><a href="../../../libkpimidentities/html/index.html">libkpimidentities</a></li> </ul></div></div> </td> </tr> </table> <span class="doNotDisplay"> <a href="http://www.kde.org/" accesskey="8">KDE Home</a> | <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> | <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a> </span> <div style="height: 8px"></div> <div id="footer"> <div id="footer_left"> Maintained by <a href="mailto:groot@kde.org">Adriaan de Groot</a> and <a href="mailto:winter@kde.org">Allen Winter</a>. <br/> KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> | <a href="http://www.kde.org/contact/impressum.php">Legal</a> </div> <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div> </div> <!-- WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL BE BLOCKED INSTANTLY AND PERMANENTLY! <a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a> WARNING END --> </body> </html>